CMPivotJointConstraint Class Reference
| Inherits from | CMConstraint : CMObject : NSObject |
| Declared in | CMPivotJointConstraint.h CMPivotJointConstraint.m |
Overview
Pivot joints hold two points on two bodies together allowing them to rotate freely around the pivot.
Tasks
Initialization
-
- initBetweenBody:andBody:anchor1:anchor2:
Constructs a new pivot joing using two anchors. -
- initBetweenBody:andBody:pivot:
Constructs a new pivot joint using a pivot. -
- setAnchor1:
Changes the first anchor point. -
- anchor1
Returns the first anchor point. -
- setAnchor2:
Changes the second anchor point. -
- anchor2
Returns the second anchor point.
Instance Methods
anchor1
Returns the first anchor point.
- (cpVect)anchor1
Return Value
the first anchor point.
Declared In
CMPivotJointConstraint.h
anchor2
Returns the second anchor point.
- (cpVect)anchor2
Return Value
the second anchor point.
Declared In
CMPivotJointConstraint.h
initBetweenBody:andBody:anchor1:anchor2:
Constructs a new pivot joing using two anchors.
- (id)initBetweenBody:(CMBody *)cmBody andBody:(CMBody *)andCmBody anchor1:(cpVect)anchor1 anchor2:(cpVect)anchor2
Parameters
- cmBody
- The first body.
- andCmBody
- The second body.
- anchor1
- The anchor point on the first body.
- anchor2
- The anchor point on the second body.
Declared In
CMPivotJointConstraint.h
initBetweenBody:andBody:pivot:
Constructs a new pivot joint using a pivot.
- (id)initBetweenBody:(CMBody *)cmBody andBody:(CMBody *)andCmBody pivot:(cpVect)pivot
Parameters
- cmBody
- The first body.
- andCmBody
- The second body.
- pivot
- The pivot point.
Declared In
CMPivotJointConstraint.h


I’m a second year undergraduate in computer science, math, and physics at Columbia University. I’m really interested in machine learning and plasma physics, but I also love math and am trying to squeeze a minor or major in.
There are few things more exciting or potentially revolutionary than machine learning right now, and I’m trying to get involved and contribute to that revolution however I can. I also want to make the process of learning how to use machine learning tools easier, and I will try to update this site with my latest projects and instructional tutorials about machine learning and cool math topics. Please feel free to reach out if you have any questions.
Internships
- Undergraduate Researcher at the Columbia Plasma Physics Laboratory (May 2017 - Present)
- Writing software which performs computational simulations of stellarator fusion reactors in C++, Python, and FORTRAN, and designing circuits for the main reactor field coils in LTSpice (and, god forbid, on a breadboard).
- Writing a Python API for large segments of the Princeton Plasma Physics Laboratory (PPPL) FORTRAN VMEC library, and implementing custom optimization software for finding plasma volume extrema.
- Using Labview and C to write real-time control software for stabilizing high currents in the stellarator field coils,
- Research Assistant in the Barnard Chemistry Department (Fall 2015 - Present)
- Mass spectrometry, florescent microscopy, and computational data analysis in a biochemistry/neurochemistry setting.
- Trained a neural network to perform clustering and colocalization analysis on florescent microscopy samples of mice brain tissue.
- Analyzed and sanitized data in R and Pandas.
Other Experience
- Aerodynamics Team Lead for the Columbia Space Initiative (CSI) NASA high-efficiency flight challenge team.
- Member of the Columbia Society of Physics Students (SPS), and computation fluid dynamics (CFD) and computer aided design (CAD) instructor at Columbia.
- Classical pianist and chamber musician, who has performed at Carnegie Hall and Symphony Space in NYC.
Kaggle Competitions:
-
MNIST Digit Recognizer: A simple hand-written digit recognition challenge using the MNIST dataset. My deep convolution network achieved 98.957% accuracy, well above human accuracy, placing it in the top third of all submissions as of 7/22/2017.
-
Cats & Dogs Redux Classification: An amusing Kaggle challenge, competiters were tasked to distinguish between cats and dogs in several hundred thousand images. My model achieve a loss of .46, placing it in the top half of all submissions.
-
CIFAR-10 Classification: A classification challenge on the classic CIFAR-10 dataset of color images. 10 class, tens of thousands of images. My first model achieved a loss of 0.75810, placing it in the top half of all submissions.


react-infinite-tree
The
infinite-tree
library for React.
https://github.com/cheton/react-infinite-tree
View on GitHub
Classic
Drag me!


---
layout: default
title: Business Science Is Looking For Writers
excerpt: Business Science is looking for technical writers who enjoy the topics of R, data science, and machine learning.
---
Build your authority in data science and
get your name out there!
Business Science is looking for technical writers who enjoy the topics of R, data science, and machine learning.
Who should apply?
We’re looking for passionate people who enjoy sharing the joy of data science with others.
- You should have at least one article to share (you can even stop now and go write it).
- You should have an understanding of writing structure: introduction → topic headers → summary.
- You should have a clear writing style that stays on topic and is understandable.
What’s in it for you?
Your content will be seen by thousands of data scientists:
- The Business Science blog has 10,000 weekly visitors.
- The Business Science newsletter has over 30,000 subscribers.
- Build your authority in data science to get your name out there.
- Supplement your data science portfolio with articles - looks good for hiring managers.
- Strengthen your own knowledge by teaching others.
What are the requirements?
- Articles should be clear and follow the topic.
- Articles should contain an introduction to the topic, working code, details explaining the process and code, and a summary.
- Articles should link to any outside references.
Example topics:
- Timeseries
- Industry-specific topics such as “data science in healthcare”
- R “How-to” articles
- Optimizing code


DLNA (Digital Living Network Alliance) is designed for sharing digital media such as photos, audio and video in a home network.
DLNA (Digital Living Network Alliance) is designed for sharing digital media such as photos, audio and video in a home network. It is built on top of the UPnP (Universal Plug 'n Play) protocol suite. This in turn is built on some of the uglier of the internet standards such as SOAP. UPnP itself compounds this poor choice of base technologies by using what can only be described as an appallingly badly engineered hack in order to handle media information: with its most complex data type being a string, UPnP buries complete XML documents inside these strings, so that one XML document contains another XML document as embedded string. Oh dear, better quality engineers could surely have come up with better solutions than this!
UPnP is open in that it can describe many different home network devices and formats of data. DLNA restricts this to only a few "approved" types, and then makes the specification private, only available after paying a fee.
Despite all this, an increasing number of devices are "DLNA enabled" such as TVs, BluRay players, etc. It seems like DLNA is here to stay :-(.
Matthew Panton in DLNA for media streamers--what does it all mean? points out some further issues with DLNA. mainly relating to supported file formats. The truth of his comments are illustrated by my latest purchase of a Sony BDP-S390 BluRay player. It supports LPCM (.wav) as required, but out of the optional MP3, WMA9, AC-3, AAC, ATRAC3plus it supports MP3, AAC/HE-AAC (.m4a) and WMA9 Standard (.wma). And of course, Ogg is nowhere in any of the DLNA lists.
See DLNA Open Source Projects I have used the Cybergarage Java client and server.


© 2019
| adnascens adnascens adnascens | growing on or to | |||
| ad | ad | pre | to, towards, near | |
| nascens | nascent | apar | nascor to be born; grow from; descend from | |
| adnatus adnata adnatum | joined together, adnate | |||
| adnatus | adnat | ppar | agnascor L. (also adgnascor) born after will was made, adopted; to grow towards or upoon; | |
| Amblystegiella adnata (Hedw.) Nichols Homomallium adnatum (Hedw.) Broth. Aster adnatus Nutt. | ||||
| adnexus adnexa adnexum | nearly bound together | |||
| ad | ad | pre | to, towards, near | |
| nexus | nex | padj | necto to tie or bind together | |
| Caloplaca adnexa Vezda | ||||
| adonidifolius adonidifolia adonidifolium | leaves like Adonis | |||
| adonis | adonid | noun/m | Adonis Αδωνιϛ, ιδοϛ god of plants, beautiful youth killed by wild boar and changed into a flower by Aphrodite | |
| i | i | cnct | connective vowel used by botanical Latin | |
| folius | foli | adj | folium leaf | |
| Senecio adonidifolius Loisel. | ||||
| adornatus adornata adornatum | decorated | |||
| adornatus | adornat | padj | adorno to prepare for, provide, equip; to decorate adorn | |
| Rubus adornatus P. J. Mull. ex Wirtg. | ||||
| adoxoides adoxoides adoxoides | like the genus Adoxa | |||
| a | a | pre | α- not, without, less | |
| doxa | dox | noun/f | δοξα opinion, judgment; reputation, glory, splendor | |
| oides | oid | adj | -οειδεϛ adjective suffix for nouns: like, resemble | |
| Semiaquilegia adoxoides (DC.) Makino | ||||
| adpressipilis adpressipilis adpressipile | with hairs pressed flat | |||
| adpressus | adpress | padj | apprimo to press to; (also adprimo) | |
| i | i | cnct | connective vowel used by botanical Latin | |
| pilus | pil | noun/m | a hair; a trifle | |
| is | adj | adjectival suffix | ||
| adpressipilosus adpressipilosa adpressipilosum | hairy with hairs pressed flat | |||
| adpressus | adpress | padj | apprimo to press to; (also adprimo) | |
| i | i | cnct | connective vowel used by botanical Latin | |
| pilosus | pilos | adj | hairy, shaggy | |
| Cyrtandra adpressipilosa St. John | ||||
| adpressus adpressa adpressum | pressed against | |||
| ad | ad | pre | to, towards, near | |
| pressus | press | ppar | premo to press, squeeze | |
| Mimosa adpressa Hook. & Arn. Hypericum adpressum Raf. ex W. Bart. Cotoneaster adpressus Boiss. | ||||
| adriaticus adriatica adriaticum | from (near) the Adriatic Sea | |||
| adriaticus | adriatic | adj | Hadriaticus of or belonging to Hadria , a city of Picenum (now Atri, Italy) birthplace of Hadrian; of Hadria in Veneti (now Adria, Italy); of the Adriatic Sea, between Italy and the Balkan penisula; also spelled Adriaticus | |
| Viola adriatica Freyn | ||||
| adscendens adscendens adscendens | ascending | |||
| adscendens | adscendent | apar | ascendo (adscendo) to ascend, mount up, climb up | |
| Acaena adscendens Vahl | ||||
| adscitus adscita adscitum | approved | |||
| adscitus | adscit | padj | ascisco L. (also adscisco) to receive, approve, accept | |
| adspersus adspersa adspersum | scattered | |||
| adspersus | adspers | ppar | aspergo (adspergo) to scatter, sprinkle | |
| Brachiaria adspersa (Trin.) Parodi Calicium adspersum Pers. Rubus adspersus Weihe ex H. E. Weber | ||||
| adstringens adstringens adstringens | binding together | |||
| adstringens | adstring | ppar | astringo to draw close, bind together (also adstringo) | |
| Stryphnodendron adstringens (C. Martius) Cov. | ||||
| adulterinus adulterina adulterinum | adulterous, not genuine | |||
| adulterinus | adulterin | adj | not of pure breed, not genuine or pure | |
| Passiflora adulterina L. f. Asplenium adulterinum Milde | ||||
| adumbratus adumbrata adumbratum | counterfeit | |||
| adumbratus | adumbrat | adj | counterfeit, feigned, false | |
| aduncatus aduncata aduncatum | hooked, curved | |||
| aduncus | adunc | adj | bent towards or inwards, hooked | |
| atus | at | adj | adjectival suffix for nouns: possessive of or likeness of something (with, shaped, made)/ for verb participles: a completed action, -ed | |
| aduncus adunca aduncum | bent, crooked, curved, hooked | |||
| aduncus | adunc | adj | bent towards or inwards, hooked | |
| Viola adunca Sm. Piper aduncum L. Drepanocladus aduncus (Hedw.) Warnst. | ||||
| adustus adusta adustum | sun browned | |||
| adustus | adust | ppar | aduro to burn, scorch | |
| Carex adusta Boott Leucanthemum adustum (W. D. J. Koch) Gremli |


Civil Engineer
"Community Specialist" at "Startup"
Read: customer support.
So I taught myself to code.
I landed my first job as a Web Developer!
Redesign emails and make them mobile-friendly.
The first victim was our Welcome email.
Naturally, I researched other Welcome emails.
I know, I know, these are not welcome emails.
But they're just so pretty!
May not work for everyone
A/B Test the hell out of your emails
Litmus Article
Testing the mobile waters
Reliable rendering across clients and devices
Teams with limited resources
Simple layouts
Emails with mostly text that can flow
Teams with limited resources
Large mobile audiences
The most control over layout
Teams with knowledge of media queries
We used them all.
There are a LOT of options...
which I'll mention a bit later
... and which I didn't use.
Minimum Touchable Area
44px by 44px
Velocity vs JavaServer Page (JSP)
are coming.
"Note: Prior to the creation of CSS, HTML <table> elements were often used as a method for page layout. This usage has been discouraged since HTML 4, and the <table> element should not be used for layout purposes."
"LOL"
Not adding an outer <table> makes your code disappear in Apple Mail and Outlook 2011
do not display as inline or block
<table> default is display:table;
Use display:block; or Chrome will ignore max-width!
Gmail doesn't support <style> in <head>
Outlook.com doesn't support link in <head>
Many clients don't support a whole bevy of CSS!
See Campaign Monitor CSS page.
You will, unfortunately, be doing a lot of this:
From: ${userName}
<${userEmail}>
<%--Wrapper Table Begin--%>
<%--Wrapper Table End--%>
Tables all the way down.
Always have alt=" " or a background color.
This is also great for accessibility!
Check it out on Github
Awesome for readability or targetting devices!
@media only screen and (min-device-width: 768px) and
(max-device-width: 1024px) {
#backgroundTable {
max-width: 600px;
}
}
Note: Media queries don't work on all clients.
Target Apple devices with 480px
@media only screen and (max-width: 480px),
(max-device-width: 480px) {
// Small screen styles here
}
Use in conjunction with fluid layouts (% based widths)
@media only screen and (max-width: 480px), (max-device-width: 480px) {
#backgroundTable {
max-width: 480px;
font-size: 18px;
margin: 0px;
}
}
"The device pixel ratio is the ratio between logical pixels and physical pixels."
From Stack Overflow
Target retina or high res devices
@media all and (min-device-pixel-ratio : 1.5),
all and (-webkit-min-device-pixel-ratio: 1.5) {
// Retina device styles go here!
}
When to use?
Sometimes inline styles overwrite media queries...
@media only screen and (max-width: 480px), (max-device-width: 480px) {
.headerBar {
height: 5px !important;
line-height: 5px !important;
}
}
Blah blah blah
Set a line-height on the surrounding <td>
Super weird and only occurs occasionally.
VS.
Outlook 2007, 2010, 2013, and Outlook in IE don't allow HTML or CSS image sizing. Argh.
Replace <img> by setting a background-image style on the surrounding <td> and assigning display: none; on the <img>.
@media all and (min-device-pixel-ratio : 1.5),
all and (-webkit-min-device-pixel-ratio: 1.5) {
td[class="cautionBar"] {
background-image: url('http://filenet.hotpads.com/images/email/warning.png');
background-position: center;
background-size: 30px 30px;
background-repeat: no-repeat;
width: 30px; !important;
height: 30px; !important;
}
td[class="cautionBar"] img {
display: none;
}
}
ignore max-width.
#backgroundTable {
margin: 0;
padding: 0;
width: 100% !important;
line-height: 100% !important;
}
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
#backgroundTable {
width: 600px;
}
}
Ignores <a> color styles in the <head>.
You have to style each and every <a> inline.


DOUG'S 1ST MOVIE A film review by Steve Rhodes Copyright 1999 Steve Rhodes RATING (0 TO ****): * 1/2
Continuing in the bad tradition of stretching animated television shows into full-length movies, DOUG'S 1ST MOVIE is the latest incarnation. With the vast number of mediocre kids' television series still left to be "adapted" for the big screen, the mind boggles at what our kids will probably be offered at the theaters in the next few years. Although there are marvelous films like A BUG'S LIFE and THE PRINCE OF EGYPT, most of what the studios send to the theaters these days is the cinematic equivalent of elevator music -- terminally bland but with just enough familiar parts to keep you from falling asleep.
In DOUG'S 1ST MOVIE the "action" at Doug's school surrounds the planning for the big Valentine's dance. The wimpy Doug, voiced by Thomas McHugh, has signed up to help coordinate the dance until the BMOC, Guy, takes it over.
Although Doug's real life has its limitations, he has a vivid dream life. "He imagines himself as a superhero big enough to wear his underwear over his pants," explains the deep-throated narrator with a documentarian's seriousness. What that quote means, I have no idea, but we do see him dressed as such.
The dance turns out to be merely a subplot. The main story concerns a friendly monster, affectionately named Herman Melville, that Doug's friend Skeeter discovers. Herman, looking a like stuffed, powder blue version of Barney, is a creature more likely to hug you to death than scare you. Among Herman's bad habits is drinking out of toilets.
There are a few, a very few, bits of nice humor in the story. One inventor shows them his virtual reality system, which he says is just like the real world only more expensive. Another has the superhero version of Doug make a big monster regurgitate by showing him a "mushy teen" television series. (Showing him this movie might provoke a similar reaction.)
The colorful animation has little detail in the drawings, making it look like something that was quick and easy to slap together, but the credits, which run almost as long as the movie itself, suggest otherwise.
With a thin story as flat as the animation, one can only hope that DOUG'S 1ST MOVIE will be his last.
DOUG'S 1ST MOVIE runs 1:15. It is rated G and has nothing objectionable for any age.
My son Jeffrey, almost 10, said he gave the movie *** because he likes the television series. He liked the way the movie made him wonder what was going to happen next. His buddy Nickolas, almost 10, said he hadn't seen the show and didn't care much for the movie or Doug. He gave it **.
Email<EMAIL_ADDRESS>Web: www.InternetReviews.com
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Source Code
Pie Options
- option: default value - Description of option
- show: false - Enable the plugin and draw as a pie.
- radius: 'auto' - Sets the radius of the pie. If value is between 0 and 1 (inclusive) then it will use that as a percentage of the available space (size of the container), otherwise it will use the value as a direct pixel length. If set to 'auto', it will be set to 1 if the legend is enabled and 3/4 if not.
- innerRadius: 0 - Sets the radius of the donut hole. If value is between 0 and 1 (inclusive) then it will use that as a percentage of the radius, otherwise it will use the value as a direct pixel length.
- startAngle: 3/2 - Factor of PI used for the starting angle (in radians) It can range between 0 and 2 (where 0 and 2 have the same result).
- tilt: 1 - Percentage of tilt ranging from 0 and 1, where 1 has no change (fully vertical) and 0 is completely flat (fully horizontal -- in which case nothing actually gets drawn).
- shadow:
- top: 5 - Vertical distance in pixel of the tilted pie shadow.
- left: 15 - Horizontal distance in pixel of the tilted pie shadow.
- alpha: 0.02 - Alpha value of the tilted pie shadow.
- offset:
- top: 0 - Pixel distance to move the pie up and down (relative to the center).
- left: 'auto' - Pixel distance to move the pie left and right (relative to the center).
- stroke:
- color: '#FFF' - Color of the border of each slice. Hexadecimal color definitions are prefered (other formats may or may not work).
- width: 1 - Pixel width of the border of each slice.
- label:
- show: 'auto' - Enable/Disable the labels. This can be set to true, false, or 'auto'. When set to 'auto', it will be set to false if the legend is enabled and true if not.
- radius: 1 - Sets the radius at which to place the labels. If value is between 0 and 1 (inclusive) then it will use that as a percentage of the available space (size of the container), otherwise it will use the value as a direct pixel length.
- threshold: 0 - Hides the labels of any pie slice that is smaller than the specified percentage (ranging from 0 to 1) i.e. a value of '0.03' will hide all slices 3% or less of the total.
- formatter: [function] - This function specifies how the positioned labels should be formatted, and is applied after the legend's labelFormatter function. The labels can also still be styled using the class "pieLabel" (i.e. ".pieLabel" or "#graph1 .pieLabel").
- radius: 1 - Sets the radius at which to place the labels. If value is between 0 and 1 (inclusive) then it will use that as a percentage of the available space (size of the container), otherwise it will use the value as a direct pixel length.
- background:
- color: null - Backgound color of the positioned labels. If null, the plugin will automatically use the color of the slice.
- opacity: 0 - Opacity of the background for the positioned labels. Acceptable values range from 0 to 1, where 0 is completely transparent and 1 is completely opaque.
- combine:
- threshold: 0 - Combines all slices that are smaller than the specified percentage (ranging from 0 to 1) i.e. a value of '0.03' will combine all slices 3% or less into one slice).
- color: null - Backgound color of the positioned labels. If null, the plugin will automatically use the color of the first slice to be combined.
- label: 'Other' - Label text for the combined slice.
- highlight:
- opacity: 0.5 - Opacity of the highlight overlay on top of the current pie slice. Currently this just uses a white overlay, but support for changing the color of the overlay will also be added at a later date.
Changes/Features
- v1.0 - November 20th, 2009 - Brian Medendorp
- The pie plug-in is now part of the Flot repository! This should make it a lot easier to deal with.
- Added a new option (innerRadius) to add a "donut hole" to the center of the pie, based on comtributions from Anthony Aragues. I was a little reluctant to add this feature because it doesn't work very well with the shadow created for the tilted pie, but figured it was worthwhile for non-tilted pies. Also, excanvas apparently doesn't support compositing, so it will fall back to using the stroke color to fill in the center (but I recommend setting the stroke color to the background color anyway).
- Changed the lineJoin for the border of the pie slices to use the 'round' option. This should make the center of the pie look better, particularly when there are numerous thin slices.
- Included a bug fix submitted by btburnett3 to display a slightly smaller slice in the event that the slice is 100% and being rendered with Internet Explorer. I haven't experienced this bug myself, but it doesn't seem to hurt anything so I've included it.
- The tilt value is now used when calculating the maximum radius of the pie in relation to the height of the container. This should prevent the pie from being smaller than it needed to in some cases, as well as reducing the amount of extra white space generated above and below the pie.
- Hover and Click functionality are now availabe!
- Thanks to btburnett3 for the original hover functionality and Anthony Aragues for the modification that makes it compatable with excanvas, this was a huge help!
- Added a new option (highlight opacity) to modify the highlight created when mousing over a slice. Currently this just uses a white overlay, but an option to change the hightlight color will be added when the appropriate functionality becomes available.
- I had a major setback that required me to practically rebuild the hover/click events from scratch one piece at a time (I discovered that it only worked with a single pie on a page at a time), but the end result ended up being virtually identical to the original, so I'm not quite sure what exactly made it work.
- Warning: There are some minor issues with using this functionality in conjuction with some of the other more advanced features (tilt and donut). When using a donut hole, the inner portion still triggers the events even though that portion of the pie is no longer visible. When tilted, the interactive portions still use the original, untilted version of the pie when determining mouse position (this is because the isPointInPath function apparently doesn't work with transformations), however hover and click both work this way, so the appropriate slice is still highlighted when clicking, and it isn't as noticable of a problem.
- Included a bug fix submitted by Xavi Ivars to fix array issues when other javascript libraries are included in addition to jQuery
- v0.4 - July 1st, 2009 - Brian Medendorp
- Each series will now be shown in the legend, even if it's value is zero. The series will not get a positioned label because it will overlap with the other labels present and often makes them unreadable.
- Data can now be passed in using the standard Flot method using an array of datapoints, the pie plugin will simply use the first y-value that it finds for each series in this case. The plugin uses this datastructure internally, but you can still use the old method of passing in a single numerical value for each series (the plugin will convert it as necessary). This should make it easier to transition from other types of graphs (such as a stacked bar graph) to a pie.
- The pie can now be tilted at an angle with a new "tilt" option. Acceptable values range from 0-1, where 1 has no change (fully vertical) and 0 is completely flat (fully horizontal -- in which case nothing actually gets drawn). If the plugin determines that it will fit within the canvas, a drop shadow will be drawn under the tilted pie (this also requires a tilt value of 0.8 or less).
- v0.3.2 - June 25th, 2009 - Brian Medendorp
- Fixed a bug that was causing the pie to be shifted too far left or right when the legend is showing in some cases.
- v0.3.1 - June 24th, 2009 - Brian Medendorp
- Fixed a bug that was causing nothing to be drawn and generating a javascript error if any of the data values were set to zero.
- v0.3 - June 23rd, 2009 - Brian Medendorp
- The legend now works without any modifications! Because of changes made to flot and the plugin system (thanks Ole Laursen!) I was able to simplify a number of things and am now able to use the legend without the direct access hack that was required in the previous version.
- v0.2 - June 22nd, 2009 - Brian Medendorp
- The legend now works but only if you make the necessary changes to jquery.flot.js. Because of this, I changed the default values for pie.radius and pie.label.show to new 'auto' settings that change the default behavior of the size and labels depending on whether the legend functionality is available or not.
- v0.1 - June 18th, 2009 - Brian Medendorp
- Rewrote the entire pie code into a flot plugin (since that is now an option), so it should be much easier to use and the code is cleaned up a bit. However, the (standard flot) legend is no longer available because the only way to prevent the grid lines from being displayed also prevents the legend from being displayed. Hopefully this can be fixed at a later date.
- Restructured and combined some of the options. It should be much easier to deal with now.
- Added the ability to change the starting point of the pie (still defaults to the top).
- Modified the default options to show the labels to compensate for the lack of a legend.
- Modified this page to use a random dataset. Note: you may need to refresh the page to see the effects of some of the examples.
- May 21st, 2009 - Brian Medendorp
- Merged original pie modifications by Sergey Nosenko into the latest SVN version (as of May 15th, 2009) so that it will work with ie8.
- Pie graph will now be centered in the canvas unless moved because of the legend or manually via the options. Additionally it prevents the pie from being moved beyond the edge of the canvas.
- Modified the code related to the labelFormatter option to apply flot's legend labelFormatter first. This is so that the labels will be consistent, but still provide extra formatting for the positioned labels (such as adding the percentage value).
- Positioned labels now have their backgrounds applied as a separate element (much like the legend background) so that the opacity value can be set independently from the label itself (foreground). Additionally, the background color defaults to that of the matching slice.
- As long as the labelOffset and radiusLimit are not set to hard values, the pie will be shrunk if the labels will extend outside the edge of the canvas
- Added new options "radiusLimitFactor" and "radiusLimit" which limits how large the (visual) radius of the pie is in relation to the full radius (as calculated from the canvas dimensions) or a hard-pixel value (respectively). This allows for pushing the labels "outside" the pie.
- Added a new option "labelHidePercent" that does not show the positioned labels of slices smaller than the specified percentage. This is to help prevent a bunch of overlapping labels from small slices.
- Added a new option "sliceCombinePercent" that combines all slices smaller than the specified percentage into one larger slice. This is to help make the pie more attractive when there are a number of tiny slices. The options "sliceCombineColor" and "sliceCombineLabel" have also been added to change the color and name of the new slice if desired.
- Tested in Firefox (3.0.10, 3.5b4), Internet Explorer (6.0.2900, 7.0.5730, 8.0.6001), Chrome (1.0.154), Opera (9.64), and Safari (3.1.1, 4 beta 5528.16).


Share this page
Recent photos tagged "cat"
Today's Weather
Loading...
Temp:
Temp min:
Temp max:
Cloudiness:
Location:
reddit : top items
Just some images
Select image :


Created by Julian Birch / @JulianBirch
Beyond Reduce by Julian Birch is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
(def mylist
{:head 1 :tail
{:head 2 :tail
{:head 3 :tail :nil}}})
(defn head-map [f cell]
(if (= :nil cell)
:nil
(update cell :head f)))
(defn tail-map [f cell]
(if (= :nil cell)
:nil
(update cell :tail f)))
(defn full-map [f l]
(head-map f (tail-map (partial full-map f) l)))
; Or, with threading
(defn full-map [f l]
(->> l
(tail-map (partial full-map f))
(head-map f)))
We recurse, then map the value
(defn evalop [val]
(if (map? val)
(let [{:keys [op l r]} val]
(case op
:add (+ l r)
:mul (* l r)
:neg (- l)
:sub (- l r)))
val))
(def complex {:op :add
:l {:op :sub :l 3 :r 6}
:r {:op :mul :l {:op :neg :l 2} :r 9}})
Let's write map
for that
(defn head-map-2 [f val]
(if (map? val) val (f val)))
(defn tree-map [f cell]
(if (map? cell)
(let [c2 (update cell :l f)]
(if (= (:op cell) :neg)
c2
(update c2 :r f)))
cell))
(defn full-map-2 [f l]
(head-map-2 f (tail-map-2 (partial full-map-2 f) l)))
(full-map-2 inc complex)
Hey, hang up, that's exactly the same function!
(defn cata [map-recurse map-value l]
(let [cata2 (partial cata map-recurse map-value)]
(->> l
(map-recurse cata2)
map-value)))
(cata tail-map (partial head-map inc) mylist)
; {:head 2, :tail {:head 3,
; :tail {:head 4, :tail :nil}}}
(cata tree-map (partial head-map-2 inc) complex)
; {:op :add,
; :l {:op :sub, :l 4, :r 7},
; :r {:op :mul, :l {:op :neg, :l 3}, :r 10}}
Recurse, then map the value
What happens if we swap map-recurse and map-value?
(defn ana [map-recurse map-value l]
(let [ana2 (partial ana map-recurse map-value)]
(->> l
map-value
(map-recurse ana2))))
(defn next-value [v]
(if (> v 3)
:nil
{:head v :tail (inc v)}))
(ana tail-map next-value 0)
; {:head 0, :tail {:head 1, :tail
; {:head 2, :tail {:head 3, :tail :nil}}}}
We just wrote iterate
cata
and ana
aren't tail recursive.
(defn cata [map-recurse map-value l]
(let [cata2 (partial cata map-recurse map-value)]
(->> l
(map-recurse cata2)
map-value)))
(cata tree-map evalop complex)
; -21
Same data structure, same map-recurse
.
(defn search [val]
(if (map? val)
(let [{:keys [op l r]} val]
(if (= op :neg)
l
(concat l r)))
[val]))
(cata tree-map search complex)
; (3 6 2 9)
How about breadth-first?
(defn next-level [cell]
(if (map? cell)
(let [new-items (->> cell
:head
(mapcat (juxt :l :r))
(filter identity))
tail (if (empty? new-items)
:nil
{:head new-items :tail :nil})]
(assoc cell :tail tail))
cell))
(defn non-maps [{:keys [head tail] :as opts}]
(filter #(not (map? %)) (concat head tail)))
(cata tail-map non-maps
(ana tail-map next-level {:head [complex] :tail :nil}))
; (3 6 9 2)
Can we do better?
How about if we mapped before and after the recurse step?
(defn hylo [map-recurse map-before map-after l]
(let [hylo2 (partial hylo map-recurse map-before map-after)]
(->> l
map-before
(map-recurse hylo2)
map-after)))
(hylo tail-map next-level non-maps
{:head [complex] :tail :nil})
We get expand and contract in one efficient step.
Can we do anything interesting with a more complex recurse-map
?
(defn sort-2 [[x y]]
(if (< x y) [x y] [y x]))
(defn explode [x]
(let [c (count x)]
(case c
0 x
1 x
2 (sort-2 x)
; :else
(let [[l r] (split-at (/ c 2) x)]
{:l l :r r}))))
(defn riffle [{:keys [l r]}]
(loop [l l r r result []]
(let [lhead (first l), rhead (first r)]
(cond
(nil? lhead) (concat result r)
(nil? rhead) (concat result l)
(<= lhead rhead) (recur (rest l) r (conj result lhead))
:else (recur l (rest r) (conj result rhead))))))
(defn collapse [x]
(if (map? x)
(riffle x)
x))
riffle
adapted from code by Alexei Sholik
(defn binary-map [f x]
(if (map? x)
(-> x
(update :l f)
(update :r f))
x))
(hylo binary-map
explode
collapse
[9 3 6 7 0 1 8 2 4 5])
; (0 1 2 3 4 5 6 7 8 9)
Understanding F-Algebras https://goo.gl/AKyZft
The Under-Appreciated Unfold http://goo.gl/vD1P0I
90sigma and AncientKale


Source_Spectra — Generates spectra for a series of map locations.¶
Usage: admit_recipe Source_Spectra BDP-Source-Table Your-Image-Cube [Your-Primary-Beam]
or
admit.recipe(“Source_Spectra”, “BDP-Source-Table”, “Your-Image-Cube”,”Your-Primary-Beam”)
This ADMIT script to create spectra for a list of positions in a BDP. The flow is:
- Ingest BDP which contains the desired source table.
- Ingest your cube into ADMIT (creates a CASA image if starts as FITS)
- Calculate the spectrum for each position
Parameters¶
- param1 : BDP
- The Basic Data Product that contains the source table of positions where you want spectra. Typically created by SFind2D_AT (or Source_Find.py recipe).
- param2 : image
- Your CASA or FITS image. If the image file is not primary beam corrected, then input only this cube. Default cubes from clean are like this. The noise does not rise up at the edge of the field
- param3 : image, optional
- Your CASA or FITS primary beam image. Cubes from the ALMA archive are often primary beam corrected. In these images, the noise rises out from the center of the imaged field. In this case, you need to input both the image file and the primary beam cube. Both are available to you from the archive.
Optional Keywords¶
- xaxis in CubeSpectrum_AT: sets x-axis type: channel number, frequency, velocity. Current default is channel for full cubes and velocity for cubes created for each emission line by LineCube_AT. Default:


{% extends '::base.html.twig' %} {% block content %} {% if reset_done %}
Link to reset your password has been send to your email.
{{ error }}


Dandie Dinmont Terrier
| Dandie Dinmont Terrier Picture | |
| Breed Information | |
|---|---|
| Popularity | 2017: #1822016: #1672015: #172 |
| Name | Dandie Dinmont Terrier |
| Other names | Dandie, Hindlee Terrier |
| Origin | United Kingdom |
| Breed Group | Terrier (AKC:1886)(UKC) |
| Size | Small |
| Type | Purebred |
| Life span | 12-14 years |
| Temperament | AffectionateCompanionableDeterminedFun-lovingIndependentLivelyIntelligent |
| Height | 8-11 inches (20-28 cm) |
| Weight | 18-24 pounds (8-11 kg) |
| Colors | GraySilverWhiteYellow |
| Litter Size | 3-6 puppies |
| Puppy Price | Average $1400 - $1600 USD |
| Breed Characteristics | |
| Adaptability | 5 stars |
| Apartment Friendly | 5 starsThe Dandie Dinmont Terrier is good for apartment life. They are fairly active indoors and a small yard will do as long as you take them for daily walks. Likes to chase, be careful when taking them off the leash. |
| Barking Tendencies | 2 starsOccassional |
| Cat Friendly | 3 stars |
| Child Friendly | 4 starsGood with Kids: This is a suitable breed for kids and is known to be playful, energetic, and affectionate around them. |
| Dog Friendly | 4 stars |
| Exercise Needs | 3 starsDandie Dinmonts need to be walked daily. They will also enjoy sessions of play in the park or other safe open areas. |
| Grooming | 3 starsModerate Maintenance: The Dandie Dinmont Terrier has a unique look that requires regular grooming. His coat must be scissored and shaped every four to six weeks to maintain its distinctive appearance. A professional groomer familiar with the breed can do that for you, or you can learn to trim the coat yourself. |
| Health Issues | 2 starsHypoallergenic: Yes |
| Intelligence | 3 starsRanking: #62. (See All Rankings) |
| Playfulness | 3 stars |
| Shedding Level | 1 starsMinimal Shedding: This dog will shed a negligible amount. Recommended for owners who do not want to deal with dog hair in their cars and homes. |
| Stranger Friendly | 3 stars |
| Trainability | 3 starsModerately Easy Training: Although it can be stubborn, training is not difficult. |
| Watchdog Ability | 3 stars |
| Dandie Dinmont Terrier Puppy Picture | ||
| Puppy Names | ||
|---|---|---|
| Rank | Male | Female |
| 01 | Max | Bella |
| 02 | Cooper | Daisy |
| 03 | Rocky | Molly |
| 04 | Jack | Lucy |
| 05 | Oliver | Emma |
| 06 | Tucker | Coco |
| 07 | Teddy | Lilly |
| 08 | Gizmo | Ellie |
| 09 | Diesel | Stella |
| 10 | Marley | Sasha |
| See All Names › |
| Overview |
|---|
|
Unlike the prototypical terrier, the Dandie is made up of a series of curves, topped off with a long, scimitar-shaped tail. It is almost twice as long as tall, constructed to go to ground after tough quarry. Its hind legs are definitely longer than its front legs. Its gait is free and easy. It has a distinctive coat made up of about two-thirds hardish (not wiry) hair and one-third soft hair, about 2 inches in length. The head is covered with soft, silky hair, lending to the appearance of a large head. The topknot also enhances the expression, which is determined, dignified, soft and wise. The Dandie Dinmont is no "dandified" dog; it is rough-and-tumble and ready for the hunt. Yet it functions well as a dignified house pet, affectionate but not doting. It is a loyal companion suitable for people of all ages, but it does need daily exercise to keep it from becoming frustrated. It is intelligent and very independent. It tends to be reserved with strangers and aggressive toward strange dogs. Some dig. |
| History |
| The Dandie Dinmont is an old terrier dating back to the 1700s, originating from the border area between England and Scotland. The breed may have been developed from the Skye Terrier and the now extinct Scotch Terrier (not to be confused with today's Scottish Terrier). The breed was popular among the gypsies and was used by farmers to kill vermin. With its short legs it was able to go to ground hunting badgers and otter. In 1814 Sir Walter Scott wrote about the breed in his famous novel "Guy Mannering." In the book there was a character named Dandie Dinmont, and that is where the breed got its name. It was recognized by the AKC in 1886. Some of the Dandie Dinmont's talents are vermin catcher, hunting rabbit, otter, badger, martens, weasels and skunks. |


The family of assertion and retraction predicates described below enables you to modify a Prolog program by adding or deleting clauses while it is running. These predicates should not be overused. Often people who are experienced with other programming languages have a tendency to think in terms of global data structures, as opposed to data structures that are passed as procedure arguments, and hence they make too much use of assertion and retraction. This leads to less readable and less efficient programs.
An interesting question in Prolog is what happens if a procedure modifies itself, by asserting or retracting a clause, and then fails. On backtracking, does the current execution of the procedure use new clauses that are added to the bottom of the procedure?
Historical note: In some non-ISO-conforming implementations of Prolog, changes to the Prolog database become globally visible upon the success of the built-in predicate modifying the database. An unsettling consequence is that the definition of a procedure can change while it is being run. This can lead to code that is difficult to understand. Furthermore, the memory performance of the interpreter implementing these semantics is poor. Worse yet, the semantics rendered ineffective the added determinacy detection available through indexing.
SICStus Prolog implements the “logical” view in updating dynamic predicates, conforming to the ISO standard. This means that the definition of a dynamic procedure that is visible to a call is effectively frozen when the call is made. A procedure always contains, as far as a call to it is concerned, exactly the clauses it contained when the call was made.
A useful way to think of this is to consider that a call to a dynamic procedure makes a virtual copy of the procedure and then runs the copy rather than the original procedure. Any changes to the procedure made by the call are immediately reflected in the Prolog database, but not in the copy of the procedure being run. Thus, changes to a running procedure will not be visible on backtracking. A subsequent call, however, makes and runs a copy of the modified Prolog database. Any changes to the procedure that were made by an earlier call will now be visible to the new call.
In addition to being more intuitive and easy to understand, the new semantics allow interpreted code to execute with the same determinacy detection (and excellent memory performance) as static compiled code (see Indexing, for more information on determinacy detection).


Benefits of maintenance software for mining
Fiix’s mining asset management software helps maintenance teams drive productivity by allowing them to:
- Organize equipment in an intuitive hierarchy
- Assign specific maintenance tasks to specific users
- Schedule preventive maintenance and be alerted of upcoming PMs
- View what parts are needed for upcoming tasks so critical inventory is always stocked
- Access detailed work order histories for assets
- Set usage-based preventive maintenance triggers for equipment maintenance
- Record standard operating procedures for assets


xeogl
experiment
Parsing a JSON
scene definition
into a
xeogl.Model
Scene definition taken from the SceneJS
Tron tank example
JSON originally converted from COLLADA model by
Katase


Komodo
introductions
Are you a developer or blockchain enthusiast? Introduce yourself. Please note that normal chat messages will be removed. Go to #general to start a discussion or ask a follow-up question.
Between 06-Jan-20 12:00 AM and 07-Jan-20 12:00 AM
YAGPDB.xyz
BOT
06-Jan-20 11:27 AM
miron6#9148<PHONE_NUMBER>96929044)
New user joined waiting to be verified as a human
miron6#9148<PHONE_NUMBER>96929044)
User successfully verified
YAGPDB.xyz
BOT
06-Jan-20 04:46 PM
RolexTrader#0548<PHONE_NUMBER>75565599)
New user joined waiting to be verified as a human
YAGPDB.xyz
BOT
06-Jan-20 04:56 PM
CryptoNens#4100<PHONE_NUMBER>54858771)
New user joined waiting to be verified as a human
RolexTrader#0548<PHONE_NUMBER>75565599)
Kicked for not verifying within deadline
CryptoNens#4100<PHONE_NUMBER>54858771)
User successfully verified
YAGPDB.xyz
BOT
06-Jan-20 05:27 PM
hoxBIT*#2663<PHONE_NUMBER>91040529)
New user joined waiting to be verified as a human
hoxBIT*#0282<PHONE_NUMBER>92532756)
New user joined waiting to be verified as a human
hoxBIT*#5026<PHONE_NUMBER>92676121)
New user joined waiting to be verified as a human
hoxBIT*#4075<PHONE_NUMBER>84649769)
New user joined waiting to be verified as a human
hoxBIT*#0456<PHONE_NUMBER>19054336)
New user joined waiting to be verified as a human
hoxBIT*#0584<PHONE_NUMBER>74254127)
New user joined waiting to be verified as a human
hoxBIT*#0870<PHONE_NUMBER>02211881)
New user joined waiting to be verified as a human
hoxBIT*#1913<PHONE_NUMBER>96663809)
New user joined waiting to be verified as a human
hoxBIT*#0803<PHONE_NUMBER>60065542)
New user joined waiting to be verified as a human
hoxBIT*#2523<PHONE_NUMBER>00099864)
New user joined waiting to be verified as a human
hoxBIT*#7561<PHONE_NUMBER>66166323)
New user joined waiting to be verified as a human
hoxBIT*#0253<PHONE_NUMBER>36720450)
New user joined waiting to be verified as a human
hoxBIT*#6660<PHONE_NUMBER>79521843)
New user joined waiting to be verified as a human
hoxBIT*#8998<PHONE_NUMBER>76230657)
New user joined waiting to be verified as a human
hoxBIT*#6311<PHONE_NUMBER>04896542)
New user joined waiting to be verified as a human
hoxBIT*#2549<PHONE_NUMBER>25566219)
New user joined waiting to be verified as a human
hoxBIT*#0126<PHONE_NUMBER>41253928)
New user joined waiting to be verified as a human
hoxBIT*#3216<PHONE_NUMBER>81995776)
New user joined waiting to be verified as a human
hoxBIT*#2754<PHONE_NUMBER>45981442)
New user joined waiting to be verified as a human
hoxBIT*#6434<PHONE_NUMBER>21187082)
New user joined waiting to be verified as a human
hoxBIT*#9370<PHONE_NUMBER>98567197)
New user joined waiting to be verified as a human
hoxBIT*#5851<PHONE_NUMBER>61467934)
New user joined waiting to be verified as a human
hoxBIT*#7833<PHONE_NUMBER>83465729)
New user joined waiting to be verified as a human
hoxBIT*#1083<PHONE_NUMBER>95625738)
New user joined waiting to be verified as a human
hoxBIT*#1755<PHONE_NUMBER>36395284)
New user joined waiting to be verified as a human
hoxBIT*#8054<PHONE_NUMBER>28208640)
New user joined waiting to be verified as a human
hoxBIT*#7843<PHONE_NUMBER>64148235)
New user joined waiting to be verified as a human
hoxBIT*#7090<PHONE_NUMBER>77660181)
New user joined waiting to be verified as a human
hoxBIT*#9963<PHONE_NUMBER>32421635)
New user joined waiting to be verified as a human
hoxBIT*#3361<PHONE_NUMBER>80609290)
New user joined waiting to be verified as a human
hoxBIT*#7927<PHONE_NUMBER>70053662)
New user joined waiting to be verified as a human
hoxBIT*#8609<PHONE_NUMBER>68636451)
New user joined waiting to be verified as a human
hoxBIT*#6564<PHONE_NUMBER>98625280)
New user joined waiting to be verified as a human
hoxBIT*#2211<PHONE_NUMBER>44065024)
New user joined waiting to be verified as a human
hoxBIT*#4944<PHONE_NUMBER>70411268)
New user joined waiting to be verified as a human
hoxBIT*#2182<PHONE_NUMBER>37286943)
New user joined waiting to be verified as a human
hoxBIT*#8170<PHONE_NUMBER>93010689)
New user joined waiting to be verified as a human
hoxBIT*#8308<PHONE_NUMBER>86148352)
New user joined waiting to be verified as a human
hoxBIT*#7935<PHONE_NUMBER>98229278)
New user joined waiting to be verified as a human
hoxBIT*#1686<PHONE_NUMBER>42381340)
New user joined waiting to be verified as a human
hoxBIT*#6818<PHONE_NUMBER>07080468)
New user joined waiting to be verified as a human
YAGPDB.xyz
BOT
06-Jan-20 05:37 PM
hoxBIT*#2663<PHONE_NUMBER>91040529)
Kicked for not verifying within deadline
hoxBIT*#0282<PHONE_NUMBER>92532756)
Kicked for not verifying within deadline
hoxBIT*#5026<PHONE_NUMBER>92676121)
Kicked for not verifying within deadline
hoxBIT*#4075<PHONE_NUMBER>84649769)
Kicked for not verifying within deadline
hoxBIT*#0456<PHONE_NUMBER>19054336)
Kicked for not verifying within deadline
hoxBIT*#0584<PHONE_NUMBER>74254127)
Kicked for not verifying within deadline
hoxBIT*#0870<PHONE_NUMBER>02211881)
Kicked for not verifying within deadline
hoxBIT*#1913<PHONE_NUMBER>96663809)
Kicked for not verifying within deadline
hoxBIT*#0803<PHONE_NUMBER>60065542)
Kicked for not verifying within deadline
hoxBIT*#2523<PHONE_NUMBER>00099864)
Kicked for not verifying within deadline
hoxBIT*#7561<PHONE_NUMBER>66166323)
Kicked for not verifying within deadline
hoxBIT*#0253<PHONE_NUMBER>36720450)
Kicked for not verifying within deadline
hoxBIT*#6660<PHONE_NUMBER>79521843)
Kicked for not verifying within deadline
hoxBIT*#8998<PHONE_NUMBER>76230657)
Kicked for not verifying within deadline
hoxBIT*#6311<PHONE_NUMBER>04896542)
Kicked for not verifying within deadline
hoxBIT*#0126<PHONE_NUMBER>41253928)
Kicked for not verifying within deadline
hoxBIT*#2549<PHONE_NUMBER>25566219)
Kicked for not verifying within deadline
hoxBIT*#3216<PHONE_NUMBER>81995776)
Kicked for not verifying within deadline
hoxBIT*#2754<PHONE_NUMBER>45981442)
Kicked for not verifying within deadline
hoxBIT*#6434<PHONE_NUMBER>21187082)
Kicked for not verifying within deadline
hoxBIT*#9370<PHONE_NUMBER>98567197)
Kicked for not verifying within deadline
hoxBIT*#5851<PHONE_NUMBER>61467934)
Kicked for not verifying within deadline
hoxBIT*#7833<PHONE_NUMBER>83465729)
Kicked for not verifying within deadline
hoxBIT*#1755<PHONE_NUMBER>36395284)
Kicked for not verifying within deadline
hoxBIT*#1083<PHONE_NUMBER>95625738)
Kicked for not verifying within deadline
hoxBIT*#7843<PHONE_NUMBER>64148235)
Kicked for not verifying within deadline
hoxBIT*#8054<PHONE_NUMBER>28208640)
Kicked for not verifying within deadline
hoxBIT*#7090<PHONE_NUMBER>77660181)
Kicked for not verifying within deadline
hoxBIT*#9963<PHONE_NUMBER>32421635)
Kicked for not verifying within deadline
hoxBIT*#3361<PHONE_NUMBER>80609290)
Kicked for not verifying within deadline
hoxBIT*#2211<PHONE_NUMBER>44065024)
Kicked for not verifying within deadline
hoxBIT*#7927<PHONE_NUMBER>70053662)
Kicked for not verifying within deadline
hoxBIT*#8609<PHONE_NUMBER>68636451)
Kicked for not verifying within deadline
hoxBIT*#6564<PHONE_NUMBER>98625280)
Kicked for not verifying within deadline
hoxBIT*#4944<PHONE_NUMBER>70411268)
Kicked for not verifying within deadline
hoxBIT*#2182<PHONE_NUMBER>37286943)
Kicked for not verifying within deadline
hoxBIT*#8170<PHONE_NUMBER>93010689)
Kicked for not verifying within deadline
hoxBIT*#8308<PHONE_NUMBER>86148352)
Kicked for not verifying within deadline
hoxBIT*#1686<PHONE_NUMBER>42381340)
Kicked for not verifying within deadline
hoxBIT*#7935<PHONE_NUMBER>98229278)
Kicked for not verifying within deadline
hoxBIT*#6818<PHONE_NUMBER>07080468)
Kicked for not verifying within deadline
YAGPDB.xyz
BOT
06-Jan-20 05:49 PM
CryptInvest#2849<PHONE_NUMBER>23084300)
New user joined waiting to be verified as a human
CryptInvest#2849<PHONE_NUMBER>23084300)
New user joined waiting to be verified as a human
YAGPDB.xyz
BOT
06-Jan-20 10:11 PM
Lidware#1764<PHONE_NUMBER>72063745)
New user joined waiting to be verified as a human
YAGPDB.xyz
BOT
06-Jan-20 10:21 PM
Lidware#1764<PHONE_NUMBER>72063745)
Kicked for not verifying within deadline


- Added
dereference
as an alternative for dereferenceJSON
- Updated base files
- Re-added node 0.10 compatibility (regression since v3.0.0)
- Albeit implicit/untested compat as dev deps require node >=0.12
- Re-added missing engines property (regression since v3.2.0)
- Removed unused editions syntax
- UNPUBLISHED: due to missing engines field, replacement is v3.2.1
- Updated internal conventions
- Updated internal conventions
- Moved from CoffeeScript to ES6+
- Rewrote to ensure reference consistency
clone
has been "removed", as deepClone
is now clone
, as a shallow clone doesn't make sense
deepExtend
is now deep
shallowExtendPlainObjects
is now extend
safeShallowExtendPlainObjects
is now defaults
deepExtendPlainObjects
is now deep
safeDeepExtendPlainObjects
is now deepDefaults
dereference
is now dereferenceJSON
- Arrays now correctly deep extend
- Added
deepExtend
alias for deepExtendPlainObjects


| Package | Description |
|---|---|
| org.apache.edgent.apps.runtime |
Applications which provide monitoring and failure recovery to other
Edgent applications.
|
| org.apache.edgent.execution |
Execution of Edgent topologies and graphs.
|
| org.apache.edgent.execution.mbeans |
Management MBeans for execution.
|
| org.apache.edgent.execution.services |
Execution services.
|
| org.apache.edgent.graph.spi.execution | |
| org.apache.edgent.providers.development |
Execution of a streaming topology in a development environment .
|
| org.apache.edgent.providers.direct |
Direct execution of a streaming topology.
|
| org.apache.edgent.providers.iot |
Iot provider that allows multiple applications to
share an
IotDevice . |
| org.apache.edgent.runtime.appservice | |
| org.apache.edgent.runtime.etiao |
A runtime for executing an Edgent streaming topology, designed as an embeddable library
so that it can be executed in a simple Java application.
|
| org.apache.edgent.runtime.etiao.mbeans | |
| org.apache.edgent.runtime.jobregistry | |
| org.apache.edgent.samples.connectors |
General support for connector samples.
|
| org.apache.edgent.topology.spi.tester | |
| org.apache.edgent.topology.tester |
Testing for a streaming topology.
|
| Class and Description |
|---|
| DirectSubmitter
An interface for submission of an executable
that is executed directly within the current
virtual machine.
|
| Job
Actions and states for execution of an Edgent job.
|
| Class and Description |
|---|
| Job
Actions and states for execution of an Edgent job.
|
| Job.Action
Actions which trigger
Job.State transitions. |
| Job.Health
Enumeration for the summarized health indicator of the graph nodes.
|
| Job.State
States of a graph job.
|
| Submitter
An interface for submission of an executable.
|
| Class and Description |
|---|
| Job.Action
Actions which trigger
Job.State transitions. |
| Job.Health
Enumeration for the summarized health indicator of the graph nodes.
|
| Job.State
States of a graph job.
|
| Class and Description |
|---|
| Job
Actions and states for execution of an Edgent job.
|
| Class and Description |
|---|
| Job
Actions and states for execution of an Edgent job.
|
| Job.Action
Actions which trigger
Job.State transitions. |
| Job.Health
Enumeration for the summarized health indicator of the graph nodes.
|
| Job.State
States of a graph job.
|
| Class and Description |
|---|
| DirectSubmitter
An interface for submission of an executable
that is executed directly within the current
virtual machine.
|
| Job
Actions and states for execution of an Edgent job.
|
| Submitter
An interface for submission of an executable.
|
| Class and Description |
|---|
| DirectSubmitter
An interface for submission of an executable
that is executed directly within the current
virtual machine.
|
| Job
Actions and states for execution of an Edgent job.
|
| Submitter
An interface for submission of an executable.
|
| Class and Description |
|---|
| DirectSubmitter
An interface for submission of an executable
that is executed directly within the current
virtual machine.
|
| Job
Actions and states for execution of an Edgent job.
|
| Submitter
An interface for submission of an executable.
|
| Class and Description |
|---|
| DirectSubmitter
An interface for submission of an executable
that is executed directly within the current
virtual machine.
|
| Job
Actions and states for execution of an Edgent job.
|
| Class and Description |
|---|
| Job
Actions and states for execution of an Edgent job.
|
| Job.Action
Actions which trigger
Job.State transitions. |
| Class and Description |
|---|
| Job.Action
Actions which trigger
Job.State transitions. |
| Job.Health
Enumeration for the summarized health indicator of the graph nodes.
|
| Job.State
States of a graph job.
|
| Class and Description |
|---|
| Job
Actions and states for execution of an Edgent job.
|
| Class and Description |
|---|
| Job
Actions and states for execution of an Edgent job.
|
| Job.State
States of a graph job.
|
| Class and Description |
|---|
| Job
Actions and states for execution of an Edgent job.
|
| Submitter
An interface for submission of an executable.
|
| Class and Description |
|---|
| Job
Actions and states for execution of an Edgent job.
|
| Submitter
An interface for submission of an executable.
|
Copyright © 2016 The Apache Software Foundation. All Rights Reserved - 54ea8ac-20160726-1240


Toggle navigation
AWS Security Fundamentals
Home
cloudonaut.io
LinkedIn
Twitter
Exercise 1: IAM User
Expected duration: ~15 minutes.
Click on a task to get hints.
Task 1: Create IAM User with Login Profile and Access Key
Visit
https://console.aws.amazon.com/iam/home#/users
Click
Add user
button
Set
User name
, enable
Programmatic access
to generate an Access Key, enable
AWS Management Console access
to create a Login Profile
Skip permissions as you will add them later
Review your input
Copy and paste the sign-in link, your password and access key id & secret into a file on your machine or download the CSV file for later use
Use the sign-in link to test your IAM user in a different browser
Task 2: Enable MFA
Visit
https://console.aws.amazon.com/iam/home#/users
Click your user name
Select
Security Credentials
tab, click the pencil icon next to
Assigned MFA device
You are going to use the Google Authenticator app (a virtual device), choose
A virtual MFA device
You are asked if you have already installed a virtual device. You can acknowledged that because you will do it in the next step.
Install Google Authenticator on your mobile device:
iTunes App Store
Google Play Store
Now, you have enter two token generated with Google Authenticator.
Open Google Authenticator and add a new token by scanning the QR code in your browser window
Enter the first token and wait until a new token is generated. Enter the second token as well. Click
Activate Virtual MFA
.
Success!
Use the sign-in link to test your IAM user in a different browser. This time with MFA enabled.
Bonus 1: Enable Password Policy
Visit
https://console.aws.amazon.com/iam/home#/account_settings
Here you can set the password policy
Bonus 2: Add user to new group
No hints. How can you test your solution?


(Femnist) Puppets. (Feminist) Paper Dolls. (Feminist) Onesies. *We’ve got the perfect gifts for the empowered kids in your life in the FMF Feminist Store! [ http://store.feminist.org ]*
Snag feminist gifts that will spark their imagination, teach them some herstory, and - best of all - keep ‘em entertained after your holiday dinner.
[ http://store.feminist.org/ ]
You have received this e-mail because of your interest in women’s issues. To unsubscribe, please click on the link below.


ReportBuilder
Provides an API for programmatic construction of report definitions. Use jsreports.createReport()
to get a new ReportBuilder, as shown in the example below.
Kind: global class
- ReportBuilder
- new ReportBuilder()
- .barcode(value, encoding, left, top, width, height, opts)
- .box(fill, stroke, left, top, width, height, opts)
- .chart(chartType, [valueField], [labelField], left, top, width, height, opts)
- .column(width, detail, [header], [footer], [opts])
- .columnFooter(height)
- .columnHeader(height)
- .data(dataSourceId)
- .detail()
- .detailHeight()
- .done()
- .filterBy(field, comparison, compareTo)
- .footer(height)
- .groupBy(groupBy, [sortBy], [sortDir])
- .header(height)
- .hideDetail()
- .image(url, left, top, width, height, opts)
- .input(name, type, [defaultValue])
- .margins(top, right, bottom, left)
- .name(name)
- .page(width, height, units)
- .pageFooter(height)
- .pageHeader(height)
- .series(valueField, [labelField], [colorField])
- .showDetail()
- .sortDetailBy(sortBy, [sortDir])
- .table(left, top, width, height, opts)
- .text(text, left, top, width, height, opts)
- .toString()
new ReportBuilder()
Do not call directly. Use jsreports.createReport()
to get a new ReportBuilder.
Example
// Create a new report definition
var reportDef = jsreports.createReport()
.data("time")
.groupBy("Client_ID")
.header()
.text("Group header text")
.footer()
.text("Group footer")
.detail()
.text("Detail with [data]")
.input('Client', 'text')
.filterBy('Client_name', 'contains', '[?Client]')
.done();
// Render the report
jsreports.render({
report_def: reportDef,
datasets: myDataSets, // defined elsewhere
target: $('#myDiv')
});
.barcode(value, encoding, left, top, width, height, opts)
Add a barcode element at the specified location.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| value | string |
The expression to be evaluated and displayed as a barcode |
| encoding | string |
One of CODE39, CODE128, UPC, ITF14, pharmacode, QR |
| left | number |
The distance from the left edge of the section to the left edge of the element, in report units (inches or mm), not including the page margin |
| top | number |
The distance from the top edge of the section to the top edge of the element, in report units |
| width | number |
The width of the element in report units |
| height | number |
The height of the element in report units |
| opts | object |
An object containing additional properties to apply to the element |
.box(fill, stroke, left, top, width, height, opts)
Add a box element at the specified location.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| fill | string |
The hex color code of the fill color, or 'transparent' (e.g. '#fc0') |
| stroke | string |
The hex color code of the border color, or 'transparent' (e.g. '#000') |
| left | number |
The distance from the left edge of the section to the left edge of the element, in report units (inches or mm), not including the page margin |
| top | number |
The distance from the top edge of the section to the top edge of the element, in report units |
| width | number |
The width of the element in report units |
| height | number |
The height of the element in report units |
| opts | object |
An object containing additional properties to apply to the element |
.chart(chartType, [valueField], [labelField], left, top, width, height, opts)
Add a chart element at the specified location.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| chartType | string |
One of 'line', 'bar', 'pie' |
| [valueField] | string |
The data field containing the y-values for line and bar charts, and slice sizes for pie charts |
| [labelField] | string |
The field containing slice labels for pie charts |
| left | number |
The distance from the left edge of the section to the left edge of the element, in report units (inches or mm), not including the page margin |
| top | number |
The distance from the top edge of the section to the top edge of the element, in report units |
| width | number |
The width of the element in report units |
| height | number |
The height of the element in report units |
| opts | object |
An object containing additional properties to apply to the element |
.column(width, detail, [header], [footer], [opts])
Add a data series to the previously added table element (see table)
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| width | string | number |
The width of the column, either a percentage of the table width (e.g. '100%') or a number in report units (e.g. 4 meaning 4 inches) |
| detail | string |
The text expression to evaluate and render in each detail cell in this column |
| [header] | string |
The text expression to evaluate and render in the table header cell in this column (or null) |
| [footer] | string |
The text expression to evaluate and render in the table footer cell in this column (or null) |
| [opts] | object |
An object containing additional properties to apply to the column |
.columnFooter(height)
Add a column header to the report.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| height | number |
The height of the header, in report units (inches or mm). |
.columnHeader(height)
Add a column header to the report.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| height | number |
The height of the header, in report units (inches or mm). |
.data(dataSourceId)
Set the report's base data source.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| dataSourceId | string |
The ID of the data source; must match a defined data source ID when the report runs |
.detail()
Move focus to the report's detail section, to add elements there using subsequent add[Element] calls.
Kind: instance method of ReportBuilder
.detailHeight()
Set the height of the report's detail section, in report units (inches or mm).
Kind: instance method of ReportBuilder
.done()
Return the report definition in object form. Call this at the end of a chain of calls that define the report. The object returned by this method is the report definition that you can pass to jsreports.render() or jsreports.export().
Kind: instance method of ReportBuilder
Example
// Define a simple report with one text element
var reportDef = jsreports.createReport()
.data('mydata')
.text('Data value is [myfield]')
.done();
.filterBy(field, comparison, compareTo)
Add a filter to restrict which records are shown in the report.
To filter by a user input, use '[?InputName]'
syntax
in the compareTo argument.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| field | string |
Name of the data field to filter |
| comparison | string |
One of: is, isnot, contains, doesnotcontain, gt, lt, gte, lte |
| compareTo | string |
Expression against which the data field will be compared |
.footer(height)
Add a footer to the current level. By default, the level is the report itself; if groupBy has been called, then the footer will be added to the most recent grouping level.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| height | number |
The height of the footer, in report units (inches or mm). |
.groupBy(groupBy, [sortBy], [sortDir])
Add a new sub-grouping. If groupBy has already been called, this adds a sub-grouping beneath that grouping. Records will be grouped by the values in the groupBy data field and the groups will be arranged relative to each other based on the sortBy data field, if specified. Groups do not have headers or footers by default; use addHeader and addFooter to add them.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| groupBy | string |
The data field containing the values defining the groups |
| [sortBy] | string |
The data field by which groups should be sorted relative to each other (default: same as groupBy) |
| [sortDir] | string |
One of: 'asc', 'desc' (ascending = A-Z, 0-9) (default: 'asc') |
.header(height)
Add a header to the current level. By default, the level is the report itself; if groupBy has been called, then the header will be added to the most recent grouping level.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| height | number |
The height of the header, in report units (inches or mm). |
.hideDetail()
Make the report's detail section invisible.
Kind: instance method of ReportBuilder
.image(url, left, top, width, height, opts)
Add an image element at the specified location.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| url | string |
The url of the image, either relative or absolute |
| left | number |
The distance from the left edge of the section to the left edge of the element, in report units (inches or mm), not including the page margin |
| top | number |
The distance from the top edge of the section to the top edge of the element, in report units |
| width | number |
The width of the element in report units |
| height | number |
The height of the element in report units |
| opts | object |
An object containing additional properties to apply to the element |
.input(name, type, [defaultValue])
Add a user input to the report. Inputs appear in the report viewer toolbar and allow you to filter the report by user-provided values. To filter by an input value, see addFilter.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| name | string |
User-visible name of the input field |
| type | string |
One of "text", "number", "date" |
| [defaultValue] | string |
The default value for the input |
.margins(top, right, bottom, left)
Set the page margins for the report. Margins will use the units defined for the report in setPage, or inches if setPage is not called. If only one argument is supplied, it will be used for all four margins.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| top | number |
The top margin height, in report units (inches or mm). |
| right | number |
The right margin width, in report units. |
| bottom | number |
The bottom margin height, in report units. |
| left | number |
The left margin width, in report units. |
.name(name)
Set the report's name (used to generate filenames for download)
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| name | string |
The new name for the report |
.page(width, height, units)
Set page dimensions for the report.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| width | number |
The width of the page, in report units (inches or mm). |
| height | number |
The height of the page, in report units (inches or mm). |
| units | string |
The report units ('in' or 'mm'), defaults to inches |
Example
// Set the report to 8.5 x 11 inches (US letter size)
jsreports.createReport()
.setPage(8.5, 11, "inches")
.pageFooter(height)
Add a page footer to the report.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| height | number |
The height of the footer, in report units (inches or mm). |
.pageHeader(height)
Add a page header to the report.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| height | number |
The height of the header, in report units (inches or mm). |
.series(valueField, [labelField], [colorField])
Add a data series to the previously added chart element (see chart)
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| valueField | string |
The data field containing the y-values for line and bar charts, and slice sizes for pie charts |
| [labelField] | string |
The field containing slice labels for pie charts |
| [colorField] | string |
The field containing slice labels for pie charts |
.showDetail()
Make the report's detail section visible.
Kind: instance method of ReportBuilder
.sortDetailBy(sortBy, [sortDir])
Order records in the report detail section by the given data field, in the given direction.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| sortBy | string |
The name of the data field by which to sort |
| [sortDir] | string |
One of: 'asc', 'desc' (ascending = A-Z, 0-9) (default: 'asc') |
.table(left, top, width, height, opts)
Add a table element at the specified location.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| left | number |
The distance from the left edge of the section to the left edge of the element, in report units (inches or mm), not including the page margin |
| top | number |
The distance from the top edge of the section to the top edge of the element, in report units |
| width | number |
The width of the element in report units |
| height | number |
The height of the element in report units |
| opts | object |
An object containing additional properties to apply to the element |
Example
.table(0, 1.25, 4.75, 2.5, { data: 'changeItems', hasFooter: true,
groupBy: 'category', fontSize: 9, hideRowWhenExpr: '!description'
})
.column('50%', ' [description]', '', '', {
align: 'left', group0Header: '[category]' })
.column('25%', '[currentPeriod]', 'This Period', '[SUM(currentPeriod)]', {
align: 'right',
detailStyle: {
pattern: '#,##0.00'
},
group0Header: '[SUM(currentPeriod)]',
group0HeaderStyle: {
pattern: '#,##0.00'
}
})
.column('25%', '[ytd]', 'Year-to-Date', '[SUM(ytd)]', {
align: 'right',
detailStyle: {
pattern: '#,##0.00'
},
group0Header: '[SUM(ytd)]',
group0HeaderStyle: {
pattern: '#,##0.00'
}
})
.text(text, left, top, width, height, opts)
Add a text element at the specified location.
Kind: instance method of ReportBuilder
| Param | Type | Description |
|---|---|---|
| text | string |
The content of the text element. |
| left | number |
The distance from the left edge of the section to the left edge of the element, in report units (inches or mm), not including the page margin |
| top | number |
The distance from the top edge of the section to the top edge of the element, in report units |
| width | number |
The width of the element in report units |
| height | number |
The height of the element in report units |
| opts | object |
An object containing additional properties to apply to the element |
.toString()
Like done(), but returns the report definition in string format.
Kind: instance method of ReportBuilder


Look at this pretty nav bar, fully Cobalt powered !
Tap on bar buttons and watch below, buttons names should appears
Bars actions
Change bars parameters (title, colors) Show bottom bar Change bars visibility Completely change bars Push a new page with bars parametersButtons actions (here applyed on sun)
show/hide an action disbale/enable an action add/increase badge value change action parameters


SAPS patrol dog, Ounooi, stable after near fatal stabbing on E Cape beach
by Azarrah KarrimSix-year-old Belgian shepherd police dog Ounooi is in a stable condition after she was stabbed by a suspect on Saturday morning.
Ounooi is attached to the Port Alfred K9 unit, and responded to a housebreaking complaint with her human SAPS members in the early hours of Saturday, said Mali Govender from the South African Police (SAPS).
The team followed a lead to the beach in the small Eastern Cape town when Ounooi's handler spotted the suspect.
Govender explained that Ounooi's handler warned the suspect to stop and he ignored the command. He then unleashed Ounooi.
"The handler then released his patrol dog – Ounooi and whilst she attempted to apprehend the suspect, the offender then started to stab Ounooi on her upper body and in the chest area.
"Weak from the stab wounds, Ounooi collapsed and the suspect ran towards the water.
"Ounooi was taken to the local vet for medical treatment. The stab wounds damaged muscles close to her heart. She is currently in a stable condition and has been booked off duty to recuperate," Govender explained.
The suspect could not be found, and the search is ongoing, said police.
Port Alfred police Cluster Commander, Brigadier Morgan Govender wished Ounooi a heartfelt and speedy recovery.
"Ounooi has displayed extreme dedication, bravery and courage throughout her four years in the service and has been instrumental in apprehending several suspects whilst on duty. The handler will be referred for trauma counselling."
Govender condemned the attack on Ounooi.
"An attack on a police official is an attack on the state and similarly, an attack on any of our serving canine or equine personnel is an attack on the state.
"These faithful animals serve alongside their human police officers of the SAPS with passion, discipline and dedication," said Govender.


WebDAV allows you to easily transfer files and folders from your local computer to your Resources folder in My Workspace, a course site, or a project site. WebDAV stands for "Web-based Distributed Authoring and Versioning". It is a set of extensions to the HTTP protocol that allows users to collaboratively edit and manage files on remote web servers.
Once you have set up WebDAV, your computer will treat your Resources section like any other folder on your local system. You will be able to drag and drop files and folders from Resources just as you would in My Computer or Computer in Windows, or the Finder on a Mac.
For more information about WebDAV, including technical specifications and major features, see the WebDAV FAQ.
Setup options: For Windows 7 and Vista, it is recommended that you download AnyClient for WebDAV connections. On a Windows XP computer, you can make WebDAV connections through My Network Places. Mac OS X 10.4 (Tiger) and newer supports secure WebDAV connections in the Finder. If you use Mac OS X 10.3 (Panther) or earlier, download Goliath to use WebDAV.
Delete
.
Resources
. Click Upload-Download Multiple
Resources
. Your site ID should appear near the top of the page.
Alternatively, see Determining your site's siteID.
For help documentation about using WebDAV, see WebDAV.


"A woman, a plan, a canal – Panam-ow-a!"
My learning plan for completing EDA Bootcamp
February 2019
My goals
- Complete dev portfolio pieces that I can show to prospective employers!
- Increase my fluency in web development tools – HTML, CSS, JS, React... And More!
- Write code (at least) 6 days a week.
- Challenge myself by completing all stretch goals and continuing on to create my own stretches.
- Engage with my classmates and facilitators – embrace group projects!
- Get things finished within the time frames I set for myself – done is better than perfect!
Strengths to utilise
- Problem solving – My natural default is to adopt a positive mindset when solving problems and I get a lot of satisfaction from working things out. I will continue to practice this when facing new obstacles.
- Big picture planning – I love looking at things from the top down and seeing how all the parts fit together. This helps me plan all the different parts of a project and not get bogged down in the details.
- Working with others – I like to solve problems with other people! I enjoy taking the time to help others and I also feel comfortable asking for help. I think this mindset will help me to get the most out of my time at EDA.
Potential pitfalls
- I can have trouble getting things finished, especially when I’m done with the exciting parts and
only the routine, tidying-up parts are left. My strategies for tackling this are:
- Use time-boxing so the ends of projects aren’t dragged out
- Practice “Done is better than perfect”
- Tackle unpleasant tasks in the morning - my focus is best in the hours before midday so this is a good time to tackle sticky tasks.
- A high level of stress can make me want to withdraw when I should be reaching out to others.
Strategies to address this are:
- Establish regular check-ins – this creates a habit of communication and a space for any concerns to be brought up early
- Commit to showing up, even if I feel I might not be able to fully participate – I will make my best effort to show up and in exchange the course facilitators will respect any details I share with them about my ability to contribute fully at that time.
Other strategies
Reaching my goals will require focused work every day. To maintain this workload I will need to support my mental and physical health. In addition to the strategies above, I will work on:
- Sleep, food, social interaction, going outside – maintain regular, sustainable habits that ensure I can function well when working.
- Breaks – take regular breaks from sitting down and looking at my screen throughout my work day.
- Work to my internal clock – I focus best in the mornings and am at my least productive in the middle of the day. I will work this understanding into my schedule as much as I am able to (while working around others and group work).
- Turning up – My default setting is to always show up (unless staying home is required to support my ongoing health).
If I come across any issues that may affect my ability to continue participating in the course, my first stop will be to contact my facilitator and talk to them about what’s happening. I expect the EDA facilitators to listen to any concerns I have, be available within the time frames they have indicated, and to respect that I have the best understanding of my own experiences.
Outside commitments
- For the first 3 Thursday nights of bootcamp I have a work commitment and will need to leave by 5:30pm.


class: center, middle, inverse, title-slide # 2.7 — Regulation & Takings ## ECON 315 • Economics of the Law • Spring 2021 ### Ryan Safner
Assistant Professor of Economics
<EMAIL_ADDRESS>ryansafner/lawS21
lawS21.classes.ryansafner.com
--- # What Would an Efficient Property Law Look Like? .pull-left[ - Recall the 4 questions any property system must answer: 1. .gray[What can be privately owned?] 2. .hi-purple[What can (and can't) an owner do with her property?] 3. .gray[How are property rights established?] 4. .gray[What remedies are available when property rights are violated?] ] .pull-right[ .center[ ![](../images/propertybundleofrights.png) ] ] --- class: inverse, center, middle # Eminent Domain --- # Eminent Domain .pull-left[ .smallest[ - One potential role for government, provision of .hi[public goods] - Markets tend to *under*supply due to free rider problem - To do this, government needs .hi-turquoise[land], which may already be owned by private parties - In most countries, governments have right of .hi[eminent domain]: can seize property when owner does not want to sell - Also called a .hi[“taking”] (because that’s what the government is doing!) ] ] .pull-right[ .center[ ![:scale 70%](../images/park2.png) ![:scale 70%](../images/roads.png) ] ] --- # Eminent Domain .left-column[ .center[ ![](../images/constitution.png) ] ] .right-column[ > “nor shall private property be taken for public use, without just compensation” United States Constitution, Amendment V ] --- # Eminent Domain: Restrictions .pull-left[ - Constitution constrains government’s ability to seize private property: 1. Must be for a .hi-purple[“public-use”] 2. Must provide .hi-purple[“just compensation”] to subject of taking ] .pull-right[ .center[ ![:scale 70%](../images/park2.png) ![:scale 70%](../images/roads.png) ] ] --- # Eminent Domain: Restrictions .pull-left[ - “Just compensation” consistently interpreted as .hi-purple[fair market value], what owner would likely have been able to sell the property for - Note this might be much lower than owner’s .hi-turquoise[subjective value] placed on the property ] .pull-right[ .center[ ![:scale 70%](../images/park2.png) ![:scale 70%](../images/roads.png) ] ] --- # Eminent Domain: Example .pull-left[ .smallest[ .bg-washed-green.b--dark-green.ba.bw2.br3.shadow-5.ph4.mt5[ .hi-green[Example]: Suppose .blue[Ann] owns an estate whose fair market value is $100,000. ] - .blue[Ann] does not want to sell it because she (subjectively) values the estate at $175,000 for sentimental reasons ] ] .pull-right[ .center[ ![](../images/house.JPG) ] ] --- # Eminent Domain: Example .pull-left[ .smallest[ .bg-washed-green.b--dark-green.ba.bw2.br3.shadow-5.ph4.mt5[ .hi-green[Example]: Suppose .blue[Ann] owns an estate whose fair market value is $100,000. ] - .blue[Ann] does not want to sell it because she (subjectively) values the estate at $175,000 for sentimental reasons - Suppose .red[Bob] covets .blue[Ann]’s estate, and would be willing to pay up to $120,000 for it - .blue[Ann] values the estate more than .red[Bob], and does not want to sell to him - The house is efficiently allocated to .blue[Ann] who values it more ] ] .pull-right[ .center[ ![](../images/house.JPG) ] ] --- # Eminent Domain: Example .pull-left[ .smallest[ .bg-washed-green.b--dark-green.ba.bw2.br3.shadow-5.ph4.mt5[ .hi-green[Example]: Suppose .blue[Ann] owns an estate whose fair market value is $100,000. ] - Suppose instead, .red[Bob] contributes $10,000 to the .green[Mayor]’s political campaign - The city .hi-purple[condemns] .blue[Ann]’s estate via eminent domain, compensating her $100,000 and then sells it to .red[Bob] at $100,000 - .red[Bob] gains $10,000, the .green[Mayor] gains $10,000, and .blue[Ann] loses $75,000 ] ] .pull-right[ .center[ ![](../images/housedemolish.jpg) ] ] --- # Eminent Domain: Example .pull-left[ - Eminent domain prevents .red[Bob] from having to pay .blue[Ann]’s full reservation price ($175,000) - The .hi-purple[just compensation] requirement for eminent domain alone clearly does not prevent abuse like this - Eminent domain must also be for a .hi-purple[public use] of the land ] .pull-right[ .center[ ![](../images/housedemolish.jpg) ] ] --- # Eminent Domain: Public Use .pull-left[ - But eminent domain should not be used on a whim to produce *any* public good - Individuals’ subjective value often is higher than fair market value - Eminent domain destroys a lot of surplus ] .pull-right[ .center[ ![](../images/housedemolish.jpg) ] ] --- # Eminent Domain: Public Use .pull-left[ .smallest[ .bg-washed-green.b--dark-green.ba.bw2.br3.shadow-5.ph4.mt5[ - .hi-green[Example]: motorists would be willing to pay $110,000 for a road through .blue[Ann]’s property ] - .blue[Government] forces .red[Ann] to sell at $100,000 - Eminent domain *apparently* creates $10,000 in surplus! - But remember, .blue[Ann] subjectively values her property at $175,000, so really a net social loss of **-$65,000!** ] ] .pull-right[ .center[ ![](../images/housedemolish.jpg) ] ] --- # Eminent Domain: Contiguous properties .pull-left[ .smaller[ - Main economic argument for eminent domain’s efficiency: when dealing with .hi-purple[contiguous properties] government must purchase to provide a public good - .hi-green[Example]: a highway that goes through 500 residential properties - Gov’t must purchase *all* 500 properties - A single property along the line unwilling to sell can .hi-purple[hold up] the entire project - High transaction costs from strategic bargaining ] ] .pull-right[ .center[ ![](../images/eminentdomainproperties.png) ] ] --- # Eminent Domain: Contiguous properties .pull-left[ .smallest[ - `\(q'\)`: amount of parcels purchased so far - `\(q^{\star}\)`: optimal number required for public use - A: .red[owner]’s reservation price - B: .blue[government]’s maximum WTP - `\(\overline{AB}\)` bargaining range between .red[parcel owner] and .blue[government] - for any regular transaction, owner can ask for up to B or walk away ] ] .pull-right[  ] --- # Eminent Domain: Contiguous properties .pull-left[ .smallest[ - `\(q'\)`: amount of parcels purchased so far - `\(q^{\star}\)`: optimal number required for public use - A: .red[owner]’s reservation price - B: .blue[government]’s maximum WTP - `\(\overline{AB}\)` bargaining range between .red[parcel owner] and .blue[government] - for any regular transaction, owner can ask for up to B or walk away - .hi-red[Holdout] recognizes he can extract entire surplus `\(\Delta ABC\)` from .blue[government] - Knows .blue[government] can’t proceed without `\(q'\)`! ] ] .pull-right[  ] --- # Poletown Neighborhood Council v. Detroit .pull-left[ .smallest[ - 1981, General Motors threatened to close Detroit factory - 6,000 jobs, millions of dollars in city tax revenue - City used eminent domain to condemn entire neighborhood - 1,000 homeowners and 100 businesses forced to sell - land then given to GM for upgraded factory - City claimed .hi-turquoise[employment] and .hi-turquoise[tax revenues] are public goods, justified taking ] ] .pull-right[ .center[ ![](../images/gmdetroit.jpg) ] ] --- # Poletown Neighborhood Council v. Detroit .pull-left[ - MI Supreme Court: > “Alleviating unemployment and revitalizing the economic base of the community [are valid public uses]...the benefit to a private interest [GM] is merely incidental” - Overturned in 2004 *County of Wayne v. Hathcock* - found that taking property for developing a private business did not constitute a valid public use ] .pull-right[ .center[ ![](../images/gmdetroit.jpg) ] ] --- # Kelo v. City of New London .pull-left[ .smaller[ - Pfizer planned to build large research facility in downtown New London, CT - City hoped this would attract other businesses - Plaintiffs owned houses on portions of this land - Would otherwise be difficult to develop this land with sporadic residential properties ] ] .pull-right[ .center[ ![](../images/susettekelo.jpg) .smallest[ Susette Kelo ] ] ] --- # Kelo v. City of New London .pull-left[ .smaller[ - City condemned the houses, claiming “the area was sufficiently distressed to justify a program of economic rejuvenation” - Plaintiffs attorneys argued “If jobs and taxes can be a justification for taking someone's home and business, then no property in America is safe” - CT Supreme Court ruled it a valid public use; U.S. Supreme Court in 2005 concurred (5-4) it was a valid public use - Ironically, Pfizer never built their facility and the land remains undeveloped ] ] .pull-right[ .center[ ![](../images/susettekelo.jpg) .smallest[ Susette Kelo ] ] ] --- # Kelo v. City of New London .pull-left[ - Major political backlash to *Kelo* case - 45 States passed laws or amended their State constitutions to restrict eminent domain power, primarily excluding “economic development” as a valid public use ] .pull-right[ .center[ ![](../images/susettekelo.jpg) .smallest[ Susette Kelo ] ] ] --- # Eminent Domain: Public Use .pull-left[ - *The law* requires that eminent domain be restricted to public uses - *Economic efficiency* suggests only using eminent domain for dealing with holdout problems (contiguous properties) on high-valued public goods - We can still use taxes to finance public goods and solve the free rider problem ] .pull-right[ .center[ ![](../images/holdout3.jpg) ] ] --- # Eminent Domain: Public Use .pull-left[ - *The law* requires that eminent domain be restricted to public uses - *Economic efficiency* suggests only using eminent domain for dealing with holdout problems (contiguous properties) on high-valued public goods - We can still use taxes to finance public goods and solve the free rider problem ] .pull-right[ .center[ ![](../images/eminentdomaintable.png) ] ] --- # Eminent Domain and Takings .pull-left[ .smallest[ - Takings are an .hi-purple[involuntary exchange] - Possibility of a taking creates .hi-turquoise[uncertainty] - Perverse incentives for State to expropriate private property for its own ends - Unlike taxes, takings concentrate cost on individual owners - Property owners go to great lengths to protect their property - Lots of potential rent-seeking in “offense” and “defense” & the politics of redistribution ]] .pull-right[ .center[ ![](../images/distribution.jpg) ] ] --- # Eminent Domain and Takings .pull-left[ - Hence, public use and just compensation constraint - So takings should only be used under limited conditions: .hi-purple[for public use and with just compensation, when transaction costs (hold out problems, etc) preclude the government’s purchase by consent] ] .pull-right[ .center[ ![](../images/distribution.jpg) ] ] --- class: inverse, center, middle # Regulation --- # Regulation .pull-left[ - Regulation `\(\approx\)` any constraints on use of private property - The State has broad authority to regulate via the .hi-purple[police power], often to promote “health, safety, morals and the general welfare” - If a regulation diminishes the value of property enough, considered a .hi[taking] that requires just compensation ] .pull-right[ .center[ ![](../images/redtape.jpg) ] ] --- # When Is a Regulation a Taking? .pull-left[ - Several legal tests that developed over time - .hi-purple[Physical invasion test]: if regulation involves *any* physical invasion of the property by government, just compensation is due ] .pull-right[ .center[ ![](../images/redtape.jpg) ] ] --- # Noxious Use Doctrine .pull-left[ .smallest[ - *Mugler v. Kansas* 1887 - Kansas passed a law prohibiting the manufacture of liquor without a permit, judging it to be a nuisance - Mugler owned a brewery, sued: this is a taking, demands just compensation - Kansas Supreme Court upheld the law; U.S. Supreme Court upheld the law as well, creating the .hi-purple[noxious use doctrine] - regulations curbing noxious uses of property injurious to health, safety, morals are consistent with police power, do not require compensation ] ] .pull-right[ .center[ ![](../images/temperance.jpg) ] ] --- # Diminution of Value .pull-left[ .smallest[ - *Pennsylvania Coal v. Mahon* 1922 - In late 1800s, PA Coal purchased mineral and support rights tied to a piece of land, Mahon owned the surface rights - 1921 PA legislature passed the Kohler Act, prohibiting: > “mining of anthracite coal in such a way as to cause the subsidence of, among other things, any structure used as a human habitation” - PA Coal sued PA government, claiming this destroyed the value of their property, and requires compensation as a taking ] ] .pull-right[ .center[ ![](../images/pacoal.jpg) ] ] --- # Pennsylvania Coal v. Mahon .pull-left[ - *Pennsylvania Coal v. Mahon* 1922 - Lower court sided with government - U.S. Supreme Court sided with PA Coal, that the regulation substantially .hi-purple[diminished the (economic) value] ] .pull-right[ .center[ ![](../images/pacoal.jpg) ] ] --- # Pennsylvania Coal v. Mahon: Majority Opinion .left-column[ .center[ ![:scale 80%](../images/holmes.jpg) .smallest[ Oliver Wendell Holmes, Jr. 1841—1935 Associate Justice of U.S. Supreme Court ]] ] .right-column[ > “What makes the right to mine coal valuable is that it can be exercised with profit. To make it commercially impracticable to mine certain coal has very nearly the same effect for constitutional purposes as appropriating or destroying it. This we think that we are warranted in assuming that the statute does...” > “The general rule at least is, that while property may be regulated to a certain extent, if regulation goes too far it will be recognized as a taking.” ] --- # Pennsylvania Coal v. Mahon: Dissent .left-column[ .center[ ![:scale 80%](../images/brandeis.jpeg) .smallest[ Louis Brandeis 1856—1941 Associate Justice of U.S. Supreme Court ]] ] .right-column[ .smaller[ > “Every restriction upon the use of property imposed in the exercise of the police power deprives the owner of some right theretofore enjoyed, and is, in that sense, an abridgment by the States of rights in property without making compensation. But restriction imposed to protect the public health, safety or morals from dangers threatened is not a taking. The restriction here in question is merely the prohibition of a noxious use. The property so restricted remains in the possession of its owner. The State does not appropriate it or make any use of it. The State merely prevents the owner from making a use which interferes with paramount rights of the public.” ] ] --- # Diminution of Value .pull-left[ .smaller[ - Famously, a lot of debate between Holmes & Brandeis’ opinions of this famous case - But they both agree on .hi-turquoise[the law], they disagree about .hi-turquoise[the facts] - Law: if regulation “goes too far” in diminishing value, compensation is owed - Holmes: harm from regulation > harm from PA Coal’s externality, went too far - Brandeis: harm from PA Coal’s externality > harm from regulation, did not go too far ] ] .pull-right[ .center[ ![](../images/pacoal.jpg) ] ] --- # Blume and Rubinfeld .pull-left[ .smaller[ - Blume and Rubinfeld (1984) argue that compensation for takings is efficient - Shifts the burden of regulation’s cost from small group (property owners affected) to large group (all taxpayers) - Normally, these are zero-sum transfers (no effect on efficiency)...so long as we assume risk-neutrality ] .source[Blume, Lawrence and Daniel L. Rubinfeld, 1984, “Compensation for Takings: An Economic Analysis,” *California Law Review* 72(4): 569-628] ] .pull-right[ .center[ ![](../images/housedemolish.jpg) ] ] --- # Blume and Rubinfeld .pull-left[ .smaller[ - But if people are risk-averse, compensation effectively acts as an insurance policy against regulatory harms - If insurance against regulatory harm was offered on the market, people would probably buy it - But private insurers do not provide this, for normal market failure reasons (adverse selection, moral hazard, etc) ] .source[Blume, Lawrence and Daniel L. Rubinfeld, 1984, “Compensation for Takings: An Economic Analysis,” *California Law Review* 72(4): 569-628] ] .pull-right[ .center[ ![](../images/housedemolish.jpg) ] ] --- # Blume and Rubinfeld .pull-left[ - Requiring government to provide compensation for regulatory takings provides exactly this form of insurance - By compensating owners *after* harm occurs, spreads cost of regulation over everyone .source[Blume, Lawrence and Daniel L. Rubinfeld, 1984, “Compensation for Takings: An Economic Analysis,” *California Law Review* 72(4): 569-628] ] .pull-right[ .center[ ![](../images/housedemolish.jpg) ] ] --- # Wrapping Up Property Law .pull-left[ - Recall the 4 questions any property system must answer: 1. .gray[What can be privately owned?] 2. .gray[What can (and can't) an owner do with her property?] 3. .gray[How are property rights established?] 4. .gray[What remedies are available when property rights are violated?] ] .pull-right[ .center[ ![](../images/propertybundleofrights.png) ] ] --- # Wrapping Up Property Law .pull-left[ - Main set of questions: what are the .hi-purple[benefits] and .hi-purple[costs] of: - having property rights (at all)? - expanding property rights to cover more things? - introducing an exception/limitation to property rights? - In what circumstances will benefits `\(>\)` costs? - Coming up next: .hi[contract] law ] .pull-right[ .center[ ![](../images/scale.png) ] ]