Welcome, Joe
Log Out
Apply For Loan
Loan Details
Purpose
*
Select Purpose
Some Purpose
Some New Purpose
Amount (₦)
*
Tenor
*
Select Tenor
30 Days
60 Days
90 Days
120 Days
Total to be Paid:
₦ 3,000,000.00
Payment Installment:
₦ 3,000,000.00
(Per month)
Bank Details
Account Number
*
Bank
*
Select Bank
Access Bank PLC
Zenith Bank


--- layout: default navi: exclude: yes ---
{{ post.title }}
{% if post.update %} Updated {{ post.update | date: "%d %b %Y" }}: {% endif %}{{ post.description }}
[ Comments ]
{% endif %}After Jan 27 2017, it is most important to check if you're getting clean coins. On Jan 27 someone published a list of transactions that proved the bitcoins stolen in the Bitfinex hack in august 2016 started moving.
Apparently the hacker is now trying to move small chunks of the coins to bitcoin exchanges. It is likely that they might try to use a mixing service to clean the bitcoin or that they will even set up their own mixer.
Therefore always check where did your bitcoins came from - even if you just deposited them for lending on Poloniex. You will probably not be getting back your original bitcoins but bitcoins with a different history.


{% extends "admin_vendor/base.html" %} {% load static %} {% block content %}
Name of Issue Orderer
Issue Ordering Area
Issue Description
Issue Type - Type


Georgia Institute of Technology Atlanta, GA
Bachelor of Science, Mechanical Engineering
Fall 2008—Summer 2013
- Programmed robot for team mechanical design competition
- Implemented an English dictionary in C with constant-time word lookup
3122 Tanager St. Raleigh, NC 27606
404 955 7789
github.com/ tdkohlbeck<EMAIL_ADDRESS>Institute of Technology Atlanta, GA
Bachelor of Science, Mechanical Engineering
Fall 2008—Summer 2013
Search Ranking Analyst
BCForward
Search Quality and Metrics
Menlo Park, CA
Feb 2014—Nov 2016


Credits
Name
Role
Work
Kayden Lee
Director, Programmer & Content manager
Programming all pages & managing content


The behaviour of the photo stream changes for 3 different plaftorms.
What this means is that your site must be adaptive.
Below, the Desktop comp has the specification for the fonts and dimensions. Note that the dimension of the images in the stream doesn't change from platform to plaform (it stays constant). The only change from platform to platform is the container's dimension and how the images are displayed. For example:
All the measurments are in pixels.


Project :: Jewel Mine
Jewel Mine is a simple game written in C# with Unity. It is reminiscent of Columns on the Sega GameGear. It was written as an exercise to flex skills, try my hand at a small game and learn some Unity. It is a port of the original JewelMine game to Unity. This version uses the engine from the original game (written in C# with Windows Forms) largely intact.
Source => http://github.com/retroburst/JewelMine.Unity.3D
External Sources
- Font 'Alte Haas Grotesk' is freeware and sourced from http://www.yannlecoroller.com.
- Textures sourced from Spiral Graphics, used under the royalty free license.
- Icon sourced from iconarchive, used under the free for non-commercial use license.
- Music in the game was composed by Essa, used under the creative commons license - the track is "Ambient Loop 1". (https://soundcloud.com/essa-1).
- Sounds in the game were sourced from SoundBible (http://soundbible.com/) and used under the royalty free license. Normalised as wav files through http://www.online-convert.com/ and http://media.io.
Default Bindings
- Movement - Left, Right and Down Arrows or Swipe Left, Right and Down for Touch
- Swap Jewels - Space or Tap for Touch
- Pause Game - P
- Restart Game - R
- Toggle Music - M
- Toggle Sound Effects - N
- Change Game Difficulty - D
- Save Game - S
- Load Game - L
How to Win
You win by either clearing all jewels in the mine (which is very hard to do) or by scoring enough points from forming groups of like jewels to beat the last level of the game. To form a group of jewels you must have at least 3 like jewels in a vertical, horizontal or diagonal line. Other jewels in the vicinity will also be pulled into the group, but at least 3 must be in a line. You will receive more points for a group based on a diagonal line of 3 or more than vertical or horizontal. As the level increases, some parameters of the game logic are tweaked, most noticeably is the speed.Number of Levels by Difficulty
- Easy : 255 levels
- Moderate : 500 levels
- Hard : 1000 levels
- Impossible : 10000 levels
Notes
The game will store your preferences such as mute state of music and sound effects, as well as the game difficulty you last played. You can save and load games.WebGL Build
At this stage Unity WebGL player is just starting to support mobile device browsers but the functionality is sometimes patchy. For best results, play the WebGL build in any decent modern desktop browser that supports HTML5. Touch input is now be supported in the WebGL player as of Unity 5.1 (2015-06-16).Play Jewel Mine in Unity WebGL Player


This software is meant to be a starting place for a distributed news system to encourage and protect citizen participation in the news making process. It encourages and enforces a clear distinction between sources (private or anonymous) and journalists (publicly associated with their stories) for the protection of those that participate. I hope you find it useful. - Daniel McEnnis


Khula Maidan
The event aims at encouraging the creative inclination
of students as well as providing a technical platform for designers
and design aspirants.Judging criteria:
Round 1: Designing based aptitude questions which will test the reasoning and
creative ability of the participant will constitute the common qualifying
section.
Round 2: The participants will be expected to solve a set of design related
problems and come up with creative and economical designs to suit the
requirements.
Round 3: The finalists will have to present their idea into any interface (if app based) or present the creative depiction of the oeuvre and its relevancy to the problem statement through a presentation.
Contact - Soukhin<PHONE_NUMBER>), Ujani<PHONE_NUMBER>)
Khula Maidan
The event aims at encouraging the creative inclination
of students as well as providing a technical platform for designers
and design aspirants.Judging criteria:
Round 1: Designing based aptitude questions which will test the reasoning and
creative ability of the participant will constitute the common qualifying
section.
Round 2: The participants will be expected to solve a set of design related
problems and come up with creative and economical designs to suit the
requirements.
Round 3: The finalists will have to present their idea into any interface (if app based) or present the creative depiction of the oeuvre and its relevancy to the problem statement through a presentation.
Contact - Soukhin<PHONE_NUMBER>),
Ujani<PHONE_NUMBER>)


| W/L | Fighter | Str | Td | Sub | Pass | Weight class | Method | Round | Time |
|---|---|---|---|---|---|---|---|---|---|
|
|
122 110 |
1 0 |
0 0 |
1 0 |
Lightweight |
S-DEC
|
5 |
5:00 |
|
|
|
2 3 |
8 0 |
1 0 |
4 0 |
Light Heavyweight |
SUB Kimura |
1 |
3:29 |
|
|
|
93 38 |
5 0 |
0 1 |
3 0 |
Women's Strawweight |
U-DEC
|
3 |
5:00 |
|
|
|
19 5 |
0 0 |
0 0 |
0 0 |
Heavyweight |
KO/TKO Punch |
1 |
1:28 |
|
|
|
38 28 |
1 8 |
0 0 |
2 0 |
Lightweight |
S-DEC
|
3 |
5:00 |
|
|
|
28 9 |
0 0 |
0 0 |
0 0 |
Featherweight |
KO/TKO Punches |
1 |
3:21 |
|
|
|
55 12 |
0 0 |
3 0 |
4 0 |
Lightweight |
KO/TKO Punches |
2 |
3:01 |
|
|
|
33 50 |
4 0 |
0 0 |
3 0 |
Welterweight |
U-DEC
|
3 |
5:00 |
|
|
|
17 7 |
0 1 |
0 0 |
0 1 |
Welterweight |
KO/TKO Punch |
1 |
2:20 |
|
|
|
78 50 |
0 0 |
0 0 |
0 0 |
Flyweight |
U-DEC
|
3 |
5:00 |
|
|
|
48 53 |
1 1 |
1 0 |
1 0 |
Women's Strawweight |
U-DEC
|
3 |
5:00 |
|
|
|
8 5 |
0 0 |
0 0 |
0 0 |
Women's Flyweight |
KO/TKO Punch |
1 |
0:40 |


Feature Films
Short Films
Teatrical Shorts
Disney
Sparkshorts
Cars toons
Toy Story Toons
Home Entertaiment
Technology
Renderman
Graphic Technologies
Careers
Careers at Pixar
Internships
Life at Pixar
Events
Extras
Pixar in Concert
Art Exhibition
Pixar in a Box
The Science Behind Pixar
About
Contact Us
Leadership
Inclusion & Outreach
Coming Soon
Our Story
Company Fac's
Careers at Pixar
Pixar Popcorn
Inclusion and Outreach


this test will wait until some text appears
the test also gets the style of the text below
Some Other Text


THAT THING YOU DO! A film review by David Landers Copyright 1997 David Landers
RATING: *** out of **** - 7.0 out of 10.0 CAST: Tom Everett Scott (Guy Patterson), Liv Tyler (Faye Dolan), Johnathon Schaech (James 'Jimmy' Mattingly II), Steve Zahn (Lenny), Ethan Randall (The Bass Player), Tom Hanks (Mr. White) DIRECTOR: Tom Hanks CERTIFICATION: PG (USA) YEAR OF PRODUCTION: 1996 ACADEMY AWARD NOMINATIONS: Best Original Song
THAT THING YOU DO!, from first-time film director Tom Hanks, is an enjoyable tale about a fictional band, The Wonders, that goes from a garage band to the band with the fastest selling album in the country. But, the question arrises, will the seduction of fame and fortune corrupt the band and lead them to become just another one-hit wonder, or will they stick together and become the next teen sensations?
The "Oneders", as they are originally known, have their first gig at a very small-time contest. Jimmy, the lead singer, has written a catchy song and intends to play it at the contest. But, a short time before the contest begins, the current drummer becomes injured and a replacement is needed. Enter Guy Patterson, skilled musician who currently works at his father's appliance store and is looking to break free from the restricting clutches that bind him. He seems to fit in well, until the group takes the stage. When they begin to play, Guy's beat is much too fast and the pace is way off for the intended song. It looks as though the group is doomed to failure. But, the "new" song is a hit! This leads to another gig, and soon enough, the group has an agent. He doesn't do too much for them, but they do get their song played on the radio. Eventually, Mr. White of Playtone records approaches the group, and he informs them that they want to release a record.
Before you can say "Billboard", the band is now renamed "The Wonders" and the members are speeding their way to fame. The gigs are getting better, their fame is increasing, and they have the fastest selling album in Playtone Records history. The band is invited to appear in a feature film, and, they then fly out to Hollywood to appear on television. After the appearance on television, things start to fall apart. Two of the members of the band pretty much disappear, and things are not working out well between Jimmy and Guy. Will the band work it out, or will they split up and go on their own separate journeys towards success?
THAT THING YOU DO!, complete with a nifty original song that actually sounded authentic, is a fun and enjoyable movie that, although it doesn't become clear if it wants to be a comedy, drama, or romance, is a well-made look into the world of music. Tom Hanks' directorial debut was a good one and should lead to more work for him.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


This example shows how to use the gmf-featurestyle directive to style a vector feature. Click on a feature to show the directive.
gmf-featurestyle


All these issues must be tested on Android 4.2, the behaviours on Safari, Chrome or Firefox are different from Android app.
Test to do: Open-up the virtual keyboard by clicking the button on next to the input.
The problem is: when the value is initialized the cursor is set at the beginning of the value, it must be at the end. ex: abcd1234| (where "|" is the curser of the virtual keyboard)
Test to do: Input some values and submit the form by pushing "Enter" button of the virtual keyboard
The problem is: The "Enter" button does not submit the form.


{% elif not object_id %}
{% comment %}
There was a form validation error while trying to Add a Batch.
The Batch has not been saved yet. Following the example from:
django/contrib/admin/templates/admin/submit_line.html
We add a "Delete" link that just reloads the page.
{% endcomment %}


New Apple MacBook Pro – South African pricing
by Staff WriteriStore has released pricing for the new Apple MacBook Pro as part of a pre-order campaign.
The 16-inch MacBook Pro was launched by Apple earlier this month and features a range of hardware improvements compared to its predecessors.
The new laptops are powered by up to an Intel octa-core processor and 64GB of RAM. They also include a new keyboard design, a 16-inch Retina Display, and more powerful GPUs.
Apple stated that the display boasts a resolution of 3,072 x 1,920 and a pixel density of 226ppi.
A six-speaker sound system, longer battery life, Touch Bar, Touch ID, a Force Touch trackpad, and Apple’s T2 Security Chip are additional features included with the new device.
South African pricing
The local pricing for the two 16-inch MacBook Pro models available at the time of writing from the iStore are below.
Colour options are Space Grey or Silver.
| MacBook Pro 16-inch | Price |
|---|---|
| 2.6GHz Intel Core i7, 512GB SSD, Radeon Pro 5300M, 16GB RAM | R43,999 |
| 2.3GHz Intel Core i9, 1TB SSD, Radeon Pro 5500M, 16GB RAM | R51,499 |


HYPPluginExtension
@protocol HYPPluginExtension <NSObject>
The HYPPluginExtension protocol provides the plugin with context about windows and containers that are available to it.
-
This method returns the window Hyperion is currently attached to.
Declaration
Objective-C
- (id)attachedWindow;
Swift
func attachedWindow() -> Any!
Return Value
The current window Hyperion is attached to.
-
This method returns the window that displays the Hyperion plugin drawer.
Declaration
Objective-C
- (id)hypeWindow;
Swift
func hypeWindow() -> Any!
Return Value
The window that displays the Hyperion plugin drawer.
-
This method returns the container that all of the snapshot plugins modules will use.
Declaration
Objective-C
- (nonnull id<HYPSnapshotContainer>)snapshotContainer;
Swift
func snapshotContainer() -> HYPSnapshotContainer
Return Value
The container that HYPSnapshotPlugin ‘s will use to display.
-
This method returns the container that all of the overlay plugins modules will use.
Declaration
Objective-C
- (nonnull id<HYPOverlayContainer>)overlayContainer;
Swift
func overlayContainer() -> HYPOverlayContainer
Return Value
The container that HYPOverlayPlugin ‘s will use to display.
-
This method will present a view controller modally over the Hyperion plugin drawer.
Note: This is useful for plugins that display information that doesn’t fit into the snapshot or overlay category.
Declaration
Objective-C
- (void)presentViewControllerOverDrawer:(id)controller animated:(BOOL)animated;
Swift
func presentViewControllerOverDrawer(_ controller: Any!, animated: Bool)
Parameters
controller
The ViewController to present modally.
animated
Whether or not the presentation is animated.


Email This Page
All Cadmium sites provide support for emailing the current page.
The Templates
Cadmium supports the Velocity templating engine for email templates. To define the templates for a welcome email, you define an HTML and a TXT template in /META-INF/email, like this:
Email This Page emails can then be sent by passing the page path and email header information to the API.


Under Graduate(B.Tech)
Higher Secondary
Senior Secondary
Adobe Photoshop
AJAX
Bootstrap
C
C++
C#
CATIA
AutoCAD
Java
MATLAB
Python
NodeJS
HTML/CSS
Javascript
JQuery
PHP
Android
ReactJS
Reading Novels
Listening Music
Playing Cricket
Singing
Dancing
Cooking


class StreamedResponse extends Response
StreamedResponse represents a streamed HTTP response.
A StreamedResponse uses a callback for its content.
The callback should use the standard PHP functions like echo to stream the response back to the client. The flush() method can also be used if needed.
HTTP_CONTINUE = 100; |
|
HTTP_SWITCHING_PROTOCOLS = 101; |
|
HTTP_PROCESSING = 102; // RFC2518 |
|
HTTP_OK = 200; |
|
HTTP_CREATED = 201; |
|
HTTP_ACCEPTED = 202; |
|
HTTP_NON_AUTHORITATIVE_INFORMATION = 203; |
|
HTTP_NO_CONTENT = 204; |
|
HTTP_RESET_CONTENT = 205; |
|
HTTP_PARTIAL_CONTENT = 206; |
|
HTTP_MULTI_STATUS = 207; // RFC4918 |
|
HTTP_ALREADY_REPORTED = 208; // RFC5842 |
|
HTTP_IM_USED = 226; // RFC3229 |
|
HTTP_MULTIPLE_CHOICES = 300; |
|
HTTP_MOVED_PERMANENTLY = 301; |
|
HTTP_FOUND = 302; |
|
HTTP_SEE_OTHER = 303; |
|
HTTP_NOT_MODIFIED = 304; |
|
HTTP_USE_PROXY = 305; |
|
HTTP_RESERVED = 306; |
|
HTTP_TEMPORARY_REDIRECT = 307; |
|
HTTP_PERMANENTLY_REDIRECT = 308; // RFC7238 |
|
HTTP_BAD_REQUEST = 400; |
|
HTTP_UNAUTHORIZED = 401; |
|
HTTP_PAYMENT_REQUIRED = 402; |
|
HTTP_FORBIDDEN = 403; |
|
HTTP_NOT_FOUND = 404; |
|
HTTP_METHOD_NOT_ALLOWED = 405; |
|
HTTP_NOT_ACCEPTABLE = 406; |
|
HTTP_PROXY_AUTHENTICATION_REQUIRED = 407; |
|
HTTP_REQUEST_TIMEOUT = 408; |
|
HTTP_CONFLICT = 409; |
|
HTTP_GONE = 410; |
|
HTTP_LENGTH_REQUIRED = 411; |
|
HTTP_PRECONDITION_FAILED = 412; |
|
HTTP_REQUEST_ENTITY_TOO_LARGE = 413; |
|
HTTP_REQUEST_URI_TOO_LONG = 414; |
|
HTTP_UNSUPPORTED_MEDIA_TYPE = 415; |
|
HTTP_REQUESTED_RANGE_NOT_SATISFIABLE = 416; |
|
HTTP_EXPECTATION_FAILED = 417; |
|
HTTP_I_AM_A_TEAPOT = 418; // RFC2324 |
|
HTTP_MISDIRECTED_REQUEST = 421; // RFC7540 |
|
HTTP_UNPROCESSABLE_ENTITY = 422; // RFC4918 |
|
HTTP_LOCKED = 423; // RFC4918 |
|
HTTP_FAILED_DEPENDENCY = 424; // RFC4918 |
|
HTTP_RESERVED_FOR_WEBDAV_ADVANCED_COLLECTIONS_EXPIRED_PROPOSAL = 425; // RFC2817 |
|
HTTP_UPGRADE_REQUIRED = 426; // RFC2817 |
|
HTTP_PRECONDITION_REQUIRED = 428; // RFC6585 |
|
HTTP_TOO_MANY_REQUESTS = 429; // RFC6585 |
|
HTTP_REQUEST_HEADER_FIELDS_TOO_LARGE = 431; // RFC6585 |
|
HTTP_UNAVAILABLE_FOR_LEGAL_REASONS = 451; |
|
HTTP_INTERNAL_SERVER_ERROR = 500; |
|
HTTP_NOT_IMPLEMENTED = 501; |
|
HTTP_BAD_GATEWAY = 502; |
|
HTTP_SERVICE_UNAVAILABLE = 503; |
|
HTTP_GATEWAY_TIMEOUT = 504; |
|
HTTP_VERSION_NOT_SUPPORTED = 505; |
|
HTTP_VARIANT_ALSO_NEGOTIATES_EXPERIMENTAL = 506; // RFC2295 |
|
HTTP_INSUFFICIENT_STORAGE = 507; // RFC4918 |
|
HTTP_LOOP_DETECTED = 508; // RFC5842 |
|
HTTP_NOT_EXTENDED = 510; // RFC2774 |
|
HTTP_NETWORK_AUTHENTICATION_REQUIRED = 511; // RFC6585 |
|
ResponseHeaderBag
|
$headers |
from Response | |
protected string
|
$content |
from Response | |
protected string
|
$version |
from Response | |
protected int
|
$statusCode |
from Response | |
protected string
|
$statusText |
from Response | |
protected string
|
$charset |
from Response | |
static array
|
$statusTexts |
Status codes translation table. | from Response |
protected
|
$callback |
||
protected
|
$streamed |
public
|
|
__construct(callable $callback = null, $status = 200, array $headers = array())
|
No description | |
public static
|
Response |
create(callable|null $callback = null, int $status = 200, array $headers = array())
|
Factory method for chainability. | |
public
|
string |
__toString()
|
Returns the Response as an HTTP string. | from Response |
public
|
|
__clone()
|
Clones the current Response instance. | from Response |
public
|
$this |
prepare(Request $request)
|
Prepares the Response before it is sent to the client. | from Response |
public
|
$this |
sendHeaders()
|
Sends HTTP headers. | |
public
|
$this |
sendContent()
|
Sends content for the current web response. | |
public
|
$this |
send()
|
Sends HTTP headers and content. | from Response |
public
|
$this |
setContent(mixed $content)
|
Sets the response content. | |
public
|
string |
getContent()
|
Gets the current response content. | |
public
|
$this |
setProtocolVersion($version)
|
Sets the HTTP protocol version (1.0 or 1.1). | from Response |
public
|
|
getProtocolVersion()
|
Gets the HTTP protocol version. | from Response |
public
|
$this |
setStatusCode($code, $text = null)
|
Sets the response status code. | from Response |
public
|
|
getStatusCode()
|
Retrieves the status code for the current web response. | from Response |
public
|
$this |
setCharset($charset)
|
Sets the response charset. | from Response |
public
|
|
getCharset()
|
Retrieves the response charset. | from Response |
public
|
|
isCacheable()
|
Returns true if the response may safely be kept in a shared (surrogate) cache. | from Response |
public
|
|
isFresh()
|
Returns true if the response is "fresh". | from Response |
public
|
|
isValidateable()
|
Returns true if the response includes headers that can be used to validate the response with the origin server using a conditional GET request. | from Response |
public
|
$this |
setPrivate()
|
Marks the response as "private". | from Response |
public
|
$this |
setPublic()
|
Marks the response as "public". | from Response |
public
|
$this |
setImmutable($immutable = true)
|
Marks the response as "immutable". | from Response |
public
|
|
isImmutable()
|
Returns true if the response is marked as "immutable". | from Response |
public
|
|
mustRevalidate()
|
Returns true if the response must be revalidated by caches. | from Response |
public
|
|
getDate()
|
Returns the Date header as a DateTime instance. | from Response |
public
|
$this |
setDate(DateTimeInterface $date)
|
Sets the Date header. | from Response |
public
|
|
getAge()
|
Returns the age of the response in seconds. | from Response |
public
|
$this |
expire()
|
Marks the response stale by setting the Age header to be equal to the maximum age of the response. | from Response |
public
|
|
getExpires()
|
Returns the value of the Expires header as a DateTime instance. | from Response |
public
|
$this |
setExpires(DateTimeInterface $date = null)
|
Sets the Expires HTTP header with a DateTime instance. | from Response |
public
|
|
getMaxAge()
|
Returns the number of seconds after the time specified in the response's Date header when the response should no longer be considered fresh. | from Response |
public
|
$this |
setMaxAge($value)
|
Sets the number of seconds after which the response should no longer be considered fresh. | from Response |
public
|
$this |
setSharedMaxAge($value)
|
Sets the number of seconds after which the response should no longer be considered fresh by shared caches. | from Response |
public
|
|
getTtl()
|
Returns the response's time-to-live in seconds. | from Response |
public
|
$this |
setTtl($seconds)
|
Sets the response's time-to-live for shared caches in seconds. | from Response |
public
|
$this |
setClientTtl($seconds)
|
Sets the response's time-to-live for private/client caches in seconds. | from Response |
public
|
|
getLastModified()
|
Returns the Last-Modified HTTP header as a DateTime instance. | from Response |
public
|
$this |
setLastModified(DateTimeInterface $date = null)
|
Sets the Last-Modified HTTP header with a DateTime instance. | from Response |
public
|
|
getEtag()
|
Returns the literal value of the ETag HTTP header. | from Response |
public
|
$this |
setEtag(string|null $etag = null, bool $weak = false)
|
Sets the ETag value. | from Response |
public
|
$this |
setCache($options)
|
Sets the response's cache headers (validation and/or expiration). | from Response |
public
|
$this |
setNotModified()
|
Modifies the response so that it conforms to the rules defined for a 304 status code. | from Response |
public
|
|
hasVary()
|
Returns true if the response includes a Vary header. | from Response |
public
|
|
getVary()
|
Returns an array of header names given in the Vary header. | from Response |
public
|
$this |
setVary(string|array $headers, bool $replace = true)
|
Sets the Vary header. | from Response |
public
|
bool |
isNotModified(Request $request)
|
Determines if the Response validators (ETag, Last-Modified) match a conditional value specified in the Request. | from Response |
public
|
|
isInvalid()
|
Is response invalid? | from Response |
public
|
|
isInformational()
|
Is response informative? | from Response |
public
|
|
isSuccessful()
|
Is response successful? | from Response |
public
|
|
isRedirection()
|
Is the response a redirect? | from Response |
public
|
|
isClientError()
|
Is there a client error? | from Response |
public
|
|
isServerError()
|
Was there a server side error? | from Response |
public
|
|
isOk()
|
Is the response OK? | from Response |
public
|
|
isForbidden()
|
Is the response forbidden? | from Response |
public
|
|
isNotFound()
|
Is the response a not found error? | from Response |
public
|
|
isRedirect($location = null)
|
Is the response a redirect of some form? | from Response |
public
|
|
isEmpty()
|
Is the response empty? | from Response |
public static
|
|
closeOutputBuffers($targetLevel, $flush)
|
Cleans or flushes output buffers up to target level. | from Response |
protected
|
|
ensureIEOverSSLCompatibility(Request $request)
|
Checks if we need to remove Cache-Control for SSL encrypted downloads when using IE < 9. | from Response |
public
|
$this |
setCallback(callable $callback)
|
Sets the PHP callback associated with this Response. |
__construct()
public __construct(callable $callback = null, $status = 200, array $headers = array())
callable |
$callback |
A valid PHP callback or null to set it later |
$status |
||
array |
$headers |
create()
public static Response create(callable|null $callback = null, int $status = 200, array $headers = array())
Factory method for chainability.
callable|null |
$callback |
A valid PHP callback or null to set it later |
int |
$status |
The response status code |
array |
$headers |
An array of response headers |
Response |
__toString()
public string __toString()
Returns the Response as an HTTP string.
The string representation of the Response is the same as the one that will be sent to the client only if the prepare() method has been called before.
string |
The Response as an HTTP string |
| prepare() |
__clone()
public __clone()
Clones the current Response instance.
Prepares the Response before it is sent to the client.
This method tweaks the Response to ensure that it is compliant with RFC 2616. Most of the changes are based on the Request that is "associated" with this Response.
Request |
$request |
$this |
sendHeaders()
public $this sendHeaders()
Sends HTTP headers.
$this |
sendContent()
public $this sendContent()
Sends content for the current web response.
$this |
send()
public $this send()
Sends HTTP headers and content.
$this |
setContent()
public $this setContent(mixed $content)
Sets the response content.
Valid types are strings, numbers, null, and objects that implement a __toString() method.
mixed |
$content |
Content that can be cast to string |
$this |
| UnexpectedValueException |
getContent()
public string getContent()
Gets the current response content.
string |
Content |
setProtocolVersion()
public $this setProtocolVersion($version)
Sets the HTTP protocol version (1.0 or 1.1).
$version |
$this |
getProtocolVersion()
public getProtocolVersion()
Gets the HTTP protocol version.
setStatusCode()
public $this setStatusCode($code, $text = null)
Sets the response status code.
If the status text is null it will be automatically populated for the known status codes and left empty otherwise.
$code |
||
$text |
$this |
| InvalidArgumentException | When the HTTP status code is not valid |
getStatusCode()
public getStatusCode()
Retrieves the status code for the current web response.
setCharset()
public $this setCharset($charset)
Sets the response charset.
$charset |
$this |
getCharset()
public getCharset()
Retrieves the response charset.
isCacheable()
public isCacheable()
Returns true if the response may safely be kept in a shared (surrogate) cache.
Responses marked "private" with an explicit Cache-Control directive are considered uncacheable.
Responses with neither a freshness lifetime (Expires, max-age) nor cache validator (Last-Modified, ETag) are considered uncacheable because there is no way to tell when or how to remove them from the cache.
Note that RFC 7231 and RFC 7234 possibly allow for a more permissive implementation, for example "status codes that are defined as cacheable by default [...] can be reused by a cache with heuristic expiration unless otherwise indicated" (https://tools.ietf.org/html/rfc7231#section-6.1)
isFresh()
public isFresh()
Returns true if the response is "fresh".
Fresh responses may be served from cache without any interaction with the origin. A response is considered fresh when it includes a Cache-Control/max-age indicator or Expires header and the calculated age is less than the freshness lifetime.
isValidateable()
public isValidateable()
Returns true if the response includes headers that can be used to validate the response with the origin server using a conditional GET request.
setPrivate()
public $this setPrivate()
Marks the response as "private".
It makes the response ineligible for serving other clients.
$this |
setPublic()
public $this setPublic()
Marks the response as "public".
It makes the response eligible for serving other clients.
$this |
setImmutable()
public $this setImmutable($immutable = true)
Marks the response as "immutable".
$immutable |
$this |
isImmutable()
public isImmutable()
Returns true if the response is marked as "immutable".
mustRevalidate()
public mustRevalidate()
Returns true if the response must be revalidated by caches.
This method indicates that the response must not be served stale by a cache in any circumstance without first revalidating with the origin. When present, the TTL of the response should not be overridden to be greater than the value provided by the origin.
getDate()
public getDate()
Returns the Date header as a DateTime instance.
| RuntimeException | When the header is not parseable |
setDate()
public $this setDate(DateTimeInterface $date)
getAge()
public getAge()
Returns the age of the response in seconds.
expire()
public $this expire()
Marks the response stale by setting the Age header to be equal to the maximum age of the response.
$this |
getExpires()
public getExpires()
Returns the value of the Expires header as a DateTime instance.
setExpires()
public $this setExpires(DateTimeInterface $date = null)
Sets the Expires HTTP header with a DateTime instance.
Passing null as value will remove the header.
DateTimeInterface |
$date |
$this |
getMaxAge()
public getMaxAge()
Returns the number of seconds after the time specified in the response's Date header when the response should no longer be considered fresh.
First, it checks for a s-maxage directive, then a max-age directive, and then it falls back on an expires header. It returns null when no maximum age can be established.
setMaxAge()
public $this setMaxAge($value)
Sets the number of seconds after which the response should no longer be considered fresh.
This methods sets the Cache-Control max-age directive.
$value |
$this |
setSharedMaxAge()
public $this setSharedMaxAge($value)
Sets the number of seconds after which the response should no longer be considered fresh by shared caches.
This methods sets the Cache-Control s-maxage directive.
$value |
$this |
getTtl()
public getTtl()
Returns the response's time-to-live in seconds.
It returns null when no freshness information is present in the response.
When the responses TTL is <= 0, the response may not be served from cache without first revalidating with the origin.
setTtl()
public $this setTtl($seconds)
Sets the response's time-to-live for shared caches in seconds.
This method adjusts the Cache-Control/s-maxage directive.
$seconds |
$this |
setClientTtl()
public $this setClientTtl($seconds)
Sets the response's time-to-live for private/client caches in seconds.
This method adjusts the Cache-Control/max-age directive.
$seconds |
$this |
getLastModified()
public getLastModified()
Returns the Last-Modified HTTP header as a DateTime instance.
| RuntimeException | When the HTTP header is not parseable |
setLastModified()
public $this setLastModified(DateTimeInterface $date = null)
Sets the Last-Modified HTTP header with a DateTime instance.
Passing null as value will remove the header.
DateTimeInterface |
$date |
$this |
getEtag()
public getEtag()
Returns the literal value of the ETag HTTP header.
setEtag()
public $this setEtag(string|null $etag = null, bool $weak = false)
Sets the ETag value.
string|null |
$etag |
The ETag unique identifier or null to remove the header |
bool |
$weak |
Whether you want a weak ETag or not |
$this |
setCache()
public $this setCache($options)
Sets the response's cache headers (validation and/or expiration).
Available options are: etag, last_modified, max_age, s_maxage, private, public and immutable.
$options |
$this |
| InvalidArgumentException |
setNotModified()
public $this setNotModified()
Modifies the response so that it conforms to the rules defined for a 304 status code.
This sets the status, removes the body, and discards any headers that MUST NOT be included in 304 responses.
$this |
| http://tools.ietf.org/html/rfc2616#section-10.3.5 |
hasVary()
public hasVary()
Returns true if the response includes a Vary header.
getVary()
public getVary()
Returns an array of header names given in the Vary header.
setVary()
public $this setVary(string|array $headers, bool $replace = true)
Sets the Vary header.
string|array |
$headers |
|
bool |
$replace |
Whether to replace the actual value or not (true by default) |
$this |
Determines if the Response validators (ETag, Last-Modified) match a conditional value specified in the Request.
If the Response is not modified, it sets the status code to 304 and removes the actual content by calling the setNotModified() method.
Request |
$request |
bool |
true if the Response validators match the Request, false otherwise |
isInvalid()
public isInvalid()
Is response invalid?
| http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html |
isInformational()
public isInformational()
Is response informative?
isSuccessful()
public isSuccessful()
Is response successful?
isRedirection()
public isRedirection()
Is the response a redirect?
isClientError()
public isClientError()
Is there a client error?
isServerError()
public isServerError()
Was there a server side error?
isOk()
public isOk()
Is the response OK?
isForbidden()
public isForbidden()
Is the response forbidden?
isNotFound()
public isNotFound()
Is the response a not found error?
isRedirect()
public isRedirect($location = null)
Is the response a redirect of some form?
$location |
isEmpty()
public isEmpty()
Is the response empty?
closeOutputBuffers()
public static closeOutputBuffers($targetLevel, $flush)
Cleans or flushes output buffers up to target level.
Resulting level can be greater than target level if a non-removable buffer has been encountered.
$targetLevel |
||
$flush |
ensureIEOverSSLCompatibility()
protected ensureIEOverSSLCompatibility(Request $request)
Checks if we need to remove Cache-Control for SSL encrypted downloads when using IE < 9.
Request |
$request |
| http://support.microsoft.com/kb/323308 |
setCallback()
public $this setCallback(callable $callback)
Sets the PHP callback associated with this Response.
callable |
$callback |
A valid PHP callback |
$this |
<?php
/*
* This file is part of the Symfony package.
*
* (c) Fabien Potencier<EMAIL_ADDRESS>*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace App\Khan\Component\HttpFoundation;
/**
* StreamedResponse represents a streamed HTTP response.
*
* A StreamedResponse uses a callback for its content.
*
* The callback should use the standard PHP functions like echo
* to stream the response back to the client. The flush() method
* can also be used if needed.
*
* @see flush()
*
* @author Fabien Potencier<EMAIL_ADDRESS>*/
class StreamedResponse extends Response
{
protected $callback;
protected $streamed;
private $headersSent;
/**
* @param callable|null $callback A valid PHP callback or null to set it later
* @param int $status The response status code
* @param array $headers An array of response headers
*/
public function __construct(callable $callback = null, int $status = 200, array $headers = array())
{
parent::__construct(null, $status, $headers);
if (null !== $callback) {
$this->setCallback($callback);
}
$this->streamed = false;
$this->headersSent = false;
}
/**
* Factory method for chainability.
*
* @param callable|null $callback A valid PHP callback or null to set it later
* @param int $status The response status code
* @param array $headers An array of response headers
*
* @return static
*/
public static function create($callback = null, $status = 200, $headers = array())
{
return new static($callback, $status, $headers);
}
/**
* Sets the PHP callback associated with this Response.
*
* @param callable $callback A valid PHP callback
*
* @return $this
*/
public function setCallback(callable $callback)
{
$this->callback = $callback;
return $this;
}
/**
* {@inheritdoc}
*
* This method only sends the headers once.
*
* @return $this
*/
public function sendHeaders()
{
if ($this->headersSent) {
return $this;
}
$this->headersSent = true;
return parent::sendHeaders();
}
/**
* {@inheritdoc}
*
* This method only sends the content once.
*
* @return $this
*/
public function sendContent()
{
if ($this->streamed) {
return $this;
}
$this->streamed = true;
if (null === $this->callback) {
throw new \LogicException('The Response callback must not be null.');
}
call_user_func($this->callback);
return $this;
}
/**
* {@inheritdoc}
*
* @throws \LogicException when the content is not null
*
* @return $this
*/
public function setContent($content)
{
if (null !== $content) {
throw new \LogicException('The content cannot be set on a StreamedResponse instance.');
}
return $this;
}
/**
* {@inheritdoc}
*
* @return false
*/
public function getContent()
{
return false;
}
}


Warning! Spyware detected on your computer!
Install an antivirus or spyware remover to clean your computer.


Hey all, a trip report, of sorts
Yesterday was a brilliant blue sunny day here where I live and me and a few friends decided to spend the day out at the beach soaking up some rays. We took some beer and some cards and perched in some sand dunes in a nice little spot overlooking the beach.
At about 4pm two of my friends, after a bit of beer and alot of sun, decided to try this new drug that we had called 2c-t-4. They each ate a single cap holding a 16mg dose. They were one girl, one guy, both about 5'9' and quite skinny.
Nothing really happened for a while and the sun began to tilt so we started off for home. We stopped off to get some food on the walk home when suddenly Ophelia disappeared. We got our food, thinking she'd just be outside, and then went out to find her. Turns out she'd run up round the corner off the main street to throw up. Damn.
Hamlet was doing just fine, happy as, eating his chips. When Ophelia came back she said she need home, now. So we called a friend and got a ride home. She went straight to her bedroom and didn't leave after that. I went in and hung out with her from time to time and she didn't seem to be doing so well: shakes, delusions, anxiety. She said it was the most intense thing she'd ever experienced (and she has experienced lots of other drugs). She was freaking a bit, but I had to go to bed so Hamlet went and stayed with her. He was doing fine: he couldn't explain it as anything but 'good'. He was getting the shakes sporadically though.
This morning when I talked to them neither had or could yet sleep. The drug finally stopped peaking at aout 7am, 15 hours after ingestion. Neither has slept yet, but they'll crash sometime. Ophelia described her trip as a very dark, sinister experience. She said it was a constant struggle not to lapse into a crazy nightmare driven mania. The visuals were vivid, but consisted of things like growling, angry dogs running up to the bed; and witnessing decapitations. She is reflective this morning, glad for the experience but not willing to ever repeat it. Hamlet was just cruising: (me)'What you upto?' (H)'Not much, haven't slept.' 'How you feeling?' 'Dunno.. good?'
Summary
Well, what is there to say? Be carefull, it seems like a dark drug with sinister undertones. Probably not good to do this one in public.  Ophelia thought that 16mg was too much: it did not let up or give her a rest for the entire 15 hours she was peaking. Its definitely made me wonder whether I want to try it...
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Home
Certifier
Certificants
Third Parties
About Us
Register a New Certifiacte
Account Address of Recipient
Access Password
First Name
Last Name
Qualification
Institute
Create
Registered Certificate


SARIMAX: Introduction¶
This notebook replicates examples from the Stata ARIMA time series estimation and postestimation documentation.
First, we replicate the four estimation examples http://www.stata.com/manuals13/tsarima.pdf:
ARIMA(1,1,1) model on the U.S. Wholesale Price Index (WPI) dataset.
Variation of example 1 which adds an MA(4) term to the ARIMA(1,1,1) specification to allow for an additive seasonal effect.
ARIMA(2,1,0) x (1,1,0,12) model of monthly airline data. This example allows a multiplicative seasonal effect.
ARMA(1,1) model with exogenous regressors; describes consumption as an autoregressive process on which also the money supply is assumed to be an explanatory variable.
Second, we demonstrate postestimation capabilities to replicate http://www.stata.com/manuals13/tsarimapostestimation.pdf. The model from example 4 is used to demonstrate:
One-step-ahead in-sample prediction
n-step-ahead out-of-sample forecasting
n-step-ahead in-sample dynamic prediction
[1]:
%matplotlib inline
[2]:
import numpy as np
import pandas as pd
from scipy.stats import norm
import statsmodels.api as sm
import matplotlib.pyplot as plt
from datetime import datetime
import requests
from io import BytesIO
# Register converters to avoid warnings
pd.plotting.register_matplotlib_converters()
ARIMA Example 1: Arima¶
As can be seen in the graphs from Example 2, the Wholesale price index (WPI) is growing over time (i.e. is not stationary). Therefore an ARMA model is not a good specification. In this first example, we consider a model where the original time series is assumed to be integrated of order 1, so that the difference is assumed to be stationary, and fit a model with one autoregressive lag and one moving average lag, as well as an intercept term.
The postulated data process is then:
where \(c\) is the intercept of the ARMA model, \(\Delta\) is the first-difference operator, and we assume \(\epsilon_{t} \sim N(0, \sigma^2)\). This can be rewritten to emphasize lag polynomials as (this will be useful in example 2, below):
where \(L\) is the lag operator.
Notice that one difference between the Stata output and the output below is that Stata estimates the following model:
where \(\beta_0\) is the mean of the process \(y_t\). This model is equivalent to the one estimated in the statsmodels SARIMAX class, but the interpretation is different. To see the equivalence, note that:
so that \(c = (1 - \phi_1) \beta_0\).
[3]:
# Dataset
wpi1 = requests.get('https://www.stata-press.com/data/r12/wpi1.dta').content
data = pd.read_stata(BytesIO(wpi1))
data.index = data.t
# Set the frequency
data.index.freq="QS-OCT"
# Fit the model
mod = sm.tsa.statespace.SARIMAX(data['wpi'], trend='c', order=(1,1,1))
res = mod.fit(disp=False)
print(res.summary())
SARIMAX Results
==============================================================================
Dep. Variable: wpi No. Observations: 124
Model: SARIMAX(1, 1, 1) Log Likelihood -135.351
Date: Fri, 21 Feb 2020 AIC 278.703
Time: 13:56:15 BIC 289.951
Sample: 01-01-1960 HQIC 283.272
- 10-01-1990
Covariance Type: opg
==============================================================================
coef std err z P>|z| [0.025 0.975]
------------------------------------------------------------------------------
intercept 0.0943 0.068 1.389 0.165 -0.039 0.227
ar.L1 0.8742 0.055 16.028 0.000 0.767 0.981
ma.L1 -0.4120 0.100 -4.119 0.000 -0.608 -0.216
sigma2 0.5257 0.053 9.849 0.000 0.421 0.630
===================================================================================
Ljung-Box (Q): 37.12 Jarque-Bera (JB): 9.78
Prob(Q): 0.60 Prob(JB): 0.01
Heteroskedasticity (H): 15.93 Skew: 0.28
Prob(H) (two-sided): 0.00 Kurtosis: 4.26
===================================================================================
Warnings:
[1] Covariance matrix calculated using the outer product of gradients (complex-step).
Thus the maximum likelihood estimates imply that for the process above, we have:
where \(\epsilon_{t} \sim N(0, 0.5257)\). Finally, recall that \(c = (1 - \phi_1) \beta_0\), and here \(c = 0.0943\) and \(\phi_1 = 0.8742\). To compare with the output from Stata, we could calculate the mean:
Note: these values are slightly different from the values in the Stata documentation because the optimizer in statsmodels has found parameters here that yield a higher likelihood. Nonetheless, they are very close.
ARIMA Example 2: Arima with additive seasonal effects¶
This model is an extension of that from example 1. Here the data is assumed to follow the process:
The new part of this model is that there is allowed to be a annual seasonal effect (it is annual even though the periodicity is 4 because the dataset is quarterly). The second difference is that this model uses the log of the data rather than the level.
Before estimating the dataset, graphs showing:
The time series (in logs)
The first difference of the time series (in logs)
The autocorrelation function
The partial autocorrelation function.
From the first two graphs, we note that the original time series does not appear to be stationary, whereas the first-difference does. This supports either estimating an ARMA model on the first-difference of the data, or estimating an ARIMA model with 1 order of integration (recall that we are taking the latter approach). The last two graphs support the use of an ARMA(1,1,1) model.
[4]:
# Dataset
data = pd.read_stata(BytesIO(wpi1))
data.index = data.t
data.index.freq="QS-OCT"
data['ln_wpi'] = np.log(data['wpi'])
data['D.ln_wpi'] = data['ln_wpi'].diff()
[5]:
# Graph data
fig, axes = plt.subplots(1, 2, figsize=(15,4))
# Levels
axes[0].plot(data.index._mpl_repr(), data['wpi'], '-')
axes[0].set(title='US Wholesale Price Index')
# Log difference
axes[1].plot(data.index._mpl_repr(), data['D.ln_wpi'], '-')
axes[1].hlines(0, data.index[0], data.index[-1], 'r')
axes[1].set(title='US Wholesale Price Index - difference of logs');
[6]:
# Graph data
fig, axes = plt.subplots(1, 2, figsize=(15,4))
fig = sm.graphics.tsa.plot_acf(data.iloc[1:]['D.ln_wpi'], lags=40, ax=axes[0])
fig = sm.graphics.tsa.plot_pacf(data.iloc[1:]['D.ln_wpi'], lags=40, ax=axes[1])
To understand how to specify this model in statsmodels, first recall that from example 1 we used the following code to specify the ARIMA(1,1,1) model:
mod = sm.tsa.statespace.SARIMAX(data['wpi'], trend='c', order=(1,1,1))
The order
argument is a tuple of the form (AR specification, Integration order, MA specification)
. The integration order must be an integer (for example, here we assumed one order of integration, so it was specified as 1. In a pure ARMA model where the underlying data is already stationary, it would be 0).
For the AR specification and MA specification components, there are two possibilities. The first is to specify the maximum degree of the corresponding lag polynomial, in which case the component is an integer. For example, if we wanted to specify an ARIMA(1,1,4) process, we would use:
mod = sm.tsa.statespace.SARIMAX(data['wpi'], trend='c', order=(1,1,4))
and the corresponding data process would be:
or
When the specification parameter is given as a maximum degree of the lag polynomial, it implies that all polynomial terms up to that degree are included. Notice that this is not the model we want to use, because it would include terms for \(\epsilon_{t-2}\) and \(\epsilon_{t-3}\), which we do not want here.
What we want is a polynomial that has terms for the 1st and 4th degrees, but leaves out the 2nd and 3rd terms. To do that, we need to provide a tuple for the specification parameter, where the tuple describes the lag polynomial itself. In particular, here we would want to use:
ar = 1 # this is the maximum degree specification
ma = (1,0,0,1) # this is the lag polynomial specification
mod = sm.tsa.statespace.SARIMAX(data['wpi'], trend='c', order=(ar,1,ma)))
This gives the following form for the process of the data:
which is what we want.
[7]:
# Fit the model
mod = sm.tsa.statespace.SARIMAX(data['ln_wpi'], trend='c', order=(1,1,(1,0,0,1)))
res = mod.fit(disp=False)
print(res.summary())
SARIMAX Results
=================================================================================
Dep. Variable: ln_wpi No. Observations: 124
Model: SARIMAX(1, 1, [1, 4]) Log Likelihood 386.033
Date: Fri, 21 Feb 2020 AIC -762.067
Time: 13:56:16 BIC -748.006
Sample: 01-01-1960 HQIC -756.355
- 10-01-1990
Covariance Type: opg
==============================================================================
coef std err z P>|z| [0.025 0.975]
------------------------------------------------------------------------------
intercept 0.0024 0.002 1.489 0.137 -0.001 0.006
ar.L1 0.7800 0.094 8.254 0.000 0.595 0.965
ma.L1 -0.3981 0.126 -3.165 0.002 -0.645 -0.152
ma.L4 0.3096 0.120 2.581 0.010 0.074 0.545
sigma2 0.0001 9.8e-06 11.110 0.000 8.97e-05 0.000
===================================================================================
Ljung-Box (Q): 30.07 Jarque-Bera (JB): 45.15
Prob(Q): 0.87 Prob(JB): 0.00
Heteroskedasticity (H): 2.57 Skew: 0.29
Prob(H) (two-sided): 0.00 Kurtosis: 5.91
===================================================================================
Warnings:
[1] Covariance matrix calculated using the outer product of gradients (complex-step).
ARIMA Example 3: Airline Model¶
In the previous example, we included a seasonal effect in an additive way, meaning that we added a term allowing the process to depend on the 4th MA lag. It may be instead that we want to model a seasonal effect in a multiplicative way. We often write the model then as an ARIMA \((p,d,q) \times (P,D,Q)_s\), where the lowercase letters indicate the specification for the non-seasonal component, and the uppercase letters indicate the specification for the seasonal component; \(s\) is the periodicity of the seasons (e.g. it is often 4 for quarterly data or 12 for monthly data). The data process can be written generically as:
where:
\(\phi_p (L)\) is the non-seasonal autoregressive lag polynomial
\(\tilde \phi_P (L^s)\) is the seasonal autoregressive lag polynomial
\(\Delta^d \Delta_s^D y_t\) is the time series, differenced \(d\) times, and seasonally differenced \(D\) times.
\(A(t)\) is the trend polynomial (including the intercept)
\(\theta_q (L)\) is the non-seasonal moving average lag polynomial
\(\tilde \theta_Q (L^s)\) is the seasonal moving average lag polynomial
sometimes we rewrite this as:
where \(y_t^* = \Delta^d \Delta_s^D y_t\). This emphasizes that just as in the simple case, after we take differences (here both non-seasonal and seasonal) to make the data stationary, the resulting model is just an ARMA model.
As an example, consider the airline model ARIMA \((2,1,0) \times (1,1,0)_{12}\), with an intercept. The data process can be written in the form above as:
Here, we have:
\(\phi_p (L) = (1 - \phi_1 L - \phi_2 L^2)\)
\(\tilde \phi_P (L^s) = (1 - \phi_1 L^12)\)
\(d = 1, D = 1, s=12\) indicating that \(y_t^*\) is derived from \(y_t\) by taking first-differences and then taking 12-th differences.
\(A(t) = c\) is the constant trend polynomial (i.e. just an intercept)
\(\theta_q (L) = \tilde \theta_Q (L^s) = 1\) (i.e. there is no moving average effect)
It may still be confusing to see the two lag polynomials in front of the time-series variable, but notice that we can multiply the lag polynomials together to get the following model:
which can be rewritten as:
This is similar to the additively seasonal model from example 2, but the coefficients in front of the autoregressive lags are actually combinations of the underlying seasonal and non-seasonal parameters.
Specifying the model in statsmodels is done simply by adding the seasonal_order
argument, which accepts a tuple of the form (Seasonal AR specification, Seasonal Integration order, Seasonal MA, Seasonal periodicity)
. The seasonal AR and MA specifications, as before, can be expressed as a maximum polynomial degree or as the lag polynomial itself. Seasonal periodicity is an integer.
For the airline model ARIMA \((2,1,0) \times (1,1,0)_{12}\) with an intercept, the command is:
mod = sm.tsa.statespace.SARIMAX(data['lnair'], order=(2,1,0), seasonal_order=(1,1,0,12))
[8]:
# Dataset
air2 = requests.get('https://www.stata-press.com/data/r12/air2.dta').content
data = pd.read_stata(BytesIO(air2))
data.index = pd.date_range(start=datetime(data.time[0], 1, 1), periods=len(data), freq='MS')
data['lnair'] = np.log(data['air'])
# Fit the model
mod = sm.tsa.statespace.SARIMAX(data['lnair'], order=(2,1,0), seasonal_order=(1,1,0,12), simple_differencing=True)
res = mod.fit(disp=False)
print(res.summary())
SARIMAX Results
==========================================================================================
Dep. Variable: D.DS12.lnair No. Observations: 131
Model: SARIMAX(2, 0, 0)x(1, 0, 0, 12) Log Likelihood 240.821
Date: Fri, 21 Feb 2020 AIC -473.643
Time: 13:56:16 BIC -462.142
Sample: 02-01-1950 HQIC -468.970
- 12-01-1960
Covariance Type: opg
==============================================================================
coef std err z P>|z| [0.025 0.975]
------------------------------------------------------------------------------
ar.L1 -0.4057 0.080 -5.045 0.000 -0.563 -0.248
ar.L2 -0.0799 0.099 -0.809 0.419 -0.274 0.114
ar.S.L12 -0.4723 0.072 -6.592 0.000 -0.613 -0.332
sigma2 0.0014 0.000 8.403 0.000 0.001 0.002
===================================================================================
Ljung-Box (Q): 49.89 Jarque-Bera (JB): 0.72
Prob(Q): 0.14 Prob(JB): 0.70
Heteroskedasticity (H): 0.54 Skew: 0.14
Prob(H) (two-sided): 0.04 Kurtosis: 3.23
===================================================================================
Warnings:
[1] Covariance matrix calculated using the outer product of gradients (complex-step).
Notice that here we used an additional argument simple_differencing=True
. This controls how the order of integration is handled in ARIMA models. If simple_differencing=True
, then the time series provided as endog
is literally differenced and an ARMA model is fit to the resulting new time series. This implies that a number of initial periods are lost to the differencing process, however it may be necessary either to compare results to other packages (e.g. Stata’s arima
always uses
simple differencing) or if the seasonal periodicity is large.
The default is simple_differencing=False
, in which case the integration component is implemented as part of the state space formulation, and all of the original data can be used in estimation.
ARIMA Example 4: ARMAX (Friedman)¶
This model demonstrates the use of explanatory variables (the X part of ARMAX). When exogenous regressors are included, the SARIMAX module uses the concept of “regression with SARIMA errors” (see http://robjhyndman.com/hyndsight/arimax/ for details of regression with ARIMA errors versus alternative specifications), so that the model is specified as:
Notice that the first equation is just a linear regression, and the second equation just describes the process followed by the error component as SARIMA (as was described in example 3). One reason for this specification is that the estimated parameters have their natural interpretations.
This specification nests many simpler specifications. For example, regression with AR(2) errors is:
The model considered in this example is regression with ARMA(1,1) errors. The process is then written:
Notice that \(\beta_0\) is, as described in example 1 above, not the same thing as an intercept specified by trend='c'
. Whereas in the examples above we estimated the intercept of the model via the trend polynomial, here, we demonstrate how to estimate \(\beta_0\) itself by adding a constant to the exogenous dataset. In the output, the \(beta_0\) is called const
, whereas above the intercept \(c\) was called intercept
in the output.
[9]:
# Dataset
friedman2 = requests.get('https://www.stata-press.com/data/r12/friedman2.dta').content
data = pd.read_stata(BytesIO(friedman2))
data.index = data.time
data.index.freq = "QS-OCT"
# Variables
endog = data.loc['1959':'1981', 'consump']
exog = sm.add_constant(data.loc['1959':'1981', 'm2'])
# Fit the model
mod = sm.tsa.statespace.SARIMAX(endog, exog, order=(1,0,1))
res = mod.fit(disp=False)
print(res.summary())
SARIMAX Results
==============================================================================
Dep. Variable: consump No. Observations: 92
Model: SARIMAX(1, 0, 1) Log Likelihood -340.508
Date: Fri, 21 Feb 2020 AIC 691.015
Time: 13:56:17 BIC 703.624
Sample: 01-01-1959 HQIC 696.105
- 10-01-1981
Covariance Type: opg
==============================================================================
coef std err z P>|z| [0.025 0.975]
------------------------------------------------------------------------------
const -36.0618 56.647 -0.637 0.524 -147.088 74.964
m2 1.1220 0.036 30.823 0.000 1.051 1.193
ar.L1 0.9349 0.041 22.717 0.000 0.854 1.016
ma.L1 0.3091 0.089 3.488 0.000 0.135 0.483
sigma2 93.2547 10.888 8.565 0.000 71.914 114.596
===================================================================================
Ljung-Box (Q): 38.72 Jarque-Bera (JB): 23.50
Prob(Q): 0.53 Prob(JB): 0.00
Heteroskedasticity (H): 22.51 Skew: 0.17
Prob(H) (two-sided): 0.00 Kurtosis: 5.45
===================================================================================
Warnings:
[1] Covariance matrix calculated using the outer product of gradients (complex-step).
ARIMA Postestimation: Example 1 - Dynamic Forecasting¶
Here we describe some of the post-estimation capabilities of statsmodels’ SARIMAX.
First, using the model from example, we estimate the parameters using data that excludes the last few observations (this is a little artificial as an example, but it allows considering performance of out-of-sample forecasting and facilitates comparison to Stata’s documentation).
[10]:
# Dataset
raw = pd.read_stata(BytesIO(friedman2))
raw.index = raw.time
raw.index.freq = "QS-OCT"
data = raw.loc[:'1981']
# Variables
endog = data.loc['1959':, 'consump']
exog = sm.add_constant(data.loc['1959':, 'm2'])
nobs = endog.shape[0]
# Fit the model
mod = sm.tsa.statespace.SARIMAX(endog.loc[:'1978-01-01'], exog=exog.loc[:'1978-01-01'], order=(1,0,1))
fit_res = mod.fit(disp=False)
print(fit_res.summary())
SARIMAX Results
==============================================================================
Dep. Variable: consump No. Observations: 77
Model: SARIMAX(1, 0, 1) Log Likelihood -243.316
Date: Fri, 21 Feb 2020 AIC 496.633
Time: 13:56:17 BIC 508.352
Sample: 01-01-1959 HQIC 501.320
- 01-01-1978
Covariance Type: opg
==============================================================================
coef std err z P>|z| [0.025 0.975]
------------------------------------------------------------------------------
const 0.6771 18.490 0.037 0.971 -35.563 36.917
m2 1.0379 0.021 50.332 0.000 0.997 1.078
ar.L1 0.8775 0.059 14.860 0.000 0.762 0.993
ma.L1 0.2771 0.108 2.572 0.010 0.066 0.488
sigma2 31.6970 4.683 6.769 0.000 22.519 40.875
===================================================================================
Ljung-Box (Q): 46.78 Jarque-Bera (JB): 6.05
Prob(Q): 0.21 Prob(JB): 0.05
Heteroskedasticity (H): 6.09 Skew: 0.57
Prob(H) (two-sided): 0.00 Kurtosis: 3.76
===================================================================================
Warnings:
[1] Covariance matrix calculated using the outer product of gradients (complex-step).
Next, we want to get results for the full dataset but using the estimated parameters (on a subset of the data).
[11]:
mod = sm.tsa.statespace.SARIMAX(endog, exog=exog, order=(1,0,1))
res = mod.filter(fit_res.params)
The predict
command is first applied here to get in-sample predictions. We use the full_results=True
argument to allow us to calculate confidence intervals (the default output of predict
is just the predicted values).
With no other arguments, predict
returns the one-step-ahead in-sample predictions for the entire sample.
[12]:
# In-sample one-step-ahead predictions
predict = res.get_prediction()
predict_ci = predict.conf_int()
We can also get dynamic predictions. One-step-ahead prediction uses the true values of the endogenous values at each step to predict the next in-sample value. Dynamic predictions use one-step-ahead prediction up to some point in the dataset (specified by the dynamic
argument); after that, the previous predicted endogenous values are used in place of the true endogenous values for each new predicted element.
The dynamic
argument is specified to be an offset relative to the start
argument. If start
is not specified, it is assumed to be 0
.
Here we perform dynamic prediction starting in the first quarter of 1978.
[13]:
# Dynamic predictions
predict_dy = res.get_prediction(dynamic='1978-01-01')
predict_dy_ci = predict_dy.conf_int()
We can graph the one-step-ahead and dynamic predictions (and the corresponding confidence intervals) to see their relative performance. Notice that up to the point where dynamic prediction begins (1978:Q1), the two are the same.
[14]:
# Graph
fig, ax = plt.subplots(figsize=(9,4))
npre = 4
ax.set(title='Personal consumption', xlabel='Date', ylabel='Billions of dollars')
# Plot data points
data.loc['1977-07-01':, 'consump'].plot(ax=ax, style='o', label='Observed')
# Plot predictions
predict.predicted_mean.loc['1977-07-01':].plot(ax=ax, style='r--', label='One-step-ahead forecast')
ci = predict_ci.loc['1977-07-01':]
ax.fill_between(ci.index, ci.iloc[:,0], ci.iloc[:,1], color='r', alpha=0.1)
predict_dy.predicted_mean.loc['1977-07-01':].plot(ax=ax, style='g', label='Dynamic forecast (1978)')
ci = predict_dy_ci.loc['1977-07-01':]
ax.fill_between(ci.index, ci.iloc[:,0], ci.iloc[:,1], color='g', alpha=0.1)
legend = ax.legend(loc='lower right')
Finally, graph the prediction error. It is obvious that, as one would suspect, one-step-ahead prediction is considerably better.
[15]:
# Prediction error
# Graph
fig, ax = plt.subplots(figsize=(9,4))
npre = 4
ax.set(title='Forecast error', xlabel='Date', ylabel='Forecast - Actual')
# In-sample one-step-ahead predictions and 95% confidence intervals
predict_error = predict.predicted_mean - endog
predict_error.loc['1977-10-01':].plot(ax=ax, label='One-step-ahead forecast')
ci = predict_ci.loc['1977-10-01':].copy()
ci.iloc[:,0] -= endog.loc['1977-10-01':]
ci.iloc[:,1] -= endog.loc['1977-10-01':]
ax.fill_between(ci.index, ci.iloc[:,0], ci.iloc[:,1], alpha=0.1)
# Dynamic predictions and 95% confidence intervals
predict_dy_error = predict_dy.predicted_mean - endog
predict_dy_error.loc['1977-10-01':].plot(ax=ax, style='r', label='Dynamic forecast (1978)')
ci = predict_dy_ci.loc['1977-10-01':].copy()
ci.iloc[:,0] -= endog.loc['1977-10-01':]
ci.iloc[:,1] -= endog.loc['1977-10-01':]
ax.fill_between(ci.index, ci.iloc[:,0], ci.iloc[:,1], color='r', alpha=0.1)
legend = ax.legend(loc='lower left');
legend.get_frame().set_facecolor('w')


Cascading Stylesheets — or CSS — is the first technology you should start learning after HTML. While HTML is used to define the structure and semantics of your content, CSS is used to style it and lay it out. For example, you can use CSS to alter the font, color, size, and spacing of your content, split it into multiple columns, or add animations and other decorative features.
Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of a document written in a markup language like HTML.[1] CSS is a cornerstone technology of the World Wide Web, alongside HTML and JavaScript.[2] CSS is designed to enable the separation of presentation and content, including layout, colors, and fonts.[3] This separation can improve content accessibility, provide more flexibility and control in the specification of presentation characteristics, enable multiple web pages to share formatting by specifying the relevant CSS in a separate .css file, and reduce complexity and repetition in the structural content.
You should learn the basics of HTML before attempting any CSS. We recommend that you work through our Introduction to HTML module first. In that module, you will learn about:
- CSS, starting with the Introduction to CSS module
- More advanced HTML modules
- JavaScript, and how to use it to add dynamic functionality to web pages
Before starting this topic, you should also be familiar with using computers and using the web passively (i.e., just looking at it, consuming the content). You should have a basic work environment set up as detailed in Installing basic software and understand how to create and manage files, as detailed in Dealing with files — both of which are parts of our Getting started with the web complete beginner's module.
It is recommended that you work through Getting started with the web before proceeding with this topic. However, doing so isn't absolutely necessary as much of what is covered in the CSS basics article is also covered in our Introduction to CSS module, albeit in a lot more detail.
here are several different ways you may include CSS in your HTML pages. That is, how do we get the rules to be applied to the HTML tags. Each has its own advantages and disadvantages. Picking the right method, or combination of methods, is important as it can reduce the amount of work you need to do and can also have a slight speed improvement for visitors to your pages.
- Inline
- Internal css
- External css
Inline
his CSS style is an effective method of styling a single page. However, using this style for multiple pages is time-consuming as you need to put CSS rules to every page of your website.
<button style ="color: purple"> &click me < /button>
and then
Internal
This CSS type is a more efficient method, especially for styling a large website. By editing one .css file, you can change your entire site at once.
<style>button { color:purple;}</style>
and then
<button style ="color: purple"> &click me < /button>
External
Inline CSS is used to style a specific HTML element. For this CSS style, you’ll only need to add the style attribute to each HTML tag, without using selectors.
<button { color:purple;}>
import the following code
<link rel="stylesheet" href=""''>
This topic contains the following modules, in a suggested order for working through them. You should definitely start with the first one.
CSS first steps
CSS (Cascading Style Sheets) is used to style and lay out web pages — for example, to alter the font, color, size, and spacing of your content, split it into multiple columns, or add animations and other decorative features. This module provides a gentle beginning to your path towards CSS mastery with the basics of how it works, what the syntax looks like, and how you can start using it to add styling to HTML.CSS building blocks
This module carries on where CSS first steps left off — now you've gained familiarity with the language and its syntax, and got some basic experience with using it, its time to dive a bit deeper. This module looks at the cascade and inheritance, all the selector types we have available, units, sizing, styling backgrounds and borders, debugging, and lots more.
The aim here is to provide you with a toolkit for writing competent CSS and help you understand all the essential theory, before moving on to more specific disciplines like text styling and CSS layout.Styling text
With the basics of the CSS language covered, the next CSS topic for you to concentrate on is styling text — one of the most common things you'll do with CSS. Here we look at text styling fundamentals, including setting font, boldness, italics, line and letter spacing, drop shadows and other text features. We round off the module by looking at applying custom fonts to your page, and styling lists and links. CSS layout At this point we've already looked at CSS fundamentals, how to style text, and how to style and manipulate the boxes that your content sits inside. Now it's time to look at how to place your boxes in the right place in relation to the viewport, and one another. We have covered the necessary prerequisites so we can now dive deep into CSS
layout, looking
at different display settings, modern layout tools like flexbox, CSS grid, and positioning, and some of the legacy techniques you might still want to know about.
Use CSS to solve common problems provides links to sections of content explaining how to use CSS to solve very common problems when creating a web page.
From the beginning, you'll primarily apply colors to HTML elements and their backgrounds; change the size, shape, and position of elements; and add and define borders on elements. But there's not much you can't do once you have a solid understanding of even the basics of CSS. One of the best things about learning CSS is that once you know the fundamentals, usually you have a pretty good feel for what can and can't be done, even if you don't actually know how to do it yet!
CSS on MDN
The main entry point for CSS documentation on MDN, where you'll find detailed reference documentation for all features of the CSS language. Want to know all the values a property can take? This is a good place to go.


{%- if include.internal -%} {%- assign bricks = site.static_files | where: "image_col", include.internal | map: "path" -%} {%- elsif include.external -%} {%- assign bricks =include.external | split: "," -%} {%- endif -%} {%- if bricks -%}


- searchParks(Long[]) - Method in class edu.cnm.deepdive.abqparksservice.controller.ParkController
-
Returns a list of all parks that contain all chosen amenities.
- setAcres(double) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the size of the park.
- setAlias(String) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Field
-
Sets the alias.
- setAttributes(Attributes) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Parks
-
- setBackstops(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of backstops that the park contains.
- setCreatedDate(String) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
- setCreatedUser(String) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
- setDevelopedAcres(double) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the total acres that have been developed for the park.
- setDisplayFieldName(String) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.ParksRoot
-
Sets the display name.
- setDisplayName(String) - Method in class edu.cnm.deepdive.abqparksservice.model.entity.Amenity
-
Sets the display name for the park.
- setFieldAliases(HashMap<String, String>) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.ParksRoot
-
Sets the hash map of names mapped to display names.
- setFields(ArrayList<Field>) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.ParksRoot
-
Sets the list of
Field
objects
- setFirstName(String) - Method in class edu.cnm.deepdive.abqparksservice.model.entity.User
-
Sets the users first name.
- setFullBasketballCourts(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of full size basketball courts that the park contains.
- setGeometry(Geometry) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Parks
-
Sets the
Geometry
object which contains location data for the park.
- setGeometryType(String) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.ParksRoot
-
Sets the geometry type for location data.
- setGoogleID(String) - Method in class edu.cnm.deepdive.abqparksservice.model.entity.User
-
Sets the users Google ID.
- setHalfBasketballCourts(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of half size basketball courts that the park contains.
- setHorseshoePits(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of horseshoe pits that the park contains.
- setIndoorPools(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of indoor pools that the park contains.
- setJoggingPaths(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of jogging paths that the park contains.
- setJurisdiction(String) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the jurisdiction the park is in.
- setLastEditedDate(String) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
- setLastEditedUser(String) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
- setLastName(String) - Method in class edu.cnm.deepdive.abqparksservice.model.entity.User
-
Sets the users last name.
- setLatestWkid(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.SpatialReference
-
Sets the latest well-known ID used for location data.
- setLatitude(double) - Method in class edu.cnm.deepdive.abqparksservice.model.entity.Park
-
Sets the "center" latitude of the park.
- setLength(Integer) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Field
-
Sets the length.
- setLitSoftballFields(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of softball fields with lights that the park contains.
- setLitTennisCourts(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of tennis courts with lights that the park contains..
- setLongitude(double) - Method in class edu.cnm.deepdive.abqparksservice.model.entity.Park
-
Sets the "center" longitude of the park.
- setName(String) - Method in class edu.cnm.deepdive.abqparksservice.model.entity.Amenity
-
Sets the name of the park.
- setName(String) - Method in class edu.cnm.deepdive.abqparksservice.model.entity.Park
-
Sets the name of the park.
- setName(String) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Field
-
Sets the name.
- setObjectId(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the object Id for the park.
- setOutdoorPools(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of outdoor pools that the park contains.
- setPark(Park) - Method in class edu.cnm.deepdive.abqparksservice.model.entity.Review
-
Sets the
Park
associated withe th review.
- setParkingSpaces(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of parking spaces that the park contains.
- setParkName(String) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the name of the park.
- setParks(List<Park>) - Method in class edu.cnm.deepdive.abqparksservice.model.entity.Amenity
-
Sets the list of parks that contain the amenity.
- setParks(ArrayList<Parks>) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.ParksRoot
-
Sets the list of
Parks
objects.
- setParkStatus(String) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the status of the park.
- setPicnictables(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of picnic tables that the park contains.
- setPlayAreas(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of play areas that the park contains.
- setReview(String) - Method in class edu.cnm.deepdive.abqparksservice.model.entity.Review
-
Sets the text of the review as a string.
- setRings(ArrayList<ArrayList<ArrayList<Double>>>) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Geometry
-
Sets the list of points for the perimeter of the park.
- setShadeStructures(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of shade structures that the park contains.
- setSoccerFields(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of soccer fields that the park contains.
- setSpatialReference(SpatialReference) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.ParksRoot
-
- setType(String) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Field
-
Sets the type.
- setUnlitSoftballFields(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of softball fields without lights that the park contains.
- setUnlitTennisCourts(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of tennis courts without lights that the park contains.
- setUser(User) - Method in class edu.cnm.deepdive.abqparksservice.model.entity.Review
-
Sets the
User
associated with the review.
- setUserEmail(String) - Method in class edu.cnm.deepdive.abqparksservice.model.entity.User
-
Sets the user email address.
- setVolleyballCourts(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of volleyball courts that the park contains.
- setWkid(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.SpatialReference
-
Sets the well-known ID used for location data.
- setYouthballFields(int) - Method in class edu.cnm.deepdive.abqparksservice.services.entity.Attributes
-
Sets the number of youth ball fields that the park contains.
- SpatialReference - Class in edu.cnm.deepdive.abqparksservice.services.entity
-
This class contains information on the coordinate system used for location data.
- SpatialReference() - Constructor for class edu.cnm.deepdive.abqparksservice.services.entity.SpatialReference
-


|
Yatta
1.6.9
Library for compressing and diffing buffers and files.
|
Super-class for buffer diff instructions. More...
Public Member Functions | |
| Differential_Instruction (const char &t) noexcept | |
| Differential_Instruction (const Differential_Instruction &other)=delete | |
| Differential_Instruction (Differential_Instruction &&other)=delete | |
| Differential_Instruction & | operator= (const Differential_Instruction &other)=delete |
| Differential_Instruction & | operator= (Differential_Instruction &&other)=delete |
| virtual size_t | size () const noexcept=0 |
| Retrieve the byte-size of this instruction. More... | |
| virtual void | execute (Buffer &bufferNew, const MemoryRange &bufferOld) const =0 |
| Execute this instruction. More... | |
| virtual void | write (Buffer &outputBuffer, size_t &byteIndex) const =0 |
| Write-out this instruction to a buffer. More... | |
| virtual void | read (const Buffer &inputBuffer, size_t &byteIndex)=0 |
| Read-in this instruction from a buffer. More... | |
Public Attributes | |
| const char | m_type = 0 |
| size_t | m_index = 0ULL |
Super-class for buffer diff instructions.
|
pure virtual |
Execute this instruction.
Implemented in Repeat_Instruction, Insert_Instruction, and Copy_Instruction.
|
pure virtual |
Read-in this instruction from a buffer.
Implemented in Repeat_Instruction, Insert_Instruction, and Copy_Instruction.
|
pure virtualnoexcept |
Retrieve the byte-size of this instruction.
Implemented in Repeat_Instruction, Insert_Instruction, and Copy_Instruction.
|
pure virtual |
Write-out this instruction to a buffer.
Implemented in Repeat_Instruction, Insert_Instruction, and Copy_Instruction.


A simulation of a spider on a dock with many other spiders implemented in OpenGL.
Directional lighting uses a fragment shader to calculate the color for each fragment based on a provided light direction and the object's coefficients for ambient, diffuse and specular lighting.
Hierarchical modeling allows us to move shapes around with respect to an arbitrary frame. This makes it less difficult to implement translations and rotations around joints allowing animations of the spiders and placement of entities to be simpler.
The camera is fixed to a set distance behind or in front of the player spider (depending on the perspective) and follows the player spider as it moves with the WASD keys and rotates with the mouse scroll, giving a third person interactive feel.
Texture mapping allows the object meshes to be wrapped using selected image files.
Also referred to as a skybox, a cubemap renders a 3D cube that the camera is wrapped around in. The textures mapped on the cube appear to be seamless and look infinitely far away because of how it ignores the camera translation (or essentially follows the camera).
The player spider can collide with any entity in the map through bounding box collision detection where the entities all have a cube that represents them that the player spider can run into. When the player spider is inside another entitie's bounding box, it counts as a collision and the previous movement action is undone. By checking the xyz coordinates individually, the spider will be able to slide along collision lines.


Hello, your login:
status:
Add new user:
Edit name for the user:
Delete user:
Edit role for the user:
select role :
Admin
User
Moderator


Create stunning footage of your models for web, social media and signage in minutes. Stills. Video. All in one smart studio. Create instant, perfect flat lay and mannequin product shots for eCommerce with automatic background removal and extreme ease.
Get Started!If there’s something you need help with — whether it’s deciding if Kiwi is the best solution for your eCommerce and fashion product photography or even just to talk styling — follow the link below and send us a message!


XAMPERE was started with an aim to develop a Smart Home Power Backup System which is sleek and stylish unlike the typical inverter and batteries, having a life five times than a typical Lead-Acid battery.
The beautiful looking slim FlatCharge easily sticks to your wall giving your room an immersive look and saving space.
Behind XAMPERE is a team which is fully dedicated to make it happen.


Bonnie Abbott
With a background in publication design, Bonnie's interest shifted to the designer-as-author model in 2011, writing with publications such as MADE Quarterly, Process Journal and Creative Review, and leading to the formation of Double Days and its experimental publishing projects.
Bonnie worked as role of editor at Australia's oldest design publication Desktop from 2013—2015, and has presented talks and workshops on self-publishing, adaptive design processes, and content-driven design. She wrote and taught RMIT's 'Design Inﬁdelity' studio in 2015, and currently works as Creative Lead at In Common.
Aimee Jay
Having built her experience in web, animation and motion graphics, Aimee's skills in interactive design was always characterised by her interest in community, communication and social good. Co-founding Double Days in 2011, Aimee's work with Gather & Fold and Designers Who were built to challenge digital norms and notions of online publishing.
Aimee is currently working as a senior digital designer at D3R, and conducting reseach into distrubution and communication tools within disaster-striken communities.
Bonnie and Aimee have come together as Double Days to combine blogging, multi-disciplinary design explorations and visual response. Publishing online design journal Gather & Fold, social posters, zines and design reportage, the aim of Double Days is to inquire into and explore traditional visual communication within our modern digital environment.
Buy the book
The Print Index 2012—2013 Gather & Fold, Melbourne
Double Day's online journal, Gather & Fold, has been put to print! This was a project completed in dedication to the local creative community, here to mark our contemporary history, a cross-section of our connections, friendships and mutual admirations. It is a wonderful feeling to hold in our hands the result of so many months of work.
Produced in a limited run of 400, "The Print Index" is a translative project that Bonnie Abbott describes as: "...a book acknowledging certain things about books. The efficiency of the page and the bookshelves that keep them. Their implied linearity, the finality of print, the natural dilution of context with age... It was also a reaction. If the content was to hold its time unchanged, it had to be in print. The Gather & Fold website will update, or evolve, or eventually come down. It can change because it is mine. But the book is here so it can belong to you."
With 24 contributors, the book features a lengthy "Tumblr" foldout, 120 pages of interviews and a cover produced with Xavier Connelly of Dawn Press.
Please email for enquires. 300 copies will be available for sale through Gather & Fold from 15th June.


--- layout: archive title: Zulip Chat Archive permalink: /stream/113489-new-members/topic/Intermediate.20Value.20Theorem.html ---
Has anyone formalized the Intermediate Value Theorem on Lean? I'm confused about some steps of the proof :(
There are some versions of the IVT in this file here, but I'm not sure how explanatory they are: https://github.com/leanprover-community/mathlib/blob/master/src/topology/algebra/ordered.lean
If you post some code, maybe we can give you specific advice.
Well, I'm just revising for a test and confused for the proof my lecturer showed me, so I wonder if Lean could help to explain the idea more clearly. Anyway, thank you very much.
In principle, the answer should be yes. However, with the way mathlib works, I'm afraid it won't really work.
mathlib focuses on getting the most general statement with the shortest proof. So it doesn't aim for readability or explaining ideas/details.
In other words, all the information is there (there can't be any gaps in the proofs), but you'll probably have to work in order to understand what's going on.
You could try applying a procedure like
(0. Obtain a built copy of mathlib)
is_connected_Icc
is a good starting place.Elizabeth, you're in my class right?
I have proved the intermediate value theorem in LEAN the same way our professor had taught us so it might be helpful?
Here it is (scroll down to line 237): https://github.com/JasonKYi/M4000x_LEAN_formalisation/blob/master/src/M40002/M40002_C5.lean
@Elizabeth :up:
I think it's super cool that @Elizabeth even thought to ask this question, and even cooler that @Jason KY. has an answer!
@Jason KY. Wow, that's a monster proof (-;
Typo at https://github.com/JasonKYi/M4000x_LEAN_formalisation/blob/master/src/M40002/M40002_C5.lean#L453
You want -- closed interval is compact
Ah yes, that's what I want :D
Two remarks: (1) Do you know about the lean formatter that Patrick wrote? Kevin used it for the Sandwich theorem at some point.
If you sprinkle some comments in your proofs, that could turn this into a beautiful page
(2) Do you know about simp
? You have lots of theorems of the form slightly_complicated = easier
. If you tag them with @[simp]
then the simplifier can use them when you call the simp
tactic.
Yeah! I formalised our intro module using it!
I think this was an earlier version
http://wwwf.imperial.ac.uk/~buzzard/M40001/html/M40001/M40001_4.html
Nice
(2) Do you know about
simp
? You have lots of theorems of the formslightly_complicated = easier
. If you tag them with@[simp]
then the simplifier can use them when you call thesimp
tactic.
I don't know why but simp
seems to slow my pc down quite a lot so I try to avoid it.
Is there a way to make it go faster?
Ok, I see.
Do you have a pre-compiled mathlib?
I would assume so. I think otherwise you would see other slowdowns already.
I believe so, yeah
I followed all the steps on the website atleast
I'm not an expert on such performance issues. But simp
should make a pc so slow that it becomes annoying
Unless your pc is > 10 yrs old.
I normally just use simp and then convert it back with set_option trace.simplify.rewrite true
so it becomes fast again
There is squeeze_simp
to tell you what simp
did
You can then call simp only [foo, bar]
which is usually an order of magnitude faster than simp
Ah! I'm gonna try it out
Nice! That's way better than writing set_option trace.simplify.rewrite true
every time
Two remarks: (1) Do you know about the lean formatter that Patrick wrote? Kevin used it for the Sandwich theorem at some point.
Jason has written a bunch of stuff in the format of Patrick's formatter, but we couldn't get the formatter to work :-( https://github.com/leanprover-community/format_lean/issues/7
OMG!!! Thank you very much!!! It really helps! (Good luck for tomorrow's test @Jason KY. :))))
{% endraw %}Last updated: Apr 24 2020 at 19:02 UTC


The Only SDGs*Model Village in China
This Ancient Village will Soon Open for Visit
Co-build Waipula into a Sustainable Role Model
Waipula Village is located deep in the mountains
of Yijiu Town, Yongren County, Chuxiong Prefecture,
Yunnan Province. It is a Yi Nationality village
established in the Yuan Dynasty. Roughly 400 households
account for nearly 2,000 villagers in total.
Waipula Village is located deep in the mountains of
Yijiu Town, Yongren County, Chuxiong Prefecture, Yunnan
Province. It is a Yi Nationality village established
in the Yuan Dynasty. Roughly 400 households account
for nearly 2,000 villagers in total.
Waipula Village is located deep in the mountains of
Yijiu Town, Yongren County, Chuxiong Prefecture, Yunnan
Province. It is a Yi Nationality village established in
the Yuan Dynasty. Roughly 400 households account for
nearly 2,000 villagers in total. lished in the Yuan Dynasty.
Roughly 400 households account for nearly 2,000 villagers in total.


--- layout: post title: no title date: '2014-12-29T07:30:29+01:00' categories: - Sketches - Storyboards picture_url: https://film-Storyboards.tumblr.com/post/106508348636 ---


Sleepers (1996) A film review by Christopher Null Copyright 1996 Christopher Null
How on earth did Kevin Bacon get top billing in a cast that includes Robert DeNiro, Dustin Hoffman, Brad Pitt, and Jason Patric -- just for starters? That's just one of the disturbing aspects of SLEEPERS (and I don't mean that in a bad way), Barry Levinson's new drama/thriller that finally redeems him for the idiocy of DISCLOSURE and TOYS.
Based on the extremely controversial novel, SLEEPERS tells what is purported to be a true story of revenge in Hell's Kitchen in New York City. Four early-teenaged friends (played as adults by Patric, Pitt, Ron Eldard, and Billy Crudup -- who I have to mention just because I like to say "Crudup") are sent to a juvenile center when a prank goes wrong and almost kills a bystander. The brutality that occurs in the center does not need to be expounded upon, but suffice it's very horrible, and that guard Sean Nokes (Bacon) is the baddest of the bad guys.
Flash forward 13 years to 1981, when a very non-reformed John and Tommy (Eldard and Crudup) run into Nokes in a neighborhood bar, and, on the spot, shoot him 6 times in front of 4 witnesses. When it goes to trial, a now-assistant D.A. Michael (Pitt) takes the case and decides it's time for payback to everyone from the bad-old days at the center.
Working with attorney Danny Snyder (Hoffman), their old neighborhood priest (DeNiro), old pal Carol (Minnie Driver), and newsman-in-training "Shakes" (Patric), Michael constructs an intricate plan to get the guys off the hook and bring down the juvenile center in the process -- by losing the case he is prosecuting.
If you've seen GOODFELLAS, you know what you're in for -- an overly-narrated epic saga about growing up in New York and the consequences of events that start when you're just a kid. And just like Scorcese, Levinson lays on the narration like butter on pancakes (all via Patric), and this gets old, *fast.*
But the point is that SLEEPERS is a very powerful story, and you never really notice that it's 2 1/2 hours long. The performances are universally good (although Eldard and Crudup basically have no lines), and seeing Dustin Hoffman as a long-haired alcoholic/failed attorney is quite a treat. DeNiro is excellent in showing his inner turmoil over whether or not to lie on the witness stand, and the kids (who I don't feel like naming right now) all pull off their parts just fine.
SLEEPERS has its share of technical goofs, like a whole lot of black-and-white flashbacks, slow-motion, fast-motion, surreal-motion, and other camera tricks that really detract from the story and don't belong here. Also in question is a really rotten score and a questionable choice of background "period" songs -- and you can blame veteran composer John Williams, if you can believe that.
Oh well, at least it's a very solid story that leaves you wondering... did it really happen? As for the moral of this little tale? This is all I can figure: Two wrongs don't make a right, but maybe 150 wrongs do. They might be right about that.

The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Version
GAME OVER
This site uses Cookie for Google Analytics.
Arrow : Move Space : Shot Touch(mobile): Move & Shot


This offending code in PathFromRoutePermutation
var divisor = permutations; for (int city = _cities; city > 1L; /* decrement in loop body */) { divisor /= city; var dest = (int)((permutation / divisor) % city); city--;
has imposed a 200+% performance penalty on converting from Int32 to Int64 . Fortunately, an equally valid generation of paths is available with this code, which multiplies instead of dividing.
var divisor = 1L; for (int city = _cities; city > 1L; /* decrement in loop body */) { var dest = (int)((permutation / divisor) % city); divisor *= city; city--;
And when we run the before and after for 12 cities we obtain spectacular results:
x64 Release ( 128 threads_per * 768 blocks = 98304 threads) Cities 12; Permutations: 479001600: --------------------------------------- Total Load Run ms ms ms distance GpuTsp4 8953 = 100 + 8853; 111.3318: - 4_Long GpuTsp4a 7841 = 103 + 7738; 111.3318: - 4_PathArrayStrided GpuTsp4b 6643 = 100 + 6543; 111.3318: - 4_DivisorsCachedGlobal GpuTsp4c 2639 = 103 + 2536; 111.3318: - 4_MultiplyInstead
Changing those two lines around, from a non-hardware-supported Int-64 division to a hardware-supported Int-64 multiplication provided a 65% time reduction. With bang like that for our buck, even implementing it on the Int-32 division was worthwhile, as seen here, proving that even hard-ware supprted integer division can be slow.
x64 Release ( 128 threads_per * 768 blocks = 98304 threads) Cities 12; Permutations: 479001600: --------------------------------------- Total Load Run ms ms ms distance GpuTsp3b 2328 = 101 + 2227; 111.3318: - 3_DivisorsCachedGlobal GpuTsp3c 1935 = 105 + 1830; 111.3318: - 3_MultiplyInstead
To wrap up for now, one run with 13 cities (with Int-64's of course):
x64 Release ( 128 threads_per * 768 blocks = 98304 threads) Cities 13; Permutations: 6,227,020,800: --------------------------------------- Total Load Run ms ms ms distance GpuTsp4c 38830 = 3228 + 35602; 111.9742: - 4_MultiplyInstead
At 14 * the 12-city time, our implementation is still scaling reasonably.


There's a 'Game of Thrones' alternate ending we will never see
Actor said it was shot 'mostly for fun'
by Lisa Respers France, CNN(CNN) - Will we ever get over how "Game of Thrones" ended?
Probably not -- especially when folks are out here spilling tea.
Kristofer Hivju, who played Tormund Giantsbane on the HBO series, told Metro.co.uk that there was another ending to the drama.
"We shot an alternative ending," the Norwegian actor said. "That was mostly for fun, but I don't know if I'm allowed to tell you about that."
That's about all Hivju would give up, however.
Some viewers were unhappy with the Season 8 series finale.
Even Hivju said he was surprised by how it all ended.
"The funny thing is after Season 7, I had my theories, fans had theirs', everybody, the cast had their theories, so there were thousands of theories," he said. "To choose one path would be difficult to say but there were many things I didn't see coming; there was the element of surprise, which I liked."
When contacted by CNN, a representative for HBO had no information about an alternative "Game of Thrones" ending and suggested Hivju may have been joking.
CNN and HBO share parent company WarnerMedia.