Zend\Escaper provides methods for escaping output data, dependent on the context in which the data will be used. Each method is based on peer-reviewed rules and is in compliance with the current OWASP recommendations.
The escaping follows a well known and fixed set of encoding rules for each key HTML context, which are defined by OWASP. These rules cannot be impacted or negated by browser quirks or edge-case HTML parsing unless the browser suffers a catastrophic bug in it’s HTML parser or Javascript interpreter - both of these are unlikely.
The contexts in which Zend\Escaper should be used are HTML Body, HTML Attribute, Javascript, CSS and URL/URI contexts.
Every escaper method will take the data to be escaped, make sure it is utf-8 encoded data, or try to convert it to utf-8, do the context-based escaping, encode the escaped data back to it’s original encoding and return the data to the caller.
The actual escaping of the data differs between each method, they all have their own set of rules according to which the escaping is done. An example will allow us to clearly demonstrate the difference, and how the same characters are being escaped differently between contexts:
1 2 3 4 5 6 7 8 9 10 11 12 | $escaper = new Zend\Escaper\Escaper('utf-8');
// <script>alert("zf2")</script>
echo $escaper->escapeHtml('<script>alert("zf2")</script>');
// <script>alert("zf2")</script>
echo $escaper->escapeHtmlAttr('<script>alert("zf2")</script>');
// \x3Cscript\x3Ealert\x28\x22zf2\x22\x29\x3C\x2Fscript\x3E
echo $escaper->escapeJs('<script>alert("zf2")</script>');
// \3C script\3E alert\28 \22 zf2\22 \29 \3C \2F script\3E
echo $escaper->escapeCss('<script>alert("zf2")</script>');
// %3Cscript%3Ealert%28%22zf2%22%29%3C%2Fscript%3E
echo $escaper->escapeUrl('<script>alert("zf2")</script>');
|
More detailed examples will be given in later chapters.
At present, programmers orient towards the following PHP functions for each common HTML context:
- HTML Body: htmlspecialchars() or htmlentities()
- HTML Attribute: htmlspecialchars() or htmlentities()
- Javascript: addslashes() or json_encode()
- CSS: n/a
- URL/URI: rawurlencode() or urlencode()
In practice, these decisions appear to depend more on what PHP offers, and if it can be interpreted as offering sufficient escaping safety, than it does on what is recommended in reality to defend against XSS. While these functions can prevent some forms of XSS, they do not cover all use cases or risks and are therefore insufficient defenses.
Using htmlspecialchars() in a perfectly valid HTML5 unquoted attribute value, for example, is completely useless since the value can be terminated by a space (among other things) which is never escaped. Thus, in this instance, we have a conflict between a widely used HTML escaper and a modern HTML specification, with no specific function available to cover this use case. While it’s tempting to blame users, or the HTML specification authors, escaping just needs to deal with whatever HTML and browsers allow.
Using addslashes(), custom backslash escaping or json_encode() will typically ignore HTML special characters such as ampersands which may be used to inject entities into Javascript. Under the right circumstances, browser will convert these entities into their literal equivalents before interpreting Javascript thus allowing attackers to inject arbitrary code.
Inconsistencies with valid HTML, insecure default parameters, lack of character encoding awareness, and misrepresentations of what functions are capable of by some programmers - these all make escaping in PHP an unnecessarily convoluted quest.
To circumvent the lack of escaping methods in PHP, Zend\Escaper addresses the need to apply context-specific escaping in web applications. It implements methods that specifically target XSS and offers programmers a tool to secure their applications without misusing other inadequate methods, or using, most likely incomplete, home-grown solutions.
To understand why multiple standardised escaping methods are needed, here’s a couple of quick points (by no means a complete set!):
This is probably the best known way to defeat htmlspecialchars() when used on attribute values since any space (or character interpreted as a space - there are a lot) lets you inject new attributes whose content can’t be neutralised by HTML escaping. The solution (where this is possible) is additional escaping as defined by the OWASP ESAPI codecs. The point here can be extended further - escaping only works if a programmer or designer know what they’re doing. In many contexts, there are additional practices and gotchas that need to be carefully monitored since escaping sometimes needs a little extra help to protect against XSS - even if that means ensuring all attribute values are properly double quoted despite this not being required for valid HTML.
HTML escaping is just that - it’s designed to escape a string for HTML (i.e. prevent tag or attribute insertion) but not alter the underlying meaning of the content whether it be Text, Javascript, CSS or URIs. For that purpose a fully HTML escaped version of any other context may still have its unescaped form extracted before it’s interpreted or executed. For this reason we need separate escapers for Javascript, CSS and URIs and those writing templates must know which escaper to apply to which context. Of course this means you need to be able to identify the correct context before selecting the right escaper!
DOM based XSS has become increasingly common as Javascript has taken off in popularity for large scale client side coding. A simple example is Javascript defined in a template which inserts a new piece of HTML text into the DOM. If the string is only HTML escaped, it may still contain Javascript that will execute in that context. If the string is only Javascript escaped, it may contain HTML markup (new tags and attributes) which will be injected into the DOM and parsed once the inserting Javascript executes. Damned either way? The solution is to escape twice - first escape the string for HTML (make it safe for DOM insertion), and then for Javascript (make it safe for the current Javascript context). Nested contexts are a common means of bypassing naive escaping habits (e.g. you can inject Javascript into a CSS expression within a HTML Attribute).
A simple example, widely used, is when you see json_encode() used to escape Javascript, or worse, some kind of mutant addslashes() implementation. These were never designed to eliminate XSS yet PHP programmers use them as such. For example, json_encode() does not escape the ampersand or semi-colon characters by default. That means you can easily inject HTML entities which could then be decoded before the Javascript is evaluated in a HTML document. This lets you break out of strings, add new JS statements, close tags, etc. In other words, using json_encode() is insufficient and naive. The same, arguably, could be said for htmlspecialchars() which has its own well known limitations that make a singular reliance on it a questionable practice.
The source code of this file is hosted on GitHub. Everyone can update and fix errors in this document with few clicks - no downloads needed.


National ID Number
First Name
Last Name
Relation
Education
Occupation
Income
Email
Address
City
Country
Mobile


Welcomes the user with the project name, the version, the URL as well as the authors.
This panel welcomes the user by displaying the project name, the version, the URL as well as the authors.
There are also an HTMLHelloPanel (rendering html instead of text) and a CheckedHelloPanel (checking the registry for a previous installation).
This is a kind of 'README' panel.
This is a kind of 'README' panel. It presents text of any length.
There is also an HTMLInfoPanel rendering html instead of text.
Prompt the user to acknowledge a license agreement.
These panels can prompt the user to acknowledge a license agreement. They block unless the user selects the 'agree' option.
There is also an HTMLLicencePanel rendering html instead of text.
Allows the user to select the installation path.
This panel allows the user to select the installation path.
The installation path can be customized and the "target directory will be created" dialog can be suppressed.
Allows the user to select the packs he wants to install.
Allows the user to select the packs he wants to install.
The packs can be required/optionnal and be grouped into installGroups. There are also an ImgPacksPanel (each pack has a different picture), a TreePacksPanel (uses a tree-like list instead of a simple list).
Launches the installation process.
You should always have this one as it launches the installation process !
An ending panel.
An ending panel.
There is also a FinishPanel able to write automated installer information.


RT @FakeNNWMTips: Great novelists do extensive research and draw from years of life experience. But the half hour you spent on Wikipedia ...
11/17/2011, 8:34:05 AM
Favs: 0
Retweets: 0
link--- layout: tweet ---
RT @FakeNNWMTips: Great novelists do extensive research and draw from years of life experience. But the half hour you spent on Wikipedia ...
11/17/2011, 8:34:05 AM
Favs: 0
Retweets: 0
link


Robust Bias-Aware Classifier¶
-
class
libtlda.rba.
RobustBiasAwareClassifier
(l2=0.0, order='first', gamma=1.0, tau=1e-05, max_iter=100, clip=1000, verbose=True)¶ Class of robust bias-aware classifiers.
Reference: Liu & Ziebart (20140. Robust Classification under Sample Selection Bias. NIPS.
Methods contain training and prediction functions.
Methods
-
feature_stats
(X, y, order='first')¶ Compute first-order moment feature statistics.
Parameters: X : array
dataset (N samples by D features)
y : array
label vector (N samples by 1)
Returns: array
array containing label vector, feature moments and 1-augmentation.
-
fit
(X, y, Z)¶ Fit/train a robust bias-aware classifier.
Parameters: X : array
source data (N samples by D features)
y : array
source labels (N samples by 1)
Z : array
target data (M samples by D features)
Returns: None
-
get_params
()¶ Get classifier parameters.
-
is_trained
()¶ Check whether classifier is trained.
-
iwe_kernel_densities
(X, Z)¶ Estimate importance weights based on kernel density estimation.
Parameters: X : array
source data (N samples by D features)
- Z : array
target data (M samples by D features)
Returns: array
importance weights (N samples by 1)
-
posterior
(psi)¶ Class-posterior estimation.
Parameters: psi : array
weighted data-classifier output (N samples by K classes)
Returns: pyx : array
class-posterior estimation (N samples by K classes)
-
predict
(Z)¶ Make predictions on new dataset.
Parameters: Z : array
new data set (M samples by D features)
Returns: preds : array
label predictions (M samples by 1)
-
psi
(X, theta, w, K=2)¶ Compute psi function.
Parameters: X : array
data set (N samples by D features)
theta : array
classifier parameters (D features by 1)
w : array
importance-weights (N samples by 1)
K : int
number of classes (def: 2)
Returns: psi : array
array with psi function values (N samples by K classes)
-


2017-11-16 compiler meeting notes¶
Scheduled time: 9 AM central. Meeting link: https://anaconda.webex.com/anaconda-en/j.php?MTID=m11b5ddad66325da22bbe58d7d1c02809
Adopting Anaconda compilers¶
Linux: gcc 7.2
Prefixed compilers: require activation
Common adaptations required for new anaconda compilers:
Mac: LLVM/clang 4.0.1
prefixed compilers: require activation
common adaptations required for new anaconda compilers:
Windows: activation scripts
Need adaptation for Appveyor compiler locations
common adaptations required:
cmake
clear CC and/or CXX vars
import os
print(“Hello World”)
Compiler flag unification¶
GCC
toolchain: https://github.com/conda-forge/toolchain-feedstock/blob/master/recipe/activate.sh
toolchain3: https://github.com/conda-forge/toolchain3-feedstock/blob/master/recipe/activate.sh
anaconda: https://github.com/AnacondaRecipes/aggregate/blob/master/ctng-compilers-activation-feedstock/recipe/conda_build_config.cos6.x86_64.yaml#L41-L54 | Variable | toolchain only | anaconda only | | | ——– | ————————————— | ——————————————————————————————————————————————————— | | | CFLAGS | -m${ARCH} | march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -pipe | | | CPPFLAGS | | -D_FORTIFY_SOURCE=2 -O2 | | | CXXFLAGS | -DBOOST_MATH_DISABLE_FLOAT128 -m${ARCH} | -fvisibility-inlines-hidden -std=c++17 -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -pipe | | | LDFLAGS | -Wl,-rpath,$PREFIX/lib | Wl,-O2 -Wl,–sort-common -Wl,–as-needed -Wl,-z,relro -Wl,-z,now | |
LLVM/clang
toolchain: https://github.com/conda-forge/toolchain-feedstock/blob/master/recipe/activate.sh
toolchain3: https://github.com/conda-forge/toolchain3-feedstock/blob/master/recipe/activate.sh
anaconda: https://github.com/AnacondaRecipes/aggregate/blob/master/clang/build.sh | Variable | toolchain only | anaconda only | | ———- | ———————————————————————– | —————————————————————————————————————————————————————————- | | CPPFLAGS | | -mmacosx-version-min=${MACOSX_VERSION_MIN} | | CFLAGS | -mmacosx-version-min=${MACOSX_VERSION_MIN} -m${ARCH} | -march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fPIE -fstack-protector-strong -O2 -pipe | | CXXFLAGS | -mmacosx-version-min=${MACOSX_VERSION_MIN} -m${ARCH} | -march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fPIE -fstack-protector-strong -O2 -pipe -stdlib=libc++ -fvisibility-inlines-hidden -std=c++14 -fmessage-length=0 | | LDFLAGS | -mmacosx-version-min=${MACOSX_VERSION_MIN} -lc++ -Wl,-rpath,$PREFIX/lib | -pie | | LDFLAGS_CC | | -Wl,-pie -Wl,-headerpad_max_install_names | | | | |
Fortran
toolchain: (not set)
toolchain3: (not set)
anaconda:
Linux: https://github.com/AnacondaRecipes/aggregate/blob/master/ctng-compilers-activation-feedstock/recipe/conda_build_config.cos6.x86_64.yaml#L46
Mac: https://github.com/AnacondaRecipes/aggregate/blob/master/gfortran-feedstock/recipe/build.sh#L5
Windows: flags that affect some things (cmake) | Variable | anaconda value | | ————– | ——————————- | | CFLAGS | %CFLAGS% -MD -GL | | CXXFLAGS | %CXXFLAGS% -MD -GL | | LDFLAGS_SHARED | %LDFLAGS_SHARED% -LTCG ucrt.lib |
Overall: everyone receptive to new compilers. Mike to provide way of keeping host and build prefix separate, even when not cross compiling. This would avoid need for things like “always_include_files” and would facilitate conda-forge keeping their llvmdev recipe as is (for cling usage).
Filipe: this is really little more than a vendor change. We already depend on other vendors for compilers (RH for devtoolset2; apple for existing clang), we’re only switching to a different vendor, not fundamentally changing what we do.
Need to maintain llvm with cling patches, but this will not be the default compiler.
Conda-build 3: strategy for moving¶
install and use with c-b-a (no cb3 matrix)
Waiting on feedback from issue https://github.com/conda-tools/conda-build-all/issues/94 but mostly seems OK.
Mike: needs to fix —skip-existing. Concern is that re-rendering should not generate new packages when only some dependency has changed (bugfix bump?)
Jonathan to explore ways to skip uploads when only hash has changed as a temporary workaround.
replace c-b-a with cb3 matrix support
replace pinning script with central conda_build_config.yaml
Re-render installs from conda-forge central config package, uses that config
Each recipe can have its own conda_build_config.yaml alongside its meta.yaml file to override anything
Where/how to store intermediate files and distribute CI jobs
John recommended committing these to the feedstock repo during re-rendering
Jonathan wondered about committing the full conda_build_config.yaml to the repo, or pulling it in as a dependency at build time, but then reducing it using environment variables.
Mike wondered about CONDA_VARIANT_* as a pattern for environment variables that CB might recognize, so that we keep the current CI scheme. This probably also integrates with Jonathan’s idea of reducing the matrix on a per-job basis. Conda-smithy would create the set of jobs, each with different env vars to reduce the overall matrix for each job.
use run_exports and use either c-b-a or cb3
People generally interested, but needs to be implemented and proven over time. Good experience so far with defaults.
Fortran support on Windows¶
gfortran (msys2) / Flang
Timeline for adding either
Mike asked that whatever is done is done with community approval, for the sake of maintaining a high quality user experience.
OpenMP behavior¶
Currently, needs extra package on mac, but is included on Linux (not active in flags, though)
What is desirable default behavior?


Parameters
object
subject
The subject that was used in the spec.
Type IBehaviorConfig
Namespace Machine.Fakes
object
subjectThe subject that was used in the spec.
IFakeAccessor
fakeAccessorGives access to creating, accessing and configuring fakes inside the specifications subject.


Capability URLs
Summary of the Issues
Jeni Tennison · @JeniT
Security in Web Apps
Two methods:
- user accounts & permissions tied to them
- obscure URLs no one can guess
Capability URLs
know the URL?
then you can access the content
or even do other things...
Password Resets
links sent by email
Your Dropbox password recently expired. You can reset it here.
https://www.dropbox.com/l/Q8eJH22ft0ckDJDeff1Do10/password_reset
Second Life
Registration API
Reg API capabilities represent permissions to perform certain actions.
https://cap.secondlife.com/cap/0/2897456b-6959-473e-9b94-36d8cec1b9c3
Keep your capability URLs secret! The capabilities granted to you are only meant for you. A capability URL is sensitive much like a password. Moreover, Linden Lab tracks the use of each capability.
Other Examples
- Google Hangouts
- Github Gists
- Doodle polls
- ...
No Login Required
- users who can't remember login
- users who don't want to create account
- developers who don't want to support accounts
Easy Onward Sharing
- invite just one person in organisation
- trust they will pass on URL to the rest
- reduced administration
Easy Client API
- perform authentication
- request list of capability URLs
- use those URLs without authentication
Risk of Exposure
URLs aren't designed to be secret
- shown in URL bar
- appear in proxy logs
Compromise is Hard to Handle
revoke compromised URL
vs
revoke compromised user's access
Web Architecture
Good practice: Avoiding URI aliases
A URI owner SHOULD NOT associate arbitrarily different URIs with the same resource.
restricted access → public access
capability URL → normal URL
Beyond the Single Page
require capability URLs for onward links?
Application Design
- when to use capability URLs
- alternatives to capability URLs
- how to expire capability URLs
Canonical URLs
scenario: multiple URLs giving
different access to single document
-
how to relate capability URLs to canonical URL
- redirections based on
Referer
header
- embedded metadata in pages
-
how to transition to canonical URL once public
Capability URL Design
- ensuring uniqueness
- avoiding guessability
- providing human readability
UI Design Considerations
should there be ways to hide URLs?
- location bar
- status bar
- view source
Proposed Work
short best practices Recommendation
- aimed at web developers
- covering recommendations just outlined


The writer of Search Inside Yourself argues that these are the same thing. But earlier in the chapter he briefly mentions using mindfulness techniques to help his self awareness and boost his self confidence - I think this is closer to the truth. Mindfulness is tool - perhaps the tool - that brings self awareness. It allows you to observe your emotions, thoughts, preferences, actions, and so on without judgement. You can then mindfully assess these characteristics - what they mean to you; how they affect you; how you can change or control them. This is self awareness. With enough self awareness, you can strengthen your mindfulness and the two become ever more symbiotic.
I already have some experience of these things. When I first took and interest in meditation, I read a short book called "With each and every breath" that described a technique similar to Body Scan. I've incorporated it into my daily meditation as a means to get "into the zone". The emphasis in the book I read earlier was to observe the body sensations as a means to feeling your own breath energy, whereas Search Inside Yourself suggests using it to become better aware of your emotions and the effect on your physical self. This is an interesting idea and I look forward to using it outside of a meditation setting.
Journaling is basically keeping a diary isn't it? I used to do that, but I came across a few stumbling blocks: the inability for my writing to keep up with my thoughts; the tendency to self-edit as I go and therefore losing my train of thought; and the stark reality of your rawest thoughts being committed to paper - where you cannot ignore them - is intimidating. I also tend to overwrite, as anyone who's actually read these blogs might have figured out. It can be exhausting!
This was the most interesting bit, so it's a real shame it was covered so quickly. The subtle but crucial shift in thought from "I am this emotion", to "I feel this emotion" combined the cloud analogy is the real takeaway from this chapter; I look forward to being mindful of this truth.


{{v}}
(empty)
Import storage objects from a CSV or JSON file by dragging and dropping it below.
{{uploadError}}
Delete all user accounts and storage objects.
{{deleteError}}
Are you sure you want to delete all data?


Darren Rovell Has An Update On Willie Taggart’s Contract Situation With Florida State
by Matt HladikFlorida State parted ways with head coach Willie Taggart earlier this season after less than two years on the job. In doing so, it seemed they were willing to pay his gargantuan buyout.
However, earlier today, a story from Matt Baker of the Tampa Bay Times stated that Taggart and Florida State never actually signed an official contract. As a result, there looked like a possible way for the school to get out of the $18 million it owed him.
Now, a new report from Action Network’s Darren Rovell claims Taggart actually signed his contract with FSU, but the school did not. Rovell says Taggart should get his money.
Taggart would have fought for his money whether or not he signed a contract. If Rovell’s reporting is accurate, he doesn’t have to battle because he’ll be getting it.
Florida State has yet to hire a new coach, but the Seminoles have won two games in a row under interim head coach Odell Haggins. At 6-5, they have clinched bowl eligibility after missing out on a bowl last season.
The Seminoles will face rival Florida in the regular season finale on Saturday. Florida won last year’s matchup after FSU beat the Gators five times in a row from 2013-17.


This tag tells the browser the start of the page
This tag designates the main header
This tag displays a title in the main header
This tag sets the style of the whole page
This tag designates the substance of the page
This tag denotes a headline, the lower the number the bigger the word size
This tag denotes a paragraph, also can attach an id to it
This tag denotes a quote
This tag denotes a blockquote
This tag designates the start of an unordered list
This tag designates the start of an ordered list
This tag denotes an item in the list
Diplays image from a source file
Denotes a line break
Denotes the following text to be emphasised
Designates the following text as a link, title will display when the mouse hovers over the link, and target="_blank" will always open the link in a new window
Designates a date and/or time
Displays following text exactly as typed/formatted
Displays code from computer program
Displays following test strongly emphasised
Look up abbreviations such as &


sentience is a typical emergent attribute of any teleodynamic system
But no possibility of reducing these higher-order forms (e.g., human consciousness) to lower-order forms
irreducible to lower but could not exist without lower process
there will be a sentience characteristic for each level
all these forms of sentience should be operative in parallel in the functioning of complex nervous systems.
The two levels are phenomenally discontinuous, which is to say that a neuron's sentience comprises no fraction of your sentience.
this second-order teleodynamics is analogous to the way that the teleodynamics of interacting organisms within an ecosystem can contribute to higher-order population dynamics, including equilibrating (homeodynamic) and self-organizing (morphodynamic) population effects.
- see example of the termite realm
The various nested levels of sentience from molecular to neuronal to mental are thus mutually inaccessible to one another, and can exhibit quite different properties.
So, while the lower level of cellular sentience cannot be dispensed with, it is a realm apart from mental experience. There is the world of the neuron and the world of mind, and they are distinct sentient realms.
So subjective sentience is fundamentally more complex and convoluted in its teleodynamic organization. It therefore exemplifies emergent teleodynamic properties that are unprecedented at the lower level
In other words, certain ubiquitous aspects of mental experience should inevitably exhibit organizational features that derive from, and assume certain dynamical properties characteristic of, thermodynamic and morphodynamic processes. To state this more concretely: experience should have clear equilibrium-tending, dissipative, and self-organizing characteristics, besides those that are intentional. These are inseparable dynamical features that literally constitute experience. What do these dynamical features correspond to in our phenomenal experience?
Broadly speaking, this dynamical infrastructure is 'emotion' in the most general sense of that word.
It is the tension that separates self from non-self; the way things are and the way they could be; the very embodiment of the intrinsic incompleteness of subjective experience that constitutes its perpetual becoming.
Both the motive and resistive aspects of experience are thus commonly expressed in energetic terms.
mentality as fluid, kundalini, doshas, humors, elan vital, libido, vitalist
mentality as an energetic process.
Gregory Bateson argued that the appropriate way to conceive of mental processes was in informational and cybernetic terms. p514.
Energy and information are asymmetrically and hierarchically interdependent dynamical concepts, which are linked by virtue of an intervening level of morphodynamic processes.
mental experience neither ebb and flow of a vital fluid nor buildup and release of energy nor with signal patterns. p 516
Each neuron is bombarded with signals that constitute its Umwelt p516
As in other statistical dynamical regularities, there are a vast number of microstates (i.e., network activity patterns) that can constitute the same global attractor, and a vast number of trajectories of microstate-to-microstate changes that will tend to converge to a common attractor.
This shift in level makes it less clear that we can simply dismiss these folk psychology force-motion analogies. If the medium of mental representation is not mere signal difference, but instead is the large-scale global attractor dynamic produced by an extended interconnected population of neurons, then there may also be global-level homeodynamic properties to be taken into account as well. As we have seen in earlier chapters, these global dynamical regularities will exhibit many features that are also characteristic of force-motion dynamics.
any mental content, whether emerging from memory or induced by sensory input, should take time to develop. Second, it should require something like a persistent metabolic boost, to provide a sufficient period of incessant perturbation to build up local signal imbalances and drive the formation of larger-scale attractor regularities. p518
Third, because of the time it takes for the non-linear recursive circulation of these signals to self-organize large-scale network dynamics, mental content should also not emerge all or none into awareness, but should rather differentiate slowly from vague to highly detailed structures. p518
This means that the differential distribution of metabolic support in the brain will itself play a major role in determining what morphodynamic processes are likely to develop when and where. p519
This means that if there is a means to globally regulate the distribution of the brain's metabolic resources that is, by up- and down-regulating rates of regional cerebral blood flow this could also be a means of initiating and developing, or impeding and degrading, certain local morphodynamic tendencies.
Interestingly, because of the time it takes for morphodynamic activity to differentiate to a regular attractor stage, mental processes likely take place at rates that are commensurate with metabolic time scales; and in the case of highly complex and highly robust morphodynamic attractors, this may take longerperhaps many seconds to reach a stage of full differentiation. p521
It is my hypothesis, then, that this resistance and work created by these dependencies between levels of dynamics of brain processes constitutes the experience of emotion. 523-524
-- p 523 how might animal instincts come into this?
This emergent dynamic account thus effectively distinguishes the conscious from unconscious generation of thoughts and attentional foci in terms of work. The more work at more levels, the more sentient experience. And where work is most intense, we are most present and actively sentient. Self and other, including the otherness created by the inertia of our own neural dynamics, are thus brought into stark relief by the contragrade tensions that arise because we are constituted dynamically. p524
But as we have already come to realize, the sort of teleodynamics that arises from brain process is at least a second-order form of teleodynamics when compared to that which constitutes life.
This is because sentience inevitably has a valence. Things feel good and bad, they aren't merely good for or bad for the organism. p 524
There are emergent sentient properties produced by the teleodynamics of brains that are not produced by simpler, lower-order forms of sentience. Crucially, these are special normative properties made possible because the sentience generated by brain processes is, in effect, a second-order sentience: a sentience of sentience. And with this comes a sentience of the normative features of sentience. In colloquial terms, this sentience of normativity is the experience of pleasure and pain, joy and suffering. p 525
Generation of a projected future self-in-context thus can become a critical source of constraints organizing the whole system. p 526
It was noted that particularly in cases of life-and-death contexts, morphodynamic change must be instituted rapidly and extensively, and this requires extensive work at both the homeodynamic (metabolic) and morphodynamic (mental) levels. The extent of this work and the intensity of the tension created by the resistance of dynamical processes to rapid change is, I submit, experienced as the intensity of emotion. p 527
The ephemeral nature of teleodynamics guarantees that it faces an incessant war against intrinsic and extrinsic influences that would tend to disrupt it and the more disruptive of its self-similarity maintenance, the greater the work that must be performed to resist this influence. p 527
The capacity to suffer requires the higher-order teleodynamic loop that brain processes make possible. It requires a self that creates within itself a teleodynamic reproduction of itself. This emergent dynamical homunculus p 528
Since the locus of this self-perspective is dynamically determined with respect to the 'boundaries' of morphodynamic reciprocities, and these are changing and differentiating constantly, there can be no unambiguous anatomical correlate of this homunculus within the brain. p530
Perception is not merely the registration of extrinsically imposed changes of neural signals. It involves the generation of local morphodynamic processes that remain integrated into the larger teleodynamic integrity and yet are at the same time modulated by these extrinsically imposed constraints. p 531
pain = special form of perception
pain that cannot be relieved = suffering
pain is only for the smart
pain is the essence of neurological sentience.
Deacon, Terrence W. (2011-11-14). Incomplete Nature: How Mind Emerged from Matter (p. 532). Norton. Kindle Edition.
the very locus of teleodynamic closure becomes virtual. p532
So, even though this is a theory which defends the thesis that intentional relationships and sentient experiences are not material phenomena in the usual sense of that concept, it nonetheless provides us with a thoroughly empirical set of predictions and testable hypotheses about these enigmatic relationships. p 537
We are incomplete in our very nature.
I believe that despite its counterintuitive negative framing, this figure/background reversal of the way we conceive of living and mental causality promises to reinstate subjective experience as a legitimate participant in the web of physical causes and effects, and to ultimately reintroduce intentional phenomena back into the natural sciences.
Mind didn't exactly emerge from matter, but from constraints on matter.


Here is an album to see my favorite Super Smash Bros. Wii U characters
Here is an album to see my favorite Marvel Super Heros


Preparation time
overnight
Cooking time
over 2 hours
Serves
Serves 6
Here’s something special from two Michelin star chef David Everitt-Matthias.
For the brine, combine all the ingredients, except the turkey, in a large saucepan with 1 litre/1¾ pints water and bring to the boil. Cook for five minutes. Remove from the heat and leave to cool. Place the turkey in the brine, cover and leave in the brine in the fridge for 4-5 days.
For the turkey coating, toast all the ingredients, apart from the sea salt, in a dry pan until the seeds start popping and the mixture smells aromatic. Remove from the heat and leave to cool, then grind in a blender, or in spice mill or clean coffee grinder. Mix with the salt and keep in a sealed jar until needed.
For the turkey prosciutto, drain the turkey, rinse briefly and dry with a clean cloth. Roll the turkey in the spiced coating mixture, then roll it in a piece of muslin. Tie both ends with string, making a loop at one end. Hang up and leave to air-dry for 1-2 weeks in a cool, airy place. When needed, remove the cloth and slice as finely as possible. You will need 4-5 slices per portion.
For the pickled green elderberries, put the salt into 350ml/12fl oz water in a medium saucepan and bring to the boil to dissolve the salt. Place to one side and cool.
Check the elderberries for any bugs, then put the berries in a sterilised container that has a tight fitting lid. Pour in the brine. Cover the container and keep in a cool place or the fridge for 2-3 weeks. Keep an eye on the berries, you don’t want them to shrivel. If they start to look a bit too wrinkled, drain and quickly rinse under cold running water.
Once the salting period is over, drain the brine from the berries and put them into a clean, sterilised, warm jar. Bring the vinegar to the boil, then pour over the berries to cover them completely. Immediately cover with a tight-fitting lid and leave to cool. Keep in the refrigerator. (They can be stored for 6- 8 months.)
For the salted wild garlic buds, put the salt into 200ml/7fl oz water in a small saucepan and bring to the boil. Remove from the heat and leave to cool.
Make sure the garlic buds are free of stalks, then rinse thoroughly. Place them in a sterilised jar, pour over the brine solution and cover. Keep in a cool, dark place for 2-3 weeks before using. If you want to keep them longer than this, drain the buds, place in another sterilised jar and cover with olive oil. Keep in the fridge until needed.
For the leek ash, set a large pan of salted water on the heat and bring up to the boil. Meanwhile, cut the leeks in half lengthways, separate the layers and wash well, removing any grit. Drain. Blanch the leeks in the boiling water, then drain and refresh. Place on a cloth to dry.
Spread out the batch of leeks, in a single layer, on a baking tray and grill them until black and dry. Repeat until all the leek layers have been grilled. Place the blackened, dried leeks in a blender, or a clean spice mill or coffee grinder, and blend to a powder. Pass the powder through a fine sieve, to end up with a uniform fine powder with no big bits in it. Store in an airtight container until needed (up to one month).
For the buffalo milk jelly, place all the ingredients in a medium-sized saucepan and whisk together, then leave to sit for five minutes. Heat up the mixture, whisking occasionally, and boil for two minutes. Season. Strain through a fine chinois into a stainless-steel tray, about 15cmx3cmx½cm. Leave to cool, then cover and leave in the fridge for about four hours, until set. Remove from the fridge 30 minutes before needed.
For the Witchill potatoes, put the potatoes in a large saucepan, just cover with water and add some salt. Bring up to the boil, then simmer for 10-15 minutes, or until tender. Drain and leave to cool. When needed, cut each potato into four even slices. Warm the butter in a medium pan, add the potatoes and turn around in the butter, then add the leek ash. Turn the potatoes in the ash and butter until coated. Season and keep warm until needed.
 Cook for about five minutes, stirring occasionally, until the onions have collapsed and become translucent. Remove the lid and cook until the onions are a lovely deep golden-brown colour, stirring well to prevent them from catching. Transfer the onions to a blender and blend until smooth. Add the butter and blend again. Remove from the blender to a small saucepan and season. Keep warm until needed.
For the spring onions, heat a large frying pan. While it is getting hot, toss the spring onions in the oil and seasoning. Place them in the pan and keep turning until wilted, golden-brown and cooked.
To serve, make a smear of onion purée down the centre of each plate. Sprinkle with green elderberries and garlic buds. Using a teaspoon, place four scoops of buffalo milk jelly on each place, then add the spring onions. Now, add the potatoes, four slices per plate. Arrange 4-5 slices of turkey prosciutto on each plate, bending them a little. Finally, add the chickweed and dust a band of leek ash over the centre of the plate.


Yes, "I can do this" is very important.. Especially when you get hella stuck on something. fixing MoMoM was like that for me, many times I was thinking, I dont know hwo to fix this, but I got there in the end... Maybe just need to do something else and come back to it. Working on other problems ususally solves a previous problem as long as you are always thinking about it.


Oh no! It looks like your browser is outdated, but all is not lost! Use a modern browser such as Edge, Chrome, or Firefox and this page will display ardently!
SharePoint REST Query Builder
Expand a Value
expand-property-name
Auto add to select
expand-property-value
Add to query
Add a Select item
select-column-name
Add to query
Add an Orderby
orderby-column-name
orderby-operator
-- select an option --
Ascending
Descending
Add to query
Add a Row Limit
Number of results
top-number
Add to query
Add a Filter
Open Section (
And
Or
Close Section )
filter-column-name
filter-operator
-- select an option --
Equal
Not equal
Greater than
Greater than or equal
Less than
Less than or equal
filter-value
OR
filter-date-value
filter-time-value
Clear Filter
Add to filter
filter-string
Add to query
Current query items
Remove All
Generate Query
Query string
Copy to Clipboard
Add a list or library name
test-list-name
Enter a URL to test
test-url
TEST


--- layout: page title: About header-img: "img/about-bg.png" ---
Joey is a musician, artist and coder living in Philadelphia.


Struct Triangle
Implements
System.IEquatable<Triangle>
Inherited Members
System.Object.Equals(System.Object, System.Object)
System.Object.GetType()
System.Object.ReferenceEquals(System.Object, System.Object)
Namespace: Vim.Math3d
Assembly: Vim.Math3D.dll
[DataContract]
public readonly struct Triangle : IEquatable<Triangle>, ITransformable3D<Triangle>, IPoints, IMappable<Triangle, Vector3>
Constructors
View SourceTriangle((Vector3 a, Vector3 b, Vector3 c))
public Triangle((Vector3 a, Vector3 b, Vector3 c) tuple)
Triangle(Vector3, Vector3, Vector3)
public Triangle(Vector3 a, Vector3 b, Vector3 c)
Fields
View SourceA
[DataMember]
public readonly Vector3 A
B
[DataMember]
public readonly Vector3 B
C
[DataMember]
public readonly Vector3 C
MaxValue
public static Triangle MaxValue
MinValue
public static Triangle MinValue
Zero
public static Triangle Zero
Properties
View SourceAB
public readonly Line AB { get; }
AC
public readonly Line AC { get; }
Area
public readonly float Area { get; }
BA
public readonly Line BA { get; }
BC
public readonly Line BC { get; }
Binormal
public readonly Vector3 Binormal { get; }
BoundingBox
public readonly AABox BoundingBox { get; }
BoundingSphere
public readonly Sphere BoundingSphere { get; }
CA
public readonly Line CA { get; }
CB
public readonly Line CB { get; }
HasArea
public readonly bool HasArea { get; }
LengthA
public readonly float LengthA { get; }
LengthB
public readonly float LengthB { get; }
LengthC
public readonly float LengthC { get; }
MidPoint
public readonly Vector3 MidPoint { get; }
Normal
public readonly Vector3 Normal { get; }
NormalDirection
public readonly Vector3 NormalDirection { get; }
NumPoints
public readonly int NumPoints { get; }
Perimeter
public readonly float Perimeter { get; }
SafeNormal
public readonly Vector3 SafeNormal { get; }
Tangent
public readonly Vector3 Tangent { get; }
Methods
View SourceAlmostEquals(Triangle, Single)
public readonly bool AlmostEquals(Triangle x, float tolerance = 1E-07F)
Create((Vector3 a, Vector3 b, Vector3 c))
public static Triangle Create((Vector3 a, Vector3 b, Vector3 c) tuple)
Create(Vector3, Vector3, Vector3)
public static Triangle Create(Vector3 a, Vector3 b, Vector3 c)
Deconstruct(out Vector3, out Vector3, out Vector3)
public readonly void Deconstruct(out Vector3 a, out Vector3 b, out Vector3 c)
Equals(Object)
public override readonly bool Equals(object obj)
Overrides
System.ValueType.Equals(System.Object)
View Source
Equals(Triangle)
public readonly bool Equals(Triangle x)
GetHashCode()
public override readonly int GetHashCode()
Overrides
System.ValueType.GetHashCode()
View Source
GetPoint(Int32)
public readonly Vector3 GetPoint(int n)
IsSliver(Single)
public readonly bool IsSliver(float tolerance = 1E-07F)
Map(Func<Vector3, Vector3>)
public readonly Triangle Map(Func<Vector3, Vector3> f)
SetA(Vector3)
public readonly Triangle SetA(Vector3 x)
SetB(Vector3)
public readonly Triangle SetB(Vector3 x)
SetC(Vector3)
public readonly Triangle SetC(Vector3 x)
Side(Int32)
public readonly Line Side(int n)
ToString()
public override readonly string ToString()
Overrides
System.ValueType.ToString()
View Source
Transform(Matrix4x4)
public readonly Triangle Transform(Matrix4x4 mat)
Operators
View SourceEquality(Triangle, Triangle)
public static bool operator ==(Triangle x0, Triangle x1)
Implicit((Vector3 a, Vector3 b, Vector3 c) to Triangle)
public static implicit operator Triangle((Vector3 a, Vector3 b, Vector3 c) tuple)
Implicit(Triangle to (Vector3 a, Vector3 b, Vector3 c))
public static implicit operator (Vector3 a, Vector3 b, Vector3 c)(Triangle self)
Inequality(Triangle, Triangle)
public static bool operator !=(Triangle x0, Triangle x1)
Implements
System.IEquatable<T>


Restart
Clear Data
BusMall
Help us bring you better products by selecting your favorite from the items above.


node-async-testing includes two different means of running suites: A simple, recommended interface for running suite files and a low-level API (which is used by the previous method) which gives you fine-grained control.
node-async-testing assumes you are going to have a one to one mapping between suites and files. So, to run a test suite, you actually tell it to run a file:
require('async_testing').run('test-suite.js');
The run
function can take a file name or a directory name (it
recursively searches directories for javascript files that start with test-
)
or an array of any combination of those two options.
In order for node-async-testing to run a file, the exports object of the file needs to be the test suite:
exports['first test'] = function(test) { ... };
exports['second test'] = function(test) { ... };
exports['third test'] = function(test) { ... };
// or
module.exports = {
'first test': function(test) { ... },
'second test': function(test) { ... },
'third test': function(test) { ... }
};
To make a file easy to execute with the node
command, we need
to make our file run the suite when it is the script being ran. Some where
in the file we put this code (I like to put it at the very top):
// if this module is the script being run, then run the tests:
if (module === require.main) {
return require('async_testing').run(__filename);
}
Assuming we put that suite in a file called test-suite.js
, we can now
execute the it by running the following on the command line:
node test-suite.js
The run
function can also be passed the process.ARGV
array of command line arguments, so node-async-testing settings can
be altered at run time:
if (module === require.main) {
return require('async_testing').run(process.ARGV);
}
exports['first test'] = function(test) { ... };
exports['second test'] = function(test) { ... };
exports['third test'] = function(test) { ... };
Now, you can tell node-async-testing to run the tests in parallel:
node test-suite.js --parallel
Or to only run specific tests:
node test-suite.js --test-name "first test" --test-name "third test"
Use the help
flag to see all the options:
node test-suite.js --help
node-async-testing can run multiple files at once this way, because
additional files will get passed with process.ARGV
:
node test-suite.js test-suite2.js
For example, you can run all the tests in a test
directory by saying:
node test/*
With this arrangement, the exit code of the process will be the number of tests that didn't succeed.
node-async-testing comes with a "web" test runner. This runner launches a
web server which can be used to run suites manually. Launch it with the
--web
flag:
node test/* --web
Once the server is started, in a browser you can pick and choose which suites to run, and run them as many times as you like. node-async-testing reloads the suites (and any code they use) from scratch each time they are run so you can leave the web server running and switch back and forth between editing tests or code and running the tests. Very handy!
To use the web runner you also need to install Socket.IO.
npm install socket.io
[The server is known to work in the lastest versions of Safari, Chrome and Firefox. Any help in getting it to work in Opera would be much appreciated. I don't have means of testing in IE, so I can't tell you how it performs there.]
If you want to organize your suites in a different manner (and say not have them organized by file), or don't like the included test runners, you are going to have to run your suites manually or write your own runner.
node-async-testing comes with the following functions for running suites and test runners:
runSuite(suiteObject, options)
The runSuite
function is the heart of node-async-testing.
It receives two arguments.
The first argument is the actual suite that you want to run. See Writing Tests for the details of writing a suite.
The second argument is an object with options for running the suite. This object can have the following properties:
name
onSuiteStart
event callback.
parallel
runSuite
won't start
another test until the previous one has completely finished.
testName
In addition to those properties, the options in the events callbacks section are supported.
runSuite
adds a listener to the process for uncaught exceptions,
and as such, there should be no other code running while runSuite
is doing its thing, otherwise the other code could interfere with the
suite being ran.
runFile(suitePath, options)
The runFile
function is similar to runSuite
except instead of
running the suite in the main process, it opens up a child process and runs it
there. The benefits of this are that it is able to report on syntax errors, and
also be run while other suites are running.
The first argument is a module path to the suite for Node's
require()
function.
The second argument is an object with options for running the suite. It is practically
the same as the second argument for runSuite
, except it has one for additional
event callback. See the events callbacks section for
the full list.
expandFiles(list, [filter], callback)
The expandFiles
function takes a list of files and or
directories and returns a list of just files. It recursively searches
through any directories for files that begin with test-
. It
is useful for expanding a user supplied list of files and directories. It
takes three properties:
expandFiles
is done.
It returns an array of objects which have the following properties:
name
path
require()
ed.run()
The run
functions is talked about at length in the
Running Suite Files section. It handles
outputing the results of suites for you, so you don't have to worry about it.
node-async-testing comes with two built-in runners, one for consoles and one
for web browsers.
run
can take any number of arguments, which can be any
one of:
process.ARGV
.
The last argument can be a callback which will get called when all the specified suites have finished running. The callback will receive one argument, an array with an object for each suite, which has the name, status and suite result object for that suite.
If a callback is not supplied, node-async-testing assumes that you don't
want to do anything after the suites have completed, so the run
function creates its own callback which exits the process and sets the exit
code to the number of suites that didn't complete successfully.
The order matters, latter settings override earlier ones.  See lib/console-runner.js or lib/web-runner.js for examples of how to write a runner.
The first argument is the path to the runner which you are registering. The second variable is for whether or not you want this to be the default runner.
The runSuite
and runFile
functions can be given event callbacks for outputing
the results of the tests. Using these callbacks it is possible to write your
own test runners and format the output however you'd like. These callbacks
are not for manipulating tests, but purely for reporting.
onTestStart(testName)
onTestDone(status, testResult)
status
is one of the following:onSuiteDone(status, suiteResult)
status
is one of the following:A suite result is an object that looks like one of the following, depending on what the finish status of the suite was:
occures when all tests finished running, and node-async-testing was able to accurately determine how each one finished.
{ tests: an Array of test results for each test that completed
, numFailures: the number of tests that failed
, numSuccesses: the number of tests that passed
}
occures when an uncaught error is thrown from a test and node-async-testing can't determine which test caused it. When this happens, node-async-testing stops running the suite and exits the process.
{ error: the error object that was thrown
, tests: an Array of the names of each test that could have caused the error
}
occures when the process running the suite exits and there are still tests that haven't finished. This occurs when people forget to finish their tests or their tests don't work like they expected.
{ tests: an Array of the names of each test that didn't finish
}
this type of result is only produced from runFile
, and
occures when the child process can't load the suite.
{ stderr: what was written to <stderr> before the child process exited
}
A test result is an object that looks like one of the following, depending on what the finish status of the test was:
the test completed successfully
{ name: test name
, numAssertions: number of assertions completed successfully
}
the test failed in some way
{ name: test name
, failureType: 'assertion' or 'error' depending on how this failed
, failure: the error that caused this to fail
}


Home/
Contact/
About
Enter your Contact info below:
Full Name:
Email:
Loaction:
Moon
Earth
Your Question
Send Info


Chapter 12 Solutions
Contributed by Conner Naughton and Gowthami Venkateswaran 2017
12.3 a) \(n = 1000\), \(q = 100\)
fixed supply
\[Q = 100*1000 = 100,000\]
equilibrium: \[supply = demand\]
\[100,000 = 160,000 - 10,000p\]
\[10,000p = 60,000\]
\[p = \$6\]
\[Q = 100,000\] \[ n = 1000\]
- Graphs: 1
- Graphs: 2
\[99,900 = 160,000 - 10,000P\]
\[P = 6.01 \]
If one firm sells nothing, other firm faced with demand: \(P = 6.01\)
Graph 3
\[100,200 = 160,000 - 10,000P \]
\[P = 5.98\]
If one firm instead sells 200.
- Industry demand elasticity.
Demand elasticity faced by an individual firm. Perfectly elastic (market is perfectly competitive).
12.5)
Demand: \(Q = 1500 - 50P\)
\[C(q) = \frac{1}{2}q^2 - 10q +w\]
\[\begin{align*} MC(q) &= q-10 \\ p &= q-10 \\ q &= p+10 \end{align*}\]\[AC(q) = \frac{q}{2}-10 + \frac{w}{q}\] Market supply can be expressed by:
\[Q= n*q = n(p+10)\]
So the market clearing condition is:
\[S=D\]
\[\begin{align*} n(p+10) &= 1500-50p \\ np+n*10 &=1500-50p \\ (50+n)p &=1500-10n \\ \end{align*}\]Subbing in the entreprenuer condition \(n=0.25w\)
\[\begin{align*} (50+\frac{w}{4})P &=1500-\frac{10w}{4} \end{align*}\]Now, from the no profit condition we know that the MC equals to the Average cost.
\[q-10=\frac{q}{2}-10+\frac{w}{q}\]
\[\frac{q}{2}=\frac{w}{q}\] \[q^2=2w\] \[q=\sqrt{2w}\] Then subbing this into the \(q=p+10\) equation,
\[w = \frac{(p+10)^2}{2}\] Now we have found two equations with only \(p\) and \(w\) in it. Two equations in two unknowns should be possible to solve.
\[[50 + \frac{(p+10)^2}{8}]p = 1500 - 10\frac{(p+10)^2}{2} \] Verify that \(P=10\) solves this equation. Then it follows that \(q=20\), \(n=50\), \(Q=1000\).
12.6)
\[STC = \frac{q^2}{2}+10q+5\]
\[SMC = q+ 10\] a) Firm
\[ p=SMC\]
\[p=q + 10 inverse supply\]
\[q =p-10 supply\]
Industry: 100 firms =>
\[Q=100(P-10) supply\]
b)Demand:
\[Q=1100-SOP\]
D=S =>
\[1100-SOP=100P-1000\]
\[2100 = 150P\]
\[$14=P^*\]
\[Q^*=1100-SO.14 = 400\]
\[q=4\]
Firm’s profit - p.q - STC(q)
\[ =14(4) - (4\frac{2}{2}+10(4)+8)\]
\[=56-53\]
\[\pi firm = $3\]
- Figure 1 here
PS of 1 firm is \(\frac{1}{2}.4.4 = 8\) and there are 100 firms Total PS = \[100.8 = $800\]
- Industry Profit \[= 100.3 = $300\]
Short run fixed cost \[= 5.100 = $500 \](5 from the non-variable part of the cost function)
Industry Profit + SFC \[= 300 + 500 = 800 \](Same as total PS)
- Now SMC - q +13
\[p = q+13\]
\[q-p-13\] and\[ Q=100(p-13)\]
Clear market S=D
\[100(p-13)=1100-SOP\]
\[100p-1300=1100-SOP\]
\[150P=2400\]
\[P=$16\]
\[q=16-13-3\]
\[Q=100.3=300\]
- Figure 2 here
So incidence is shared $1 by producer and $2 by consumers.
\[Q = 100(P-10)\]
\[300=100(P-10)\]
\[3=P-10\] \[13=P\]
- Figure 3 here
New PS =\[\frac{1}{2}3.3\]
\[ = 9/2\]
Total industry PS \[ = 100.\frac{9}{2}\]
\[ =$450\] That makes a loss in PS of \[800 - 450 = $350\]
New short and profit
\[ = 16.3 - ( \frac{3^2}{2} + 13.3 + 8)\]
\[=48-48.5\] \[= -0.50\] per firm or $-50 industry. This makes a change in profit of \[$300+$50 = $350\] decrease, same as the reduction in total PS. Only MC makes for quality decisions, the tax affects MC not FC


papers Keeling’s Keeling citation climate change Fig. publication research cited scientific {border-style citations impact px;} #ffffff;} Marx number publications years global time year based measurements CAS WoS work Bornmann concentration Scientometrics early measurement paper reference specific under-citedness "Keeling analysis atmospheric data highly important papers. reception seminal warming works Source bibliometric dealing earth’s funding px; reasons references shows slow {font-family citations. contribution contributions dioxide font-size function importance science seen (Weart Haunschild RPYS cases discovery double; field historical literature low overall presented spectroscopy study term terms "Keeling’s (Nisbet According American Chemical January Mauna Max Planck analyzer border-color border-width carbon case citing curve date diagram measure mentions paper, papers, particular phenomenon possible published scientists searched searching: solid; strong years, {font-style {font-weight (p. ./s--- Also, Charles David However, Ngram Science Society Tellus article atmosphere atmosphere. attention bold called chemical comparatively consideration cooling courier; curve/Curve" database databases determined does em; evolution fields frequently gas greenhouse high history index long new past peaks period present profile program pt;} query received research. rising risk support using years.


Weaver Olf Adams:
If I remember correctly, you already received my cloak, right?
(You have already completed this quest.)


Local otter upset at watermelon
Local student discovers art
With those exciting stories out of the way we leave you with a survey and the scores from the highschool MVP's!
Which image was the best? we want your opinion!
| Name | Team | Touchdowns |
|---|---|---|
| Chad Chad | The Wild Gophers | 8 |
| Marma Duke | Air Buds | 12 |
| Ernie Bernie | The Flying Pigs | 4 |


Chinese Cancer Diagnostics Firm Genetron Starts U.S. IPO Effort
by Donovan JonesSummary
- Genetron Holdings has filed to raise capital from U.S. public investors.
- The firm provides a wide array of cancer diagnostic services in China.
- GTH has grown quickly but that growth is moderating and the firm is producing significant operating losses and cash burn.
Quick Take
Genetron Holdings (GTH) has filed to raise gross proceeds of $100 million from a U.S. IPO, according to an F-1 registration statement.
The firm provides precision oncology diagnosis, monitoring and research services in China.
GTH has grown but that growth is decelerating and the firm is producing increasing operating losses and burning through cash.
Company & Technology
Beijing, China-based Genetron was founded in 2014 to develop precision oncology diagnosis, monitoring and research services in China, covering the full cycle of cancer care, according to Frost & Sullivan.
Management is headed by CEO and Director Sizhen Wang, who co-founded the firm and previously co-founded iTalk Global Communications, where he served as a Senior Vice President.
Genetron has developed a portfolio of cancer diagnostics and monitoring solutions, including gene panel testing services named Onco PanScan, measuring from single gene to a broad 21,000 gene paneland, and In-Vitro Diagnostic [IVD] products.
The firm’s IVD products include a digital PCR system, a proprietary Genetron 3D biochip reading instrument, and an IDH1/TERT gene assays for glioma, which were approved in 2017, by China’s National Medical Products Administration [NMPA], as well as the company’s Genetron S5, which has also obtained an approval in November 2019 by the NMPA “or its provincial counterparts for clinical use.”
Below is an overview graphic of the company’s offerings:
Source: Company registration
Additionally, Genetron has developed the HCCscreen early screening technology for liver cancer which “detects a combination of tumor-specific mutations in ctDNA and protein markers.”
Below is an overview map of the company’s direct sales coverage in China:
Source: Company registration statement
Investors in Genetron have included Highlight Capital, Vivo Capital,CICC Healthcare Investment Fund, Alexandria Venture Investments, VStar Capital, Zhongjin Kangrui Medical Industrial Fund, Shenshang Xingye Fund, New Horizon Capital, Share Capital, and Zhongyuan Union Cell & Gene Engineering. Source: Crunchbase
Customer Acquisition
The firm has a dedicated sales and marketing team of about 270 employees that covers 415 hospitals in China, as well as an established external sales network of distributors, covering Tier 3 and Tier 4 cities in China.
Sales and marketing expenses as a percentage of revenue have been uneven but trending lower, per the table below:
| Selling | Expenses vs. Revenue |
| Period | Percentage |
| Nine Mos. Ended Sept. 30, 2019 | 83.7% |
| 2018 | 81.0% |
| 2017 | 93.6% |
Source: Company registration statement
The sales & marketing efficiency rate, defined as how many dollars of additional new revenue generated by each dollar of sales & marketing spend, dropped to 0.3x in the most recent nine-month period, as shown in the table below:
| Selling | Efficiency Rate |
| Period | Multiple |
| Nine Mos. Ended Sept. 30, 2019 | 0.3 |
| 2018 | 0.7 |
Source: Company registration statement
Average Revenue per Test has been dropping, per the table below:
| Average Revenue Per | Test | |
| Period | ARPT | Variance |
| Nine Mos. Ended Sept. 30, 2019 | $1,870 | -7.4% |
| 2018 | $2,019 | -8.9% |
| 2017 | $2,218 |
Source: Company registration statement
Market & Competition
According to a 2019 market research report by Grand View Research, the global cancer diagnostics market was valued at $144.4 billion in 2018 is projected to reach $249.6 billion by 2026, growing at a CAGR of 7% between 2019 and 2026.
The main factors driving forecast market growth are rapid adoption of technology and escalating need for early diagnosis, due to an expanding healthcare market and a growing incidence of cancer.
The early diagnostics segment is projected to grow at the fastest rate of 8% during the period.
Major competitors that provide or are developing cancer diagnostics include:
- GE Healthcare (GE)
- Abbott (ABT)
- Hoffmann-La Roche (ROG)
- Siemens Healthcare (ETR:SHL)
- Becton Dickinson & Company (BDX)
- Illumina (ILMN)
- Koninklijke Philips (AMS:PHIA)
- Hologic (HOLX)
Source: Sentieo
Financial Performance
GTH’s recent financial results can be summarized as follows:
- Growing topline revenue, but at a decelerating rate
- Increasing gross profit and gross margin, also decelerating
- Growing operating losses; high but reduced negative operating margin
- Uneven cash used in operations
Below are relevant financial metrics derived from the firm’s registration statement:
| Total Revenue | ||
| Period | Total Revenue | % Variance vs. Prior |
| Nine Mos. Ended Sept. 30, 2019 | $ 30,847,000 | 38.7% |
| 2018 | $ 31,503,000 | 112.0% |
| 2017 | $ 14,857,794 | |
| Gross Profit (Loss) | ||
| Period | Gross Profit (Loss) | % Variance vs. Prior |
| Nine Mos. Ended Sept. 30, 2019 | $ 13,874,000 | 54.4% |
| 2018 | $ 12,973,000 | 228.9% |
| 2017 | $ 3,944,412 | |
| Gross Margin | ||
| Period | Gross Margin | |
| Nine Mos. Ended Sept. 30, 2019 | 44.98% | |
| 2018 | 41.18% | |
| 2017 | 26.55% | |
| Operating Profit (Loss) | ||
| Period | Operating Profit (Loss) | Operating Margin |
| Nine Mos. Ended Sept. 30, 2019 | $ (31,073,000) | -100.7% |
| 2018 | $ (32,595,000) | -103.5% |
| 2017 | $ (22,432,353) | -151.0% |
| Net Income (Loss) | ||
| Period | Net Income (Loss) | |
| Nine Mos. Ended Sept. 30, 2019 | $ (75,721,000) | |
| 2018 | $ (65,055,000) | |
| 2017 | $ (61,858,676) | |
| Cash Flow From Operations | ||
| Period | Cash Flow From Operations | |
| Nine Mos. Ended Sept. 30, 2019 | $ (18,073,000) | |
| 2018 | $ (28,123,000) | |
| 2017 | $ (19,105,882) |
Source: Company registration statement
As of September 30, 2019, the company had $754,000 in cash and $32.0 million in total liabilities. (Unaudited, interim)
Free cash flow during the twelve months ended September 30, 2019, was a negative ($24.8 million).
IPO Details
GTH has filed to raise $100 million in gross proceeds from an IPO of ADSs representing underlying ordinary shares, although the final figure will likely differ.
Per the firm’s latest filing, the firm plans to use the net proceeds from the IPO as follows:
40% to further invest in technology and product development; 30% to expand our sales and marketing efforts; and 30% to meet working capital needs and other general corporate purposes. Management’s presentation of the company roadshow is not available.
Listed underwriters of the IPO are Credit Suisse and CICC.
Commentary
GTH is attempting to obtain U.S. public market investment at a very challenging time in U.S. markets and for Chinese companies in particular.
There has been a veritable ‘deluge’ of Chinese firms seeking investment on U.S. capital markets in recent months.
Few firms have succeeded in completing an IPO transaction and most of those have performed poorly since IPO.
GTH’s financials show the firm is growing revenue and gross profit, but at a decelerating rate of growth.
Sales and marketing expenses as a percentage of revenue are trending lower but are still high.
The company is producing large losses and cash burn, so I don’t see a reasonable path to profitability any time soon.
The market opportunity for providing cancer diagnostic services in China is large and growing, with an aging population increasing demand through growing incidence of cancer.
The industry is promising and GTH has grown admirably, but the firm is producing increasing losses so I’m not sanguine about the prospects for a successful IPO.
I’ll provide a final opinion when we learn more IPO details.
Expected IPO Pricing Date: To be announced.
Gain Insight and actionable information on U.S. IPOs with IPO Edge research.
Members of IPO Edge get the latest IPO research, news, and industry analysis. Get started with a free trial!
Disclosure: I/we have no positions in any stocks mentioned, and no plans to initiate any positions within the next 72 hours. I wrote this article myself, and it expresses my own opinions. I am not receiving compensation for it (other than from Seeking Alpha). I have no business relationship with any company whose stock is mentioned in this article.


There are two classes of neuromuscular blocking drugs (NMBD) used as paralytic agents during the induction of general anesthesia–depolarizing and nondepolarizing.
Some reasons for using neuromuscular blockade in the OR:
- Paralyze vocal cords and jaw muscules to allow for endotracheal intubation
- Paralyze respiratory muscles so that ventilation can be controlled
- Paralyze the abdominal muscles intraoperatively during abdominal or laparoscopic surgery
NMBDs do not have analgesic or anesthetic effects and should always be given after the patient is sufficiency anesthetized
Due to risk for acute hyperkalemia, caution when giving succinylcholine to burn or trauma patients, and to children due to possible unrecognized muscular dystrophy.
Sugammadex is a newer drug that can be used for reversal of nondepolarizing NMBDs such as rocuronium. It basically encapsulates and inactivates the NMBD (very different from neostigmine) and has no effect at the neuromuscular junction3.


{% extends 'templates/base.html' %} {% set title = 'Performance comparison of ClickHouse on various hardware' %} {% set extra_js = [ 'queries.js?' + rev_short, 'results.js?' + rev_short, '../benchmark.js?' + rev_short] %} {% set url = 'https://clickhouse.tech/benchmark/hardware/' %} {% set no_footer = True %} {% block content %}
Submit your own results: https://clickhouse.tech/docs/en/operations/performance-test/
Results for Lenovo B580 Laptop are from Ragıp Ünal. 16GB RAM 1600 GHz, 240GB SSD, Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz (2 Core / 4 HT)
Results for Time4vps.eu are from Ragıp Ünal.
Results for Dell PowerEdge R640, R641 (in Hetzner) are from Dmirty Titov.
Results for Dell PowerEdge R730 are from Amos Bird.
Results for Dell R530 are from Yuriy Zolkin.
Results for Xeon 2176G are from Sergey Golod.
Results for Azure DS3v2 are from Boris Granveaud.
Results for AWS are from Wolf Kreuzerkrieg.
Results for Huawei Taishan are from Peng Gao in sina.com.
Results for Selectel and AMD EPYC 7402P are from Andrey Dudin.
Results for ProLiant are from Denis Ustinov.
Results for AMD EPYC 7502P 128GiB are from Kostiantyn Velychkovskyi.
Results for AMD EPYC 7502P 512GiB are from Sergey Zakharov.
Results for Pinebook Pro are from Aleksey R. @kITerE.
Results for AMD Ryzen are from Alexey Milovidov. Firefox was running in background.
Results for Azure E32s are from Piotr Maśko.
Results for MacBook Pro are from Denis Glazachev. MacOS Catalina Version 10.15.4 (19E266). For "drop caches", the "Free Up RAM" in CleanMyMac is used.
Results for AMD EPYC 7702 are from Peng Gao in sina.com.
Results for Intel NUC are from Alexander Zaitsev, Altinity.
Xeon Gold 6230 server is using 4 x SAMSUNG datacenter class SSD in RAID-10.
Results for Yandex Managed ClickHouse for "cold cache" are biased and should not be compared, because cache was not flushed for every next query.
Results for AWS Lightsail is from Vamsi Krishna B.
Results for Dell XPS laptop and Google Pixel phone is from Alexander Kuzmenkov.
Results for Android phones for "cold cache" are done without cache flushing, so they are not "cold" and cannot be compared.


Web development:HTML ,CSS ,Javascript ,Reactjs ,TypeScript ,Redux, Node ,Express
Database:MongoDB, Mongoose
Languages:C++, Java, Python
Web Hosting:Netlify
Version Control:Git, Github
Here are some of my projects , have a look at them
ProjectsI also review new gadgets and products and write technical blogs about those.
Blogs


You can use Docpad to create a static website. Static sites can be hosted on cloud storage services such Amazon S3. The steps listed below are for Linux, but this tool works on Windows and Mac as well.
Create a static website or blog using Docpad. The code snippets below show how to setup, view and edit the files. Since DocPad is based on Node.js, we start by installing that.
sudo apt-get update && sudo apt-get install curl build-essential openssl libssl-dev git python curl https://raw.github.com/creationix/nvm/v0.3.0/install.sh | sh #Install Node Version Manager source .nvm/nvm.sh #Source the file nvm install v0.10.26 #Install the latest version of NodeJS nvm alias default 0.10 nvm use 0.10
Here is a raw version of the script above.
Install docpad and plugins for eco, livereload, markdown, coffeescript
npm install -g npm; npm install -g<EMAIL_ADDRESS>npm install grunt --save-dev docpad install eco #template engine docpad install livereload #automatic browser refresh docpad install marked #markdown support docpad install coffeescript #javascript preprocessor docpad install gist #embed code snippets from GitHub Gist docpad run #start the process that monitors file changes and refreshes the browser
Here is a raw version of the script above.
The Beginner Guide has a good explanation of why we need the plugins. Here is a short description of what they do:
The next step is to create a default layout for your website/blog. The layout this website uses is default.html.eco. Place this file under your-website-folder/src/layouts/.
Once you define the layout, you can create individual pages/posts. The pages/posts can be written in markdown and are placed under yout-website-directory/src/documents/ . An example is the index.html.md. This file extension tells docpad that this is a markdown file that needs to be compiled into an html file. The html files are placed under your-website-directory/out/.
A couple of things to note are the variables such as 'title', 'author', 'preview' etc.in index.html.md. I use these in default.html.eco as <%= @document.title %> etc. A big advantage here is that if I choose to change the layout of the file, I need to update only one file (default.html.eco) and all the pages reflect the change.
If your view the source of the HTML files that are generated under the your-website-directory/out folder, you will see the JavaScript for LiveReload. This is fine for development when you want the browser automatically refresh to see the changes. To skip this in produtction when you deploy, you can run the docpad generate --env static
command.
You can also minify the HTML by removing comments and whitespace. You can do this using html-minifier. You can automate this task using a task runner such as Grunt. See this post to install and configure Grunt.
To deploy a static site generated by DocPad to Amazon S3, see this post. I prefer to save all the files online under version control. I use GitHub for this. I also hooked Travis-CI to it so that any changes to the files are also deployed to Amazon S3. This post shows you how I did that.
External Links


Enter your index number in order to request access to the system. Only one account can be registered using an Index number.
Important Notice : If you use someone else's index number, he/she may not be able to gain access to the system. Use your own index number.
check_circle Available
swap_horiz Checking
warning Already claimed
error Not Found
Seems to be that someone else has already claimed this index number. You can report this incident to the administrators and claim this index number. Drop a message to Team whileLOOP Facebook page


26-June-2021 - 6.36.0
The PMD team is pleased to announce PMD 6.36.0.
This is a minor release.
New and noteworthy
Improved Incremental Analysis
Incremental Analysis has long helped our users obtain faster analysis results, however, its implementation tended to be too cautious in detecting changes to the runtime and type resolution classpaths, producing more cache invalidations than necessary. We have now improved the heuristics to remove several bogus invalidations, and slightly sped up the cache usage along the way.
PMD will now ignore:
- Non class files in classpath and jar / zip files being referenced.
- Changes to the order of file entries within a jar / zip
- Changes to file metadata within jar / zip (ie: creation and modification time, significant in multi-module / composite build projects where lateral artifacts are frequently recreated)
New rules
- The new Apex rule
AvoidDebugStatements
finds usages ofSystem.debug
calls. Debug statements contribute to longer transactions and consume Apex CPU time even when debug logs are not being captured. You can try out this rule like so:
<rule ref="category/apex/performance.xml/AvoidDebugStatements" />
- The new Apex rule
InaccessibleAuraEnabledGetter
checks that anAuraEnabled
getter is public or global. This is necessary if it is referenced in Lightning components. You can try out this rule like so:
<rule ref="category/apex/errorprone.xml/InaccessibleAuraEnabledGetter" />
Renamed rules
- The Java rule
BadComparison
has been renamed toComparisonWithNaN
to better reflect what the rule actually detects. It now considers usages ofDouble.NaN
orFloat.NaN
in more cases and fixes false negatives.
Fixed Issues
- apex
- core
- java-bestpractices
- #957: [java] GuardLogStatement: False positive with compile-time constant arguments
- #3076: [java] UnusedAssignment reports unused variable when used in increment expr
- #3114: [java] UnusedAssignment false positive when reporting unused variables
- #3315: [java] LiteralsFirstInComparisons false positive with two constants
- #3341: [java] JUnitTestsShouldIncludeAssert should support Junit 5
- #3340: [java] NullPointerException applying rule GuardLogStatement
- java-codestyle
- #3317: [java] Update UnnecessaryImport to recognize usage of imported types in javadoc’s
@exception
tag
- #3317: [java] Update UnnecessaryImport to recognize usage of imported types in javadoc’s
- java-errorprone
- #2895: [java] Improve BadComparison and rename to ComparisonWithNaN
- #3284: [java] InvalidLogMessageFormat may examine the value of a different but identically named String variable
- #3304: [java] NPE in MoreThanOneLoggerRule on a java 16 record
- #3305: [java] ConstructorCallsOverridableMethodRule IndexOutOfBoundsException on a java16 record
- #3343: [java] CloneMethodMustImplementCloneable: FN with local classes
- java-performance
API Changes
No changes.
External Contributions
- #3276: [apex] Update ApexCRUDViolation and OperationWithLimitsInLoop docs - Jonathan Wiesel
- #3306: [java] More than one logger rule test null pointer exception - Arnaud Jeansen
- #3317: [java] Update UnnecessaryImport to recognize usage of imported types in javadoc’s
@exception
tag - Piotrek Żygieło - #3319: [apex] New AvoidDebugStatements rule to mitigate performance impact - Jonathan Wiesel
- #3320: [java] Fix incorrect increment for “else if” branch in Cognitive Complexity docs - Denis Borovikov
- #3322: [apex] added rule to detect inaccessible AuraEnabled getters - Philippe Ozil
- #3323: [core] Adds fullDescription and tags in SARIF report - Clint Chester
- #3339: [java] JUnitTestsShouldIncludeAssert Tweak assertion definition to avoid false positive with modern JUnit5 - Arnaud Jeansen
Stats
- 81 commits
- 36 closed tickets & PRs
- Days since last release: 28


| | |
- AddBiomToDb(db, studyid, tablename, seqlength=False)
- load a deblurred biom table into the database
input:
db
studyid - experiment for the biom table (studyid or other int)
tablename - the experiment biom table file name (needs to be deblurred!)
seqlength - False to use the actual lengths, >0 to clip all sequences to that length
output:
samplesadded - dict keyed with the samplenames of samples added to the database (i.e. >MINEXPREADS reads) value is the sampleid
- AddFileToDB(db, expid, filename)
- load a deblurred sample file into the database
File needs to be .ref.fa format
(fasta, XXX;size=SIZE;
Sequence (one line))
and one line per sequence (after the > line - not split)
input:
db
expid - from where the sample is taken - integer
sampleid - the name of the sample
filename - file containing the .ref.fa of the sample
- AddMap(db, experimentname, mapfilename, studyid=False, deleteifpresent=False, samplesadded=False)
- Add a tsv mapping file to the database db mapping file and experiment tables
input:
db - the database
experimentname - name of the experiment (for the experiment table)
mapfilename - name of the mapping file to add
studyid - the id of the study or false to get from mapping file
- AddOntologySample(ohash, chash, sampleid, ontid)
- add sample sampleid to ontid and all it's parents
input:
ohash - the ontology hash (from LoadOntologyOBO)
chash - the current hash structure to fill with sampleids
sampleid - the sampleid to add
ontid - the ontologyid (and all its parents) to fill with the sample id
output:
chash - the new hash
- AddSample(db, sampleid, seqid, count)
- add count reads to position sampleid,seqid
important: if it already exists, it is overwritten!!!!
input:
db
sampleid - from the Samples table
seqid - int (from the Sequences table)
count - the fraction it was observed
- CreateReadInds(db)
- create the read indexes (after db is ready - to make insertions faster)
- CreateTables(dbfilename, areyousure='no')
- Create the database tables
NOTE: will delete old database!!!!
input:
dbfilename - name of the database file to create
areyousure - must be 'yes' in order to create the database
output:
db - the database structure
- GetAllSampleInfo(db, fields)
- get the values of fields for every sample in database
input:
db - dbstruct
fields : list of strings
the list of fields to get the values for
output:
valsdict : dict of list of ints, keyed by concatanation of field values
the positions for each value (concatanation of fields)
- GetDBSource(db, seqs)
- Get the biggest sets covering bacteria from the list seqs from the database
input:
db - the database
seqs - a list of sequences to test
output:
dat - an array (sequeces * db samples) of frequency of sequence in sample
- GetSampleMapField(db, sampleid)
- Get the value of the mapping file field for the given sample
input:
db
sampleid - the sampleid to look for
field - field name (i.e. "ENV_MATTER")
output:
val - the value of the field
- GetSampleStudy(db, samp)
- Get the study id and name for sampleID pos
input:
db
samp - the sampleID
output:
sid - study id
sname - studyname
- GetSamplesFromValues(db, fvdict)
- Get a list of samples that have values in their fields matching fv dict (all of the fields, any of the values in each field)
input:
db - dbstruct
fvdict - dict
keyd by field, value is a list of possible values for the field
output:
oksamps : list of int
positions (in samples vector) that for all fields have one of the values matching. sampleids are the int+1
- GetSeqID(db, osequence, insert=False)
- Get sequence id from database
input:
db - from dbconnect()
osequence - the sequence to look for
insert - True to insert sequence to database if not found, 0 to return 0 instead
- GetSeqIDVec(db, seqid)
- Get the read vector from the database for a given sequence id
input:
seqid - the sequence id to look for in the reads database
output:
pv - the row of reads for the seqid in the database (column is defined by SampleID-1)
- GetSeqInfo(db, seq)
- Get info from the database about the sequence seq
input:
db - from dbconnect()
seq - the sequence to search for (min 89 bp)
output:
totalappear - total number of samples in which it appears
numstudies - number of different studies where it appears
allstudies - ids of all the studies where it appears
studysamples - a dict (by studyid) of samples in the studies
totdbsamples - the total number of samples in the database
- GetSeqInfoSummary(bactdb, seq, field='HOST_TAXID', sortednodes=[])
- GetSeqListInfo(db, seqs, info='samples')
- Get information about a sequence list.
input:
db
seqs - a list of sequences (ACGT)
info - the info type to collect:
'samples' - the samples for each sequence
'studies' - the studies where each seq appears
'types' - env_matter+host_taxid
output:
res - a dict with info type as keys, each containing an array (1 entry per sequence) with the freq of the seq in the entry
- GetSeqVec(db, seq)
- GetStatsUse(db, pv, csamp, usepos, field, value)
- # Get the statistics for a given division using part of the samples
# input:
# pv - the total reads vector (from GetGGIDVec)
# csamp - an array of sample positions whereto test enrichment
# usepos - the positions to use - array of size pv (positions with 0 are ignored in the calculation)
# field,value - the field and value name to be stored
# output:
# pval - the p-value to egt such enrichment (binomial)
# franenrich - the fold enrichment compared to other samples
# nzincval - number of elements in the catergory
# fraccval - fraction of present in the category
- GetStudyIDFromMap(mapfilename)
- get the study_id value from the mapping file if it exists
otherwise, return False
- GetSuidFromSampleID(db, sampleid, expid, addnew=False)
- get the suid (sample unique identifier) from the Samples table in the database
if it does not exist, create it
input:
sampleid - the name of the sample (from mapping file)
expid - the studyid from where the sample originated can also do without expid(=0)
addnew - True to add the new sample to the table if not found, false to not add and return False
output:
suid - the sample id or False if not added
isnew - True if a new sample, False if already existed
- InitOntologyGraph(db, pv, field, ontohashname)
- just init the ontology graph for the field
keep it in a dictionary of field names in self.OntoGraph[fieldname]
including the graph layout for fast drawing
- LoadOntologies(db)
- load the ontologies
- LoadOntologyOBO(db, filename, ontologyname)
- load an ontology and store it in an ontology hash
each ontology is a hash of ids containing lists of ids of parents
and an additional hash of name to ids (including synonyms????)
input:
filename - of the .obo ontology
ontologyname - for the hash of ontologies
- PlotOntologyGraph(db, seq, field, tofig=False, toax=False)
- Plot the ontology graph for sequence seq using ontology field field
must init the graphs first using InitOntologyGraph()
tofig - the figure to plot to or False to plot new fig
- SamplesInStudy(db, studyid)
- Get the list of samples in a study
input:
db
studyid - the id of the study to examine
output:
samples - a list of sampleids in the study
- StudyNameFromID(db, studyid)
- dbconnect(db, dbname='db/SRBactDB.db')
- connect to the database
input:
db - from dbstart()
dbname - the name of the database to connect to
- dbstart(dbname='db/SRBactDB.db')
- start the database structure and connect to database
input:
dbname : string
the name of the database to connect to
output:
db : dbstruct
the database variable
- getontonames(db)
- returns a list of all the ontology fields to load and their ontology types
input:
db : dbstruct
output:
ontonames : list of strings
the names of all fields to load for ontology plots
ontotypes : list of strings
the ontology name for each field
- initdb(dbname='db/SRBactDB.db')
- #def initdb(dbname="/Users/amnon/Python/SRBactDB/SRBactDB.db"):
- initontologies(db)
- load and preprocess the ontologies for the database
input:
db : dbstruct
the database (from dbstart())
output:
db : dbstruct
after loading and initializing ontologies
|


3 May 2023
matthew michalska-smith
Reduced cycle amplitude and disease prevalence in networks with longer chains
Interconnected parts of the network should have similar dynamics
Preponderance of cyclical and chaotic dynamics
What does this look like in a single simulation?
| Metric | Description | Potential Significance |
| connectance | the proportion of possible links that are realized | more connections allows for faster spread |
| eigenvalues | the eigenvalues with the largest real parts, as well as those of the network's laplacian | related to dynamical stability and reactivity |
| algebraic connectivity | a measure of the overall connectivity of the network (also called the Fielder value) | related to robustness and synchronizability |
| clustering | the percentage of connected, three-node subgraphs that form triangles | more clustered networks spread quickly within clusters, but this often limits overall spread |
| degree assortativity | the correlation between degree (number of connections) between connected nodes | relates to how widely a pathogen can spread |
| degree heterogeneity | a measure of the variance in degree between nodes | related to specific node risk |
| k-core decomposition | the k-core value of a node is found by recursively eliminating all nodes with degree k or lower, we note the largest value for the network as well as the number of nodes in that maximal k-core | relevant for early infection dynamics |
| k-truss decomposition | the k-truss value of a edge is found by recursively eliminating all edges involved in k or fewer cycles of a given length (we consider cycles of length 3); we note the largest value in the network, as well as the number of nodes sharing edges in that maximal k-truss | can be used to identify a high-risk core of nodes |
| 3-node subgraph counts | we count the number of each of the four possible undirected 3-node subgraphs in each network, | different meso-scale structures have different dynamical consequences; maybe easier to measure empirically |
| modularity | a measure of the tendency for nodes in the network to form groups wherein there are more connections between members of the same group and fewer connections to members of other groups | fast spread within modules, but indicates potential firewall links between modules |
| inverse participation ratio | quantifies uniformity in the distribution of nodes across communities | related to disease localization and predictability of epidemic thresholds |
| centralization measures | heuristics to calculate the cumulative importance of nodes within a network with respect to a particular flow regime | highly centralized networks might be expected to have greater disease spread (holds true in some cases for nodes) |
| mean path length | the average shortest path length between each pair of nodes in the network | smaller path lengths means fewer transmissions needed to get from any given node to another |
| diameter | the longest shortest path between each pair of nodes in the network | similar to mean path length |


Treat yourself to an indoor plants subscription box or gift one to a friend. Plans start at just $42 a month, including shipping.
Helping our Community!
We have the perfect gift for that planty person in your life, or even better, yourself. Keychains, pins, stickers, greeting cards, and a lot more.


All tables support sorting by one column, hence the first column is "multi-column sorting". Click the "Columns" button to display more features in the comparison table.
This list of JS table libraries and their features was built as a demo of reactive-table, a table package designed for Meteor. Please report any accuracies or omissions in the GitHub issues, and feel free to report bugs or suggest features as well.


K
24*7
Konnect
24*7
Toggle navigation
{{ reservation}}
You have 4 messages
Support Team
5 mins
Why not buy a new awesome theme?
See All Messages
{{checkin}}
You have 10 notifications
5 new members joined today
View all
{{checkout}}
You have 9 tasks
Design some buttons
20%
20% Complete
View all tasks
Alexander Pierce
Alexander Pierce - Web Developer
Member since Nov. 2012
Followers
Sales
Friends
Profile
Sign out


FoodFast
_
Home
Orders
Signout
My Account Information
Full Name
E-mail
Phone Number
Home Address
Edit Profile


Phase 0, Week 6
Stereotype Threat and DBC
February 1, 2015
Stereotype threat is defined as the anxiety that one feels when in a social situation where one feels they may confirm a negative stereotype about their social group. Most commonly, this applies to race and sex, and can have very real effects, such as lower test scores and other performance gaps. The effect is most pronounced when attention is drawn to the group or stereotype. I have never personally had the displeasure of experiencing racial or sexual stereotype threat, but I have felt social anxiety while playing sports as a young boy. I considered myself to be one of the nerdier kids, and the stereotype is nerds are no good at sports. Consequently, when I played sports I tried to put myself in a position of as little importance as possible on the team so I wouldn't blow it for everyone. I know its rather minor in the grand scheme of things, but in some way it's relatable.
Now that I am more aware of this sad phenomenon, I can better prepare myself to help others cope with it. If I see a fellow student or co-worker I feel is falling victim to stereotype threat, I will do my best to let them know what a welcoming environment they are in and that nobody is viewing them through a negative stereotypical lens. It is probably a very touchy subject, so I would not try to be overt about it unless confided in. I would, however, strive to make everyone in the group feel welcomed and appreciated. If someone has complained to me of specific instances of feeling stereotype threat, I would make an effort to help prevent such situations from arising by talking to the offending party or taking measures to avoid such situations.


bath
bed
kitchen
living
study
FREE AND FAST SHIPPING. CUSTOM FURNISHINGS IN JUST 2 WEEKS
FLAT ROMAN SHADE
in Interlocken - Pumice
Starting at $150.00


%%%name%%% %%%edition%%%
%%%genre%%%, © %%%author%%% %%%year%%%
%%%=templates/headers.html%%%
%%%=templates/headerbar.html%%%%%%description%%%
(Want to share something? You can find me on Twitter!)
Install / Add to home View game sources ...or play it online below!


Zend Framework
LICENSE
This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to<EMAIL_ADDRESS>so we can send you a copy immediately.
object
$_current= ''
Holds a reference to the timeserver that is currently being used
array
$_timeservers= 'array'
Contains array of timeserver objects
array
Details__construct(
string|array $target
=
null, string $alias
=
null
)
:
object
Zend_TimeSync constructor
| Name | Type | Description |
|---|---|---|
| $target | string|array |
|
| $alias | string |
|
| Type | Description |
|---|---|
| object |
_addServer(
string|array $target, string $alias
)
:
void
Adds a timeserver object to the timeserver list
| Name | Type | Description |
|---|---|---|
| $target | string|array |
|
| $alias | string |
|
addServer(
string|array $target, string $alias
=
null
)
:
void
Add a timeserver or multiple timeservers
Server should be a single string representation of a timeserver, or a structured array listing multiple timeservers.
If you provide an array of timeservers in the $target variable, $alias will be ignored. you can enter these as the array key in the provided array, which should be structured as follows:
$example = array(
'server_a' => 'ntp://<IP_ADDRESS>',
'server_b' => 'ntp://<IP_ADDRESS>:123',
'server_c' => 'ntp://[2000:364:234::2.5]',
'server_d' => 'ntp://[2000:364:234::2.5]:123'
);
If no port number has been suplied, the default matching port number will be used.
Supported protocols are: - ntp - sntp
| Name | Type | Description |
|---|---|---|
| $target | string|array |
|
| $alias | string |
|
| Exception | Description |
|---|---|
| \Zend_TimeSync_Exception |
getDate(
\Zend_Locale $locale
=
null
)
:
object
Query the timeserver list using the fallback mechanism
If there are multiple servers listed, this method will act as a facade and will try to return the date from the first server that returns a valid result.
| Name | Type | Description |
|---|---|---|
| $locale | \Zend_Locale |
|
| Type | Description |
|---|---|
| object |
| Exception | Description |
|---|---|
| \Zend_TimeSync_Exception |
getInfo(
)
:
array
Returns information sent/returned from the current timeserver
| Type | Description |
|---|---|
| array |
getIterator(
)
:
\ArrayObject
getIterator() - return an iteratable object for use in foreach and the like, this completes the IteratorAggregate interface
| Type | Description |
|---|---|
| \ArrayObject |
getOptions(
string $key
=
null
)
:
mixed
Returns the value to the option
| Name | Type | Description |
|---|---|---|
| $key | string |
|
| Type | Description |
|---|---|
| mixed |
| Exception | Description |
|---|---|
| \Zend_TimeSync_Exception |
getServer(
string|integer $alias
=
null
)
:
object
Return a specified timeserver by alias If no alias is given it will return the current timeserver
| Name | Type | Description |
|---|---|---|
| $alias | string|integer |
|
| Type | Description |
|---|---|
| object |
| Exception | Description |
|---|---|
| \Zend_TimeSync_Exception |
setOptions(
array $options
)
:
void
Sets the value for the given options
This will replace any currently defined options.
| Name | Type | Description |
|---|---|---|
| $options | array |
|
setServer(
string|integer $alias
)
:
void
Marks a nameserver as current
| Name | Type | Description |
|---|---|---|
| $alias | string|integer |
|
| Exception | Description |
|---|---|
| \Zend_TimeSync_Exception |


Embedding {{ WAZIMAP.name }} profile charts
You can embed any of the charts from {{ WAZIMAP.name }}’s profile pages onto your own website. Just like our profile pages, embedded charts are responsive, so they’ll work at desktop widths as well as on mobile devices. To embed a chart, you just need to copy and paste a couple lines of code into your HTML or content-management system. Here’s what you need to know:
First, visit a profile page and find the chart that you’d like to embed, then click the “Embed” link underneath. That will open a panel where you can copy two lines of code. They’ll look something like this:
<iframe id="cr-embed-16000US5367000-demographics-age-distribution_by_decade-total" class="census-reporter-embed" src="{{ WAZIMAP.url }}/static/embed/01/iframe.html?geoID=16000US5367000&chartDataID=demographics-age-distribution_by_decade-total&chartType=histogram&chartHeight=200&chartQualifier=&chartTitle=Population+by+age+range&initialSort=&statType=scaled-percentage" frameborder="0" width="100%" height="300" style="margin: 1em; max-width: 720px;"></iframe>
<script src="{{ WAZIMAP.url }}/static/embed/01/js/embed.chart.make.js"></script>
The first line is the iframe container where the chart will be drawn onto your page. It contains all the information necessary to build the right kind of chart out of the right piece of data. The second line is a small piece of javascript that triggers that chart to be drawn, and then allows it to communicate with your page and respond to changes in size.
The example embed code above will make the column chart you see below, complete with hover information and contextual statistics. If you resize this page, the embedded chart will change dimensions (and convert to a bar chart if the page gets narrow enough).
{{ WAZIMAP.name }}’s embedded charts work on Firefox, Safari and Chrome, and on IE8 and above.
If you want to inset your chart into a block of text, you can choose left or right alignment before copying the embed code. This donut chart, for example, is set to align right.
By default, embedded charts will know how wide they ought to be, although you can always edit the max-width
number in your embed code to manually make adjustments.
The “About” panel for each embedded chart will give your readers further detail about the data underneath the chart. It also provides a link to the full profile page for that geography.
As you can see, you can embed multiple charts onto the same page. If you do, you only need to include the chart-making script on your page once, below all of the iframes. That’s this line of code:
<script src="{{ WAZIMAP.url }}/static/embed/01/js/embed.chart.make.js">
Happy charting!


View Townships of Myanmar
Literacy rate at a township level
What type of energy do people in townships use to light their homes?
Average household size per township with a summary of different household sizes
How prevalent is bamboo compared to other types of housing?
What type of communication do individuals in townships have access to?
What types of transportation are available?
Regional Data on Poverty and economic development
Data at our most granular level


You can also set to shuffle the list before playing them.
See the source to understand how to define the playlist and how to invoke the player.
video ID:
Title:


{% extends 'food/base.html' %} {% load static %} {% block content %}
You can pick up your food from {{ restaurant.name }} at {{ food.location }}. To contact {{ food.provider }}, call {{ restaurant.phone }} or email {{ restaurant.email }}


I am senior computer science student at King Abdulaziz Unversity . I love to code and share my experiance . Volunteering is what I am passinate about.
I am looking for challenging and technical position in developing applications, developing systems areas, and in research area.