Shaolin
Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)
Total Submission(s): 1945 Accepted Submission(s): 836
Problem Description
Shaolin temple is very famous for its Kongfu monks.A lot of young men go to Shaolin temple every year, trying to be a monk there. The master of Shaolin evaluates a young man mainly by his talent on understanding the Buddism scripture,
but fighting skill is also taken into account.
When a young man passes all the tests and is declared a new monk of Shaolin, there will be a fight , as a part of the welcome party. Every monk has an unique id and a unique fighting grade, which are all integers. The new monk must fight with a old monk whose
fighting grade is closest to his fighting grade. If there are two old monks satisfying that condition, the new monk will take the one whose fighting grade is less than his.
The master is the first monk in Shaolin, his id is 1，and his fighting grade is 1,000,000,000.He just lost the fighting records. But he still remembers who joined Shaolin earlier, who joined later. Please recover the fighting records for him.
but fighting skill is also taken into account.
When a young man passes all the tests and is declared a new monk of Shaolin, there will be a fight , as a part of the welcome party. Every monk has an unique id and a unique fighting grade, which are all integers. The new monk must fight with a old monk whose
fighting grade is closest to his fighting grade. If there are two old monks satisfying that condition, the new monk will take the one whose fighting grade is less than his.
The master is the first monk in Shaolin, his id is 1，and his fighting grade is 1,000,000,000.He just lost the fighting records. But he still remembers who joined Shaolin earlier, who joined later. Please recover the fighting records for him.
Input
There are several test cases.
In each test case:
The first line is a integer n (0 <n <=100,000),meaning the number of monks who joined Shaolin after the master did.(The master is not included).Then n lines follow. Each line has two integer k and g, meaning a monk’s id and his fighting grade.( 0<= k ,g<=5,000,000)
The monks are listed by ascending order of jointing time.In other words, monks who joined Shaolin earlier come first.
The input ends with n = 0.
In each test case:
The first line is a integer n (0 <n <=100,000),meaning the number of monks who joined Shaolin after the master did.(The master is not included).Then n lines follow. Each line has two integer k and g, meaning a monk’s id and his fighting grade.( 0<= k ,g<=5,000,000)
The monks are listed by ascending order of jointing time.In other words, monks who joined Shaolin earlier come first.
The input ends with n = 0.
Output
A fight can be described as two ids of the monks who make that fight. For each test case, output all fights by the ascending order of happening time. Each fight in a line. For each fight, print the new monk’s id first ,then the old
monk’s id.
monk’s id.
Sample Input
3 2 1 3 3 4 2 0
Sample Output
2 1 3 2 4 2
这是一道平衡树的模板题，直接贴代码就行
#include<iostream> #include<cmath> #include<cstring> #include<ctime> #include<cstdlib> #include<cstdio> using namespace std; struct Node { Node* son[2]; int rank; int size; int key; bool operator<(const Node &a)const { return rank<a.rank; //重载小于好，用于维护堆的性质 } int cmp(int x)const { if(x==key) return -1; //比较函数，用于确定寻找的值的位置，0表示左儿子，1表示右儿子，-1代表当前节点 return x<key?0:1; } void maintain()//这里仅仅需要维护size { size = 1 + son[0]->size + son[1]->size; } }; struct Treap { Node * root; Node *null = new Node();//定义空结点，可以有效避免NULL带来的问题 //初始化Treap void initial() { srand(time(NULL)); root = null; } //旋转操作，d=0时代表左旋，d=1时代表右旋 void rotate(Node* &o,int d) { Node* k = o->son[d^1]; o->son[d^1] = k -> son[d]; k->son[d] = o; o->maintain();//注意，必须先维护o再维护k，因为o是子节点，不优先维护，会导致父节点出错 k->maintain(); o = k; } void ins(Node* &o,int x) { if(o==null) { o = new Node(); o->son[0] = o->son[1] = null; o->rank = rand(); o->key = x; o->size = 1; } else { int d = o->cmp(x); ins(o->son[d],x); o->maintain(); if(o < o->son[d]) rotate(o,d^1);//当位于左儿子时，需要进行的是右旋，当位于右儿子时应当进行左旋，因此通项为rotate(o,d^1) } } void del(Node* &o,int x) { int d = o->cmp(x); if(d==-1)//已经找到待删除节点，将会有两种情况 { if(o->son[0] == null) o = o->son[1];//左儿子为空，直接连接父节点和右儿子 else if(o->son[1] == null) o= o->son[0];//右儿子为空，同上 else { d = o->son[0] < o->son[1] ? 0:1;//在子节点中找到一个rank大的节点，将其旋转到当前节点，那么当前节点应当位于相反的子节点 rotate(o,d); del(o->son[d],x); } } else del(o->son[d],x); if(o!=null) o->maintain();//删除节点后，需要对size进行维护。需要注意的是，如果节点为空时，就不需要维护了 } int kth(Node* o,int k)//寻找第k大数 { if(o == null || k<=0 || k>o->size) return -1;//k过大或者过小都不能找到，Treap中没有节点也无需找 int s = (o->son[1] == null?0:o->son[1]->size);//获得右儿子的size if(k == s+1) return o->key;//当k为 s + 1时，说明当前节点就是答案 else if(k<=s) return kth(o->son[1],k);//当k<s时，说明第k大数在右子树，k值无需更改 else return kth(o->son[0],k-s-1);//当k>s+1时，第k大数在左子树，需要减去右子树的值和节点本身 } int find(Node* o,int k)//返回该数是第几大 { if(o == null) return -1; int d = o->cmp(k); if(d == -1) return 1 + o->son[1]->size; else if(d == 1) return find(o->son[d],k); else { int tmp = find(o->son[d],k); if(tmp == -1) return -1; else return tmp + 1 + o->son[1]->size; } } } treap; int id[5000005]; int main() { int n; while(scanf("%d",&n)&&n) { treap.initial(); int x,y; scanf("%d%d",&x,&y); treap.ins(treap.root,y); id[y] = x; printf("%d %d\n",x,1); for(int i =2;i<=n;i++) { scanf("%d%d",&x,&y); id[y] = x; treap.ins(treap.root,y); int t = treap.find(treap.root,y); int ans1,ans2,ans; ans1 = treap.kth(treap.root,t-1); ans2 = treap.kth(treap.root,t+1); if(ans1 != -1) { if(ans2==-1) ans = ans1; else if(ans1 - y >= y-ans2) ans = ans2; else ans = ans1; } else ans =ans2; printf("%d %d\n",x,id[ans]); } } return 0; }
版权声明：本文为博主原创文章，未经博主允许不得转载。
参考：http://blog.csdn.net/noip_2009/article/details/47259951
(adsbygoogle = window.adsbygoogle || []).push({});
本来你用的就会盗
把三嫂当成网名了
把三嫂当成网名了
把三嫂当成网名了
把三嫂当成网名了
把三嫂当成网名了
把三嫂当成网名了
把三嫂当成网名了
把三嫂当成网名了


npm-outdated
Check for outdated packagesTable of contents
Synopsis
npm outdated [[<@scope>/]<pkg> ...]
Description
This command will check the registry to see if any (or, specific) installed packages are currently outdated.
By default, only the direct dependencies of the root project are shown.
Use --all
to find all outdated meta-dependencies as well.
In the output:
wanted
is the maximum version of the package that satisfies the semver range specified inpackage.json
. If there’s no available semver range (i.e. you’re runningnpm outdated --global
, or the package isn’t included inpackage.json
), thenwanted
shows the currently-installed version.latest
is the version of the package tagged as latest in the registry. Runningnpm publish
with no special configuration will publish the package with a dist-tag oflatest
. This may or may not be the maximum version of the package, or the most-recently published version of the package, depending on how the package’s developer manages the latest dist-tag.location
is where in the physical tree the package is located.depended by
shows which package depends on the displayed dependencypackage type
(when using--long
/-l
) tells you whether this package is adependency
or a dev/peer/optional dependency. Packages not included inpackage.json
are always markeddependencies
.homepage
(when using--long
/-l
) is thehomepage
value contained in the package’s packument- Red means there’s a newer version matching your semver requirements, so you should update now.
- Yellow indicates that there’s a newer version above your semver requirements (usually new major, or new 0.x minor) so proceed with caution.
An example
$ npm outdated
Package Current Wanted Latest Location Depended by
glob 5.0.15 5.0.15 6.0.1 node_modules/glob dependent-package-name
nothingness 0.0.3 git git node_modules/nothingness dependent-package-name
npm 3.5.1 3.5.2 3.5.1 node_modules/npm dependent-package-name
local-dev 0.0.3 linked linked local-dev dependent-package-name
once 1.3.2 1.3.3 1.3.3 node_modules/once dependent-package-name
With these dependencies
:
{
"glob": "^5.0.15",
"nothingness": "github:othiym23/nothingness#master",
"npm": "^3.5.1",
"once": "^1.3.1"
}
A few things to note:
glob
requires^5
, which prevents npm from installingglob@6
, which is outside the semver range.- Git dependencies will always be reinstalled, because of how they’re
specified. The installed committish might satisfy the dependency
specifier (if it’s something immutable, like a commit SHA), or it might
not, so
npm outdated
andnpm update
have to fetch Git repos to check. This is why currently doing a reinstall of a Git dependency always forces a new clone and install<EMAIL_ADDRESS>is marked as “wanted”, but “latest”<EMAIL_ADDRESS>because npm uses dist-tags to manage itslatest
andnext
release channels.npm update
will install the newest version, butnpm install npm
(with no semver range) will install whatever’s tagged aslatest
.once
is just plain out of date. Reinstallingnode_modules
from scratch or runningnpm update
will bring it up to spec.
Configuration
json
- Default: false
- Type: Boolean
Show information in JSON format.
long
- Default: false
- Type: Boolean
Show extended information.
parseable
- Default: false
- Type: Boolean
Show parseable output instead of tree view.
global
- Default: false
- Type: Boolean
Check packages in the global install prefix instead of in the current project.
all
- Default: false
- Type: Boolean
Display all outdated dependencies on the tree.


Grid Node.
More...
#include <Node.h>
Grid Node.
Definition at line 25 of file Node.h.
◆ Node() [1/3]
Default constructor.
Definition at line 18 of file Node.cpp.
◆ Node() [2/3]
| Node::Node |
( |
const size_t |
iin, |
|
|
const Vector3d & |
rin |
|
) |
| |
Parametrized constructor.
- Parameters
-
| [in] | iin | Initializes Node id (Node::i) |
| [in] | rin | Initializes Node position (Node::r) |
Definition at line 22 of file Node.cpp.
◆ Node() [3/3]
Parametrized constructor.
- Parameters
-
| [in] | iin | Initializes Node id (Node::i) |
| [in] | rin | Initializes Node position (Node::r) |
| [in] | vin | Initializes Node velocity (Node::v) |
Definition at line 26 of file Node.cpp.
◆ abs_diff()
| double Node::abs_diff |
( |
const Node & |
o | ) |
const |
Absolute difference between two Nodes.
- Parameters
-
- Returns
- See Definition
Definition at line 73 of file Node.cpp.
◆ geti()
| size_t Node::geti |
( |
| ) |
const |
◆ getr()
Getter for Node position (Node::r)
- Returns
- Node position
Definition at line 52 of file Node.cpp.
◆ getv()
Getter for Node velocity (Node::v)
- Returns
- Node velocity
Definition at line 66 of file Node.cpp.
◆ seti()
| void Node::seti |
( |
const size_t |
iin | ) |
|
Setter for Node id (Node::i)
- Parameters
-
Definition at line 31 of file Node.cpp.
◆ setr()
Setter for Node position (Node::r)
- Parameters
-
Definition at line 45 of file Node.cpp.
◆ setv()
Setter for Node velocity (Node::v)
- Parameters
-
Definition at line 59 of file Node.cpp.
◆ to_string()
| std::string Node::to_string |
( |
| ) |
const |
String representation of a Node object.
- Returns
- String representation of *this
Definition at line 83 of file Node.cpp.
The documentation for this class was generated from the following files:


Click on the variant you would like to share and copy the link from the browser address bar.
Only variants that have a pending changes will be shown here.


Political Survey
Question 1: How do you feel about the environment?
Good
Okay
Bad
Question 2: Is Obama COOL?
He's COOL.
He's okay, I guess.
He isn't all that COOL.
Question 3: Big business...
...has ruined this pure world!
...is okay, I guess.
...is the key to all of this.
Submit
You're probably a Liberal.
You're probably a Moderate.
You're probably a Conservative.


Connect to ENGINEERING AND APPLIED SCIENCE in the Course Register.
ENGINEERING AND APPLIED SCIENCE
EAS -030 EFF TECH REPORT WRIT 0 CU 001 LEC M 6:30-8:30PM TBA WESTERVELT M CONTACT DEPT or INSTRUCTOR FOR CLASSRM INFO DATES: 01/26/15 - 02/02/15 MAX: 50 EAS -031 MANAGING TECH PROJ TEAMS 0 CU 001 LEC T 6:30-8:30PM TBA WILKOF M CONTACT DEPT or INSTRUCTOR FOR CLASSRM INFO DATES: 02/10/15 - 02/17/15 MAX: 48 EAS -032 MAKING EFFECTIVE PRESENT 0 CU 001 LEC M 6:30-8:30PM TBA ROCKEFELLER I CONTACT DEPT or INSTRUCTOR FOR CLASSRM INFO DATES: 02/23/15 - 03/02/15 MAX: 50 EAS -033 INTERCUL AWARE IN TEAMWK 0 CU 001 LEC M 6:30-8:30PM TBA PERALTA-DURAN S CONTACT DEPT or INSTRUCTOR FOR CLASSRM INFO DATES: 03/23/15 - 03/30/15 MAX: 50 EAS -203 ENGINEERING ETHICS 1 CU 001 LEC TR 3-4:30PM TOWN 100 HERSCH M MAX: 160 EAS -306 ELEC SYSTEMS & MARKETS 1 CU 401 LEC M 3-6PM DRLB 3C8 HUEMMLER A CROSS LISTED: EAS -506 MAX W/CROSS LIST: 19 EAS -403 ENERGY SYSTEMS & POLICY 1 CU 401 LEC T 5-8PM TOWN 321 HUEMMLER A CROSS LISTED: EAS -503 MAX W/CROSS LIST: 42 EAS -499 SENIOR CAPSTONE 1 CU PERMISSION NEEDED FROM DEPARTMENT 000 IND TBA STAFF EAS -503 ENERGY SYSTEMS & POLICY 1 CU 401 LEC T 5-8PM TOWN 321 HUEMMLER A CROSS LISTED: EAS -403 MAX W/CROSS LIST: 42 EAS -506 ELEC SYSTEMS & MARKETS 1 CU 401 LEC M 3-6PM DRLB 3C8 HUEMMLER A CROSS LISTED: EAS -306 MAX W/CROSS LIST: 19 EAS -510 TECH COMM & ACAD WRITING 1 CU 001 LEC TR 10:30-12NOON TOWN 305 WECKSLER C UNDERGRADUATES NEED PERMISSION MAX: 20 EAS -545 ENG ENTREPRENEURSHIP I 1 CU 401 LEC TR 9-10:30AM TOWN 311 CASSEL T CROSS LISTED: IPD -545 MAX W/CROSS LIST: 50 402 LEC TR 10:30-12NOON SKIR AUD MENSCHIK E CROSS LISTED: IPD -545 MAX W/CROSS LIST: 50 403 LEC TR 10:30-12NOON TOWN 311 BABIN J PERMISSION NEEDED FROM INSTRUCTOR CROSS LISTED: IPD -545 MAX W/CROSS LIST: 50 EAS -546 ENG ENTREPRENEURSHIP II 1 CU 001 LEC T 4:30-7:30PM TOWN 337 BABIN J PERMISSION NEEDED FROM INSTRUCTOR MAX: 20 002 LEC W 4:30-7:30PM TOWN 337 CASSEL T PERMISSION NEEDED FROM INSTRUCTOR MAX: 20 EAS -897 CPT PRACTICUM 1 CU 008 LEC TBA LANE S MAX: 30
Return to Course & Room Roster
Comments to:
Office of the University Registrar
University of Pennsylvania
Room 221 Franklin Building
3451 Walnut Street
Philadelphia, PA 19104-6291
Phone:<PHONE_NUMBER> Fax:<PHONE_NUMBER>
<EMAIL_ADDRESS>Updated: Sat Jan 17 08:30:02 2015


LANGUAGE
ENGLISH
GERMAN
PERIOD_OF_TIME
10 min
1 h
24 h
APP_TITLE
SERVICE_INSTANCE
: "
"
RUNNING_TIME_OF_PROCESSES
:
THROUGHPUT
(Obj/Min)
Input Connection Handler
LAST_CONNECTION
:
FREQUENCY_OF_PACKET_SIZES
DURATION_OF_CONNECTIONS
Minimal
AVERAGE
MAXIMUM
AVERAGE_DURATION_OF_CONNECTIONS
(ms)
Input Buffer
DURATION_OF_FREQUENCY
(Min)
Processing
FREQUENCY_OF_PROCESSING_CHAINS
DURATION_OF_PROCESSING
Minimal
AVERAGE
MAXIMUM
AVERAGE_DURATION_OF_PROCESSING
(ms)
Output Buffer
DURATION_OF_FREQUENCY
(Min)
Output Error Handler
ACTIONS_OF
Error Handler
AVERAGE_DURATION_OF_PROCESSING
(ms)
Output Connection Handler
LAST_CONNECTION
:
FREQUENCY_OF_PACKET_SIZES
DURATION_OF_CONNECTIONS
Minimal
AVERAGE
MAXIMUM
AVERAGE_DURATION_OF_CONNECTIONS
(ms)


Sebore Farms and Extension Services as a corporate institution was established in 1982. The Farm covers 14,000 hectares of land in Adamawa State, Nigeria; and is engages in Horticulture, Aquaculture, Feed Production, Diary and Cattle farming covering Animal Husbandry, Nutrition, Genetics, Artificial Insemination and other extension services such as staff training.
The Farm attained its Export Processing Zone Status (EPZ) in 2001. And we offer a stable and deregulated environment for ease of doing business forApproved Enterprises in the Zone. We provide support services and facilities that is designed to significantly reduce the capital investment required to start business operations. Sebore Farms EPZ.
NEPZA helps regulate and operate highly efficient Free Zones in Nigeria. This is done by providing a highly competitive incentive scheme, excellent support facilities and service to create enabling environment for export manufacturing and other commercial activities. NEPZA.
Hectars


Prompt for Monday, February 27
More Histograms
Looking for data? Andy Kirk has a
comprehensive list of sources
.
Steph Curry data from
Basketball Reference
Wrap-up: Can we reverse-engineer human perception?
Data: grouping.
Context: Boring distributions


| Property | Value |
|---|---|
| Id | {{ jobExecution.jobExecutionId }} |
| Job Name | {{ jobExecution.name }} |
| Job Instance | {{ jobExecution.jobInstanceId }} |
| Task Execution Id | {{ jobExecution.taskExecutionId }} |
| Job Parameters | {{ jobExecution.jobParametersString }} |
| Start Time | {{ jobExecution.startTime | dataflowDateTime }} |
| End Time | {{ jobExecution.endTime | dataflowDateTime }} |
| Duration | {{ jobExecution.startTime | dataflowDuration: jobExecution.endTime }} |
| Status | |
| Exit Code | |
| Exit Message | {{ jobExecution.exitMessage }} |
| Step Execution Count | {{ jobExecution.stepExecutionCount }} |
| Step Id | Step Name | Reads | Writes | Commits | Rollbacks | Duration | Status | Details |
|---|---|---|---|---|---|---|---|---|
| {{ stepExecution.id }} | {{ stepExecution.name }} | {{ stepExecution.readCount }} | {{ stepExecution.writeCount }} | {{ stepExecution.commitCount }} | {{ stepExecution.rollbackCount }} | {{ stepExecution.startTime | dataflowDuration: stepExecution.endTime }} |


FRAME DATA
Common Low Rank Moves
Frame data
| Move |
Input |
Block Frame |
| Dragon tail |
db+4 |
-26 |
| Snake Edge |
d/f+3 |
-23 |
| Ora |
db 1+2 |
-16 |
| Russian Assault |
wr 2 |
+6 |
| Total plus frames: |
|
1 |
Generic Tools
Generic Move Data
| Move |
Input |
Block Frame |
| Mid Poke |
df+1 |
-1 |
| Low Poke |
d+4 |
-12 |
| Jab |
1 or 2 |
+1 |
| Low Jab |
d+1 |
-10 |
| Total plus frames: |
|
1 |
Launchers
Launcher Move Data
| Move |
Input |
Block Frame |
| Mid launcher |
df+2 |
-12 |
| Magic 4 |
4 |
-9 |
| Low Launcher |
db+4 |
-16 |
| Quick Launcher |
b+1 |
-5 |
| Total plus frames: |
|
0 |
Special Moves
Special Move Data
| Move |
Input |
Block Frame |
| Unblockable |
b1+4 |
! |
| Heal |
Stance 1+2 |
i20 |
| Wavedash |
f,n,d,d/f |
i3 |
| Sidestep |
u,U |
i6 |
| Total plus frames: |
|
0 |


参考文献
Set your institution to view full text
papers.
1. Synthesis, characterization, ion-exchange, and antimicrobial study of poly
[(2-hydroxy-4-methoxybenzophenone) propylene] resin and its polychelates with
lanthanides (III). Patel MM, et al. J. Appl. Polym. Sci. 106(2), 1307-17,
(2007)
2. Purohit, K.; Desai, K.K. E-J. Chem. 7th ed., 2, (2005)
3. Solid-phase extraction liquid
chromatography-tandem mass spectrometry analytical method for the determination of
2-hydroxy-4-methoxybenzophenone and its metabolites in both human urine and semen. Leó\n
Z, et al. Anal. Bioanal. Chem 398(2), 831-43, (2010)
Loading...
4. Gas chromatographic determination of
2-hydroxy-4-methoxybenzophenone and octyldimethyl-p-aminobenzoic acid sunscreen agents
in swimming pool and bathing waters by solid-phase microextraction. Lambropoulou DA,
Giokas DL, Sakkas VA, et al. J. Chromatogr. A 967(2), 243-53, (2002)
Loading...
Cheminformatics analysis of assertions
mined from literature that describe drug-induced liver injury in different species.
Denis Fourches et al Chem. Res. Toxicol. 23, 171-83, (2010)
Loading...
Direct rapid analysis of multiple PPCPs
in municipal wastewater using ultrahigh performance liquid chromatography-tandem
mass spectrometry without SPE pre-concentration. Yu K, Li B, and Zhang T Anal.
Chim. Acta 738, 59-68, (2012)
Loading...
Clinical and experimental studies of
octocrylene's allergenic potency. Karlsson I, Vanden Broecke K, Mårtensson J, et al.
Contact Dermatitis 64(6), 343-52, (2011)
Loading...
Associations between socioeconomic status
and environmental toxicant concentrations in adults in the USA: NHANES 2001-2010.
Tyrrell J, Melzer D, Henley W, et al. Environ. Int. 59, 328-35, (2013)
Loading...
Retinyl palmitate polymeric nanocapsules
as carriers of bioactives. Teixeira Z, Dreiss CA, Lawrence MJ, et al. J. Colloid.
Interface Sci. 382(1), 36-47, (2012)
Loading...
Effects of benzophenone-3 exposure on
endocrine disruption and reproduction of Japanese medaka (Oryzias latipes)--a two
generation exposure study. Kim S, Jung D, Kho Y, et al. Aquat. Toxicol. 155,
244-52, (2014)
Loading...
The effect of Beta-cyclodextrin on
percutaneous absorption of commonly used Eusolex® sunscreens. Shokri J,
Hasanzadeh D, Ghanbarzadeh S, et al. Drug Res. (Stuttg.) 63(11),
591-6, (2013)
Loading...
In vivo and in vitro evaluation of the
use of a newly developed melatonin loaded emulsion combined with UV filters as a
protective agent against skin irradiation. Sierra AF, Ramírez ML, Campmany AC, et
al. J. Dermatol. Sci. 69(3), 202-14, (2013)
Loading...
Emerging organic contaminant removal
depending on primary treatment and operational strategy in horizontal subsurface
flow constructed wetlands: influence of redox. Avila C, Reyes C, Bayona JM, et al.
Water Res. 47(1), 315-25, (2013)
Loading...
Characterization and evaluation of
poly(epsilon-caprolactone) nanoparticles containing 2-ethylhexyl-p-methoxycinnamate,
octocrylene, and benzophenone-3 in anti-solar preparations. do Nascimento DF, Silva
AC, Mansur CR, et al. J. Nanosci. Nanotechnol. 12(9), 7155-66, (2012)
Loading...
Effects of the UV filter benzophenone-3
(oxybenzone) at low concentrations in zebrafish (Danio rerio). Blüthgen N, Zucchi S,
and Fent K Toxicol. Appl. Pharmacol. 263(2), 184-94, (2012)
Loading...
Evaluation of fungal- and
photo-degradation as potential treatments for the removal of sunscreens BP3 and BP1.
Gago-Ferrero P, Badia-Fabregat M, Olivares A, et al. Sci. Total Environ. 427-428,
355-63, (2012)
Loading...
Effect of ultraviolet filters on skin
superoxide dismutase activity in hairless mice after a single dose of ultraviolet
radiation. Vilela FM, Fonseca YM, Jabor JR, et al. Eur. J. Pharm. Biopharm.
80(2), 387-92, (2012)
Loading...
Urinary levels of triclosan and parabens
are associated with aeroallergen and food sensitization. Savage JH, Matsui EC, Wood
RA, et al. J. Allergy Clin. Immunol. 130(2), 453-60.e7, (2012)
Loading...
Reaction of benzophenone UV filters in
the presence of aqueous chlorine: kinetics and chloroform formation. Duirk SE,
Bridenstine DR, and Leslie DC Water Res. 47(2), 579-87, (2013)
Loading...
Occurrence of multiclass UV filters in
treated sewage sludge from wastewater treatment plants. Gago-Ferrero P, Díaz-Cruz
MS, and Barceló D Chemosphere 84(8), 1158-65, (2011)
Loading...
Biodegradation of the ultraviolet filter
benzophenone-3 under different redox conditions. Liu YS, Ying GG, Shareef A, et al.
Environ. Toxicol. Chem. 31(2), 289-95, (2012)
Loading...
Ozonation and peroxone oxidation of
benzophenone-3 in water: effect of operational parameters and identification of
intermediate products. Gago-Ferrero P, Demeestere K, Silvia Díaz-Cruz M, et al. Sci.
Total Environ. 443, 209-17, (2013)
Loading...
Evaluation of drug and sunscreen
permeation via skin irradiated with UVA and UVB: comparisons of normal skin and
chronologically aged skin. Hung CF, Fang CL, Al-Suwayeh SA, et al. J. Dermatol.
Sci. 68(3), 135-48, (2012)
Loading...
Combining ligand-based pharmacophore
modeling, quantitative structure-activity relationship analysis and in silico
screening for the discovery of new potent hormone sensitive lipase inhibitors.
Mutasem O Taha et al J. Med. Chem. 51, 6478-94, (2008)
Loading...
Safety of oxybenzone: putting numbers
into perspective. Wang SQ, Burnett ME, and Lim HW Arch. Dermatol.
147(7), 865-6, (2011)
Loading...
Innovative sunscreen formulation based on
benzophenone-3-loaded chitosan-coated polymeric nanocapsules. Siqueira NM, Contri
RV, Paese K, et al. Skin Pharmacol. Physiol. 24(3), 166-74, (2011)
Loading...
Use of photoacoustic spectroscopy in the
characterization of inclusion complexes of
benzophenone-3-hydroxypropyl-β-cyclodextrin and ex vivo evaluation of the
percutaneous penetration of sunscreen. Berbicz F, Nogueira AC, Medina Neto A, et al.
Eur. J. Pharm. Biopharm. 79(2), 449-57, (2011)
Loading...
Neutral desorption extractive
electrospray ionization mass spectrometry for fast screening sunscreen agents in
cream cosmetic products. Zhang X, Liu Y, Zhang J, et al. Talanta 85(3),
1665-71, (2011)
Loading...
Determination of nine environmental
phenols in urine by ultra-high-performance liquid chromatography-tandem mass
spectrometry. Chen M, Zhu P, Xu B, et al. J. Anal. Toxicol. 36(9),
608-15, (2012)
Loading...
Acute and chronic toxicity of four
frequently used UV filter substances for Desmodesmus subspicatus and Daphnia magna.
Sieratowicz A, Kaiser D, Behr M, et al. J. Environ. Sci. Health. A. Tox. Hazard.
Subst. Environ. Eng. 46(12), 1311-9, (2011)
Loading...
Oxidation of benzophenone-3 during water
treatment with ferrate(VI). Yang B and Ying GG Water Res. 47(7),
2458-66, (2013)
Loading...
Metabolic disposition of the insect
repellent DEET and the sunscreen oxybenzone following intravenous and skin
administration in rats. Fediuk DJ, Wang T, Chen Y, et al. Int. J. Toxicol.
31(5), 467-76, (2012)
Loading...
Tissue disposition of the insect
repellent DEET and the sunscreen oxybenzone following intravenous and topical
administration in rats. Fediuk DJ, Wang T, Chen Y, et al. Biopharm. Drug
Dispos. 32(7), 369-79, (2011)
Loading...
Quantification and in situ localisation
of abcb1 and abcc9genes in toxicant-exposed sea urchin embryos. Bošnjak I,
Pleić IL, Borra M, et al. Environ. Sci. Pollut. Res. Int. 20(12),
8600-11, (2013)
Loading...
Preparation and characterization of
carnauba wax nanostructured lipid carriers containing benzophenone-3. Lacerda SP,
Cerize NN, and Ré MI Int. J. Cosmet. Sci. 33(4), 312-21, (2011)
Loading...
Elastic liposomes containing
benzophenone-3 for sun protection factor enhancement. Severino P, Moraes LF,
Zanchetta B, et al. Pharm. Dev. Technol. 17(6), 661-5, (2012)
Loading...
Altered UV absorbance and cytotoxicity of
chlorinated sunscreen agents. Sherwood VF, Kennedy S, Zhang H, et al. Cutan.
Ocul. Toxicol. 31(4), 273-9, (2012)
Loading...
Merck 14,6954
Beil. 8,IV,2442
Corp MSDS 1 (1), 1933:A / FT-IR 1 (2), 66:C / FT-IR
2 (2), 2463:D / FT-NMR 1 (2), 897:A / IR-Spectra (3), 889:C
/ IR-Spectra (2), 778:B / NMR-Reference 2 (2), 71:D /
RegBook 1 (2), 1673:E / Sax 6, 1778 / Sigma FT-IR 1
(2), 631:D / Structure Index 1, 264:D:8 / Vapor Phase 3,
1273:D


@* * Copyright 2023 HM Revenue & Customs * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. *@ @import include._ @import uk.gov.hmrc.thirdpartydeveloperfrontend.domain.models.views.BackButtonWithJavaScript @import uk.gov.hmrc.thirdpartydeveloperfrontend.domain.models.developers.DeveloperSession @import uk.gov.hmrc.apiplatform.modules.mfa.controllers.profile.routes @import uk.gov.hmrc.apiplatform.modules.mfa.models.MfaId @import uk.gov.hmrc.apiplatform.modules.mfa.forms.SmsAccessCodeForm @import uk.gov.hmrc.apiplatform.modules.mfa.models.MfaAction @this(devMain: DevMainWithFormErrors) @(form: Form[SmsAccessCodeForm], mfaId: MfaId, mfaAction: MfaAction, mfaIdForRemoval: Option[MfaId])(implicit flash: Flash, messages: Messages, request: play.api.mvc.Request[Any], loggedIn: DeveloperSession, appConfig: ApplicationConfig) @devMain( form, title = "Enter the access code", userFullName = loggedIn.loggedInName, back = BackButtonWithJavaScript, isRegistering = true, developerSession = Some(loggedIn) ) {
We have sent a 6 digit access code to @flash.get("mobileNumber").getOrElse(form.data.get("mobileNumber"))
It may take a few minutes to arrive
If you have a UK phone number your 6-digit code will arrive from the phone number 60 551.
@helper.form(action = routes.MfaController.smsAccessCodeAction(mfaId, mfaAction, mfaIdForRemoval)) { @helper.CSRF.formField


Mike Brown tells vocal Harlequins to let rugby do their talking as Europe starts
Quins have led chorus of disapproval at Saracens' salary cap breach but Brown warns: “It’s okay to have your say but you’ve also got to back up your end and do the job”
by Alex Spink, https://www.facebook.com/alexspinkmirror/Mike Brown says it is time Harlequins let their rugby do the talking after a poor start to the season.
Quins have led the criticism of Saracens in the wake of their London rivals being busted for breaching the salary cap.
But while Chris Robshaw, Danny Care and former boss John Kingston have all stuck the boot in off the pitch, the club has failed to deliver on it.
Just one win from the first four rounds of the Premiership leaves the city slickers languishing in the bottom three.
Quins hope a new competition will bring a change of fortune - though they start their European Champions Cup campaign tomorrow at French giants Clermont.
Brown said of Saracens: “It’s okay to have your say but you’ve also got to back up your end and do the job.”
Asked what the team expected of itself this season, he added: “Definitely not what what we’ve put out the last couple of weeks. That hasn’t been us at all.”
Brown concedes that for a club of Quins’ stature, a failure to ever reach the semi-finals of Europe’s top competition is “definitely” not good enough.
“We’ve been guilty before of just being happy to be part of the European Cup,” he said. “We don’t have that mindset with our squad any more. We’re in it to do things.
“We’ve worked incredibly hard to get back in this cup and we’re desperate to win things, but we need to hit the ground running in what is an incredibly tough fixture.”
Quins, who also share Pool 3 with Bath and Ulster, are 100/1 long shots to conquer Europe.
The odds on Brown reclaiming his England shirt at the age of 34, after a pre World Cup ‘altercation’ which saw him and Ben Te’o dropped, might not be much better.
“Never say never,” said the nation's most-capped fullback, who did not even watch the World Cup final.
“There are plenty of athletes around the world who are over 30 and doing amazing things. All depends who’s in charge, I guess, and what players are available.”


PyGotham 2016 : Journey to the West II
Conference · PythonThis post is the second in the series of my Journey to the West. It describes my experience of attending PyGotham 2016 in New York City in July 2016.
The conference started on 16th July, we (Sartaj and I) were at SciPy at Austin on 15th July, We took the flight on 16th morning and reached at the conference place in the afternoon. We had to skip sprints at SciPy. Interestingly the venue for the conference was United Nations Conference building in Manhattan. We stayed at Astoria in Queens at an Airbnb apartment.
Day 1
I missed a major portion of Day 1 as I reached late, though fortunately I was able to attend Keynote which was schedule at the end of the day, thanks to the organisers! for such smart scheduling, which makes a lot of sense. I met a lot people there, mostly from New York, from various domains. I also met James Powell there, whom I met at SciPy. as well, he introduced me to a lot of people at PyGotham. The keynote was given by Ewa Jodlowska,
She is a Director of Operations for the Python Software Foundation. Ewa, talked about the role of PSF in financially supporting the Python community. I was glad to see the kind of transparency PSF have. She showed a lot of insights of the expenditure of Python Software Foundation. A lot of financial aid for the conferences I attend comes from PSF itself! Thanks to the people who run Python Software Foundation.
Day 2
I had my talk on Day 2, after lunch. The talk was scheduled for 25 minutes and the helper told me about various signals he would make based on the time left. I was afraid that I may take longer than time alloted, but I spoke like a house on fire and finished my talk in just about 15 minutes, it was the first time, when I was asked no question! It seems I need to work on my speaking speed. It was an important lesson to learn though. :P
The Keynote for Day 2 was given by Katie Cunningham who is an excellent speaker or rather teacher! She talked about how a good teacher should look like. James Powell volunteered for being her student during the keynote. She taught the art of teaching by Empathy, by taking an example of teaching someone how to knit. It was one of the best keynotes I have ever seen.
Later in the evening James took me to the Dinner with Katie and all the volunteers of PyGotham 2016. It was great to see their enthusiasm towards contributing back to the community. It was an amazing evening spent with those awesome people. I am looking forward to attend PyGotham again.


{% extends "base.html" %} {% block title %}Documents | {{ block.super }}{% endblock %} {% block content %}
The pack has no uploaded documents to display


Labour facing electoral wipeout in Scotland, poll suggests
The SNP are predicted to jump to 41 seats, according to the poll, with the Lib Dems moving up to five and the Tories expected to drop to 12.
Labour is set to lose all but one of its seats in Scotland, according to a new poll.
The Panelbase study for the Sunday Times suggested that only Ian Murray will be returned to the House of Commons.
Mr Murray, a frequent critic of leader Jeremy Corbyn, was the sole Labour MP north of the border in 2015.
The poll, which surveyed 1,009 people in Scotland, found that support for the Labour Party in Scotland could dip from 27% to 20%.
According to analysis from Strathclyde University Professor Sir John Curtice, the SNP are also on course for another electoral win in Scotland, seeing their seat count rise from 35 to 41 after December 12 if there is a uniform swing across Scotland, with support rising from 37% to 40%.
According to the poll, Scotland’s ruling party could lose North East Fife, the seat with the smallest majority in the UK, with Stephen Gethins holding just two more votes over his Liberal Democrat rival in 2017.
The First Minister was on the campaign trail with Mr Gethins on Saturday in his constituency.
The poll has the seat being won by the Lib Dems, taking the party’s Scottish total to five, while overall support will rise from 7% to 11%.
The Conservatives are expected to lose just one seat in Scotland, with Stirling predicted to move from Stephen Kerr to SNP MEP Alyn Smith.
If the poll is found to be correct, the party’s support will also drop by one percentage point, to 28%.
The poll found the First Minister to be the only leader with a positive approval rating at +3%.
Prime Minister Boris Johnson’s popularity rose slightly from -36% to -34%, while the Labour leader also improved but still found himself trailing the Tory leader on -41%.
On the issues voters believe to be harmful to the UK, 37% of Scots said Scottish independence, with 39% saying the same of Brexit.
Almost half of all those surveyed said Scottish independence would be a “good opportunity” for the country, at 45%, while just 24% said the same of Brexit.
Responding to the poll Kirsty Blackman, the SNP’s deputy Westminster leader, said: “Only the SNP can beat the Tories in Scotland.
“While we take nothing for granted, the SNP are in a strong position – and we’re well and truly the party with the momentum.
“This poll underlines the fact that neither Labour nor the Lib Dems can take seats off the Tories.
“Boris Johnson is desperate to get a majority, force through a disastrous Brexit and inflict yet more years of Tory misery on Scotland.
“The only way to stop him is to unite around the SNP and help lock him out of Downing Street.”
Mr Kerr said: “We welcome today’s poll.
“It confirms that, in seat after seat in Scotland, it’s only by voting Scottish Conservative that people can stop Nicola Sturgeon and make her listen.
“By contrast, the poll shows that Labour is going nowhere in Scotland and that it now risks being completely wiped out.
“So our message to Labour and Liberal voters today is to lend us your vote so together we can beat the SNP.
“We did it two years ago – let’s do it again.”
Scottish Liberal Democrat campaign chairman Alex Cole-Hamilton MSP said: “This poll shows that the Lib Dems are a growing force in Scotland.
“Everyone who is pro-EU and pro-UK should vote for us on December 12.”


BoC to cut rates by 50bps over 2020 – TDS
by Sandeep KanihamaAnalysts at TD Securities are looking for the Bank of Canada to cut rates by 50bps over 2020, with 25bp cuts in January and April.
Key Quotes
“While the Canadian economy has thus far been resilient to global headwinds, we do not believe recent actions taken by the US and China to enough to meaningfully resolve the elevated level of trade uncertainty. This should prompt the BoC to provide more stimulus to offset the impact of global headwinds, although recent messaging suggests there is a very high bar to do so by the end of 2019.”
“Underscoring the BoC's (relatively) constructive outlook is a healthy starting point; Q2 GDP was stronger than expected at 3.7%, and even with an undesirable.”


Before Change
packages = ["elfi"] + ["elfi." + p for p in find_packages("elfi")]
requirements = [
"numpy>=1.8",
"scipy>=0.16.1",
"matplotlib>=1.1",
"GPy>=1.0.9",
"networkX>=1.11",
"ipyparallel>=6.0"
]
optionals = {
"doc": ["Sphinx"],
"graphviz": ["graphviz>=0.5"]
After Change
packages = ["elfi"] + ["elfi." + p for p in find_packages("elfi")]
with open("requirements.txt", "r") as f:
requirements = f.read().splitlines()
optionals = {
"doc": ["Sphinx"],
"graphviz": ["graphviz>=0.5"]
}


Mumbai Metro
Official Website
home
Home
explore
Map
book_online
Book Tickets
account_circle
Account
Welcome to Account Login
User Name
Password
SUBMIT
FORGOT PASSWORD
METRO FARE CALCULATOR
SOURCE
Please select a source
One
Two
Three
east
DESTINATION
Please select a Destination
One
Two
Three
CALCULATE FARE


|
Thank you.
Thank you again for giving us your consent for research, which will allow us to study a sample of your blood. We recently mailed you a kit with instructions on how to have a sample of blood drawn, and are now checking in to see if you received it. If you have not yet received the kit, or if you have an questions about the process, please contact us via email at<EMAIL_ADDRESS>or at<PHONE_NUMBER>. Sincerely, Corrie Painter, PhD Broad Institute of MIT and Harvard. 415 Main St, Cambridge, MA 02142, United States |


Kris Letang injury update: Pittsburgh Penguins activate defenseman from LTIR
by Jace MalloryThe Pittsburgh Penguins announced on Monday that Kris Letang has been activated from long-term injured reserve following a lower-body injury sustained on Nov. 4. He is a game-time decision for Monday's match-up with the Calgary Flames.
Letang missed eight games on LTIR, a stretch over which the Penguins wen 4-1-3.
MORE: Marner on Babcock's teammate list request: 'I didn't really know what to think'
The Penguins'franchise leader in goals and points by a defenseman, Letang isis currently third on the team in points this season with 12 (four goals, eight assists). Despite the career numbers, the32-year-old blueliner has only played a complete 82-game season once in 2010-11.
Prior to his injury, Letang was on pace for a 22-goal, 66-point season, registeringfour goals and 12 points in 15 games. In 65 games last season, he finished with 16 goals and 56 points.
Pittsburgh has had its share of injuries this year,with Evgeni Malkin, Patric Hornqvist, Bryan Rust, Nick Bjugstad, Letang and now Sidney Crosby missing time this season.


Show Part Assignments (A)
Annotation
(T)
(S) Always Show Parts
(D / H) Always Hide Parts
(D / H) Always Hide Parts
Annotation
Part
Annotation Species: (C to cycle)
(I) Annotation of Interest
Part Type: (C to cycle)


Introduction
In this chapter we are going to introduce linear algebra, which is a basic tool for us to solve linear equations. We commonly use linear algebra to solve portfolio variance and conducting portfolio optimization.
Matrix
Let's start from vector. A vector is also called a vector space. If it's in a Cartesian coordinate system, it would be a 2-dimensional vector, \((x,y)\). If it's 3-dimensional, it would be \((x,y,z)\). Here you can simply consider a vector as an array of number, although it's very meaningful in math and physics.
In linear algebra, we usually write a vector vertically:
\[v = \begin{pmatrix}
x \\ y \\z
\end{pmatrix}\]
Now consider if we have multiple vector \((v_1,v_2,v_3...v_n)\), and they have the same length(strictly speaking, dimension), we can put them together to make up a matrix.
If we have:
\[v_1 = \begin{pmatrix}
1 \\
2\\
3
\end{pmatrix}\]
\[v_2 = \begin{pmatrix}
2 \\
2\\
2
\end{pmatrix}\]
\[v_3 = \begin{pmatrix}
3 \\
1\\
1
\end{pmatrix}\]
We combine them together to form a matrix:
\[m = \begin{pmatrix}
1&2&3 \\
2&2&2\\
3&1&1
\end{pmatrix}\]
m is a \(3 \times 3) matrix. When we describe the dimension of a matrix, we typically use \(m\times n\), where m is the number of rows and n is the number of columns. \(m\) and \(n\) do not have to be the same
Python Implementation
In python we have NumPy to deal with linear algebra. The array we learned in NumPy chapter can be deemed as a vector:
import numpy as np
a = np.array([1,2,3])
b = np.array([2,2,2])
c = np.array([3,1,1])matrix = np.column_stack((a,b,c))
print matrix
print type(matrix)
It worths noticing that we used np.column_stack() here to make the matrix to ensure that the original vectors are vertical in the new matrix.If we directly put the vectors together:
matrix2 = np.array([a,b,c])
print matrix2
By default it would stack the vectors horizontally.
Matrix Multiplication
In a matrix, we use \(x_{ij}\) to refer to a single value. For example, if this value lies at the second row and the third column, we refer to it by \(x_{23}\).
If A is an \(m\times n\) matrix and B is an \(p\times q\) matrix, and \(n=p\), we can multiply A and B, which is written as \(A\times B\). Please note that if \(q \neq m\), we can't multiply B and A by \(B\times A\).
Generally speaking, we can multiply A and B by \(A\times B\) if and only if \(n=p\). Matrix multiplication doesn't have commutative property.
Let's see if A is a \(3\times 2\) matrix and B is a \(2\times 2\)matrix:
\[A\times B = \begin{pmatrix}
a_{11}&a_{12} \\
a_{21}&a_{22}\\a_{31}&a_{32}
\end{pmatrix}
\times
\begin{pmatrix}
b_{11}&b_{12} \\
b_{21}&b_{22}
\end{pmatrix} = \begin{pmatrix}
x_{11}&x_{12} \\
x_{21}&x_{22}\\x_{31}&x_{32}
\end{pmatrix}\]
Where \(x_{11} = a_{11}*b_{11}+a_{12}*b_{12}\), \(x_{12} = a_{11}*b_{12}+a_{12}*b_{22}\), \(x_{21} = a_{21}*b_{11} + a_{21}*b_{21}\), \(x_{22} = a_{21}*b_{12} + a_{22}*b_{22}\).
In one words, \(x_{ij}\) equals to the sum-product of row \(i\) from the first matrix and the column \(i\) from the second matrix.
The calculation is not difficult but complex. Fortunately we can use python to do it:
A = np.array([[2,3],[4,2],[2,2]])
B = np.array([[4,2],[4,6]])
x = np.dot(A,B)
print x
Using np.dot(), we can conduct matrix multiplication. It worths mentioning that A and B need to be in the right order, if you inverse the oder in this example:
x = np.dot(B,A)
Not surprisingly, you would get an error.
It's useful to remember that \(m \times n \times n \times p = m \times p\). This means a \(m\times n\) matrix multiply a \(n\times p\) matrix ends up with a \(m \times p \) matrix.
Inverse
In linear algebra, there are a group of special matrix that have \(n\times n\) dimension and with ones on the main diagonal and zeros elsewhere. This type of matrix is called identity matrix. We usually present it with \(I_n\), where \(n\) is the dimension.
\[I_n= \begin{pmatrix}
1&0&0&...&0 \\
0&1&0&...&0\\
0&0&1&...&0\\
...&...&...&...&...\\
0&0&0&...&1
\end{pmatrix}\]
If A is a \(m\times n\) matrix, the property of a identity matrix is:
\[I_mA = AI_n = A\]
We encourage you to try this equation by yourself so that you will have a deeper understanding about identity matrix and matrix multiplication.
We use identity matrix to define invertible matrix. An \(n \times n\) matrix A is called invertible if there exists an \(n \times n\) matrix B such that:
\[AB = BA = I_n\]
Then B is uniquely determined by A and is called the inverse of A, denoted by \(A^{-1}\).
We would not introduce the method to solve inverse matrix here. If you are interested in it, please refer to Gauss-Jordan method.
In Python, we also use python to solve inverse matrix.
print matrix
print '\n-------------seperation line------------\n'
print np.linalg.inv(matrix)
Using np.linalg.inv(), we found the inverse matrix of our variable 'matrix'. Now let's check if the multiplication is \(I\):
inverse = np.linalg.inv(matrix)
print np.dot(matrix,inverse)
print '\n-------------seperation line------------\n'
print np.dot(inverse,matrix)
Not surprisingly, we ended up with an identity matrix.
If a square matrix is not invertible, it's called singular matrix.
For example, let's synthesize a singular matrix:
singular = np.array([[1,2,3],[1,2,3],[3,3,3]])
inv = np.linalg.inv(singular)
We got an error message: Singular matrix.
Linear Functions
One of the most common usage of linear algebra is to solve linear equations. Consider the following linear equations:
\[2x + y - z = 8\]
\[-3x -y +2z = -11\]
\[-2x+y+2z = -3\]
If we let:
\[A= \begin{pmatrix}
2&1&-1 \\
-3&-1&2\\
-2&1&2
\end{pmatrix}\]
and
\[X= \begin{pmatrix}
x \\
y\\
z
\end{pmatrix}\]
and
\[B= \begin{pmatrix}
8 \\
-11\\
-3
\end{pmatrix}
\]
The above linear equations can be written as
\[A X = B\]
We strongly encourage you to do the multiplication to reproduce the linear equations so that you can have a better understanding.
If A is invertible, we can multiply \(a^{-1}\) on both side of the equation:
\[A^{-1}AX = A^{-1}B\]
Then
\[X = A^{-1}B\]
This means as long as we can find \(A^{-1}\), we can solve the linear functions!
Let's try it in python:
A = np.array([[2,1,-1],[-3,-1,2],[-2,1,2]])
B = np.array([[8],[-11],[-3]])
inv_A = np.linalg.inv(A)
print np.dot(inv_A,B)
\(x = 2, y = 3, z = -1\) is the solution of the linear functions
More conveniently, we can directly use NumPy function to solve it:
print np.linalg.solve(A,B)
We got exactly the same result.
We can check the correctness of the solution by substituting x, y, and z in the original linear equations.
Summary
In this chapter we briefly introduced vector, matrix, inverse matrix and solving linear equations, which is commonly used to calculate portfolio variance. It's also used to detect arbitrage opportunities by solving linear equations. Next chapter we would introduce modern portfolio theory and CAPM, which is the foundation if modern finance.


lab05 : Evaluating expressions with stacks
| num | ready? | description | assigned | due |
|---|---|---|---|---|
| lab05 | false | Evaluating expressions with stacks | Tue 05/22 09:00AM | Tue 05/29 11:59PM |
Goals for this lab
By the time you have completed this lab, you should be able to
- Understand the meaning and purpose of typical stack operations
- Solve problems with the help of stacks, including stack
objects from the Standard Template Library - Evaluate expressions in postfix form
This lab may be done with a partner
Step by Step Instructions
Step 1: Create a lab05 git repo and get the starter code
First get together with your lab partner. If your regular partner is more than 5 minutes late, let your mentor know.
Select a pilot, log into the CSIL machines.
Step 1a: Create a git repo, add your partner as collaborator
-
Create a repo for this lab on the pilot’s github account (just like you did in lab00): To do this, open a browser and navigate to www.github.com. Log into the pilot’s github account. From the drop down menu on the left, select our class organization: ucsb-cs24-w18 and proceed to create a new repo. You may refer to the instructions in lab00. Follow this naming convention: If your github username is jgaucho and your partner’s is alily, your should name your repo lab05_agaucho_alily (usernames appear in alphabetical order). Also you must set the visibity of your repo to be ‘PRIVATE’ when creating it. We will not repeat these instructions in subsequent labs.
-
The pilot should add the navigator as a collaborator on github, and the navigator should accept the request to join the repo. See instructions in previous labs
Step 1b: Clone your gitrepo and get the starter code
- Clone your repo in your cs24 directory on CSIL. If your repo is called lab05_jgaucho_alily, type the following commands:
cd ~/cs24
git clone git@github.com:ucsb-cs24-w18/lab05_jgaucho_alily.git
Now navigate to your starter-code directory (cloned in a previous lab) and do a git pull to get the latest version of the code
cd ~/cs24/cs24-w18-lab-starter-code/
git pull
cd ~/cs24/lab05_jgauch_alily/
Now copy all of the files for this lab from the starter-code directory to your git repo directory:
cp ~/cs24/cs24-s18-starter-code/lab05/* ./
-bash-4.3$ ls
evalfull.cpp intstack.h usestack.cpp
First look at intstack.h to learn what you can do with objects of this type. You can also notice how a stack can be implemented with an array - since all of the methods are very simple, they are implemented “inline” as part of the function definition.
Now look at usestack.cpp - notice it starts with #include “intstack.h” so it can create objects of type Stack and use the public methods of that class. The main function creates a Stack object named s, then it pushes first 10 then 20 onto the stack.
Finally, it loops until the stack is empty, printing the top element then popping that element from the stack. Feel free to compile it and run it - notice the numbers are popped from the stack in last-in first-out (LIFO) order:
-bash-4.3$ make usestack
g++ usestack.cpp -o usestack
-bash-4.3$ ./usestack
20
10
Edit usestack.cpp with emacs or another editor to play with this stack until you are comfortable with its operations.
Push some numbers, pop a few numbers, use cout to print the top number, and so on. You might want to leave the loop at the end alone, to print out the remaining numbers at the end. Try to predict what numbers will be printed, and in what order.
Move on to Step 3 after you are sure you know how to use this ADT.
WARNING: this stack does no error checking - do not push a number onto it if it already has 10 of them, and do not try to access the top element if the stack is empty!
Step 3: Learn two algorithms that use stacks, and implement them
The next file to look at is evalfull.cpp which is intended to evaluate fully-parenthesized arithmetic expressions. You can compile and run it now, but no matter what expression the user enters, it will say “bad expression: parentheses are not balanced” until you implement the function named balanced. But first learn how two stacks can be used to evaluate an arithmetic expression that has a set of parentheses enclosing every calculation. For example, the first expression below is fully parenthesized, and the rest are not:
( 4 * ( ( 5 + 3.2 ) / 1.5 ) ) // okay
( 4 * ( ( 5 + 3.2 ) / 1.5 ) // unbalanced parens - missing last ‘)’
( 4 * ( 5 + 3.2 ) / 1.5 ) ) // unbalanced parens - missing one ‘(‘
4 * ( ( 5 + 3.2 ) / 1.5 ) // not fully-parenthesized at ‘*’ operation
( 4 * ( 5 + 3.2 ) / 1.5 ) // not fully-parenthesized at ‘/’ operation
The main function gets an expression from the user, assuming that the “tokens” are separated by spaces. Each part of the expression is a different token - left parenthesis, right parenthesis, number, and arithmetic operators add, subtract, multiply and divide. These tokens are stored in an array, char *expression[] and passed to the evalFull function inside a try block, where it prints the result returned by evalFull. The evalFull function might throw a string exception if the expression cannot be evaluated, and such exceptions are caught and printed by main.
Here is the evalFull algorithm (with help from the utility function that identifies tokens and the enum TokenType) - try to follow the steps involved, and see how the program implements them.
You must write function balanced to complete this program. Edit evalFull.cpp so that balanced implements the following algorithm:
Balanced Parentheses Algorithm
loop through all the tokens in the expression (up to numTokens):
identify the token (using the utility function named identify)
if token is a left parenthesis: push it on the stack named s
if token is a right parenthesis (means a left should be on the stack):
if stack is empty - done: found out not balanced, so return false
else pop a left parenthesis
ignore any other token
end of loop (stack should be empty) - done:
return true if empty, else false
Just one stack is needed, and it is already created in the skeleton: stack<char *> s is an object of the STL stack class that is set up to store C strings like “(“. Compile and test it on some balanced and some unbalanced expressions. If balanced, the program should print a result, or at least throw a different exception string like the following sample runs of our solution:
-bash-4.3$ ./evalfull
enter expression: ( 4 + 7 )
result: 11
-bash-4.3$ ./evalfull
enter expression: ( 4 + 7 / 2 )
bad expression: operator(s) left on stack at end
-bash-4.3$ ./evalfull
enter expression: ( 4 7 )
bad expression: empty stack where operator expected
Step 4: Learn how to evaluate postfix expressions with a stack
First switch roles between pilot and navigator if you did not already do that.
We are most accustomed to arithmetic expressions in infix form - number operator number - where the operator is between the two numbers, as in 7 + 5. With this form, it is necessary to consider the precedence of operators and the effects of parentheses, which makes 7 + 5 * 3 different than (7 + 5) * 3, for example.
The postfix form of an arithmetic expression - number number operator - is far simpler from a computational standpoint, as it never requires parentheses and is not influenced by operator precedence. The first infix expression above translates to 7 5 + in postfix, the second one translates to 7 5 3 * + and the third one is 7 5 + 3 * in postfix form.
An algorithm to evaluate general infix expressions is even more complicated than the one for fully-parenthesized expressions - to consider operator precedence, and without the right parenthesis flag to know when it is time to perform a calculation. But an algorithm to evaluate postfix expressions is simpler than both of the infix algorithms:
Postfix Expression Evaluation Algorithm
create a stack for numbers (just need this one stack)
loop through all the tokens in the expression:
identify the token
if token is a number: push it on the stack
if token is an operator (means time to perform a calculation):
pop a number - last one pushed, so it is on right side of calculation
pop a second number - for the left side of the calculation
perform the calculation, and push the result on the stack
Done: result is on top of stack
Exceptions would be thrown if (a) a token cannot be identified, (b) there are less than two numbers on the stack when an operator is encountered, or (c) the stack does not have exactly one number left on it at the end of loop.
Edit usestack.cpp again to try this algorithm on a postfix expression (remember the stack in usestack.cpp only handles int values), and print the results to cout. For example, here is how the second expression from above could be evaluated (starts with a fresh stack):
// evaluating "7 5 3 * +"
// start with an empty stack
Stack numbers;
// first three tokens all numbers to push "7 5 3":
numbers.push(7);
numbers.push(5);
numbers.push(3);
// fourth token is calculation to do "*":
int right = numbers.top();
numbers.pop();
int left = numbers.top();
numbers.pop();
numbers.push(left * right);
// last token is another calculation "+":
right = numbers.top();
numbers.pop();
left = numbers.top();
numbers.pop();
numbers.push(left + right);
// done - print result:
cout << numbers.top() << endl;
Please select a different expression - make up a simple one, but not too simple, so you know you understand the steps. Don’t make it so complicated that you won’t have time to complete it before lab ends (besides, you want to work on the optional challenges for awhile). Show the expression you are evaluating in a comment at the top. Compile and test it so you can show the TA how it works.
Step 5: Show off your work and get credit for the lab
Get your TA’s attention to inspect your work, and to record your lab completion. Don’t leave early though … see challenge problems below.
Step 6: Submit evalfull.cpp and usestack.cpp
Submit Lab05 at https://submit.cs.ucsb.edu/, or use the following command from a CS terminal:
~submit/submit -p 932 evalfull.cpp usestack.cpp
Evaluation and Grading
Each student must accomplish the following to earn full credit for this lab: [50 points] usestack.cpp and evalfull.cpp are saved, with your name(s) in a comment at the top and other evidence of your work. Both of these files should compile and execute properly too.
To be eligible for late turn-in with credit, you MUST have attended your entire lab period. [-0 to -50 points, at the TA’s discretion] The student arrived on time to their lab session, and worked diligently on CS24-related material until dismissed.
Optional Extra Challenge
Improve class Stack (the one defined in intstack.h) so its functions will behave properly if called on an empty or full stack.
Notice what pop does now, for example: it decrements next no matter how many times it is called on an empty stack, which essentially is a seg fault waiting to happen when top is called or even push in some cases. At least pop should check for an empty stack and decrement only when it is not. Also both top and push should throw exceptions when they are used improperly, and the class should provide a way to check for a full stack.
First, create intstack.cpp for implementing the functions of class Stack. The reason is that your functions won’t be “one-liners” anymore, and therefore they are inappropriate choices for inline functions. Cut all of the implementations from intstack.h (constructor and four member functions) and paste them into intstack.cpp, and make all other necessary syntax changes. When done, verify it still compiles and that it works correctly with usestack.cpp too.
Add a function, bool full() const, that returns true if the stack is filled to its capacity. Add the declaration in intstack.h, implement it in intstack.cpp, and add a test for it in usestack.cpp.
Also in intstack.cpp: Implement push to throw string(“full stack”) if it is called when the stack is full.
Implement pop to not decrement next if the stack is empty.
Implement top to throw string(“empty stack”) if it is called when the stack is empty.
Test all of these changes by editing usestack.cpp again (requires a try/catch block at least).
Improve class Stack even more by preventing it from ever getting full. This challenge requires that you redesign the private portion of the class. Choose one of the following options:
Use a dynamically allocated array that grows as necessary.
The instance variable, data, must be changed (in intstack.h) from an int array to an int pointer. You should also add an instance variable to store the current capacity, and you can delete the CAPACITY symbolic constant.
Change the constructor implementation (in intstack.cpp) to dynamically allocate an array of ints, as in data = new int[10], and set the value of the current capacity (to 10 in this case).
Change the implementation of push so instead of throwing an exception if the array is currently at capacity, it dynamically allocates more space and always pushes the int passed to it. Update the capacity variable too. Choices here are to double the current capacity, or maybe just add 10 more, but either way it will be necessary to copy the values from the old array, delete[] the old array, and set data to point at the new array.
Change the implementation of full to return false every time it is called.
Use a linked list.
For this option the private portion of the class (in intstack.h) must define a node structure, and an instance variable that points to the first node - traditionally treated as the “top” of the stack. There really is no need for any other instance variables.
The implementations of push, pop, top and empty all must be changed accordingly, and full always should return false. In either case, test your stack implementation with a variation of usestack.cpp. Still got some time? Do the other option (from the previous challenge) now.


|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.avalon.framework.Version
public final class Version
This class is used to hold version information pertaining to a Component or interface.
The version number of aComponent
is made up of three
dot-separated fields:
"major.minor.micro"
The major, minor and micro fields are
integer numbers represented in decimal notation and have the
following meaning:
| Constructor Summary | |
|---|---|
Version(int major,
int minor,
int micro)
Create a new instance of a Version object with the
specified version numbers. |
| Method Summary | |
|---|---|
int |
compareTo(java.lang.Object o)
Compare two versions together according to the Comparable interface. |
boolean |
complies(Version other)
Check this Version against another for compliancy
(compatibility). |
boolean |
equals(java.lang.Object other)
Indicates whether some other object is "equal to" this Version . |
boolean |
equals(Version other)
Check this Version against another for equality. |
int |
getMajor()
Retrieve major component of version. |
int |
getMicro()
Retrieve micro component of version. |
int |
getMinor()
Retrieve minor component of version. |
static Version |
getVersion(java.lang.String version)
Parse a version out of a string. |
int |
hashCode()
Add a hashing function to ensure the Version object is treated as expected in hashmaps and sets. |
java.lang.String |
toString()
Overload toString to report version correctly. |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public Version(int major, int minor, int micro)
Version
object with the
specified version numbers.
major
- This Version
major number.minor
- This Version
minor number.micro
- This Version
micro number.| Method Detail |
|---|
public static Version getVersion(java.lang.String version) throws java.lang.NumberFormatException, java.lang.IllegalArgumentException
version
- The input version string
java.lang.NumberFormatException
- if an error occurs
java.lang.IllegalArgumentException
- if an error occurs
java.lang.NullPointerException
- if the provided string is null
public int getMajor()
public int getMinor()
public int getMicro()
public boolean equals(Version other)
Version
against another for equality.
If this Version
is compatible with the specified one, then
true is returned, otherwise false.
other
- The other Version
object to be compared with this
for equality.
Version
is compatible with the specified onepublic boolean equals(java.lang.Object other)
Version
.
Returns true if the other object is an instance of Version
and has the same major, minor, and micro components.
equals
in class java.lang.Object
other
- an Object
value
Version
public int hashCode()
hashCode
in class java.lang.Object
public boolean complies(Version other)
Version
against another for compliancy
(compatibility).
If this Version
is compatible with the specified one, then
true is returned, otherwise false. Be careful when using
this method since, in example, version 1.3.7 is compliant to version
1.3.6, while the opposite is not.
The following example displays the expected behaviour and results of version.
final Version v1 = new Version( 1, 3 , 6 ); final Version v2 = new Version( 1, 3 , 7 ); final Version v3 = new Version( 1, 4 , 0 ); final Version v4 = new Version( 2, 0 , 1 ); assert( v1.complies( v1 ) ); assert( ! v1.complies( v2 ) ); assert( v2.complies( v1 ) ); assert( ! v1.complies( v3 ) ); assert( v3.complies( v1 ) ); assert( ! v1.complies( v4 ) ); assert( ! v4.complies( v1 ) );
other
- The other Version
object to be compared with this
for compliancy (compatibility).
Version
is compatible with the specified onepublic java.lang.String toString()
toString
in class java.lang.Object
public int compareTo(java.lang.Object o)
Comparable
interface.
compareTo
in interface java.lang.Comparable
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |


Samsung Electronics is a South Korean company and a very trusted brand. With its cutting edge-technology and smart features Samsung mobile phones and Smartphone have become highly popular all around the world. Currently the Company Holds 1St Ranking in Top 10 Best Mobile Phone Brands in the World with 31.38% Global Market Share (as in 2019).
Apple Inc is one of the Top Electronic Companies in USA. It was the first company to launch the world’s first smartphone by the name of iPhone using its own Operating System named iOS. Currently the Company Holds 2Nd Ranking in Top 10 Best Mobile Phone Brands in the World with 22.4% Global Market Share (as in 2019).
Huawei is a Chinese Multinational Company and Manufacturers mobile phone devices for its own Brand. Currently, over 80% of the world’s top 50 telecom companies work with Huawei. Popular Huawei Mobile Phone and Smartphone Models are – Huawei P20 Pro, Huawei P20, Huawei P Smart (2019).


lineto
lineto(x, y)
The lineto() command must be called between beginpath() and endpath(). Draws a line between the current point in the path and a new destination point. The two parameters set the location of the new destination point.
|
beginpath(10,10)
lineto(40, 40)
lineto(80, 40)
endpath() |


Our Mission- we want to make you the team you always wanted to be.
Lot of words in a different language, but it is probably some type of mission statement.
Contact us, because you all need this.
General Information
333 Main St. Lake Geneva, WI 53147
555-555-5555
<EMAIL_ADDRESS>Chat with a Facilitator
555-555-5556
<EMAIL_ADDRESS>Contact
555-555-5555
hello@unplugged.com


class InternetTools
InternetTools
class contains different internet tools.
Public Instance Methods
get_IP()
click to toggle source
nslookup(url, customDNS="")
click to toggle source
This method returns hash containing dns lookup for a given url.
Params:¶ ↑
url (string) : URL fir which dns search is required customDNS (string) (optional) : Custom DNS, if query needs to be done from custome dns
Returns:¶ ↑
[Hash] : A hash containing lookup data is returned. Hash structure is as follows 1. First Key is 'server' which returns the DNS server which is being contacted. 2. Second Key is 'address' which returns the DNS server's physical address. 3. A hash containing DNS lookup index number wise.
# File lib/internet_tools.rb, line 17 def nslookup(url, customDNS="") query = "nslookup #{url} #{customDNS}" result = IO.popen(query).read().gsub("\t","").split("\n") output = {} output["server"] = result[0].split(":")[1] output["address"] = result[1].split(":")[1] # Finding start of addresses output["ip details"] = {} ip_index = 0 for ind in 2...result.length do if result[ind].start_with?("Name") == true ip_data = {} ip_data["name"] = result[ind].split(":")[1] ip_data["address"] = result[ind+1].split(":")[1..].join(":") output["ip details"][ip_index.to_s] = ip_data ip_index+=1 end end output end


1.2
domestic | structure | disproportionate collapse | 2010
mandatory
Every
building
must be designed and
constructed
in such a way that
in the event of damage occurring to any part of the structure of the
the
extent
of
any
resultant
collapse
will
not
be
disproportionate to the original cause.
All
buildings
must be designed to accommodate unforeseen or accidental
actions in such a way as to prevent the extent of any resulting collapse being
disproportionate to the cause of the collapse.
Buildings
should be designed
so that they are robust which is defined in BS EN-1991-1-7: 2006 as the
ability of a structure to withstand events like fire, explosions, impact or the
consequences of human error without being damaged to an extent
disproportionate to the original cause.
Nominal length of load-bearing wall
construction
should be taken as:
•
Explanation of terms
in the case of a reinforced concrete wall, the distance between lateral
supports subject to a length not more than 2.25 x
storey
height;
•
in the case of an external masonry wall, or timber or steel stud wall, the
length measured between vertical lateral supports;
•
in the case of an internal masonry wall, or timber or steel stud wall, a
length not more than 2.25 x
storey
height.
Storey
height
is the distance from the underside of one floor to the
underside of the floor immediately above.
Key element
is a structural member upon which the stability of the remainder
of the structure depends and should be capable of sustaining an accidental
design loading of 34 kN/m
2
applied in the horizontal and vertical directions (in
one direction at a time) to the member and any attached components such
as cladding, having regard to the ultimate strength of such components and
their connections. Such accidental design loading should be assumed to act
simultaneously with 1/3rd of all normal characteristic loading.
Load bearing wall
construction
includes masonry cross-wall
construction
and walls comprising close centred timber or lightweight steel section studs.
The protection to be afforded to the structure of a
building
when it is exposed
to the action of fire is dealt with by mandatory standard 2.3. The guidance
within section 2 refers to relevant codes that should be used for the design of
the structure in a fire.
Fire
In the case of conversions, as specified in regulation 4, the
building
as
converted
shall meet the requirements of this standard in so far as is
reasonably practicable
, and in no case be worse than before the
conversion
(regulation 12, schedule 6).
1.2
—
1.2.0
domestic | structure | disproportionate collapse | 2010
A
building
which is susceptible to disproportionate collapse is one where the
effects of accidents and, in particular, situations where damage to small
areas of a structure or failure of single elements could lead to collapse of
major parts of the structure.
Buildings
should be provided with a level of robustness by adopting the
principles of risk analysis, categorising
buildings
, taking into account both the
risk of the hazard and its consequences and providing additional measures
commensurate to the level of risk and consequences of such collapse of the
building.
The risk level and accidental actions that should be considered
when undertaking the structural design of a
building for disproportionate
collapse
should be in accordance with the recommendations of BS EN
1991-1-7:2006 or the method set out below.
Any reference to European Standards for Structure (Structural Eurocodes) in
this section must be taken to include the relevant UK National Annex.
To ensure that
buildings
are designed and
constructed
to sustain a limited
extent of damage or failure without a disproportionate level of collapse from
an unspecified cause, the following procedure should be followed:
•
determine
building
risk group;
•
assess additional measures;
•
design and
construct
additional measures.
1.2.2 Determine
building
risk group
The issues to be considered with respect to assessing the risk group of a
The risk of an extreme event such as an explosion or other incident occurring
would not be decreased simply by providing these measures and there is no
certainty that demolition or
building
alteration would be carried out in
accordance with good practice but the consequences of such an incident
occurring would be considerably reduced.
Risk
Group
Building
Type
1
Domestic garages and other small single leaf
buildings
not more
than 1
storey;
2A
Flats
and
maisonettes
not more than 4
storeys;
2B
Flats
and
maisonettes more
than 4
storeys
but not more than 15
3
Every
domestic building
not covered in Risk Groups 1, 2A and 2B.
The nomenclature of the Risk Groups 1, 2A, 2B and 3 are synonymous with
the consequence classes in Table A.1 – Categorisation of consequence
classes of BS EN 1991-1-7:2006.
In determining the number of
storeys
in a
building
,
basement storeys
may be
excluded provided such
basement storeys
fulfil the robustness of risk group
2B
buildings.
1.2.1
—
1.2.2
domestic | structure | disproportionate collapse | 2010
For
buildings
intended for more than one type of use the risk group should be
that pertaining to the most onerous Risk Group.
The additional measures which should be provided vary extensively
according to
building
type and use and the actual measures should be
designed in accordance with the relevant sections of the design codes. For
example, high rise hotels or
flats
or
assembly buildings
or grandstands
require a different level of robustness than low rise
buildings
or storage
The additional measures which should be applied to
buildings
of the risk
groups derived from the above table are set out below:
No additional measures are likely to be necessary when the
building
has
been designed and
constructed
in accordance with the rules given in this
Technical Handbook, or other guidance referenced under section 1, for
complying with standard 1.1 in normal use.
For risk group 1
Provide effective horizontal ties, or effective anchorage of suspended floors
to walls, for framed and load-bearing wall
construction
.
For risk group
2A
buildings
Provide effective horizontal ties for framed and load-bearing wall
construction
, together with effective vertical ties, in all supporting columns
and walls.
For risk group
2B
buildings
Alternatively, check that upon the notional removal of each supporting
column and each beam supporting one or more columns, or any nominal
collapse should be not more than 15% of the floor area of that
storey
or 100 m
2
, whichever is the less and does not extend further than the
immediate adjacent
storeys
(see diagram below).
Where the notional removal of such columns and lengths of walls would
result in an extent of damage in excess of the above limit, then such
elements should be designed as ‘key elements’.
1.2.2
—
1.2.3
domestic | structure | disproportionate collapse | 2010
A systematic risk assessment of the
building
should be carried out, taking
into account all the normal hazards that can be foreseen as far as possible
together with any abnormal hazards.
For risk group 3
Critical situations for design should be selected that reflect the conditions that
can be foreseen as far as possible during the life of the
building
.
The structural form and concept and any protective measures should then be
chosen and the detailed design of the structure and its elements undertaken
in accordance with the recommendations in the codes and standards in
clause 1.2.4.
1.2.4 Design and
construct
additional measures
The structural design and
construction
should take account of the additional
measures including horizontal and vertical ties where appropriate and
checking the integrity of the
building
following the notional removal of vertical
members and the design of key elements, should be carried out in
accordance with the design recommendations contained in Annex A of BS
EN 1991-1-7 2006.
Other sources of guidance
More
detailed
information
has
been
produced
by
organisations
on
disproportionate collapse as follows:
a. Technical Guidance Note – ‘The Building Regulations 2004 Edition –
England and Wales Requirement A3 – Disproportionate Collapse’,
National House Building Council (NHBC);
b. Technical Bulletin Number 3 ‘Design Guidance for Disproportionate
Collapse’, UK Timber Frame Association;
c. ‘Masonry Design for Disproportionate Collapse Requirements under
Regulation A3 of the Building Regulations (England & Wales)’ , Brick
Development Association;
d. 'Guidance on meeting the Robustness Requirements in Approved
Document A', Steel Construction Institute;
e. 'How to design concrete buildings to satisfy disproportionate collapse
requirements',
The Concrete Centre.
The above guidance is based on England & Wales Regulation A3 and should
be interpreted in relation to standard 1.2. In particular, references to
building
classes should be risk groups and the
building
types and occupancy should
be interpreted as the
building
types set out in the table to clause 1.2.2.
1.2.3
—
1.2.5


Accordion Crimes spans a century and a continent. The novel illuminates the lives of the founders of the U.S.A., descendants of Mexicans, Poles, Irish, etc., all linked by the accordian.
It was as if his eye were an ear and a crackle went through it each time he shot a look at the accordion. The instrument rested on the bench, lacquer gleaming like wet sap.


|
Webrtc Unity Plugin
v01
Cross-platform Webrtc support for Unity apps ☁🎲
|
Public Member Functions | |
| void | ClosePeerConnection () |
| Close the peer connection More... | |
| int | GetUniqueId () |
| Get the unique id More... | |
| void | AddStream (bool audioOnly) |
| Add a stream More... | |
| void | AddDataChannel () |
| Add a data channel More... | |
| void | CreateOffer () |
| Create an sdp offer More... | |
| void | CreateAnswer () |
| Create an sdp answer More... | |
| void | SendDataViaDataChannel (string data) |
| Send data via the created data channel More... | |
| void | SetAudioControl (bool isMute, bool isRecord) |
| Adjust audio controls More... | |
| void | SetRemoteDescription (string type, string sdp) |
| Set the remote stream description More... | |
| void | AddIceCandidate (string candidate, int sdpMlineindex, string sdpMid) |
| Add an ice candidate More... | |
| void UnityWebrtc.IPeerImpl.AddDataChannel | ( | ) |
Add a data channel
Implemented in UnityWebrtc.WebrtcPeerEvents.
| void UnityWebrtc.IPeerImpl.AddIceCandidate | ( | string | candidate, |
| int | sdpMlineindex, | ||
| string | sdpMid | ||
| ) |
Add an ice candidate
| candidate | sdp candidate data |
| sdpMlineindex | sdp mline index |
| sdpMid | sdp mid |
Implemented in UnityWebrtc.WebrtcPeerEvents.
| void UnityWebrtc.IPeerImpl.AddStream | ( | bool | audioOnly | ) |
Add a stream
| audioOnly | flag indicating if the stream should only contain audio |
Implemented in UnityWebrtc.WebrtcPeerEvents.
| void UnityWebrtc.IPeerImpl.ClosePeerConnection | ( | ) |
Close the peer connection
Implemented in UnityWebrtc.WebrtcPeerEvents.
| void UnityWebrtc.IPeerImpl.CreateAnswer | ( | ) |
Create an sdp answer
Implemented in UnityWebrtc.WebrtcPeerEvents.
| void UnityWebrtc.IPeerImpl.CreateOffer | ( | ) |
Create an sdp offer
Implemented in UnityWebrtc.WebrtcPeerEvents.
| int UnityWebrtc.IPeerImpl.GetUniqueId | ( | ) |
| void UnityWebrtc.IPeerImpl.SendDataViaDataChannel | ( | string | data | ) |
Send data via the created data channel
Must call AddDataChannel first
| data | data to send |
Implemented in UnityWebrtc.WebrtcPeerEvents.
| void UnityWebrtc.IPeerImpl.SetAudioControl | ( | bool | isMute, |
| bool | isRecord | ||
| ) |
Adjust audio controls
| isMute | is the stream muted |
| isRecord | is the stream recording data |
Implemented in UnityWebrtc.WebrtcPeerEvents.
| void UnityWebrtc.IPeerImpl.SetRemoteDescription | ( | string | type, |
| string | sdp | ||
| ) |
Set the remote stream description
Known valid types are "answer" and "offer"
| type | description type |
| sdp | sdp data |
Implemented in UnityWebrtc.WebrtcPeerEvents.


rotten > Library > Crime > Prison > Abu Ghraib
Abu Ghraib
aka Abu Ghurayb, Abu Grhaib
The White House really wants you to know all about the atrocities that happened at Abu Ghraib... all of the ones that happened before 2003.
The White House's Web site features a charming little page called Tales of Saddam's Brutality. Posted in September 2003, the idea behind the page was simple: Overwhelm people with visceral stories of evil Saddam Hussein, in order to prop up an increasingly unpopular invasion of Iraq that was originally based on the idea that Saddam was hoarding weapons of mass destruction.
By fall 2003, it was starting to look like those weapons were never going to show up, so the Bush administration began unsubtly revising history to reflect the fact that the U.S. went into Iraq to get rid of "a bad man."
After all, no one in George Bush's America would dare suggest that the Iraqi people weren't better off with Saddam out of the way. And Saddam and Sons were indeed pretty atrocious, in the strictly literal sense of authoring atrocities.
Indeed, the evidence was all there, in the Tales. Perhaps they finally learned their lesson about taking information from the CIA, because the Tales were all carefully culled from newspaper and media reports:
"We visited the notorious Abu Gehb (sic) Prison outside Baghdad and found written records of prisoners being executed by being put through mincing machines."
"Saddam Hussein never cut corners when it came to punishment. Abu Ghraib once held tens of thousands of human souls -- criminals, political enemies, and those who just happened to get in the way. A 12-year-old Iranian boy visiting his grandmother near Basra in 1985 was swept up in an Iraqi invasion. He was still here 15 years later."
"I saw three guards beat a man to death with sticks and cables," one prisoner remembered. "When they got tired, the guards would switch with other guards. I could only watch for a minute without getting caught, but I heard the screams, and it went on for an hour."
"Our hands were tied like this. First the left hand and then the foot. Then a
black hood on my head, then they applied electricity."
The last entry is particularly piquant in light of the picture (right) showing U.S. soldiers doing exactly the same thing to an Iraqi prisoner.
Abu Ghraib (pronounced "grayb") is a sprawling 280-acre gulag, complete with sniper towers and razor wire, dungeons and the stench of human fear.
According to U.S. State Department propaganda released in April 2003 to justify the march toward war, Saddam killed 4,000 prisoners at the institution in 1984, and executed fewer 50 political prisoners there between 2000 and 2001. You'd think that this represented progress, but to the U.S. it was a reason to invade (retroactively).
Based on all this copious evidence of brutality at Abu Ghraib, the moral case for getting rid of Saddam seemed like a "slam dunk," as George Tenet might say. What could possibly go wrong?
"No one can argue that the Iraqi people would be better off with the thugs and murderers back in the palaces," Bush said as recently as March 2004, by which time he should have known better. Because two months earlier, the other shoe had dropped.
When the U.S. came storming into the country in spring of 2003, Abu Ghraib was left a smoldering ruin, looted by the local populace as the Saddam regime disintegrated. The Americans came in and thought to themselves, "Hey, wouldn't it be great if we used this ghoulish house of horrors for our own prison?" You can almost imagine them thinking to themselves, "Gee, then people will see how much better we are than those lousy Baathists!"
Actually, you need not imagine it. When the prison made its debut as an American institution, Gen. Janis Karpinski came right out and said it. "Living conditions (for the prisoners) now are better in prison than at home. At one point we were concerned that they wouldn't want to leave,Ē the general boasted.

The prison had held a peak population of around 15,000 under Saddam. The Americans humanely reduced that number to about 5,000. And in place of Saddam's humiliation and torture, the Americans humanely substituted... Well, more humiliation and torture.
According to a "for internal use only" army report, from October to December 2003, U.S. soldiers performed a laundry list of degrading abuses on prisoners at Abu Ghraib. The report offers up the most hardcore details in a U.S. government document since the Starr Report, only much, much uglier. It's hard to actually appreciate the severity of what happened from the sound bites on the evening news (although the pictures get it across pretty well). For a sense of scale, however, try reading the complete list. And remember, this is just what the military could confirm as having happened:
a.  (S) Videotaping and photographing naked male and female detainees;
c. (S) Forcibly arranging detainees in various sexually explicit positions for
photographing;
d. (S) Forcing detainees to remove their clothing and keeping them naked for several days at a time;
e. (S) Forcing naked male detainees to wear women's underwear;
f. (S) Forcing groups of male detainees to masturbate themselves while being
photographed and videotaped;
g.   (S) Writing "I am a Rapest" (sic) on the leg of a detainee alleged to have forcibly raped a 15-year old fellow detainee, and then photographing him naked;
j. (S) Placing a dog chain or strap around a naked detainee's neck and having a
female Soldier pose for a picture;
k.  (S) Using military working dogs (without muzzles) to intimidate and frighten
detainees, and in at least one case biting and severely injuring a detainee;
m. (S) Taking photographs of dead Iraqi detainees.
a. (U) Breaking chemical lights and pouring the phosphoric liquid on detainees;
b. (U) Threatening detainees with a charged 9mm pistol;
c. (U) Pouring cold water on naked detainees;
d. (U) Beating detainees with a broom handle and a chair;
e. (U) Threatening male detainees with rape;
f. (U) Allowing a military police guard to stitch the wound of a detainee who was
injured after being slammed against the wall in his cell;
g. (U) Sodomizing a detainee with a chemical light and perhaps a broom stick.
h. (U) Using military working dogs to frighten and intimidate detainees with threats of attack, and in one instance actually biting a detainee.
According to the report, which is a summary of the military's internal investigation of the abuses, soldiers testified that they had been ordered to abuse the prisoners, to prepare them for interrogation.
These orders allegedly came from both military intelligence officers and civilian consultants -- members of that class of Iraq warrior ever-so-euphemistically referred to as "private contractors," which is Pentagon-speak for paid mercenaries and "security" experts.
Perhaps needless to say, whatever orders the servicemen and women received with respect to "softening up" the prisoners for interrogation, it's highly unlikely that anyone ordered them to take the garish, jackal-grinning snapshots that have earned them a permanent place in the archives of disturbing illustration.
Needless to say, this uniquely American problem required a uniquely American response. The first impulse, as always, was to cover it up. So the military commissioned a report on the abuses, secretly reassigned and charged several enlisted people who had allegedly taken part in the abovementioned sadistic acts. The commanders were discreetly reprimanded and reassigned. The contractors... Well, nothing was done to the contractors, who may actually escape without any punishment, since it's possible there isn't a law with jurisdiction over their activities. Isn't that convenient?
Unfortunately, there was the little matter of the report. And the pictures. Especially the pictures.
It's really, really hard to imagine how someone could think it was a good idea to document this activity, but then it's pretty clear from the pictures that we aren't exactly dealing with the intellectual elite of the Iraqi prison system. (Among other clues, they misspelled "rapist" at least two different ways when they were scrawling it on the bodies of their victims with magic marker.)
In the snapshots, smirking soldiers gawk and point at the genitalia of naked Iraqi men.  In others, they're just piled on top of each other. In almost all the pictures released to date, they're naked. According to news media reports, there are probably more pictures which have yet to surface.
The report itself was pretty newsworthy, but the pictures ensured that the story would go large. Despite what would seem like an obvious concern, the Army sat on the report and did nothing about it for months -- not even after they knew the media was preparing to publish the photos.
For two weeks, 60 Minutes II even held off running the story at the request of General Richard Myers, chairman of the Joint Chiefs of Staff. What did Myers do during those two weeks? On the surface, it appears he did nothing at all to prepare for the coming PR crisis... But then, maybe he was making the other, really bad photos that no one knows about disappear.
We leave it to the reader to judge what kind of news organization holds off on publishing an expose of the Army at the Army's request, but CBS agreed to delay its broadcast for two weeks. The New Yorker rang in hard on the heels of the CBS report with an incredibly detailed and damaging story that featured extensive excerpts from the report quoted above.
It's still too early to know where the buck is going to stop on this story, but the odds are very good that the scandal has only just begun. Since the story came out, a slew of new stories have broken with claims that U.S. captors have murdered at least two prisoners. (That's not an editorial opinion; the army characterizes the deaths as "homicides.") And a Senate inquiry panel is already in the works, which means lots of big, fat, ugly, televised hearings.
Almost a week after the 60 Minutes report broke, Donald Rumsfeld incredibly told reporters that he hadn't even read the Army's own report on the incident, which should tell you exactly how pathetic this is going to get before it's all over. Also among those who were claiming they hadn't read the report during the first week of the public crisis are President Bush, the commander of the Army in Iraq and General Myers, the same guy who begged 60 Minutes II not to run the photos a month ago.
UPDATE: On Friday, May 7, 2004, Rumsfeld told a Senate panel that videotapes of the abuse at Abu Ghraib also exist. According to the New Yorker's Sy Hersh, the tapes include footage of male minor prisoners being raped. Senator Lindsey Graham told reporters after the session that additional allegations of "rape and murder" are forthcoming. You might want to settle in for a long, election-cycle scandal, the likes of which this nation has never seen...
External link: Tales of Saddam's Brutality at whitehouse.gov
Timeline
| 1984 |
According to statistics furnished by the White House, a total of 4,000 Iraqis are summarily executed at Abu Ghraib on orders of Saddam Hussein. |
| Feb-Mar 2000 |
According to statistics furnished by the White House, a total of 120 Iraqi political prisoners are executed at Abu Ghraib on orders of Saddam Hussein. |
| Oct 2001 |
According to statistics furnished by the White House, 23 Iraqi political prisoners are executed at Abu Ghraib on orders of Saddam Hussein. |
| Jun 2003 |
The Army assigns Brigadier General Janice Karpinski to oversee Abu Ghraib prison, which has been renamed the Baghdad Central Correctional Facility. |
| Sep 2003 |
Brigadier General Janice Karpinski gives a tour of the Abu Ghraib prison facility to Defense Secretary Donald Rumsfeld. She points out that Saddam Hussein used the prison to torture his enemies, whereas the Americans don't. |
| Oct 2003 |
During an interview at Abu Ghraib prison with 60 Minutes correspondent Steve Kroft, Brigadier General Janice Karpinski declares: "This is international standards. It's the best care available for -- in a prison facility." |
| 8 Oct 2003 |
At a Republican party gala at the Washington Hilton, President George W Bush proclaims: "Iraq is free of rape rooms and torture chambers." |
| 6 Nov 2003 |
After receiving uncomfortable Red Cross reports regarding abuses in the Abu Ghraib Prison, the U.S. military responds by issuing new requirements that appointments be made before any inspections to the particular cellblocks in which the worst abuses occurred. Note that by the rules of the Geneva Conventions, the Red Cross may visit any part of the prison without any prior notification. [The New York Times, 19 May 2004.] |
| 14 Dec 2003 |
During an interview at Abu Ghraib prison with a St. Petersburg Times reporter, Brigadier General Janice Karpinski declares: "Living conditions now are better in prison than at home... At one point we were concerned they wouldn't want to leave." |
| 14 Jan 2004 |
Military investigators question Army Reserves Staff Sgt. Ivan "Chip" Frederick regarding his role in the Abu Ghraib incidents. As a reservist, Frederick has a civilian job back home in Virginia, where he worked for six years as a state prison guard at Buckingham Correctional Center. |
| 29 Apr 2004 |
CBS television broadcasts photographs taken of Iraqi prisoners being mindfucked and sexually humiliated at the hands of US troops in Abu Ghraib prison. "60 Minutes II has a dozen of these pictures, and there are many more -- pictures that show Americans, men and women in military uniforms, posing with naked Iraqi prisoners." |
| 29 Apr 2004 |
A reporter for the Baltimore Sun shows some of the Abu Ghraib photos to Terrie England, who immediately recognizes her daughter Lynndie R. England as one of the soldiers. The mother then dismisses what she sees in the pictures as nothing more than "stupid kid things -- pranks." |
| 30 Apr 2004 |
During a photo op in the White House rose garden with Canadian Prime Minister Paul Martin, President George W Bush insists: "Their treatment does not reflect the nature of the American people. That's not the way we do things in America. And so I -- I didn't like it one bit." |
| 30 Apr 2004 |
During a briefing with the White House press corps, spokesman Scott McClellan thwarts a reporter's attempts to ascertain when the President first learned of the crimes:
| REPORTER: |
How long has the President been aware of the evidence of prisoner abuse at Abu Ghraib prison? |
| MCCLELLAN: |
Well, there were allegations that go back quite some time here, Terry. And that's why you already have the military pursuing some criminal charges against some individuals. |
| REPORTER: |
Had the President seen these photographs before two nights ago? |
| MCCLELLAN: |
I don't know the exact time when he saw the photographs. I mean, they've certainly been in the media the last couple of days. |
|
| 30 Apr 2004 |
The New Yorker runs a piece by Seymour Hersh detailing other abuses at Abu Ghraib. |
| 6 May 2004 |
Radio commentator Rush Limbaugh dismisses the photos taken of naked prisoners at Abu Ghraib prison, saying: "This is no different than what happens at the Skull and Bones initiation." |
| 7 May 2004 |
Testifying before a Senate panel, Donald Rumsfeld confirms that videotapes of abuses at Abu Ghraib have yet to be released, as well as numerous additional photos. Also extant are videotapes taken by U.S. soldiers of Iraqi guards raping young boys. |
| 12 May 2004 |
A "secret room" at the U.S. Senate becomes an adult theatre between the hours of 2 and 5 PM as unreleased torture pictures, forced-sodomy pictures, and numerous sex pictures allegedly involving Lynndie England are displayed to Congressmen in a government slide show.
|
| 14 May 2004 |
Piers Morgan, editor of England's Daily Mirror newspaper, steps down after criticism over that publication's printing of Abu Ghraib style "torture photos" which actually originated on porn sites created by spammers during the early days of the Afghan and Iraq Wars. Another publication fooled by similar photos was the Boston Globe.
|
| 21 May 2004 |
In an interview with Australia's 60 Minutes, Deputy Secretary of State Richard L. Armitage declares: "If you're talking about Abu Ghraib and the abuse there, it doesn't intrigue me at all; it horrifies me. And it seemed to me that we had a command climate there that was conducive to this kind of bad behavior. And nobody was taking normal corrective actions, no one was exercising command, and I find that a horrifying specter and I couldn't be angrier about it, and I couldn't be sorrier about it."
|
| 24 May 2004 |
In a speech at the Army War College in Carlisle, Pennsylvania, President George W Bush announces: "A new Iraq will also need a humane, well-supervised prison system. Under the dictator, prisons like Abu Ghraib were symbols of death and torture. That same prison became a symbol of disgraceful conduct by a few American troops who dishonored our country and disregarded our values. America will fund the construction of a modern maximum security prison. When that prison is completed, detainees at Abu Ghraib will be relocated. Then, with the approval of the Iraqi government, we will demolish the Abu Ghraib Prison as a fitting symbol of Iraq's new beginning."
|
| 24 May 2004 |
See no evil: Donald Rumsfeld bans the use of cameras by the U.S. Military in Iraq. |
| 10 Jun 2004 |
During a press conference at the G8 Summit, President Bush is asked to clarify his administration's policies toward torture:
| REPORTER: |
Returning to the question of torture, if you knew a person was in U.S. custody and had specific information about an imminent terrorist attack that could kill hundreds or even thousands of Americans, would you authorize the use of any means necessary to get that information and to save those lives? |
| BUSH: |
Jonathan, what I've authorized is that we stay within U.S. law. |
|
[...] |
| REPORTER: |
Mr. President, I wanted to return to the question of torture. What we've learned from these memos this week is that the Department of Justice lawyers and the Pentagon lawyers have essentially worked out a way that U.S. officials can torture detainees without running afoul of the law. So when you say that you want the U.S. to adhere to international and U.S. laws, that's not very comforting. This is a moral question: Is torture ever justified? |
| BUSH: |
Look, I'm going to say it one more time. If I -- maybe -- maybe I can be more clear. The instructions went out to our people to adhere to law. That ought to comfort you. We're a nation of law. We adhere to laws. We have laws on the books. You might look at those laws, and that might provide comfort for you. And those were the instructions out of -- from me to the government. |
|
| 26 Aug 2004 |
During a stop in Phoenix, Arizona, Defense Secretary Donald Rumsfeld grants an interview to Real Life with David Leibowitz on KTAR-AM 620. Regarding the findings of the most recent report on the Abu Ghraib scandal, Rumsfeld denies that any abuses occurred during interrogations:
| RUMSFELD: |
I think the interesting thing about the Schlesinger Panel is there a conclusion that, in fact, the abuses seem not to have anything to do with interrogation at all and any suggestion to the contrary, it would seem to me, would be incorrect given what we know at the present time, as a result of their report. These were apparently acts of abuse that took place not in the context of interrogating people[...] |
| LEIBOWITZ: |
But doesnít the report indicate that there are military intelligence officers, 27 of them involved here and civilian contractors and of course, some of these abuses happened under interrogation circumstances? |
| RUMSFELD: |
Thatís not the report of the Schlesinger Panel.† In fact, itís exactly the opposite of what the Schlesinger Panel says. |
Actually, if you somehow manage to read all the way down to sentence 5 of paragraph 1 in the report, you'll find this: "[W]e do know that some of the egregious abuses at Abu Ghraib which were not photographed did occur during interrogation sessions and that abuses during interrogation sessions occurred elsewhere."
|
Pornopolis |
Rotten |
Faces of Death |
Famous Nudes
|