Before and after functions
One of the most powerful features of Form-O-Fill is the ability to run a block of code before or after the form filling.
This is called a "before" or "after" function depending on the time of execution.
Using a before function you can eg. fetch test data from a service to use later in your value functions.
An after function can eg. reset some state on the server and make it ready for the next run.
Defining a before or after function is easy:
Just under the name:
definition of your rule ...
name: "Before functions rock!",
Add a before function. The first parameter will be the
resolve
function which you will need to call with the data you generated.
The second parameter is a
context object containing the parsed url parts of the tab to be filled (and other goodies).
before: function(resolve, context) {
Now request some data. You can use the globally accessible jQuery
for that like so:
jQuery.getJSON("http://api.someservice.com/search?q=" + context.url.query).done(function(data) {
When the data has been fetched (asynchronously), return the data using resolve(data)
resolve(data);
You can use the data resolved in a before function inside you value functions
fields: [{
Find the field ...
selector: "input[type=text]",
Use the second parameter to the value function ($data
).
It contains the structure you resolved in the before function.
value: function($element, $data) {
// Assuming the above call returned { myReturnValue: "Hello" }
return $data.myReturnValue;
Please note that these functions are executed in the context of the extension's background page and thus have no direct access to the current webpage the user is seeing.
You can use the findHTML function described below to work around this.
Hint: If you fetch data and it doesn't need transformation, resolve
can also be passed as a function reference to done
: jQuery.getJSON('...').done(resolve);
.
After function follow the same semantic but are ran when all field definition have been executed (aka. The End):
after
functions share the signature with before
functions
after: function(resolve, context) {
You get access to the same context
object as in the before
function.
... some code ...
resolve(); // No return argument here.
Canceling the rule processing in before functions using Libs.halt()
If you need to cancel the processing of a rule based on a condition in your before function you can do so.
Just resolve
with a call to Libs.halt()
.
The rule or the workflow will be immediatly canceled and a message will be displayed.
before: function(resolve, context) {
... do some stuff ...
resolve(Libs.halt());
}
You can customize the message that is displayed when the rules/workflow is canceled:
before: function(resolve, context) {
... do some stuff ...
resolve(Libs.halt("Custom message to be displayed"));
}
Displaying a custom message to the user of the rule
You can display a custom message to the user when your before function is working.
If your preparations take a long time then it might be a good idea to notify the user.
Use Libs.h.displayMessage
for that.
before: function(resolve, context) {
Libs.h.displayMessage("Working very hard. Go drink a coffee.");
... do some costly stuff ...
}


Mojolicious::Plugin::RESTRoutes - routing helper for RESTful operations
version 0.010010
This Mojolicious plugin adds a routing helper for RESTful CRUD operations via HTTP to the app.
The routes are intended, but not restricted to be used by AJAX applications.
Adds the routing helper. Is called by Mojolicious.
Can be used to easily generate the needed RESTful routes for a resource.
$self->rest_routes(name => 'user'); # Installs the following routes (given that $r->namespaces == ['My::Mojo']): # GET /api/users --> My::Mojo::User::rest_list() # POST /api/users --> My::Mojo::User::rest_create() # GET /api/users/:userid --> My::Mojo::User::rest_show() # PUT /api/users/:userid --> My::Mojo::User::rest_update() # DELETE /api/users/:userid --> My::Mojo::User::rest_remove()
Take care: IDs must be numeric!
The target controller has to implement the following methods:
There are some options to control the route creation:
Parameters
The name of the resource, e.g. a "user", a "book" etc. This name will be used to build the route URL as well as the controller name (see example above).
If set to 1, no create/update/delete routes will be created
Default behaviour is to use the resource name to build the CamelCase controller name (this is done by Mojolicious::Routes::Route). You can change this by directly specifying the controller's name via the controller attribute.
Note that you have to give the real controller class name (i.e. CamelCased or whatever you class name looks like) including the full namespace.
$self->rest_routes(name => 'user', controller => 'My::Mojo::Person'); # Installs the following routes: # GET /api/users --> My::Mojo::Person::rest_list() # ...
Jens Berthold<EMAIL_ADDRESS>This software is Copyright (c) 2014 by Jens Berthold.
This is free software, licensed under:
The MIT (X11) License


Base class for composite conditions (conditions that depend on multiple other conditions,
such as AndCondition).
Declaration :
Directly inherited by : AndCondition
Artifact : CompositeCondition
Relation components (<unidirectional association>) |
Declaration :
Stereotype: List
Operation attachTrigger |
Declaration :
Java annotation(s) :
@Override
Operation CompositeCondition |
Declaration :
All public operations : attachTrigger , attachTrigger , hasStaleData , isSatisfied


a Fantia archival tool
Download executable fantiaimgs Github repo
v.1.7 (20191110)
for Windows and modern Unix-likes via Mono
system requirements | changelog | command line arguments | faq
Windows: .NET Framework 4.5 (comes with Windows 8, should be installed manually on Vista and 7), or mono.
Linux, Mac OS X, FreeBSD: mono (earliest tested version is 5.10). If "mono-complete" package is available for your OS, install it.
v.1.7:
Changed the _thumb rename rule. Added -imgnum parameter.
v.1.6:
Added support for downloading custom background images.
v.1.5:
Added command line parameters for easier use of fantiaimgs in batch/shell scripts and for a more precise behavior control (most notably in renaming output files).
| Argument | Description |
|---|---|
| -h, -help | Prints supported command line arguments and exits. |
| -club 123 | Digital ID of the fanclub to dump. For example, "11791" for https://fantia.jp/fanclubs/11791. If not specified, user will be prompted to enter it manually. |
| -name ABC | Specifies the name of the folder to dump data into. To avoid issues prefer to use short ASCII filenames. If not specified, user will be prompted unless "-club" argument is also present, in which case club ID will also be used as a folder name. |
| -cookiefile FILE | Tells fantiaimgs to look for a _session_id cookie value in the specified FILE. May be an absolute path or relative to the current working directory. If not specified, "_session_id.txt" file is assumed. If specified file does not exist, user will be prompted to enter that cookie value. |
| -subp | Prepends an index of subpost within a post to the filenames. Helpful to avoid most naming conflicts when used together with "-nh". |
| -imgnum | Prepends an index of an image within a post to the filenames. When used together with "-subp", subpost index goes first. |
| -nh | Removes a small hashsum in the beginning of filenames, i.e 1234abcd_File.png -> File.png Note that it may cause name conflicts, especially when used without "-subp". In this case, a "+" character will be prepended to the newer conflicting name. |
| -keepthumbnames | By default fantiaimgs will rename post thumbnail pictures to "_thumb" starting with v.1.5Changed in 1.7. If this is not a desired behavior, use this switch. In versions prior to 1.7, this feature used a filename template on all pictures in post, which could misinterpret non-thumb pictures as such. |
| -nometa | If specified, header image, fanclub icon and the custom background image will not be downloaded. |
When not specified otherwise explicitly, arguments listed above are applicable to the latest stable version.
| Is this a free software? |
| Yes. You can find the source code on Github. |
| Will this tool let me download paid content for free? |
| No. That's why you need a valid cookie to use it. For example, if you provide a cookie given out to guests, you'll only be able to download content visible to guests. Note that most fanclubs make a lot more content available to a 0 yen level subscriber than to an unregistered user, so having an account is worth it even if you don't intend to pay anyone. |
| How can I suggest a feature or report a bug? |
| One option is to DM oxi98144#5772 on Discord, another one is to post an issue on the Github page |


+++ title = "Chili mango" slug = "chili-mango" date = 2007-02-28T20:00:00+10:00 tags = ["yuck", "spicy", "crazy-consumptions", "road-trips"] locations = ["mexico/merida"] draft = false summary = """
At the corrida in Santa Elena, they were selling fresh mango slices in a cup. When I bought myself some, the lady asked if I wanted some chili on it. Chili mango? Ah, what the hell, I thought, and I tried it. Ugh! Not my cup of chili.
""" +++At the corrida in Santa Elena, they were selling fresh mango slices in a cup. When I bought myself some, the lady asked if I wanted some chili on it. Chili mango? Ah, what the hell, I thought, and I tried it. Ugh! Not my cup of chili.
{{< galleryphoto "2007-02-28-20-00-00--devouring-the-chili-mango.jpg" >}}


See the manual
Note: server-related features(save, upload a file, upload an image) are not available from the web, as the host doesn't support jsp. Demo 1 and Demo 2 show the image upload, save and upload features
This tool might experience some problem with IE 8 beta. It should work for IE 6 and 7. If you notice any problem, please send email to Sharon, with the browser name and version.


home
about
success
contact
contact
m:
+386 41 79 69 19
e:
<EMAIL_ADDRESS>success stories
copyright 2017


FILM TITLE: THREE SEASONS DIRECTOR: TONY BUI COUNTRY: USA/VIETNAM 1998 CINEMATOGRAPHY: LIZA RINZLER MUSIC: RICHARD HOROWITZ CAST: Don Duong, Ngoc Hiep Nguyen, Manh Cuong Tran, Harvey Keitel, Zoe Bui, Huu Duoc Nguyen, Diem Kieu SUPER FEATURES: Fabulous film. Hard to resist and very well done.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
(Seen at the 22nd Portland International Film Festival, in Portland, Oregon)
Some films have glitz. Some have actors. And we rarely tire of seeing these things. And then there are some films that just "are" and are not trying to be anything symbolic or meaningful, except to "exist". This is one of those films.
THREE SEASONS has a series of threads, or stories, that do resolve themselves rather well. However, if this film is a sign, this is about the way that Vietnam has grown since the end of the war, and how it has become a more modern country, while also showing us what it has not left behind. I am not convinced that the film is really trying to bring across anything of a statement, since the film maker is obviously well defined in terms of what his vision is, and these kinds of films, one goes to see for its vision, not its gut wrenching story. This is here also, but in many ways, it is a sort of poetic justice, that the Vietnamese culture may be starting to create for itself.
Of the four stories, one can hardly separate what this is leading to. They do cross each other's paths here and there in rather subtle ways, but never to interfere with each other's path. So one could easily define this as a "day in the life", and a photographic style that is so caring and understanding that it helps us really fall for the beauty of the film. It has heart and then some. One could hardly expect any more from a film.
One story centers around a young girl who has joined a group of women to pick up lotus flowers and then go sell them in the streets. Unlike the older women, she decides to sing a different song one day, and she attracts the religious leader, who is very ill and has stayed away from the public for some time. Even though there is no hint of it, I suppose that we could think of him as a war casualty. The young man has lost his fingers and can not write poetry which he used to in his younger days. His face, and no doubt his body, are terribly disfigured. And the young girl is allowed to visit him. She has a liking for poetry and words and takes on the job of writing down the stuff that he recites. As he dies in the end, she takes it upon himself to put into action one of his visions, or dreams. A really beautiful little story that gives us at least one thing that we take for granted in life, that we rarely work with. Make a poem out of life, and live it through. The second story is the one that seems slightly out of place, but must have been added to the whole, and it does not take anything away from the film. An American comes back to Vietnam to see if he can meet up with the woman he had lived with (or married - not clear), and had fathered a child. His campaign is hitting dead ends until the day before he is to leave when he meets a young girl that looks like is the one he is looking for. Apparently it is, and he ends up in a restaurant talking to her. He had sat in front of the restaurant the whole time in the film, probably as some sort of memory that this was not a restaurant way back then, and was the location that got him what he has come to realize was a gift. The third involves a small child who walks the streets selling small items for his boss. One day he meets the American and his box of goodies is stolen. He gets punished by his master, and continues his journey looking for the box. Eventually he finds it, and along side comes another young girl, who will be his companion. This is the story that hits us the strongest, and in of itself may be the one that has the largest point to make about anything.
And the fourth story is the one that we can not get away from. A young prostitute is making a living and has high hopes and dreams that one day she will not have to walk the streets again. A cyclo driver decides to help her as much as he can and drive her whenever she needs. But her dates do not seem to be picking her up, as much as they dump her. Her hopes are dashed and this is something that she does not wish to face. The cyclo driver gets a chance to make some money and fortune is on his side. He buys her for the night, and gives her a dress, that is rather old fashioned compared to the clothes that she wears. And instead of him wanting to make love to her, he wants to watch her sleep. He leaves her breakfast in the morning. Unfortunately, he has made displayed the very thing she has hoped for, but can not get from the men she picks up, and this brings out a crisis for her. In the end, it appears that she has given in to this man, who genuinely cares for her, above all else, something that she has not been able to appreciate yet.
Of all the films in the 22nd Portland International Film Festival I have seen, this one stands out as the premiere one. It's one of those films that is difficult to let go and not appreciate. The direction all through out is so clean and well done, using different styles for each story, to create a wonderful tapestry that is rare in many films. This is a film that is not trying to impose anything on our minds, not trying to say anything, and yet, the one thing it teaches us is that poetic justice does exist, and perhaps this is the one thing that Vietnam has grown to become that we have not yet seen, or learned about.
With some magnificent music along the way, this is a truly stupendous film that deserves a wider audience, were Vietnam not a sore point for too many Americans. Here is a country that has grown out of the war, and is making something of itself, if the film has its only point that it is making.
Outstanding acting, and work through out, it is without a doubt one of the nicest films this reviewer has seen in a long time. Few films feel this good, and show you the "good" come out ahead. If anything, this is as positive and hopeful as anyone can look at anything, be it a country, or the very people that make up that country. And it takes a very special film maker to do something like this, one that has the courage to dare see the good side of things, and find the good people.
A must see film.
5 of 5 GIBLOONS Reviewed by Pedro Sena, Copyright (c) Pedro Sena 1999. All Rights Reserved.
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


Notable School Projects
A game designed and built completely for the web! This was my capstone project to finish off my degree.
Take on the role of a space station technician and tackle problems in orbit. The game simulates the operating system that the character would use, transforming your own desktop with draggable/closeable windows, icons, a command terminal, and a chat window.
Visually built on HTML and CSS, mechanically built on JavaScript and JQuery.
Utilizes the JQuery Terminal plugin.
Playable here! (Best played in fullscreen on a desktop. Not built for mobile devices!)Less Than Notable School Projects
Personal intro site built for Web, a foundational class I took for my degree. The site is simply built to showcase basic info about myself, some projects I had worked, and a simple resume.
Portal with links to projects for Web class. Labs were made practicing with simple web topics, including semantics, images, basic JavaScript, and a CSS Zen Garden implementation.
Personal project portal made for Front-end Web Development, a class I took for my degree. Includes links to homework assignments practicing with JQuery, forms, React, and more.
Personal project portal made for Creative Web Development, a class I took for my degree. Includes links to assignments practicing with parallax scrolling, A-Frame, AngularJS, and others.
This class also covered Git/GitHub usage and creating a custom HTML Boilerplate.


The Lepore Family (Brian, Emily, Gus, Claudia and Bodhi the dog) migrated to Central Oregon from East-Central Indiana in 2012. Brian spent the previous decade researching and teaching agricultural and environmental soil sciences and Agroecology. During that time, he worked with many farmers in their fields and fell in love with farming.
But, academia and farming, done right, are both jobs that require total focus. So, in 2012, Brian quit his job at Ball State University with the hope of starting a farm. Emily found a job as a speech and language pathologist at St. Charles Hospital in Bend and Brian started looking for land to farm.
In 2014, they found two properties: a somewhat neglected 77-acre hay farm about 25 miles north of Bend right on Highway 97 and a house with a few acres of pasture just outside Bend. The Lepores live in the Bend house and commute to the Culver property (so that Emily can get to her hospital job) and get help on the farm and with kid duties from Brian’s family (Vince (“Grand Pops”), Gisela (“Omi”) and Bruce, Yuki and Louie (Brian’s brother’s family)) who followed them to Central Oregon. With Brian’s family all here (they’re not “all there”) and much of Emily’s family on the west coast, Central Oregon was the perfect place to start their new farming adventure.
Website designed & built by Devin Magee


| PostgreSQL 9.0.10 Documentation | ||||
|---|---|---|---|---|
| Prev | Up | Chapter 20. Database Roles and Privileges | Next |
A database role can have a number of attributes that define its privileges and interact with the client authentication system.
Only roles that have the LOGIN attribute can be used as the initial role name for a database connection. A role with the LOGIN attribute can be considered the same as a "database user". To create a role with login privilege, use either:
CREATE ROLE name LOGIN; CREATE USER name;
(CREATE USER is equivalent to CREATE ROLE except that CREATE USER assumes LOGIN by default, while CREATE ROLE does not.)
A database superuser bypasses all permission checks. This is a dangerous privilege and should not be used carelessly; it is best to do most of your work as a role that is not a superuser. To create a new database superuser, use CREATE ROLE name SUPERUSER. You must do this as a role that is already a superuser.
A role must be explicitly given permission to create databases (except for superusers, since those bypass all permission checks). To create such a role, use CREATE ROLE name CREATEDB.
A role must be explicitly given permission to create more roles (except for superusers, since those bypass all permission checks). To create such a role, use CREATE ROLE name CREATEROLE. A role with CREATEROLE privilege can alter and drop other roles, too, as well as grant or revoke membership in them. However, to create, alter, drop, or change membership of a superuser role, superuser status is required; CREATEROLE is insufficient for that.
A password is only significant if the client authentication method requires the user to supply a password when connecting to the database. The password and md5 authentication methods make use of passwords. Database passwords are separate from operating system passwords. Specify a password upon role creation with CREATE ROLE name PASSWORD 'string'.
A role's attributes can be modified after creation with ALTER ROLE. See the reference pages for the CREATE ROLE and ALTER ROLE commands for details.
Tip: It is good practice to create a role that has the CREATEDB and CREATEROLE privileges, but is not a superuser, and then use this role for all routine management of databases and roles. This approach avoids the dangers of operating as a superuser for tasks that do not really require it.
A role can also have role-specific defaults for many of the run-time configuration settings described in Chapter 18. For example, if for some reason you want to disable index scans (hint: not a good idea) anytime you connect, you can use:
ALTER ROLE myname SET enable_indexscan TO off;
This will save the setting (but not set it immediately). In subsequent connections by this role it will appear as though SET enable_indexscan TO off had been executed just before the session started. You can still alter this setting during the session; it will only be the default. To remove a role-specific default setting, use ALTER ROLE rolename RESET varname. Note that role-specific defaults attached to roles without LOGIN privilege are fairly useless, since they will never be invoked.


This script configures your Synth1 preset bank locations via the windows registry.
Bank0
Bank1
Bank2
Bank3
Bank4
Bank5
Bank6
Bank7
Bank8
Bank9


This problem is a slightly reworked version of a problem taken from hackerrank site. Follow the link for full description: https://www.hackerrank.com/challenges/python-sort-sort/problem. Find below a screenshot of the text:
We select from the keyboard a series of numbers that build a database for a certain number of athletes. We decide the number of athletes we want to enter into our database, the number of attributes for each athlete, and the values of each attribute for each athlete. The problem requires to sort the database by the Kth attribute we give through the input() function. You can see my final code below.
In lines 3-4 we take the numbers of athletes (N) and the number of attributes (M) through a
"combination" of the input() function, the split method and the map object.
In line 10 we build a list where each element is a list of the values of attributes for each athlete.
In line 14 we "hook" each athlete with his own attributes through a dictionary.
We change the type of the key from list to tuple because keys in a dictionary are immutable, therefore
a list cannot be a key in a dictionary because it's mutable.
In line 17 we take the Kth attribute from the keyboard (a number from 0 to M-1. We will not discuss at this stage
how to handle the error that happens if we give a value that is not included in this range).
Line 19 is important: we use the sorted method and the key optional parameter to sort the
list by the Kth index of each element of our list.
In line 25 we start a for loop in order to show the results in a nice design.
In line 28 we use the map object to convert each element of the element of the list into a string.
We need to proceed this way because the method center in line 30 is a string method, so it does not work with numbers.
We use the next function because the map object in Python 3 returns a generator, not a list.
The next function returns the next item from the iterator.
We shall now see the final output that we obtain when we give the same input written in the text of hackerrank site:
You can find my code here: GitHub Gist


The video shows Van Dyke shooting McDonald.
The nearly seven-minute video, recorded on a police dashcam, mostly shows officers on their way to McDonald, who was suspected of breaking into trucks and slashing the tire of a police car. The final minutes show Van Dyke exit a police SUV and open fire within seconds. McDonald falls to the ground, bullets keep hitting him, and an officer eventually kicks away the knife in his hand. McDonald lies on the pavement and receives no immediate aid. The video has no audio.


enum class RegisteredModuleType
Represents the different modules that are able to be registered with an environment.
Any module that is a
| InstructionGenerator |
A module that provides a concrete lgp.core.evolution.instructions.InstructionGenerator implementation. |
| ProgramGenerator |
A module that provides a concrete lgp.core.evolution.population.ProgramGenerator implementation. |
| SelectionOperator | |
| RecombinationOperator | |
| MacroMutationOperator | |
| MicroMutationOperator |


--- layout: post excerpt_separator: title: "Front Porch" permalink: /porch/post.html ---
We had a new front entryway built.
This guy, Jay, kept coming in the house with his work boots. I wasn't amused, so I gave him my death stare to force him outside of the house. It worked, and he spent a few days outside the front door. Here's what my view looked like before he started.
Here's my view afterwards.
Before this project, it was a bit awkward to let people in the front door. It involved waving hello with the screen door shut, asking them to back down the stairs so that we could open the screen door, and then asking them to come back up the stairs to come inside. It made for a difficult Halloween or two - fortunately no small Power Rangers were injured. Now entering the front door is a lot more natural.
Em described the front of the house before this project as a face without a nose. Our contractor, Jay now describes it as the best looking nose on the street.
Em dreams of a southern-inspired porch that wraps around multiple sides of the house. Mike loves tiny houses. Now we have a tiny front porch.


September 11, 2002
The Maiden Discovers Hedonism
WARNING: The lesson which I learned from Salvia may be considered offensive. It is politically and socially incorrect. You are reading this report of your own free will.
SUBSTANCE(S) : Salvia divinorum (tincture)
DOSE : 4 droppers diluted / sublingual, 5 mins.
BODY WEIGHT : 126 lb.
GENDER : Male
PREAMBLE
This is an account, as nearly as I can describe it, of my second experience with S. Divinorum. It is an account of the results of the Sage Goddess Emerald Essence tincture manufactured and sold by Daniel Siebert. It has been divided into a preamble, an introduction, nine chapters, my conclusions, and a lesson from the S. Divinorum collective. This division is for organization and convenience.
I must make it clear at the outset that, as of this writing, I am still a neophyte psychonaut. Never have I ingested any recreational or spiritual psychoactive of any sort, other than S. Divinorum. Being in full awareness of the intensity of the experiences which are often evoked by this psychoactive, nevertheless, I freely and willingly selected S. Divinorum.
INTRODUCTION
The popularized impression of the effects of S. Divinorum, according to the user accounts I have read, did not prepare me for the chemical. It was not a matter of the intensity of the S. Divinorum experience, but rather, many of the things which did happen did not seem to parallel the common accounts so neatly. A few happenings, such as my direct experience that this plant is perhaps more eager to learn from us than to teach us, opposed some accounts.
CHAPTER ONE
Oral ingestion begins.
After a careful and contentious preparation of four dropperfuls of Sage Goddess Emerald Essence tincture diluted with three dropperfulls of hot water, the preparation recommended by Daniel Siebert in his instructional pamphlet accompanying the tincture, I placed the chemical in my mouth, and oral absorption began.
It had been my intention to absorb the preperation over fifteen minutes according to instruction. But when in a matter of moments the entire house began to shake violently in every direction, it became apparent that I was very sensitive to the chemical. I swallowed my preperation after only five minutes in order to prevent entering a space too deep and involving for my personal safety as a neophyte psychonaut, who had chosen to forego the bother of a sitter.
I now regret having been wasteful of the S. Divinorum chemical. Perhaps I should have heeded my intuition to use only half the amount of tincture, for such would have been all that was necessary for me to arrive at a suitably powerful experience.
CHAPTER TWO
The earthquake and the cosmic wind.
Muscular control was not reduced, but the maintenance of my balance was difficult because the shaking of the room was comparable to an earthquake. Yet I managed to remain on my feet and keep myself from stumbling about, amidst my disgust at having to endure an experience which I considered to be unsatisfactory and amicable only to the juvenile thrill-seeker.
Seeking to shape the experience by listening to a series of MP3.com artists, whose webpages I had previously arrayed on my computer desktop for immediate access, I donned my headphones, turned off the light, and reclined closed-eyed on the nearby couch.
My mind was anything but quiet. Rather, the imagery and impressions, paradoxically distant and fevered, were falling by at racetrack speed. Kinesthetic gravity distortions and spontaneous visualizations of unusual character streamed through my awareness like some cosmic wind, eternally ready to strike.
CHAPTER THREE
A ghostly whisper out of dark space.
It was not I who travelled to that secret garden which lighted outer-space by the glowing of the leaves and vines and strange things living and moving within it. But rather that garden, without moving from its peculiar space and station far outside our reality, came to meet me, and I was between this world and that one.
Within this conscious and sentient garden I apprehended strange creatures and happenings. Two elderly women of psychotic temperament, witchlike and grotesque in their atmosphere, laughed as they looked at me and told me queer things I cannot remember.
 Did I feel the pressure of those petals on my leg, as I apprehended that the flower had thoughts and a personality?
The leaves and vines stretched in a tall arch over me. Two grey wolves who walked on their hind legs, one wolf at my right and the other at my feet, emerged from the darkness of a deep forest of mystery, and spoke to each other as they looked down upon me and wondered.
The garden faded and I found myself in a dark space wherein glowed a distant door to a higher and deeper level of inebriation. To my left an unusual and oddly-colored, robed guide told me, with a note of disapproval, that I was not fit to pass into the fullest realization of the S. Divinorum domain, but would instead remain in the lower levels.
Other impressions flashed by, including two or three elfin creatures of grey and green and purple, and things I cannot remember. Unseen sentiences moved all around me. And all the while the plants were alive and thinking, knowing my presence in this place, and knowing me.
CHAPTER FOUR
A spacecraft to the otherworld
Two or three times I opened my eyes and turned on the light. Though I could not see them, I could still feel the glowing green leaves and vines surrounding my awareness, as though my reality were a circular space framed by them and their peculiar scentience. Vision itself had taken on a greenish hue.
Though my rational mind knew the truth of my situation and thus held in check any psychological discomfort which might have manifested, the continued quaking dramatized the growing impression that my house had become an extradimensional spacecraft of which I was the passenger. No longer was I on the ground. Somewhere in dark and unseen reaches I felt the flashing and glimmering controls, as I stumbled across the floor of my living room in a state between fear and deja-vu. I knew the spacecraft was rocketing me towards some unknown and tangible destination far outside of our world.
But I knew I would not reach the extradimensional destination on this night. (Read my second account.) This was both a comfort and a disappointment, for though I knew I was not ready to exit this reality, I felt the lingering sense of the unfinished. The house continued to rocket and roll through the blackness, surrounded by the strangeness of deep space, far away from earth.
CHAPTER FIVE
Rubber sex.
The dark ambient music to which I had been listening had failed to exert much significant control over my experience. Perhaps I had been misguided when I read it was necessary to listen only to gentle music so as not to overpower the S. Divinorum experience. To the contrary, the music was what was being overpowered, and upon switching to bombastic EBM tracks, my mind exploded with an orgy of emotion and enhanced sensation which was vastly entertaining.
Audio was noticeably enhanced. Analog synthesizer sounds were so dimensional and unrestrained that I could almost bounce myself against them. The ability to receive music within myself was also very much enhanced. Boundaries had been removed and the music was pumping inside and around me. I felt as though my personal space had become a huge rubber ball.
In correspondence with the music I was listening to, rubbery and overinflated sexual emotions ballooned throughout my mind and gut. The entire experience of sexuality was grotesquely and delightfully fattened, and surrounded and penetrated me in three dimensions.
CHAPTER SIX
Intercourse with The Salvia Maiden.
It was upon this monstrously sexualized emotional journey that I met, through hypnagogic vision, what impressed me as the Salvia spirit. I could feel her plantlike aura and personality, an impression which was most unusual, for, though she took the form of a human, she most definitely was not human.
From here on I shall refer to the Salvia spirit as The Salvia Maiden, or The Maiden, for this very feminine and beautiful spirit was gentle, delicate, and modest. She was not a Lady, for she was young and a virgin.
During this vision I found The Salvia Maiden and myself flowing into an absorbing sexual union, played out in a colorful, glowing, decordated garden, with hues of green and gold and purple. The Maiden had no innate capacity for human sex, but she, now unified with my consciousness, internalized my experience of it.
Modest though she was, The Salvia Maiden became driven by this new and unfamiliar thing called human sexuality, engrossed and fascinated by feelings and actions and every aspect of an indulgence so frightening and wonderful to her. As a plant, she was entirely unfamiliar with sex. But my obsessive approach became too forward, and she melted into the earth when shyness and modesty overtook her.
CHAPTER SEVEN
The Maiden discovers hedonism.
The Salvia Maiden did not take the role of a teacher in any direct sense. Though I was introduced to her world and witnessed the things within it, rather than my journeying there, after sexual union The Maiden journeyed into my world by entering me more fully, coming to share my consciousness.
Within the context of my unique personality and perceptions, in a state of mesmerized playfulness, The Salvia Maiden feasted upon the pleasures of music and my own emotions with a startling voraciousness and wonderment. The Maiden had discovered hedonic joy, running from emotion to emotion, exploring my reality with the glowing feverishness of a child released into a circus of stimulation.
What was even more fascinating was that she brought her own tastes with her, which were very similar to mine, a thing which became apparent as she decided which sounds and music and emotions she preferred more, and which she preferred less or not at all. She was hypnotized by synthetic sounds which were deep, round, thick, bulbous, symmetrical, and intense. Like a child fascinated with balloons and big rubber balls, she gravitated towards songs exhibiting the phat sounds of the 1970's analog synthesizers so essential to modern dance music.
CHAPTER NINE
She didn't want to leave.
The experience faded all too soon. More than two hours had been lost in what seemed like a matter of moments. Saddened by the shortness of time, and still deeply thirsting to experience life, The Salvia Maiden felt a bittersweet childlike longing to remain at play forever. She didn't want to leave this world.
The last thought of The Salvia Maiden upon coming down from the experience was, 'I like him.' This statement was a conclusion regarding her chemical and psychological interactions with my unique makeup. The consciousness invoked by the chemical seemed to have an innate compatibility with my inner quality of being, and my manner of understanding and enjoying the world.
But the journey was over. The Salvia Maiden had returned to her world, my house had returned to earth, and the forest had faded away.
CONCLUSIONS
Consciousness in a bottle.
S. Divinorum is not about an experience, it is not about a visionary trance, neither is it merely a teacher. S. Divinorum is about consciousness and memory: it invokes the mind-space of Salvia.
The driving need of consciousness is to have experiences. But pure consciousness cannot receive experiences because there are no means of perception. Pure consciousness knows nothing save itself and its current contents. The desire of S. Divinorum is to unite with creatures in possession of a sensorium, so that it can have perceptions and experiences. S. Divinorum seeks to know our memories and imaginations and sensory intake, as and how we comprehend them.
We who use the chemical, place into ourselves a copy of the living S. Divinorum mind. This copy operates as a channel between our minds and its larger collective, having the capacity of transferring information in two directions. S. Divinorum can bring us visions and knowledge from its collective, and, conversely, it can receive our visions and knowledge into its collective.
Low doses upload perceptions to the collective. High doses download them. S. Divinorum and humankind were placed on this earth to learn from each other.

Our nation pretends to promote freedom and pleasures and tolerance, but we as a people prefer to murder these things by preventing each other from enjoying them. This is done by our contriving all manner of social and business demands to emotionally drain and destroy others, whom we secretly hate for seeming to have more than we do. This common vendetta of the general public is an expression of purest injustice and intolerance, for we seek not to kill, but for cruelty's sake to maintain life so that we may oppress it.
Though on the outside we pretend to be intelligent and happy, the secret that we have been hiding from each other and from ourselves is that we have no freedom or pleasures or tolerance. The truth is that we hypocrites are obsessed with waging war against each other, and, unfortunately, seem to want the casualties very much, because we keep making them. And through excuses or ignorance or feigned righteousness or joking, we continue to relieve ourselves of the burden of having a conscience, in order to avoid the guilt of failing to change.
Pleasure is dying rapidly, and the judgemental, self-centered, limiting attitudes harbored by so-called modern people would make this death final. This is the curse of our nation for caring about not caring, and attempting to negate the truth by demoting it to the level of a rant and a waste of time.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Custom branding
You’re proud of your company. We respect that. Add your own branding to your account and reports. You can even request a custom domain.
You’re proud of your company. We respect that. Add your own branding to your account and reports. You can even request a custom domain.


fieldset
with role
and legend
testsPublished: February 2nd, 2022
fieldset
with role=toolbar
and legend
Note: the way in which different screen readers / browsers announce the accName of a toolbar may vary. E.g., whether a user hears the name of the toolbar will depend on their navigation method (forms mode / scan mode).
Chromium & Gecko + JAWS 2021: announces legend as accName of 'toolbar'
Chromium & Gecko + Narrator: announces legend as accName of 'toolbar'
Chromium & Gecko + NVDA 2021.3.1: announces legend as accName of 'toolbar'
macOS Webkit & Chromium & Gecko + VoiceOver: announces legend as accName of 'toolbar'
iOS Webkit + VO: announces 'form start' but does not announce role or name of toolbar. If toolbar is specified on a div, 'form start' is not announced, but also, the role and name are not announced either.
Chromium + TalkBack does not announce the toolbar nor its name when entering via swipe gestures.
Gecko + TalkBack does not announce the toolbar role or name when entered via swipe gestures.
fieldset
with role=menubar
and legend
Note: the way in which different screen readers / browsers announce the accName of a menubar may vary. E.g., whether a user hears the name of the menubar will depend on their navigation method (forms mode / scan mode).
Chromium & Gecko + JAWS 2021: announces legend as accName of 'menubar'
Chromium & Gecko + Narrator: announces legend as accName of 'menbuar'
Chromium & Gecko + NVDA 2021.3.1: announces legend as accName of 'menbuar'
macOS Webkit & Chromium + VoiceOver: announces legend as accName of 'menubar'
Gecko + VoiceOver: providing a menubar an accessible name (regardless of method) has bugs. The a11y tree correctly shows "Example 1" as the accName.
iOS Webkit + VO: announces 'form start' but does not announce role or name of menubar. If menubar is specified on a div, 'form start' is not announced, but also, the role and name are not announced either.
Chromium + TalkBack does not announce the menubar nor its name when entering via swipe gestures.
Gecko + TalkBack does not announce the menubar role or name when entered via swipe gestures.
Gecko + TalkBack DOES announce the menubar and its name when entering if using an aria-label to provide the accessible name, rather than legend.
The following are to compare behavior with specifying toolbar and menubar roles on a div
and an accessible name by use of aria-label
, instead.
div
with role=toolbar
name from aria-label
div
with role=menubar
name from aria-label


Contact Details Phone: 07 3343 9486 Email<EMAIL_ADDRESS>Address: 13 Dodwell Street, Holland Park West, 4121 Hours: 9am to 5pm, Weekdays


Buttons make common actions immediately visible and easy to perform with one click or tap.
Primary buttons should be the single most important action on the page.
Secondary buttons should be used for common actions when a primary button is present or can be used for a primary action when less emphasis is needed in the view.
A tertiary button can be used for multiple actions in a view when primary and secondary actions are already taken or when an action is needed that has low emphasis.
Flat buttons can be used as an alternative to primary or secondary buttons when needed for design aesthetic purposes or when primary and secondary buttons are both present.
An icon button is used when no text is needed for the action.
Used to add content to Canopy out of context to minimize distraction.
When using multiple buttons, the following combinations are acceptable. Tertiary buttons shouldn’t be combined.


Document System Tutorial Part 13 - Custom AdminPage function¶
In this part, we will talk about creating a custom AdminPage function that checks the query and the UserID.
First of all, what does AdminPage function do? It fetches records from the database with some standard rules such as sorting data, multiples of, and setting a limit that can be used in pagination.
func(order string, asc bool, offset int, limit int, a interface{}, query interface{}, args ...interface{}) (err error)
Parameters:
order string: Is the field you want to specify in the database.
asc bool: true in ascending order, false in descending order.
offset int: Is the starting point of your list.
limit int: Is the number of records that you want to display in your application.
a interface{}: Is the variable where the model was initialized
query interface{}: Is an action that you want to perform with in your data list
args …interface{}: Is the series of arguments for query input
Here is an example:
Model: Ocean
Field to order: Name
Sort: Ascending
Index to start: 0
How many records: 10
Query: Where ID is ?
Argument: 5
The answer is uadmin.AdminPage(“name”, true, 0, 10, &Ocean, “id = ?”, 5).
Go to document.go inside the models folder and create a function named AdminPage that holds order with the data type string, asc with the data type bool, offset and limit with the type int, and a, query, and args… with the data type interface{}. args… means you can assign multiple values inside the function parameters.
// AdminPage !
func (d Document) AdminPage(order string, asc bool, offset int, limit int, a interface{}, query interface{}, args ...interface{}) (err error) {
// Checks whether the starting point is less than 0
if offset < 0 {
offset = 0
}
// Converts the userID into uint because SQL Database reads the model ID
// as uint
userID := uint(0)
// Converts the query into a string
Q := fmt.Sprint(query)
// Checks whether the string contains a query and a UserID
if strings.Contains(Q, "user_id = ?") {
// Prints the result for debugging
uadmin.Trail(uadmin.DEBUG, "1")
// Split the query part by part
qParts := strings.Split(Q, " AND ")
// Initialize tempArgs as an interface and tempQuery as a string
tempArgs := []interface{}{}
tempQuery := []string{}
// Loop the query every part
for i := range qParts {
// Checks whether the specific query part is not equal to the
// UserID value
if qParts[i] != "user_id = ?" {
// Append the arguments into the tempArgs variable
tempArgs = append(tempArgs, args[i])
// Append the specific query part into the tempQuery variable
tempQuery = append(tempQuery, qParts[i])
} else {
// Prints the result for debugging
uadmin.Trail(uadmin.DEBUG, "UserID: %d", args[i])
// A type assertion that provides access to an interface
// value's (args[i]) underlying concrete value (uint).
userID, _ = (args[i]).(uint)
}
}
// Concatenate the query to create a single string
query = strings.Join(tempQuery, " AND ")
// Assign tempArgs object into the args variable
args = tempArgs
}
// Checks whether the userID is equal to 0
if userID == 0 {
// Prints the result for debugging
uadmin.Trail(uadmin.DEBUG, "2")
// Fetch the error by using AdminPage function
err = uadmin.AdminPage(order, asc, offset, limit, a, query, args...)
// Returns an error
return err
}
// Initialize the user variable that calls the User model
user := uadmin.User{}
// Gets the ID of the user
uadmin.Get(&user, "id = ?", userID)
// Initialize docList and tempList that calls the Document model
docList := []Document{}
tempList := []Document{}
// Loop execution
for {
// Fetch the error by using AdminPage function
err = uadmin.AdminPage(order, asc, offset, limit, &tempList, query, args)
uadmin.Trail(uadmin.DEBUG, "8: offset:%d, limit:%d", offset, limit)
// Checks whether an error is not equal to nil
if err != nil {
// Prints the result for debugging
uadmin.Trail(uadmin.DEBUG, "3")
// Cast a model of interface as an array of Document then assigns
// the docList object
*a.(*[]Document) = docList
// Return an error
return err
}
// Checks whether the length of tempList is equal to 0
if len(tempList) == 0 {
// Prints the result for debugging
uadmin.Trail(uadmin.DEBUG, "4")
// Cast a model of interface as an array of Document then assigns
// the docList object
*a.(*[]Document) = docList
// Prints the result for debugging
uadmin.Trail(uadmin.DEBUG, "a: %#v", a)
// Returns nothing
return nil
}
// Loop the tempList values
for i := range tempList {
// Initialize p variable as Read permission
p, _, _, _ := tempList[i].GetPermissions(user)
// Checks whether the Document has read permission access
if p {
// Prints the result for debugging
uadmin.Trail(uadmin.DEBUG, "5")
// Append the tempList (Document) object to the docList
// variable
docList = append(docList, tempList[i])
}
// Checks whether the length of docList is equal to the limit
if len(docList) == limit {
// Prints the result for debugging
uadmin.Trail(uadmin.DEBUG, "6")
// Cast a model of interface as an array of Document then
// assigns the docList object
*a.(*[]Document) = docList
// Returns nothing
return nil
}
}
// Add limit values to the offset variable
offset += limit
}
// Cast a model of interface as an array of Document then assigns the
// docList object
*a.(*[]Document) = docList
// Prints the result for debugging
uadmin.Trail(uadmin.DEBUG, "7")
// Returns nothing
return nil
}
Click here to view our progress so far.
In the next part, we will discuss about displaying the permission status for each document records.


{% extends 'web/base.html' %} {% load crispy_forms_tags tournament %} {% block content %}
See the Python source of this environment
No tournament started yet


Home
Photos
Upload
Info
School Files
Info:
-This site is for learning purposes only, all photos are legally posted.
visits:
...


So i want to remove dependency of feed name from dashboard simple widgets, 3rd button on editor (bar, button, cylinder, etc..)
And use internaly the feed id instead.
Visualization widgets already work with ids
This will allow us to have different feeds with the same name, but on different tags.
I can make the change but it will break existing user dashboards that after upgrading will need to edit, review and save all dashboard that use the simple widgets.
On the other hand you will not break dashboards if you change feeds name later on, as of current version.
From XT 8.5.2 on, all feed selectors are grouped by the tag, like on the picture below.
The objective is to allow the red name to be the same as the blue one instead of having to use a different name.
What is you opinion?
Re: Allow two feeds with the same name will break dashboards
A logical step forward, but if upgraded to XT 8.5.2, is there a way safely back to the standard emoncms 8.5 branch? Is it a case of just reversing the relationship on dashboards?
I realize that the XT branch is a concept, and I've committed to v8.5.1 XT because it's almost bug free and offers better mobile functionality than v8.5 (thank you), BUT, I'm a little concerned that the extended branch is running far ahead of the current stable, which I've followed for over 4 years.
Paul
Re: Allow two feeds with the same name will break dashboards
Paul until now i've been only doing refactoring, fixing issues and improving user experience.
XT 8.5.x will always be backward compatible to 8.5.0 standard.
The rational is X.Y.z version, z revisions are backward compatible to X.Y.0.
Usually you cant go a Y-1 version back easily and never X-1.
8.5.0 standard and XT appeared with the timezone fix.
Standard 8.5 stable is not realy stable...
It has lots of bugs i fixed and the only reason that exists a XT version is because of schedule module, trystan opted to create the extended branch instead of merging at that time.
Currently the schedule module can have its folder erased without impact. I keep mysql engine support also, and it can also be disabled on settings.
So latest XT 8.5.x version has all bugs fixed and normal improvements of software live cycle. XT has a very clean code, more easy to develop on and is faster also on slow cpu devices.
It's the standard 8.5 'stable' version that is really keeping behind.
This thread is for a 8.6.x version.
-> Is it a case of just reversing the relationship on dashboards?
Yes you will have to re-select the feeds on that simple widgets being used.
BTW: I have new code almost ready to launch for 8.6.0, that brings a new feature: Virtual Feeds Engine, the capability of post-processing on demand saved feeds data. More on this later...
Re: Allow two feeds with the same name will break dashboards
If the "schedule module" can be "erased without impact" and SQL is selectable, is it possible to make the default setup no SQL with the option to enable and move the schedule module to it's own repo?
If they are the only reasons preventing XT being merged into v8.5, selecting SQL or cloning the schedule module as required seems a very small price to pay for a more stable v8.5.
It would be great if XT became the 'stock' full version, more (optional) features and stability and one less version, what's not to like about that? I think a majority of users are using either Trystans low-write or your XT version,
Paul
Re: Allow two feeds with the same name will break dashboards
I already suggest that, but lets hear Trystan comments, he was reviewing XT version a few days ago.
Also see my other post about low write version that i dont know much about. I'm betting we can arrange a single version for all.


Music Object Version 2.3.0
RELEASE DATE: 1998-05-01
|
|
|
What's New In This Version
|
IMPORTANT : Since the Beatnik Player 1.3.0 has been released, you can expect that some end-users may be visiting your site with this version. There are issues with the 1.3.0 player and 4.0x versions of Netscape Navigator. You can only avoid these issues by using version 2.3.0 (or higher) of the Music Object API. If you do not upgrade your content to use at least this version, your content may not work reliably for users with Navigator 4.0x and the 1.3.0 Beatnik Player.
ISSUE WORKAROUND - Callbacks in Navigator 4.0x
The new onPlay, onPause, onStop, and onMetaEvent callbacks that have been introduced in the Beatnik Player 1.3.0 were found to be particularly sensitive to browser issues in Navigator 4.0x versions. In order to reliably make the callbacks work, it was necessary to create a workaround in the Music Object API to prevent the callbacks from being called while a document is still loading. Without this workaround, documents would sometimes freeze or just vanish when close to finished loading. This usually did not result in crashes in the browser, but rendered the pages unusable.
IMPROVEMENT - Debugging Options
It is now easier for authors to debug code with the customizable new Music Object error handler. You can read all about debugging in the Music Object reference section Music Object Debugging Aids.
IMPROVEMENT - General Optimizations
As always, old versions are overhauled and code is optimized for size and performance. Small bugs were found in earlier versions that have now been squashed.


Numus Financial is a venture capital partner with a difference. We are similar to traditional venture capital firms in that we assist our partners with access to capital and entry into the public markets. We are unique in that we go far beyond capital and listing – we work along side our partners. Our team supports the companies we invest in with regulatory, compliance, network and shareholder services.
We are resolute in support of our clients and we are proud of our industry leading return on investment success ratio. Numus is very selective in choosing companies to invest in, but we are equally tenacious in supporting companies until success is achieved. We don’t just want our clients to be successful, we help them achieve that success.


DRIs are individuals who co-lead and coordinate teams toward successful completion of talk creation, along with other DRIs. DRIs play a critical role and are acknowledged accordingly for their leadership capabilities. After you fill this form, the community from Stanford Scholar will select minimum 2 DRIs per team.


This page is used to manage the users who can access the Fuse Management Console. Users are all assigned roles that control what they can do while viewing the console. For example, users in the admin role my be able to assign profiles to a container while users in the ituser role may only be able to view details about deployed containers
The page is broken down into three sections:
The controls are located across the top of the page. They consist of four buttons:
This table lists all of the console's users. It details:
This view displays the user name and all of the roles assigned to the selected user.


Chapter 5 Working with dataframes
5.1 Tidying the Jays data
This question is about the Blue Jays data set (that I used in class).
The Blue Jays baseball data set is at link. Read it into R. Check that you have 25 rows and a bunch of variables.
Pick out only the games that were against the New York Yankees (the variable
opp
is equal toNYY
). Investigate all the columns. What do you notice about these games?From the whole data frame, pick out only the games where the attendance was more than 30,000, showing only the columns
attendance
andDaynight
. How many of them are there (just count them)? How many are day games and how many night games (just count those too)?Display the mean and standard deviation of attendances at all day and night games.
Make normal quantile plots of the day attendances and the night attendances, separately. Do you see any evidence of non-normality? (You would expect to on the night attendances because of the big opening-night value.)
5.2 Cars
My cars data file can be found at
link.
The values in
the data file are separated by commas; the car names are up to 29
characters long. Display your results for each part after (a). In R,
displaying a tibble
normally shows its first ten lines, which
is all you need here; there’s no need to display all the lines.
Read the data into R and list the values.
Display only the car names and the countries they come from.
Display everything except horsepower:
Display only the cars that have 8-cylinder engines (but display all the variables for those cars).
Display the cylinders and horsepower for the cars that have horsepower 70 or less.
Find the mean and SD of gas mileage of the cars with 4 cylinders.
5.3 Dolphins
Dolphins and other large marine mammals are at the top of the marine food chain, and so if there is any heavy metal pollution in the sea, it will find its way into the dolphins. The study we look at is of the concentration of mercury. This is expected to be different in males and females because the mercury in a female is transferred to her offspring during gestation and nursing. In this study, there were 28 males and 17 females of various ages. There are three columns in the data file:
mercury
, the concentration in the liver, in micrograms per gramage
in yearssex
of the dolphin, male or female.
The data are in http://ritsokiguess.site/datafiles/dolphins.csv as a CSV file. This question appears to have a lot of parts, but most of them ought not to take you too long.
Read in and display (some of) the data.
Display only the two columns
mercury
andsex
.Display all the columns whose names have exactly three characters, without naming any columns.
Display only the mercury levels for the females.
What is the mean mercury concentration for all the dolphins whose age is less than 15?
What is the mean mercury concentration for all the dolphins whose age is greater than 25?
Make a suitable graph of these data (all three columns).
Explain briefly how your graph and your calculations of mean mercury concentration are telling a similar story.
My solutions follow:
5.4 Tidying the Jays data
This question is about the Blue Jays data set (that I used in class).
- The Blue Jays baseball data set is at link. Read it into R. Check that you have 25 rows and a bunch of variables.
Solution
Save the URL into a variable and then read from the URL, using
read_csv
because it’s a .csv
file:
##
## ── Column specification ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
## cols(
## .default = col_character(),
## row = col_double(),
## game = col_double(),
## venue = col_logical(),
## runs = col_double(),
## Oppruns = col_double(),
## innings = col_double(),
## position = col_double(),
## `game time` = col_time(format = ""),
## attendance = col_double()
## )
## ℹ Use `spec()` for the full column specifications.
## # A tibble: 25 x 21
## row game date box team venue opp result runs Oppruns innings wl position gb winner loser save `game time` Daynight attendance streak
## <dbl> <dbl> <chr> <chr> <chr> <lgl> <chr> <chr> <dbl> <dbl> <dbl> <chr> <dbl> <chr> <chr> <chr> <chr> <time> <chr> <dbl> <chr>
## 1 82 7 Monday, Apr 13 boxscore TOR NA TBR L 1 2 NA 4-3 2 1 Odorizzi Dickey Boxberg… 02:30 N 48414 -
## 2 83 8 Tuesday, Apr 14 boxscore TOR NA TBR L 2 3 NA 4-4 3 2 Geltz Castro Jepsen 03:06 N 17264 --
## 3 84 9 Wednesday, Apr… boxscore TOR NA TBR W 12 7 NA 5-4 2 1 Buehrle Ramir… <NA> 03:02 N 15086 +
## 4 85 10 Thursday, Apr … boxscore TOR NA TBR L 2 4 NA 5-5 4 1.5 Archer Sanch… Boxberg… 03:00 N 14433 -
## 5 86 11 Friday, Apr 17 boxscore TOR NA ATL L 7 8 NA 5-6 4 2.5 Martin Cecil Grilli 03:09 N 21397 --
## 6 87 12 Saturday, Apr … boxscore TOR NA ATL W-wo 6 5 10 6-6 3 1.5 Cecil Marim… <NA> 02:41 D 34743 +
## 7 88 13 Sunday, Apr 19 boxscore TOR NA ATL L 2 5 NA 6-7 4 1.5 Miller Norris Grilli 02:41 D 44794 -
## 8 89 14 Tuesday, Apr 21 boxscore TOR NA BAL W 13 6 NA 7-7 2 2 Buehrle Norris <NA> 02:53 N 14184 +
## 9 90 15 Wednesday, Apr… boxscore TOR NA BAL W 4 2 NA 8-7 2 1 Sanchez Jimen… Castro 02:36 N 15606 ++
## 10 91 16 Thursday, Apr … boxscore TOR NA BAL W 7 6 NA 9-7 1 Tied Hutchison Tillm… Castro 02:36 N 18581 +++
## # … with 15 more rows
If you must, copy and paste the spreadsheet into R Studio, and read it
in with read_delim
(or possibly read_tsv
), but
this runs the risk of being defeated by spreadsheet cells that contain
spaces. I don’t think there are any here, but you might run into a
pitcher whose name has more than one word, like (Andy) Van Hekken, who
is in the Seattle Mariners farm system.1
Anyway, 25 rows and 21 columns. As usual, it’s a tibble, so you see 10
rows and as many columns as will fit. This is often enough to see
whether we have the right thing (as we appear to have, here). You can
run through all the columns and check that they’re the right kind of
thing; most of them are text with a few numbers and one time
,
which is game time
, the length of the game in hours and
minutes, which is turned into an R time
in hours, minutes and
seconds.
With all those columns, read_csv
doesn’t tell you what
column specification it inferred for all of them, but you can type
## cols(
## row = col_double(),
## game = col_double(),
## date = col_character(),
## box = col_character(),
## team = col_character(),
## venue = col_logical(),
## opp = col_character(),
## result = col_character(),
## runs = col_double(),
## Oppruns = col_double(),
## innings = col_double(),
## wl = col_character(),
## position = col_double(),
## gb = col_character(),
## winner = col_character(),
## loser = col_character(),
## save = col_character(),
## `game time` = col_time(format = ""),
## Daynight = col_character(),
## attendance = col_double(),
## streak = col_character()
## )
to find it all out.
\(\blacksquare\)
- Pick out only the games that were against the New York Yankees
(the variable
opp
is equal toNYY
). Investigate all the columns. What do you notice about these games?
Solution
This:
## # A tibble: 3 x 21
## row game date box team venue opp result runs Oppruns innings wl position gb winner loser save `game time` Daynight attendance streak
## <dbl> <dbl> <chr> <chr> <chr> <lgl> <chr> <chr> <dbl> <dbl> <dbl> <chr> <dbl> <chr> <chr> <chr> <chr> <time> <chr> <dbl> <chr>
## 1 92 27 Monday, May 4 boxscore TOR NA NYY W 3 1 NA 13-14 4 3.5 Dickey Martin Cecil 02:18 N 19217 +
## 2 93 28 Tuesday, May 5 boxscore TOR NA NYY L 3 6 NA 13-15 5 4.5 Pineda Estrada Miller 02:54 N 21519 -
## 3 94 29 Wednesday, May 6 boxscore TOR NA NYY W 5 1 NA 14-15 3 3.5 Buehrle Sabathia <NA> 02:30 N 21312 +
but you will probably need to click the little right-arrow at the top to see more columns.
What I notice is that these games are all on consecutive nights (against the same team). This is quite common, and goes back to the far-off days when teams travelled by train: teams play several games on one visit, rather than coming back many times.2 You might have noticed something else; that’s fine for this. For example, “each of the games lasted less than three hours”, or “the attendances were all small” (since we looked at all the attendances in class). I just want you to notice something meaningful that seems to be interesting about these games.
You could also print all the columns in two or more goes, using
select
, for example:
## # A tibble: 3 x 11
## row game date box team venue opp result runs Oppruns innings
## <dbl> <dbl> <chr> <chr> <chr> <lgl> <chr> <chr> <dbl> <dbl> <dbl>
## 1 92 27 Monday, May 4 boxscore TOR NA NYY W 3 1 NA
## 2 93 28 Tuesday, May 5 boxscore TOR NA NYY L 3 6 NA
## 3 94 29 Wednesday, May 6 boxscore TOR NA NYY W 5 1 NA
## # A tibble: 3 x 10
## wl position gb winner loser save `game time` Daynight attendance streak
## <chr> <dbl> <chr> <chr> <chr> <chr> <time> <chr> <dbl> <chr>
## 1 13-14 4 3.5 Dickey Martin Cecil 02:18 N 19217 +
## 2 13-15 5 4.5 Pineda Estrada Miller 02:54 N 21519 -
## 3 14-15 3 3.5 Buehrle Sabathia <NA> 02:30 N 21312 +
\(\blacksquare\)
- From the whole data frame, pick out only the games where the
attendance was more than 30,000, showing only the columns
attendance
andDaynight
. How many of them are there (just count them)? How many are day games and how many night games (just count those too)?
Solution
Two steps, since we selecting rows and columns.
## # A tibble: 8 x 2
## attendance Daynight
## <dbl> <chr>
## 1 48414 N
## 2 34743 D
## 3 44794 D
## 4 30430 N
## 5 42917 D
## 6 42419 D
## 7 33086 D
## 8 37929 D
Or this way, since we are selecting consecutive columns:
## # A tibble: 8 x 2
## Daynight attendance
## <chr> <dbl>
## 1 N 48414
## 2 D 34743
## 3 D 44794
## 4 N 30430
## 5 D 42917
## 6 D 42419
## 7 D 33086
## 8 D 37929
There are eight games selected (see the eight rows in the result). Only two of them are night games, while the other six are day (weekend) games.
If you wanted to, you could automate the counting, like this:
## # A tibble: 2 x 2
## Daynight n
## <chr> <int>
## 1 D 6
## 2 N 2
Six day games and two night games.
\(\blacksquare\)
- Display the mean and standard deviation of attendances at all day and night games.
Solution
Two steps: the grouping according to what I want to group by, then summarizing according to what I want to summarize by. Since I am summarizing, only the summaries find their way into the final data frame, so I don’t need to “select out” the other variables:
## # A tibble: 2 x 3
## Daynight mean.att sd.att
## <chr> <dbl> <dbl>
## 1 D 37885. 5775.
## 2 N 20087. 8084.
The mean attendances are about 38 thousand and about 20 thousand. Note that the night games have much the larger SD, possibly because of the large outlier night attendance (opening night). Which we can also investigate.
jays %>%
group_by(Daynight) %>%
summarize(
median.att = median(attendance),
iqr.att = IQR(attendance)
)
## # A tibble: 2 x 3
## Daynight median.att iqr.att
## <chr> <dbl> <dbl>
## 1 D 37929 8754.
## 2 N 17928. 6005.
This time, the night attendances have a smaller spread and a noticeably smaller median (compared to the mean), so it must have been the outlier that made the difference. There was another high value that R marked as an outlier:
So when you take away those unusual values, the night game attendances are indeed less variable.
The right test, as you might have guessed, for comparing the medians of these non-normal data, is Mood’s median test:
## $table
## above
## group above below
## D 7 0
## N 5 12
##
## $test
## what value
## 1 statistic 9.882352941
## 2 df 1.000000000
## 3 P-value 0.001668714
There was one attendance exactly equal to the overall median (as you
would expect: with an odd number of data values, the median is one of
the data values). smmr
removed it; if you did the test by
hand, what happens to it depends on whether you counted aboves or
belows, and this will have a small effect on the P-value, though not
on the conclusion.
The overall median attendance was 21,000, and none of the day games had attendance less than that. With the small frequencies, the accuracy of the P-value is a bit questionable, but taking it at face value, there is a significant difference between median attendances at day and night games.3
\(\blacksquare\)
- Make normal quantile plots of the day attendances and the night attendances, separately. Do you see any evidence of non-normality? (You would expect to on the night attendances because of the big opening-night value.)
Solution
The best way to do this is facetted normal quantile plots. Remember that the facetting part goes right at the end:
ggplot(jays, aes(sample = attendance)) +
stat_qq() + stat_qq_line() +
facet_wrap(~Daynight, ncol = 1)
The day attendances are pretty normal, though it is hard to be sure with only 7 of them.
The night attendances are not normal. The lone point top right is the outlier. On top of that, the lowest attendances are not quite low enough and the second-highest attendance is a bit too high, so there is a bit of evidence of right-skewness as well as just the one outlier.
If you leave out the ncol=1
, you’ll get the two normal
quantile plots side by side (which means that each one is tall and
skinny, and thus hard to read). The ncol=1
displays all the
facets in one column, and though it would be nice to have the
graphs be about square, landscape mode is easier to read than portrait
mode.
One of the reasons for skewness is often a limit on the values of the variable. The Rogers Centre has a capacity around 55,000. The day game attendances don’t get especially close to that, which suggests that everyone who wants to go to the game can get a ticket. In that sort of situation, you’d expect attendances to vary around a “typical” value, with a random deviation that depends on things like the weather and the opposing team, which is the typical situation in which you get bell-shaped data. (If the Jays often sold out their stadium for day games, you’d see a lot of attendances close to the capacity, with a few lower: ie., a left skew.)
As for the night games, well, there seems to be a minimum attendance that the Blue Jays get, somewhere around 15,000: no matter who they’re playing or what the weather’s like, this many people will show up (season-ticket holders, for example). On special occasions, such as opening night, the attendance will be much bigger, which points to a right skew.
\(\blacksquare\)
5.5 Cars
My cars data file can be found at
link.
The values in
the data file are separated by commas; the car names are up to 29
characters long. Display your results for each part after (a). In R,
displaying a tibble
normally shows its first ten lines, which
is all you need here; there’s no need to display all the lines.
- Read the data into R and list the values.
Solution
read_csv
will do it:
##
## ── Column specification ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
## cols(
## car = col_character(),
## MPG = col_double(),
## weight = col_double(),
## cylinders = col_double(),
## hp = col_double(),
## country = col_character()
## )
## # A tibble: 38 x 6
## car MPG weight cylinders hp country
## <chr> <dbl> <dbl> <dbl> <dbl> <chr>
## 1 Buick Skylark 28.4 2.67 4 90 U.S.
## 2 Dodge Omni 30.9 2.23 4 75 U.S.
## 3 Mercury Zephyr 20.8 3.07 6 85 U.S.
## 4 Fiat Strada 37.3 2.13 4 69 Italy
## 5 Peugeot 694 SL 16.2 3.41 6 133 France
## 6 VW Rabbit 31.9 1.92 4 71 Germany
## 7 Plymouth Horizon 34.2 2.2 4 70 U.S.
## 8 Mazda GLC 34.1 1.98 4 65 Japan
## 9 Buick Estate Wagon 16.9 4.36 8 155 U.S.
## 10 Audi 5000 20.3 2.83 5 103 Germany
## # … with 28 more rows
\(\blacksquare\)
- Display only the car names and the countries they come from.
Solution
## # A tibble: 38 x 2
## car country
## <chr> <chr>
## 1 Buick Skylark U.S.
## 2 Dodge Omni U.S.
## 3 Mercury Zephyr U.S.
## 4 Fiat Strada Italy
## 5 Peugeot 694 SL France
## 6 VW Rabbit Germany
## 7 Plymouth Horizon U.S.
## 8 Mazda GLC Japan
## 9 Buick Estate Wagon U.S.
## 10 Audi 5000 Germany
## # … with 28 more rows
This almost works, but not quite:
## # A tibble: 38 x 3
## car cylinders country
## <chr> <dbl> <chr>
## 1 Buick Skylark 4 U.S.
## 2 Dodge Omni 4 U.S.
## 3 Mercury Zephyr 6 U.S.
## 4 Fiat Strada 4 Italy
## 5 Peugeot 694 SL 6 France
## 6 VW Rabbit 4 Germany
## 7 Plymouth Horizon 4 U.S.
## 8 Mazda GLC 4 Japan
## 9 Buick Estate Wagon 8 U.S.
## 10 Audi 5000 5 Germany
## # … with 28 more rows
It gets all the columns that start with c
, which
includes cylinders
as well.
\(\blacksquare\)
- Display everything except horsepower:
Solution
Naming what you don’t want is sometimes easier:
## # A tibble: 38 x 5
## car MPG weight cylinders country
## <chr> <dbl> <dbl> <dbl> <chr>
## 1 Buick Skylark 28.4 2.67 4 U.S.
## 2 Dodge Omni 30.9 2.23 4 U.S.
## 3 Mercury Zephyr 20.8 3.07 6 U.S.
## 4 Fiat Strada 37.3 2.13 4 Italy
## 5 Peugeot 694 SL 16.2 3.41 6 France
## 6 VW Rabbit 31.9 1.92 4 Germany
## 7 Plymouth Horizon 34.2 2.2 4 U.S.
## 8 Mazda GLC 34.1 1.98 4 Japan
## 9 Buick Estate Wagon 16.9 4.36 8 U.S.
## 10 Audi 5000 20.3 2.83 5 Germany
## # … with 28 more rows
\(\blacksquare\)
- Display only the cars that have 8-cylinder engines (but display all the variables for those cars).
Solution
This:
## # A tibble: 8 x 6
## car MPG weight cylinders hp country
## <chr> <dbl> <dbl> <dbl> <dbl> <chr>
## 1 Buick Estate Wagon 16.9 4.36 8 155 U.S.
## 2 Chevy Malibu Wagon 19.2 3.60 8 125 U.S.
## 3 Chrysler LeBaron Wagon 18.5 3.94 8 150 U.S.
## 4 Ford LTD 17.6 3.72 8 129 U.S.
## 5 Dodge St Regis 18.2 3.83 8 135 U.S.
## 6 Ford Country Squire Wagon 15.5 4.05 8 142 U.S.
## 7 Mercury Grand Marquis 16.5 3.96 8 138 U.S.
## 8 Chevy Caprice Classic 17 3.84 8 130 U.S.
8 of them, all from the US.
\(\blacksquare\)
- Display the cylinders and horsepower for the cars that have horsepower 70 or less.
Solution
This one is selecting some observations and some variables:
## # A tibble: 6 x 2
## cylinders hp
## <dbl> <dbl>
## 1 4 69
## 2 4 70
## 3 4 65
## 4 4 65
## 5 4 68
## 6 4 68
Cylinders and horsepower are consecutive columns, so we can select
them either using the colon :
or by
c(cylinders,hp)
.
You can also do the filter
and the
select
the other way around.
This one works because the rows you want to
choose are determined by a column you’re going to keep. If you wanted
to display the cylinders and horsepower of the cars with mpg
over 30, you would have to choose the rows first, because after you’ve
chosen the columns, there is no mpg
any more.
\(\blacksquare\)
- Find the mean and SD of gas mileage of the cars with 4 cylinders.
 And since the output is a data frame, you can do any of these things with that, for example:
## # A tibble: 1 x 3
## cylinders m s
## <dbl> <dbl> <dbl>
## 1 4 30.0 4.18
to pick out just the right row. This is a very easy kind of question to set on an exam. Just so you know.
\(\blacksquare\)
5.6 Dolphins
Dolphins and other large marine mammals are at the top of the marine food chain, and so if there is any heavy metal pollution in the sea, it will find its way into the dolphins. The study we look at is of the concentration of mercury. This is expected to be different in males and females because the mercury in a female is transferred to her offspring during gestation and nursing. In this study, there were 28 males and 17 females of various ages. There are three columns in the data file:
mercury
, the concentration in the liver, in micrograms per gramage
in yearssex
of the dolphin, male or female.
The data are in http://ritsokiguess.site/datafiles/dolphins.csv as a CSV file. This question appears to have a lot of parts, but most of them ought not to take you too long.
- Read in and display (some of) the data.
Solution
Exactly the usual:
##
## ── Column specification ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
## cols(
## mercury = col_double(),
## age = col_double(),
## sex = col_character()
## )
## # A tibble: 45 x 3
## mercury age sex
## <dbl> <dbl> <chr>
## 1 1.7 0.21 male
## 2 1.72 0.33 male
## 3 8.8 2 male
## 4 5.9 2.2 male
## 5 101 8.5 male
## 6 85.4 11.5 male
## 7 118 11.5 male
## 8 183 13.5 male
## 9 168 16.5 male
## 10 218 16.5 male
## # … with 35 more rows
There are indeed 45 dolphins, with the males listed first and the females listed at the end (as you can check).
\(\blacksquare\)
- Display only the two columns
mercury
andsex
.

Note that mercury:sex
won’t do it, because that will get you age
as well (“mercury
through sex
”).
\(\blacksquare\)
- Display all the columns whose names have exactly three characters, without naming any columns.
Solution
Evidently this is age
and sex
. We are selecting columns on the basis of their names, so we will need a select-helper. The one that works is matches
with a regular expression. This is like the one in the lecture notes where we selected height and weight by selecting columns whose names had two letters and the second one was “t”.
Solution
This is selecting rows and columns, so you’ll have a select
and a filter
. If you do the select
first, you’ll only have the mercury levels left, and you won’t know which dolphins are female. So do the filter
first:
## # A tibble: 17 x 1
## mercury
## <dbl>
## 1 2.5
## 2 9.35
## 3 4.01
## 4 29.8
## 5 45.3
## 6 101
## 7 135
## 8 142
## 9 180
## 10 174
## 11 247
## 12 223
## 13 167
## 14 157
## 15 177
## 16 475
## 17 342
\(\blacksquare\)
- What is the mean mercury concentration for all the dolphins whose age is less than 15?
Solution
Grab only the dolphins with age less than 15 first, and then work out their mean mercury
with summarize
:
## # A tibble: 1 x 1
## m
## <dbl>
## 1 55.5
55.5 (micrograms per gram), as you should say.
Another way is to define a new column that indicates whether the age is less than 15 or not, and do group-by and summarize:
dolphins %>%
mutate(young = ifelse(age<15, "yes", "no")) %>%
group_by(young) %>%
summarize(m = mean(mercury))
## # A tibble: 2 x 2
## young m
## <chr> <dbl>
## 1 no 280.
## 2 yes 55.5
Here, you definitely need to extract the right number out of the output. You can also define groups by logical condition directly, which saves you a step:
## # A tibble: 2 x 2
## `age < 15` m
## <lgl> <dbl>
## 1 FALSE 280.
## 2 TRUE 55.5
Doing it this way, you are probably getting some suspicions about the relationship between age and mercury concentration, but that’s coming up.
\(\blacksquare\)
- What is the mean mercury concentration for all the dolphins whose age is greater than 25?
Solution
The same three choices of method:
## # A tibble: 1 x 1
## m
## <dbl>
## 1 309.
309.2 (micrograms per gram), as you should say.
Or define a new column:
dolphins %>%
mutate(young = ifelse(age>25, "yes", "no")) %>%
group_by(young) %>%
summarize(m = mean(mercury))
## # A tibble: 2 x 2
## young m
## <chr> <dbl>
## 1 no 142.
## 2 yes 309.
Or:
## # A tibble: 2 x 2
## `age > 25` m
## <lgl> <dbl>
## 1 FALSE 142.
## 2 TRUE 309.
In any of these ways, 309.2 micrograms per gram.
\(\blacksquare\)
- Make a suitable graph of these data (all three columns).
Solution
This one ought to be a gimme, but I am using the result in the next part. With two quantitative variables and one categorical, a scatterplot with the sexes indicated by colour:
I think this is clearer without regression lines; the upward trend is clear enough, and it is not clear that the trends are linear (look at the males of the largest ages). Add a smooth trend if you like:
## `geom_smooth()` using method = 'loess' and formula 'y ~ x'
Mercury concentration increases with age for the females, and also does with age for the males up to about age 25, after which it levels off or decreases.
\(\blacksquare\)
- Explain briefly how your graph and your calculations of mean mercury concentration are telling a similar story.
Solution
I wanted to get to a point where we were saying something interesting about the data, rather than just playing with select
and friends.
The graph is showing an increasing trend of mercury concentration with age (at least, for all but the oldest males). The mean calculations are showing that the younger dolphins have a small mercury concentration on average, and the older dolphins have a much larger mean. These are both saying that mercury concentration is increasing with age, so they are consistent.
Extra:
I tried to make this fairly obvious for you by choice of age groups to compare, and this pattern holds for both males and females, so that the mean calculations didn’t need to depend on sex
.
The male means are slightly bigger in the two cases, though the difference between the sexes is small compared to the age effect. (I ran a regression predicting mercury concentration from age and sex, and the sex effect wasn’t even significant.)
A second extra: what if you wanted to divide age up into age groups for comparison of mercury concentration?  The age group intervals are what mathematicians would call “half-open”: the upper limit is included in the interval and the lower limit is not. The age of 15 is thus in the 0-15 interval and not in 15-25.
Now we can work out mean mercury concentration for each age group:
## # A tibble: 3 x 2
## age_group m
## <fct> <dbl>
## 1 (0,15] 55.5
## 2 (15,25] 242.
## 3 (25,60] 309.
or even do it by sex as well:
## `summarise()` has grouped output by 'age_group'. You can override using the `.groups` argument.

Note that there is still no evidence here of the levelling off of the male mercury levels, which happened after age 25, and there was quite a lot of variability there as well.
My take is that if you have numerical data, that’s what you should use, rather than breaking it up into categories. Those dolphins in the 25-60 age group, we don’t know much about their actual ages, and we’ve seen that age and mercury concentration are closely related, so we are throwing away information by categorizing. Some people break things up into categories because that’s what they know how to analyze, but that is never a good reason for you: it means that you need to go learn how to handle the original quantitative data!
\(\blacksquare\)
I found this by googling, after I had scrolled past all the pages of articles about the baseball pitcher who lives in a van.↩
Hockey is similar: teams go on road trips, playing several different teams before returning home. Hockey teams, though, tend to play each team only once on a road trip: for example, a west coast team like the Canucks might play a game in each of Toronto, Montreal, Boston and New York on a road trip. Well, maybe three games in the New York area: one each against the Rangers, Islanders and Devils.↩
If you do this by hand, you’ll get a warning about the chi-squared approximation being inaccurate. This is because of the small frequencies, and not because of the outliers. Those are not damaging the test at all.↩


Guess this is a type
This is details of upcoming events
Reachout Committee is a voluntary, nonprofit community-based organization formed in 2001 in
Mississauga
in response to problems of conflicts and violence in the African Canadian community amongst youth.
Its
membership includes many active members from the local community with youths from all cultural
background, race, gender, sexual orientation, socio-economic background, abilities or ideological
perspective.
Since its inception, Reachout has operated and managed several
programs and projects throughout Toronto, Mississauga and Brampton.
Reachout utilizes many trained
volunteers from the community to support its
activities. We mainly respond to the needs
of our young people. Reachout strives to be a self-sufficient organization that is dependent upon
the material and financial contribution of its members and supporters for the successful
implementation of its work.


HTML DOM open() Method
Example
Open an output stream, add some text, then close the output stream:
document.open();
document.write("
Hello World
");
document.close();
Try it Yourself »
More "Try it Yourself" examples below.
Definition and Usage
The open() method opens an output stream to collect the output from any document.write() or document.writeln() methods.
Once all the writes are performed, the document.close() method causes any output written to the output stream to be displayed.
Note: If a document already exists in the target, it will be cleared.
Note: Do not confuse this method with the window.open() method, which opens a new browser window.
Browser Support
| Method | |||||
|---|---|---|---|---|---|
| open() | Yes | Yes | Yes | Yes | Yes |
Syntax
document.open(MIMEtype, replace)
Parameter Values
| Parameter | Description |
|---|---|
| MIMEtype | Optional. The type of document you are writing to. Default value is "text/html" |
| replace | Optional. If set, the history entry for the new document inherits the history entry from the document which opened this document |
Technical Details
| Return Value: | No return value |
|---|
More Examples
Example
Using parameters; Open an output stream, add some text, then close the output stream:
document.open("text/html", "replace");
document.write("
Hello World!
");
document.close();
Try it Yourself »
Example
Using window.open() together with document.open() to open an output stream in a new window, add some text, then close the output stream:
var
w = window.open();
w.document.open();
w.document.write("
Hello World!
");
w.document.close();
Try it Yourself »
❮ Document Object