Principal Component Analysis
As we work with real world data, we notice that the complexity increases; both in terms of dependency of variables on each other and dimensionality (number of variables) of the problem. Several techniques exist for analysis of such information and to make it easier to extract important properties for the purpose of better computation and visualization. One such method is the Principal Component Analysis (PCA), which emphasises on the variance of the data to extract the directions which maximize the data variation.
One of the major applications of PCA is dimensionality reduction, which is attained by choosing the transformed variables (obtained from projection of original variables on the direction of maximum variances, or the principal components).
Few of the prerequisites for understanding PCA are: Covariance, Eigenvectors, and Singular Value Decomposition.
Note: Some resources to read about the aforementioned topics:
- Eigenvalues & Eigenvectors: Setosa visualization, 3Blue1Brown
- SVD: This nice Medium blogpost
For example, take some data (Say, \(X\)) with zero mean (if mean is not zero then subtract all values \(x_i\) with the mean, \(\mu\)). The covariance of this data (Say \(C_X\)) is given by:
\[C_X = \frac{1}{n}\cdot X\cdot X^T\]We want to figure out a transformation function \(W\) and apply on the data \(X\) so that in the resulting data \(Y\), the variables will be independent of each other. In simple terms, the covariance between any two distinct columns of \(Y\) will be zero, i.e. the non-diagonal elements of the covariance matrix \(C_Y\) of \(Y\) will be zero. This implies that \(C_Y\) will be a diagonal matrix.
Writing the transformation from \(X\) to \(Y\), we have:
\[Y = X\cdot W\]To solve for the covariance matrix of Y, we can write
\[C_Y = \frac{1}{n}\cdot Y\cdot Y^T\]and since, \(Y = W\cdot X\), we have,
\[C_Y = \frac{1}{n}\cdot W\cdot X\cdot (W\cdot X)^T\\ C_Y = \frac{1}{n}\cdot W\cdot X\cdot X^T\cdot W^T\\ C_Y = W\cdot (\frac{1}{n}\cdot X\cdot X^T)\cdot W^T\\ C_Y = W\cdot C_X\cdot W^T\]or,
\[C_X = W^T\cdot C_Y\cdot W\]We know that, \(C_Y\) is supposed to be a diagonal matrix. What does this equation remind us of? but of course, the Singular Value Decomposition (SVD). Thus, If we take \(W\) as the matrix of the eigenvectors and \(C_Y\) as the diagonal matrix of the eigenvalues, the above equation will hold true, making the matrix \(W\), of eigenvectors of covariance of \(X\), our transformation matrix.
Computing the above values for our data, and plotting the directions of the obtained eigenvalues, we get the following:
As can be seen clearly, one of the eigenvectors falls along the direction of maximum variance of the data. On transforming the data \(X\) into \(Y\), and plotting again, we get:
Printing the covariance of the new data \(Y\), we can see it’s a diagonal matrix. Also, the equation \(W\cdot C_Y\cdot W^T\) returns the original covariance matrix \(C_X\).
Dimension Reduction
One of the major applications of PCA is it’s ability to choose the dimensions of maximum variation, i.e. taking the projection of the data along those components only will not affect the complexity of the data by a significant amount and data can be reconstructed back to an approximation of it’s original form with the lower dimensional data as well.
On paying more attention to the covariance matrix \(C_Y\), we see that the magnitude of the eigenvalues along the diagonal of the matrix is related to the amount of variances explained by the said eigenvector direction.
So, sorting the eigenvalues and corresponding eigenvector pairs in decreasing order and taking only the top values becomes the ideal way of choosing the eigenvectors for obtaining maximum explained variances.
For further demonstration, let’s use another dataset (MNIST) for PCA.
Computing the eigenvectors and eigenvalues for the above dataset and sorting them on the basis of eigenvalues (descending order), we can store them back in numpy arrays.
And plot the eigenvalues, and the cumulative sum of the eigenvalues (Explained Variances).
From the above curve for the cumulative sum, denoting the explained variances of the original data, we can conclude that approximate 150 dimensions shall be enough to get ~95% of the variances of the original dataset, and about 326 dimensions out of 784 for ~99%.
To reduce the number of dimensions, we have to select the number of dimensions we want \(k\) and use only those \(k\) columns from \(W\) to form the transformation matrix (Say \(W'\)). Thus the transformation and reconstruction operation become:
\[Y_{m \times k} = X_{m \times n} \cdot W'_{n \times k}\\ \\ X'_{m \times n} = Y_{m \times k} \cdot W'^T_{k \times n}\]Let’s now pick only 2 dimensions (~23% explained variance), and plot the points as a scatter plot, and color based on the class label from the training set. Let’s use scikit-learn package for this last operation:
From the scatter plot, we can do some simple analysis and see some relationship between the color of points (labels) and their location on the plot. For instance, the green cluster (representing the label 1) is formed clearly distinct from others, while the clusters for colors brown and pink (for digits 4 and 9) are somewhat in the same region, etc.
Although the explained variance with 2 dimensions was roughly 23%, we still can derive some meaningful information about the data. Having more number of dimensions will make it easier to process and analyse the data as compared to the original data distribution.
Also, applying PCA would make it easier to use the data in models such as the Naive Bayes, where the core assumption is that the columns are independent of each other.
Note: If we want to keep the physical meaning of the columns in the dataset intact, using PCA would be a bad idea since the transformed columns are linear combinations of the original columns. Hence, the new columns would lose their original meaning.
Also, dimension reduction is useful only if the eigenvalues vary significantly for any data distribution. For eigenvalues in similar ranges, each column will have similar contribution towards the variation in data, hence removing them would cause greater loss.
–


A brand new UI!
We just released a new user interface, please take the time to comment on it. We liked the old one, but we are not designers and it was showing. So, we decided to integrate a twitter bootstrap theme…
August 12th 2012We are probably already working on it so please be patient.
We just released a new user interface, please take the time to comment on it. We liked the old one, but we are not designers and it was showing. So, we decided to integrate a twitter bootstrap theme…
August 12th 2012The blog is released today! We will add new features and ideas to come through this blog.
It’s all for now! :)
March 30th 2012


{% extends "cdadsurvey/base.html" %} {% load i18n %} {% block content %}
Your account is now activated. Click here to begin the survey. Thank you!


{{ recipient.first_name_or_friend }} --
REPLACE THIS CONTENT - put your body text all between paragraph tags.
Read more
{{ broadcaster.name }}
{{ settings.site.full_url }}


BY EDWIN JAHIEL
ANALYZE THIS (1999) *** 1/2. Directed by Harold Ramis. Written by Peter Tolan, Ramis, Kenneth Lonergan, based on a story by Lonergan and Tolan. Photography, Stuart Dryburgh. Editing, Christopher Tellefsen. Production design,Wynn Thomas. Music, Howard Shore. Produced by Paula Weinstein & Jane Rosenthal. Cast : Robert De Niro (Paul Vitti), Billy Crystal (Ben Sobel), Lisa Kudrow (Laura MacNamara), Joe Viterelli (Jelly), Chazz Palminteri (Primo Sindone), Bill Macy (Isaac Sobel), et al A Warners release. 110 minutes.
What does this got to do with the price of eggs? you'll ask. Quite a bit. Analyze This bears no rleation to Stallone, but it's in the same genre --farces about the Mob. And now it's my favorite Billy Crystal performance. I can't say "Billy Crystal movie" since Billy, as psychotherapist Dr.Ben Sobel, plays straight-man (sort of), sounding-board and hapless consultant to Robert De Niro's mobster capo Paul Vitti. And you know that De Niro is a movie giant who is always the focus of his picture and of our attention..
Here, De Niro, elastictically using his talents, his face, his Italian-American speech and body language, is very, very funny. So is Crystal. So is everyone else, from supporting to tiny roles
The film was written with clockwork precision, a must for any successful farce. Tightly scripted and directed, it does not indulge in fillers, irrelevancies, overly broad effects or pratfalls. Director-co-writer Harold Ramis has been an actor, a scripter, or both in many pictures, but has directed just seven, starting with Caddyshack (1980) then on to National Lampoon's Vacation, Club Paradise, Groundhog Day, Stuart Saves his Family, and Multiplicity (1996). People's reactions to humor are, of course, imponderables, as varied and unpredictable as their taste for food, but for me Analyze This is Ramis's funniest movie.
It opens with a reminder of the famous gathering of vultures at Apalachin in 1957, where the heads of Mafia families met to discuss territories, alliances and ways to improve their profitability.
Cut to the contemporary Mafia, in which Paul Vitti is one of the biggest capos in the East. When Vitti (which sounds like Gotti) hesitates to exterminate a bad guy (there are good and bad guys among the bad guys) and finds himself crying and going through strange depressions, heart trouble is suspected.
In ways that are like a comically devious daisy-chain, Vitti gets told at a hospital's emergency ward that he suffers from panic or anxiety syndromes. He repays the diagnosing doctor by roughing him up. Hence the title Analyze THIS --which could have been better.
Crystal is shown in a carefully dosaged number of times --not too many, not too few -- in highly amusing situations with patients. The set-ups are takeoffs of therapists and the therapied, but with kernels of truth --like cartoons in the New Yorker.
The six degrees of separation theory works well. The links lead Vitti to Dr. Sobel and the main subject is now reached. Uneasy, uncomfortable, even scared, Sobel would like to get rid of his gangland client, but in spite of misunderstandings and mutual bewilderments, an odd-couple relationship results. (Among other things Vitti does not grasp, or else misinterprets Sobel, his theories, his "shocking" Freudianism or high-falutin' words like "closure").
Sobel's Jewishness is played up, but gently. So is the cameo part of Sobel's father, the senior Dr. Sobel, also a shrink plus best-selling author who is all wrapped up in himself and his book tour. (Bill Macy does a terrific job of his few minutes).Vitti's Italian-American-Mafiosity is played up too, in his case with a vengeance.
Taking along his fat, witty teen-ager son, the divorced Sobel goes to Florida for his wedding with blonde WASP TV reporter Laura MacNamara (Lisa Kudrow). Guess who's coming to Florida too? Paul Vitti,who feels increasing need for Sobel; Paul's bodyguards; and assassins sent by a rival. an invreased Comic mayhem and complications of all kinds follow.
The episodes cannot be revealed. There, and later back in New York, the doings, sayings and one-liners are non-stop laugh-getters--but almost never forced or cliched.Wisely too, the characterizations of the lesser people are held to a necessary minimum, without wasting time and dialogue on them.
Throughout, there's an incessant, humorous, deftly-incorporated stream of allusions, references and elements --sly, overt or rib-ticklingly blatant --not just to real mobsters but also to Mob movies of all types, from the Godfather saga to Woody Allen's Italian-Americans. Also parodied is De Niro himself in roles such as the dead-serious Jewish-American gangster in Once Upon a Time in America to Scorsese's blood-and-humor pictures of "made men" and beyond. De Niro basks in the spoofing of his own images as distorted by the mirror of comedy. Analyze This is at the same time an affectionate homage to the great flicks in both serious and light gangster genres.
One might call this a high-concept movie:"Mafioso Boss and his reluctant Shrink bond." It's not that simple, nor is this just a one-gag film. The main joke is so cleverly concocted that it becomes the equivalent of a musical "tema con variazone." It maintains a light touch with its heavies and an unforced touch with a Billy Crystal who neither clowns nor mugs.  You know that a corpse in a car's trunk is a dummy, a joke; that the gunshots are a fantasy. There's also a lot of toned-down Mel Brooks in this picture.
In importance and screen time, the third role is Joe Viterelli's. As Jelly, he is Vitti's fat, pock-marked, adoring and obedient guard-dog, slow-witted but quick on the trigger. The fourth role goes to Chazz Palminteri's Primo Sindone, Vitti's villainous rival. Though un- nuanced --he just huffs, puffs and plots--he comes in handy for the wrap-up.
If Crystal is second --but indispensable-- banana to De Niro, the Palminteri sub-plot is perfectly timed to bring Dr. Sobel to the fore. Soon after a hilarious, two-seconds gag involving Crystal with some puzzling holy water, Sobel goes to a neo-Apalachin gathering. There he impersonates Vitti's new consigliere. His tough perfomance is a mega-comical howl.
Analyze This is no epic saga, explosive socially-conscious film, heart-rending drama, message or avant-garde movie, but within its niche it's a great, unpretentious not-just-for-dummies work. It joins easily the roster of must-see screwball comedies.
" Le mauvais gout mene au crime" (Stendhal)
Edwin Jahiel's movie reviews are at http://www.prairienet.org/ejahiel
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


Acknowledgments
The COVID19Tracker.ca Project is entirely run by volunteers, with project costs only partially covered by donations. If you wish to donate to help keep the site running, please click here.
API Development
Dataset
-
Data Lead:
- Noah Little
- Gabriel Benjamen
- Sophia Di Nicolo
- Jerry Zhang
- Kavneet Kailley
Contributors:
Website Development
- Noah Little
- Andrew Thong
- Alek Gulbenkian
- Bo Zhang
- And others


You are not in Kansas any more. Pyjamas is declarative-style programming, using a "real" programming language. All those widget-sets were designed to be driven from inside HTML (a style of web development which, using Pyjamas, you have just left far behind) and by inserting javascript snippets into the HTML. If you try that with a Pyjamas app, you are not only likely to get yourself into an awful mess, but also you will be unlikely to run the same (python-based) app under Pyjamas Desktop, as you will still have a Javascript dependency. You can run javascript under Pyjamas Desktop but it's not easy to interact with (the python code) which is why we went to all the trouble of replacing all the javascript with equivalent python, doing exactly the same things with python-DOM bindings rather than javascript-DOM bindings.
Shoe-horning an alien AJAX toolkit into Pyjamas takes a considerable amount of attention to detail, and is also likely to have unintended side-effects as the two interact. Not only that, but you are in for a bit of a shock when you actually start looking at the number of lines of code in some of these javascript "rich" widget tooklits, and an even bigger one when it comes to linking the two together.
Take gwt-ext as a successful example of a wrapper between GWT and ExtJS. The "startup" glue code is 8,000 lines of dedicated javascript, the sole purpose of which is to get extjs initialised in a way that's compatible with GWT. 8,000 lines of javascript is about 70% the size of the entire pyjamas codebase, including widget set and compiler, at the time of writing. Then, the "wrappers" are a further whopping 80,000 lines of Java-javascript hybrid.
So, at the end of all that work, you have a wrapper which is itself a monstrous hybrid to maintain, which will need changing every time the Javascript Widget Library API changes, and, on top of that, if the Javascript Widget Library doesn't do what you want, you are screwed, because the whole reason why you're here working with Pyjamas is because you prefer working with python instead of Javascript. And if there's a bug - one that wasn't introduced by the custom-written wrapper - in the Javascript Widget Library itself, then you still have to delve into Javascript and fix it.
Overall, then, does it not make much more sense to rewrite the "pretty" widget in python, and contribute it to the community under the same license (Apache 2.0) so that everyone else in the Pyjamas community can benefit from it and help you improve it? Especially since the amount of code that you will be writing will be significantly less than if you tried the same thing in Java or Javascript.
So, instead of hurting yourself with javascript, perhaps you might like to consider enjoying Web programming, using python?


This package contains a collection of client tools from the Globus Toolkit 5.2.4. The Globus Toolkit is an open source software toolkit used for building Grid systems and applications. It is being developed by the Globus Alliance and many others all over the world. A growing number of projects and companies are using the Globus Toolkit to unlock the potential of grids for their cause. Installing this package to get started with using the grid right away.
This package is provided by the Initiative for Globus in Europe. (The IGE project (RI-261560) is funded by the European Commission under Framework Programme 7 (2007-2013). http://www.ige-project.eu/
This installer guides you through the steps necessary to install globus-clients 2.0 for Mac OS X. To get started, click Continue.


Lawmakers to hold forum on reducing high health care costs
HARTFORD, Conn. (AP) - Connecticut lawmakers want to explore ways to reduce health care costs, including efforts taken by neighboring Massachusetts.
The General Assembly’s Insurance and Real Estate Committee plans to hold an informational forum on Thursday at the Legislative Office Building.
They’re expected to discuss three major policy concepts, including a possible state-funded reinsurance program, prescription drug importation and the benchmarking of health care costs to a statewide target, similar to a Massachusetts initiative.
Besides the committee members, the Office of Health Strategy, health care advocates, health insurers, the Massachusetts Health Policy Commission, and other stakeholders are expected to participate in a series of panel discussions.
Connecticut lawmakers say they hope the high cost of health care will be addressed in the new regular legislative session, which begins in February.
Sign up for Daily Newsletters
Copyright © 2019 The Washington Times, LLC.
Please read our comment policy before commenting.


|
The small3d library
|
Abstract file parser class. More...
#include <File.hpp>
Public Member Functions | |
| File (const std::string &fileLocation) | |
| Constructor. More... | |
| virtual void | load (Model &model, const std::string &meshName)=0 |
| Load data from the file into a Model. More... | |
| virtual std::vector< std::string > | getMeshNames ()=0 |
| Get a list of the names of the meshes contained in the file. More... | |
Protected Attributes | |
| std::string | fullPath = "" |
| The path to the file being parsed. | |
Abstract file parser class.
| small3d::File::File | ( | const std::string & | fileLocation | ) |
Constructor.
| fileLocation | Path to the file |
|
pure virtual |
Get a list of the names of the meshes contained in the file.
Implemented in small3d::WavefrontFile, small3d::GlbFile, and small3d::BinaryFile.
|
pure virtual |
Load data from the file into a Model.
| model | The model to load the data to |
| meshName | The name of the mesh to load |
Implemented in small3d::GlbFile, small3d::WavefrontFile, and small3d::BinaryFile.


Abstract Class backend\components\Controller
| Inheritance | backend\components\Controller » common\components\Controller |
|---|
Controller is the base class of app controllers and implements the CRUD actions for a model.
Public Properties
| Property | Type | Description | Defined By |
|---|---|---|---|
| $excelFormats | array | Of Excel format strings indexed by attribute | backend\components\Controller |
| $modelNameSearch | string | The model name of the search class with namespace | backend\components\Controller |
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __construct() | backend\components\Controller | |
| actionCreate() | Creates a new model. | backend\components\Controller |
| actionDelete() | Deletes an existing model. | backend\components\Controller |
| actionExport() | Download the exported file | backend\components\Controller |
| actionIndex() | Lists all models. | backend\components\Controller |
| actionList() | Produce list data for ajax return in Select2 widget | backend\components\Controller |
| actionUpdate() | Updates an existing model. | backend\components\Controller |
| actionView() | Displays a single model. | backend\components\Controller |
| behaviors() | backend\components\Controller | |
| fKWidgetOptions() | Produce widget options for a Select2 widget for a foreign key field. | backend\components\Controller |
| getBreadCrumbs() | Builds breadcrumbs using the tbl_navigation closure table and working back from the current url. | backend\components\Controller |
| getGridColumns() | Build array of grid columns for use in grid view return array grid columns | backend\components\Controller |
| tabs() | Get the tabs which are the current pages content as active and inactive tabs are the sibling options in navigation | backend\components\Controller |
Protected Methods
| Method | Description | Defined By |
|---|---|---|
| findModel() | Finds the model based on its primary key value. | backend\components\Controller |
Property Details
Of Excel format strings indexed by attribute
The model name of the search class with namespace
Method Details
| void __construct( $id, $module, $config = [] ) | ||
| $id | ||
| $module | ||
| $config |
Creates a new model.
If creation is successful, the browser will be redirected to the 'view' page.
| mixed actionCreate( ) |
Deletes an existing model.
If deletion is successful, the browser will be redirected to the 'index' page.
| mixed actionDelete( $id ) | ||
| $id | string |
Download the exported file
| void actionExport( ) |
Lists all models.
| mixed actionIndex( ) |
Produce list data for ajax return in Select2 widget
| void actionList( $q = null, $page = null, $id = null ) | ||
| $q | string | Search term the user enters - sent by ajax with each keypress |
| $page | int | Page of results - sets limit and offset in our select i.e. offset is (page - 1) x 10 |
| $id | int | Id of the model to load initially |
Updates an existing model.
If update is successful, the browser will be redirected to the 'view' page.
| mixed actionUpdate( $id ) | ||
| $id | string |
Displays a single model.
| mixed actionView( $id ) | ||
| $id | string |
| void behaviors( ) |
Produce widget options for a Select2 widget for a foreign key field.
@see kartik\detail\DetailView and described at @link http://ivaynberg.github.io/select2/. These options provide infinite scrolling via ajax and require a controller action in the child class to handle the ajax request.
| array fKWidgetOptions( $shortModelName ) | ||
| $shortModelName | ||
| return | array | Widget options |
|---|
Finds the model based on its primary key value.
If the model not found, a 404 HTTP exception will be thrown.
| \backend\components\ActiveRecord findModel( $id ) | ||
| $id | string | |
| return | \backend\components\ActiveRecord | The loaded model |
|---|---|---|
| throws | \yii\web\NotFoundHttpException | if the model cannot be found |
Builds breadcrumbs using the tbl_navigation closure table and working back from the current url.
| array getBreadCrumbs( $home = false ) | ||
| $home | ||
| return | array | The breadcrumbs |
|---|
Build array of grid columns for use in grid view return array grid columns
| void getGridColumns( ) |
Get the tabs which are the current pages content as active and inactive tabs are the sibling options in navigation
| tabs( $content ) | ||
| $content | ||
| return | The |
|---|


Alex Zweber Leslie PhD, Rutgers University English Department Latest Posts Jun 21, 2023 Zola Recommended Reading Orders May 24, 2023 Zola Novel Ranking Feb 12, 2023 The Dedicated Bookstore Predicament Latest Work Jul 09, 2022 Dunbar and the Black Midwest Article in ALH Nov 15, 2021 North American Bookstores, 1915 & 1925 Mar 15, 2021 Lowell's A Fable for Critics Digital Edition


--- title: The Craftsperson and the Scholar layout: reveal short: Talk --- The State of Research Software The SIRO Problem Garbage in Garbage Out Sensible In, Reasonable Out. PhDWare Don't look if anyone's done it before Code till it works Generate a figure Throw it away Labware Understood by one genius Implements great science, now FORTRAN in any language Code not engineered for readability Can't add new science HPCWare Get a 5% improvement in performance On a particular architecture Publish a scaling graph Selection against: Readability Maintainability Adaptability ConsultantWare Little understanding of the science Overengineered Unmaintainable by the research group The Craftsperson And The Scholar The Craftsperson And The Scholar Research Software Engineers Facilitative, supportive, and collaborative Deep engagement with research Sometimes central support Sometimes part of research group Can read and understand the papers Evaluated based on software Sustainable and long term Institutional memory Continuity, stability, maintainance Training and teaching Share software best practice in research The Best Job Read papers Write code The UCL Story Activities Projects Consulting Training Infrastructure Domain From HPC codes to simple scripts From theoretical physics to digital humanities UCL Staffing 3 Permanent Roles 3 research-grant funded roles Two so far Free projects Judged by executive Every quarter Half FTE for term Worth £8k Paid Projects Via research grants Or existing college money Displaces free calls Until recruit Secured ~£0.25M Some sample projects Low-Template DNA Whodunnit code: low-template DNA Whodunnit code: low-template DNA Low-template DNA Relative likelihood of defence and prosecution hypotheses Optimise over relative degree of contribution from various individuals Structural work on likeLTD Broken down into functions Separate objective function from simulated annealing optimiser Look at using different optimiser libraries Documentation added Ready for publication to CRAN Performance Improvements in likeLTD 4 times from moving to C 8 times from parallelisation 10 times from change of optimisation algorithm 300 times total Performance Improvements in likeLTD DCProgs DCProgs Old State of the Code Hasn't compiled since 2006 Underpins Nature-published research New State Reimplemented in Python Use standard linear algebra and root finding libraries Just as performant as the old code HemeLB Setup Tool HemeLB Setup Tool Voxelisation Robustness Robustness ~95% to 100%. Voxelisation in the loop Priorities Priorities Readability Reliability Performance In that Order Priorities? Readability Reliability Deployability Sustainability Replicability Usability Performance In that Order Acknowledgements Clare Gryce, Gavin McLachlan, Mike Cope, Rex Knight Anthony Finkelstein, Richard Catlow, David Price, John Shawe-Taylor, Simon Arridge, Peter Coveney Timo Betcke, Michail Stamatakis, David Balding, Miguel Bernabeu, Remis Lape, David Colquhoun Mayeul D'Avezac, Jens Nielsen, Bruno Silva, Owain Kenway, Ian Kirker, Brian Alston Neil Chue Hong, Simon Hettrick, Simon Baxter, Kenji Takeda, David de Roure Andrew Smith, Ben Waugh, Matt Clarkson Greg Wilson, Fernando Perez Contact @uclrcsoftdev @jamespjh blogs.ucl.ac.uk/research-software-development<EMAIL_ADDRESS>The Campaign Our campaign People want to be RSEs We need a name, and some status The research system needs to Promote and preserve its soft benefits better Measure and incentivise correctly Integrate RSEs within HEIs Support institutional innovation Teach good research software engineering The Committee 2013/2014 Chris Cannam Dirk Gorissen James Hetherington Simon Hettrick Caroline Johnston Mark Woodbridge The Campaign So Far SSI Collaborations Workshop 2012 oERC Digital Research 2012 Research Software Engineers meeting 2013 Interim Committee Ten reasons to be an RSE This Website Press Coverage Lobbying What next? New Committee Institution Building Sharing ideas
Garbage in Garbage Out
Sensible In, Reasonable Out.
In that Order
@uclrcsoftdev @jamespjh
blogs.ucl.ac.uk/research-software-development
j.hetherington@ucl.ac.uk


Load all Repo
Load local data
To load repositories you must specify a personal token
Load data by organization or by repo
select by organization or repo and then specify the name
Select by Organization or Repo:
Organization
Repo
name
Load repositories information
you can add several topics to filter (topic:xxx) press enter to add
Save current data in a local file
Load data by choosing a local file
Loading repository information...
Loading Data
Repository List
Repository Explorers
Repository History
Issues Status
Projects
Top User
New PR per Week
New Issues per Week
New Clones per Week
New Forks per Week
Please click on 'Load Data' to load information from github personal token is mandatory
or
Click on 'Choose file', on Load local data tab, to load saved data
Repository filter
Filter:
×
Export To CSV File
Export To CSV File


{% extends "tutorial.html" %} {% block headauthor %}Paul Irish{% endblock %} {% block headtitle %}Chrome DevTools for Mobile: Screencast and Emulation{% endblock %} {% block pagetitle %}Chrome DevTools for Mobile: Screencast and Emulation{% endblock %} {% block pagebreadcrumb %}Chrome DevTools for Mobile: Screencast and Emulation{% endblock %} {% block date %}December 2, 2013{% endblock %} {% block browsersupport %} Operaunsupported Internet Explorerunsupported Safarisupported Firefoxsupported Chromesupported {% endblock %} {% block iscompatible %} {% endblock %} {% block head %} {% endblock %} {% block onload %}{% endblock %} {% block content %}
Developing for mobile should be just as easy as it is developing for desktop. We've been working hard in the Chrome DevTools to make things easier for you and it's time to unveil some new features that should dramatically improve your mobile web development. First up, remote debugging and then we'll unveil proper mobile emulation.
Until now, while remote debugging you've had to shift your eyes back and forth between your device and your devtools. Now, Screencast displays your devices's screen right alongside your devtools. Seeing it is good, but interacting with it is even better:
The full documentation on screencasting captures all this and more, like sending a pinch zoom gesture. Chrome on Android Beta (m32) required.
18 months ago, Chrome introduced proper remote debugging for WebKit browsers, but if you tried it out back then, you had to deal with a 400MB Android SDK download, adding the adb
binary to your $PATH
and some magical command line incantations.
Now, we're happy to announce you can forget all that. Chrome can now natively discover and talk to your USB connected devices. We've implemented the adb
protocol directly over USB in Chrome, so you you can easily head to Menu > Tools > Inspect Devices
and immediately start your remote debugging session.
This works great in all platforms, including Chrome OS, though do note that on Windows, you'll need to first install proper USB drivers to talk to the device. If you've never tried it before you'll also need to enable USB debugging on the device and confirm you're using Chrome for Android Beta. Read the full docs. ;)
Extra bonus: Chrome will now keep your screen from going to sleep while you're remote debugging. Good for debugging but keep a watch on your device!
You're developing on localhost:8000 but your phone can't reach that. So, we added port forwarding directly into the remote debugging workflow. Now it's easy to work on your full projects, without any tunneling hacks. On about:inspect
click into Port Forwarding to set what ports you want available, and they'll light up in green if they're good to go.
You don't always have the devices you need to test for compatibility, do you? While remote debugging real devices is going to give you the best feel for performance and touch, you can now realistically emulate many device characteristics on desktop, saving you time and making your iteration loop much faster.
<meta viewport>
with full touch event simulation.If you've seen the previous Device Metrics feature, what's now available is a huge upgrade. The team has worked hard to make the new mobile emulation get a near-reality representation of what you'd see on real devices. For example, WebKit browsers maintain a complex text autosizing algorithm and, in fact, each device has a specific "fudge factor" for the text autosizing that changes to help keep text legible. In emulation mode you can confirm this behavior is being applied and see the results.
Until now, it's been nearly impossible to see what a hi-DPI device displays on a low-DPI device. Now, the dPR emulation in DevTools will adapt your view to let you zoom into a deep DPI scenario. In addition, you can expect window.devicePixelRatio
, @media (-webkit-min-device-pixel-ratio: 2)
, image-set( url(pic2x.jpg) 2x, …)
, etc to reflect your setting, allowing you to view how your app adapts including loading different dpi-specific assets.
The device emulation does not extend all the way to browser features or bugs. So, while emulating iOS, WebGL will still work and you won't hit the iOS 5 orientation zoom bug. To experience that variability, head to the device.
<meta viewport>
(and @viewport
)Testing the behavior of what width=device-width
and minimum-scale:1.0
do has previously been a device-only game. Now you can quickly try out different viewports and observe how they're rendered.
Protip: use shift-drag or shift-scroll to mimic a pinch zoom on the device.
The emulate touch screen setting will make sure your clicks are interpretted as touchstart
and so on. Plus, synthetic events like zoom, scroll and pan will work. To pinch-zoom, simply shift+drag or shift+scroll to zoom into the content. You'll get a great view of the content scaling beyond the viewport.
Lastly, your standbys of useragent spoofing (both at the request header and window.navigator
level), geolocation, and orientation emulation let you explore your device's full functionality.
The emulation presets let you select a phone or tablet and get the correct screen size, dPR, UA applied for that device, along with full touch events and viewport emulated as well. You can try particular presets or easily can tweak these characteristics one by one.
Hop over to devtools.chrome.com for the full docs on Mobile Emulation with DevTools
To get the full demo of all these features in action, check out my 23 minute talk from Chrome Dev Summit on the DevTools for mobile:
{% endblock %}


| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Once a human tester finds a bug, it should be the last time a human tester finds that bug. Automatic tests should check for it from then on.
Andrew Hunt and David Thomas The Pragmatic Programmer
Random testing is neat, and sometimes uncovers interesting cases that you may not have tried. But to be sure you are covering specific cases, you need to specify them somehow. The list example at the end of the overview is one way, but another is reading them from a file. QCheck provides a small API for using files within a directory or lines within a text file as test cases.
The following functions generate file and directory names as test cases. This is useful, for example, for regression tests of a compiler – just keep a directory of source files to be compiled. The directory stream should be read all the way to the end, or else the directory handle will not be properly closed. (The check function does this automatically.)
Here is an example of how to run tests on filenames in a directory:
check (Files.nextFile, pretty_printer) (test_name, test_predicate) (Files.openDir directory_path)
The following functions produce lines of text from a file as test cases. The produced strings include newlines, but see below for how to filter them.
Here are some simple utilities for readers. The types should be
self-explanatory. The chop
function removes newlines from the
ends of string readers (such as nextLine
).
val map : ('a → 'b) → ('a,'c) reader → ('b,'c) reader val filter : ('a → bool) → ('a,'b) reader → ('a,'b) reader val chop : (string,'a) reader → (string,'a) reader
| [ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated on May 23, 2016 using texi2html 5.0.


It appears that there are cases where the Bitstream uploads failed to process, please see https://dataspace.princeton.edu/bitstream/88435/dsp01kp78gj856/3/ and https://dataspace.princeton.edu/handle/88435/dsp01kp78gj856
Using ad-hoc queries in PostgreSQL, I am finding that there are Bitstreams missing for these Items.
The Bundles do exist for the case of https://dataspace.princeton.edu/handle/88435/dsp01kp78gj856:
Updating the Bitstream metadata seems to have fixed these Item records. I shall proceed with contacting the reporting user in order to identify any other outstanding Items.
assigned
by James R. Griffin III at 2021-02-17 14:50:17.labeled
by Kim Leaman at 2021-02-17 01:09:38.labeled
by Kim Leaman at 2021-02-17 01:09:38.Joshua Seufert suggested that we try converting the PDFs to PDF/A format before ingesting, and this solved the problem! I replaced the problematic files so the link cited above no longer shows the issue. We don't have any other issues with this item, but if you still want to investigate the original issue, please let me know and I can prove the original unconverted file.
That's great! I'll go ahead and close this since you found an acceptable workaround.
closed
by None at 2021-02-17 15:27:49.review_requested
by None at 2021-02-17 13:44:27.referenced
by Kevin Reiss at 2021-02-17 13:55:09.merged
by Kevin Reiss at 2021-02-17 13:55:09.closed
by Kevin Reiss at 2021-02-17 13:55:09.labeled
by Kate Lynch at 2021-02-17 18:26:18.labeled
by Kate Lynch at 2021-02-17 18:38:51.labeled
by Kate Lynch at 2021-02-17 18:54:45.labeled
by Kate Lynch at 2021-02-17 18:55:37.labeled
by Kate Lynch at 2021-02-17 18:57:45.labeled
by Kate Lynch at 2021-02-17 18:58:59.labeled
by Kate Lynch at 2021-02-17 19:02:13.labeled
by None at 2021-02-17 19:22:19.labeled
by None at 2021-02-17 19:22:20.Fixed by #42. Thanks @jrgriffiniii
closed
by None at 2021-02-17 19:23:03.mentioned
by James R. Griffin III at 2021-02-17 19:23:03.subscribed
by James R. Griffin III at 2021-02-17 19:23:03.fixed by #36
closed
by None at 2021-02-17 19:24:30.fixed by #32
closed
by None at 2021-02-17 19:25:47.fixed by #31
closed
by None at 2021-02-17 19:26:39.labeled
by None at 2021-02-17 19:22:20.labeled
by None at 2021-02-17 19:22:20.labeled
by None at 2021-02-17 19:22:20.assigned
by None at 2021-02-17 19:59:35.labeled
by None at 2021-02-17 19:49:20.@mzelesky placeholder for more details when we have time to meet and fill this out.
labeled
by None at 2021-02-17 19:49:43.mentioned
by None at 2021-02-17 22:33:45.subscribed
by None at 2021-02-17 22:33:45.@pmgreen could you fill in some details here about the current process. I believe Alma can publish to Kbart.
Basically run a simple Ruby script to: - fetch and loop through files in the weekly (every Monday) kbart extract in $SFXLCL41/dbs/scratch - extract the target name from each filename and add them to a combined output file - ftp the resulting file to the access anywhere server
labeled
by None at 2021-02-17 19:49:44.mentioned
by Peter Green at 2021-02-17 22:31:01.subscribed
by Peter Green at 2021-02-17 22:31:01.assigned
by None at 2021-02-17 13:48:24.referenced
by None at 2021-02-17 14:17:42.referenced
by None at 2021-02-17 21:55:58.referenced
by None at 2021-02-17 21:57:08.@hectorcorrea @hackartisan thanks! can you please check circleci?
I've pushed a fix. Hopefully this works.
Coverage increased (+0.01%) to 82.974% when pulling 74a154c5a37204fec288df832acdc66eef5a99dc on issue_809 into e591d391c8a7c262a3f705d86fb66c6ef529732a on alma.
mentioned
by Hector Correa at 2021-02-17 14:46:30.subscribed
by Hector Correa at 2021-02-17 14:46:30.mentioned
by None at 2021-02-17 14:46:30.subscribed
by None at 2021-02-17 14:46:30.closing in favor of https://github.com/pulibrary/marc_liberation/issues/1078
closed
by Christina Chortaria at 2021-02-17 18:09:54.There is a PR out for review to fix the problem with the SCSB exports. Once the voyager_helpers PR is merged, updates need to be gotten from today's date (February 17, 2021).
Following on @mzelesky comment ^ when we update the voyager helpers in marcliberation, ran the rake task with 02-17-2021
timestamp.
Then uncomment the rake task and let it run daily. https://github.com/pulibrary/marcliberation/blob/cd7226c1e3b97a630c5e334dc1004916e985d0ef/config/schedule.rb#L75
mentioned
by None at 2021-02-17 18:14:19.subscribed
by None at 2021-02-17 18:14:19.Coverage decreased (-0.07%) to 82.888% when pulling b0fac4bd852f731647e224e7cbf27a29e5d732a6 on 823-update-locations-holding-lib into e591d391c8a7c262a3f705d86fb66c6ef529732a on alma.
@hackartisan thanks. Will do.
@hackartisan can you review again?
@christinach this will need to be rebased on the alma branch, since Monday happened.
I tried it out and I see a bunch of holdings locations coming through. I also see a bunch that say "no holdings available for this record". I'm not sure what those mean. But this does seem like progress! Here's a screenshot from my local orangelight:
The one that says no holdings available is an electronic record https://princeton.alma.exlibrisgroup.com/ng/page;u=%2Frep%2Faction%2FpageAction.search.mms_results.xml.do%3FxmlFileName%3Dsearch.mms_results.xml&pageViewMode%3DEdit&clear%3Dtrue&pageBean.securityHashToken%3D8857301989828534662
I exported it. It has an 856 : <datafield tag="856" ind1="4" ind2="0"><subfield code="u">https://ebookcentral.proquest.com/lib/Princeton/detail.action?docID=6135628</subfield></datafield>
It should display ebookcentral.proquest.com
. From https://catalog-alma-qa.princeton.edu/catalog/99118919643506421/raw,
"electronic_access_1display": "{\"https://ebookcentral.proquest.com/lib/Princeton/detail.action?docID=6135628\":[\"ebookcentral.proquest.com\"]}",
This is how it displays in the current catalog https://catalog.princeton.edu/catalog?utf8=%E2%9C%93&search_field=all_fields&q=Acceleration+hours+
mentioned
by None at 2021-02-17 14:47:21.subscribed
by None at 2021-02-17 14:47:21.head_ref_force_pushed
by Christina Chortaria at 2021-02-17 15:23:33.head_ref_force_pushed
by Christina Chortaria at 2021-02-17 15:51:36.head_ref_force_pushed
by Christina Chortaria at 2021-02-17 16:48:21.mentioned
by None at 2021-02-17 16:49:05.subscribed
by None at 2021-02-17 16:49:05.head_ref_force_pushed
by Christina Chortaria at 2021-02-17 17:30:43.review_requested
by Christina Chortaria at 2021-02-17 17:31:01.mentioned
by Christina Chortaria at 2021-02-17 17:49:31.subscribed
by Christina Chortaria at 2021-02-17 17:49:31.referenced
by None at 2021-02-17 18:16:59.merged
by None at 2021-02-17 18:16:59.closed
by None at 2021-02-17 18:16:59.head_ref_deleted
by None at 2021-02-17 18:16:59.closed
by None at 2021-02-17 18:17:40.closed
by None at 2021-02-17 18:20:11.unassigned
by James R. Griffin III at 2021-02-17 18:36:29.Coverage increased (+0.3%) to 82.888% when pulling afd685ba4397530724d48c2364053a6f3c608584 on alma into 6bd9ab6f3c077aa56df129e003101b28e07ff3ce on main.
Coverage decreased (-0.4%) to 82.529% when pulling d206b3c63b6a7c84bd221bc1b68b4bd2e88c9f98 on issue_824 into afd685ba4397530724d48c2364053a6f3c608584 on alma.
ready_for_review
by Hector Correa at 2021-02-17 20:54:02.head_ref_force_pushed
by None at 2021-02-17 13:07:53.head_ref_force_pushed
by None at 2021-02-17 14:31:43.referenced
by Kevin Reiss at 2021-02-17 15:07:40.merged
by Kevin Reiss at 2021-02-17 15:07:41.closed
by Kevin Reiss at 2021-02-17 15:07:41.head_ref_deleted
by Kevin Reiss at 2021-02-17 15:07:41.referenced
by Kevin Reiss at 2021-02-17 18:14:29.merged
by Kevin Reiss at 2021-02-17 18:14:29.closed
by Kevin Reiss at 2021-02-17 18:14:29.head_ref_deleted
by Kevin Reiss at 2021-02-17 18:14:30.referenced
by Kevin Reiss at 2021-02-17 15:07:09.merged
by Kevin Reiss at 2021-02-17 15:07:09.closed
by Kevin Reiss at 2021-02-17 15:07:09.head_ref_deleted
by Kevin Reiss at 2021-02-17 15:07:09.labeled
by None at 2021-02-17 15:08:10.Superseded by #1697.
closed
by None at 2021-02-17 15:08:11.head_ref_deleted
by None at 2021-02-17 15:08:12.My thoughts is that this particular banner won't need to be up for very long but @faithc and I are also open to other suggestions than a banner. Maybe a feedback bubble that is similar to the Ask Us bubble on the library main page.
mentioned
by None at 2021-02-17 14:10:52.subscribed
by None at 2021-02-17 14:10:52.closed
by Shaun Ellis at 2021-02-17 15:55:07.closed
by Shaun Ellis at 2021-02-17 16:19:21.referenced
by Shaun Ellis at 2021-02-17 15:52:25.referenced
by Shaun Ellis at 2021-02-17 15:52:25.closed
by James R. Griffin III at 2021-02-17 17:15:15.referenced
by Shaun Ellis at 2021-02-17 15:52:25.closed
by James R. Griffin III at 2021-02-17 17:15:15.review_requested
by James R. Griffin III at 2021-02-17 16:41:29.referenced
by James R. Griffin III at 2021-02-17 17:15:15.merged
by James R. Griffin III at 2021-02-17 17:15:15.closed
by James R. Griffin III at 2021-02-17 17:15:15.head_ref_deleted
by James R. Griffin III at 2021-02-17 17:15:16.closed
by Shaun Ellis at 2021-02-17 19:44:58.Resolved: Confluence is back up in 32ff989
.
labeled
by Francis Kayiwa at 2021-02-17 02:03:38.labeled
by Francis Kayiwa at 2021-02-17 02:03:38.locked
by Francis Kayiwa at 2021-02-17 02:03:39.closed
by Francis Kayiwa at 2021-02-17 02:28:02.closed
by None at 2021-02-17 18:21:54.Without the duplicate_record method, info on any holding subsequent to the first holding retrieved was not properly retrieved; the method overwrote holding records.
review_requested
by None at 2021-02-17 17:45:17.referenced
by None at 2021-02-17 18:21:54.merged
by None at 2021-02-17 18:21:54.closed
by None at 2021-02-17 18:21:54.head_ref_deleted
by None at 2021-02-17 18:21:56.


INSTRUCTIONS:
Round 1
There are 25 questions. 16 minutes.
You can choose only one option for each question.
Every answer defines who you are.
Sit back, relax and answer. There are no wrong answers. Embrace yourselves.
GO!
Round 2
You are in the shoes of hero now. And there's only one task left.
15 questions. 15 minutes.
All the questions are MCQs.
You can choose only one option for each question.
You have to choose the answer that your hero would.
There will be only one winner for all factions combined. They will be awarded prize
worth of Rs 2000. Judge's decision is final.


Inhabitent Camping Supply Co. has been Vancouver baked-good icon for more than two whole months!Customers often commet on the bustle of activity they see in store...that's where the magic happens every day
We want to bridge the gap between the confort of the city life and the lovely Instagram-worthiness of the great outdoors that surround us.We see gear that's fun and functional.So much fun,in fact,that you'll want to pitcha tent inside you one-bedrrom apartment so you can use it everyday
Inhabitent Camping Supply Co.'s staff is made up of an amazing team of inspired retail associates.We really know out stuff when it comes to travel hammocks and campfire cooking gadgets.From a provincial park campground to the back-country,our staff knows what you need to outfit your outdoor outing.
Our shop is nestled in a lovely little corner of Vancouver,Pop in, say hi, and try out our tends!


Bcl-2: a repressor of lymphocyte death.
Abstract
The genes and mechanisms that control programmed cell death are currently the subject of intense study. The bcl-2 gene, a repressor of lymphocyte death, is perhaps the best understood of the programmed cell death associated genes. Here, Stanley Korsmeyer provides a brief overview of bcl-2, concentrating on its roles in B- and T-cell development and in oncogenesis.


All In One
New customizable tabs put you back in control so that you can see what’s new at a glance and decide which emails you want to read and when.
Responsive
Your website works on any device: desktop, tablet or mobile.
Customizable
You can easily read, edit, and write your own code, or change everything.

Lego Base
You can find our code well organized, commented and readable.
Clean Code
As you can see in the source code, we provided a clean code.
Support
When you purchase this template, you'll freely receive future updates.
Tips
A better compose
Downstairs in you in discipline experience there's both have shall over called he peacefully, ticket a from be the in violin, empty where statement is me. Because behind in is now tend named bit for other concept.
Read More
Collaborate
View attachments instantly
Downstairs in you in discipline experience there's both have shall over called he peacefully, ticket a from be the in violin, empty where statement is me. Because behind in is now tend named bit for other concept.
Read More
Get Custom Email
Use the TheSaaS you love - for business. Get custom email @yourcompany.com including calendar, docs, video meetings, and more with access from your phone or tablet.
Frequently Asked Questions
Got a question? We've got answers. If you have some other questions, see our support center.
What payment services do you support?
We accept all major credit cards.
Can I update my card details?
Yes. Go to the billing section of your dashboard and update your payment information.
Is this a secure site for purchases?
Absolutely! We work with top payment companies which guarantees your safety and security. All billing information is stored on our payment processing partner which has the most stringent level of certification available in the payments industry.
Can I cancel my subscription?
You can cancel your subscription anytime in your account. Once the subscription is cancelled, you will not be charged next month. You will continue to have access to your account until your current subscription expires.
How long are your contracts?
Currently, we only offer monthly subscription. You can upgrade or cancel your monthly account at any time with no further obligation.
Can I request refund?
Unfortunately, not. We do not issue full or partial refunds for any reason.


Team Happy Fish
Device ID: {{device_id}}
Timestamp: {{convertedTime}}
Range (inches): {{rangeInches}}


Hannah Garcia
Positions: HTML & CSS Programmer, Media Specialist, and HTML team specialist.
Sahana Jaware
Positions: HTML & CSS Programmer, Graphic Design Specialist, and CSS team specialist.
Natalia Rodriguez
Positions: HTML Programmer and Researcher.
Property of Team 13 ♡ || Made with Love || Hopper Hacks 3


Gorillaz documentary ‘Reject False Icons’ screening worldwide on one night only
by Amanda HatfieldGorillaz document the making (and touring in support of) their last two albums, 2017’s Humanz and 2018’s The Now Now, in a new documentary film, Gorillaz: Reject False Icons. Directed by Jamie Hewlett’s son Denholm Hewlett, False Icons features appearances from guests on Gorillaz’s last two albums, including Vince Staples, Jean-Michel Jarre, De La Soul, DRAM, Pusha T, Little Simz, Yasiin Bey, Graham Coxon, Danny Brown, Kelela, Jehnny Beth, Mavis Staples, Noel Gallagher, and “never-seen footage, where the virtual meets the real – to capture the wondrous chaos of life under the watchful eye of Murdoc Niccals, Noodle, Russel Hobbs and 2D.”
The film will screen at cinemas worldwide on one night only, December 16, 2019. Tickets go on sale on Wednesday, November 27 at rejectfalseicons.com, and theater details are still to come.


{% if request.user.user_profile.verified_member %}
You are already Registered
{% else %}
Join Us
{% endif %}
{% if request.user.user_profile.verified_member %}
Hello {% if request.user.user_profile %} {{ request.user.user_profile.first_name }}{% else %}{% firstof user.get_short_name user.get_username %}{% endif %}, you've already been verified as a member
{% else %}
Hello PyLady! Become a member and join us on this journey 😊
{% endif %}


Flat Head Syndrome / Plagiocephaly
Over the last 10 years we have seen the number or babies with flat heads increasing. Many paediatricians, lactation consultants, and GP’s are referring babies with flat head syndrome, or restricted neck movement for our team of specialised osteopaths to assess and treat.
Assessment of flat head syndrome is important: the earlier the better. Early diagnosis reduces the osteopathic treatment that will be needed and the amount of exercises required. A baby can be assessed from birth. If there is restricted neck movement it can be treated immediately. Babies’ heads are soft. If a baby lies in the same position it will develop flat head syndrome. If there is a muscular restriction in the neck, the baby will always lie to the same side and may not feed the same on both breasts.
Signs that your baby may have Plagiocephaly:
- Baby only lies to one side when asleep and awake
- Your baby’s head is tilted upwards when lying to the side
- On turning the baby’s head side to side, the shoulder lifts
- When your baby is on its stomach the body goes into a banana shape
- Your baby may also have feeding issues as latching or sucking can be a problem
- Your baby may have a preference to use one hand
If you notice one or more of these signs, we advise an initial one hour consultation, which would include an assessment of:
- limitations in neck movement
- the flatness of your baby’s head
- other issues such as colic, tongue-tie and any spinal issues which can develop from inter-uterine compression.
The initial hour also involves treatment positioning advice and provides individualised specialised exercises for you to do at home with your baby.
In cases where further treatment for Plagiocephaly is required, we would provide a letter of diagnosis and treatment plan to your GP and/or paediatrician.
Initial treatment (2-3 weeks) aims to increase cervical spine rotation movement as quickly as possible, this prevents further flatness developing as the baby starts to move its neck and so does not always lie on the same side. Treatment includes gentle structural techniques, stretching and articulation of the neck as well as cranial techniques.
Further postural advice at this stage would be given to carers.
Over the first 2-3 weeks, two appointments per week are typical. Attendance at clinic will reduce progressively after that.
Intermediate treatment for flat head syndrome follows until the baby is sitting and occipital ridge is protruding. This would involve side bending exercises and strengthening exercises as well as more advanced hands-on techniques, through the head, face, spine and pelvis if required.
Finally longer term treatment for Plagiocephaly would ensure neck musculature does not tighten up and prevent a scoliosis developing.


A mapper module that generates position data for isoline labels. The module processes the input field data and generates a Point mesh with node data values. The IsoObjectLabel macro uses this data to generate text labels.
module IsoObjectLabelCore <src_file="isolbl2.cxx", libdeps="FLD", cxx_hdr_files="fld/Xfld.h"> { Mesh+Node_Data &in_fld<NEportLevels={2,1}>; IsoObjectLabelParams ¶ms<NEportLevels={2,1}>; int Active => params.Active; int ContourFrequency => params.ContourFrequency; int NodeFrequency => params.NodeFrequency; int LineIndependent => params.LineIndependent; int NumberOfLabels => params.NumberOfLabels; cxxmethod update ( in_fld+read+notify+req, Active+read+notify+req, ContourFrequency+read+notify+req, NodeFrequency+read+notify+req, LineIndependent+read+notify+req, NumberOfLabels+read+notify+req, out+write ); Mesh+Node_Data out<NEportLevels={1,2}> { &xform => in_fld.xform; }; };
The IsoObjectLabelCore module generates data that can be used to position text labels on isolines. The module connects to the field output of the isoline module and generates field data that contains a Point mesh and a set of node data. The Point mesh contains the position of the labels while the node data contains the data value at each of those points. The IsoObjectLabel macro uses this field data as an input to the text_glyph module, which actually generates the isoline text labels. The frequency of labels output and the format of the label text can both be controlled.
The module combines the IAC projects Isolabel and Isolabel2. Both of these projects have advantages and disadvantages and the functionality of both projects is available in the IsoObjectLabel project. The label placement algorithm in the Isolabel2 project is significantly more advanced than in the Isolabel project. The isoline project outputs the contours it generates as a mesh with a Line cell-set. The IsoObjectLabelCore module uses the algorithm from the Isolabel2 project to reconstruct the generated contours from this Line mesh and to generate at least one isolabel on each contour. This ensures that each contour is labeled and that the isolabel positions are relatively consistent and sensible. As the positions are consistent these isolabels are suitable for animation.
The disadvantage of this approach is that the isoline module does not always output each contour as a continuous series of lines. If the input data is noisy then the isoline module is likely to output each contour as a series of smaller line segments. While using the Isolabel2 algorithm the IsoObjectLabelCore module interprets each of these line segments as a separate contour. As one label is generated per line segment this can lead to large numbers of labels being generated. One solution to this problem is to use the ContourFrequency parameter. This parameter allows the module to skip a certain proportion of line segments, hence reducing the number of labels generated. Moreover the Isolabel2 algorithm only works with Line type data, such as that output by the isoline module.
Alternatively the algorithm from the Isolabel project can be used by the IsoObjectLabelCore module. The original Isolabel project does not reconstruct contour lines and therefore does not suffer from this problem. It also is able to work with input data that has cell-sets other than Line. To use the algorithm from the Isolabel project the parameter LineIndependent must be greater than zero. In this case ContourFrequency parameter and the NodeFrequency parameter have no effect as they are only needed for the Isolabel2 algorithm.
&in_fld
Field data which should be used by the module to generate the text labels. The Field should consist of a Line Mesh and Node Data. Only the first set of Node data is used and that Node data must be scalar.
Active
Integer parameter that specifies whether the module should update. If the parameter is set to zero no updates take place. Conversely if the parameter is not set to zero updates take place as normal.
NodeFrequency
Integer parameter that specifies how frequently labels should be generated. The parameter specifies the stride that should be taken between each node that is labelled. Therefore a NodeFrequency of 1 implies that a label should be generated for every node.
ContourFrequency
Integer parameter that specifies how frequently labels should be generated for a contour. The parameter specifies the stride that should be taken between each contour that is processed. Therefore a ContourFrequency of 1 implies that labels should be generated for every contour.
LineIndependent
Integer parameter that specifies which algorithm is used to create the labels. If it is set to zero the algorithm of the IAC project Isolabel2 is used to create labals at each isoline. If LineIndependent is greater than zero the algorithm from the project Isolabel is used to create a certain number of labels given in the parameter NumberOfLabels. In this case the parameters ContourFrequency and NodeFrequency are not used.
NumberOfLabels
Number of Labels which shall be created if the parameter LineIndependent is greater than zero.
out
Field data containing the locations and values of each point that should be labelled. The field contains a Point mesh that contains the locations of each label and a single set of node data that contains the node data values at each label position. The isolabel2 user macro uses this output to generate the necessary input for the text_glyph. This module actually renders and displays the generated labels. If the input mesh contains any transformation data this is copied across to the output mesh.
The low-level IsoObjectLabelCore module is used in the Functional Macro IsoObjectLabelFunc and the User Macro IsoObjectLabel. Additionally these macros also use the IsoObjectLabelParams parameter block group, as does the IsoObjectLabelUI macro. In the User Macro IsoObjectLabel the outputs of the Functional Macro IsoObjectabelFunc are connected to the text_glyph module which displays the labels. The text_glyph parameters can be set in the same User Interface like the IsoObjectLabel input paramters.
Three example applications are provided, IsoObjectLabelEg1, IsoObjectLabelEg2 and IsoObjectLabelEg3. These applications generate text labels for 2D and 3D isoline plots. They show how the numbers of generated labels can be controlled for data-sets of various sizes and types.
xp_comm_proj/isoobjlbl/isoobjlblmods.v Creates the IsoObjectLabelMods library containing the low-level module IsoObjectLabelCore and the parameter block IsoObjectLabelParam.
Please refer to AVS documentation for more information on the isoline and text_glyph modules. This module does not use the AG kit, and should not be confused with AGContour which also contains isoline labels.
The low-level IsoObjectLabelMods library containing the module Isolabel2Core does not specify a process. By default the express process will be used.
Dr Federico Gamba Advanced Visual Systems, Inc. Andrew Dodd International AVS Centre Simone Herrmann Manchester Visualization Centre


WHY AIR PACK PLUS
If your company dispatches fragile goods that are prone to damage during transit such as glass bottles, toner cartridges or electronic items then you really need to be using inflatable AirPacks available from
Air Pack Plus - The best in protective packaging.


---
title: "FALL ORCHID SHOW"
date: "2000-01-01 21:11:05 -06:00"
categories:
- fall
subtitle: ""
layout: "events"
event-image: "orchid-show.jpg"
event-dates: "2021 dates to be announced"
event-location: "Red Butte Garden Orangerie"
button-type: "register"
tickets-link: ""
registration-info: "Questions?
Please Call<PHONE_NUMBER>"
instructor-info: "N/A"
member-cost: "Free"
public-cost: "Garden Admission"
event-notes: ""
tickets-button: "hide"
refund-policy: "hide"
published: true
---
2021 Dates to be Announced
Join the Utah Orchid Society for a dazzling display of both common and exotic orchid varieties. Society members will share methods for keeping plants healthy and happy, and provide troubleshooting advice for budding orchid enthusiasts. A large selection of both plants and pottery will be on sale for those interested in starting their own collection.
This is the largest orchid show display in Utah.
If you and your family plan to visit the Garden more than twice this year, a Garden membership will actually save you money.


CPUName()
语法
Result$ = CPUName()概要
Returns the name of the CPU.
参数
无.
返回值
Returns the name of the CPU (the full vendor information). There is no standardized output across CPU, so this information shouldn't be used to identify the CPU at runtime, but can be useful for logging purpose.
示例
Debug CPUName() ; Could print: "Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz"
已支持操作系统
所有


tcex.tcex_batch_v2 module¶
ThreatConnect Batch Import Module
-
class
tcex.tcex_batch_v2.
ASN
(as_number, rating=None, confidence=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Indicator
ThreatConnect Batch ASN Object.
-
class
tcex.tcex_batch_v2.
Address
(ip, rating=None, confidence=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Indicator
ThreatConnect Batch Address Object
-
class
tcex.tcex_batch_v2.
Adversary
(name, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Group
ThreatConnect Batch Adversary Object
-
class
tcex.tcex_batch_v2.
Attribute
(attr_type, attr_value, displayed=False, source=None, formatter=None)[source]¶ Bases:
object
ThreatConnect Batch Attribute Object
-
data
¶ Return Attribute data.
-
displayed
¶ Return Attribute displayed.
-
source
¶ Return Attribute source.
-
type
¶ Return attribute value.
-
valid
¶ Return valid value.
-
value
¶ Return attribute value.
-
-
class
tcex.tcex_batch_v2.
CIDR
(block, rating=None, confidence=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Indicator
ThreatConnect Batch CIDR Object
-
class
tcex.tcex_batch_v2.
Campaign
(name, first_seen=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Group
ThreatConnect Batch Campaign Object
-
first_seen
¶ Return Document first seen.
-
-
class
tcex.tcex_batch_v2.
Document
(name, file_name, file_content=None, malware=False, password=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Group
ThreatConnect Batch Document Object
-
file_content
¶ Return Group files.
-
file_data
¶ Return Group files.
-
malware
¶ Return Document malware.
-
password
¶ Return Document password.
-
-
class
tcex.tcex_batch_v2.
Email
(name, subject, header, body, to_addr=None, from_addr=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Group
ThreatConnect Batch Email Object
-
from_addr
¶ Return Email to.
-
score
¶ Return Email to.
-
to_addr
¶ Return Email to.
-
-
class
tcex.tcex_batch_v2.
EmailAddress
(address, rating=None, confidence=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Indicator
ThreatConnect Batch EmailAddress Object
-
class
tcex.tcex_batch_v2.
Event
(name, event_date=None, status=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Group
ThreatConnect Batch Event Object
-
event_date
¶ Return the Events “event date” value.
-
status
¶ Return the Events status value.
-
-
class
tcex.tcex_batch_v2.
File
(md5=None, sha1=None, sha256=None, size=None, rating=None, confidence=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Indicator
ThreatConnect Batch File Object
-
md5
¶ Return Indicator md5.
-
sha1
¶ Return Indicator sha1.
-
sha256
¶ Return Indicator sha256.
-
size
¶ Return Indicator size.
-
-
class
tcex.tcex_batch_v2.
FileAction
(parent_xid, relationship)[source]¶ Bases:
object
ThreatConnect Batch FileAction Object
-
data
¶ Return File Occurrence data.
-
-
class
tcex.tcex_batch_v2.
FileOccurrence
(file_name=None, path=None, date=None)[source]¶ Bases:
object
ThreatConnect Batch FileAction Object.
-
data
¶ Return File Occurrence data.
-
date
¶ Return File Occurrence date.
-
file_name
¶ Return File Occurrence file name.
-
path
¶ Return File Occurrence path.
-
-
class
tcex.tcex_batch_v2.
Group
(group_type, name, xid=True)[source]¶ Bases:
object
ThreatConnect Batch Group Object
-
add_key_value
(key, value)[source]¶ Add custom field to Group object.
Note
The key must be the exact name required by the batch schema.
Example:
document = tcex.batch.group('Document', 'My Document') document.add_key_value('fileName', 'something.pdf')
Parameters: - key (str) – The field key to add to the JSON batch data.
- value (str) – The field value to add to the JSON batch data.
-
association
(group_xid)[source]¶ Add association using xid value.
Parameters: group_xid (str) – The external id of the Group to associate.
-
attribute
(attr_type, attr_value, displayed=False, source=None, unique=True, formatter=None)[source]¶ Return instance of Attribute
- unique:
- False - Attribute type:value can be duplicated.
- ‘Type’ - Attribute type has to be unique (e.g., only 1 Description Attribute).
- True - Attribute type:value combo must be unique.
Parameters: - attr_type (str) – The ThreatConnect defined attribute type.
- attr_value (str) – The value for this attribute.
- (bool, default (displayed) – false): If True the supported attribute will be marked for display.
- source (str, optional) – The source value for this attribute.
- unique (bool|string, optional) – Control attribute creation.
- formatter (method, optional) – A method that takes a single attribute value and returns a single formatted value.
Returns: An instance of Attribute.
Return type: obj
-
data
¶ Return Group data.
-
name
¶ Return Group name.
-
processed
¶ Return processed value.
Note
Processed value indicates that a group with this xid has already been processed.
-
security_label
(name, description=None, color=None)[source]¶ Return instance of SecurityLabel.
Note
The provided security label will be create if it doesn’t exist. If the security label already exists nothing will be changed.
Parameters: - name (str) – The value for this security label.
- description (str) – A description for this security label.
- color (str) – A color (hex value) for this security label.
Returns: An instance of SecurityLabel.
Return type: obj
-
tag
(name, formatter=None)[source]¶ Return instance of Tag.
Parameters: - name (str) – The value for this tag.
- formatter (method, optional) – A method that take a tag value and returns a formatted tag.
Returns: An instance of Tag.
Return type: obj
-
type
¶ Return Group type.
-
xid
¶ Return Group xid.
-
-
class
tcex.tcex_batch_v2.
Host
(hostname, dns_active=False, whois_active=False, rating=None, confidence=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Indicator
ThreatConnect Batch Host Object
-
dns_active
¶ Return Indicator dns active.
-
whois_active
¶ Return Indicator whois active.
-
-
class
tcex.tcex_batch_v2.
Incident
(name, event_date=None, status=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Group
ThreatConnect Batch Incident Object
-
event_date
¶ Return Incident event date.
-
status
¶ Return Incident status.
-
-
class
tcex.tcex_batch_v2.
Indicator
(indicator_type, summary, rating=None, confidence=None, xid=True)[source]¶ Bases:
object
ThreatConnect Batch Indicator Object
-
active
¶ Return Indicator active.
-
add_key_value
(key, value)[source]¶ Add custom field to Indicator object.
Note
The key must be the exact name required by the batch schema.
Example:
file_hash = tcex.batch.file('File', '1d878cdc391461e392678ba3fc9f6f32') file_hash.add_key_value('size', '1024')
Parameters: - key (str) – The field key to add to the JSON batch data.
- value (str) – The field value to add to the JSON batch data.
-
association
(group_xid)[source]¶ Add association using xid value.
Parameters: group_xid (str) – The external id of the Group to associate.
-
attribute
(attr_type, attr_value, displayed=False, source=None, unique=True, formatter=None)[source]¶ Return instance of Attribute
- unique:
- False - Attribute type:value can be duplicated.
- Type - Attribute type has to be unique (e.g., only 1 Description Attribute).
- True - Attribute type:value combo must be unique.
Parameters: - attr_type (str) – The ThreatConnect defined attribute type.
- attr_value (str) – The value for this attribute.
- (bool, default (displayed) – false): If True the supported attribute will be marked for display.
- source (str, optional) – The source value for this attribute.
- unique (bool|string, optional) – Control attribute creation.
- formatter (method, optional) – A method that takes a single attribute value and returns a single formatted value.
Returns: An instance of Attribute.
Return type: obj
-
build_summary
(val1=None, val2=None, val3=None)[source]¶ Build the Indicator summary using available values.
-
confidence
¶ Return Indicator confidence.
-
data
¶ Return Indicator data.
-
occurrence
(file_name=None, path=None, date=None)[source]¶ Add a file Occurrence.
Parameters: - file_name (str, optional) – The file name for this occurrence.
- path (str, optional) – The file path for this occurrence.
- date (str, optional) – The datetime expression for this occurrence.
Returns: An instance of Occurrence.
Return type: obj
-
private_flag
¶ Return Indicator private flag.
-
rating
¶ Return Indicator rating.
-
security_label
(name, description=None, color=None)[source]¶ Return instance of SecurityLabel.
Note
The provided security label will be create if it doesn’t exist. If the security label already exists nothing will be changed.
Parameters: - name (str) – The value for this security label.
- description (str) – A description for this security label.
- color (str) – A color (hex value) for this security label.
Returns: An instance of SecurityLabel.
Return type: obj
-
summary
¶ Return Indicator summary.
-
tag
(name, formatter=None)[source]¶ Return instance of Tag.
Parameters: - name (str) – The value for this tag.
- formatter (method, optional) – A method that take a tag value and returns a formatted tag.
Returns: An instance of Tag.
Return type: obj
-
type
¶ Return Group type.
-
xid
¶ Return Group xid.
-
-
class
tcex.tcex_batch_v2.
IntrusionSet
(name, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Group
ThreatConnect Batch Adversary Object
-
class
tcex.tcex_batch_v2.
Mutex
(mutex, rating=None, confidence=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Indicator
ThreatConnect Batch Mutex Object
-
class
tcex.tcex_batch_v2.
RegistryKey
(key_name, value_name, value_type, rating=None, confidence=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Indicator
ThreatConnect Batch Registry Key Object
-
class
tcex.tcex_batch_v2.
Report
(name, file_name=None, file_content=None, publish_date=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Group
ThreatConnect Batch Report Object
-
file_content
¶ Return Group files.
-
file_data
¶ Return Group files.
-
publish_date
¶ Return Report publish date.
-
-
class
tcex.tcex_batch_v2.
SecurityLabel
(name, description=None, color=None)[source]¶ Bases:
object
ThreatConnect Batch SecurityLabel Object.
-
color
¶ Return Security Label color.
-
data
¶ Return Security Label data.
-
description
¶ Return Security Label description.
-
name
¶ Return Security Label name.
-
-
class
tcex.tcex_batch_v2.
Signature
(name, file_name, file_type, file_text, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Group
ThreatConnect Batch Signature Object
-
class
tcex.tcex_batch_v2.
Tag
(name, formatter=None)[source]¶ Bases:
object
ThreatConnect Batch Tag Object
-
data
¶ Return Tag data.
-
name
¶ Return Tag name.
-
valid
¶ Return valid data.
-
-
class
tcex.tcex_batch_v2.
TcExBatch
(tcex, owner, action=None, attribute_write_type=None, halt_on_error=True)[source]¶ Bases:
object
ThreatConnect Batch Import Module
-
_gen_indicator_method
(name, custom_class, value_count)[source]¶ Dynamically generate custom Indicator methods.
Parameters: - name (str) – The name of the method.
- custom_class (object) – The class to add.
- value_count (int) – The number of value parameters to support.
-
_group
(group_data)[source]¶ Return previously stored group or new group.
Parameters: group_data (dict|obj) – An Group dict or instance of Group object. Returns: The new Group dict/object or the previously stored dict/object. Return type: dict|obj
-
_indicator
(indicator_data)[source]¶ Return previously stored indicator or new indicator.
Parameters: indicator_data (dict|obj) – An Indicator dict or instance of Indicator object. Returns: The new Indicator dict/object or the previously stored dict/object. Return type: dict|obj
-
static
_indicator_values
(indicator)[source]¶ Process indicators expanding file hashes/custom indicators into multiple entries.
Parameters: indicator (str) – ” : ” delimited string Returns: The list of indicators split on ” : “. Return type: list
-
action
¶ Return batch action.
-
add_group
(group_data)[source]¶ Add a group to Batch Job.
{ "name": "Example Incident", "type": "Incident", "attribute": [{ "type": "Description", "displayed": false, "value": "Example Description" }], "xid": "e336e2dd-5dfb-48cd-a33a-f8809e83e904", "associatedGroupXid": [ "e336e2dd-5dfb-48cd-a33a-f8809e83e904:58", ], "tag": [{ "name": "China" }] }
Parameters: group_data (dict) – The full Group data including attributes, labels, tags, and associations.
-
add_indicator
(indicator_data)[source]¶ Add an indicator to Batch Job.
{ "type": "File", "rating": 5.00, "confidence": 50, "summary": "53c3609411c83f363e051d455ade78a7 : 57a49b478310e4313c54c0fee46e4d70a73dd580 : db31cb2a748b7e0046d8c97a32a7eb4efde32a0593e5dbd58e07a3b4ae6bf3d7", "associatedGroups": [ { "groupXid": "e336e2dd-5dfb-48cd-a33a-f8809e83e904" } ], "attribute": [{ "type": "Source", "displayed": true, "value": "Malware Analysis provided by external AMA." }], "fileOccurrence": [{ "fileName": "drop1.exe", "date": "2017-03-03T18:00:00-06:00" }], "tag": [{ "name": "China" }], "xid": "e336e2dd-5dfb-48cd-a33a-f8809e83e904:170139" }
Parameters: indicator_data (dict) – The Full Indicator data including attributes, labels, tags, and associations.
-
address
(ip, rating=None, confidence=None, xid=True)[source]¶ Add Address data to Batch object.
Parameters: - ip (str) – The value for this Indicator.
- rating (str, optional) – The threat rating for this Indicator.
- confidence (str, optional) – The threat confidence for this Indicator.
- xid (str, optional) – The external id for this Indicator.
Returns: An instance of Address.
Return type: obj
-
adversary
(name, xid=True)[source]¶ Add Adversary data to Batch object.
Parameters: - name (str) – The name for this Group.
- xid (str, optional) – The external id for this Group.
Returns: An instance of Adversary.
Return type: obj
-
asn
(as_number, rating=None, confidence=None, xid=True)[source]¶ Add ASN data to Batch object.
Parameters: - as_number (str) – The value for this Indicator.
- rating (str, optional) – The threat rating for this Indicator.
- confidence (str, optional) – The threat confidence for this Indicator.
- xid (str, optional) – The external id for this Indicator.
Returns: An instance of ASN.
Return type: obj
-
attribute_write_type
¶ Return batch attribute write type.
-
campaign
(name, first_seen=None, xid=True)[source]¶ Add Campaign data to Batch object.
Parameters: - name (str) – The name for this Group.
- first_seen (str, optional) – The first seen datetime expression for this Group.
- xid (str, optional) – The external id for this Group.
Returns: An instance of Campaign.
Return type: obj
-
cidr
(block, rating=None, confidence=None, xid=True)[source]¶ Add CIDR data to Batch object.
Parameters: - block (str) – The value for this Indicator.
- rating (str, optional) – The threat rating for this Indicator.
- confidence (str, optional) – The threat confidence for this Indicator.
- xid (str, optional) – The external id for this Indicator.
Returns: An instance of CIDR.
Return type: obj
-
data
¶ Return the batch data to be sent to the ThreatConnect API.
Processing Order: * Process groups in memory up to max batch size. * Process groups in shelf to max batch size. * Process indicators in memory up to max batch size. * Process indicators in shelf up to max batch size.
This method will remove the group/indicator from memory and/or shelf.
-
data_group_association
(xid)[source]¶ Return group dict array following all associations.
Parameters: xid (str) – The xid of the group to retrieve associations. Returns: A list of group dicts. Return type: list
-
data_group_type
(group_data)[source]¶ Return dict representation of group data.
Parameters: group_data (dict|obj) – The group data dict or object. Returns: The group data in dict format. Return type: dict
-
data_groups
(groups, entity_count)[source]¶ Process Group data.
Parameters: groups (list) – The list of groups to process. Returns: A list of groups including associations Return type: list
-
debug
¶ Return debug setting
-
document
(name, file_name, file_content=None, malware=False, password=None, xid=True)[source]¶ Add Document data to Batch object.
Parameters: - name (str) – The name for this Group.
- file_name (str) – The name for the attached file for this Group.
- file_content (str;method, optional) – The file contents or callback method to retrieve file content.
- (bool, default (malware) – False): If true the file is considered malware.
- password (bool, optional) – If malware is true a password for the zip archive is required.
- xid (str, optional) – The external id for this Group.
Returns: An instance of Document.
Return type: obj
-
email
(name, subject, header, body, to_addr=None, from_addr=None, xid=True)[source]¶ Add Email data to Batch object.
Parameters: - name (str) – The name for this Group.
- subject (str) – The subject for this Email.
- header (str) – The header for this Email.
- body (str) – The body for this Email.
- to_addr (str, optional) – The to address for this Email.
- from_addr (str, optional) – The from address for this Email.
- xid (str, optional) – The external id for this Group.
Returns: An instance of Email.
Return type: obj
-
email_address
(address, rating=None, confidence=None, xid=True)[source]¶ Add Email Address data to Batch object.
Parameters: - address (str) – The value for this Indicator.
- rating (str, optional) – The threat rating for this Indicator.
- confidence (str, optional) – The threat confidence for this Indicator.
- xid (str, optional) – The external id for this Indicator.
Returns: An instance of EmailAddress.
Return type: obj
-
errors
(batch_id, halt_on_error=True)[source]¶ Retrieve Batch errors to ThreatConnect API.
[{ "errorReason": "Incident incident-001 has an invalid status.", "errorSource": "incident-001 is not valid." }, { "errorReason": "Incident incident-002 has an invalid status.", "errorSource":"incident-002 is not valid." }]
Parameters: - batch_id (str) – The ID returned from the ThreatConnect API for the current batch job.
- (bool, default (halt_on_error) – True): If True any exception will raise an error.
-
event
(name, event_date=None, status=None, xid=True)[source]¶ Add Event data to Batch object.
Parameters: - name (str) – The name for this Group.
- event_date (str, optional) – The event datetime expression for this Group.
- status (str, optional) – The status for this Group.
- xid (str, optional) – The external id for this Group.
Returns: An instance of Event.
Return type: obj
-
file
(md5=None, sha1=None, sha256=None, size=None, rating=None, confidence=None, xid=True)[source]¶ Add File data to Batch object.
Note
A least one file hash value must be specified.
Parameters: - md5 (str, optional) – The md5 value for this Indicator.
- sha1 (str, optional) – The sha1 value for this Indicator.
- sha256 (str, optional) – The sha256 value for this Indicator.
- size (str, optional) – The file size for this Indicator.
- rating (str, optional) – The threat rating for this Indicator.
- confidence (str, optional) – The threat confidence for this Indicator.
- xid (str, optional) – The external id for this Indicator.
Returns: An instance of File.
Return type: obj
-
file_len
¶ Return the number of current indicators.
-
files
¶ Return dictionary containing all of the file content or callbacks.
-
generate_xid
(identifier=None)[source]¶ Generate xid from provided identifiers.
Important
If no identifier is provided a unique xid will be returned, but it will not be reproducible. If a list of identifiers are provided they must be in the same order to generate a reproducible xid.
Parameters: identifier (list|str) – Optional string value(s) to be used to make a unique and reproducible xid.
-
group
(group_type, name, xid=True)[source]¶ Add Group data to Batch object.
Parameters: - group_type (str) – The ThreatConnect define Group type.
- name (str) – The name for this Group.
- xid (str, optional) – The external id for this Group.
Returns: An instance of Group.
Return type: obj
-
group_len
¶ Return the number of current groups.
-
group_shelf_fqfn
¶ Return groups shelf fully qualified filename.
For testing/debugging a previous shelf file can be copied into the tc_temp_path directory instead of creating a new shelf file.
-
groups
¶ Return dictionary of all Groups data.
-
groups_shelf
¶ Return dictionary of all Groups data.
-
halt_on_batch_error
¶ Return halt on batch error value.
-
halt_on_error
¶ Return batch halt on error setting.
-
halt_on_file_error
¶ Return halt on file post error value.
-
halt_on_poll_error
¶ Return halt on poll error value.
-
host
(hostname, dns_active=False, whois_active=False, rating=None, confidence=None, xid=True)[source]¶ Add Email Address data to Batch object.
Parameters: - hostname (str) – The value for this Indicator.
- (bool, default (whois_active) – False): If True DNS active is enabled for this indicator.
- (bool, default – False): If True WhoIs active is enabled for this indicator.
- rating (str, optional) – The threat rating for this Indicator.
- confidence (str, optional) – The threat confidence for this Indicator.
- xid (str, optional) – The external id for this Indicator.
Returns: An instance of Host.
Return type: obj
-
incident
(name, event_date=None, status=None, xid=True)[source]¶ Add Incident data to Batch object.
Parameters: - name (str) – The name for this Group.
- event_date (str, optional) – The event datetime expression for this Group.
- status (str, optional) – The status for this Group.
- xid (str, optional) – The external id for this Group.
Returns: An instance of Incident.
Return type: obj
-
indicator
(indicator_type, summary, rating=None, confidence=None, xid=True)[source]¶ Add Indicator data to Batch object.
Parameters: - indicator_type (str) – The ThreatConnect define Indicator type.
- summary (str) – The value for this Indicator.
- rating (str, optional) – The threat rating for this Indicator.
- confidence (str, optional) – The threat confidence for this Indicator.
- xid (str, optional) – The external id for this Indicator.
Returns: An instance of Indicator.
Return type: obj
-
indicator_len
¶ Return the number of current indicators.
-
indicator_shelf_fqfn
¶ Return indicator shelf fully qualified filename.
For testing/debugging a previous shelf file can be copied into the tc_temp_path directory instead of creating a new shelf file.
-
indicators
¶ Return dictionary of all Indicator data.
-
indicators_shelf
¶ Return dictionary of all Indicator data.
-
intrusion_set
(name, xid=True)[source]¶ Add Intrusion Set data to Batch object.
Parameters: - name (str) – The name for this Group.
- xid (str, optional) – The external id for this Group.
Returns: An instance of IntrusionSet.
Return type: obj
-
mutex
(mutex, rating=None, confidence=None, xid=True)[source]¶ Add Mutex data to Batch object.
Parameters: - mutex (str) – The value for this Indicator.
- rating (str, optional) – The threat rating for this Indicator.
- confidence (str, optional) – The threat confidence for this Indicator.
- xid (str, optional) – The external id for this Indicator.
Returns: An instance of Mutex.
Return type: obj
-
poll
(batch_id, retry_seconds=None, back_off=None, timeout=None, halt_on_error=True)[source]¶ Poll Batch status to ThreatConnect API.
{ "status": "Success", "data": { "batchStatus": { "id":3505, "status":"Completed", "errorCount":0, "successCount":0, "unprocessCount":0 } } }
Parameters: - batch_id (str) – The ID returned from the ThreatConnect API for the current batch job.
- retry_seconds (int) – The base number of seconds used for retries when job is not completed.
- back_off (float) – A multiplier to use for backing off on each poll attempt when job has not completed.
- timeout (int, optional) – The number of seconds before the poll should timeout.
- (bool, default (halt_on_error) – True): If True any exception will raise an error.
Returns: The batch status returned from the ThreatConnect API.
Return type: dict
-
poll_timeout
¶ Return current poll timeout value.
-
registry_key
(key_name, value_name, value_type, rating=None, confidence=None, xid=True)[source]¶ Add Registry Key data to Batch object.
Parameters: - key_name (str) – The key_name value for this Indicator.
- value_name (str) – The value_name value for this Indicator.
- value_type (str) – The value_type value for this Indicator.
- rating (str, optional) – The threat rating for this Indicator.
- confidence (str, optional) – The threat confidence for this Indicator.
- xid (str, optional) – The external id for this Indicator.
Returns: An instance of Registry Key.
Return type: obj
-
report
(name, file_name, file_content=None, publish_date=None, xid=True)[source]¶ Add Report data to Batch object.
Parameters: - name (str) – The name for this Group.
- file_name (str) – The name for the attached file for this Group.
- file_content (str;method, optional) – The file contents or callback method to retrieve file content.
- publish_date (str, optional) – The publish datetime expression for this Group.
- xid (str, optional) – The external id for this Group.
Returns: An instance of Report.
Return type: obj
-
save
(resource)[source]¶ Save group|indicator dict or object to shelve.
Best effort to save group/indicator data to disk. If for any reason the save fails the data will still be accessible from list in memory.
Parameters: resource (dict|obj) – The Group or Indicator dict or object.
-
saved_groups
¶ Return True if saved group files exits, else False.
-
saved_indicators
¶ Return True if saved indicators files exits, else False.
-
saved_xids
¶ Return previously saved xids.
-
settings
¶ Return batch job settings.
-
signature
(name, file_name, file_type, file_text, xid=True)[source]¶ Add Signature data to Batch object.
Valid file_types: + Snort ® + Suricata + YARA + ClamAV ® + OpenIOC + CybOX ™ + Bro + Regex + SPL - Splunk ® Search Processing Language
Parameters: - name (str) – The name for this Group.
- file_name (str) – The name for the attached signature for this Group.
- file_type (str) – The signature type for this Group.
- file_text (str) – The signature content for this Group.
- xid (str, optional) – The external id for this Group.
Returns: An instance of Signature.
Return type: obj
-
submit
(poll=True, errors=True, process_files=True, halt_on_error=True)[source]¶ Submit Batch request to ThreatConnect API.
By default this method will submit the job request and data and if the size of the data is below the value synchronousBatchSaveLimit set in System Setting it will process the request synchronously and return the batch status. If the size of the batch is greater than the value set the batch job will be queued. Errors are not retrieve automatically and need to be enabled.
If any of the submit, poll, or error methods fail the entire submit will halt at the point of failure. The behavior can be changed by setting halt_on_error to False.
Each of these methods can also be called on their own for greater control of the submit process.
Parameters: - (bool, default (halt_on_error) – True): Poll for status.
- (bool, default – True): Retrieve any batch errors (only if poll is True).
- (bool, default – True): Send any document or report attachments to the API.
- (bool, default – True): If True any exception will raise an error.
- Returns.
- dict: The Batch Status from the ThreatConnect API.
-
submit_all
(poll=True, errors=True, process_files=True, halt_on_error=True)[source]¶ Submit Batch request to ThreatConnect API.
By default this method will submit the job request and data and if the size of the data is below the value synchronousBatchSaveLimit set in System Setting it will process the request synchronously and return the batch status. If the size of the batch is greater than the value set the batch job will be queued. Errors are not retrieve automatically and need to be enabled.
If any of the submit, poll, or error methods fail the entire submit will halt at the point of failure. The behavior can be changed by setting halt_on_error to False.
Each of these methods can also be called on their own for greater control of the submit process.
Parameters: - (bool, default (halt_on_error) – True): Poll for status.
- (bool, default – True): Retrieve any batch errors (only if poll is True).
- (bool, default – True): Send any document or report attachments to the API.
- (bool, default – True): If True any exception will raise an error.
- Returns.
- dict: The Batch Status from the ThreatConnect API.
-
submit_create_and_upload
(halt_on_error=True)[source]¶ Submit Batch request to ThreatConnect API.
- Returns.
- dict: The Batch Status from the ThreatConnect API.
-
submit_data
(batch_id, halt_on_error=True)[source]¶ Submit Batch request to ThreatConnect API. :param batch_id: The batch id of the current job. :type batch_id: string
-
submit_file_content
(method, url, data, headers, params, halt_on_error=True)[source]¶ Submit File Content for Documents and Reports to ThreatConnect API.
Parameters: - method (str) – The HTTP method for the request (POST, PUT).
- url (str) – The URL for the request.
- data (str;bytes;file) – The body (data) for the request.
- headers (dict) – The headers for the request.
- params (dict) – The query string parameters for the request.
- (bool, default (halt_on_error) – True): If True any exception will raise an error.
Returns: The response from the request.
Return type: requests.models.Response
-
submit_files
(halt_on_error=True)[source]¶ Submit Files for Documents and Reports to ThreatConnect API.
Critical Errors
- There is insufficient document storage allocated to this account.
Parameters: (bool, default (halt_on_error) – True): If True any exception will raise an error. Returns: The upload status for each xid. Return type: dict
-
threat
(name, xid=True)[source]¶ Add Threat data to Batch object
Parameters: - name (str) – The name for this Group.
- xid (str, optional) – The external id for this Group.
Returns: An instance of Threat.
Return type: obj
-
url
(text, rating=None, confidence=None, xid=True)[source]¶ Add URL Address data to Batch object.
Parameters: - text (str) – The value for this Indicator.
- rating (str, optional) – The threat rating for this Indicator.
- confidence (str, optional) – The threat confidence for this Indicator.
- xid (str, optional) – The external id for this Indicator.
Returns: An instance of URL.
Return type: obj
-
user_agent
(text, rating=None, confidence=None, xid=True)[source]¶ Add User Agent data to Batch object
Parameters: - text (str) – The value for this Indicator.
- rating (str, optional) – The threat rating for this Indicator.
- confidence (str, optional) – The threat confidence for this Indicator.
- xid (str, optional) – The external id for this Indicator.
Returns: An instance of UserAgent.
Return type: obj
-
-
class
tcex.tcex_batch_v2.
Threat
(name, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Group
ThreatConnect Batch Threat Object
-
class
tcex.tcex_batch_v2.
URL
(text, rating=None, confidence=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Indicator
ThreatConnect Batch URL Object
-
class
tcex.tcex_batch_v2.
UserAgent
(text, rating=None, confidence=None, xid=True)[source]¶ Bases:
tcex.tcex_batch_v2.Indicator
ThreatConnect Batch User Agent Object


ACOMPANHAMENTO DA MATRICULA
Some quick example text to build on the card title and make up the bulk of the card's content.


Odd
ODD is a fashion practice, which has no shape yet. It takes different shapes with, me Ishara Jayathillake. But whatever I do, I always feel ODD.
Ishara Jayathilake
I am a fashion designer from Sri Lanka, graduated in 2014 from Academy of Design, Colombo with a BA in Fashion Design from Northumbria University, UK.
ODD is my personal fashion practice. It has no clear shape yet. But I am exploring different avenues. I have a strong understanding of Sri Lankan traditional craft and love for sophisticated construction of garments.
I work on custom design and manufacturing for people who share my odd flavour.


merge
merge
allows you to combine any number of input objects and output a single merged set.
If the input is a single object, the return value will be a shallow copy of the input, meaning that the return value is a different object, but any non-primitive value in the input object is referenced in the returned object.
Click the "Merge" button to generate the merged set, the "Copy" button to create a shallow copy of an object.
set1 = { foo : "foo" };
set2 = { foo : "BAR", bar : "bar" };
set3 = { foo : "FOO", baz : "BAZ" };
click Merge or Copy


Sending transaction to Stellar network
The wallet you're trying to send to does not exist.
Stellar was unable to find a path between you and the destination account.
The transaction was rejected by the server due to a client issue.
Sorry, an error occurred while submitting your transaction. Make sure you are connected to the Internet and try again later.
Please ensure you don't send your payment more than once.
Your account balance will update once the payment has cleared.
Transaction cleared.
Your transaction could only be partially applied.
We were unable to submit the transaction to the server. Please try again later.
Your transaction is invalid, reason: {{engine_result}} - {{engine_result_message}}
Destination account requires destination tag to be specified when making payments.
The particular server you sent the transaction to was too busy to forward or process your transaction at the fee you included in it.
The destination account does not exist.The destination account does not exist. Too little STR sent to create it.Error: {{engine_result_message}}
You have no trust line in this currency.Your transaction failed to clear, reason: {{engine_result_message}}


About ME
i live in a house
i have friends
My hobbies
Yelling at food
Laying with ants
kicking old people