| 1 |
Singh_2006 |
Antifungal anthraquinones from Saprosma fragrans |
Singh, D.N.; Verma, N.; Raghuwanshi, S.; Shukla, P.K.; Kulshreshtha, D.K. |
2006 |
2006-09-01 |
PMC |
N |
PMC7126606 |
16824761.0 |
10.1016/j.bmcl.2006.06.027 |
y28grh7a |
0.857108 |
Lans_2007, Lim_T_2015, Ali_M_2017, Knipping_2012 |
Xie_J_2018 |
| 2 |
Lei_Q_2015 |
In silico target fishing and pharmacological profiling for the isoquinoline alkaloids of Macleayacordata (Bo Luo Hui) |
Lei, Qifang; Liu, Haibo; Peng, Yong; Xiao, Peigen |
2015 |
2015-12-17 |
COMM-USE |
N |
PMC4683977 |
26691584.0 |
10.1186/s13020-015-0067-4 |
rp0hmqr3 |
0.759057 |
Xu_X_2016, WU_L_2015 |
Cao_Z_2013, Nie_L_2020, Xuan_2016 |
| 3 |
Hu_J_2016 |
Limonoids isolated from Toona sinensis and their radical scavenging, anti-inflammatory and cytotoxic activities |
Hu, Jiang; Song, Yan; Mao, Xia; Wang, Zhen-Ji; Zhao, Qin-Jie |
2016 |
2016-01-31 |
PMC |
N |
PMC7104945 |
|
10.1016/j.jff.2015.10.009 |
241016sg |
0.706745 |
Xu_X_2016, Ali_M_2017, Chia_2010 |
Lee_C_2020, Park_2017 |
| 4 |
Powers_2016 |
An In-Silico Investigation of Phytochemicals as Antiviral Agents Against Dengue Fever |
Powers, Chelsea N.; Setzer, William N. |
2016 |
2016-08-23 |
NONCOMM |
N |
PMC5411999 |
27151482.0 |
10.2174/1386207319666160506123715 |
q7thhtg3 |
0.682984 |
SU_Y_2016, Xu_X_2016, WU_L_2015 |
Nie_L_2020, Xuan_2016 |
| 5 |
Tayarani-Najaran_2011 |
Analyzing Cytotoxic and Apoptogenic Properties of Scutellaria litwinowii Root Extract on Cancer Cell Lines |
Tayarani-Najaran, Zahra; Emami, Seyed Ahmad; Asili, Javad; Mirzaei, Alireza; Mousavi, Seyed Hadi |
2011 |
2011-03-09 |
COMM-USE |
N |
PMC3094709 |
20028719.0 |
10.1093/ecam/nep214 |
ww6uedar |
0.660762 |
|
Chathuranga_2019, Adnan_2019, Park_2017 |
| 6 |
TANG_2017 |
Identification of C-geranylated flavonoids from Paulownia catalpifolia Gong Tong fruits by HPLC-DAD-ESI-MS/MS and their anti-aging effects on 2BS cells induced by H2O2 |
TANG, Wen-Zhao; WANG, Ying-Ai; GAO, Tian-Yang; WANG, Xiao-Jing; ZHAO, Yun-Xue |
2017 |
2017-05-31 |
PMC |
N |
PMC7130034 |
28558874.0 |
10.1016/s1875-5364(17)30059-6 |
1x0bb513 |
0.641402 |
Xu_X_2016, Chathuranga_2019, WU_L_2015, Farag_2014 |
Lee_C_2020, Nie_L_2020, Xie_J_2018 |
| 7 |
Yang_2013 |
Discovery and antitumor activities of constituents from Cyrtomium fortumei (J.) Smith rhizomes |
Yang, Shengjie; Liu, Mingchuan; Liang, Na; Zhao, Qi; Zhang, Yuping; Xue, Wei; Yang, Song |
2013 |
2013-02-04 |
COMM-USE |
N |
PMC3574041 |
23379693.0 |
10.1186/1752-153x-7-24 |
u6strrib |
0.627653 |
|
Yang_2014, Lee_C_2020, Zhang_2008, Nie_L_2020 |
| 8 |
HUANG_2013 |
A new Amaryllidaceae alkaloid from the bulbs of Lycoris radiata |
HUANG, Sheng-Dian; ZHANG, Yu; HE, Hong-Ping; LI, Shi-Fei; TANG, Gui-Hua; CHEN, Duo-Zhi; CAO, Ming-Ming; DI, Ying-Tong; HAO, Xiao-Jiang |
2013 |
2013-07-31 |
PMC |
N |
PMC7129748 |
23845551.0 |
10.1016/s1875-5364(13)60060-6 |
1flxylyn |
0.622332 |
Powers_2016 |
Ren_Z_2010, Xie_J_2018 |
| 9 |
Yang_2014 |
Antiproliferative and apoptosis inducing effect of essential oil extracted from Cyrtomium fortumei (J.) Smith leaves |
Yang, Shengjie; Liu, Mingchuan; Zhao, Qi; Zhao, Hongju; Xue, Wei; Yang, Song |
2014 |
2014-09-04 |
PMC |
N |
PMC7079878 |
|
10.1007/s00044-014-1244-1 |
9ayg1tv0 |
0.612184 |
|
Lee_C_2020, Yang_2013, Park_2017, Tayarani-Najaran_2011 |
| 10 |
Bastida_2006 |
Chapter 3 Chemical and Biological Aspects of Narcissus Alkaloids |
Bastida, Jaume; Lavilla, Rodolfo; Viladomat, Francesc |
2006 |
2006-12-31 |
PMC |
N |
PMC7118783 |
17133715.0 |
10.1016/s1099-4831(06)63003-4 |
9srbnqa7 |
0.571526 |
WU_L_2015, SU_Y_2016, Xu_X_2016 |
Cao_Z_2013, Xuan_2016, Dey_P_2020 |
| 11 |
Wu_J_2014 |
Chemical composition, antimicrobial activity against Staphylococcus aureus and a pro-apoptotic effect in SGC-7901 of the essential oil from Toona sinensis (A. Juss.) Roem. leaves |
Wu, Jian-Guo; Peng, Wei; Yi, Jun; Wu, Yan-Bin; Chen, Ti-Qiang; Wong, Ka-Hing; Wu, Jin-Zhong |
2014 |
2014-05-28 |
PMC |
N |
PMC7126815 |
24726685.0 |
10.1016/j.jep.2014.04.002 |
xfq5l4ww |
0.564873 |
|
Nie_L_2020, Lee_C_2020, YANG_2015 |
| 12 |
Lee_C_2020 |
IL-17A inhibitions of indole alkaloids from traditional Chinese medicine Qing Dai |
Lee, Chia-Lin; Wang, Chien-Ming; Kuo, Yueh-Hsiung; Yen, Hung-Rong; Song, Ying-Chyi; Chou, Yu-Lun; Chen, Chao-Jung |
2020 |
2020-06-12 |
PMC |
N |
|
32194230.0 |
10.1016/j.jep.2020.112772 |
tjydn8k2 |
0.562998 |
|
Shingnaisui_2018, Park_2017, Zhao_2018 |
| 13 |
Teoh_2015 |
Secondary Metabolites of Plants |
Teoh, Eng Soon |
2015 |
2015-11-05 |
PMC |
N |
PMC7123774 |
|
10.1007/978-3-319-24274-3_5 |
xmhgzuob |
0.560171 |
Xu_X_2016, Zakaryan_2017, Gouda_2016 |
Cao_Z_2013, Koirala_2017, Xuan_2016, Lee_C_2020 |
| 14 |
Ibrahim_2017 |
Anti-oxidant and Anti-Inflammatory Cyclic Diarylheptanoids from Alnus japonica Stem Bark |
R.M. Ibrahim, Sabrin; A. Mohamed, Gamal; I. M. Khedr, Amgad; M. Aljaeid, Bader |
2017 |
2017-01-01 |
COMM-USE |
N |
PMC5963649 |
29844779.0 |
|
hbhunygk |
0.489307 |
|
Park_2017, Cheng_2014 |
| 15 |
Chia_2010 |
Anti-Neoplastic Effects of Gallic Acid, a Major Component of Toona sinensis Leaf Extract, on Oral Squamous Carcinoma Cells |
Chia, Yi-Chen; Rajbanshi, Ranjan; Calhoun, Colonya; Chiu, Robert H. |
2010 |
2010-11-16 |
COMM-USE |
N |
PMC6259246 |
21081858.0 |
10.3390/molecules15118377 |
4ryrvsl1 |
0.484973 |
|
Tayarani-Najaran_2011 |
| 16 |
Kim_S_2007 |
Cytoprotective Activity of Glycyrrhizae radix Extract Against Arsenite-induced Cytotoxicity |
Kim, Sang Chan; Park, Sook Jahr; Lee, Jong Rok; Seo, Jung Cheol; Yang, Chae Ha; Byun, Sung Hui |
2007 |
2007-03-25 |
NONCOMM |
N |
PMC2396482 |
18604262.0 |
10.1093/ecam/nem014 |
0c5p8sjk |
0.428798 |
|
Park_2017, Tayarani-Najaran_2011, Lee_C_2020 |
| 17 |
Isoe_1995 |
Progress in the synthesis of iridoids and related natural products |
Isoe, Sachihiko |
1995 |
1995-12-31 |
PMC |
N |
|
|
10.1016/s1572-5995(06)80055-4 |
st1djxx6 |
0.427283 |
WU_L_2015, SU_Y_2016, Seki_2015, Mugford_2012 |
Teoh_2015, Xuan_2016 |
| 18 |
Šafář_2016 |
Use of chiral-pool approach into epi-thieno analogues of the scarce bioactive phenanthroquinolizidine alkaloids |
Šafář, Peter; Marchalín, Štefan; Prónayová, Nadežda; Vrábel, Viktor; Lawson, Ata Martin; Othman, Mohamed; Daïch, Adam |
2016 |
2016-06-09 |
None |
N |
PMC7111795 |
|
10.1016/j.tet.2016.04.047 |
3po8e5s7 |
0.414134 |
|
|
| 19 |
Kuang_2011 |
Three New Cycloartenol Triterpenoid Saponins from the Roots of Cimicifuga simplex Wormsk |
Kuang, Haixue; Su, Yang; Yang, Bingyou; Xia, Yonggang; Wang, Qiuhong; Wang, Zhibin; Yu, Zhengfan |
2011 |
2011-05-25 |
COMM-USE |
N |
PMC6264577 |
21613976.0 |
10.3390/molecules16064348 |
trt6s1wp |
0.313267 |
SU_Y_2016, WU_L_2015 |
Xie_J_2018, HUANG_2013 |


This article summarises the journy of QGraph, the company I co-founded with Sachin Bansal, and finally sold to Appier.
Reasons for writing this article are two fold. Firstly, it serves as a "note to self". I have seen that unless you write down something, you tend to forget even the most important points of your work as years and decades roll by. It has happened to me more than once that I started to describe to someone a project that I did at VMware (~2005-2008) or Vizury (~2011-2014), and I got stuck in the middle. I was aghast at the inability to recall some basic points of the project to which I gave my full attention for months or years at some point of time. My memories of QGraph have already started fading, and I would like to write them to be able to refer them in future.
Secondly, it may serve as a lesson for aspiring entrpreneurs. We did several smart things and severl dumb things and one can learn from both of them. We often read stories of big successes, startups which raise hundres of millions of dollars. Those are few in number. Much more frequent are companies whose outcomes are much more modest, but their stories are more relevant to most startups.
Before we proceed, some caveats are in order. One, while I have tried to be candid and present a true account, I have deliberatly omitted some details. These details are mostly such that they throw some persons in bad light. I have changed the names of all the persons except mine and Sachin's. Those who worked with us will immediately recognise mapping from invented names to actual people.
There is another caveat: this is loooong article. I have got side tracked at several places. I hope you still like it.
During 2014, I was working at Vizury. There was always an itch in the mind that at some point I should try start something on my own. Why? I am unable to pinpoint at the reason. It is a combination of several factors. Most companies that we work for in tech industry were all started not too long ago by people who were not out-of-the-world, I could also test out the water and see I can create something. The downside is limited, since if things don't work out, one can always go back to some other company, and the experience having run a startup should be useful. The upside can be quite large if one is lucky. There is one theory that you should minimise regret. If you don't do a startup you might feel regretful later on for not having tried. If you try and fail you will know that you are not competent, and will learn something in process.
There was another, a bit philosophical reason why I wanted to do a startup. When I work in any decent sized company, I am separated from the end customer. I work on abstract software engineering problems. I can see that the problem that I working on does help the customer, but I am not directly selling a product that I made. Like a roadside chatwala who makes something and sell it, I wanted to make some softwere and sell it. Such a way of working: making something and selling it has its disadvangates. You need to work across functions: creation of the product, sales of the product, marketing of the product, hiring the team, getting the investors and so on. So, your skill set becomes more generalized rather than specialized. That leads to diseconomies of scale compared to a big company where everyone works in a niche area. But then, big companies have their own set of disadvantages. At any rate, this "make something and sell it" had a feeling of purity to it.
I will explain that a bit. There are many situations in world where we want to measure a metric M, but since there is no way to measure the metric M, we measure some easily measurable proxy metric P instead. Now, people start gaming the system and start chasing P rather than M. It is the job of the desginers of the system to ensure that higher P should mean better competency in M. Let's see some examples.
Goal of engineering education is to produce best possible engineers. That is M. To do that we set up examinations and the marks that you get in examinations are made important by the system, by ensuring that you can better jobs, or better chance for higher education if you have better grades. Marks are proxy metric P. Now students are incentivised to study for grades rather for knowledge. They may resort to activities like cheating, or looking at past year papers which improve their grades with little effort, though they don't increase their knowledge. Institutes work on ensuring that M and P are mostly aligned, i.e. people who score highly on P should be high on M too.
Similar is the case with companies, particularly large companies. Executives may resort to measures which increase stock price of the company in the short run while decreasing the value of the company in the long run. The performance rating system of the employees might be such that employees who are doing more impactful work for the company may get lower raises or bonus or promotions compared to those whose work is more visible.
So, in an educational institute, a student can complain "Ah, I am fed up with our education system, it does not value true learning", or an employee in a company can complain "People don't understand the good work that I am doing". However, when you are running a company, you cannot complain. Customer are buying competitor's product despite yours being superior? It's your problem that you are unable to convey the superiority of your product. No investor wants to invest? You need to create the compelling story. There is no external system whose inefficiency can be blamed for your failure. You need to internalize all the externalities, because, well, no one compelled you to go on the journey anyway, and you can always get out of it if you don't like it. So, running a small company is a pure activity: there are no proxy metrics to optimize.
Since late 2011, I was working at Vizury. It was a small startup, having ~20 employees and ~7 engineers at the time I joined. Working at a startup is instructive because you get to understand the company holisitcally. Prior to Vizury I was at VMware where I worked on hypervisors, and while I knew our technology quite well, I had little knowledge of how VMware was used. For instance, I would not have been able to tell what fraction of revenue came from ESX servers and Workstation (the two dominant product lines). I did not know, nor did I ever wonder, how VMware became so successful in such a niche area.
At VMware, I understood the the company nearly completely. I was able to understand the product, and why our clients purchased it. Over time, I worked on a variety of components. Further, I started several new projects, some of which brough immense value to the company.
Over time, however, I became complacent. Part of it was due to the situation and part of it was due to my personality. The team at Vizury had gradually expanded. When I had joined the team was so small that I could work on any part of the technology, but as the team expanded we hired several engineering managers and a vice president of engineering. This led to more structure in the team but I lost my way. I had regarded myself an engineer across these components, but now I had to be in one team in order to fit. Retrospectively I think I could have persisted and perhaps found a spot in new scheme of things. However, since Vizury did not do well later on, leaving Vizury while it was still doing well was not so bad idea after all.


Nov 2019 Discount On Hyundai Creta, Verna, Elite i20, Elantra – Upto Rs. 2 Lakh
by Team GaadiWaadiPost Diwali season this month, Hyundai cars discounts range from as low as Rs 1,000 to as high as Rs 2 lakh
With Diwali season over, the high amount of discounts being provided by almost every car manufacturer have seen a significant reduction in the offers. Still, Hyundai Motor India Ltd, which is the second most popular carmaker in the country, continues to offer some decent discounts on many of its models. Here is a look at the Hyundai Cars Discounts in November 2019 –
1. Hyundai Santro
With the Eon discontinued, the second generation Santro is currently the most affordable model in the carmaker’s lineup. Currently, it’s available with a cash discount of Rs 30,000, along with an exchange bonus of Rs 20,000 for those who plan to sell their old car to the Hyundai dealership. With Rs 50,000 off its sticker price, the latest-gen Santro comes across as a pretty lucrative proposition.
2. Hyundai Grand i10 and Grand i10 Nios
While Hyundai Motor India Ltd launched the Grand i10 Nios, the second-gen model continues to be on sale. Currently, the Grand i10 is available with a cash discount of Rs 40,000 and an exchange bonus of Rs 30,000.
A discount of Rs 70,000 makes the Grand i10 a decent option in case you don’t mind putting your money on a generation old car. On the other hand, the Grand i10 Nios is available only with a cashback offer of Rs 1,000 if you book your car through an ICICI bank debit or credit card.
| Model | Cash Discount | Exchange Bonus |
| Hyundai Santro | Rs. 30,000 | Rs. 20,000 |
| Hyundai Grand i10 | Rs. 40,000 | Rs. 30,000 |
| Hyundai Grand i10 Nios | Rs 1000 Cash Back on Online Booking through ICICI Bank Card | NIL |
| Hyundai Xcent | Rs. 60,000 | Rs. 30,000 |
| Hyundai Elite I20 | Rs. 40,000 | Rs. 20,000 |
| Hyundai Venue | No Discount Offer | NIL |
| Hyundai Verna | Rs. 20,000 | Rs. 30,000 |
| Hyundai Creta | Rs. 50,000 | Rs. 30,000 |
| Hyundai Tucson | Rs. 1,25,000 | Rs. 75,000 |
| Hyundai Elantra Pre Facelift | Rs. 1,25,000 | Rs. 75,000 |
| Hyundai Kona | NIL | NIL |
| Hyundai Elantra Facelift | NIL | NIL |
3. Hyundai Xcent
As the company is already busy preparing the second-gen Xcent, which will be based on the Grand i10, the current Xcent will be soon on its way out. Ahead of its discontinuation, the company is currently on sale with a cash discount of whopping Rs 60,000, along with an exchange bonus of Rs 30,000. With Rs 90,000 off its price, the Xcent turns out to be cheaper than even some B1-segment hatchbacks.
4. Hyundai Elite i20
The Maruti Baleno rival from the country’s second-largest carmaker is currently being sold with a cash discount of Rs 10,000 on the Era and Magna variants, and of Rs 40,000 on the Sportz+ and Asta trims. Additionally, the upmarket small car is available with an exchange bonus of Rs 20,000 in case you sell your old car to Hyundai.
5. Hyundai Verna
Hyundai Verna has been a traditional Maruti Ciaz and Honda City rival that appeals to many due to its bold looks, powerful engines and a comfortable ride. Right now, the Verna is available with a cash discount of Rs 20,000 and an exchange bonus of Rs 30,000.
6. Hyundai Creta
While the Creta remained the best-selling small SUV for many years, the Kia Seltos and the MG Hector have dented its popularity. Hence, the company is currently offering attractive discounts on the 1.6-litre engine variants to push the sales. There is a cash discount of Rs 50,000 and an exchange bonus of Rs 30,000.
7. Hyundai Tucson
The Hyundai Tucson is current on sale with a heavy cash discount of Rs 1.25 lakh. Also, there’s an exchange bonus of Rs 75,000 if you sell your old car to the Hyundai dealership. With Rs 2 lakh off its price, this premium SUV turns out to be a great value option.
8. Hyundai Elantra
The Hyundai Elantra was updated recently and hence, there’s no discount on the updated version. However, dealers who have the pre-facelift version lying in their stockyard can offer a cash discount of up to Rs 1.25 lakh and exchange bonus of Rs 75,000.


Welcome to the Plant-o-Matic main page!
To check the system readings, navigate yourself through the links at the top bar
Project Github
dygraphs
Website Template
FastCGI


| Interface | Description |
|---|---|
| Either<L,R> |
Either represents a value of two possible types.
|
| Option<T> |
Replacement for
Optional . |
| Try<T> |
An implementation similar to Scala's Try control.
|
| Try.CheckedConsumer<T> |
A Consumer which may throw.
|
| Try.CheckedFunction<T,R> |
A Function which may throw.
|
| Try.CheckedPredicate<T> |
A Predicate which may throw.
|
| Try.CheckedRunnable |
A Runnable which may throw.
|
| Try.CheckedSupplier<R> |
A Supplier which may throw.
|
| Validation<E,T> |
An implementation similar to scalaz's Validation control.
|
| Class | Description |
|---|---|
| Either.Left<L,R> |
The
Left version of an Either . |
| Either.LeftProjection<L,R> |
A left projection of an Either.
|
| Either.Right<L,R> |
The
Right version of an Either . |
| Either.RightProjection<L,R> |
A right projection of an Either.
|
| Option.None<T> |
None is a singleton representation of the undefined
Option . |
| Option.Some<T> |
Some represents a defined
Option . |
| Try.Failure<T> |
A failed Try.
|
| Try.Success<T> |
A succeeded Try.
|
| Validation.Builder<E,T1,T2> | |
| Validation.Builder3<E,T1,T2,T3> | |
| Validation.Builder4<E,T1,T2,T3,T4> | |
| Validation.Builder5<E,T1,T2,T3,T4,T5> | |
| Validation.Builder6<E,T1,T2,T3,T4,T5,T6> | |
| Validation.Builder7<E,T1,T2,T3,T4,T5,T6,T7> | |
| Validation.Builder8<E,T1,T2,T3,T4,T5,T6,T7,T8> | |
| Validation.Invalid<E,T> |
An invalid Validation
|
| Validation.Valid<E,T> |
A valid Validation
|
| Exception | Description |
|---|---|
| Try.FatalException |
An unchecked wrapper for Fatal exceptions.
|
| Try.NonFatalException |
An unchecked wrapper for non-fatal/recoverable exceptions.
|
Either
The control package contains an implementation of the Either control which is either Left or Right. A given Either is projected to a Left or a Right. Both cases can be further processed with control operations map, flatMap, filter. If a Right is projected to a Left, the Left control operations have no effect on the Right value. If a Left is projected to a Right, the Right control operations have no effect on the Left value.
Option
The Option control is a replacement for Optional. An Option is either
Option.Some value or Option.None.
In contrast to Optional, Option supports null values, i.e. it is possible to call new Some(null)
.
However, Option.of(null)
results in None.
Try
Exceptions are handled with the Try control which is either a Try.Success, containing a result, or a Try.Failure, containing an Exception.
Try internally handles exceptions by wrapping exceptions in a Cause. A Cause is unchecked, i.e. a RuntimeException, and is Fatal or NonFatal. Fatal exceptions cannot be handled and are thrown without further processing. NonFatal exceptions are wrapped in a Failure.
Copyright © 2016. All rights reserved.


Accommodations
Here is how we can accommodate you:
Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Aliquam tincidunt mauris eu risus.
Vestibulum auctor dapibus neque.
Back to Main Page
More Resources
Travel Arrangments
Pictures
Activities
Contact Us


Synapse Client¶
The Synapse object encapsulates a connection to the Synapse service and is used for building projects, uploading and retrieving data, and recording provenance of data analysis.
Login¶
-
client.
login
(**kwargs)¶ Convenience method to create a Synapse object and login.
See
synapseclient.Synapse.login()
for arguments and usage.Example:
import synapseclient syn = synapseclient.login()
Synapse¶
-
class
synapseclient.
Synapse
(repoEndpoint=None, authEndpoint=None, fileHandleEndpoint=None, portalEndpoint=None, debug=None, skip_checks=False, configPath='/Users/kimyenladia/.synapseConfig')¶ Constructs a Python client object for the Synapse repository service
Parameters: - repoEndpoint – Location of Synapse repository
- authEndpoint – Location of authentication service
- fileHandleEndpoint – Location of file service
- portalEndpoint – Location of the website
- serviceTimeoutSeconds – Wait time before timeout (currently unused)
- debug – Print debugging messages if True
- skip_checks – Skip version and endpoint checks
- configPath – Path to config File with setting for Synapse defaults to ~/.synapseConfig
Typically, no parameters are needed:
import synapseclient syn = synapseclient.Synapse()
See:
-
createColumns
(columns)¶ Creates a batch of
synapseclient.table.Column
s within a single request.Parameters: columns – a list of synapseclient.table.Column
objectsReturns: a list of synapseclient.table.Column
objects that have been created in Synapse
-
createEntity
(entity, used=None, executed=None, **kwargs)¶ Use
synapseclient.Synapse.store()
Deprecated since version 1.9.0: This will be removed in 2.0. Please use store() instead.
-
createStorageLocationSetting
(storage_type, **kwargs)¶ Creates an IMMUTABLE storage location based on the specified type.
For each storage_type, the following kwargs should be specified: ExternalObjectStorage: (S3-like (e.g. AWS S3 or Openstack) bucket not accessed by Synapse) - endpointUrl: endpoint URL of the S3 service (for example: ‘https://s3.amazonaws.com’) - bucket: the name of the bucket to use ExternalS3Storage: (Amazon S3 bucket accessed by Synapse) - bucket: the name of the bucket to use ExternalStorage: (SFTP or FTP storage location not accessed by Synapse) - url: the base URL for uploading to the external destination - supportsSubfolders(optional): does the destination support creating subfolders under the base url
(default: false)ProxyStorage: (a proxy server that controls access to a storage) - secretKey: The encryption key used to sign all pre-signed URLs used to communicate with the proxy. - proxyUrl: The HTTPS URL of the proxy used for upload and download.
Optional kwargs for ALL types: - banner: The optional banner to show every time a file is uploaded - description: The description to show the user when the user has to choose which upload destination to use
Parameters: - storage_type – the type of the StorageLocationSetting to create
- kwargs – fields necessary for creation of the specified storage_type
Returns: a dict of the created StorageLocationSetting
-
delete
(obj, version=None)¶ Removes an object from Synapse.
Parameters: - obj – An existing object stored on Synapse such as Evaluation, File, Project, or Wiki
- version – For entities, specify a particular version to delete.
-
deleteEntity
(entity)¶ Use
synapseclient.Synapse.delete()
Deprecated since version 1.9.0: This will be removed in 2.0. Please use delete() instead.
-
deleteProvenance
(entity)¶ Removes provenance information from an Entity and deletes the associated Activity.
Parameters: entity – An Entity or Synapse ID to modify
-
downloadEntity
(entity, version=None)¶ Use
synapseclient.Synapse.get()
Deprecated since version 1.9.0: This will be removed in 2.0. Please use get() instead.
-
downloadTableColumns
(table, columns, **kwargs)¶ Bulk download of table-associated files.
Parameters: - table – table query result
- columns – a list of column names as strings
Returns: a dictionary from file handle ID to path in the local file system.
For example, consider a Synapse table whose ID is “syn12345” with two columns of type FILEHANDLEID named ‘foo’ and ‘bar’. The associated files are JSON encoded, so we might retrieve the files from Synapse and load for the second 100 of those rows as shown here:
import json results = syn.tableQuery('SELECT * FROM syn12345 LIMIT 100 OFFSET 100') file_map = syn.downloadTableColumns(results, ['foo', 'bar']) for file_handle_id, path in file_map.items(): with open(path) as f: data[file_handle_id] = f.read()
-
downloadTableFile
(table, column, downloadLocation=None, rowId=None, versionNumber=None, rowIdAndVersion=None, ifcollision='keep.both')¶ Downloads a file associated with a row in a Synapse table.
Parameters: - table – schema object, table query result or synapse ID
- rowId – row number that holds the file handle
- versionNumber – version number of the row that holds the file handle
- rowIdAndVersion – row number and version in one string, “101_2” for version 2 of row 101
- column – a Column object, the ID of a column or its name
- downloadLocation – location in local file system to download the file
- ifcollision – Determines how to handle file collisions. May be “overwrite.local”, “keep.local”, or “keep.both”. Defaults to “keep.both”.
Returns: file path (as a string) to the downloaded file.
Example:
file_path = syn.downloadTableFile(table, rowId=1, versionNumber=1, column="cover_art", downloadLocation=".") print(file_path)
Deprecated since version 1.9.0: This will be removed in 2.0. Please use downloadTableColumns() instead
-
findEntityId
(name, parent=None)¶ Find an Entity given its name and parent.
Parameters: - name – name of the entity to find
- parent – An Entity object or the Id of an entity as a string. Omit if searching for a Project by name
Returns: the Entity ID or None if not found
-
get
(entity, **kwargs)¶ Gets a Synapse entity from the repository service.
Parameters: - entity – A Synapse ID, a Synapse Entity object, a plain dictionary in which ‘id’ maps to a Synapse ID or a local file that is stored in Synapse (found by the file MD5)
- version – The specific version to get. Defaults to the most recent version.
- downloadFile – Whether associated files(s) should be downloaded. Defaults to True
- downloadLocation – Directory where to download the Synapse File Entity. Defaults to the local cache.
- followLink – Whether the link returns the target Entity. Defaults to False
- ifcollision – Determines how to handle file collisions. May be “overwrite.local”, “keep.local”, or “keep.both”. Defaults to “keep.both”.
- limitSearch – a Synanpse ID used to limit the search in Synapse if entity is specified as a local file. That is, if the file is stored in multiple locations in Synapse only the ones in the specified folder/project will be returned.
Returns: A new Synapse Entity object of the appropriate type
Example:
# download file into cache entity = syn.get('syn1906479') print(entity.name) print(entity.path) # download file into current working directory entity = syn.get('syn1906479', downloadLocation='.') print(entity.name) print(entity.path) # Determine the provenance of a locally stored file as indicated in Synapse entity = syn.get('/path/to/file.txt', limitSearch='syn12312') print(syn.getProvenance(entity))
-
getAnnotations
(entity, version=None)¶ Retrieve annotations for an Entity from the Synapse Repository as a Python dict.
Note that collapsing annotations from the native Synapse format to a Python dict may involve some loss of information. See
_getRawAnnotations()
to get annotations in the native format.Parameters: - entity – An Entity or Synapse ID to lookup
- version – The version of the Entity to retrieve.
Returns: A dictionary
-
getChildren
(parent, includeTypes=['folder', 'file', 'table', 'link', 'entityview', 'dockerrepo'], sortBy='NAME', sortDirection='ASC')¶ Retrieves all of the entities stored within a parent such as folder or project.
Parameters: - parent – An id or an object of a Synapse container or None to retrieve all projects
- includeTypes – Must be a list of entity types (ie. [“folder”,”file”]) which can be found here: http://docs.synapse.org/rest/org/sagebionetworks/repo/model/EntityType.html
- sortBy – How results should be sorted. Can be NAME, or CREATED_ON
- sortDirection – The direction of the result sort. Can be ASC, or DESC
Returns: An iterator that shows all the children of the container.
Also see:
-
getColumn
(id)¶ Gets a Column object from Synapse by ID.
See:
synapseclient.table.Column
Parameters: id – the ID of the column to retrieve Returns: an object of type synapseclient.table.Column
Example:
column = syn.getColumn(123)
-
getColumns
(x, limit=100, offset=0)¶ Get the columns defined in Synapse either (1) corresponding to a set of column headers, (2) those for a given schema, or (3) those whose names start with a given prefix.
Parameters: - x – a list of column headers, a Table Entity object (Schema/EntityViewSchema), a Table’s Synapse ID, or a string prefix
- limit – maximum number of columns to return (pagination parameter)
- offset – the index of the first column to return (pagination parameter)
Returns: a generator of Column objects
-
getConfigFile
(configPath)¶ Retrieves the client configuration information.
Parameters: configPath – Path to configuration file on local file system Returns: a RawConfigParser populated with properties from the user’s configuration file.
-
getEntity
(entity, version=None)¶ Use
synapseclient.Synapse.get()
Deprecated since version 1.9.0: This will be removed in 2.0. Please use get() instead.
-
getEvaluation
(id)¶ Gets an Evaluation object from Synapse.
Parameters: id – The ID of the synapseclient.evaluation.Evaluation
to return.Returns: an synapseclient.evaluation.Evaluation
objectExample:
evaluation = syn.getEvaluation(2005090)
-
getEvaluationByContentSource
(entity)¶ Returns a generator over evaluations that derive their content from the given entity
Parameters: entity – The synapseclient.entity.Project
whose Evaluations are to be fetched.Returns: a Generator over the synapseclient.evaluation.Evaluation
objects for the givensynapseclient.entity.Project
-
getEvaluationByName
(name)¶ Gets an Evaluation object from Synapse.
Parameters: name – The name of the synapseclient.evaluation.Evaluation
to return.Returns: an synapseclient.evaluation.Evaluation
object
-
getMyStorageLocationSetting
(storage_location_id)¶ Get a StorageLocationSetting by its id. :param storage_location_id: id of the StorageLocationSetting to retrieve.
The corresponding StorageLocationSetting must have been created by this user.Returns: a dict describing the StorageLocationSetting retrieved by its id
-
getPermissions
(entity, principalId=None)¶ Get the permissions that a user or group has on an Entity.
Parameters: - entity – An Entity or Synapse ID to lookup
- principalId – Identifier of a user or group (defaults to PUBLIC users)
Returns: An array containing some combination of [‘READ’, ‘CREATE’, ‘UPDATE’, ‘DELETE’, ‘CHANGE_PERMISSIONS’, ‘DOWNLOAD’] or an empty array
-
getProjectSetting
(project, setting_type)¶ Gets the ProjectSetting for a project.
Parameters: - project – Project entity or its id as a string
- setting_type – type of setting. Choose from: {‘upload’, ‘external_sync’, ‘requester_pays’}
Returns: The ProjectSetting as a dict or None if no settings of the specified type exist.
-
getProvenance
(entity, version=None)¶ Retrieve provenance information for a Synapse Entity.
Parameters: - entity – An Entity or Synapse ID to lookup
- version – The version of the Entity to retrieve. Gets the most recent version if omitted
Returns: An Activity object or raises exception if no provenance record exists
-
getSubmission
(id, **kwargs)¶ Gets a
synapseclient.evaluation.Submission
object by its id.Parameters: id – The id of the submission to retrieve Returns: a synapseclient.evaluation.Submission
object- See:
synapseclient.Synapse.get()
for information - on the downloadFile, downloadLocation, and ifcollision parameters
- See:
-
getSubmissionBundles
(evaluation, status=None, myOwn=False, limit=20, offset=0)¶ Retrieve submission bundles (submission and submissions status) for an evaluation queue, optionally filtered by submission status and/or owner.
Parameters: - evaluation – Evaluation to get submissions from.
- status – Optionally filter submissions for a specific status. One of {OPEN, CLOSED, SCORED, INVALID}
- myOwn – Determines if only your Submissions should be fetched. Defaults to False (all Submissions)
- limit – Limits the number of submissions coming back from the service in a single response.
- offset – Start iterating at a submission offset from the first submission.
Returns: A generator over tuples containing a
synapseclient.evaluation.Submission
and asynapseclient.evaluation.SubmissionStatus
.Example:
for submission, status in syn.getSubmissionBundles(evaluation): print(submission.name, \ submission.submitterAlias, \ status.status, \ status.score)
This may later be changed to return objects, pending some thought on how submissions along with related status and annotations should be represented in the clients.
-
getSubmissionStatus
(submission)¶ Downloads the status of a Submission.
Parameters: submission – The Submission to lookup Returns: A synapseclient.evaluation.SubmissionStatus
object
-
getSubmissions
(evaluation, status=None, myOwn=False, limit=20, offset=0)¶ Parameters: - evaluation – Evaluation to get submissions from.
- status – Optionally filter submissions for a specific status. One of {OPEN, CLOSED, SCORED,INVALID,VALIDATED, EVALUATION_IN_PROGRESS,RECEIVED, REJECTED, ACCEPTED}
- myOwn – Determines if only your Submissions should be fetched. Defaults to False (all Submissions)
- limit – Limits the number of submissions in a single response. Because this method returns a generator and repeatedly fetches submissions, this argument is limiting the size of a single request and NOT the number of sub- missions returned in total.
- offset – Start iterating at a submission offset from the first submission.
Returns: A generator over
synapseclient.evaluation.Submission
objects for an EvaluationExample:
for submission in syn.getSubmissions(1234567): print(submission['entityId'])
-
getTableColumns
(table)¶ Retrieve the column models used in the given table schema.
Parameters: table – the schema of the Table whose columns are to be retrieved Returns: a Generator over the Table’s columns
-
getTeam
(id)¶ Finds a team with a given ID or name.
Parameters: id – The ID or name of the team to retrieve Returns: An object of type synapseclient.team.Team
-
getTeamMembers
(team)¶ Lists the members of the given team.
Parameters: team – A synapseclient.team.Team
object or a team’s ID.Returns: a generator over synapseclient.team.TeamMember
objects.
-
getUserProfile
(id=None, sessionToken=None, refresh=False)¶ Get the details about a Synapse user. Retrieves information on the current user if ‘id’ is omitted. :param id: The ‘userId’ (aka ‘ownerId’) of a user or the userName :param sessionToken: The session token to use to find the user profile :param refresh: If set to True will always fetch the data from Synape otherwise will use cached information :returns: The user profile for the user of interest.
- Example::
- my_profile = syn.getUserProfile() freds_profile = syn.getUserProfile(‘fredcommo’)
-
getWiki
(owner, subpageId=None, version=None)¶ Get a
synapseclient.wiki.Wiki
object from Synapse. Uses wiki2 API which supports versioning.Parameters: - owner – The entity to which the Wiki is attached
- subpageId – The id of the specific sub-page or None to get the root Wiki page
- version – The version of the page to retrieve or None to retrieve the latest
Returns: a
synapseclient.wiki.Wiki
object
-
getWikiAttachments
(wiki)¶ Retrieve the attachments to a wiki page.
Parameters: wiki – the Wiki object for which the attachments are to be returned. Returns: A list of file handles for the files attached to the Wiki.
-
getWikiHeaders
(owner)¶ Retrieves the headers of all Wikis belonging to the owner (the entity to which the Wiki is attached).
Parameters: owner – An Entity Returns: A list of Objects with three fields: id, title and parentId.
-
invalidateAPIKey
()¶ Invalidates authentication across all clients.
-
loadEntity
(entity)¶ Use
synapseclient.Synapse.get()
Deprecated since version 1.9.0: This will be removed in 2.0. Please use get() instead.
-
login
(email=None, password=None, apiKey=None, sessionToken=None, rememberMe=False, silent=False, forced=False)¶ Valid combinations of login() arguments:
- email/username and password
- email/username and apiKey (Base64 encoded string)
- sessionToken (DEPRECATED)
- If no login arguments are provided or only username is provided, login() will attempt to log in using
- information from these sources (in order of preference):
- .synapseConfig file (in user home folder unless configured otherwise)
- cached credentials from previous login() where rememberMe=True was passed as a parameter
Parameters: - email – Synapse user name (or an email address associated with a Synapse account)
- password – password
- apiKey – Base64 encoded Synapse API key
- sessionToken – !!DEPRECATED FIELD!! User’s current session token. Using this field will ignore the following fields: email, password, apiKey
- rememberMe – Whether the authentication information should be cached in your operating system’s credential storage.
GNOME Keyring (recommended) or KWallet is recommended to be installed for credential storage on Linux systems. If it is not installed/setup, credentials will be stored as PLAIN-TEXT file with read and write permissions for the current user only (chmod 600). On Windows and Mac OS, a default credentials storage exists so it will be preferred over the plain-text file. To install GNOME Keyring on Ubuntu:
sudo apt-get install gnome-keyring sudo apt-get install python-dbus #(for Python 2 installed via apt-get) OR sudo apt-get install python3-dbus #(for Python 3 installed via apt-get) OR sudo apt-get install libdbus-glib-1-dev #(for custom installation of Python or vitualenv) sudo pip install dbus-python #(may take a while to compile C code)
If you are on a headless Linux session (e.g. connecting via SSH), please run the following commands before running your Python session:
dbus-run-session -- bash #(replace 'bash' with 'sh' if bash is unavailable) echo -n "REPLACE_WITH_YOUR_KEYRING_PASSWORD"|gnome-keyring-daemon -- unlock
Parameters: - silent – Defaults to False. Suppresses the “Welcome …!” message.
- forced – Defaults to False. Bypass the credential cache if set.
Example:
syn.login('my-username', 'secret-password', rememberMe=True) #> Welcome, Me!
After logging in with the rememberMe flag set, an API key will be cached and used to authenticate for future logins:
syn.login() #> Welcome, Me!
-
logout
(forgetMe=False)¶ Removes authentication information from the Synapse client.
Parameters: forgetMe – Set as True to clear any local storage of authentication information. See the flag “rememberMe” in synapseclient.Synapse.login()
.
-
md5Query
(md5)¶ Find the Entities which have attached file(s) which have the given MD5 hash.
Parameters: md5 – The MD5 to query for (hexadecimal string) Returns: A list of Entity headers
-
move
(entity, new_parent)¶ Move a Synapse entity to a new container.
Parameters: - entity – A Synapse ID, a Synapse Entity object, or a local file that is stored in Synapse
- new_parent – The new parent container (Folder or Project) to which the entity should be moved.
Returns: The Synapse Entity object that has been moved.
Example:
entity = syn.move('syn456', 'syn123')
-
onweb
(entity, subpageId=None)¶ Opens up a browser window to the entity page or wiki-subpage.
Parameters: - entity – Either an Entity or a Synapse ID
- subpageId – (Optional) ID of one of the wiki’s sub-pages
-
printEntity
(entity, ensure_ascii=True)¶ Pretty prints an Entity.
Parameters: - entity – The entity to be printed.
- ensure_ascii – If True, escapes all non-ASCII characters
-
restDELETE
(uri, endpoint=None, headers=None, retryPolicy={}, **kwargs)¶ Sends an HTTP DELETE request to the Synapse server.
Parameters: - uri – URI of resource to be deleted
- endpoint – Server endpoint, defaults to self.repoEndpoint
- headers – Dictionary of headers to use rather than the API-key-signed default set of headers
- kwargs – Any other arguments taken by a requests method
-
restGET
(uri, endpoint=None, headers=None, retryPolicy={}, **kwargs)¶ Sends an HTTP GET request to the Synapse server.
Parameters: - uri – URI on which get is performed
- endpoint – Server endpoint, defaults to self.repoEndpoint
- headers – Dictionary of headers to use rather than the API-key-signed default set of headers
- kwargs –
Any other arguments taken by a requests method
Returns: JSON encoding of response
-
restPOST
(uri, body, endpoint=None, headers=None, retryPolicy={}, **kwargs)¶ Sends an HTTP POST request to the Synapse server.
Parameters: - uri – URI on which get is performed
- endpoint – Server endpoint, defaults to self.repoEndpoint
- body – The payload to be delivered
- headers – Dictionary of headers to use rather than the API-key-signed default set of headers
- kwargs –
Any other arguments taken by a requests method
Returns: JSON encoding of response
-
restPUT
(uri, body=None, endpoint=None, headers=None, retryPolicy={}, **kwargs)¶ Sends an HTTP PUT request to the Synapse server.
Parameters: - uri – URI on which get is performed
- endpoint – Server endpoint, defaults to self.repoEndpoint
- body – The payload to be delivered
- headers – Dictionary of headers to use rather than the API-key-signed default set of headers
- kwargs –
Any other arguments taken by a requests method
Returns: JSON encoding of response
-
sendMessage
(userIds, messageSubject, messageBody, contentType='text/plain')¶ send a message via Synapse.
Parameters: - userIds – A list of user IDs to which the message is to be sent
- messageSubject – The subject for the message
- messageBody – The body of the message
- contentType – optional contentType of message body (default=”text/plain”) Should be one of “text/plain” or “text/html”
Returns: The metadata of the created message
-
setAnnotations
(entity, annotations={}, **kwargs)¶ Store annotations for an Entity in the Synapse Repository.
Parameters: - entity – The Entity or Synapse Entity ID whose annotations are to be updated
- annotations – A dictionary of annotation names and values
- kwargs – annotation names and values
Returns: the updated annotations for the entity
-
setEndpoints
(repoEndpoint=None, authEndpoint=None, fileHandleEndpoint=None, portalEndpoint=None, skip_checks=False)¶ Sets the locations for each of the Synapse services (mostly useful for testing).
Parameters: - repoEndpoint – Location of synapse repository
- authEndpoint – Location of authentication service
- fileHandleEndpoint – Location of file service
- portalEndpoint – Location of the website
- skip_checks – Skip version and endpoint checks
To switch between staging and production endpoints:
syn.setEndpoints(**synapseclient.client.STAGING_ENDPOINTS) syn.setEndpoints(**synapseclient.client.PRODUCTION_ENDPOINTS)
-
setPermissions
(entity, principalId=None, accessType=['READ', 'DOWNLOAD'], modify_benefactor=False, warn_if_inherits=True, overwrite=True)¶ Sets permission that a user or group has on an Entity. An Entity may have its own ACL or inherit its ACL from a benefactor.
Parameters: - entity – An Entity or Synapse ID to modify
- principalId – Identifier of a user or group
- accessType – Type of permission to be granted. One or more of CREATE, READ, DOWNLOAD, UPDATE, DELETE, CHANGE_PERMISSIONS
- modify_benefactor – Set as True when modifying a benefactor’s ACL
- warn_if_inherits – Set as False, when creating a new ACL. Trying to modify the ACL of an Entity that inherits its ACL will result in a warning
- overwrite – By default this function overwrites existing permissions for the specified user. Set this flag to False to add new permissions non-destructively.
Returns: an Access Control List object
-
setProvenance
(entity, activity)¶ Stores a record of the code and data used to derive a Synapse entity.
Parameters: - entity – An Entity or Synapse ID to modify
- activity – a
synapseclient.activity.Activity
Returns: An updated
synapseclient.activity.Activity
object
-
setStorageLocation
(entity, storage_location_id)¶ Sets the storage location for a Project or Folder :param entity: a Project or Folder to which the StorageLocationSetting is set :param storage_location_id: a StorageLocation id or a list of StorageLocation ids. Pass in None for the default
Synapse storage.Returns: The created or updated settings as a dict
-
store
(obj, **kwargs)¶ Creates a new Entity or updates an existing Entity, uploading any files in the process.
Parameters: - obj – A Synapse Entity, Evaluation, or Wiki
- used – The Entity, Synapse ID, or URL used to create the object (can also be a list of these)
- executed – The Entity, Synapse ID, or URL representing code executed to create the object (can also be a list of these)
- activity – Activity object specifying the user’s provenance
- activityName – Activity name to be used in conjunction with used and executed.
- activityDescription – Activity description to be used in conjunction with used and executed.
- createOrUpdate – Indicates whether the method should automatically perform an update if the ‘obj’ conflicts with an existing Synapse object. Defaults to True.
- forceVersion – Indicates whether the method should increment the version of the object even if nothing has changed. Defaults to True.
- versionLabel – Arbitrary string used to label the version.
- isRestricted – If set to true, an email will be sent to the Synapse access control team to start the process of adding terms-of-use or review board approval for this entity. You will be contacted with regards to the specific data being restricted and the requirements of access.
Returns: A Synapse Entity, Evaluation, or Wiki
Example:
from synapseclient import Project project = Project('My uniquely named project') project = syn.store(project)
Adding files with provenance:
from synapseclient import File, Activity # A synapse entity *syn1906480* contains data # entity *syn1917825* contains code activity = Activity( 'Fancy Processing', description='No seriously, really fancy processing', used=['syn1906480', 'http://data_r_us.com/fancy/data.txt'], executed='syn1917825') test_entity = File('/path/to/data/file.xyz', description='Fancy new data', parent=project) test_entity = syn.store(test_entity, activity=activity)
-
submit
(evaluation, entity, name=None, team=None, silent=False, submitterAlias=None, teamName=None)¶ Submit an Entity for evaluation.
Parameters: - evaluation – Evaluation queue to submit to
- entity – The Entity containing the Submission
- name – A name for this submission. In the absent of this parameter, the entity name will be used.
- team – (optional) A
Team
object, ID or name of a Team that is registered for the challenge - silent – Set to True to suppress output.
- submitterAlias – (optional) A nickname, possibly for display in leaderboards in place of the submitter’s name
- teamName – (deprecated) A synonym for submitterAlias
Returns: A
synapseclient.evaluation.Submission
objectIn the case of challenges, a team can optionally be provided to give credit to members of the team that contributed to the submission. The team must be registered for the challenge with which the given evaluation is associated. The caller must be a member of the submitting team.
Example:
evaluation = syn.getEvaluation(123) entity = syn.get('syn456') submission = syn.submit(evaluation, entity, name='Our Final Answer', team='Blue Team')
-
tableQuery
(query, resultsAs='csv', **kwargs)¶ Query a Synapse Table.
Parameters: - query – query string in a SQL-like syntax, for example “SELECT * from syn12345”
- resultsAs – select whether results are returned as a CSV file (“csv”) or incrementally downloaded as sets of rows (“rowset”).
You can receive query results either as a generator over rows or as a CSV file. For smallish tables, either method will work equally well. Use of a “rowset” generator allows rows to be processed one at a time and processing may be stopped before downloading the entire table.
Optional keyword arguments differ for the two return types. For the “rowset” option,
Parameters: - limit – specify the maximum number of rows to be returned, defaults to None
- offset – don’t return the first n rows, defaults to None
- isConsistent – defaults to True. If set to False, return results based on current state of the index without waiting for pending writes to complete. Only use this if you know what you’re doing.
For CSV files, there are several parameters to control the format of the resulting file:
Parameters: - quoteCharacter – default double quote
- escapeCharacter – default backslash
- lineEnd – defaults to os.linesep
- separator – defaults to comma
- header – True by default
- includeRowIdAndRowVersion – True by default
Returns: A Table object that serves as a wrapper around a CSV file (or generator over Row objects if resultsAs=”rowset”).
- NOTE: When performing queries on frequently updated tables, the table can be inaccessible for a period leading
to a timeout of the query. Since the results are guaranteed to eventually be returned you can change the max timeout by setting the table_query_timeout variable of the Synapse object:
# Sets the max timeout to 5 minutes. syn.table_query_timeout = 300
-
updateActivity
(activity)¶ Modifies an existing Activity.
Parameters: activity – The Activity to be updated. Returns: An updated Activity object
-
updateEntity
(entity, used=None, executed=None, incrementVersion=False, versionLabel=None, **kwargs)¶ Use
synapseclient.Synapse.store()
Deprecated since version 1.9.0: This will be removed in 2.0. Please use store() instead.
-
uploadFile
(entity, filename=None, used=None, executed=None)¶ Use
synapseclient.Synapse.store()
Deprecated since version 1.9.0: This will be removed in 2.0. Please use store() instead.
-
uploadFileHandle
(path, parent, synapseStore=True, mimetype=None, md5=None, file_size=None)¶ Uploads the file in the provided path (if necessary) to a storage location based on project settings. Returns a new FileHandle as a dict to represent the stored file.
Parameters: - parent – parent of the entity to which we upload.
- path – file path to the file being uploaded
- synapseStore – If False, will not upload the file, but instead create an ExternalFileHandle that references the file on the local machine. If True, will upload the file based on StorageLocation determined by the entity_parent_id
- mimetype – The MIME type metadata for the uploaded file
- md5 – The MD5 checksum for the file, if known. Otherwise if the file is a local file, it will be calculated automatically.
- file_size – The size the file, if known. Otherwise if the file is a local file, it will be calculated automatically.
- file_type – The MIME type the file, if known. Otherwise if the file is a local file, it will be calculated automatically.
Returns: a dict of a new FileHandle as a dict that represents the uploaded file
-
uploadSynapseManagedFileHandle
(path, storageLocationId=None, mimetype=None)¶ Uploads a file to a Synapse managed S3 storage. This is the preferred function for uploading files to Tables :param path: path to the file :param storageLocationId: storageLocationId of a S3 storage location. pass in a value if you wish to use an
ExternalS3StorageLocationParameters: mimetype – MIME type of the file, if known. Returns: file handle dict associated with the uploaded file Deprecated since version 1.9.0: This will be removed in 2.0.
More information¶
See also the Synapse API documentation.


About JSProve
Created by Paul Brook and James Holdsworth. Written in HTML5 and JavaScript.
Feature Requests
Parse place notations and generate rows PB Feb 2011
Prove truth of a composition at all stages from place notation and user input PB Feb
2011
Informative Music output for all stages PB/JH Feb/Mar 2011
Variety of Call Types JH Mar 2011
Shorthand generation of composition JH Jun 2011
- Central Council (standard) formatting of true compositions
Method loader - using XHR from CC library files JH Apr 2011
Use more than one method (spliced) JH Jun 2011
Snap start - user can just create a "new method" by inputing full lead place notation,
missing off first 2 changes
- Half lead calls
All the work checker for spliced compositions JH Nov 2012
Change of method counter JH Nov 2012
- Stage beyond Maximus


Kishu Ken
| Kishu Ken | |
| Breed Information | |
|---|---|
| Popularity | # |
| Name | Kishu Ken |
| Other names | Kishu, Kishu Inu |
| Origin | Japan |
| Breed Group | Northern (UKC) |
| Size | Medium |
| Type | Purebred |
| Life span | 11-13 years |
| Temperament | AlertDignifiedDocileFaithfulNoble |
| Height | 17-22 inches (43-56 cm) |
| Weight | 30-60 pounds (13-27 kg) |
| Colors | BlackBlack & TanBrindleRedWhite |
| Litter Size | 2-5 puppies, average 3 |
| Puppy Price | Average $300 - $500 USD |
| Breed Characteristics | |
| Adaptability | 4 stars |
| Apartment Friendly | 3 starsDoes not do well in a kennel environment, they need to be part of the family. Should have a fenced-in yard. |
| Barking Tendencies | 1 starsRare |
| Cat Friendly | 3 stars |
| Child Friendly | 4 starsGood with Kids: This is a suitable breed for kids and is known to be playful, energetic, and affectionate around them. |
| Dog Friendly | 4 stars |
| Exercise Needs | 5 starsThe Kishu needs adequate space to roam and exercise, meaning a house with a yard or urban environment with a fence. They need regular exercise on a leash, taking walks or runs. They can also be given a job to do such as herding to satisfy their exercise. |
| Grooming | 4 starsBrush weekly with a firm bristle brush, and bathe only when necessary. Trim nails and check ears regularly for dirt, wax buildup or infection. |
| Health Issues | 1 starsUsually a healthy breed.Hypoallergenic: No |
| Intelligence | 3 starsRanking: (#). (See All Rankings) |
| Playfulness | 3 stars |
| Shedding Level | 3 stars |
| Stranger Friendly | 3 stars |
| Trainability | 1 starsModerately Easy Training: Training won't require too much attention and effort, though it won't be easier than other breeds. Expect results to come gradually. |
| Watchdog Ability | 4 stars |
| Kishu Ken Puppy Picture | ||
| Puppy Names | ||
|---|---|---|
| Rank | Male | Female |
| 01 | Teddy | Molly |
| 02 | Buddy | Bella |
| 03 | Buster | Sasha |
| 04 | Oscar | Ruby |
| 05 | Oliver | Luna |
| 06 | Louie | Annie |
| 07 | Harley | Roxy |
| 08 | Oscar | Nala |
| 09 | Jake | Maya |
| 10 | Diesel | Stella |
| See All Names › |
| Overview |
|---|
|
The Kishu Ken is a medium-sized sturdy dog. The coarse double coat is short and straight with a thick, soft undercoat. Coat color mostly comes in white, but occasionally brindle, sesame or red do occur. The nose is usually black, but can be brownish or pink. Has a scissor or level bite. Has a broad head with prick ears inclined forward that are on the smaller side. Tail curls over the back. There is fringing on the tail and cheeks. It has a close resemblance to the Shiba Inu, Akita Inu and Ainu Dog. Kishu Kens are a one person/one family dog. They are courageous and brave as hunters, and will be loyal to their owners. They have a strong prey drive, and will hunt small animals. A few have been known to do well with cats if raised with them. They do well with other dogs if socialized well as puppies, however, due to their pack instincts they might cause some fights for dominance. They are quite headstrong and willful, making training necessary, but they are devoted and loyal to family, getting along well with children, if raised with them. Kishu Kens like to keep an eye on whatever is going on, and sometimes find a high place to look out from. They can be aloof or shy around strangers. They are easily housebroken, intelligent, and strong willed. |
| History |
| The Kishu is descended from the medium sized dogs that existed in Japan in ancient times. It became established as an individual breed in the mountainous regions of Kishu, and takes its name from the region in which it was developed. Originally, the breed was found in varying colorations, but after 1934 only solid colors were accepted. The Kishu is a hunting dog, used mainly on wild boar. |


Real Time Programming Activity
Last Year Work
Skills
5 = Strong Experience
0 = Weak Experience
About Me
Full Stack Web Developer
Engineering professional graduated from Instituto Nacional de Telecomunicações - Inatel. Skilled in Front-End and Back-end technolgies, with a diverse portfolio as proof. Strong in JavaScript(jQuery), Python(Object-Oriented), HTML5/CSS3(Bootstrap) with excelent front-end capabilities Previously 2 years experienced Embedded System Development Engineer with a demonstrated history of working in the information technology and Internet of Things industry. Worked with Python, C/C++, Contiki and embedded systems.
Current Status
| Date | Company | Project | Detail | Finish |
|---|---|---|---|---|
| December/2018 | Fiscoserv | Financial Dashboard | Develop Dashboard, link to webservice in python | 3 months |
Work History
| Date | Company | Project | Detail |
|---|---|---|---|
| October/2018 | Udacity Website Movie Trailer | Front-End + Back-End | Website for showing movie trailers |
| September/2018 | Agencia Vivaz | Promotional Website + SEO | Beautiful Web Design for digital market agency |
| August/2018 | Caelum E-commerce | E-commerce Website | Back and Front-End for Caelum with PHP |
| May/2018 | CryptoCurrency Payment System | Back-End | Coinbase Api for accepting cryptocurrency payments with Node.js |
Projects
Holismo Dynamic Real Time Organization Tool
My Third job as web developer, working as back-end developer, giving support to the front-end developer, responsible for the deploy with Heroku and AWS and architecht of the solution.
- Node.js
- JavaScript
- Hapi
- MongoDB
- Mongoose
- Swagger
- AWS
- BCrypt
- Boom
- Joi
- JWT
- Vision
- Mocha
- Istanbul
- PM2
- Vue.js
- Git Crypt
Neighborhood Map - Udacity
Describe STAR here, Put Online inside nicklobo
- MVM Design Pattern
- Knockout.js
- Foursquare API
- Google Maps API
- Bootstrap 4
- jQuery
Cat Clicker With Knockout - Udacity
Describe STAR here, Put Online inside nicklobo
- MVM Design Pattern
- Knockout.js
Resume Project- Udacity
Describe STAR here, Put Resume Online inside nicklobo
- MVM Design Pattern
- Vanilla JavaScript
Cat Clicker Vanilla Javascript- Udacity
Describe STAR here, Put CatClicker Online inside nicklobo
- MVM Design Pattern
- Vanilla JavaScript
Financial Wallet - Udacity Catalog Project
Application that provides a list of items within a variety of categories, third-party user registration and authentication system. Registered users have the ability to post, edit, and delete their own items. Put Financial Wallet Online in Heroku
- SQLite
- SQLAlchemy
- Flask
- Python
- VirtualBox
- Vagrant
- New Google Sign-In API
- Facebook Authentication Api
Restaurant Menu App - Udacity
The app allows the user to view the menu for all the registered restaurants. Users are also able to create, read, update and delete restaurants and menus items. Put Online Inside Heroku.
- SQLite
- SQLAlchemy
- Flask
- Python
- VirtualBox
- Vagrant
- jsonify
- request
- flash
- url_for
- redirect
Bookmark Server - Udacity
Learning to build Python HTTP servers and deploy to Heroku Make available Github
- Python HTTP Server
- Heroku
Node Web App Multi DB - NodeBR
Build from scratch backend application with PostgreSQL and MongoDB, making the web API available online throw Heroku utilizing Swagger plugin for documentation and PM2 for server management. Push to github at other remote
- Node
- Hapi
- MongoDB
- Mongoose
- Postgres
- Heroku
- Swagger
- PM2
- Mocha
- Istanbul
- Strategy Design Pattern
- bcrypt
- Boom
- Joi
- JSON Web Token
Log Analysis Server - Udacity
Internal reporting tool. The tool uses information from the database to discover what kind of articles the site's readers like. The database contains newspaper articles, as well as the web server log for the site. The log has a database row for each time a reader loaded a web page. The code connect's to the PostgreSQL database, use's SQL queries to analyze the log data, and print's out the analysis.
- Python FLASK
- PostgreSQL
- SQLAlchemy
- Vagrant
- psycopg2
Fiscoserv Financial Dashboard
My second job as web developer, working with fron-end technologies to create a financial dashboard with login, security authentication, server data requests and graphic plotting
- HTML5/CSS3
- JavaScript/jQuery
- Bootstrap
- AJAX
- Chartist.js
- Dynamic Tables
Portfolio Website
Udacity project
- HTML5/CSS3
- JavaScript/jQuery
- Bootstrap
- AJAX
- Chartist.js
- Wakatime Graphics
- Canvas
Website Agência Vivaz
My first developed website, built from a starting Template, made a lot of modifications, having implemented my own Carrousel and Canvas. Optimized for quick and light access, utilizing the following technologies.
- HTML5/CSS3
- JavaScript/jQuery
- Bootstrap
- Sass
Website Movie Trailers Udacity
Server-side code to store a list of my favorite movies, including box art imagery and a movie trailer URL. With python code to generate a static web page allowing visitors to browse throw my movies and watch trailers.
- HTML5/CSS3
- OOP - Object Oriented Python
- Fresh Tomatoes
Break Time App - Python
Developed code for interrupt overwork, that opens the web browser after selected amount of time
- Python
- webbrowser Library
- time Library
Message Decrypter - Python
Developed code for renaming image file names, removing numbers so the words can be reordered alphabetically.
- Python
- File workflow
Profanity Checker - Python
Developed code that checks for curse words in a text file.
- Python
- urllib Library
Draw Square - Python
Developed code working with the turtle python library, made for introductory self-learning at object-oriented python.
- Python
- Turtle Library
Caelum E-Commerce
Developed website for learning front and back end basic technologies for Caelum web course
- HTML5/CSS3
- JavaScript/jQuery
- PHP
NODE.js
Developing code for learning NodeJS, covering the basic and advanced functionalities of the framework.
- Javascript
- Node.js
- Express


Before Change
Arguments:
dictionary: A dictionary containing the data of interest.
csv = ",".join([str(dictionary[key]) if dictionary.get(key) is not None else ""
for key in AverageSpeedEnhancer.output_schema])
return csv
def enhance_with_avg_speed(self, record):
After Change
Arguments:
dictionary: A dictionary containing the data of interest.
with closing(cStringIO.StringIO()) as csv_string:
writer = csv.DictWriter(csv_string, AverageSpeedEnhancer.output_schema)
writer.writerow(dictionary)
// Our desired output is a csv string not a line in a file so we strip the


?´
FLORA
JAMAIOENSIS.
PUBLIC
GARDENS,
JAMAICA,
and
NEW
YORK
BOTANICAL
GARDEN.
Name/
^ÁÁL.
01530006
TRACY
HERBARIUM,
A.
&
M.
COLLEGE
OF
TEXAS
Bouteloua
americana
(L.)
Scribn-
Det.
by:
F.
W.
Gould
19^7
Locality,
´ÕOJ£/UV/Usj
(ftˆcL.
fa
No.
//
Jfˆ'/_Date
Z—,.
//.
191^
Collector,
Wm.
HARRIS.
a
01530006
Legend -
Level of confidence that token is an accurately-transcribed word
extremely low
very low
low
undetermined
medium
high
very high


Additional Media
Fans of the series were so eager for the latest instalment that bookstores around the world began holding events to coincide with the midnight release of the books, beginning with the 2000 publication of Harry Potter and the Goblet of Fire. The events, commonly featuring mock sorting, games, face painting, and other live entertainment have achieved popularity with Potter fans and have been highly successful in attracting fans and selling books with nearly nine million of the 10.8 million initial print copies of Harry Potter and the Half-Blood Prince sold in the first 24 hours.
The final book in the series, Harry Potter and the Deathly Hallows became the fastest selling book in history, moving 11 million units in the first twenty-four hours of release. The series has also gathered adult fans, leading to the release of two editions of each Harry Potter book, identical in text but with one edition's cover artwork aimed at children and the other aimed at adults. Besides meeting online through blogs, podcasts, and fansites, Harry Potter super-fans can also meet at Harry Potter symposia.
The word Muggle has spread beyond its Harry Potter origins, becoming one of few pop culture words to land in the Oxford English Dictionary.The Harry Potter fandom has embraced podcasts as a regular, often weekly, insight to the latest discussion in the fandom. Both MuggleCast and PotterCast have reached the top spot of iTunes podcast rankings and have been polled one of the top 50 favourite podcasts.
Some lessons identified in the series include diversity, acceptance, political tolerance, and equality. Surveys of over 1,000 college students in the United States show that those who read the books were significantly different than those who had not. Readers of the series were found to be more tolerant, more opposed to violence and torture, less authoritarian, and less cynical. Although it is not known if this is a cause-and-effect relationship, there is a clear correlation, and it seems that Harry Potter's cultural impact may be stronger than just a fandom bond.
At the University of Michigan in 2009, StarKid Productions performed an original musical parodying the Harry Potter series called A Very Potter Musical. The musical was awarded Entertainment Weekly's10 Best Viral Videos of 2009.
Characters and elements from the series have inspired scientific names of several organisms, including the dinosaur Dracorex hogwartsia, the spider Eriovixia gryffindori, the wasp Ampulex dementor, and the crab Harryplax severus.
div>


What Kind of Girl That I Will Ask Out on a Date
A little tip:
If you are a guy , or you are NOT into me at all, you can just ignore this blog.
yeah, i figure i have to finished this post before i get going..
i said “i must get a serious girlfriends this semester!” some time ago to a friend , and i have some requirements for this very special girl.
First of all:
you MUST be gook-looking, i mean you can be cute, be beautiful,be attractive or sexy . that’s all right . if i ask you out to a movie or dinner, that means I think she is GOOD-LOOKING to ME!
then, here comes the second stage, i want you to have some of these qualities list below :
(these are the ones that really matter to me, more important than your appearance)
0: don’t be evil.
1: thoughtful and considerate to others
2: have ability to think independently, have your own opinions
3: have good sense of humor
4: at least have basic computer skill, if you are a coder, programmer-to-be or computer science relevant major , that’s just great . if you like writing programs/codes , or research in ALGORITHM, that’s just AWESOME!!!!!(i really mean it, that’s what a girl that i longing for days looks like) and i won’t repair your computer/phones for more than 3 TIMES!
5: love movies or American TV shows like:
[24, The big bang theory, How i met your mother, Leverage, It crowds, Spartacus, Gossip girl and PORNS:D:D!!]
then we may have more topic to chat about.
6: knowing stuffs, like how two people to maintain their relationship, what can do and what can NOT do, that’s important especially when we
decided to start a relationship.
7: respect people’s privacy, that mean i will NEVER give out my IM account, Email account, Social Networks account, etc. and i won’t ask you
for these infos, neither.
8: if you are a Hardcore Counter-Strike player , polo beginner or a programmer/coder , that will SIGNIFICANTLY increase my impression of you.
9:at lease understand what i wrote above , with or without the help of any kinds of TRANSLATOR. i know there’s a lot a grammar mistake inside this blog, if you can point it out, i appreciate it
Lastly, please do keep this in mind:
if i ask you out to a movie or dinner for the FIRST time, it just , just means i think you are good-looking to me, nothing less, nothing more.It takes days to build up a serious relationship.
thanks for reading this long piece-of-crap-blog-if-you-are-not-into-me lol
have a good day! sweetie!


interface CordaServiceInjectable
Interfaces that extend CordaServiceInjectable can be injected into net.corda.v5.application.services.CordaServices or net.corda.v5.ledger.notary.NotaryService using CordaInject.
CordaClock |
A Clock that tokenizes itself when serialized, and delegates to an underlying Clock implementation. abstract class CordaClock : Clock, SerializeAsToken, CordaServiceInjectable, CordaFlowInjectable |
CordappProvider |
Provides access to what the node knows about loaded applications. interface CordappProvider : CordaServiceInjectable, CordaFlowInjectable |
DiagnosticsService |
A DiagnosticsService provides APIs that allow CorDapps to query information about the node that CorDapp is currently running on. interface DiagnosticsService : CordaServiceInjectable, CordaFlowInjectable |
DigitalSignatureVerificationService |
The DigitalSignatureVerificationService digital signature verification operations. interface DigitalSignatureVerificationService : SignatureVerificationService, CordaServiceInjectable, CordaFlowInjectable |
FlowStarterService |
interface FlowStarterService : CordaServiceInjectable |
HashingService |
Handles hashing of bytes. interface HashingService : DigestService, CordaServiceInjectable, CordaFlowInjectable |
IdentityService |
An identity service maintains a directory of parties by their associated distinguished name/public keys, and thus supports the lookup of a party if given its key or its X.500 name. interface IdentityService : CordaServiceInjectable, CordaFlowInjectable |
JsonMarshallingService |
An optional service CorDapps and other services may use to marshall arbitrary content in and out of JSON format using standard/approved mappers. interface JsonMarshallingService : CordaServiceInjectable, CordaFlowInjectable |
KeyManagementService |
The KeyManagementService is responsible for storing and using private keys to sign things. An implementation of this may, for example, call out to a hardware security module that enforces various auditing and frequency-of-use requirements. interface KeyManagementService : CordaServiceInjectable, CordaFlowInjectable |
MemberLookupService |
Group Manager Service contains list of identities in Membership Management Group along with information about their identity keys, services they provide and host names or IP addresses where they can be connected to. The cache wraps around a list fetched from the manager, and adds easy lookup of the data stored within it. Generally it would be initialised with a specific Group Manager, which it fetches data from and then subscribes to updates of. interface MemberLookupService : CordaFlowInjectable, CordaServiceInjectable |
NetworkParameters |
Note: any values in the networkParametersValues map need to be a.) serializable for P2P (AMQP) and checkpoints (Kryo) b.) comparable with .equals() interface NetworkParameters : CordaServiceInjectable, CordaFlowInjectable |
NetworkParametersService |
Service for retrieving network parameters used for resolving transactions according to parameters that were historically in force in the network. interface NetworkParametersService : CordaServiceInjectable, CordaFlowInjectable |
PersistenceService |
Persistence Service API providing functionality to interact with an entityManager and execute pre-defined named queries. interface PersistenceService : CordaFlowInjectable, CordaServiceInjectable |
SerializationService |
Handles serialization and deserialization of objects. interface SerializationService : CordaServiceInjectable, CordaFlowInjectable |


Indice of Multiple Deprivation
SIMS website
SIMS Support
IM Process
Satellite Image
Mapfolio
Shelter Cluster
Field Photo
3W article
Cyclone Pam 3W
HDX
WFP Viz
Kenyan Red Cross Viz
Ebola Timeline Map
Ebola Treatment Centres Data set
Trello
HXL
Nepal Survey of Surveys
MENA Survey Portal
HXL Proxy
Missing Maps
Mapathon
Lubumbashi
Mapswipe
Where the maps are missing
Cooperative not competitive solutions
Open
Networked
Gall's law
Law Of Amplification
Data Literacy
Machine Learning
Proxy measures
Who What - MSF Network Map
Cash for data
Better corporate involvement
MSF Lab
Go Project
Synthesise information
Website
Twitter
Medium
Github


Tough laws sharply reduce Bangladesh acid attacks on women
by AFPDHAKA: Acid attacks on women have declined dramatically in Bangladesh in recent years as tough laws and the closer monitoring of chemical sales have cut down the grisly crime, officials and activists said on Monday.
According to Acid Survivors Foundation (ASF), there have been just eight such attacks this year — well down on the 494 cases reported in 2002 when new laws were enacted.
“It is a very good result, but our work hasn’t finished yet,” said Samanta Lal Sen, a prominent plastic surgeon and ASF trustee. “We’ll celebrate when the number of attacks will come down to zero,” he said.
The crime first emerged in the 1990s, with scores of spurned or jilted men throwing sulphuric or nitric acid in the faces of women who rebuffed their advances to “spoil them” for anyone else.
Victims are left with severely disfigured faces, including damaged eyes and skin. In many cases, parts of the face are lost completely.
Survivors also face being made social outcasts — especially in the rural areas of the conservative country that is home to 168 million people.
Officials and experts attributed the declining rate to a coordinated social, legal, and administrative campaign.
“The main reason is that we have enacted tough laws to fight the crime,” Bangladesh’s home minister Asaduzzaman Khan said.
In 2002 the state enacted a law that threatened the death penalty for anyone convicted of an acid attack.
According to ASF, since then at least 14 people have been sentenced to death, while nearly 700 others have been arrested and 338 jailed.
Minister Khan said a massive public awareness campaign and strict monitoring of the sale of dangerous chemicals also contributed to the decrease.
The government and local charities have also moved to remove the stigma for victims. Since its establishment in 1999, the ASF has worked with nearly 4,000 survivors of acid violence.
In one of the most recent attacks, a man was arrested in the Bangladeshi capital Dhaka for throwing acid at his ex-wife and her daughter.
Another survivor, Mosammat Jamila, told AFP she was happy that the number of acid attacks had come down to single digits.
“I never want to hear that the life of another girl is ruined like me. I don’t want anyone to go through the nightmares that I suffer,” she said through tears.


Take time if you haven’t already and sign the petition to have every single ballot AUDITED!!!
Over 55,000,000 people signed so far.
Send the swamp a clear message 👊🏻🇺🇸🇬🇧
Let's Be Heard: Scan the Ballots NOW!Everyday, the American people learn more about 2020 election fraud. Dead people voted. Votes mysteriously switched from one candidate to another. Hundreds of thousands of votes appeared out of...
https://freeroots.com/go/scan-the-ballots
90% of Covid-positive individuals are Asymptomatic. This is the most significant and meaningful statistic of all.
Asymptomatic Covid-positive have a spread rate of only 0.7% – less than 1%. They are NOT super spreaders.
Survival rate of ages 0-69 is 99.82%. Survival rate of age 70+ is 94.6% with high comorbidities and other causes of death.
In the 2017-2018 Flu season, there were 810,000 hospitalizations, far surpassing Covid hospitalizations for the entire year. Over 61,000 people died.
There were 195 pediatric deaths due to influenza, far greater than what has been reported for Covid-related pediatric deaths. No lockdowns, restrictions, social distancing, or masks were required.
There has never been a sample specimen of SARS-CoV-2 isolated and purified, and the inventor of PCR and other scientists have always said that PCR should not be used for medical diagnostics – it will produce false/positives.
I must be a fool because I find it very hard to believe that America voted for the following:
Higher gas prices Higher utility bills Higher taxes Joe Biden and his creepy hairy legs comment Antifa Kneeling Rioting Green New Deal Defund the police Hunter Biden Nancy Pelosi High unemployment Masks Lockdowns CNN Abortions Open Borders
Now maybe I am wrong but something just doesn’t add up.
Who is going to address the collectivist pledge of the so-called "proud" boys and how it contradicts the individualism which needs to be asserted in the face of blm who want to hold us white people responsible for the action of our ancestors!?
The black community is to blind to see, that their OWN people were the leaders of slave trading. Other then the Portuguese....the blacks themselves were the ones selling their own people.
@Timothybellette You make it sound like it was 20 years ago America.....over 200 years ago...blacks and whites traded people. Both classes were involved. It was not a bad thing for the times. It just happened. Nobody can change what happened...good or bad.
You complain about BLM holding us responsible for the actions of our ancestors, while patting yourselves on the back for the actions of your ancestors!
@Timothybellette No they don't.   Demanding he denounce racism over and over again. It's nothing but a ploy. It's a distraction.
Anything they demand we answer anything we demand they simply ignore.
  The black people sold their own people into slavery for just as long white people bought them. In fact ISLAM as a faith is more responsible than any other religion for slavery. Islam to this day condones slavery and to my knowledge is the only religion that does so openly. It openly condones SEXUAL SLAVERY OF DEFEATED ENEMIES. That is not in the past that is now January 5th.0 Two thousand and twenty-one. If any Muslim wishes to disagree with me then I suggest they read the Quran first. It has not been amended recently. So go for it, your own holy book will defeat you.
@Timothybellette I hear the neanderthals had some grievances too, why stop there.
You think people discussing how this country has a guaranteed bill of rights is the same as a bunch of pukes thinking the world owes them something?
 I'm a man, A REAL MAN, I own MY MISTAKES and no one else's.

But did you "create the modern world" like the proud boys claim to have done!? Because if you somehow do that then you are responsible for using Africans as slaves!
@Timothybellette We are not anymore. We are also not responsible for what came before us. We are responsible for what comes after us. PB's are anti race period. it's a cause that unites everyone.  Your not out fighting for something. There standing for you. They don't know you. BLM and ANTIFA. Maybe you know socialism. That should probably be front and center on your mind. Dipshit!
@Timothybellette The modern Western world is one in which slavery is illegal and considered immoral. Hence the pride one expresses in the creation of said Western world inherently conveys that achievement and that view. One is not proud of every single action but the culmination that led to the present value set. There is no need to express and address every sin nor every virtue. The summation is what is referenced. Further, acting in a group or collective does not imply collectivism. The individual is required to contribute to the group. In collectivism one is replaceable and merely a cog in the collective machine. Oh, and it is always best to dismiss leftist or Marxist framing as simple sophistry designed to sound smart and hide malice. Have a good day.
Echo it and call patriots! Because every Patriotic call is melting their phone lines! Call Congress at<PHONE_NUMBER>. Tell them to Audit the 2020 election. They are open 24/7. You have a voice! Use it ! Do it! Stop the Steal!

Roger roger sir ☝🏻🇺🇸
I must be a fool because I find it very hard to believe that America voted for the following:
Higher gas prices
Higher utility bills
Higher taxes
Joe Biden and his creepy hairy legs comment
Antifa
Kneeling
Rioting
Green New Deal
Defund the police
Hunter Biden
Nancy Pelosi
High unemployment
Masks
Lockdowns
CNN
Abortions
Open Borders
Now maybe I am wrong but something just doesn’t add up.
FOLLOW @TheLibertarianPatriots IF YOU AGREE!
Who is going to address the collectivist pledge of the so-called "proud" boys and how it contradicts the individualism which needs to be asserted in the face of blm who want to hold us white people responsible for the action of our ancestors!?
Echo it and call patriots! Because every Patriotic call is melting their phone lines! Call Congress at<PHONE_NUMBER>. Tell them to Audit the 2020 election. They are open 24/7. You have a voice! Use it ! Do it! Stop the Steal!
A petition? The swamp will not even act like they take that seriously.
Signed, sealed, and delivered.
And stolen by the Dems...

I’m ready Signed
ASK THESE "JOURNALISTS" WHY THEY NEVER SPEAK OF THE #NESARA #GESARA ACT.
MAKE THEM ANSWER YOU.
READ IT FOR GOD'S SAKE!!!

@StevenTroySixx
Done!!
What a waste. 74 million voted for Trump look where it got us....you think a PETITION is going to do anything?
It was easy to sign!
DONE!!
🇺🇸🇺🇸🇺🇸🇺🇸🇺🇸
Thank you for sharing!! Didn't know about this and just echoed! 🇺🇸🇺🇸 #americafirst #stopthesteal
I would but im not American
It wouldn’t let me sign. Said data base was closing
Tried to sign but it wanted me to sign up for something and put in a password 🤷


An HTML parser written in Common Lisp.
About
Closure HTML was written by Gilbert Baumann as part of the Closure web browser. It was first converted into a stand-alone installation by Ignas Mikalajūnas, and finally reassembled and documented for integration with Closure XML and use with the Closure browser by David Lichteblau under its current name.
It available under an MIT-style license.
Please send bug reports to<EMAIL_ADDRESS>(list information).
Related projects
- Closure XML: An XML library that can be used together with Closure HTML.
- Closure: The web browser based on Closure HTML.
History
2007-10-28
- Closure HTML released as a stand-alone project.
2005-03-13
- Closure released unter an MIT-style license.
1996-10-21
- sgml-parse.lisp created.


Download and install MySql Community Edition 5.5 from http://dev.mysql.com/downloads/mysql/
Log in for the first time to your MySql Server and set the password for the root user.
Societies Setup
Edit your org.societies.platform.properties file (you will find this in your VIRGO_HOME config directory)
jdbc.url=jdbc\:mysql\://<IP_ADDRESS>\:3306/
jdbc.password=
where is the name of the database that you will connect to from your societies container and is the password that you have set for the root user
Create the database
Run the MySql Server command line client, e.g.
mysql --user=root --password
At the prompt mysql> type
create database societiesdb;
exit;
If necessary replace societiesdb in the command with the name of the database you specified in your org.societies.platform.properties file. Please note: one uniquely named database table is required for each user or domain authority or combined node container.
Database Refreshing
Sometimes the schema of tables change within our bundles. If this happens, there are 2 choices open to the developer. You can drop the table(s), and then the new table(s) schema will be created when the bundles start up. Note this only applies to standalone tables that are not required as references by other tables for foreign keys etc.
drop table societiesdb.tablename
exit;
If necessary replace societiesdb in the command with the name of the database you specified in your org.societies.platform.properties file Replace tablename with the name of the table that you wish to drop. The new table schema will be created when the bundles start up in virgo.
The second option is to drop the database, and recreate it. All the table sturcture will be recreated again when the bundles start up. This is the recommended option for now, as it is the easier option and until we go to the trials, any data stored in the database is not critical.
drop database societiesdb;
create database societiesdb;
exit;
If necessary replace societiesdb in the command with the name of the database you specified in your org.societies.platform.properties file.
Note: This has to happen for every container that you want to connect to your MySQL database.


Map Tool
Coordinates
Graticule
Print Map
Routing
Population Calculator
Calculate Population
Calculate Buffer Population
Parcel Calculator
Service Area
Service Area Map Click
Service Area Shapfile
Service Area GEOJSON
Geospatial Tools
Buffer
Buffer Draw Point
Voronoi
Center
Envalop
Convex
BBox
BBox Polygon
Go To XY
Add Data
SHP
GEOJSON
KML
GEOTIFF
Road Score Card
Add Scheme


Gardai investigating after body of man found in container in Dublin
by Ken FoyGardai are keeping an open mind into the discovery of a man’s body in a container in north Dublin this morning.
The deceased, who has not yet been formally identified, was found at 10.50am on wasteland beside Balbutcher Lane in Ballymun.
He was pronounced dead at the scene and members of the Garda Technical Bureau are carrying out a forensic examination of the scene.
A senior source said that the man had visible wounds, consistent with having been assaulted and possibly stabbed.
Please log in or register with Independent.ie for free access to this article.
New to Independent.ie? Create an account
However, gardai are awaiting the confirmation of a post mortem examination to establish how he suffered these wounds as well as the cause of death.
The scene at Ballbutcher Lane was been cordoned off with uniformed and plain clothed detectives present.
Senior investigating officers have also attended the scene, which is behind a metal railing but is accessible over a small mound.
A derelict building as well as three containers are visible from the roadway. The male’s body was discovered in one of the containers this morning.


Design custom CFA patterns and colors
cfaDesignUI allows CFA designs that are formed by repeating a core CFA pattern. The number of rows columns and colors in this basic building block are specified by the user. In the UI window each color has its own dedicated panel. The sample points for each color can be specified by clicking on the nRows x nColumns array of push buttons. When a particular location is selected for a particular color, the pushbutton is colored white. The same location can not be selected for more than one color. Colors are specified in two ways:
1. As Gaussian curves along the wavelength range (380 -- 1068 nm)
2. Imported from an existing ISET coded color filter file
Example:
A cfaDesignUI window showing a 2 x 2 array with Gaussian transmittances.
Example:
A cfaDesignUI window showing a 3 x 3 array with transmittance imported from a Nikon D100 color filter file


Dillinger is a cloud-enabled, mobile-ready, offline-storage compatible, AngularJS-powered HTML5 Markdown editor.
Markdown is a lightweight markup language based on the formatting conventions that people naturally use in email. As John Gruber writes on the Markdown site
The overriding design goal for Markdown's formatting syntax is to make it as readable as possible. The idea is that a Markdown-formatted document should be publishable as-is, as plain text, without looking like it's been marked up with tags or formatting instructions.
This text you see here is *actually- written in Markdown! To get a feel for Markdown's syntax, type some text into the left window and watch the results in the right.
Dillinger uses a number of open source projects to work properly:
And of course Dillinger itself is open source with a public repository on GitHub.
Dillinger requires Node.js v10+ to run.
Install the dependencies and devDependencies and start the server.
cd dillinger
npm i
node app
For production environments...
npm install --production
NODE_ENV=production node app
Dillinger is currently extended with the following plugins. Instructions on how to use them in your own application are linked below.
| Plugin | README |
|---|---|
| Dropbox | plugins/dropbox/README.md |
| GitHub | plugins/github/README.md |
| Google Drive | plugins/googledrive/README.md |
| OneDrive | plugins/onedrive/README.md |
| Medium | plugins/medium/README.md |
| Google Analytics | plugins/googleanalytics/README.md |
Want to contribute? Great!
Dillinger uses Gulp + Webpack for fast developing. Make a change in your file and instantaneously see your updates!
Open your favorite Terminal and run these commands.
First Tab:
node app
Second Tab:
gulp watch
(optional) Third:
karma test
For production release:
gulp build --prod
Generating pre-built zip archives for distribution:
gulp build dist --prod
Dillinger is very easy to install and deploy in a Docker container.
By default, the Docker will expose port 8080, so change this within the Dockerfile if necessary. When ready, simply use the Dockerfile to build the image.
cd dillinger
docker build -t <youruser>/dillinger:${package.json.version} .
This will create the dillinger image and pull in the necessary dependencies.
Be sure to swap out ${package.json.version}
with the actual
version of Dillinger.
Once done, run the Docker image and map the port to whatever you wish on your host. In this example, we simply map port 8000 of the host to port 8080 of the Docker (or whatever port was exposed in the Dockerfile):
docker run -d -p 8000:8080 --restart=always --cap-add=SYS_ADMIN --name=dillinger <youruser>/dillinger:${package.json.version}
Note:
--capt-add=SYS-ADMIN
is required for PDF rendering.
Verify the deployment by navigating to your server address in your preferred browser.
<IP_ADDRESS>:8000
MIT
Free Software, Hell Yeah!


WINK - The Best Mobile Toolkit
A very best way to improve your mobile web applications.
For instance, the cube allows you to navigate between pages.
you said "WINK"?
A powerful toolkit makes its appearance on the mobile web
Wink on the mobile market
It seems that the WINK team has decided to launch its highly anticipated Toolkit
Organize the information flow
Stay informed and up to date everyday
Nullam at lacus tortor, quis imperdiet mi. Integer mattis mollis nulla eget dignissim. Fusce mi tellus, mollis eget cursus ut, euismod id tellus.
In accumsan, est id aliquet tristique, arcu augue malesuada nibh, eleifend scelerisque felis augue ac lectus.


This is a template
This is a template and you can change this however you want.
Generate a rickroll!
Generate a rickroll!


Lotus Elan Might Come Back To Fight The Porsche Boxster
It would sit above the Elise in Lotus' updated lineup.
by Adrian PadeanuIt’s hard to believe more than nine years have passed since Lotus took the 2010 Paris Motor Show by storm with the unveiling of five equally interesting concepts. One of them was a proposal to bring back the Elan, which had been planned to go on sale in 2013, but it never happened. The sports car marque from Norfolk had more downs than ups this decade, but it’s shaping up to have a bright future now that Geely is in charge.
The crown jewel of the range is the new Evija electric hypercar with nearly 2,000 horsepower, but Lotus is interested in dusting off some of its iconic nameplates to join the new addition to the lineup. It appears the Elan is being planned for a revival with a third generation to make up for lost time. Details are scarce at the moment of writing, but Autocar is reporting the nameplate has a “strong possibility” of making a return in the years to come.
Sources familiar with the matter have told the British magazine that people within Lotus are “very excited” by the car’s configuration, which is said to take the shape of a two-seat convertible positioned above the Elise. It’s said to be roomier and more comfortable than the aging roadster – which has been around since 1996 – while offering more amenities.
Gallery: 2010 Lotus Elan concept
Despite an increased footprint and a more generous list of equipment, the resurrected Elan is expected to live up to Lotus’ ethos of focusing on a lightweight construction. Consequently, the new Lotus is estimated to weigh less than its chief rivals – Porsche 718 Boxster and BMW Z4. It can only happen by using as foundation a completely new platform scheduled to debut in a couple of years to underpin the future Elise/Exige and Evora.
The fully refreshed lineup and the addition of the Evija will be complemented by a new Esprit and a long-rumored SUV, which even though won’t be to the delight of purists, the high-riding Lotus could end up as the company’s cash cow. Seeing as how the Macan and Cayenne have worked wonders for Porsche, there are valid reasons to believe a Lotus from Hethel could also be a success.
The Future Of Lotus:
Meanwhile, one last hurrah is being planned for the current-generation Evora and should be out by the end of 2020 with improved ergonomics to turn the sports car into a better daily driver.
Source: Autocar


Docs
Prerequisites
Setup functions
- on functions.azure.com, create a new function app
- app name will be randomly generated
- create webhook+API function
- template – choose c# or JS, see Azure github repo
- standard mode http trigger, authorization level anonymous
- configuration becomes a JSON definition of inputs/outputs/maps…
- you can control memory, CORS etc for your function from in Function App Settings – make sure to configure CORS
- if you want to add a wildcard (*) then remove everything else
- Kudu is a super-admin dashboard for websites in azure, can also be used for this, gives you a browser to check what’s actually deployed
Deploy
Function App Settings -> Configure continuous integration
- ftp access
- or github push
- or dropbox folder sync …
- or visual studio
- or IIS webdeploy
- or Kudu, just drag + drop
Troubleshooting
- in Manage you see the hosting stack traces for errors, but in Develop you can see the actual Node.js stack traces
- You can use Kudu, then LogsFiles
Differences from Lambda
- no multiversioning, but you can use “deployment slots”
- concept of function apps, not completely independent functions
- one function = one URL, function name is part of the URL
- so create a function app with 2 functions, info and command
- convention: name of the folder is the name of the function
- use git push for atomic deployments
When deploying from command line
- make sure to set “authLevel”: “anonymous” in bindings/httpTrigger
- no way to set CORS in the JSON file, have to set it from the portal
- make sure that http method POST is allowed, or remove “GET” from the /command function


A simple jQuery plugin for creating popover elements similar to Google's new 'apps' launcher/switcher.
Click the buttons below to see examples. The popover will ensure that it is kept within the viewport where possible, and that the arrow at the top always points to the element which triggered it.
{ width: 400, preventHide: true, onShow: function() { if (console && console.log) console.log("Popover shown."); }, onHide: function() { if (console && console.log) console.log("Popover hidden."); } }
The plugin has a few options which can be passed to it:
| Property | Default | Description |
|---|---|---|
width |
250 | The width of the popover element (pixels) |
fadeInDuration |
65 | Duration of popover fade-in animation (ms) |
fadeOutDuration |
65 | Duration of popover fade-out animation (ms) |
viewportSideMargin |
10 | Space to leave at the side, if up against the viewport edge (pixels) |
preventHide |
false |
Prevent hiding when clicking within popover (true/false) |
onShow |
(none) | Callback to be run when the popover is shown. this
is the trigger element and the first argument passed to the
function is the popover element (both jQuery-wrapped). |
onHide |
(none) | Callback to be run when the popover is hidden. Same as onShow . |
The default styling is visually similar to Google's pop-out apps menu
as I like the clean lines and look. However the appearance can be modified
by changing/overriding the styles in the jquery.gpopover.css
stylesheet.
The main popover element has the gpopover
class, and the
arrow is made up of two elements with the classes
gpopover-arrow
and gpopover-arrow-shadow
. The
latter is positioned 1 pixel higher to give the shadow/outline effect.


Fire Detection System
[Home]
[Create User Account]
[Login Account]
[Register Sensor]
[Modify Sensor]
[Monitor]
[Documentation]
Register Sensor
Sensor ID:
Location:
Latitude:
S
Longitude:
E
Input Guide
Input of formatting characters (',",°) is not necessary.