Recipe 2.24. Counting Pages of PDF Documents on Mac OS XCredit: Dinu Gherman, Dan Wolfe ProblemYou're running on a reasonably recent version of Mac OS X (version 10.3 "Panther" or later), and you need to know the number of pages in a PDF document. SolutionThe PDF format and Python are both natively integrated with Mac OS X (10.3 or later), and this allows a rather simple solution: #!/usr/bin python import CoreGraphics def pageCount(pdfPath): "Return the number of pages for the PDF document at the given path." pdf = CoreGraphics.CGPDFDocumentCreateWithProvider( CoreGraphics.CGDataProviderCreateWithFilename(pdfPath) ) return pdf.getNumberOfPages( ) if _ _name_ _ == '_ _main_ _': import sys for path in sys.argv[1:]: print pageCount(path) DiscussionA reasonable alternative to this recipe might be to use the PyObjC Python extension, which (among other wonders) lets Python code reuse all the power in the Foundation and AppKit frameworks that come with Mac OS X. Such a choice would let you write a Python script that is also able to run on older versions of Mac OS X, such as 10.2 Jaguar. However, relying on Mac OS X 10.3 or later ensures we can use the Python installation that is integrated as a part of the operating system, as well as such goodies as the CoreGraphics Python extension module (also part of Mac OS X "Panther") that lets your Python code reuse Apple's excellent Quartz graphics engine directly. See AlsoPyObjC is at http://pyobjc.sourceforge.net/; information on the CoreGraphics module is at http://www.macdevcenter.com/pub/a/mac/2004/03/19/core_graphics.html. |


{{selectedSearchOptionsAsJSON()}}
All calculations below exclude filtered results.
Total number of students: {{totalStudents}}
Students concurrently enrolled in both high-school and post-secondary classes: {{totalStudentsConcurrentEnrollment}}
Students progressing to post-secondary institutions (both two-year and four-year): {{totalStudentsToPostSecondary}}
Students graduating a 2-year post-secondary institution with a degree or certificate: {{totalStudentsGraduating2year}}
Students graduating a 4-year post-secondary institution with a degree or certificate: {{totalStudentsGraduating4year}}
Students graduating with STEM degrees or certificates: {{totalStudentsWithSTEMDegrees}}
{{searchResultsAsJSON()}}


{% extends "layout.html" %} {% block page_title %} Money Claims Prototype {% endblock %} {% block proposition_header %} {% set my_account="2" %} {% include "includes/propositional_navigation.html" %} {% endblock %} {% block content %} {% include "includes/phase_banner_beta.html" %} Back There is a problem The start date must not be after today's date When did the debt respite scheme (Breathing Space) start? This is the date Breathing Space started, not the date you received notification of it. For example, {{ date | date | date('D M YYYY') }} The start date must not be after today's date. Day Month Year {% include 'prototypes/features-to-be-built/includes/contact.html' %} {% endblock %}
The start date must not be after today's date
This is the date Breathing Space started, not the date you received notification of it.
For example, {{ date | date | date('D M YYYY') }}
The start date must not be after today's date.


Add to beaker:
- Click in a beaker to set it to receive new material.
- Choose what you want to add from the menu above.
- Drag from beaker to beaker to set them up for transfer.
- Click a button to move material in (or from beaker to beaker)
- Click the icon to empty a beaker.


CrimPapers
Articles published on 16 April 2020
On 16 April 2020, 13 new articles were published in 12 journals.
Legitimizing the Judiciary: A Multilevel Explanation of Factors Influencing Public Confidence in Asian Court Systems
Does Trust in Supervisors Translate to Compliance and Cooperation? A Test of Internal Procedural Justice Among Taiwanese Police Officers by Shun-Yung Kevin Wang, Ivan Y Sun, Yuning Wu, Maarten van Craen, Kevin Kuen-Lung Hsu
“Women’s Inhumanity Towards Women?” Treatment of Female Crime Suspects By Female Officers of the Nigerian Police by Richard Abayomi Aborisade, Similade Fortune Oni
Does the Timing of Incarceration Impact the Timing and Duration of Homelessness? Evidence From “The Transitions to Housing” Study by Robynn Cox, John Lahey, Harmony Rhoades, Benjamin Henwood, Suzanne Wenzel
Book Review: Police Leadership Changing Landscapes by Roger Arditti
Discovering An Organisational Paradox: the Reduction–expansion Perceptions in A Police Training Organisation by Sigalit Shahar, Orit Hazzan
Offenders Convicted of Child Sexual Exploitation Material Offences: Characteristics of Offenders and An Exploration of Judicial Censure by Larissa S. Christensen, George S. Tsagaris
Erin I Kelly, the Limits of Blame: Rethinking Punishment and Responsibility by Hend Hanafy
Exceptional States: the Political Geography of Comparative Penology by Louise Brangan
It’s Wrong, But That’s the Way It Is. Youth, Violence and Justice in North-Eastern Brazil by Peter Anton Zoettl
Landmines and Improvised Explosive Devices: the Lingering Terror of the Islamic State by Aaron Anfinson, Nadia Al-Dayel
Book Review: Nikki Jones, the Chosen Ones: Black Men and the Politics of Redemption by Reuben Jonathan Miller
Ready to Respond: Effects of Lockdown Drills and Training on School Emergency Preparedness by Jaclyn Schildkraut, Amanda B. Nickerson


Type Event: {{board.category}}
What? {{board.description}}
When? {{board.date | date:'d MMM y'}} · {{board.time | date: 'HH:mm'}}
Where? {{board.city}}


Source code for yafs.population
"""
This type of algorithm have two main functions:
*initial_allocation*: invoked at the start of the simulation
*run* invoked according to the assigned temporal distribution.
"""
import logging
[docs]class Population(object):
"""
A population algorithm controls how the message generation of the sensor modules is associated in the nodes of the topology.
This assignment is based on a generation controller to each message. And a generation control is assigned to a node or to several
in the topology both during the initiation and / or during the execution of the simulation.
.. note:: A class interface
Args:
name (str): associated name
activation_dist (function): a distribution function to active the *run* function in execution time
Kwargs:
param (dict): the parameters of the *activation_dist*
"""
def __init__(self, name, activation_dist=None, logger=None):
self.logger = logger or logging.getLogger(__name__)
self.name = name
self.activation_dist = activation_dist
# self.id_process = -1
self.src_control = []
self.sink_control = []
[docs] def set_sink_control(self, values):
"""
localization of sink modules
"""
self.sink_control.append(values)
[docs] def get_next_activation(self):
"""
Returns:
the next time to be activated in the simulation
"""
return self.activation_dist.next()
[docs] def set_src_control(self,values):
"""
Stores the drivers of each message generator.
Args:
values (dict):
"""
self.src_control.append(values)
[docs] def initial_allocation(self,sim,app_name):
"""
Given an ecosystem and an application, it starts the allocation of pure sources in the topology.
.. attention:: override required
"""
self.run()
# override
[docs] def run(self, sim):
"""
This method will be invoked during the simulation to change the assignment of the modules that generate the messages.
Args:
sim (:mod: yafs.core.Sim)
"""
self.logger.debug("Activiting - RUN - Population")
""" User definition of the Population evolution """
[docs]class Statical(Population):
"""
This implementation of a population algorithm statically assigns the generation of a source in a node of the topology. It is only invoked in the initialization.
Extends: :mod: Population
"""
[docs] def initial_allocation(self,sim,app_name):
#Assignment of SINK and SOURCE pure modules
for id_entity in sim.topology.nodeAttributes:
entity = sim.topology.nodeAttributes[id_entity]
for ctrl in self.sink_control:
#A node can have several sinks modules
if entity["model"]==ctrl["model"]:
#In this node there is a sink
module = ctrl["module"]
for number in range(ctrl["number"]):
sim.deploy_sink(app_name, node=id_entity, module=module)
#end for sink control
for ctrl in self.src_control:
# A node can have several source modules
if entity["model"] == ctrl["model"]:
msg = ctrl["message"]
dst = ctrl["distribution"]
for number in range(ctrl["number"]):
idsrc = sim.deploy_source(app_name,id_node=id_entity,msg=msg,distribution=dst)
# the idsrc can be used to control the deactivation of the process in a dynamic behaviour
#end for src control
#end assignments


WITNESS LIST Public School Finance, Select Committee September 12, 2003-10:00A Public School Finance On: Jukes, Ian (Self and Infosavvy Group)


Team A:
2 out of 3
3 out of 5
Single
Team B:
Play to:
Point cap:
Continue
Team A
I:
VI:
V:
II:
III:
IV:
L:
1st Serve
Team B
I:
VI:
V:
II:
III:
IV:
L:
1st Serve
Continue
Final Set:
Play to:
Point cap:
Continue
New Match


The Challenge:
Merge your branch locally, delete old branch and pull from upstream for much win!
Step: Merge Locally
Your pull request has been merged! Now, since you know that you definitely want those updates in your forked version, and your branch is in good working order, merge it into the main branch on your forked repository, in this case, 'gh-pages'.
First, move into the branch you want to merge into — in this case, branch 'gh-pages'.
git checkout gh-pages
Now tell Git what branch you want to merge in — in this case, your feature branch that begins with "add-".
git merge <BRANCHNAME>
Tidy up by deleting your feature branch now that it has been merged.
git branch -d <BRANCHNAME>
You can also delete the branch from your fork on GitHub:
git push <REMOTENAME> --delete <BRANCHNAME>
Step: Pull from Upstream
And last but not least, if you pull in updates from the original (since it now shows you on the home page) you'll be up to date and have a version too, live at: yourusername.github.io/patchwork.
To pull from the original upstream:
git pull upstream gh-pages
Congratulations!
You've created local repositories, remote repositories, worked with a collaborator, pushed, pulled and joined the millions of others developing and enriching open source!
Visit jlord.github.io/patchwork to see your name incorporated!
Tips
- Merge a branch into current branch
- Change the branch you're working on
- Delete a local branch
- Delete a remote branch
- Pull from a remote branch
git merge <BRANCHNAME>
git checkout <BRANCHNAME>
git branch -d <BRANCHNAME>
git push <REMOTENAME> --delete <BRANCHNAME>
git pull <REMOTENAME> <BRANCHNAME>


Congress dissolves party unit in Himachal, PCC chief to remain unchanged
In a state-level move, the Himachal Pradesh Youth Congress also dissolved executive committees of its two blocks in Bilaspur district.
by PTIThe Congress has dissolved its party unit in Himachal Pradesh, a release issued by the party said on November 20.
However, the president of the state Pradesh Congress Committee (PCC) shall remain unchanged, the release signed by party general secretary KC Venugopal said.
It added that Congress president Sonia Gandhi had decided to dissolve the executive committees of the PCC, DCC and BCCs in Himachal Pradesh with immediate effect.
In a state-level move, the Himachal Pradesh Youth Congress also dissolved executive committees of its two blocks in Bilaspur district.
The executive panels of Naina Devi and Jukhala blocks were dissolved with immediate effect, state Youth Congress president Manish Thakur said in a statement.
Thakur said the executive panels were dissolved with the consent of the All-India Youth Congress secretary, Jagdev Gaga, as several of their members were above age.
Executive panels of other blocks would be dissolved soon, he added.


Tiles are the representation of an application in Start and can use tile and badge
notifications to display new, relevant, and tailored content to the user.
Tile notifications are specified in XML, and contain text and images in a pre-defined
layout.
Applications must always include a square logo in the manifest, but applications
that want to use wide templates MUST include a wide logo as well. If an application
supports a wide tile, it is STRONGLY RECOMMENDED to send both wide and square templates
in one XML payload since users decide what size your application's tile will be.
This scenario demonstrates how to send a tile notification with text.


My thrist for knowledge is unending.
As a self-taught web designer, creative writer, sketch artist and a swimmer, it is my strong belief that one should keep on learning throughout life. No number of skills are too many and no knowledge is too great, there's always more out there and if you won't grab it, someone else will.
I have a very diverse plethora of skills at my disposal, which I've been collecting for a long, long time. Who would've thought that I would be using my writing skills here? Maybe tomorrow I'll have to swim an ocean....
I come from Pathankot, a small town in the state of Punjab in northern India. Currently pursuing my bachelors in computer science, I do believe that in times to come, I'll be able to use my skills in a better way, not just for myself, but the people around me as well.


Lets build and related REST build triggers be accessed even when anonymous users cannot see Jenkins.
Plugin Information |
|---|
View Build Authorization Token Root on the plugin site for more information. |
Usage
The use case is that Jenkins is secured so that anonymous users lack overall read permissions. Say you want to triggers builds of certain jobs from a script. You can pick a sufficiently authenticated user and use that person’s API token to POST to job/NAME/build
. But this grants that person’s full permissions to anyone who can see the script, which is hazardous.
The usual workaround for this issue is to define a build authorization token in job configuration, and have the script ping job/NAME/build?token=SECRET
. Unfortunately Jenkins checks URIs hierarchically and just getting as far as job/NAME/
requires authentication.
This plugin offers an alternate URI pattern which is not subject to the usual overall or job read permissions. Just issue an Http GET or POST to buildByToken/build?job=NAME&token=SECRET
. This URI is accessible to anonymous users regardless of security setup, so you only need the right token.
Folder are supported. If a job named myJob
is inside a folder named myFolder
, then the NAME
is myFolder/myJob
(without the interleaving "job/"
string).
(The variant sub-URIs buildWithParameters
and polling
are also supported, as is the usual delay
query parameter.)
To create a token for your job, go to the job configuration, select "Trigger Builds Remotely" in the build triggers section. The token you set here is what you will pass via the url.
Examples
Trigger the RevolutionTest job with the token TacoTuesday
buildByToken/build?job=RevolutionTest&token=TacoTuesday
Trigger the RevolutionTest job with the token TacoTuesday and parameter Type supplied with the value Mexican
buildByToken/buildWithParameters?job=RevolutionTest&token=TacoTuesday&Type=Mexican
Changelog
Version 1.4 (2016 May 03)
- JENKINS-25637 Do not require a CSRF crumb to trigger a build.
Version 1.3 (2015 Aug 11)
- JENKINS-22849 Include queue item location in HTTP response, just like the core endpoint does.
Version 1.2 (2015 Mar 08)
- JENKINS-26693 Ability to trigger Workflow builds.
Version 1.1 (2014 Feb 10)
- Added logging to make it easier to diagnose why a given request was rejected. As a Jenkins admin, create a logger covering
org.jenkinsci.plugins.build_token_root
atFINE
or below.
Version 1.0 (2013 May 14)
- Initial release.


{% extends "base.html" %} {% block title %}How Does it Work?{% endblock %} {% block description %}EventBot works by storing a secure token from Google Calendar that allows it to create events when you send email to your personal EventBot address.{% endblock %} {% block h1 %}
After you authorize EventBot to access your Google Calendar account, EventBot will create a unique, unguessable email address for you (something like W8VNdWxg@myeventbot.appspotmail.com).
Remember this address (by adding it to your address book or contacts in your email program, for example). Any time you send an email to this address, EventBot will try to interpret the subject line as an event description (using Google's Quick Add) and create that event in your Google Calendar.
EventBot never knows your Google Calendar username and password. All we store is a “token” from Google that can be used to create events on your calendar. EventBot will never use this token except in response to emails you send to your personal EventBot address. You can also revoke this token at any time (for example if someone else gets hold of your personal EventBot address, or you want to stop using EventBot) from your Google Account page.
Sounds good, sign me up!Still have questions? We'd love to hear from you on Twitter or via email!
{% endblock %}


Your email or username
Your password
Keep me logged in
Not a member yet ? Join us
Your username
Your email
Please confirm your password
Already a member ? Go and log in


{{ define "main" }} Learn Learn all about LoRaWAN and The Things Network! {{ with .Site.GetPage "/lorawan" }} {{ with .Params.image }} {{ end }} {{ .Description | plainify }} Read {{ end }} Show off your LoRaWAN knowledge! Get a The Things Certification badge. Read {{ with .Site.GetPage "/quick-start" }} {{ .Description | plainify }} Read {{ end }} {{- range .Site.Menus.community }} {{ .Name }} {{ with .Params.image }} {{ end }} {{ .Pre | plainify }} Learn More {{- end }} {{ .Content }} {{ end }}
Learn all about LoRaWAN and The Things Network!


Stratus
Enter a city and state below to view weather data.
Select a state
Alabama
Alaska
Arizona
Arkansas
California
Colorado
Connecticut
District of Columbia
Delaware
Florida
Georgia
Hawaii
Iowa
Idaho
Illinois
Indiana
Kansas
Kentucky
Louisiana
Massachusetts
Maryland
Maine
Michigan
Minnesota
Missouri
Mississippi
Montana
North Carolina
North Dakota
Nebraska
New Hampshire
New Jersey
New Mexico
Nevada
New York
Ohio
Oklahoma
Oregon
Pennsylvania
Rhode Island
South Carolina
South Dakota
Tennessee
Texas
Utah
Virginia
Vermont
Washington
Wisconsin
West Virginia
Wyoming
Search
Icon Legend
Day icon
Night icon
Description
clear sky
few clouds
scattered clouds
broken clouds
shower rain
rain
thunderstorm
snow
mist


Top Message
OMRON Ventures strives to create a new world by joining hands with entrepreneurs all over the globe who see things in their own freeway, who are unencumbered by conventional practice, and who seriously believe they can change the world. In particular, in today's society that is overflowing with data, we aim to create new value by leveraging the data as an asset, to realize a world that is free from disease, a world where humans and machines work together in harmony, an autonomous world that enables optimization of an individual simultaneously with optimization of the whole.
Tomoko Inoue, Chief Executive Officer
Story of an OMRON VC
Venture capital in Japan started from OMRON
It was Kazuma Tateishi, founder of OMRON, who established Kyoto Enterprise Development (KED, 1972-1979), known to be the oldest private venture capital firm in Japan.
Corporate Data
| Company Name | OMRON VENTURES CO., LTD. |
|---|---|
| Location | Shinagawa Front Building 7F, 2-3-13, Konan, Minato-ku, Tokyo 108-0075, Japan |
| Established | July 1, 2014 |
| Business Lines | Investment in startup companies, promotion of business development, and business incubation |
| Contact | Tel : +81 (3) 6718-3433 Fax : +81 (3) 6718-3639 Mail<EMAIL_ADDRESS>|


<< return to Blog Home
just my musings...
The one with the ...
9/19/2014 :: Phase 0 Week 1
main home facebook twitter linkedin
just my musings...
9/19/2014 :: Phase 0 Week 1
main home facebook twitter linkedin


This is a glob implementation in JavaScript. It uses the minimatch
library to do its matching.
The API has changed dramatically between 2.x and 3.x. This library is now 100% JavaScript, and the integer flags have been replaced with an options object.
Also, there's an event emitter class, proper tests, and all the other things you've come to expect from node modules.
And best of all, no compilation!
var glob = require("glob")
// options is optional
glob("**/*.js", options, function (er, files) {
// files is an array of filenames.
// If the `nonull` option is set, and nothing
// was found, then files is ["**/*.js"]
// er is an error object or null.
})
Please see the minimatch documentation for more details.
Supports these glob features:
**
matchingSee:
man sh
man bash
man 3 fnmatch
man 5 gitignore
pattern
{String} Pattern to be matchedoptions
{Object}cb
{Function}
err
{Error | null}matches
{Array<String>} filenames found matching the patternPerform an asynchronous glob search.
pattern
{String} Pattern to be matchedoptions
{Object}Perform a synchronous glob search.
Create a Glob object by instanting the glob.Glob
class.
var Glob = require("glob").Glob
var mg = new Glob(pattern, options, cb)
It's an EventEmitter, and starts walking the filesystem to find matches immediately.
pattern
{String} pattern to search foroptions
{Object}cb
{Function} Called when an error occurs, or matches are found
err
{Error | null}matches
{Array<String>} filenames found matching the patternNote that if the sync
flag is set in the options, then matches will
be immediately available on the g.found
member.
minimatch
The minimatch object that the glob uses.options
The options object passed in.error
The error encountered. When an error is encountered, the
glob object is in an undefined state, and should be discarded.aborted
Boolean which is set to true when calling abort()
. There
is no way at this time to continue a glob search after aborting, but
you can re-use the statCache to avoid having to duplicate syscalls.end
When the matching is finished, this is emitted with all the
matches found. If the nonull
option is set, and no match was found,
then the matches
list contains the original pattern. The matches
are sorted, unless the nosort
flag is set.match
Every time a match is found, this is emitted with the matched.error
Emitted when an unexpected error is encountered, or whenever
any fs error occurs if options.strict
is set.abort
When abort()
is called, this event is raised.abort
Stop the search.All the options that can be passed to Minimatch can also be passed to Glob to change pattern matching behavior. Also, some have been added, or have glob-specific ramifications.
All options are false by default, unless otherwise noted.
All options are added to the glob object, as well.
cwd
The current working directory in which to search. Defaults
to process.cwd()
.root
The place where patterns starting with /
will be mounted
onto. Defaults to path.resolve(options.cwd, "/")
(/
on Unix
systems, and C:\
or some such on Windows.)nomount
By default, a pattern starting with a forward-slash will be
"mounted" onto the root setting, so that a valid filesystem path is
returned. Set this flag to disable that behavior.mark
Add a /
character to directory matches. Note that this
requires additional stat calls.nosort
Don't sort the results.stat
Set to true to stat all results. This reduces performance
somewhat, and is completely unnecessary, unless readdir
is presumed
to be an untrustworthy indicator of file existence. It will cause
ELOOP to be triggered one level sooner in the case of cyclical
symbolic links.silent
When an unusual error is encountered
when attempting to read a directory, a warning will be printed to
stderr. Set the silent
option to true to suppress these warnings.strict
When an unusual error is encountered
when attempting to read a directory, the process will just continue on
in search of other matches. Set the strict
option to raise an error
in these cases.statCache
A cache of results of filesystem information, to prevent
unnecessary stat calls. While it should not normally be necessary to
set this, you may pass the statCache from one glob() call to the
options object of another, if you know that the filesystem will not
change between calls. (See "Race Conditions" below.)sync
Perform a synchronous glob search.nounique
In some cases, brace-expanded patterns can result in the
same file showing up multiple times in the result set. By default,
this implementation prevents duplicates in the result set.
Set this flag to disable that behavior.nonull
Set to never return an empty set, instead returning a set
containing the pattern itself. This is the default in glob(3).nocase
Perform a case-insensitive match. Note that case-insensitive
filesystems will sometimes result in glob returning results that are
case-insensitively matched anyway, since readdir and stat will not
raise an error.debug
Set to enable debug logging in minimatch and glob.globDebug
Set to enable debug logging in glob, but not minimatch.While strict compliance with the existing standards is a worthwhile goal, some discrepancies exist between node-glob and other implementations, and are intentional.
If the pattern starts with a !
character, then it is negated. Set the
nonegate
flag to suppress this behavior, and treat leading !
characters normally. This is perhaps relevant if you wish to start the
pattern with a negative extglob pattern like !(a|B)
. Multiple !
characters at the start of a pattern will negate the pattern multiple
times.
If a pattern starts with #
, then it is treated as a comment, and
will not match anything. Use \#
to match a literal #
at the
start of a line, or set the nocomment
flag to suppress this behavior.
The double-star character **
is supported by default, unless the
noglobstar
flag is set. This is supported in the manner of bsdglob
and bash 4.1, where **
only has special significance if it is the only
thing in a path part. That is, a/**/b
will match a/x/y/b
, but
a/**b
will not. Note that this is different from the way that **
is
handled by ruby's Dir
class.
If an escaped pattern has no matches, and the nonull
flag is set,
then glob returns the pattern as-provided, rather than
interpreting the character escapes. For example,
glob.match([], "\\*a\\?")
will return "\\*a\\?"
rather than
"*a?"
. This is akin to setting the nullglob
option in bash, except
that it does not resolve escaped pattern characters.
If brace expansion is not disabled, then it is performed before any
other interpretation of the glob pattern. Thus, a pattern like
+(a|{b),c)}
, which would not be valid in bash or zsh, is expanded
first into the set of +(a|b)
and +(a|c)
, and those patterns are
checked for validity. Since those two are valid, matching proceeds.
Please only use forward-slashes in glob expressions.
Though windows uses either /
or \
as its path separator, only /
characters are used by this glob implementation. You must use
forward-slashes only in glob expressions. Back-slashes will always
be interpreted as escape characters, not path separators.
Results from absolute patterns such as /foo/*
are mounted onto the
root setting using path.join
. On windows, this will by default result
in /foo/*
matching C:\foo\bar.txt
.
Glob searching, by its very nature, is susceptible to race conditions, since it relies on directory walking and such.
As a result, it is possible that a file that exists when glob looks for it may have been deleted or modified by the time it returns the result.
As part of its internal implementation, this program caches all stat and readdir calls that it makes, in order to cut down on system overhead. However, this also makes it even more susceptible to races, especially if the statCache object is reused between glob calls.
Users are thus advised not to use a glob result as a guarantee of filesystem state in the face of rapid changes. For the vast majority of operations, this is never a problem.


{% set title = "Developers" %} {% set current_link = "developers" %} {% extends "layout.html" %} {% block body_container %}
{{gettext('You have more technical information at')}} http://gateway4labs.readthedocs.org/
{{gettext('LMSs will forward SCORM requests to the Lab Manager, which will process them')}}


This Slow-Roasted Celery Will Be Your New Favorite Side Dish
by mbg Editorial AssistantWhen you think of seasonal side dishes, roasted celery might not be high on your list of favorites. But trust us when we say that once you try this slow roasted celery recipe from Yvette van Boven's Home Made In The Oven, the vegetable will surely make it to your weekly dinner rotation. It's fragrant, cozy, and surprisingly filling—with all the fun toppings, you'll feel like you're eating three courses at the same time.
While the blue cheese brings that complex flavor, feel free to leave it out for a true vegan meal. Either way, you'll see that celery is way more than just a crunchy raw veggie used for your favorite dips. Let's give celery the recognition it deserves!
Roasted Celery
Serves 4
Ingredients:
- Sea salt
- 2 bunches celery, halved lengthwise, leaves coarsely chopped
- 3 to 4 cloves garlic, pressed
- 3 tablespoons apple cider
- 6 tablespoons (90 ml) hazelnut oil or good olive oil
- Freshly ground black pepper
- 1 bunch fresh parsley, coarsely chopped
- 3⁄4 cup plus 1 tablespoon (200 ml) vegetable stock, acidified with 2 to 3 tablespoons apple cider
- Heaping 1 cup (150 g) crumbled blue (Stilton) cheese
- 2⁄3 cup (70 g) coarsely chopped hazelnuts
Method:
- Preheat the oven to 400°F (200°C).
- Bring a large pot of salted water to a boil. Blanch the celery for 3 minutes, scoop them out with a slotted spoon, and let drain. Place the celery on a baking sheet, cut sides down.
- Whisk the garlic with the cider and oil and season with salt and pepper.
- Sprinkle the celery with half of the dressing and half of the parsley and slide the baking sheet into the oven. Pour the stock over them and cook for 45 to 60 minutes (depending on the thickness of the celery), until it’s al dente and the tips are coloring.
- Transfer to a serving platter if desired. Drizzle with the rest of the dressing; sprinkle with the rest of the parsley, celery leaves, cheese, and hazelnuts; and serve.
Recipe excerpted from Home Made in the Oven by Yvette van Boven, published by Abrams, 2019.


Introduction
GrPPI is an open source generic and reusable parallel pattern programming interface developed at University Carlos III of Madrid. Basically, GrPPI accommodates a layer between developers and existing parallel programming frameworks targeted to multi-core processors, such as ISO C++ Threads, OpenMP , Intel TBB, and FastFlow. To achieve this goal, the interface leverages modern C++ features, meta-programming concepts, and generic programming to act as switch between those frameworks.
Furthermore, its compact design facilitates the development of parallel applications, hiding away the complexity behind the use of concurrency mechanisms. The parallel patterns supported by GrPPI are targeted for both stream processing and data-intensive applications and can be composed among them to match more complex constructions. In a nutshell, GrPPI advocates for a usable, simple, generic, and high-level parallel pattern interface, allowing users to implement parallel applications without having a deep understanding of today's parallel programming frameworks and third-party interfaces.
Currently, GrPPI supports the following patterns:
- Data parallel patterns
- Task parallel patterns
- Streaming patterns
Additionally, streaming patterns allow the use of multi-context execution, aiming to allow the combination of multiple back-ends for the execution of a single pipeline.
Install and compile instructions
See the install and compile notes.
Publications describing GrPPI
Overview publication
Please cite this publication in any work using our library:
- A Generic Parallel Pattern Interface for Stream and Data Processing. David del Río, Manuel F. Dolz, Javier Fernández, J. Daniel García. Concurrency and Computation: Practice and Experience. ISSN: 1532-0634. DOI: 10.1002/cpe.4175.
Other references
- Parallelizing and optimizing LHCb-Kalman for Intel Xeon Phi KNL processors. Plácido Fernández, David del Río, Manuel .F. Dolz, Javier Fernández, Omar Awile, J. Daniel Garcia PDP 2018
- Supporting Advanced Patterns in GrPPI: a Generic Parallel Pattern Interface. David del Río, Manuel F. Dolz, Javier Fernández, and J. Daniel Garcia. Auto-DaSP 2017 (Euro-Par 2017). Santiago de Compostela, Spain. 28/8-1/9/2017. pp. 55-67. DOI: 10.1007/978-3-319-75178-8_5
- Finding parallel patterns through static analysis in C++ applications. David del Río, Manuel F. Dolz, Luís M. Sanchez, J. Daniel Garcia, Marco Danelutto, and Massimo Torquati. International Journal of High Performance Computing Applications. 2017. DOI: 10.1177/1094342017695639
- A C++ Generic Parallel Pattern Interface for Stream Processing. David Del Río, Manuel F. Dolz, Luis Miguel Sanchez, Javier Garcia Blas and J. Daniel Garcia. 16th International Conference on Algorithms and Architectures for Parallel Processing (ICA3PP). Granada, Spain. 14-16/12/2016. pp. 74-84. DOI: 10.1007/978-3-319-49583-5_5
Acknowledgments
The GrPPI library has been partially supported by:
- Project ICT 644235 **"REPHRASE: REfactoring Parallel Heterogeneous Resource-aware Applications"** funded by the European Commission through H2020 program (2015-2018).
- Project TIN2016-79673-P “Towards Unification of HPC and Big Data Paradigms” funded by the Spanish Ministry of Economy and Competitiveness (2016-2019).


Work Title 1
The Parsons Institute for Information Mapping (PIIM) through funding provided by the Telemedicine & Advanced Technology Research Center (TATRC) is developing a widget-based prototype for the Patient Centered Medical Home (PCMH) environment. Through an active collaboration with the Walter Reed National Military Medical Center (WRNMMC), the prototype provides both a patient and provider portal. This presentation layer is streamlined for easy access to medical information and interaction between patients and healthcare providers.
Credits
Link to Demo (if applicable) [will be a pop up]


--- layout: post esbma_id: 3002 title: Vault 6 date: 2012-08-10 10:00:00 ---
Congratulations to the Vault team here at SourceGear on the release of version 6.0.
So much in the version control world has changed since it was first released almost 10 years ago, but Vault remains popular as the best replacement for SourceSafe.
Enjoy!


About Shane Duan
Shane Duan believes that a successful software project is a project that produce good quality software that the customer needs in a timely fashion. Shane believe that powerful tools and agile practices are the keys to a successful software development project.
With the background of dataabse development, tools development and XP coaching, nowadays Shane is focusing on bringing agile practices into the team, building tools in the open source community. Shane is also contributing the agile community by organizing the BayXP user group, writing blogs on his experiences, and presenting in conferences.
Guidewire
Working for Guidewire, as team lead on Application Framework Team, building shared features among Guidewire insurance products.
ThoughtWorks
Working as a ThoughtWorker, traveling within US and to China for Agile Projects.
Attended role including:
- XP coach for developers, QAs, and Business Analysts
- Architect
- Iteration Manager
- Project Manager
Borland
Working on JBuilder. Areas are:
- Test-Driven Development Support
- J2SE: JUnit Support
- J2EE: Cactus Support
- J2ME: JMicroUnit and Support
- JBuilder Development Testing Support
- Refactoring
- ErrorInsight
- JBuilder MobileSet
- Product Interaction Design
Independent Consultant
Working as an XPdeveloper in Portland, Oregon, 2001, which changed his perspective on the craftsmanship of
Software and he have never turned back since.
Cysive
As a senior consultant delivering enterprise application using RUP.
EquipmentAuction.com
A taste of the excitement and craziness of a startup, and the experience of a software project management that raised many questions.
CSC/SCI
Three years of interacting with Database provided Shane the understanding of relational database that gives his the leverage that he needs
to work with DBA. Shane also picked up PowerBuilder, Shell, and As/400 RPG on the way (not to recommend anyone
to learn them).


Exploring Probabilities
Home
About
Contact/CV
(current)
Contact/CV
Search
Go!
Categories
R
Python
Machine Learning
Statistics
Graphics/
Visualizations
Ramblings


Definition: One person asks another person to marry them
Explication: A marriage proposal is an event where one person asks another to agree to marry them. If the person accepts the proposal, the two are considered to be engaged. In most cases the person proposing is a man and the person accepting is a woman, but alternatively the two may be of the same sex or a woman may ask a man. Proposals can vary widely but many involve the person proposing kneeling on one knee or over dinner at a favorite restaurant, and holding out a ring (known as the "engagement ring") to the person they are asking. The request for marriage is often spoken by the person proposing, but may also be spoken by someone else or presented in written form (e.g. written in the sky with a plane, written in a note, spelled out in alphabet-shaped cookies, etc.). The person proposing will usually give a small speech to the person they are proposing to that states their feelings toward the person. The phrasing "Will you marry me?" is often used as the question, especially if in non-spoken form. Spoken variants include "Will you be my wife/husband?", "Will you do me the honor of becoming my wife?", etc. Both the person asking and the person being asked can be very emotional during this time. The person may reject the proposal by saying no or that they have to think about it. If they accept, they are often crying during the proposal speech. They may accept by saying "yes" or some other affirmation, or by nodding their head, or quickly hugging and kissing the person who asked. Often the proposal is a surprise, so a gasp or other expression of surprise may be made by the person being proposed to when they realize the event is occurring.


List of medieval catalogues
{% if not printing %}
Medieval catalogues > SECULAR INSTITUTIONS: Hospitals, Towns, and the Professions
{% endif %}
-
SECULAR INSTITUTIONS: Hospitals, Towns, and the Professions
-
Beverley hospital
-
SH1 Inventory of church goods, 9 Jan 1419/20 (0)
-
Blyth hospital
-
SH2 Inventory of goods, 24 June 1471 (0)
-
Boston hospital
-
SH3 Bequest by Thomas Nesse, 28 July 1463 (0)
-
Bridport hospital
-
SH6 Inventory of goods, 9 October 1453 (0)
-
Brough-under-Stainmore grammar school
-
Canterbury, St James
-
SH9 Inventory of goods, 1546 (0)
-
Canterbury, St John the Baptist
-
SH10 Bequest by William Garnare, 26 April 1511 (0)
-
SH11 Inventory of goods, 1546 (0)
-
Canterbury, St Nicholas
-
SH12 Inventory of goods, 1546 (0)
-
Coventry guild
-
SH13 Inventory of goods, 15 December 1441 (0)
-
Gateshead hospital
-
SH15 Inventory of goods, 1 February 1326 (0)
-
King's Lynn, St John the Baptist
-
King's Lynn, St Mary Magdalen
-
SH20 List of books taken away, 21 March 1454/5 (0)
-
Ledbury hospital
-
SH21 Inventory of goods, 27 January 1315/16 (0)
-
Lincoln,Holy Innocents
-
SH22 Inventory of goods, 13 August 1316 (0)
-
London bridge chapel
-
SH37 Inventory of chapel goods, 4 November 1350 (0)
-
London, Barber-Surgeons' Co.
-
London, Chancery of Duchy of Lancaster
-
London, Clarenceux King of Arms
-
London, Guildhall library
-
London, hospital of St Bartholomew
-
London, hospital of St Giles
-
London, hospital of St Katherine
-
SH30 Bequest by John Ricard, 14 December 1448 (0)
-
SH31 Inventory of goods, 2 March 1545/6 (0)
-
London, hospital of St Mary Elsing
-
London, hospital of St Mary of Bethlehem
-
SH35 Inventory of goods, 6 March × 12 May 1403 (0)
-
London, hospital of St Thomas of Acre
-
SH36 Bequest by John Overton, 1 May 1507 (0)
-
Newcastle-upon-Tyne, hospital of St Mary
-
Norwich, hospital of St Mary Magdalen
-
SH56 Inventory of goods, 1368 (0)
-
Norwich, St Giles
-
SH54 Bequest by John Smith, 11 June 1489 (0)
-
SH55 List of expenditure on books, 1512-13 (0)
-
Ripon, hospital of St John the Baptist
-
SH59 Inventory of goods, 6 September 1370 (0)
-
Ripon, hospital of St Mary Magdalen
-
Rome, English hospital
-
SH62 Inventory of goods, 1 October 1496 (33)
-
SH63 List of donations, November 1498 (34)
-
SH64 Inventory of goods, before 30 March 1501 (29)
-
SH65 Inventory of goods, 1502-3 (104)
-
SH66 Inventory of goods, 6 November 1506 (6)
-
SH67 List of donations and goods, 9 February 1525 (0)
-
SH68 Inventory of goods, 16 May 1525 (0)
-
SH69 Inventory of goods, 26 April 1538 (0)
-
SH70 Inventory of goods, 27 January 1561 (0)
-
SH71 Inventory of goods, 4 May 1562 (0)
-
SH72 Inventory of goods, 1 May 1563 (0)
-
SH73 Inventory of goods, 4 May 1564 (0)
-
SH74 Inventory of goods, 4 May 1565 (0)
-
SH75 Inventory of goods, 4 May 1566 (0)
-
SH76 Inventory of goods, 4 May 1567 (0)
-
SH77 Inventory of goods, 4 May 1568 (0)
-
SH78 Inventory of goods, 4 May 1569 (0)
-
SH79 Inventory of goods, 4 May 1570 (0)
-
SH80 Inventory of goods, 4 May 1571 (0)
-
SH81 Inventory of goods, 4 May 1572 (0)
-
SH82 Inventory of goods, 4 May 1573 (0)
-
SH83 Inventory of goods, 21 May 1574 (0)
-
SH84 Inventory of goods, 21 May 1575 (0)
-
SH85 Inventory of goods, 26 May 1576 (0)
-
SH86 Inventory of goods, 26 August 1577 (0)
-
SH87 Inventory of goods, 17 May 1578 (0)
-
Salisbury hospital
-
SH89 Inventory of goods, 20 December 1418 (0)
-
SH90 Inventory of goods, 1436 (0)
-
Sandwich hospital
-
SH91 Inventory of goods, 28 March 1490 (0)
-
SH92 Inventory of chapel goods, 15 December 1494 (0)
-
SH93 Inventory of goods, 16 April 1496 (0)
-
SH94 Inventory of goods, 21 January 1501/2 (0)
-
SH95 Inventory of goods, 29 May 1525 (0)
-
Sevenoaks, hospital
-
SH96 Inventory of goods, 30 March 1313 (0)
-
Stamford, hospital of St Thomas & St John
-
SH107 Inventory of goods, 20 July 1265 (0)
-
Stamford, St Giles
-
SH106 Inventory of goods, 20 July 1265 (0)
-
Stamford,Browne's Hospital
-
SH105 Account, Michaelmas 1501-Michaelmas 1502 (0)
-
Stratford-upon-Avon, guild of Holy Cross
-
Thetford, hospital
-
SH111 Inventory of goods, 1368 (0)
-
Wainfleet grammar sch
-
SH112 Bequest by Richard Ranson, 7 January 1549 (0)
-
Wakefield bridge chap
-
SH113 Inventory of goods, 12 August 1498 (0)
-
Winchester, St John the Baptist
-
SH120 Inventory of goods, 1441-2 (0)
-
Winchester, St Mary Madgalen
-
SH121 Inventory of goods, c. 1400 (0)
-
Worcester town library
-
SH122 Bequest by Robert Inkberrow, 7 December 1503 (0)
-
Writtle hospital
-
SH123 Inventory of goods, 1 March 1343/4 (0)
-
York bridge chapel
-
SH134 Bequest by Robert de Howm, 1 October 1433 (0)
-
York, hospital of Christ and St Mary
-
York, St Thomas
-
SH131 Inventory of goods, 21 June 1416 (0)
-
SH132 Inventory of goods, 23 November 1451 (0)
-
SH133 Inventory of goods, 22 October 1465 (0)
All data was derived from the List of Identifications by Professor Richard Sharpe.
{% if not printing %}
A key to codes used in the List is available (opens in new tab).{% endif %}
{% include 'includes/indexmenu.html' %}
{% if printing %}{% endif %}
{% endblock %}
{% block search %}
{% endblock %}
{% block useful_links %}
{% endblock %}


--- layout: page title: "Return Policy (US)" description: "Last Updated: June 1, 2015 If you are not satisfied with the Products that you purchased through the Site, Doppler will provide a refund for the cost of the P" ---
If you are not satisfied with the Products that you purchased through the Site, Doppler will provide a refund for the cost of the Product not including any shipping charges within thirty (30) calendar days of your purchase, provided you return the Product in new condition and with the original casing and packaging.
Returning a Product:
Follow these steps to return a Product purchased from our Site:
Please refer to our Warranty Policy for information about our warranty.
Sizing Note
DUBS cannot currently be returned if fit is the main issue. However, please let us know at<EMAIL_ADDRESS>so we can continue to design the best possible products, and please share your DUBS with family and friends. Please see How to Wear in our FAQ section to make sure you’ve got it right.


Stacey Kristen Proctor
Democrat
Project Manager with the Boulder County Community Planning and Permitting Department
I have a Bachelor's degree in Journalism and Mass Communication, with a minor in Ethnic Studies from the University of Colorado, Boulder and Master's degree in Public Administration from the University of Colorado, Denver. In addition, I am a certified Project Management Professional from the Project Management Institute.
80027
I have volunteered for candidates for political office, from local State Senate candidates to Presidential candidates. In 2018, I volunteered in support of Proposition 112, which would have increased the required distance between oil and gas wells and homes. In 2008 I was a precinct captain for the Democratic Party in my precinct. In addition, I have been active in non-partisan civic engagement campaigns, including voter registration, voter education, and voter turn-out. Since 2015, political donations (to the best of my recollection) have included Hillary Clinton, Elizabeth Warren, Fair Fight Georgia, New Era Colorado, several other Act Blue campaigns.
Since Nov. 15, 2015, I have been involved in my community in several ways. First, I have been active with Together Against Neighborhood Drilling (TAND), a local organization working to prevent oil and gas drilling near homes and schools. With this organization, I recruited volunteers, educated the community, testified at the State Legislature, and worked to pass Proposition 112. As a member of the LGBTQ community, I created a support group for other local LGBTQ parents. I have also volunteered as a coach for my son’s soccer team, organized parenting classes for parents at my children’s preschool, and organized neighborhood get-togethers at our local park.
In 2002, I worked on a campaign called Vote for Children. The goal of this campaign was to encourage people who don’t normally vote in mid-term elections to vote. This experience ignited a passion for civic engagement and democracy and since then I have been an advocate for increasing access to voting for all. I have worked for numerous non-profit organizations advocating for labor rights, LGBTQ rights, voting rights, and more. For five years, I worked at the Colorado Energy Office supporting the Weatherization Assistance Program (WAP). WAP is a national program to make low-income homes more energy efficient, while also reducing energy costs for the resident. I was dedicated to making sure that residents in all 64 counties in Colorado had access to this important program. I worked closely with the local service providers to understand the unique challenges throughout the state. The mountain areas had higher costs, due to colder winters and more people having propane as their heating source. Some service providers served multiple counties--some urban and some rural, with the rural areas feeling like they weren’t getting their fair share of services. I traveled throughout the state, meeting with services providers, residents, and other local officials to ensure the program was successful for all Coloradans. In my current role at Boulder County, I actively engage members of the public and other stakeholders in decision-making processes and have made efforts to ensure that underserved populations are meaningfully included in our public engagement efforts.
As a 4th generation Coloradan, raising my children in Colorado, and someone who is passionate about civic engagement, I am interested in serving on the Redistricting Commission because I believe fair Congressional District maps are critical to a healthy democracy and encouraging voters to participate in the democratic process. Serving on this commission would be an incredible opportunity to serve my community and my state in a way that will have a lasting impact far into the future. I would be honored to be able to use my unique experience, skills, and background to help make the new redistricting process in Colorado a success.
As a Project Manager/Planner with Boulder County, my job requires me to consider multiple perspectives and work with diverse stakeholders to come to consensus. For example, as the project manager for Boulder County’s recently adopted Transportation Master Plan, I engaged with many different stakeholders including staff, the public, and staff from other municipalities within Boulder County. We also worked with advocacy organizations for people with disabilities, older adults, the local Chamber of Commerce, and cycling groups. My role was to find a way to incorporate the input from a diverse group of stakeholders, while ensuring the plan still met the overall vision outlined by the Board of County Commissioners and the county’s Comprehensive Plan. I would use these same skills to promote consensus among commissioners on the redistricting commission. It will be important to listen to each other as well as the members of the public, while also ensuring compliance with the requirements outlined to the commissioners.
I have experience managing very complex projects. For example, I was the project manager for the design and construction of stream restoration projects adjacent to road reconstruction projects in Boulder County after the 2013 flood. There were many constraints that impacted how the projects could be built, including resident preferences, regulatory requirements, funding limitations, and physical constraints. In order to successfully complete these projects, the team had to work collaboratively and come up with creative solutions for challenging problems. As a Project Manager I have the ability to understand the minute details of a project, while at the same time, never losing sight of the bigger picture. This skill will allow me to provide meaningful contributions to the Congressional Redistricting Commission and help to achieve the criteria outlined for the redistricting process.
Female


Materials is a set of CSS color variables that follow
Material Design. It supports the
prefers-color-scheme
media query
for
supported browsers
(this allows your users to indicate if they prefer a light or dark
mode).
It is a single file that can be added to your existing CSS that will set CSS variables that can be used to color your website. There are various configurations:
default-light.css defaults to light
default-dark.css defaults to dark
light.css only has light
dark.css only has dark
Works well with small CSS toolkits like tachyons and tailwind.
CSS variables can be used while styling. For example:
.class { color: var(--primary); }
--background
--surface
--primary
--variant
--secondary
--secondary-variant
--error
--on-background
--on-surface
--on-primary
--on-secondary
--on-error
--emph-high
--emph-medium
--disabled
--dp00
--dp01
--dp02
--dp03
--dp04
--dp06
--dp08
--dp12
--dp16
--dp24


Change custom effects from AnimationEffects to onsample functions. Custom effects should now be created by setting the onsample attribute of a KeyframeEffect.
For example, this is deprecated:
var myEffect = new KeyframeEffect( element, function(timeFraction, target, effect) { target.style.opacity = timeFraction; }, 1000); var myAnimation = document.timeline.play(myEffect);
and this should be used insead:
var myEffect = new KeyframeEffect(element, [], 1000); effect.onsample = function(timeFraction, effect, animation) { effect.target.style.opacity = timeFraction; }; var myAnimation = document.timeline.play(myEffect);
timeline.play()
to be called with no argumentsweb-animations-next
and web-animations-next-lite
were
executed on top of a native element.animate
.Deprecated AnimationTiming.playbackRate
.
For example, this is no longer supported:
var player = element.animate( keyframes, {duration: 1000, playbackRate: 2});
Use AnimationPlayer.playbackRate
instead:
var player = element.animate( keyframes, {duration: 1000}); player.playbackRate = 2;
If you have any feedback on this change, please start a discussion on the public-fx mailing list: http://lists.w3.org/Archives/Public/public-fx/
Or file an issue against the specification on GitHub: https://github.com/w3c/web-animations/issues/new
play()
and reverse()
should not force a start timesrequestAnimationFrame
ids and cancelAnimationFrame
The web-animations-js hackers are pleased to announce the release of a new codebase for the Web Animations Polyfill: https://github.com/web-animations/web-animations-js
The previous polyfill has been moved to: https://github.com/web-animations/web-animations-js-legacy
The new codebase is focused on code-size – our smallest target is now only 33kb or 11kb after gzip.
We’ve implemented native fallback. If the target browser provides Web Animations features natively, the Polyfill will use them.
We now provide three different build targets:
web-animations.min.js
- Tracks the Web Animations features that
are supported natively in browsers. Today that means Element.animate
and Playback Control in Chrome. If you’re not sure what features you
will need, start with this.
web-animations-next.min.js
- All of web-animations.min.js plus
features that are still undergoing discussion or have yet to be
implemented natively.
web-animations-next-lite.min.js
- A cut down version of
web-animations-next, removes several lesser used property handlers
and some of the larger and less used features such as matrix
interpolation/decomposition.
Not all features of the previous polyfill have been ported to the new codebase; most notably mutation of Animations and Groups and Additive Animations are not yet supported. These features are still important and will be implemented in the coming weeks.


The Humble Administrator’s Garden resides in the historic city of Suzhou, along the Yangtze river in southeastern China. It is actually the largest garden in Suzhou, covering almost 13 acres. Three fourths of this is taken up by water features, with the rest containing a variety of pavilions, halls, bridges, and landscaping.
Like many of its contemporaries, this garden was built as a sort of relaxation home for a retired politician. A public servant named Wang Xianchen had it built in 1509 ce as a place to garden after working in the northern capital of Beijing his whole life. As such, this garden rejects the regiment and order that characterizes the gardens of the north, in favor of a more winding layout. It is this lack of grandeur and extravagance that gives the garden its name.
You can learn more about the history of chinese gardens and their characteristics by clicking here.
While the site has been renovated over the centuries, it maintains 3 distinct sections:
This garden is covered mostly in water, a pond which contains a small island. Also known as the ‘Supplementary Garden’, it is only about half the size of the central garden. The main feature of this garden other than the pond is Mandarin Duck (Yuanyang) Hall, from which the pond’s ducks can be fed. This section is entered through a traditional 'moon gate'. From here, a series of meandering pathways follow the edge of the lake and link the various buildings of this garden together.
Like the western garden, this section is also dominated by water. This pond however is filled with lotus plants, and is the oldest section of the three. Key to this section is the Hall of Distant Fragrance, used to observe the garden with both the eyes and nose. Another standout feature are the variety of bridges that link the pool’s islands together. There is the Flying Rainbow Bridge, named for its distinctive shimmering reflection. There are also a handful of zig zagging walkways, which allow one to take in the surroundings rather than focus on the destination.
This area features a large space of grass and bamboo, surrounding a series of reflection ponds. This section is the largest due to the expanse of green, but also contains the fewest buildings. A few isolated pavilions dot the landscape, making this the most secluded area of the garden.
Clunas, Craig. Fruitful Sites: Garden Culture in Ming Dynasty China. Durham: Duke UP, 1996. Web. http://vdisk.weibo.com/s/u8bWoDoF4SsV?from=page_100505_profile&wvr=6
Craig, Robert M. "Passages To A Different Universe: The Three Gardens Of Zhuo Zheng Yuan, Suzhou." Southeastern College Art Conference Review 11.3 (1988): 222-229. Art & Architecture Complete. Web. 28 Oct. 2015.
Keswick, Maggie, and Charles Jencks. The Chinese Garden: History, Art & Architecture. New York: Rizzoli, 1978. Print.
Lou, Qingxi, and Lei Zhang. Chinese Gardens. Beijing: China Intercontinental Pr., 2003. Print.
Sui, Yu., and Wei Xun. Chinese Gardens. Hong Kong: Design Media Pub., 2010. Print.
Wang, Qijun. Chinese Architecture. New York: Better Link Press, 2011. Print.
Yu, Yali., Rolf Reiner, and Maria Borchard. Gardens in Suzhou =: Gärten in Suzhou. Stuttgart: Edition Axel Menges, 2003. Print.
Zhang, Liping. "The Garden Ambassadors." Beijing Review 51.30 (2008): 25. Academic Search Complete. Web. 28 Oct. 2015.


block You've disabled ads. If you end up finding this site or any of the other DestinyChecklist
sites helpful, please consider
making a donation with the link below. Or use the link to order the new hardcover newest Destiny Grimoire from Amazon
(or buy something else), I'll get a small commission and it will cost you nothing else.
bug_report You've enabled debug mode. This might do nothing, or it might show extra information
like hashes on certain items.
It will probably make your screen more cluttered and ugly, and may screw up mobile views. If you have any
problems you should turn this back off.
clear If you click below it will sign you out, as well as deleting any locally cached data. This may be good to solve a problem.
It will also lose your preferences for gear prioritizations.  This will not clear any browser level caches, you may wish to clear them manually as well.


--- layout: page tagline: ---
Xun Wang is currently an algorithm engineer at Malong Technologies . He obtained his M.S. of Probability and Statistics in school of mathematics of Sun Yat-Sen University in 2018.
Before that, he got his B.S. degree of Math and Applied Math from Beijing Normal University.Computer Vision, Data Representation, Deep Metric Learning, Image Retrieval.
[CVPR-2019] Xun Wang, Xintong Han, Weilin Huang, Dengke Dong, Matthew R. Scott Multi-Similarity Loss with General Pair Weighting for Deep Metric Learning, (2019) [PDF][Code@Github]
1st-order Graduate Scholarship, Sun Yat-Sen University 2015-2017
The 2nd Prize in 1500M Race of School Athletic Meet 2016
Academic performance ranked 2/7 in the major of Probability and Mathematical Statistics 2015-2018
Deep Metric Learing with 300+ stars
Code at Github
A project providing implements of serval basic loss functions, including binominal deviance loss, triplet loss (Batch all) and so on, in deep metric learning.


An enthusiastic, hardworking, and reliable person with ability to work in a team environment. Likes to discover new things, learn new technologies and concepts. Also likes to help and share with others. Can work with deadlines and has the ability to take logical and analytical approach to solve problems and provide solutions with excellent programming skills and leadership abilities. Also has the potential to overcome challenges successfully.
installing, supporting, and maintaining servers or other computer systems, and planning for and responding to service outages and other problems.Include scripting or light programming, project management for systems-related projects.
GPA-3.5


Class: Aws::ECS::Types::RegisterContainerInstanceRequest
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
|
Class Chain:
self,
Struct
|
|
|
Instance Chain:
self,
::Aws::Structure ,
Struct
|
|
| Inherits: |
Struct
|
| Defined in: | gems/aws-sdk-ecs/lib/aws-sdk-ecs/types.rb |
Overview
Constant Summary
Instance Attribute Summary
-
#attributes ⇒ Array<Types::Attribute>
rw
The container instance attributes that this container instance supports.
-
#cluster ⇒ String
rw
The short name or full Amazon Resource Name (ARN) of the cluster to register your container instance with.
-
#container_instance_arn ⇒ String
rw
The ARN of the container instance (if it was previously registered).
-
#instance_identity_document ⇒ String
rw
The instance identity document for the
::Aws::EC2
instance to register. -
#instance_identity_document_signature ⇒ String
rw
The instance identity document signature for the
::Aws::EC2
instance to register. -
#platform_devices ⇒ Array<Types::PlatformDevice>
rw
The devices that are available on the container instance.
-
#tags ⇒ Array<Types::Tag>
rw
The metadata that you apply to the container instance to help you categorize and organize them.
-
#total_resources ⇒ Array<Types::Resource>
rw
The resources available on the instance.
-
#version_info ⇒ Types::VersionInfo
rw
The version information for the Amazon ECS container agent and Docker daemon that runs on the container instance.
Instance Method Summary
::Aws::Structure
- Included
| #to_hash | Alias for Structure#to_h. |
Instance Attribute Details
#attributes ⇒ Array
<Types::Attribute> (rw)
The container instance attributes that this container instance supports.
# File 'gems/aws-sdk-ecs/lib/aws-sdk-ecs/types.rb', line 7530
class RegisterContainerInstanceRequest < Struct.new( :cluster, :instance_identity_document, :instance_identity_document_signature, :total_resources, :version_info, :container_instance_arn, :attributes, :platform_devices, : ) SENSITIVE = [] include Aws::Structure end
#cluster ⇒ String
(rw)
The short name or full Amazon Resource Name (ARN) of the cluster to register your container instance with. If you do not specify a cluster, the default cluster is assumed.
# File 'gems/aws-sdk-ecs/lib/aws-sdk-ecs/types.rb', line 7530
class RegisterContainerInstanceRequest < Struct.new( :cluster, :instance_identity_document, :instance_identity_document_signature, :total_resources, :version_info, :container_instance_arn, :attributes, :platform_devices, : ) SENSITIVE = [] include Aws::Structure end
#container_instance_arn ⇒ String
(rw)
The ARN of the container instance (if it was previously registered).
# File 'gems/aws-sdk-ecs/lib/aws-sdk-ecs/types.rb', line 7530
class RegisterContainerInstanceRequest < Struct.new( :cluster, :instance_identity_document, :instance_identity_document_signature, :total_resources, :version_info, :container_instance_arn, :attributes, :platform_devices, : ) SENSITIVE = [] include Aws::Structure end
#instance_identity_document ⇒ String
(rw)
The instance identity document for the ::Aws::EC2
instance to register.
This document can be found by running the following command from the
instance: curl
http://<IP_ADDRESS>/latest/dynamic/instance-identity/document/
# File 'gems/aws-sdk-ecs/lib/aws-sdk-ecs/types.rb', line 7530
class RegisterContainerInstanceRequest < Struct.new( :cluster, :instance_identity_document, :instance_identity_document_signature, :total_resources, :version_info, :container_instance_arn, :attributes, :platform_devices, : ) SENSITIVE = [] include Aws::Structure end
#instance_identity_document_signature ⇒ String
(rw)
The instance identity document signature for the ::Aws::EC2
instance to
register. This signature can be found by running the following
command from the instance: curl
http://<IP_ADDRESS>/latest/dynamic/instance-identity/signature/
# File 'gems/aws-sdk-ecs/lib/aws-sdk-ecs/types.rb', line 7530
class RegisterContainerInstanceRequest < Struct.new( :cluster, :instance_identity_document, :instance_identity_document_signature, :total_resources, :version_info, :container_instance_arn, :attributes, :platform_devices, : ) SENSITIVE = [] include Aws::Structure end
#platform_devices ⇒ Array
<Types::PlatformDevice> (rw)
The devices that are available on the container instance. The only supported device type is a GPU.
# File 'gems/aws-sdk-ecs/lib/aws-sdk-ecs/types.rb', line 7530
class RegisterContainerInstanceRequest < Struct.new( :cluster, :instance_identity_document, :instance_identity_document_signature, :total_resources, :version_info, :container_instance_arn, :attributes, :platform_devices, : ) SENSITIVE = [] include Aws::Structure end
#tags ⇒ Array
<Types::Tag> (rw)
The metadata that you apply to the container instance to help you categorize and organize them. Each tag consists of a key and an optional value. You define both.
The following basic restrictions apply to tags:
Maximum number of tags per resource - 50
For each resource, each tag key must be unique, and each tag key can have only one value.
Maximum key length - 128 Unicode characters in UTF-8
Maximum value length - 256 Unicode characters in UTF-8
If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.
Tag
keys and values are case-sensitive.Do not use
aws:
,AWS:
, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.
# File 'gems/aws-sdk-ecs/lib/aws-sdk-ecs/types.rb', line 7530
class RegisterContainerInstanceRequest < Struct.new( :cluster, :instance_identity_document, :instance_identity_document_signature, :total_resources, :version_info, :container_instance_arn, :attributes, :platform_devices, : ) SENSITIVE = [] include Aws::Structure end
#total_resources ⇒ Array
<Types::Resource> (rw)
The resources available on the instance.
# File 'gems/aws-sdk-ecs/lib/aws-sdk-ecs/types.rb', line 7530
class RegisterContainerInstanceRequest < Struct.new( :cluster, :instance_identity_document, :instance_identity_document_signature, :total_resources, :version_info, :container_instance_arn, :attributes, :platform_devices, : ) SENSITIVE = [] include Aws::Structure end
#version_info ⇒ Types::VersionInfo (rw)
The version information for the Amazon ECS container agent and Docker daemon that runs on the container instance.
# File 'gems/aws-sdk-ecs/lib/aws-sdk-ecs/types.rb', line 7530
class RegisterContainerInstanceRequest < Struct.new( :cluster, :instance_identity_document, :instance_identity_document_signature, :total_resources, :version_info, :container_instance_arn, :attributes, :platform_devices, : ) SENSITIVE = [] include Aws::Structure end


{% extends 'layout.html' %} {% block title %}Flight Confirmation{% endblock %} {% block navbar %} CRM-FCTH Packages (current) Flights Bookings Hotel Bookings Chat {% if call_or_get(current_user.is_authenticated) %} Employee's Overview {% else %} Employee Login {% endif %} {% endblock %} {% block jumbtron %}
An email will be replied to you within 1 working day for confirmation of your request
Return to Packages
Request Flight Reservation


Nicaragua is rapidly transitioning to low carbon electricity generation – primarily with wind power – but it still requires bunker fuel oil generators to meet demand for electricity at peak times (and when electricity is most expensive during the day), to balance variability from wind generators. Oil is one of the most expensive fuels for electricity generation and relying on it comes at great expense to the country, as it affects economic efficiency, energy security, and the budgets of households and small businesses throughout the country.
This project explored a participatory approach to a low-carbon power transition by developing tools to shift the timing of electricity consumption from residential and commercial loads to periods of abundant electricity supply. Using existing ‘off-the-shelf’ technology and flexible demand concepts which have been amply explored in the literature, the FlexBox project piloted what we believe to be the first co-implementation of behavioral energy efficiency and demand response in Latin America. 60 households and micro-enterprises were recruited to participate in the program, and 30 of them received a sensor gateway called the FlexBox and a suite of energy information products that could help them manage their consumption (paper energy reports, and SMS). The remaining 30 participants were used as a control and received nothing.
The project lasted from January 2015 (baseline) to December 2016 (endline). At the end of the study, participants in the treatment group had reduced their energy consumption by 8% due to their own individual energy management, and had reduced 83 Watt-hours per peak hour price event of flexible demand (on average). At scale (2 million people, or a third of the population engaging in behavioral energy efficiency), the country could save $US 29 million a year using average market prices, and $US 7 million if only 8 percent of the people participated (or 500,000 people). Flexible demand at scale could, on the other hand, save $US 18 million every year (using peak prices), and save $US 5 million if only a small fraction of the population were participating.
The FlexBox project was implemented in Managua (Nicaragua) as a joint collaboration between researchers from the University of California Berkeley, Nicaragua’s National Engineering University, with the lead technology integration, development and implementation being performed by Kimera Systems (formerly Niuera). Local implementation and logistics management was performed by Kimera Systems (formerly Niuera), and Pelican S.A.. Kimera Systems (formerly Niuera) is a former National Geographic and USAID Development Impact Lab awardee.
The project was funded in part by a National Geographic Energy Challenge Grant, a USAID Development Impact Lab Innovation Grant, and an Interamerican Development Bank IDEAS Grant.
Check out our work!This code is licensed under the MIT Open Source License. The MIT License is a permissive free software license originating at the Massachusetts Institute of Technology (MIT).[5] As a permissive license, it puts only very limited restriction on reuse and has, therefore, an excellent license compatibility. The MIT license permits reuse within proprietary software provided that all copies of the licensed software include a copy of the MIT License terms and the copyright notice. You can read more about it here.


Flavours of India
Select the food you need
select the time and address to deliver
Pick your box at the desired location and time
Order on web or mobile


Due to general depression during High School, I began taking Wellbutrin and Provigil sometime after I finished a clinical trial, at the tail end of junior year. My depression did in fact begin to subside during senior year, and now that I am in college, I am much better. However, this may be due more to a change in environment, and a more positive senior year generally.
The actual effects of Wellbutrin on the body may be subtle to notice. Because I was taking Provigil during this period, it's hard to say exactly what caused what reactions. I am fairly sure, however, the Wellbutrin has a very slow onset, sometime after a month to several weeks it began to really affect my mood. I never noticed any particular feelings in my body or different thought patterns. Wellbutrin itself never made me ill.
I continued recreationally using other substances during this period, and I can give an overview.
There is no real difference between the marijuana, opium, and cocaine experiences I had on wellbutrin and the experience my peers had on the same doses of the substance.
Mushrooms (1/16oz): I think that the effects of psychedelic mushrooms are somehow hushed when under the influence of wellbutrin. People around me are simply tripping harder. On the other hand, there were no negative side-effects. Both of my mushroom trips were done while taking full doses of wellbutrin, and both were rewarding experiences.
DXM (150-250mg): This was undoubtedly the worst experience I had while taking wellbutrin. I did in fact have a 'trip' of sorts, and my peers told me that the disoriented thought patterns were similar to their own during the trip. But right at the onset I threw up, and then continued to throw up throughout the trip at regular intervals. I'm fairly sure that it was the wellbutrin that caused this to happen. It was extremely unpleasant.
2c-t-2 and 2c-t-21: On 2c-t-2, I noticed a headache at the end of the trip that my friends did not. And on 2c-t-21 I noticed a body load that others had not had. However, it may just be a personal reaction. I tripped just as hard as everyone else on these chemicals.
Acid: I tripped very lightly, as with mushrooms, but because I only took one stale hit, it's probable that I simply didn't have enough to really get the full effects.
In conclusion, while wellbutrin has helped me with depression. It's difficult to say where things will go horrifically wrong, when I was taking DXM, I thought I was going to die. I've decided to stop taking wellbutrin, there comes a time when I have to stop relying on a crutch and approach the problem in other ways.
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.


Material Recognition
Classification of a site image into mutiple classes of construction material
Contents
Classes of construction material
Different classes considered in the study * Concrete * Brick * Asphalt * Soil * Timber
Initialization
inputImage = struct('Image',{},'Class',{}); patchFeatures = struct('Feature',{}, 'Class',{}); f = @features; patchSize = [32 32]; patchedImage = {};
Read the dataset from the directory
%Choosing the directory containing dataset and extracting path of all %subfolders disp 'Select train data folder' dataDir= uigetdir(); subFolders = genpath(dataDir); subFolders_pathname = strsplit(subFolders,';'); numberOfClasses = length(subFolders_pathname) - 2; % -1 because parent class is not is not class but % but is in subFolders_pathname z = 1; %Reading the images, dividing them in patches and finally storing them for k = 2:length(subFolders_pathname)-1 % Extracting class name className = strsplit(subFolders_pathname{1,k},filesep); className = char(className(end)); % Getting the image files in subfolder imagefiles = dir(subFolders_pathname{1, k}); nfiles = length(imagefiles); %Inside the subfolder, reading image for i = 3 : nfiles currentfile = imagefiles(i); currentImage = imread([subFolders_pathname{1, k},char(filesep),currentfile.name]); % transforming the gray scale to RGB storage format, if any if size(currentImage,3) == 1 currentImage(:,:,2) = currentImage(:,:,1); currentImage(:,:,3) = currentImage(:,:,1); end % Storing the image and corresponding class label inputImage(z).Image = currentImage; inputImage(z).Class = className; z = z + 1; end end
Select train data folder
Visualization of the dataset(1/2)
Dataset from the web
figure('Name', inputImage(1).Class) imshow(inputImage(1).Image); figure('Name', inputImage(10).Class) imshow(inputImage(10).Image);
Visualization of the dataset(2/2)
Dataset from the Construction site
disp 'Select Construction Data' consData = uigetdir(); consImage = dir(consData); for i=3:length(consImage) consI = imread([consData filesep consImage(i).name]); figure() imshow(consI); end
Select Construction Data Warning: Image is too big to fit on screen; displaying at 33% Warning: Image is too big to fit on screen; displaying at 33%
Visualization of the patched image
Displaying the patch image for presentation
for i = 5 pi = 1; currentImage = inputImage(i).Image; for j = 1:patchSize(1):(size(currentImage,1)-(patchSize(1)-1)) pj = 1; for k = 1:patchSize(1):(size(currentImage,2)-(patchSize(1)-1)) patch = currentImage(j:j+(patchSize(1)-1),k:k+(patchSize(1)-1),:); patchedImage(pi,pj) = {patch}; pj = pj+1; end pi = pi+1; end end %Display the original image figure('Name',inputImage(i).Class) imshow(inputImage(i).Image) % Loop to plot all patched images in one figure figure('Name', [inputImage(i).Class 'Patched']); k =1; for di = 1 : size(patchedImage,1); for dj = 1 : size(patchedImage,2); this_image = patchedImage{di,dj}; ax = subplot(size(patchedImage,1),size(patchedImage,2),k); imshow(this_image, 'Parent', ax); k = k+1; end end
Feature Extraction and Selection
Subdividing the images in patches of size 'patchSize', calculating features and storing in a matrix
z = 1; for i = 1:size(inputImage,2) currentImage = inputImage(i).Image; for j = 1:patchSize(1):(size(currentImage,1)-(patchSize(1)-1)) for k = 1:patchSize(1):(size(currentImage,2)-(patchSize(1)-1)) patch = currentImage(j:j+(patchSize(1)-1),k:k+(patchSize(1)-1),:); patchFeatures(z).Feature = f(patch); patchFeatures(z).Class = inputImage(i).Class; z = z+1; end end end figure('name', 'Features visualization (GLCM)') imshow(patchFeatures(210).Feature{1,1})
Naive Bayes Classifier training
Dimensionality reduction of feature space by PCA and classifier training
featureVector = zeros(length(patchFeatures), 64); for i=1:length(patchFeatures) featureVector(i,:) = reshape(patchFeatures(i).Feature{1,1}, [1 64]); % reshape(patchFeatures(i).Features{1,1}, [1 1024])]; end % Principal Component Analysis p = pca(featureVector); %selecting features for the first 30 principal components p = p(:,1:30); fm = featureVector * p; % Training classifier pred = ML(fm, {patchFeatures.Class}');


The DaoFactory uses the CloneFactory to let you create a cost effective DaoRegistry and initialize and configure it properly. It also serves as a registry of created DAOs to help others find a DAO by name.
The state consists of two mappings to get the sha3(name) of a DAO given an address and the address given the sha3(name).
mapping(address => bytes32) public daos mapping(bytes32 => address) public addresses
We also have the address of the identityDao address public identityAddress that is being used to clone the DAO.
/**
* @notice Creates and initializes a new DaoRegistry with the DAO creator and the transaction sender.
* @notice Enters the new DaoRegistry in the DaoFactory state.
* @dev The daoName must not already have been taken.
* @param daoName The name of the DAO which, after being hashed, is used to access the address.
* @param creator The DAO's creator, who will be an initial member.
*/
function createDao(string calldata daoName, address creator) external
/**
* @notice Returns the DAO address based on its name.
* @return The address of a DAO, given its name.
* @param daoName Name of the DAO to be searched.
*/
function getDaoAddress(string calldata daoName)
public
view
returns (address)
/**
* @notice Adds adapters and sets their ACL for DaoRegistry functions.
* @dev A new DAO is instantiated with only the Core Modules enabled, to reduce the call cost. This call must be made to add adapters.
* @dev The message sender must be an active member of the DAO.
* @dev The DAO must be in `CREATION` state.
* @param dao DaoRegistry to have adapters added to.
* @param adapters Adapter structs to be added to the DAO.
*/
function addAdapters(DaoRegistry dao, Adapter[] calldata adapters)
external
/**
* @notice Configures extension to set the ACL for each adapter that needs to access the extension.
* @dev The message sender must be an active member of the DAO.
* @dev The DAO must be in `CREATION` state.
* @param dao DaoRegistry for which the extension is being configured.
* @param extension The address of the extension to be configured.
* @param adapters Adapter structs for which the ACL is being set for the extension.
*/
function configureExtension(
DaoRegistry dao,
address extension,
Adapter[] calldata adapters
) external
/**
* @notice Removes an adapter with a given ID from a DAO, and adds a new one of the same ID.
* @dev The message sender must be an active member of the DAO.
* @dev The DAO must be in `CREATION` state.
* @param dao DAO to be updated.
* @param adapter Adapter that will be replacing the currently-existing adapter of the same ID.
*/
function updateAdapter(DaoRegistry dao, Adapter calldata adapter) external
/**
* @notice Event emitted when a new DAO has been created.
* @param _address The DAO address.
* @param _name The DAO name.
*/
event DAOCreated(address _address, string _name)


| [ Team LiB ] |
26.1 Python's distutilsThe distutils are a rich and flexible set of tools to package Python programs and extensions for distribution to third parties. I cover typical, simple use of the distutils for the most common packaging needs. For in-depth, highly detailed discussion of distutils, I recommend two manuals that are part of Python's online documentation: Distributing Python Modules (available at http://www.python.org/doc/current/dist/), and Installing Python Modules (available at http://www.python.org/doc/current/inst/), both by Greg Ward, the principal author of the distutils. 26.1.1 The Distribution and Its RootA distribution is the set of files to package into a single file for distribution purposes. A di stribution may include zero, one, or more Python packages and other Python modules (as covered in Chapter 7), as well as, optionally, Python scripts, C-coded (and other) extensions, supporting data files, and auxiliary files containing metadata about the distribution itself. A distribution is said to be pure if all code it includes is Python, and non-pure if it also includes non-Python code (most often, C-coded extensions). You should normally place all the files of a distribution in a directory, known as the distribution root directory, and in subdirectories of the distribution root. Mostly, you can arrange the subtree of files and directories rooted at the distribution root to suit your own organizational needs. However, remember from Chapter 7 that a Python package must reside in its own directory, and a package's directory must contain a file named _ _init_ _.py (or subdirectories with _ _init_ _.py files, for subpackages) as well as other modules belonging to that package. 26.1.2 The setup.py ScriptThe distribution root directory must contain a Python script that by convention is named setup.py. The setup.py script can, in theory, contain arbitrary Python code. However, in practice, setup.py always boils down to some variation of: from distutils.core import setup, Extension setup( many keyword arguments go here ) All the action is in the parameters you supply in the call to setup. You should not import Extension if your setup.py deals with a pure distribution. Extension is needed only for non-pure distributions, and you should import it only when you need it. It is fine to have a few statements before the call to setup, in order to arrange setup's arguments in clearer and more readable ways than could be managed by having everything inline as part of the setup call. The distutils.core.setup function accepts only keyword arguments, and there are a large number of such arguments that you could potentially supply. A few deal with the internal operations of the distutils themselves, and you never supply such arguments unless you are extending or debugging the distutils, an advanced subject that I do not cover in this book. Other keyword arguments to setup fall into two groups: metadata about the distribution, and information about what files are in the distribution. 26.1.3 Metadata About the DistributionYou should provide metadata about the distribution by supplying some of the following keyword arguments when you call the distutils.core.setup function. The value you associate with each argument name you supply is a string that is intended mostly to be human-readable; therefore, any specifications about the string's format are just advisory. The explanations and recommendations about the metadata fields in the following are also non-normative, and correspond only to common, not universal, conventions. Whenever the following explanations refer to "this distribution," it can be taken to refer to the material included in the distribution, rather than to the packaging of the distribution.
26.1.4 Distribution ContentsA distribution can contain a mix of Python source files, C-coded extensions, and other files. setup accepts optional keyword arguments detailing files to put in the distribution. Whenever you specify file paths, the paths must be relative to the distribution root directory and use / as the path separator. distutils adapts location and separator appropriately when it installs the distribution. Note, however, that the keyword arguments packages and py_modules do not list file paths, but rather Python packages and modules respectively. Therefore, in the values of these keyword arguments, use no path separators or file extensions. When you list subpackage names in argument packages, use Python syntax (e.g., top_package.sub_package). <IP_ADDRESS> Python source filesBy default, setup looks for Python modules (which you list in the value of the keyword argument py_modules) in the distribution root directory, and for Python packages (which you list in the value of the keyword argument packages) as sub-directories of the distribution root directory. You may specify keyword argument package_dir to change these defaults. However, things are simpler when you locate files according to setup's defaults, so I do not cover package_dir further in this book. The setup keyword arguments you will most frequently use to detail what Python source files to put in the distribution are the following.
For each package name string p in the list, setup expects to find a subdirectory p in the distribution root directory, and includes in the distribution the file p/_ _init_ _.py, which must be present, as well as any other file p/*.py (i.e., all the modules of package p). setup does not search for subpackages of p: you must explicitly list all subpackages, as well as top-level packages, in the value of keyword argument packages.
For each module name string m in the list, setup expects to find a file m.py in the distribution root directory, and includes m.py in the distribution.
Scripts are Python source files meant to be run as main programs (generally from the command line). The value of the scripts keyword lists the path strings of these files, complete with .py extension, relative to the distribution root directory. Each script file should have as its first line a shebang line, that is, a line starting with #! and containing the substring python. When distutils install the scripts included in the distribution, distutils adjust each script's first line to point to the Python interpreter. This is quite useful on many platforms, since the shebang line is used by the platform's shells or by other programs that may run your scripts, such as web servers. <IP_ADDRESS> Other filesTo put data files of any kind in the distribution, supply the following keyword argument.
The value of keyword argument data_files is a list of pairs. Each pair's first item is a string and names a target directory (i.e., a directory where distutils places data files when installing the distribution); the second item is the list of file path strings for files to put in the target directory. At installation time, distutils places each target directory as a subdirectory of Python's sys.prefix for a pure distribution, or of Python's sys.exec_prefix for a non-pure distribution. distutils places the given files directly in the respective target directory, never in subdirectories of the target. For example, given the following data_files usage: data_files = [ ('miscdata', ['conf/config.txt', 'misc/sample.txt']) ] distutils includes in the distribution the file config.txt from sub-directory conf of the distribution root, and the file sample.txt from subdirectory misc of the distribution root. At installation time, distutils creates a subdirectory named miscdata in Python's sys.prefix directory (or in the sys.exec_prefix directory, if the distribution is non-pure), and copies the two files into miscdata/config.txt and miscdata/sample.txt. <IP_ADDRESS> C-coded extensionsTo put C-coded extensions in the distribution, supply the following keyword argument.
All the details about each extension are supplied as arguments when instantiating the distutils.core.Extension class. Extension's constructor accepts two mandatory arguments and many optional keyword arguments, as follows.
name is the module name string for the C-coded extension. name may include dots to indicate that the extension module resides within a package. sources is the list of source files that the distutils must compile and link in order to build the extension. Each item of sources is a string giving a source file's path relative to the distribution root directory, complete with file extension .c. kwds lets you pass other, optional arguments to Extension, as covered later in this section. The Extension class also supports other file extensions besides .c, indicating other languages you may use to code Python extensions. On platforms having a C++ compiler, file extension .cpp indicates C++ source files. Other file extensions that may be supported, depending on the platform and on add-ons to the distutils that are still in experimental stages at the time of this writing, include .f for Fortran, .i for SWIG, and .pyx for Pyrex files. See Chapter 24 for information about using different languages to extend Python. In some cases, your extension needs no further information besides mandatory arguments name and sources. The distutils implicitly perform all that is necessary to make the Python headers directory and the Python library available for your extension's compilation and linking, and also provide whatever compiler or linker flags or options are needed to build extensions on a given platform. When it takes additional information to compile and link your extension correctly, you can supply such information via the keyword arguments of class Extension. Such arguments may potentially interfere with the cross-platform portability of your distribution. In particular, whenever you specify file or directory paths as the values of such arguments, the paths should be relative to the distribution root directory—using absolute paths seriously impairs your distribution's cross-platform portability. Portability is not a problem when you just use the distutils as a handy way to build your extension, as suggested in Chapter 24. However, when you plan to distribute your extensions to other platforms, you should examine whether you really need to provide build information via keyword arguments to Extension. It is sometimes possible to bypass such needs by careful coding at the C level, and the already mentioned Distributing Python Modules manual provides important examples. The keyword arguments that you may pass when calling Extension are the following:
26.1.5 The setup.cfg FileThe distutils let the user who is installing your distribution specify many options at installation time. Most often the user will simply enter the following command at a command line: C:\> python setup.py install but the already mentioned manual Installing Python Modules explains many alternatives in detail. If you wish to provide suggested values for some installation options, you can put a setup.cfg file in your distribution root directory. setup.cfg can also provide appropriate defaults for options you can supply to build-time commands. For copious details on the format and contents of file setup.cfg, see the already mentioned manual Distributing Python Modules. 26.1.6 The MANIFEST.in and MANIFEST FilesWhen you run: python setup.py sdist to produce a packaged-up source distribution (typically a .zip file on Windows, or a .tgz file, also known as a tarball, on Unix), the distutils by default insert the following in the distribution:
You can add yet more files in the source distribution .zip file or tarball by placing in the distribution root directory a manifest template file named MANIFEST.in, whose lines are rules, applied sequentially, about files to add (include) or subtract (prune) from the overall list of files to place in the distribution. The sdist command of the distutils also produces an exact list of the files placed in the source distribution as a text file named MANIFEST in the distribution root directory. 26.1.7 Creating Prebuilt Distributions with distutilsThe packaged source distributions you create with python setup.py sdist are the most widely useful files you can produce with distutils. However, you can make life even easier for users with specific platforms by also creating prebuilt forms of your distribution with the command python setup.py bdist. For a pure distribution, supplying prebuilt forms is merely a matter of convenience for the users. You can create prebuilt pure distributions for any platform, including ones different from those on which you work, as long as you have available on your path the needed commands (such as zip, gzip, bzip2, and tar). Such commands are freely available on the Net for all sorts of platforms, so you can easily stock up on them in order to provide maximum convenience to users who want to install your distribution. For a non-pure distribution, making prebuilt forms available may be more than just an issue of convenience. A non-pure distribution, by definition, includes code that is not pure Python, generally C code. Unless you supply a prebuilt form, users need to have the appropriate C compiler installed in order to build and install your distribution. This is not a terrible problem on platforms where the appropriate C compiler is the free and ubiquitous gcc. However, on other platforms, the C compiler needed for normal building of Python extensions is commercial and costly. For example, on Windows, the normal C compiler used by Python and its C-coded extensions is Microsoft Visual C++ (Release 6, at the time of this writing). It is possible to substitute other compilers, including free ones such as the mingw32 and cygwin versions of gcc, and Borland C++ 5.5, whose command-line version you can download from the Net at no cost. However, the process of using such alternative compilers, as documented in the Python online manuals, is rather complex and intricate, particularly for end users who may not be experienced programmers. Therefore, if you want your non-pure distribution to be widely adopted on such platforms as Windows, it's highly advisable to make your distribution also available in prebuilt form. However, unless you have developed or purchased advanced cross-compilation environments, building a non-pure distribution and packaging it up in prebuilt form is only feasible on the target platform. You also need to have the necessary C compiler installed. When those conditions are satisfied, however, the distutils make the procedure quite simple. In particular, the command: python setup.py bdist_wininst creates an .exe file that is a Windows installer for your distribution. If your distribution is non-pure, the prebuilt distribution is dependent on the specific Python version. The distutils reflect this fact in the name of the .exe installer they create for you. Say, for example, that your distribution's name metadata is mydist, your distribution's version metadata is 0.1, and the Python version you use is 2.2. In this case, the distutils build a Windows installer named mydist-0.1.win32-py2.2.exe. |
| [ Team LiB ] |


Renderers
HTML renderer
Use pure HTML and CSS to draw your clock.
::
--
,
HTML:
Javascript:
Progress bar renderer
Only works with a timer device, with a milestone after the current moment.  Customizable with CSS.
//
::
HTML:
Javascript:
CSS:
To customize the clock face, you can override it with CSS. Example:
.w3f-analog-face { background-image: url('../assets/analog-face-2.svg'); }
Polar renderer
Supports digits for months, days, hours, minutes, senconds, and milliseconds. Customizable with CSS.
//
::
HTML:
Javascript:
CSS:
To customize the polar clock components, you can override them with CSS. Example:
.w3f-polar-face{background-color: #000;} .w3f-polar-face .n{stroke: #acc;} .w3f-polar-face .d{stroke: #abc;} .w3f-polar-face .H{stroke: #aba;} .w3f-polar-face .h{stroke: #aca;} .w3f-polar-face .i{stroke: #cba;} .w3f-polar-face .s{stroke: #caa;} .w3f-polar-face .m{stroke: #cab;}


{% extends 'base.html' %} {% load widget_tweaks %} {% load staticfiles %} {% block title %}Password Reset Complete{% endblock %} {% block content %}
Your password has been set. You may go ahead and log in now.
Log in


Brand
Work
About
Agent Creative works with teams to create thoughful solutions for the digital world.


Portfolio of Coursework
| Date | Task Description |
|---|---|
| January 31, 2017 | Created personal site. Workflow can be found here |
| January 31, 2017 | Created Jupyter Notebook + familiarized self with Python NetworkX and BeautifulSoup Libraires |
| February 3, 2017 | Created Lab 1 + familiarized self creating graphs from data concerning the current Wellesley CS students in CS315 |
| February 6, 2017 | Completed Assignment 2 Scraped Facebook data using Facebook's API and created data visualizations using Bokeh. The output static html files for the two Bokeh visualizations can be found here and here |


Personalize your browser
Over 1,000 extensions make it easy to customize Opera.
Download the extensions and themes you like from Opera’s add-ons catalog to get the best browser experience with a personal touch.
With the animated themes, you can even bring Opera’s start page to life.


TAKE A LOOK BELOW TO SEE SOME OF WHAT WE DO
Volunteer Abroad (VA) gives EGL students a chance to spend two weeks in a foreign country working on a service project and experiencing the foreign culture. Not only do students get to help a region in need with a relevant service project, but they also get to bond with a group of EGL students and gain a great deal of leadership experience. After going on a VA trip, many students have a new sense of appreciation for what they have back in Ann Arbor. Check out our videos below to leanr more!
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.
It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged.
Mobile Design
Web Design
Development
BlackTie.co
The program includes an International Minor for Engineers that exposes students to the language, history and customs of another part of the world. Emphasis is placed on the idea that integration of these disciplines is vital to success in today’s global business environment. Students admitted to the College of Engineering Honors Program who choose a Global Business/Operations focus are eligible to apply for EGL. For more information and to learn how to apply visit: http://honors.engin.umich.edu/egl/