{% extends 'django_cryptolock/base.html' %} {% block content %} {% if request.user.is_authenticated %}
Here are your details:
This website is an example of the "django_cryptolock" package.
It lets you (and your users) use your monero wallet to login on your website. You just need to sign the challenge that is provided to you.
Go ahead and try it.
{% endif %} {% endblock content %}


Consumer Printing
Cube by 3D Systems, RepRap (open), objects you can print, thingiverse, scanning, 3d design software.
Video length: 5:52
Cube by 3D Systems, RepRap (open), objects you can print, thingiverse, scanning, 3d design software.
Video length: 5:52
Printing Materials and Processes: Thermoplastics (ABS and PLA), 2 color printing, Multi-Material Polyjet, support material, Selective Laser Sintering (SLS), Selective Laser Melting (SLM), Electron Beam Melting (EBM), Paper Lamination, Stereolithography (SLA), Digital Light Processing (DLP)
Video length: 8:56
Rapid prototyping, mass customization, ceramics, concrete, houses, organs, food, fashion, education.
Video length: 9:31
Below are the full length videos featured in the above montages along with presenter notes.
You can access an outline for presentations at http://tinyurl.com/3dfsupic
A consumer targeted printer sold for $1299 at walmart and elsewhere.
A do-it-yourself kit that sells for $800 online and in hobby stores.
THIS CHANGES EVERYTHING!
STL is the file format for objects to be printed. This section lists the most common ways to acquire STL files containing objects to be printed.
Although the learning curve can be steep, 3D modeling software allows 3D printer users to develop their own original designs, which is much more creative and interesting than simply printing items from a catalog.
Consumer printers typically include a catalogue of doodads on DVD or Web that can be downloaded and printed.
Makerbot provides thingiverse.com where users can share 3d objects via STL files.
Ideal for mobile scanning and scanning large objects.
Ideal for small to medium-sized objects.
Software such as Blender, Sketchup, Rhino, Maya and AutoCAD allow you to create and edit 3D designs.
Thermoplastic
Any material (powder, liquid, solid) that can be processed into a shaped solid.
Fused deposition modeling (FDM)
Model is produced by extruding small beads of material which harden quickly to form layers.
The method used by most consumer-grade printers and some industrial printers as well.
Some prosumer models can support multiple feedstock to provide multi-color and/or multi-material objects
Industrial printers like this Polyjet ($250,000) create multi-color, hi-def models with moving parts.
The printing material is cured with UV light, the platform lowers 1/1000th of an inch, it utilizes two materials: a build agent and a support agent, multiple materials can be fused together, and moving parts made possible through the use of the support agent.
Model is produced through selective fusing of materials in a granular bed.
Model is produced by bonding layers of a material - typically paper.
Stereolithography (SLA)
Produces a solid part from a liquid polymer using UV light
The First $100 3D Printer & Scanner on Kickstarter!
Because industrial printers are so expensive, businesses like Shapeways have emerged to offer 3D printing services to individuals and organizations that need hi-resolution models printed, but can't justify a big investment in a 3D printer.
UNLEASH YOUR IMAGINATION.
Related Links:
Gartner predicts that there will be a loss of at least $100 billion annually in intellectual property by 2018 because of 3D printing.
http://www.newsfactor.com/story.xhtml?story_id=89897
MEET YOUR FUTURE.
Academic units across FSU campus are embracing 3D printing as a resource for higher education.


This is a list of all relevant options, methods, events and callbacks.
Options are set on initializing the mobilemenu:
new Cl.Mobilemenu({
// your options
'index': 0,
'event': 'mouseenter'
});
| Option | Default | Description |
|---|---|---|
| easing | ‘swing’ | the jquery easing method for all animations. |
| duration | 300 | the jquery duration speed for all animations. |
| bound | 539 | the bound used when the mobilemenu should show up. |
| ratio | 70 / 100 | the ratio used for how much the menu is taking from the viewport. |
| offset | object | offsets to left or top of the menu. |
| cls | object | the available css class getters and setters. |
| overlay | ‘’ | the generated overlay. |
Option cls setters and getters:
Methods can be called using an instance of the class:
var mobilemenu = new Cl.Mobilemenu();
// trigger the method
mobilemenu.toggle();
All Methods have appropriate events and callbacks.
| Description : | toggles a specified mobilemenu entry. |
|---|---|
| Arguments: |
|
| Returns: | toggle callback. |
| Description : | opens an mobilemenu entry. |
|---|---|
| Arguments: |
|
| Returns: | open callback. |
| Description : | hides an mobilemenu entry. |
|---|---|
| Arguments: |
|
| Returns: | close callback. |
Callbacks are always triggered after the method is excecuted. You can interact with callbacks as follows:
var mobilemenu = new Cl.Mobilemenu();
// register callback
mobilemenu.callbacks.toggle = function () {
console.log('item has toggled');
};
Available keywords:
Enter search terms or a module, class or function name.


There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
This is the last content
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
There's content here
This is the last content
I am a very simple card. I am good at containing small bits of information. I am convenient because I require little markup to use effectively. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
I am a very simple card. I am good at containing small bits of information. I am convenient because I require little markup to use effectively. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
I am a very simple card. I am good at containing small bits of information. I am convenient because I require little markup to use effectively.
I am a very simple card. I am good at containing small bits of information. I am convenient because I require little markup to use effectively.
I am a very simple card. I am good at containing small bits of information. I am convenient because I require little markup to use effectively.
I am a very simple card. I am good at containing small bits of information. I am convenient because I require little markup to use effectively.
I am a very simple card. I am good at containing small bits of information. I am convenient because I require little markup to use effectively.
I am a very simple card. I am good at containing small bits of information. I am convenient because I require little markup to use effectively.
I am a very simple card. I am good at containing small bits of information. I am convenient because I require little markup to use effectively.
I am a very simple card. I am good at containing small bits of information. I am convenient because I require little markup to use effectively.


Formatting your code
Code formatting is important. It will help you to read and understand your code better.
 If you properly format your code you train your brain to subconciously recognise patterns of correct vs. incorrect code.
Thus it will also help you find bugs!
Compare these 2 pieces of code:
def widths ( row
)
row.map do | cell| cell.width
end
end
def widths(row)
row.map do |cell|
cell.width
end
end
Which is easier to read and understand?
Proper indentation is the most important aspect of formatting your code
If you follow the following 2 rules, your code will be properly indented.
Don't worry: After a while these rules will be obvious and you will intuitively follow them.
Whenever you have one of these keywords, then the lines following it are indented one level deeper:
if
elsif
else
do
def
The same applies for these keywords which we haven't encountered yet:
unless
while
until
case
class
module
begin
rescue
ensure
Whenever you have one of these keywords, then that line is indented one level less deep:
elsif
else
end
The same applies for these keywords which we haven't encountered yet:
when
rescue
ensure
Let's properly indent this code, line by line:
def widths(row)
row.map do |cell|
cell.width
end
end
For line 1, we don't need to do anything. It's stays indented 0 levels (top level):
def widths(row)
row.map do |cell|
cell.width
end
end
def. So we need to indent the following lines by +1 level (one level deeper):
def widths(row)
row.map do |cell|
cell.width
end
end
do, so Rule 1 applies again: we indent the following lines by +1 level (one level deeper):
def widths(row)
row.map do |cell|
cell.width
end
end
def widths(row)
row.map do |cell|
cell.width
end
end
end. Here we need to use Rule 2, which says that it gets indented one level less deep (-1 level) than the previous line:
def widths(row)
row.map do |cell|
cell.width
end
end
def widths(row)
row.map do |cell|
cell.width
end
end
And we're done!
Let's exercise the rules together with another example:
def judge_weather(weather)
if weather == "sunny"
puts "The weather is great!"
3.times do
puts "Yes!"
end
elsif weather == "rainy"
puts "Better stay inside..."
end
end
If done correctly, indentation lets you see immediately which lines of code belong together and which don't:
def judge_weather(weather)
if weather == "sunny"
puts "The weather is great!"
3.times do
puts "Yes!"
end
elsif weather == "rainy"
puts "Better stay inside..."
end
end
weatheris "sunny".
ends at the bottom of your file:
def ...
if ...
do
if ...
if ...
...
end
end
end
end
end
Avoid skipping indentation levels from one line to the other:
array.each do |element|
if element.start_with?("A")
puts element
end
end
This is bad: Lines 2-4 are indented by 2 levels instead of 1!
Let your editor help you. It automatically increases and decreases indentation levels when you use a keyword.
Try it now! Type the following in your editor:
def my_method
And hit the enter key. Your cursor will automatically be indented by one level on the next line.
end. Your editor will automatically unindent that line for you:
def my_method
end
Use Tab and Shift + Tab to indent and unindent lines respectively.
This also works with multiple lines at once. Try it now!
end, immediately type that on the next line. This way you never have too many or too few
ends!
If you use indentation correctly, your editor allows you to expand and collapse code sections. Try clicking the little triangle that appears next to the line numbers!
The "official" Ruby style guide has more information on code formatting as well as which Ruby features to use or not use:
rubystyle.guideWhat questions do you have?


forkphorus runs Scratch 2 and 3 projects really fast by compiling them to JavaScript. Try it out by pasting a project ID or URL into the field below, by selecting or dropping a project file on the page, or by choosing an example.
forkphorus is still in development and has many bugs. Click here to report a problem with this project.
Include the forkphorus player in your web site.
Get a link to a web page that automatically runs your project.
NOTE: As of April 6, 2021 it has come to my attention that some still use this outdated site. Please know this fork only existed due to custom refresh rates not existing in forkphorus prior, but it is now obsolete. Use a better, more feature-rich alternative such as TurboWarp. I'm available on GitHub as subfluid.
forkphorus is a fork of phosphorus by Nathan. Its CPS-style compilation and overall design was inspired by Rhys's sb2.js. It would have more bugs if not for Truman and Tim. It uses the JSZip library, created by Stuart Knightley, David Duponchel, Franz Buchinger, and António Afonso, to read .sb2
and .sb3
files, and the canvg library to render SVGs in <canvas>
elements.
The source code for forkphorus is available on GitHub.


It is Plugin that makes Vim colorful and easy to use. In this post I record my way of learning to use vim plugins managers.
Which one?
When I search the vim plugins manager
on google, I found there are many good plugins managers. Here is the rank of “The best plugin managers for vim“ on Slant
I saw several wonderful vim plugin managers such as vim-plug
, Vundle
, Pathogen
, Dein.vim
and so on. They both have pros and cons, and after some investigation I finally decide to use vim-plug
.
Here are some information about these plugin managers.
- Vim-plug
Pros:
- Really light
- Parallel plugin installation makes it really fast
- On-demand loading for faster startup time
- Vundle
Pros:
- Easy to use
- Can find, install, update plugins automatically
Cons:
- Old
- Vimrc can get noisy
- Slower if compared to vim-plug
- Pathogen
Pros:
- Minimal additions to .vimrc file
- More control over your plugins
Cons:
- More manual work
- Dein.vim
Pros:
- Fast
Cons:
- Complex to set up/ understand
- Limited documentation
Use vim-plug
to manage plugins
The rest part are summaries for README on vim-plug github site.
Install
In Mac, it is really simple
$ curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
This command will download plug.vim and put it in the “$HOME/.vim/autoload” directory.
Usage Pipeline
The usage is really straightforward and simple. There are basically three steps.
Write
Plug 'GitHub_postfix_of_the_plugin'
in the.vimrc
file between the linecall plug#begin('~/.vim/plugged')
and the linecall plug#end()
. For more options, see “Plug options” section.$ source ~/.vimrc
or in vim run:source %
to make the.vimrc
works.In vim, run
:PlugInstall
. It will open a new window and run things like these
For example,
I want to install vim-startify
.
Once you have installed it, when you run $vim
in your command line, it will show a page looks like this,
.
As the github site says:
It provides dynamically created headers or footers and uses configurable lists to show recently used or bookmarked files and persistent sessions. All of this can be accessed in a simple to use menu that even allows to open multiple entries at once.
For example, you can just type 0
and vim will open the corresponding file appears in the list. In the picture, it will open ~/.vim/bundle/vim-startify/README.md
.
First go to the GitHub site of vim stratify, we can see the URL is <https://github.com/mhinz/vim-startify>
so copy the postfix of URL “mhinz/vim-startify” to .vimrc file. Now the .vimrc looks like this
" Specify a directory for plugins
" - For Neovim: ~/.local/share/nvim/plugged
" - Avoid using standard Vim directory names like 'plugin'
call plug#begin('~/.vim/plugged')
" vim startify
Plug 'mhinz/vim-startify'
" Initialize plugin system
call plug#end()
Then in vim, run :source %
to make it work.
At last, in vim, run :PlugInstall
to install the plugin.
Plug options
There are also some options you can choose when you install the plugins. Just put the options behind the Plug 'GitHub_postfix_of_the_plugin'
For example, for nerdtree
plugin, you can use on-demanding loading for faster startup time.
" On-demand loading
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
NERD tree will be loaded on the first invocation of NERDTreeToggle command.
Or the plugin in inside the subdirectory of GitHub repo. You can use rtp
to specify the subdirectory that contains vim plugin. For example, I want a color scheme and it is a colorscheme for many programs, so to specify the vim plugin, I use
Plug 'sonph/onehalf', {'rtp': 'vim/'}
It means the corresponding vim plugin is in the “vim/” directory.
There are some plugins that require extra steps after installation or update. In that case, use do
option to describe the task to be performed.
Plug 'Shougo/vimproc.vim', { 'do': 'make' }
Plug 'Valloric/YouCompleteMe', { 'do': './install.py' }
If the value starts with :
, it will be recognized as a Vim command.
Plug 'fatih/vim-go', { 'do': ':GoInstallBinaries' }
| Option | Description |
|---|---|
branch /tag /commit |
Branch/tag/commit of the repository to use |
rtp |
Subdirectory that contains Vim plugin |
dir |
Custom directory for the plugin |
as |
Use different name for the plugin |
do |
Post-update hook (string or funcref) |
on |
On-demand loading: Commands or <Plug> -mappings |
for |
On-demand loading: File types |
frozen |
Do not update unless explicitly specified |
Commands
There are some commands for vim-plug, I just copy it from the GitHub site.
For example, if you want to update vim-startify
, in vim, type :PlugUpdate vim-startify
Then it looks like this
| Command | Description |
|---|---|
PlugInstall [name ...] [#threads] |
Install plugins |
PlugUpdate [name ...] [#threads] |
Install or update plugins |
PlugClean[!] |
Remove unused directories (bang version will clean without prompt) |
PlugUpgrade |
Upgrade vim-plug itself |
PlugStatus |
Check the status of plugins |
PlugDiff |
Examine changes from the previous update and the pending changes |
PlugSnapshot[!] [output path] |
Generate script for restoring the current snapshot of the plugins |


Microsoft hires ex-AG Holder to audit face-scanning firm
by The Associated PressMicrosoft is hiring former U.S. Attorney General Eric Holder to review its investment in a facial recognition startup that scans faces at Israeli military checkpoints.
Microsoft said in a statement Friday that Holder will lead a team of former federal prosecutors conducting an audit.
Its aim is to determine whether Israeli firm AnyVision's technology applications comply with Microsoft's ethical principles against using facial recognition for mass surveillance.
AnyVision announced a $74 million investment in June from a group including Microsoft's venture capital arm. The firm and its Microsoft backing attracted public scrutiny as the Israeli military installed face scanners at border crossings where Palestinians enter Israel from the West Bank.
AnyVision has said its technology is used at border crossings similarly to how facial recognition is used at some airports.


'The Sweet Hereafter'
A movie review by Walter Frith
Director Atom Egoyan has made not only his finest film but his most important statement yet with 'The Sweet Hereafter'. Also written for the screen by Egoyan, based on the novel by Russell Banks, the film is a grim tale of a small Canadian town struggling to get on with their emotional lives after a bus accident in the town kills a group of children. This immense tragedy, told out of sequence, is told without the trappings of the usual Hollywood standard, using no heroic characters to bring justice to an injustice, using no courtroom scenes with all their pretentious speech making and most importantly the film moves in a dreamlike manner to echo the depressing manner of a nightmare.
Mitchell Stephens (Ian Holm), is a lawyer who is not out to be a heroic star like he might be in a big Hollywood studio production. He is an honest and somewhat humble individual who makes contact with the families of the deceased youngsters in the hopes of bringing a class action suit against someone involved with the bus company. Through a calculated series of visits he begins to slowly turn the grief of the families into a more intense anger than they're already feeling and I'm sure his motives are all for the best because he is convinced there is more to the incident than just a simple accident. Stephens is facing alienation from his own daughter as she eludes him to pursue a life of depravity by becoming a drug addict, traveling with derelicts and eventually testing positive for the AIDS virus. Through several telephone contacts he has with her in the film, the audience is drawn to feel as if they aren't father and daughter at all although the film makes it clear that they are through a brief series of flashbacks involving Holm's care for his child when she was an infant.
More powerful than anything in the film is the intense bonding we see between some of the parents and their children and the eventual separation they encounter through death. Another character, Nicole (Sarah Polley) is older than the other children who died and is confined to a wheelchair, paralyzed from the waist down after the wreck. Her hopes of becoming a rock star are quickly dashed by her predicament and she is instrumental in the film's outcome as her deposition given to the case may decide things. Her character is the most sympathetic and is the best supporting performance in the film. As for Ian Holm, I was overwhelmed by his performance as the lawyer who wants to reach out and also be a friend to the families. Just one look at him tells you his underlining concern is not profit but concern. The performances of both Holm and Polley are well worth Oscar nominations as is Egoyan's direction and the film itself is a worthy contender for Best Picture..
The most impressive thing about Egoyan's direction of the film is the way each family involved in the tragedy is interviewed and confronted by Stephens. The individual frustration each one of them feels and in the case of the bus driver, guilt, is a testament to Egoyan's ability to make a real story work by making each character as important as any other. This is as real a film as you'll ever see with the most searing dramatic overtones you're ever likely to encounter in the movies.
OUT OF 5 > * * * * *
Visit 'FILM FOLLOW-UP' by Walter Frith
http://home.netinc.ca/~wfrith/movies.htm
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


Come to our meetings!
We meet every Tuesday from 5:30-6:30pm in THO 211!
If you're looking for a community on campus who loves to cook together and is passionate and food and sustainability we are the right place! Members of the Student Food Cooperative gain valuable experience with food service, graphic design, marketing, event planning, and other aspects of running a successful cooperative.
Looking for more information about how to participate and support our ongoing efforts to improve food at the UW?
We meet every Tuesday from 5:30-6:30pm in THO 211!
Email<EMAIL_ADDRESS>with the subject “Subscribe”, include a little bit about yourself and why you are interested in the Cooperative.
Join us on Facebook at The Co-op Cooks for more updates!
<EMAIL_ADDRESS>206-543-8997


15:14:45
00:10:45
Playlist 2
- [2020-03-22 14:03:34,659] [INFO] play at "14:00:43" Kung Fu - Art Martiaux episode 32
- [2020-03-22 14:03:34,659] [INFO] play at "14:00:43" Kung Fu - Art Martiaux episode 33
- [2020-03-22 14:03:34,659] [INFO] play at "14:00:43" Kung Fu - Art Martiaux episode 34
- [2020-03-22 14:03:34,659] [INFO] play at "14:00:43" Kung Fu - Art Martiaux episode 35
- [2020-03-22 14:03:34,659] [INFO] play at "14:00:43" Kung Fu - Art Martiaux episode 36
- [2020-03-22 14:03:34,659] [INFO] play at "14:00:43" Kung Fu - Art Martiaux episode 37


@* * Copyright 2021 HM Revenue & Customs * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. *@ @import config.AppConfig @import helper.CSRF @import models.request.AuthenticatedRequest @import models.Operator @import views.html.includes.main @import views.html.components.{manager_tools_secondary_navigation, primary_navigation} @import models.viewmodels.{NoTabSelected, ApplicationTabViewModel} @import controllers.v2.routes @import views.html.partials.{error_summary, back_link} @import views.html.forms.components.input_yes_no @this( delete_user_heading: views.html.partials.users.delete_user_heading, ) @( user: Operator, form: Form[Boolean] )(implicit request: AuthenticatedRequest[_], messages: Messages, appConfig: AppConfig) @main( bodyClasses = None, customTitle = Some(messages("users.user.delete.confirm", user.safeName)), customPrimaryNavTab = NoTabSelected ) {
@messages("users.user.delete.confirm.message")


{% extends "layout.html" %} {% block styles %} {% endblock %} {% block search %}
Nothing to see here. If you're looking for a specific mod, why not ask the modder to upload it here?


Home page
Contact us
Sign In
Sign Up
Home page
Contact us
Sign In
Sign Up
Contact us
if you have any questions please contact us.
Our managers will connect with you as soon as possible.
Name
Email
Message
or just email on
email@gmail.com


/dev/blog
Bez Hermoso, Software Engineer @ Square
Configuring environment-specific parameters in Symfony2 has been made easy thanks to Incenteev\ParameterHandler\ScriptHandler::buildParameters
. Attaching itself
to the Composer workflow, it provides a very intuitive interface for defining required parameters defined in app/config/parameters.yml.dist
.
In case you don’t know, this mechanism also gives you the ability to specify required parameters specific to your app which developers/deployers need to fill out:
# app/config/parameters.yml.dist
parameters:
database_driver: pdo_mysql
database_host: <IP_ADDRESS>
...
# Project-specific parameters not part of the standard distribution:
elasticsearch_hosts: [ http://localhost:9200 ]
elasticsearch_index: main
A value for elasticsearch_hosts
& elasticssearch_index
will be prompted during composer install
or composer update
, and will default to the specified values if none are provided during the prompt. Really handy.
However, this doesn’t work well with Heroku deploys. Because Heroku runs Composer with --no-interaction
flag,
the prompts are suppressed, and the parameters generated would silently fall back to the default values in the .dist
file.
Work-arounds have been formulated to solve this; the one which is widely adopted being the use of environment variables to set container parameters in conjunction with Symfony’s built-in functionality of converting SYMFONY__*
env variables to container parameters.
Unfortunately, I had some troubles adopting these solutions with the mere fact that some parameters I need are arrays and hashes. Environment variables can only contain scalars like strings and integers.
So I came up with this solution:
Create an app/config/env_parameters.php
file:
<?php
use Symfony\Component\Yaml\Yaml;
/** @var $container \Symfony\Component\DependencyInjection\ContainerBuilder */
$container;
$dist = Yaml::parse(file_get_contents(__DIR__ . '/parameters.yml.dist'));
$distParameters = $dist['parameters'];
foreach ($distParameters as $parameterName => $default) {
if (false !== ($value = getenv('sf2.' . $parameterName))) {
$container->setParameter($parameterName, Yaml::parse($value));
}
}
Yaml::parse
has an unfortunate behavior that can pose a problem here.
See amendments.
Update app/config/config.yml
and add env_parameters.php
as a resource to import:
imports:
- { resource: parameters.yml }
- { resource: env_parameters.php }
...
With this strategy, you can specify Heroku-specific parameters like so:
$ heroku config:set sf2.database_host=us-cdbr-iron-east-01.cleardb.net
$ heroku config:set sf2.database_name=heroku_...
This will also allow for non-scalars like arrays and hashes:
$ heroku config:set sf2.elasticsearch_hosts=[https://....us-east-1.bonsai.io, https://....us-east-1.bonsai.io]
$ heroku config:set sf2.some_config={foo: true, bar: 3.14}
In a nutshell, env_parameters.php
will look at the required parameters defined in parameters.yml.dist
file, and look for
any matching environment variables prefixed with sf2.*
.
If you don’t like mucking around with the composer.json
file to support Heroku deployment,
or you just need to specify non-scalar parameters, give this approach a try.
2014-08-20 Update: Yaml::parse
have an often-unwanted behavior of parsing file contents if the value passed is a valid file-name. A fix is needed in case
one of your parameters are actual filenames:
<?php
use Symfony\Component\Yaml\Yaml;
/** @var $container \Symfony\Component\DependencyInjection\ContainerBuilder */
$container;
$dist = Yaml::parse(file_get_contents(__DIR__ . '/parameters.yml.dist'));
$distParameters = $dist['parameters'];
foreach ($distParameters as $parameterName => $default) {
if (false !== ($value = getenv('sf2.' . $parameterName))) {
$container->setParameter($parameterName, is_file($value) ? $value : Yaml::parse($value));
}
}
2014-08-21 Update: A better, cleaner fix for the unfortunate Yaml::parse
behavior is just instantiating a new Symfony\Component\Yaml\Parser
object:
<?php
use Symfony\Component\Yaml\Parser;
/** @var $container \Symfony\Component\DependencyInjection\ContainerBuilder */
$container;
$parser = new Parser();
$dist = $parser->parse(file_get_contents(__DIR__ . '/parameters.yml.dist'));
$distParameters = $dist['parameters'];
foreach ($distParameters as $parameterName => $default) {
if (false !== ($value = getenv('sf2.' . $parameterName))) {
$container->setParameter($parameterName, $parser->parse($value));
}
}
2014-08-30 Update: David Zuelke (@dzuelke), the developer of heroku/heroku-buildpack-php
,
has pointed out to me that the Heroku PHP buildpack only exports
valid shell identifiers ([A-Z_][A-Z0-9_]*
) during the git push
hook on Heroku. Therefore sf2.*
config variables wouldn’t be accessible
during Composer’s post-install-cmd
hooks.
Luckily, this does not affect the project where I am using this solution on, but it might affect yours if you need to
override parameters that are used during post-install operations that interact with Symfony’s kernel.
In which case, you could use this alternate env_parameters.php
file:
<?php
use Symfony\Component\Yaml\Parser;
/** @var $container \Symfony\Component\DependencyInjection\ContainerBuilder */
$container;
$parser = new Parser();
$dist = $parser->parse(file_get_contents(__DIR__ . '/parameters.yml.dist'));
$distParameters = $dist['parameters'];
foreach ($distParameters as $parameterName => $default) {
/* That's two underscores... */
$envName = 'SF2_' . strtoupper(str_replace('.', '__', $parameterName));
if (false !== ($value = getenv($parameterName))) {
$container->setParameter($parameterName, $parser->parse($value));
}
}
And your config variables should be named like these:
$ heroku config:set SF2_ELASTICSEARCH_HOSTS=[https://....us-east-1.bonsai.io, https://....us-east-1.bonsai.io]
$ heroku config:set SF2_SOME_CONFIG={foo: true, bar: 3.14}
If you need to have parameters with dots in them, like foo.some_entity.class
, substitute dots with two underscores:
$ heroku config:set SF2_FOO__SOME_ENTITY__CLASS=Foo\\SomeBundle\\Entity\\Bar


Pyicd documentation¶
A small python utility for basic ICD-9-CM and ICD-10-CM GEMs cross-walking.
About GEMs¶
General Equivalency Maps (GEMs) support the interoperability between ICD-9 and ICD-10 codebases and are maintained by the Centers for Medicare and Medicaid Services (CMS). Multiple mapping types may occur including one-to-one and one-to-many. GEMs provide various flags to further characterize these mapping relationships.
- Convert between ICD-9-CM and ICD-10-CM
Forward mapping: ICD-9 to ICD-10 codes.
Backward mapping: ICD-10 to ICD-9 codes.
- Filter by map type
- Approximate:
Imperfect correspondence (approximate = 1)
Perfect correspondence (approximate = 0)
- No Map:
No acceptable GEMs mapping exists (no map = 1)
One or greater mappings exist (no map = 0)
- Combination:
Mapping is one-to-many (combination = 1)
One-to-one (combination = 0).
- Scenario:
Multiple target codes are required to complete mapping (scenario = 1)
Multiple target codes are not required (scenario = 0)
- Choice list: Used with the combination flag to direct alternatives when mappings are one-to-many.
A single combination mapping exists: choice list = 1
More than one combination mapping exists: choice list = 2
No combination mapping exists: choice list = 0
Examples¶
Installation:
$ python -m pip install git+https://github.com/pkmklong/pyicd.git
Forward mapping:
from pyicd.utils.icd_tools import icd9_to_icd10
icd9_to_icd10(icd_code = "59972", flag = "approximate")
source icd10 description
59972 R311 BENIGN ESSENTIAL MICROSCOPIC HEMATURIA
59972 R3121 ASYMPTOMATIC MICROSCOPIC HEMATURIA
59972 R3129 OTHER MICROSCOPIC HEMATURIA
Backward mapping:
from pyicd.utils.icd_tools import icd10_to_icd9
icd10_to_icd9(icd_code = "R6521", show_flags = True)
source icd9 description approximate no map combination scenario choice list
R6521 99592 SEVERE SEPSIS 1 0 1 1 2
R6521 78552 SEPTIC SHOCK 1 0 1 1 1
Search by clinical term:
from pyicd.utils.icd_tools import search_icd10
search_icd10(search_term = "fibrillation")
icd10 description
I4891 UNSPECIFIED ATRIAL FIBRILLATION
I4901 VENTRICULAR FIBRILLATION


This research will focus on the relation between co-working and the online presence of NUVO Network. We believe that an accessible space where members can interact with other members would elevate the community aspect of the company.
During the tour of NUVO we were told the the company wished to have a calendar-like screen in the atrium displaying general information about who has booked what, events occurring, and etc. To resolve this issue,
we propose developing a website that all members of Nuvo has access to. No matter where an individual may be or what they are looking for, this space is where members can collaborate, ask questions, have conversations,
book workspaces, and more. Interactivity and community involvement are key.
In conducting this research, we intend to use various methods of research to collect information from different members of NUVO Network (primary source), as well as other company examples of interactive forums (secondary sources).
We will use this information to develop a website that best suits the needs of NUVO Network.
How can we improve how NUVO interacts with tenants and potential mem bers
through their social media platforms?
Create a welcoming first impression of NUVO
To invite more people to share and connect
Promoting a active and thriving community to those passing by
This method requires us to observe and record behaviour in their context, with interfering with people’s activities; this method helps us see what people do within real contexts and time frames, helping us understand how the members at Nuvo interact with each other in the environment. Observing users in the environment we’re designing a service for will help us identify what tasks people want to accomplish in Nuvo, without bringing in our own opinions on what they should be doing.
Mind mapping will help us organize our thoughts and make connections between information. It will allow us to judge and make assumptions against all our possible ideas and strategies and combine ideas. The visual outline of our thought process can lead to new concepts we have not considered and the expansion of our current strategies. It can also help identify our strongest and weakest links.
Using information that other people have already put together with their own research. Also using publicly available information to better inform our studies.
Product surveys help us understand successful tactics employed by other competitors in the same or similar fields.
The interview will be a very important aspect of our research still we will be able to get an account of who things work within the company and have the opinions of the staff and members. We will be able to create profiles based of of real people who attend these facilities. The interviews let us observe the reactions and the emotions of individual people and how they feel about the company. With this information we are capable of obtaining new and updated information on the company and members.
A method widely used when designing human-computer interactions, paper prototyping helps us create software that meets the user's expectations and needs, especially in the case of user interfaces. It will be used when designing concepts for our website and finding the best functionality for its potential users. We would be experimenting with different concepts of design and testing how understandable the website would be for the average person to use.
Data collection through questionnaires, this method will focus on replies from students in creative fields who are most likely to use cooperative working spaces in the future.
Amount of posts: 10
Average amount of tags per post: 6
Average amount of likes per post: 113
Number of post they were tagged in: 31
Photos are bight lit.
The people in the photos are happy and smiling.
They have a good composition.
They highlight the people in them.
The People in the photos are tagged.
They group multiple photos of the person they are highlighting together .
Project Spaces makes sure to highlight the successes in their members.
They make sure to explain what the members are doing in the caption.
The First picture acts as a cover for the event.
Post multiple pictures per event.
Colours and filters in the photos complement the content.
Project Spaces has many different events for their members:
Holiday event,
Anniversary events,
Seminars,
etc
Photos are bight lit.
Shows open spaces with people using the space.
The photos show a casual workspaces and a comfortable setting.
Their workplaces advertised as dog friendly.
Everyone in the photos are working hard and appear happy with their environment.
Workplaces places look busy.
Project spaces keeps their photos casual.
The captions are fun.
They use little gifs, different fonts, and tags in their stories.
They post about their daily lives at Project Spaces
and their events.
The add and remove stories from their feed.
The amount of stories on their feed doesn't stay consistent.
Project Spaces puts multiple tags in their posts.
Project spaces does not include hashtags in their main posts.
They tag their members as well as other accounts so that more people see their post.
They keep their tags to the side and away from the focus of the post.
They tag the location of all their posts.
The comments on Project Spaces posts are overwhelmingly positive.
People comment on how much they
like their photos.
Many members praise the events and spaces in the comments section.
They respond to the comments made
on their posts.
They use emojis and a generally very casual
in their responses.
Spacing the content our more to create different focal points and an easier path for the viewer’s eyes to follow
Consistent filter/lighting/editing throughout posts
Variety of subject matter
In conclusion, by analyzing other social media platforms of other co working spaces, we have discovered that using all features of the platform (stories, hashtags, reposting, etc.) can really increase community involvement and overall traffic of the platform. Should NUVO choose to implement these ideas, we believe they could benefit significantly.


Introduction to Planning for Self Driving Vehicles¶
Planning is an essential piece of the Autonomous Vehicles (AV) stack.
In this series of notebooks you will train and evaluate a data-driven ML policy.
Before starting, please download the Lyft L5 Prediction Dataset 2020 and follow the instructions to correctly organise it.
Training an effective ML policy for planning can take several hours on the best performing hardware. For this reason, we provide trained models you can experiment with in our evaluations notebooks, without requiring to train one yourself. Still, we suggest you to go through the training notebook we provide, as it contains key insights on how to effectively train an ML policy for planning.
Training Notebook¶
In this notebook you are going to train your own ML policy to fully control a Self Driving Vehicle (SDV). You will train your model using the Lyft Prediction Dataset and L5Kit.
The policy will be a deep neural network (DNN) which will be invoked by the SDV to obtain the next command to execute.
More in details, you will be working with a CNN architecture based on ResNet50.
Inputs¶
The network will get a BEV of the scene surrounding the SDV as the only input. This has been rasterised in a fixed grid image to comply with the CNN input. L5Kit is shipped with various rasterisers. Each one of them captures different aspects of the scene (e.g. lanes or satellite view).
This input representation is very similar to the one used in the prediction competition. Please refer to our competition baseline notebook and our data format notebook if you want to learn more about it.
Outputs¶
The network outputs the driving signals required to fully control the SDV. In particular, this is a trajectory of XY and yaw displacements which can be used to move and steer the vehicle.
After enough training, your model will be able to drive the SDV along a specific route. Among others, it will do lane-following while respecting traffic lights.
Pre-Trained Models¶
We provide a collection of pre-trained models you can experiment with and use in your own experiments. Please refer to the training notebook for additional details and download links.
Open-Loop Evaluation Notebook¶
In this notebook you are going to evaluate a CNN-based policy to control the SDV with a protocol named open-loop evaluation.
What is open-loop evaluation?¶
In open-loop evaluation we evaluate our model prediction as we follow the annotated ground truth.
In each frame, we compare the predictions of our model against the annotated ground truth. This can be done with different metrics.
Regardless of the metric used, this evaluation protocol doesn’t modify the future locations according to the model’s predictions.
Closed-Loop Evaluation Notebook¶
In this notebook you are going to evaluate a CNN-based policy to control the SDV with a protocol named closed-loop evaluation.
What is closed-loop evaluation?¶
In closed-loop evaluation the model is in full control of the SDV. At each time step, we predict the future trajectory and then move the AV to the first of the model’s predictions.
We refer to this process with the terms forward-simulate or unroll.


{{/* The Hugo version of the table of contents is super broken. So we've got this snippet here to manually go through each page and grab all the
tags and make a Table of Contents out of them. Lines ~6 and ~19 can be uncommented to include more than just tags if needed in the future. */}} {{ if .Params.table_of_contents }} {{ $headers := findRE "


Migrants found on ship to Rosslare have left direct provision centre in Dublin
by By Digital Desk staffA number of the migrants found on a ship to Rosslare last Thursday have left a Dublin direct provision centre.
Gardaí have confirmed that most of the migrants are no longer in the care of the State.
The group included 15 adults and one juvenile. According to gardaí, all of them sought international protection which is effectively seeking refugee status. Under that system, they were offered accommodation in a Dublin direct provision centre.
However, the process means they were not detained and all of them are free to leave their accommodation.
Gardaí have confirmed the 16th member of the group, however, is a juvenile who has now been taken into the care of the child and family agency, Tusla.
They were part of a group of Kurdish males who were discovered in a container on a Stena Line ship from Cherbourg to Rosslare.
They spent up to 12 hours in the trailer of an articulated tractor unit before being discovered at Rosslare port on Thursday
READ MORE
Thousands rally and call to save respite centre in Co Roscommon


In order to reduce the size of style descriptions, we use some basic shorthand or jargon to represent more complex thoughts, and we also omit some items that should only be noted in exception circumstances. Some terminology may have different meanings in certain parts of the world, so we define our usages to avoid confusion. We also identify certain characteristics that are assumed not to be present in all beer styles so we don't have to repeat those restrictions in every style.
The most general categorization of beer styles by yeast type is a modern craft brewing phenomenon. American brewers and most other craft brewers call beers ales if they use top-fermenting (ale) yeast and lagers if they use bottom-fermenting (lager) yeast. Most categorization systems will allow for a third classification, often called spontaneously-fermented because of the method; however, wild is perhaps a more widely-used modern craft beer term for these beers fermented with bacteria or non-saccharomyces yeast. The term wild in this context does not imply spontaneous fermentation; most are directly inoculated with the desired fermentation strains.
In Germany and other old world brewing centers, the terminology most typically used to differentiate beers is to refer to them as top-fermenting or bottom-fermenting. Germans think of ale as a type of English beer, and lager as a method of conditioning beer. So Germans would typically speak of Kölsch as a top-fermenting lager beer, not an ale.
English brewers, particularly when dealing in a historical context, might separate ales from porters and stouts as types of beer (although in the next breath, saying there is no difference between porters and stouts). When dealing in even more historical contexts, they might go even further to describe ale as distinct from beer in that beer was hopped (or more highly hopped) than ale. These historical notes are important for understanding old recipes and writings, but have little relevance today in the common usages of terms describing beer.
These guidelines attempt to use the modern craft beer definitions of ale, lager, and wild as the major groupings of beer styles, but will mention how they might be described in local or regional contexts, if possible.
The attributes discussed in this section are assumed to be present in every beer style description unless otherwise noted. It is not necessary to repeat all these characteristics for every style description. Do not assume that since a characteristic (such as diacetyl) isn't mentioned in a style description that somehow it is allowable.
Unless explicitly noted in an individual style description, all beer styles are assumed to be cleanly fermented and free from technical faults, including acetaldehyde, astringency, chlorophenols, diacetyl, DMS, fusel alcohol, and phenolics. All beer styles are assumed to be free of packaging and handling faults, including oxidation, light-struck, sour, and musty characteristics.
In mouthfeel, all beers are assumed to be free from astringency, and not be creamy or have any other palate sensations unless otherwise noted. Beers with an alcohol level of 6% or less are assumed to not have the flavor or warming nature of alcohol, unless otherwise noted. Higher-alcohol beers that have a noticeable alcohol presence should not be harsh, hot, solventy, or burning. The alcohol character if noted, should be clean and not have fusel alcohols.
Lagers tend to be smooth, clean, and free of esters, but may have slight yeast-derived sulfur notes that are often fleeting. Styles made with a large amount of Pilsner malt may have low DMS notes; this is not a fault, but it is also not required unless otherwise noted. In both cases, the small amounts of sulfur and/or DMS should not be taken as meaning that prominent quantities are somehow desirable - they're not. Just be aware that the use of some traditional ingredients often leave small sensory indications of their presence that might be considered faults in other contexts; that is perfectly acceptable, although not required.
Unless otherwise noted, assume all lagers to not have any fruitiness (esters). Ales tend to be less smooth than lagers, so unless otherwise noted, assume all ales may have some esters (not required, but not a fault).
Some terminology used in the style guidelines may be unfamiliar to some readers. Rather than include a complete dictionary, we have highlighted a few terms that either may not be well understood, or that imply specific meanings within the guidelines. Sometimes ingredient names are used as a shorthand for the character they provide to beer. When judges use these terms, they don't necessarily imply that those specific ingredients have been used, just that the perceived characteristics match those commonly provided by the mentioned ingredients.
American hops - modern American brewing hops from the craft beer era, typically having citrusy, resiny, evergreen, or similar characteristics. More modern hops can add even more unusual and experimental characteristics, such as stone fruit, berry, and melon.
Old World hops - traditional European brewing hops, including Saazer-type hops, British brewing hops, and those other varieties from continental Europe. Typically described as floral, spicy, herbal, or earthy. Generally less intense than many New World hops.
New World hops - American hops, along with those from Australia and New Zealand, and other non-Old World locations. Can have all the attributes of classic American hops, as well as tropical fruit, stone fruit, white grape, and other interesting aromatics.
Saazer-type hops - often called noble hops, traditionally among the finest continental European brewing hops. Often having a lightly floral, spicy, or herbal character; rarely brash and aggressive, typically more subtle and elegant in nature.
Munich malt - can provide a bready, richly malty quality that enhances the malt backbone of a beer without adding residual sweetness, although some can confuse maltiness with sweetness. Darker Munich malts can add a deeply toasted malt quality similar to toasted bread crusts.
Vienna malt - can provide a bready-toasty malt presence, but don't expect the toasted notes to be extreme - they're more like untoasted bread crusts than toasted bread.
Pilsner or Pils malt - continental Pilsner malt is quite distinctive, and has a slightly sweet, lightly grainy character with a soft, slightly toasty, honey-like quality. Higher in DMS precursors than other malts, its use can sometimes result in a low corny DMS flavor.
Maillard products - a class of compounds produced from complex interactions between sugars and amino acids at high temperatures, resulting in brown colors and rich, malty, sometimes even somewhat meaty compounds. In previous versions of the guidelines, known as melanoidins, which are a subset of Maillard products responsible for red-brown colors (and, according to Kunze, are "aroma-intensive"). In some brewing literature, melanoidin and Maillard product are used interchangeably. The chemistry and flavor characterization is not well understood, so brewers and judges should avoid excessively pedantic discussions around these points. The takeaway is that we mean the richly malty flavors, and need some kind of convenient shorthand to discuss them. Maillard is pronounced, roughly, as "my-YARD."
Biscuity - dry, toasted grain, flour, or dough flavor reminiscent of English digestive biscuits; in brewing, a flavor commonly associated with Biscuit malt and some traditional English malts.
Clean fermentation profile - the quality of having very low to no yeast-derived fermentation by-products in the finished beer, typically implying that there are no esters, diacetyl, acetaldehyde, or similar components, except if specifically mentioned. A shorthand for saying that the long list of possible fermentation by-products are not present in significant or appreciable quantities (barely perceived trace quantities at the threshold of perception are typically acceptable, nonetheless).
Pome fruit - apple, pear, quince. The botanical classification contains other fruit, but these are the common ones we mean.
Stone fruit - fleshy fruit with a single pit (or stone), such as cherry, plum, peach, apricot, mango, etc.
Brett - shorthand term for Brettanomyces, an attenuative genus of yeast that often is used to produce fruity or funky complex flavors (leather, sweat, funk, etc.) in fermented beverages. Literally means "British fungus" and is often associated with qualities produced during barrel aging. Common species used in brewing include B. bruxellensis and B. anomalous, although they are sometimes known by other names; several strains exist with very different profiles (as with S. cerevisiae). May be used as a primary fermentation or secondary fermentation strain.
Adjunct quality - a characteristic of beer aroma, flavor, and mouthfeel that reflects the use of higher percentages of non-malt fermentables. Can present as a corny character, a lighter body than an all-malt product, or a generally thinner-tasting beer. Does not necessarily imply the use of any specific adjunct.
DMS - Dimethyl Sulfide, which can take on a wide range of perceptual characteristics. Most are inappropriate in any style of beer; however, a light cooked corn quality may be apparent in beers with high levels of Pilsner malt. When the guidelines state that any levels of DMS are appropriate, it is this light cooked corn flavor, not other cooked vegetable characteristics or other DMS flavors.
Rustic - coarse, hearty, robust character reminiscent of older, traditional ingredients; perhaps less refined as a general sensory experience.
Elegant - smooth, tasteful, refined, pleasant character suggestive of high quality ingredients handled with care; lacking rough edges, sharp flavors, and palate-attacking sensations.
Funky - A positive or negative term, depending on the context. If expected or desirable, can often take on a barnyard, wet hay, slightly earthy, horse blanket, or farmyard character. If too intense, unexpected, or undesirable, can take the form of silage, fecal, baby diaper, or horse stall qualities.
Belgian Lace (Lacing) - a characteristic and persistent latticework pattern of foam left on the inside of the glass as a beer is consumed. The look is reminiscent of fine lacework from Brussels or Belgium, and is a desirable indicator of beer quality in Belgium.
Legs - a pattern that a beverage leaves on the inside of a glass after a portion has been consumed. The term refers to the droplets that slowly fall in streams from beverage residue on the side of the glass. Not an indication of quality, but can indicate a higher alcohol, sugar, or glycerol content.
Note that SRM is a measure of beer color density more than hue/tint. Keep this in mind when attempting to use only SRM numbers when describing beers. Within these Guidelines, beer color descriptors generally follow this mapping to SRM values:
| Color Descriptor | SRM Value |
|---|---|
| Straw | 2 - 3 |
| Yellow | 3 - 4 |
| Gold | 5 - 6 |
| Amber | 6 - 9 |
| Deep amber / light copper | 10 - 14 |
| Copper | 14 - 17 |
| Deep copper / light brown | 17 - 18 |
| Brown | 19 - 22 |
| Dark brown | 22 - 30 |
| Very dark brown | 30 - 35 |
| Black | 30 + |
| Black, opaque | 40 + |
The beer styles described in the guidelines have been categorized to assist with running homebrew competitions. Categories (the major groupings of styles) are artificial constructs that represent a collection of individual sub-categories (beer styles) that may or may not have any historical, geographic, or traditional relationship with each other. Do not infer that membership in a style category somehow relates beer styles with each other. The only reason why they are grouped together is to assist with managing the scale and complexity of competitions. The names given to the groupings are for competition purposes only, and may not be used in any broader contexts in the beer and brewing industries.
Competitions do not have to judge each style category separately; they may be combined, split, or otherwise reorganized for competition purposes. Competition organizers are free to combine style sub-categories into their own competition categories. As long as each submitted beer is judged against the identified sub-category (style), any logical grouping is permitted.
To assist with regrouping styles for other purposes, we have added informational tags to each style. These tags indicate certain attributes of the beer that may be used for grouping purposes. The ‘meaning' column explains the general intent of the tag, but is not meant to be rigorous, formal definition. In no way do the tags supersede the actual descriptions of the style.
| Tag | Meaning |
| Strength | |
|---|---|
| session-strength | <4% ABV |
| standard-strength | 4-6% ABV |
| high-strength | 6-9% ABV |
| very-high-strength | >9% ABV |
| Color | |
| pale-color | straw to gold |
| amber-color | amber to copper-brown |
| dark-color | dark brown to black |
| Color | |
| pale-color | straw to gold |
| amber-color | amber to copper-brown |
| dark-color | dark brown to black |
| Fermentation/Conditioning | |
| top-fermented | ale yeast |
| bottom-fermented | lager yeast |
| any-fermentation | ale yeast or lager yeast |
| wild-fermented | non-Saccharomyces yeast/bacteria |
| lagered | cold conditioned |
| aged | long conditioning before release |
| Region of Origin | |
| british-isles | England, Wales, Scotland, Ireland |
| western-europe | Belgium, France, Netherlands |
| central-europe | Germany, Austria, Czech Republic, Scandinavia |
| eastern-europe | Poland, Baltic States, Russia |
| north-america | United States, Canada, Mexico |
| pacific | Australia, New Zealand |
| Style Family | |
| ipa-family | |
| brown-ale-family | |
| pale-ale-family | |
| pale-lager-family | |
| pilsner-family | |
| amber-ale-family | |
| amber-lager-family | |
| dark-lager-family | |
| porter-family | |
| stout-family | |
| bock-family | |
| strong-ale-family | |
| wheat-beer-family | |
| specialty-beer | |
| Era | |
| craft-style | developed in the modern craft beer era |
| traditional-style | developed before the modern craft beer era |
| historical-style | no longer made, or very limited production |
| Dominant Flavor | |
| malty | malt-forward flavor |
| bitter | bitter-forward flavor |
| balanced | similar malt and bitter intensity |
| hoppy | hop flavor |
| roasty | roasted malt/grain |
| sweet | noticeable residual sweetness or sugar flavor |
| smoke | flavor of smoked malt or grain |
| sour | noticeable sourness or intentionally elevated acidity |
| wood | wood or barrel age character |
| fruit | noticeable flavor and/or aroma of fruit |
| spice | noticeable flavor and/or aroma of spices |


Home
(current)
Nutrition
Exercises
Babies
Log in
Sign up
MOM
For Mother And Baby Care
About Us
MOM is a fully caring web site that helps every Pregnant and after pregnant mother.
we offering her needs: like Nutrition, Exercises, Babies' needs. and contacting with a proffisional doctors.


[gecode-users] help! propagators stop being called after one cloning.
Grégoire Dooms
dooms at info.ucl.ac.be
Wed Mar 22 15:59:10 CET 2006
Hello guys,
I have come back to the implementation of a variabe type for graph
variables.
But I'm stuck on the following bug which I have some troubles hunting down.
I have a csp with one graph variable and two propagators subscribed on
it (cpgraph-path.cc in contribs/graph/examples).
Their propagation condition is PC_GRAPH_ANY.
What happens is those two propagators are runned on the first invocation
of Space::status in the DFS code.
But from then on the propagators are copied and deleted but propagate is
then never called again. So the search engine just enumerates all
subraphs of the initial upper bound.
I have been tracing the execution through the different Space methods
but I don't have a clear idea of where to look for the cause of this bug.
I think it should have something to do with my VarTypeProcessor (never
blame the kernel !) but comparing it to the set and int ones shows no
significant difference.
Do you have any hints on which values/attributes I should inspect to see
what happens ?
In particular what is the difference between the ActorLink and the
ActorDeleteLink ?
Should I trace in Processor::process called from Space::process ?
I known the propagators are still there as they keep getting copied but
I would like to know where the decision to reschedule them is /should be
taken. And then where they should be (I guess in the pool then popped
with pool_pop).
Any ideas ?
Cheers, Thanks,
--
Gregoire
More information about the gecode-users
mailing list


Playlister
Menu
Dashboard
Playlists
Account
Playlister
Create your own playlist
Dashboard
playlists
Account
Login
Username
Password
Login
Remember me
Cancel
Forgot
password?
Register
Username
Password
Register
Remember me
Cancel
Forgot
password?
Account Name
[Please login!]
Search History
[Please login to view you search history!]
Copyright © Playlister 2018 (not really)


{{content-for "head"}} {{content-for "head-footer"}}
For full functionality of this site it is necessary to enable JavaScript. Here are instructions for enabling JavaScript in your web browser.


Kelowna looking at how best to spend Airbnb taxes collected
by Rob MunroThe City of Kelowna collected hundreds of thousands of dollars in tax revenue from short-term rental companies like Airbnb during some of the quietest tourism months of the year.
Taxes started to be paid on Oct. 1, 2018, and almost $336,000 was collected by the end of June, according to a report going to city council on Monday, Nov. 25.
In the report, city staff are asking for permission to partner with Tourism Kelowna to study the best way to spend that money.
“While the City has conducted several important studies relating to housing needs and the rental housing inventory, the perspective of employers and workers regarding how gaps in the housing supply affect staff attraction, retention and the bottom line for businesses is not as well understood,” states the report written by James Moore, the city’s long range policy planning manager.
The study, if approved, will survey Tourism Kelowna stakeholders, look at housing needs and hold focus groups with employees.
The budget could be as much as $40,000 with the city paying $30,000 from the taxes collected with the rest coming from Tourism Kelowna.
It’s clear, from a letter accompanying the report, that Tourism Kelowna wants the tax revenue to benefit the tourism industry.
“We need to acknowledge that Tourism Kelowna represents a wide variety of stakeholders, many of whom would prefer these funds remain allocated to destination marketing,” wrote association president and CEO Lisanne Ballantyne.
A report back to council is expected next fall.


Before Change
def call_service(api, domain, service, service_data=None, logger=None):
Calls a service at the remote API.
event_data = service_data or {}
event_data[ha.ATTR_DOMAIN] = domain
event_data[ha.ATTR_SERVICE] = service
fire_event(api, ha.EVENT_CALL_SERVICE, event_data, logger)
After Change
URL_API_SERVICES_SERVICE.format(domain, service),
service_data)
if req.status_code != 200 and logger:
logger.error(
"Error calling service: {} - {}".format(
req.status_code, req.text))
except ha.HomeAssistantError:
if logger:
logger.exception("Error setting state to server")


Prince Andrew and a question of honour
by LettersEast Germany | Ladies’ loos | Champagne best buys | Prince Andrew | Notable women in Stevenage
We met our best friends in Magdeburg when it was in the GDR and we see them every year. Unlike John Crace (Digested week, 16 November) we enjoyed speaking with people and sharing the riches of the community, with plenty of colour and shops, and a transport system superior to that which got us to the airport in Britain. Our friends’ mother shared her wisdom: “I have lived in four political and economic systems and, let me tell you, none of them work.”
Jonathan Stanley
Godmanchester, Cambridgeshire
• While on the subject of women’s loos (The queue for the ladies’ loo is a feminist issue, Journal, 14 November), perhaps architects and planners could address the problem of cubicles so tiny that your clothing brushes against the seat when you open the door to get out – even when there is then an unnecessarily large space before you reach the washbasins.
Mary McKeown
Biddenham, Bedfordshire
• Please don’t publish any more best buys from Which? (Supermarket bubbly rivals the best names, 16 November). I went to get my favourite fizz from Waitrose and there was an empty shelf with the fateful notice “Product temporarily unavailable”.
Barry Hughes
Edinburgh
• Prince Andrew: “I admit fully that my judgment was probably coloured by my tendency to be too honourable.” Ralph Waldo Emerson: “The louder he talked of his honour, the faster we counted our spoons.”
Alasdair Buchan
Brighton
• Are there really no famous women from Stevenage? Shame on the town for its all-male wall of fame (Report, 16 November).
Deb Thomas
London
• Join the debate – email<EMAIL_ADDRESS>• Read more Guardian letters – click here to visit gu.com/letters
• Do you have a photo you’d like to share with Guardian readers? Click here to upload it and we’ll publish the best submissions in the letters spread of our print edition


|
libpqxx
4.0.1
|
Processes several queries in FIFO manner, optimized for high throughput. More...
#include <pipeline.hxx>
Classes | |
| struct | getquery |
| class | Query |
Public Types | |
| typedef long | query_id |
Public Member Functions | |
| pipeline (transaction_base &, const std::string &Name=std::string()) | |
| ~pipeline () throw () | |
| query_id | insert (const std::string &) |
| Add query to the pipeline. | |
| void | complete () |
| Wait for all ongoing or pending operations to complete. | |
| void | flush () |
| Forget all ongoing or pending operations and retrieved results. | |
| void | cancel () |
| Cancel ongoing query, if any. | |
| bool | is_finished (query_id) const |
| Is result for given query available? | |
| result | retrieve (query_id qid) |
| Retrieve result for given query. | |
| std::pair< query_id, result > | retrieve () |
| Retrieve oldest unretrieved result (possibly wait for one) | |
| bool | empty () const throw () |
| int | retain (int retain_max=2) |
| Set maximum number of queries to retain before issuing them to the backend. | |
| void | resume () |
| Resume retained query emission (harmless when not needed) | |
| Public Member Functions inherited from pqxx::internal::transactionfocus | |
| transactionfocus (transaction_base &t) | |
| Public Member Functions inherited from pqxx::internal::namedclass | |
| namedclass (const std::string &Classname, const std::string &Name="") | |
| const std::string & | name () const throw () |
| const std::string & | classname () const throw () |
| std::string | description () const |
Additional Inherited Members | |
| Protected Member Functions inherited from pqxx::internal::transactionfocus | |
| void | register_me () |
| void | unregister_me () throw () |
| void | reg_pending_error (const std::string &) throw () |
| bool | registered () const throw () |
| Protected Attributes inherited from pqxx::internal::transactionfocus | |
| transaction_base & | m_Trans |
Processes several queries in FIFO manner, optimized for high throughput.
Use a pipeline if you want to execute queries without always sitting still while they execute. Result retrieval is decoupled from execution request; queries "go in at the front" and results "come out the back." Actually results may be retrieved in any order, if you want.
Feel free to pump as many queries into the pipeline as possible, even if they were generated after looking at a result from the same pipeline. To get the best possible throughput, try to make insertion of queries run as far ahead of results retrieval as possible; issue each query as early as possible and retrieve their results as late as possible, so the pipeline has as many ongoing queries as possible at any given time. In other words, keep it busy!
One warning: if any of the queries you insert leads to a syntactic error, the error may be returned as if it were generated by an older query. Future versions may try to work around this if working in a nontransaction.
| typedef long pqxx::pipeline::query_id |
|
explicit |
| pqxx::pipeline::~pipeline | ( | ) | throw () |
| void pqxx::pipeline::cancel | ( | ) |
Cancel ongoing query, if any.
May cancel any or all of the queries that have been inserted at this point whose results have not yet been retrieved. If the pipeline lives in a backend transaction, that transaction may be left in a nonfunctional state in which it can only be aborted.
Therefore, either use this function in a nontransaction, or abort the transaction after calling it.
| void pqxx::pipeline::complete | ( | ) |
Wait for all ongoing or pending operations to complete.
Detaches from the transaction when done.
| bool pqxx::pipeline::empty | ( | ) | const throw () |
| void pqxx::pipeline::flush | ( | ) |
Forget all ongoing or pending operations and retrieved results.
Queries already sent to the backend may still be completed, depending on implementation and timing.
Any error state (unless caused by an internal error) will also be cleared. This is mostly useful in a nontransaction, since a backend transaction is aborted automatically when an error occurs.
Detaches from the transaction when done.
| pipeline::query_id pqxx::pipeline::insert | ( | const std::string & | q | ) |
Add query to the pipeline.
Queries are accumulated in the pipeline and sent to the backend in a concatenated format, separated by semicolons. The queries you insert must not use this construct themselves, or the pipeline will get hopelessly confused!
| bool pqxx::pipeline::is_finished | ( | pipeline::query_id | q | ) | const |
Is result for given query available?
References pqxx::to_string().
| void pqxx::pipeline::resume | ( | ) |
Resume retained query emission (harmless when not needed)
| int pqxx::pipeline::retain | ( | int | retain_max = 2 | ) |
Set maximum number of queries to retain before issuing them to the backend.
The pipeline will perform better if multiple queries are issued at once, but retaining queries until the results are needed (as opposed to issuing them to the backend immediately) may negate any performance benefits the pipeline can offer.
Recommended practice is to set this value no higher than the number of queries you intend to insert at a time.
| retain_max | A nonnegative "retention capacity;" passing zero will cause queries to be issued immediately |
References pqxx::to_string().
Retrieve result for given query.
If the query failed for whatever reason, this will throw an exception. The function will block if the query has not finished yet.
References retrieve().
Referenced by retrieve().
| pair< pipeline::query_id, result > pqxx::pipeline::retrieve | ( | ) |
Retrieve oldest unretrieved result (possibly wait for one)


Preparation time
less than 30 mins
Cooking time
10 to 30 mins
Serves
Serves 4
Preheat the grill to its highest setting.
For the salmon, mix together the fennel seeds and chopped fennel leaves in a bowl.
Brush each salmon fillet with a little oil, and season well with salt and freshly ground black pepper.
Rub a good coating of the fennel mixture onto the salmon fillets, pressing gently but firmly onto each fillet to ensure the coating sticks.
Place the salmon fillets, coated-side down, onto a lightly oiled baking tray. Place under the grill and cook for 3-4 minutes, depending on the thickness of the fish fillet. Carefully turn the fillets over and grill the coated side of the salmon (the coating will brown and crisp up slightly). Grill for a further 3-4 minutes, or until completely cooked through.
For the vinaigrette, place the red wine and shallots into a small pan over a medium heat and bring to the boil. Lower the heat slightly and simmer until the wine has reduced by half.
Turn the heat down low and whisk in the butter, a little bit at a time. Do not allow this sauce to come to the boil again.
Season, to taste, with the sugar and salt, and keep in a warm place until ready to serve.
For the fennel mash, place the potatoes into a saucepan over a high heat, cover with water and bring to the boil. Reduce the heat and simmer, until cooked, then drain and return to the pan. Mash the potatoes until smooth, then set aside.
Heat a large pan until hot, then add the butter, fennel and fennel seeds and fry gently for about 10-15 minutes, over a low heat, with the lid on, until all the fennel pieces are soft.
Add the cream, increase the heat and bring to the boil. Reduce the heat to a simmer for 4-5 minutes, until the cream has thickened slightly and the fennel is completely cooked.
Transfer the fennel mixture to a food processor and blend to a smooth purée then pour into the pan of mashed potatoes. Stir well and season, to taste, with salt and freshly ground black pepper.
To serve, place a spoonful of the mashed potatoes into the centre of each plate. Top each with a salmon fillet and spoon the vinaigrette around.


SLE Flare-up Predictor
ภาพรวมคนไข้ทั้งหมด
วสุธร สนามชัย
ประวัติส่วนตัว
ตั้งค่า
ลงชื่อออก
Enrollment
Edit & Save
Study Identity
Date of diagnosis
Date of enrollment
Gender
Male
Female
Missing
Date of birth
Religion
Religion 1
Religion 2
Religion 3
Education
Education 1
Education 2
Marital Status
Single
Married
Divorced
Widowed
Missing
Region
Region 1
Region 2
Region 3
Region 4
Region 5
Occupation
Income
Revised ACR criteria
Serositis
Malar rash
Renal disorder
Discoid rash
Neurological disorder
Photosensitivity
Haematological disorder
Oral ulcers
Immunological disorder
Arthritis
Positive ANA
SLICC criteria
Acute cutaneous
Chronic cutaneous
Mucosal ulcer
Non scaring alopecia
Arthritis
Serositis
Renal
Neuro
Hemolytic anemia
Leukopenia/lymphopenia
Thrombocytopenia
ANA
Anti-DNA
Anti-Sm
Anti-phospholipid
Low complement
Direct coomb's test
Family history
Family history of autoimmune disease
No
Yes
Unknown
Systemic autoimmune
SLE
Add
RA
Add
Dermatomyositis
Add
Systemic sclerosis
Add
Sjogren's Syndrome
Add
Tissue-specific autoimmune
DM Type 1
Add
Hashimoto's thyroidditis
Add
Multiple sclerosis
Add
Myasthenia gravis
Add
Other
Add
Family history of renal disease/chronic glomerulonephritis
No
Yes
Unknown
Nephrotic syndrome /Glomerular disease
Add
Stone
Add
ESRD
Add
Other
Add
Medical Condition
Systemic autoimmune diseases
Antiphospholipid Ab Syndrome
Rheumatoid arthritis (RA)
Dermatomyositis
Polymyositis
Systemic sclerosis (SSc)
Sjogren's Syndrome (SS)
Mixed connective tissue disease
LE/LP overlap syndrome
Primary biliary cirrhosis
Primary sclerosing cholangitis
Tissue-specific autoimmune diseases
DM type 1
Hashimoto's thyroiditis
Multiple sclerosis
Myasthenia gravis
Autoimmune hepatitis
Metabolic & CVS co-morbidity
DM type 2
Hypertension
Hyperlipidemia
CAD
Allergy
Allergic rhinitis
Allergic conjunctivitis
Asthma
Atopic dermatitis
Allergic urticaria
Anaphylaxis
Hay fever
Food allergy
Other Co-morbidity
Infection
From
To
Major surgery
From
To
Osteoporosis/Fx
Site
To
Malignancy
Specified
To
Organ Involvement
Date
Organ
Treatment
Remission
Add
Date
Organ
Treatment
Remission
Added Date
Added Organ
Added Treatment
Added Remission
Previous Complication
Date
Organ
Treatment
Result
Add
Date
Organ
Treatment
Result
Added Date
Added Organ
Added Treatment
Added Result


Freeplay
← [ Back to Home ]
Thanks for Getting in Touch!
Success
Your information has been successfully submitted—Freeplay Data will respond to your inquiry by email as soon as possible.


Introduction
The change of volatility can have a significant impact on any options trading strategies performance. In addition to the Vega we explained in Greeks letter chapter, this part of the volatility tutorial will discuss the concept of volatility, specifically, we discuss realized and implied volatility, their meanings, measurements, uses, and limitations.
Historical Volatility
1. Definition
It is a measurement of how much the price of the asset has changed on average during the certain period of time. In common, volatility is said to be the standard deviation of the return of assets price.
2. Calculation
Here we discuss how to estimate the historical volatility of the option written on specific underlying asset empirically.
\[r_i=ln(\frac{S_i}{S_{i-1}})\quad for\ i=0,1,2,3,...,n\]
Where (n+1) is the number of observations, \(S_i\) is the stock price at end of it time interval
The standard deviation of the \(r_i\) is given by
\[std=\sqrt{\frac{1}{n-1}\sum_{i=1}^n(r_i-\overline{r})^2}\]
where \(\overline{r}\) is the mean of \(r_i\)
If we assume there are n trading days per year. Then the estimate of historical volatility per annum is
\[std\times\sqrt{n}\]
import pandas as pd
from numpy import sqrt,mean,log,diff
import quandl
quandl.ApiConfig.api_key = 'NxTUTAQswbKs5ybBbwfK'
goog_table = quandl.get('WIKI/GOOG')
# use the daily data of Google(NASDAQ: GOOG) from 01/2016 to 08/2016
close = goog_table['2016-01':'2016-08']['Adj. Close']
r = diff(log(close))
r_mean = mean(r)
diff_square = [(r[i]-r_mean)**2 for i in range(0,len(r))]
std = sqrt(sum(diff_square)*(1.0/(len(r)-1)))
vol = std*sqrt(252)
An asset has a historical volatility based on its past performance as described above, investors can gain insight on the fluctuations of the underlying price during the past period of time. But it does not tell us anything about the volatility in the market now and in the future. So here we introduce the implied volatility.
Implied Volatility
In contrast to historical volatility, the implied volatility looks ahead. It is often interpreted as the market’s expectation for the future volatility of a stock and is implied by the price of the stock’s options. Here implied volatility means it is not observable in the market but can be derived from the price of an option.
1. Definition
We use volatility as an input parameter in option pricing model. If we take a look at the BSM pricing, the theoretical price or the fair value of an option is P, where P is a function of historical volatility σ, stock price S, strike price K, risk-free rate r and the time to expiration T. That is \(P=f(\sigma,S,K,r,T)\). But the market price of options is not always the same with the theoretical price. Now in contrast, if we are given the market’s prices of calls and puts written on some asset and also the value of S, K, r, T. For each asset we can solve a new volatility that corresponds to the price of each option – the implied volatility. Then the implied volatility is \(\IV=f^{-1}(P,S,K,r,T)\).
2. Calculation
Here we use the bisection method to solve the BSM pricing equation and find the root which is the implied volatility. We use Yahoo Finance Python API to get the real time option data.
def bsm_price(option_type, sigma, s, k, r, T, q):
# calculate the bsm price of European call and put options
sigma = float(sigma)
d1 = (np.log(s / k) + (r - q + sigma ** 2 * 0.5) * T) / (sigma * np.sqrt(T))
d2 = d1 - sigma * np.sqrt(T)
if option_type == 'c':
price = np.exp(-r*T) * (s * np.exp((r - q)*T) * stats.norm.cdf(d1) - k * stats.norm.cdf(d2))
return price
elif option_type == 'p':
price = np.exp(-r*T) * (k * stats.norm.cdf(-d2) - s * np.exp((r - q)*T) * stats.norm.cdf(-d1))
return price
else:
print('No such option type %s') %option_type
def implied_vol(option_type, option_price, s, k, r, T, q):
# apply bisection method to get the implied volatility by solving the BSM function
precision = 0.00001
upper_vol = 500.0
max_vol = 500.0
min_vol = 0.0001
lower_vol = 0.0001
iteration = 0
while 1:
iteration +=1
mid_vol = (upper_vol + lower_vol)/2.0
price = bsm_price(option_type, mid_vol, s, k, r, T, q)
if option_type == 'c':
lower_price = bsm_price(option_type, lower_vol, s, k, r, T, q)
if (lower_price - option_price) * (price - option_price) > 0:
lower_vol = mid_vol
else:
upper_vol = mid_vol
if abs(price - option_price) < precision: break if mid_vol > max_vol - 5 :
mid_vol = 0.000001
break
elif option_type == 'p':
upper_price = bsm_price(option_type, upper_vol, s, k, r, T, q)
if (upper_price - option_price) * (price - option_price) > 0:
upper_vol = mid_vol
else:
lower_vol = mid_vol
if abs(price - option_price) < precision: break if iteration > 50: break
return mid_vol
implied_vol('c', 0.3, 3, 3, 0.032, 30.0/365, 0.01)
From the result above, the implied volatility of European call option (with premium c=0.3, S=3, K=3, r=0.032, T =30 days, d=0.01) is 0.87.
3. Factors Affecting Implied Volatility
According to the time value description in the first tutorial, [ref]Options Pricing: Intrinsic Value And Time Value, Jean Folger, Online Copy[/ref]in general, the more time to expiration, the greater the time value of the option. Investors are willing to pay extra money for zero intrinsic value options which have more time to expiration because more time increases the likelihood of price movement and fluctuations, it is the options will become profitable. Implied volatility tends to be an increasing function of maturity. A short-dated option often has a low implied volatility, whereas a long-dated option tends to have a high implied volatility.
Volatility Skew
For European options of the same maturity and the same underlying assets, the implied volatilities vary with the strikes. For a series of put options or call options, if we plot these implied volatilities for a series of options which have the same expiration date and the same underlying with the x axis being the different strikes, we would get a convex curve. The shape of this curve is like people's smiling, it is being called the volatility. The shape of volatility smile depends on the assets and the market conditions.
Here we give an example how to plot the volatility smile by using the real time options data of SPDR S&P 500 ETF(NYSEARCA: SPY).
# download option data for all expiry months from Yahoo Finance
# provide a formatted DataFrame with a hierarchical index
opt = Options('spy', 'yahoo')
opt.expiry_dates # list all the available expiration dates
def IV_plot(opt,option_type,expiry_index):
expiry = opt.expiry_dates[expiry_index]
if option_type == 'c':
data = opt.get_call_data(expiry=expiry)
elif option_type == 'p':
data = opt.get_put_data(expiry=expiry)
r = 0.01 # risk free rate
d = 0.01 # continuous devidend yield
s = opt.underlying_price # data_call['Underlying_Price'] undelying price
expiry = data.index.get_level_values('Expiry')[0] # get the expiry
current_date = opt.quote_time # current_date = datetime.datetime.now() # get the current date
time_to_expire = float((expiry - current_date).days)/365 # compute time to expiration
premium = (data['Ask'] + data['Bid'])/2 # option premium
strike = list(data.index.get_level_values('Strike')) # get the strike price
IV = []
for i in range(len(data)):
IV.append(implied_vol(option_type, premium.values[i], s, strike[i], r, time_to_expire, d))
plt.figure(figsize=(16, 7))
a = plt.scatter(strike,IV, c='r', label="IV by solving BSM")
b = plt.scatter(strike,data['IV'],c = 'b', label="IV from Yahoo Finance")
plt.grid()
plt.xlabel('strike')
if option_type == 'c':
plt.ylabel('Implied Volatility for call option')
plt.legend((a,b), ("IV(call) by solving BSM", "IV(call) from Yahoo Finance"))
elif option_type == 'p':
plt.ylabel('Implied Volatility for put options')
plt.legend((a,b), ("IV(put) by solving BSM", "IV(put) from Yahoo Finance"))
return strike,IV
k_call, IV_call = IV_plot(opt,'c',23)
k_put, IV_put = IV_plot(opt,'p',23)
plt.figure(figsize=(16, 7))
e = plt.scatter(k_call,IV_call, c ='red', label="IV(call options)")
f = plt.scatter(k_put,IV_put, c = 'black', label="IV(put options)")
plt.xlabel('strike')
plt.ylabel('Implied Volatility')
plt.legend((e,f), ("IV (call options)", "IV (put options)"))
The current date is 08/14/2017. We plot the implied volatilities for SPY options which expire on 12/21/2018.
Plotting these implied volatilities across strikes gives us the implied volatility skew. For the shape of volatility smile, it should be a symmetry convex curve. But from the above chart, the implied volatility curve slope downward to the right. This is referred to the skew, which means that options with low strikes have higher implied volatilities than those with higher strikes. The smile is not symmetry. The skew of a distribution is a measure of its assymetry. Although the volatility skew is dynamic, in equity markets it is almost always a decreasing function of the strike. Other asset classes such as FX and commodities have differently shaped skews.
If we plot the call and put options implied volatility smile in the same chart for the same expiration date:
From the above chart, we can see the implied volatility for put options is higher than call options. Usually, put options trade for a higher price than call options, because traders place more risk in the short put positions, which raises the amount of reward they require to sell the position. Higher option prices signify an increase in risk and are represented by higher implied volatility levels derived from the option pricing model.
Then we scattered all the implied volatilities of contracts across all the strikes.
opt = Options('spy', 'yahoo')
r = 0.01 # risk free rate
d = 0.01 # continuous devidend yield
expiry_dates = [i for i in opt.expiry_dates if i > opt.quote_time.date()]
current_date = opt.quote_time.date() ## get the current date
s = opt.underlying_price # undelying price
num_expiry = len(expiry_dates)
IV = [] # (num_expiry * 3)-dimension list with each row being [time_to_expire, strike, implied_vol]
for expiry_index in range(num_expiry):
data = opt.get_put_data(expiry=expiry_dates[expiry_index])
expiry = expiry_dates[expiry_index] # get the expiry
time_to_expire = float((expiry - current_date).days)/365 # compute time to expiration
premium = (data['Ask'] + data['Bid'])/2.0 # option premium
strike = data.index.get_level_values('Strike') # get the strike price
num_strike = len(data)
for j in range(num_strike):
IV.append([time_to_expire, strike[j], implied_vol('c', premium.values[j], s, strike[j], r, time_to_expire, d)])
x= [IV[i][0] for i in range(len(IV))]
y= [IV[i][1] for i in range(len(IV))]
z= [IV[i][2] for i in range(len(IV))]
fig = plt.figure(figsize=(20,11))
ax = fig.add_subplot(111, projection='3d')
ax.view_init(20,10)
ax.scatter(x,y,z)
Volatility Surface
By fixing a maturity and looking at the implied volatilities of European options on the same underlying but different strikes, we obtain the implied volatility skew or smile. The volatility surface is the three-dimensional surface obtained when we plots the market implied volatilities of European options with different strikes and different maturities.
By using the interpolation method, we can generate the implied volatility surface of SPY options for both put and call options as follows:
The Reason for Volatility Skew
The volatility skew shows that for Put options, implied volatility is higher for deep OTM options and then is decreasing as it moves towards ITM options. For call options, the implied volatility is higher for deep ITM options and then is decreasing as it moves towards OTM options. From the demand and supply degree, the skew reflects that investors are more willing to buy deep OTM puts and ITM calls. Why there is volatility skew in the market?
First, the majority of the equity positions are long. Investors usually have two ways to hedge those long positions risks: Buying downside puts or selling upside calls. The increase in demand create increases in price of downside puts and decreases in price of upside calls. The volatility is a reflection of options price. Therefore the volatility of in-the-money put is higher and the volatility of in-the-money call is lower.
The second reason for volatility skew is that the market moves down faster than it moves up. The downside market move is riskier than the upside move. Thus the price of OTM puts is higher than OTM calls.
Summary
In this chapter, we discussed the historical volatility and the implied volatility. The historical volatility of an asset is the statistical measure we know as the standard deviation of the stock return series. The implied volatility of the same asset, on the other hand, is the volatility parameter that we can infer from the prices of traded options written on this asset. In contrast to historical volatility, which looks at fluctuations of asset prices in the past, implied volatility looks ahead. The two volatilities do not necessarily coincide, and although they may be close, they are typically not equal.
Now we know the constant volatility assumption in Black-Sholes-Merton model is not applicable in the real market because there is volatility skew for most of the options. Then in next chapter we will introduce some volatility models to capture the volatility skew in options pricing.


|
||||||||||
| PREV NEXT | FRAMES NO FRAMES |
| Packages that use org.jboss.shrinkwrap.descriptor.api.jboss51 | |
|---|---|
| org.jboss.shrinkwrap.descriptor.api.jboss51 | Provides the interfaces and enumeration types as defined in the schema jboss_5_1.xsd |
| org.jboss.shrinkwrap.descriptor.impl.jboss51 | Provides the implementation classes as defined in the schema jboss_5_1.xsd |
| Classes in org.jboss.shrinkwrap.descriptor.api.jboss51 used by org.jboss.shrinkwrap.descriptor.api.jboss51 | |
|---|---|
| ActivationConfigPropertyType
This interface defines the contract for the activation-config-propertyType xsd type |
|
| ActivationConfigType
This interface defines the contract for the activation-configType xsd type |
|
| AnnotationPropertyType
This interface defines the contract for the annotation-propertyType xsd type |
|
| AnnotationType
This interface defines the contract for the annotationType xsd type |
|
| AssemblyDescriptorType
This interface defines the contract for the assembly-descriptorType xsd type |
|
| CacheConfigType
This interface defines the contract for the cache-configType xsd type |
|
| ClusterConfigType
This interface defines the contract for the cluster-configType xsd type |
|
| ConsumerBeanType
This interface defines the contract for the consumer-beanType xsd type |
|
| EnterpriseBeansType
This interface defines the contract for the enterprise-beansType xsd type |
|
| GenericBeanType
This interface defines the contract for the generic-beanType xsd type |
|
| IgnoreDependencyType
This interface defines the contract for the ignore-dependencyType xsd type |
|
| Jboss51Descriptor
This deployment descriptor provides the functionalities as described in the jboss_5_1.xsd specification |
|
| JbossType
This interface defines the contract for the jbossType xsd type |
|
| JndiRefType
This interface defines the contract for the jndi-refType xsd type |
|
| LocalBindingType
This interface defines the contract for the local-bindingType xsd type |
|
| MessageDrivenBeanType
This interface defines the contract for the message-driven-beanType xsd type |
|
| MessagePropertiesType
This interface defines the contract for the message-propertiesType xsd type |
|
| MethodAttributesType
This interface defines the contract for the method-attributesType xsd type |
|
| MethodType
This interface defines the contract for the methodType xsd type |
|
| PoolConfigType
This interface defines the contract for the pool-configType xsd type |
|
| PortComponentType
This interface defines the contract for the port-componentType xsd type |
|
| ProducerType
This interface defines the contract for the producerType xsd type |
|
| RemoteBindingType
This interface defines the contract for the remote-bindingType xsd type |
|
| ResourceManagersType
This interface defines the contract for the resource-managersType xsd type |
|
| ResourceManagerType
This interface defines the contract for the resource-managerType xsd type |
|
| RunAsType
This interface defines the contract for the run-asType xsd type |
|
| SecurityIdentityType
This interface defines the contract for the security-identityType xsd type |
|
| ServiceBeanType
This interface defines the contract for the service-beanType xsd type |
|
| SessionBeanType
This interface defines the contract for the session-beanType xsd type |
|
| WebservicesType
This interface defines the contract for the webservicesType xsd type |
| Classes in org.jboss.shrinkwrap.descriptor.api.jboss51 used by org.jboss.shrinkwrap.descriptor.impl.jboss51 | |
|---|---|
| ActivationConfigPropertyType
This interface defines the contract for the activation-config-propertyType xsd type |
|
| ActivationConfigType
This interface defines the contract for the activation-configType xsd type |
|
| AnnotationPropertyType
This interface defines the contract for the annotation-propertyType xsd type |
|
| AnnotationType
This interface defines the contract for the annotationType xsd type |
|
| AssemblyDescriptorType
This interface defines the contract for the assembly-descriptorType xsd type |
|
| CacheConfigType
This interface defines the contract for the cache-configType xsd type |
|
| ClusterConfigType
This interface defines the contract for the cluster-configType xsd type |
|
| ConsumerBeanType
This interface defines the contract for the consumer-beanType xsd type |
|
| EnterpriseBeansType
This interface defines the contract for the enterprise-beansType xsd type |
|
| GenericBeanType
This interface defines the contract for the generic-beanType xsd type |
|
| IgnoreDependencyType
This interface defines the contract for the ignore-dependencyType xsd type |
|
| Jboss51Descriptor
This deployment descriptor provides the functionalities as described in the jboss_5_1.xsd specification |
|
| JbossType
This interface defines the contract for the jbossType xsd type |
|
| JndiRefType
This interface defines the contract for the jndi-refType xsd type |
|
| LocalBindingType
This interface defines the contract for the local-bindingType xsd type |
|
| MessageDrivenBeanType
This interface defines the contract for the message-driven-beanType xsd type |
|
| MessagePropertiesType
This interface defines the contract for the message-propertiesType xsd type |
|
| MethodAttributesType
This interface defines the contract for the method-attributesType xsd type |
|
| MethodType
This interface defines the contract for the methodType xsd type |
|
| PoolConfigType
This interface defines the contract for the pool-configType xsd type |
|
| PortComponentType
This interface defines the contract for the port-componentType xsd type |
|
| ProducerType
This interface defines the contract for the producerType xsd type |
|
| RemoteBindingType
This interface defines the contract for the remote-bindingType xsd type |
|
| ResourceManagersType
This interface defines the contract for the resource-managersType xsd type |
|
| ResourceManagerType
This interface defines the contract for the resource-managerType xsd type |
|
| RunAsType
This interface defines the contract for the run-asType xsd type |
|
| SecurityIdentityType
This interface defines the contract for the security-identityType xsd type |
|
| ServiceBeanType
This interface defines the contract for the service-beanType xsd type |
|
| SessionBeanType
This interface defines the contract for the session-beanType xsd type |
|
| WebservicesType
This interface defines the contract for the webservicesType xsd type |
|
||||||||||
| PREV NEXT | FRAMES NO FRAMES |


@media
Rulesorientation:landscape
Tests whether the @media
rule set to orientation:landscape
is supported.
FAIL
If the preceding paragraph reads "FAIL" when the device is held in landscape mode, and the device supports multiple orientations, the test fails.
orientation:portrait
Tests whether the @media
rule set to orientation:portrait
is supported.
FAIL
If the preceding paragraph reads "FAIL" when the device is held in portrait mode, and the device supports multiple orientations, the test fails.
min-width
Tests whether the @media
rule set to min-width:200px
is supported.
FAIL
If the preceding paragraph reads "FAIL", the test fails.
max-width
Tests whether the @media
rule set to max-width:2000px
is supported.
FAIL
If the preceding paragraph reads "FAIL", the test fails.


Masses will be held at St Bibblybibdib's today as follows:
6.00 AM—Adoration of the Lamb
7.00 AM—Slaughter of the First-Born
8.00 AM—Veneration of the Avant-Garde Japanese Beatle-Wife
9.00 AM—Veneration of the Avant-Garde Japanese Beatle-Wife's Late Beatle-Husband
10.00 M—Special Ringo Service
11.00 AM—Slaughter of the Second- and Third-Born
12.00 AM—Adoration of the Beatnik
1.00 PM—Blessing of the Little Cotton Socks
2.00 PM—Interfaith Service With Goat-Slaughter
3.00 PM—Blessing of the Underpants Bomber
4.00 PM—Singalonga Dan Fogelberg Service
5.00 PM—Personal Appearance With Autograph-Signing by Krishnan Guru-Murthy of Channel 4 News
6.00 PM—Remembrance Of Things Past
7.00 PM—Days Of Future Passed
8.00 PM—Nights In White Satin
9.00 PM—Cold-Hearted Orb That Rules The Night
10.00 PM—Tea And Biscuits
11.00 PM—Tea And Oranges That Come All The Way From China
12.00 PM—Slopping-Out


Too Many Thoughts - A blog about thinking, thinking about thinking, introspection, metacognition, and redundancy
GitHub - My GitHub profile
Handshake - My Handshake profile (for UCI affiliates)
LinkedIn - My LinkedIn profile
IoT Irrigation System - Sensor-driven control for crop irrigation with CIMIS database retrieval
Starcraft II: Unsung Rebels - A custom campaign for Starcraft II
SC2Saver - A utility for creating saved games via trigger
Career goals and research interests - Things I'm interested in and would like to pursue
General résumé - My current general résumé
PackLock survey - General interest survey for my startup company, PackLock
Don't click this link - Seriously, don't