March 10, 2020
TO: The John Jay College Community
RE: Coronavirus Update–College is Closed Tomorrow, Wednesday March 11
I am writing to inform you that we learned late today that a member of our John Jay community has tested positive for the coronavirus. The student is safely at home recovering under medical guidance, and our thoughts are with her and her family for a speedy recovery. Because the student was on campus only Thursday evening for one class last week and did not develop symptoms until Saturday, we have been advised by State health officials that the risk to our community is low. However, out of an abundance of caution, the school will be closed tomorrow, Wednesday, March 11.
We will use the day tomorrow to consult further with public health and state and city officials. We will contact directly the other students in her class and their instructor to make them aware and answer any questions they may have. In the meantime, all on-campus classes are suspended tomorrow, but any fully online courses will proceed as scheduled. Unless otherwise notified, all students, faculty, staff, and visitors should not come to any of the College’s campus buildings tomorrow, March 11.
What You Should Know Now
· If You’re Sick: As always, if you feel sick, please contact your health provider. If you feel you can’t afford or are otherwise unable to seek care, please call 311. You should know that hospital staff cannot ask you about your immigration status or deny you care based on your ability to pay. If you come into contact with someone who is known to have been exposed to the coronavirus or just tested positive, please contact Malaine Clarke at<PHONE_NUMBER> or<EMAIL_ADDRESS>· Cleaning & Disinfecting Campus: Because we have been proactive in our efforts to minimize risk to our community from this virus, by coincidence, the Facilities Department dispatched additional staff to perform a thorough cleaning of the campus on Sunday, March 7. This was in addition to our practice of routine environmental cleaning for all restrooms and high-touch surfaces in common areas during the week.
· Prepare for Remote Classes: Faculty should spend the day tomorrow preparing for the event that their courses may need to be moved online for distance learning. Faculty can review the resources that have been shared and posted on the College website to assist with the process of translating their courses to distance learning. The Department of Online Education and Support and the Teaching and Learning Center will also continue to post resources here.
Please continue to visit the CUNY website and John Jay’s College website for the latest updates, information, and resources, and I will continue to update the community as we receive new information.
During these uncertain times, I am grateful for the care and concern that you have shown for your fellow community members, as well as to those who are the most vulnerable among us and in our communities. At a time like this, we are truly one community where everyone is committed to working together and taking care of each other.
Thank you,
<EMAIL_ADDRESS>Karol V. Mason
President


--- layout: documentation title: ExploitTargetBaseType ---
This type represents the STIX Exploit Target component. It is extended using the XML Schema Extension feature by the STIX Exploit Target type itself. Users of this type who wish to express a full exploit target using STIX must do so using the xsi:type extension feature. The STIX-defined Exploit Target type is ExploitTargetType in the http://stix.mitre.org/ExploitTarget-1 namespace. This type is defined in the exploit_target.xsd file or at the URL http://stix.mitre.org/XMLSchema/exploit_target/1.1.1/exploit_target.xsd. Alternatively, uses that require simply specifying an idref as a reference to an exploit target defined elsewhere can do so without specifying an xsi:type.
| Field Name | Type | Description |
|---|---|---|
| @idoptional | QName |
Specifies a globally unique identifier for this ExploitTarget. |
| @idrefoptional | QName |
Specifies a globally unique identifier of an ExploitTarget specified elsewhere. When idref is specified, the id attribute must not be specified, and any instance of this ExploitTarget should not hold content. |
| @timestampoptional | dateTime |
Specifies a timestamp for the definition of a specific version of an ExploitTarget When used in conjunction with the id, this field is specifying the definition time for the specific version of the ExploitTarget. When used in conjunction with the idref, this field is specifying a reference to a specific version of an ExploitTarget defined elsewhere. This field has no defined semantic meaning if used in the absence of either the id or idref fields. |


Hi, My Name is Hakeem Amusat, a student of computer science.
I'm a full stack web developer, programmer. I'm proficient in developing web
applications using PHP and full-stack frameworks like Laravel, Phalcon and
MEAN stack technologies.
HERE'S WHAT I DO
Web Programming & Design
Whether basic websites or full stack web apps, transform your ideas into beautiful
and highly functional interfaces with creative solutions and mesmerizing experiences
that work across a variety of screen sizes. All crafted just for you.
Mobile App Development
With a mobile first, cloud first approach, expand your reach with interactive,
enterprise-grade and responsive applications for businesses and individuals alike,
on the Windows, Windows phone and Android platforms.
Desktop App Programming
I develop desktop applications that run seamlessly on windows operating system using .NET framework
I can help you turn your idea into an interesting solution so that your computer solve problems for you.
System Programming
Computer systems are the back bone of many solutions, that is why they must be managed efficiently.
I'm an expert in computer system maintenance and troubleshooting.
You can always contact me when you have issues.
Software Configuration
I'm here to help you solve your software related problems.
You can always contact me when you need to configure a new
software or have any software related issues.
Consultation
No one lights a lamp in order to hide it behind the door:
the purpose of light is to create more light, to open people’s eyes,
to reveal the marvels around.
HEAR WHAT PEOPLE ARE SAYING
"Haykay is incredibly dedicated, resourceful and passionate about the work he does.
Whatever it takes to get it done, and get it done right,
Haykay will take care of it."
Kunle
"Haykay – easy to work with, great quality, and
get the big picture…what more can you ask for.!"
Isibor Moses
"Hakeem is a top notch developer with a ton of experience.
He is an expert and thought leader in his field, and a pleasure to be around"


http://action.vday.org/site/R?i=kzNCCZf-SHGwCRDPLJd6wA
http://action.vday.org/site/R?i=I0fpX6VoCqkUf6kKdS-Ivg
http://action.vday.org/site/R?i=qvYFyxCA66jIHcJrQCRD0Q
http://action.vday.org/site/R?i=TbLpvUDcfEwZHTk6O2uKnA
SHOW the world what ONE BILLION RISING looks like! Document/Share your
RISING!
On 14 February 2013, we want to SHOW THE WORLD WHAT ONE BILLION RISING
LOOKS LIKE and we need your help! SHARE your event with the world and
us via social media.
http://action.vday.org/site/R?i=WiuYZaNXMGcwF8QgOzw0Mw
READ: Documenting and Livestreaming Your Rising
http://action.vday.org/site/R?i=6pHzV-w9vUIAdw0M3EFzpw
The excitement is building every minute through each new person that
you’ve connected to with the message of ONE BILLION RISING.
On 14 February onebillionrising.org
http://action.vday.org/site/R?i=6D4nah4-6Ei-viK5JvTxhg
will turn into a live arena, streaming the world of ONE BILLION
RISING! Following the 14, we’ll be compiling footage from events
all over the world for an exciting new documentary about the movement.
NOW is the time to start making your plans to document your event,
share your videos, photos, live stream, written updates and stories,
tweets, Facebook posts, etc. WE WANT IT ALL!
READ: How to Share Your Event Photos and Videos with One Billion
Rising
http://action.vday.org/site/R?i=qvp4QDiedGsQ4EgZ-4Rx5A
Documenting your events is VERY IMPORTANT, this is how we can SHOW THE
WORLD WHAT ONE BILLION RISING LOOKS LIKE! Please use video (cameras,
cell phones, computers etc.) and photos and SHARE them with us via
social media.
LET THE WORLD SEE YOU RISING!
We are calling on every single one of you to DOCUMENT and LIVE STREAM
your RISING if possible.
To keep things as simple as possible we have created a “How To” with
simple instructions on how to share your rising with the world. We’ve
partnered with Google and YouTube to make streaming your event really
easy, as well as providing options for the more ambitious amongst you.
And who knows? If we see your event streaming on the 14th it might be
added to the onebillionrising.org
http://action.vday.org/site/R?i=cKZU0655eTqWYGFQj0m3eg
homepage along with other fantastic content coming in from around the
globe! Picture live footage of your event next to footage from events
in Sydney, Bukavu, Istanbul, Manila, New York, Oahu, and thousands
more locations.
SHARING your Rising is an important aspect of your event. By
connecting your actions visually online with those in 197 countries we
will truly SHOW THE WORLD WHAT ONE BILLION LOOKS LIKE!
READ: How to Livestream Your Rising
http://action.vday.org/site/R?i=6E-P3cRs6PqurNAjYuzRsg
Can’t Live Stream But Still Want to Document?
We understand not all locations have high enough bandwidth to support
live streaming. However we still want you to document your event and
share it via social media AS YOUR EVENT IS HAPPENING.
Also, V-Day is creating a ONE BILLION RISING documentary project, and
we are looking to include footage of local events from all over the
world, so please take video (cameras, cell phones, computers, etc.)
and photos of your events.
FIND US: on Facebook. on Twitter. on Youtube. on Instagram. on Google+
http://action.vday.org/site/R?i=HLQhJBvFWqBezgB3TYW0ig
http://action.vday.org/site/R?i=zFEW0YgDNLFtn_zleIzzcg
http://action.vday.org/site/R?i=b7wOhwIXx1Ix8jYlnZ0VoQ
http://action.vday.org/site/R?i=stWB5XgUbXV9MAlZqLRT1g
http://action.vday.org/site/R?i=MVO8hEVMYE8vmHvwsLk03Q
http://action.vday.org/site/R?i=5kPWRv8N-U1MVCskMktInw
http://action.vday.org/site/R?i=bUq7ZCC1o5c2JHix-RXXRg
http://action.vday.org/site/R?i=rLaWZ0GflK_4UvZ_Eu81zw
http://action.vday.org/site/R?i=l5lWqJXKltOEuwZdsidWXw
http://action.vday.org/site/R?i=GlgG8CS7xJnhCvNUv_YMdA
unsubscribe
http://action.vday.org/site/CO?i=y3eLsM5h6F1tnQD0gyvLPg7dO1jepNYF&cid=1062
Powered By Convio


Welcome to the AI Camp
An opportunity to explore the field of AI and showcase your skills by turning imagination to reality. MasterClass and intense discussion sessions by professors from top universities. An enthralling hackathon offering Internship opportunities.
The SpeakersThe Speakers
Farhan Choudhary
Gartner Analyst -
Artifical Intelligence & Machine Learning
Master Class on Demystifying Artificial Intelligence
Mathangi Sri
VP Data Scientist @GoFood
20 Patents, 5+ Publications,
Top
100 Women by INBA, India
Master Class on AI : a myth or reality
Puneet Mathur
Research Intern 2021, Adobe & Ex- AI Research Intern @Dataminr
CS Ph.D. at University of Maryland
No Details yet
Sumit Agarwal
Artificial Intelligence & Machine
Learning Research Analyst at
Gartner
Master Class on ML & AI - Impact on Finance through automation
Dr. Samiya Khan
Rresearch Fellow at University of Wolverhampton
Master Class on Intelligent Analytical Solutions for IOT.
Dr. Vinay Kulkarni
Consultant, Teacher & Mentor,
ML & Big Data Processing
Ph.D. IIT Bombay
Master Class on AI/Ml is it for me?
Event Schedule
-
Day 01
October 8, 2021
-
Day 02
October 9, 2021
-
Day 03
October 10, 2021
-
Day 04
October 12, 2021
Dr. Vinay Kulkarni
Professor at IIT BMaster Class on AI/ML is it for me?
He is a cheif scientist in the field of software systems at TCS research who would give you tips on how AI and Ml can help in corporate sector to boost revenue and growth.
Farhan Choudhary
Gartner AnalystDemystifying Artificial Intelligence
He is an analyst with Gartner's Artificial Intelligence Team and has also worked as a Data Analyst. You might have heard him speaking with some top leaders of the world. Its your chance to use his experience for your queries.
Mathangi Sri
VP Data ScientistAI : A Myth or Reality
She is among the top 50 influential AI leaders in India. She has published more than 20 global patents in data sciences and a specialist in Machine Learning, NLP Technologies & tools. Its our honour to host her and an opportunity for you all.
Dr. Samiya Khan
Research Fellow at UoWIntelligent Analytical Solutions for IOT
She is currently working as a Postdoctoral Research Fellow at the Faculty of Science & Engineering, University of Wolverhampton, United Kingdom. She completed her Ph.D. in Computer Science from Jamia Millia Islamia, India, and has several research papers related to her fields, Cloud, Data-intensive Computing, and Big Data, in reputed publications such as Elsevier, Springer.
Sumit Agarwal
Research Analyst at GartnerML and AI impact on finance of a company through automation
In this session we will discuss about how AI and ML can impact the financial status of a company by its better prediction of numbers and facts through automation.
100+
Registrations6
Topics6
Speakers4
DaysInformation
Even if you love technology, finding the right path to follow can be a tough task. But don’t worry.
We got your back!!
To answer all your queries, Linux User Group TIET presents you a *series of masterclasses* featuring
experts and professors from top notch universities. Are you ready to take up this challenge? Mark the
dates in your calendars and hop into the event, let's unwind ourselves with this fun yet productive
event.


UTC -5 (daytime saving -4)
Voltage: 110 V
Frequency: 60 Hz
Peso (Col$) of 100 centavos. A maximum of 500 pesos can be exported and not more than 60 Col$ exchanged on departure.
The Peso varies its exchange rate with the US dollar. For example, in late 2009 it was 2350 peso's to the dollar. In 2012 1820 peso's to the dollar. So, if you agree on having work done on your boat here, it's advisable to somehow lock in the final price.
Travellers' cheques are difficult to change, as reportedly there are many forged American Express travellers' cheques in circulation. It is also difficult to change pounds sterling and US dollars are preferred, particularly smaller notes such as US$20 bills. The exchange rate on actual dollars however is quite poor, so you need to either arrange for a bank transfer or get your money out of the ATM's.
Use great care when banking here, especially outside of the centro area. Perhaps use a taxi for return trips to your boat if handling large amounts of cash, or use ATM’s and work with smaller sums of money. In a bank others may see you counting out large sums or you may be marked as a good target.
It is perhaps a good idea to have more than one credit card in case of emergencys and to have copies of your passport.
International Dialing code for Colombia is +57.
RangeRoamer provides short-term cell phone service for international travelers. Buy, Rent, or use your own cell phone.
Northwest Caribbean Net, 1400 UTC 6209 USB, alternates 6212 and 6516, 7 days/wk. Generally covers Providencia north to Mexico on the Carib side, including Providencia, San Andreas, Honduras, Guatemala, Belize, Mexico, Cuba, Jamaica and the Caymans. They often follow boats all the way home to Key West through Galveston on the US coast, and sometimes boats heading south will continue to check in down to Panama, but not often.
Emergencies - 119
IMRAY AND ADLARD COLES PILOT BOOKS are available at a discounted price for Noonsite.com users via World Cruising Club
Sailing the Caribbean Coast of Colombia
By Constance Elson of SV Tashtego (compiled in 2011)
See report here for further details. Also includes an information guide to Santa Marta.
A Thinking Mans Guide to Voyages South - the Many Facets of Caribbean Cruising
Author: Frank Virgintino
Published by Lulu: September 2013
ISBN<PHONE_NUMBER>847
Roughly 200 pages long, the Guide addresses everything North American sailors need to know to get to the Caribbean safely through a discussion of various routes from North America to the Caribbean as well as a discussion of the entire Caribbean – which the author breaks down into four quadrants.
Available at Kindle as well as all other EPub bookstores
Now available as Free download at: www.freecruisingguide.com
See Noonsite reviews here
Pacific Coast of Colombia - A Guide to the Lesser Known Coast
By Eric Baicy & Sherrell Watson (Jan 2011)
www.svsarana.com/free_guides.php#COL
A free, online publication, to this part of the coast.
Colombia Tourist Information
Colombia's Official Travel Guide
Sailing to Columbia from Jamaica
By Trimaran Naga
Sailing the Caribbean Coast of Colombia
By Constance Elson for the Caribbean Compass - September 2011
Colombian Nautical Tourist Guide
Published online by the Colombian Government (2014)
In Spanish only, but contains some very useful large scale charts.
Jacaranda Journey
http://www.jacarandajourney.com/
Chuck Houlihan & Linda Edeiken left San Diego in 2005 and spent 7 years cruising Mexico. In 2013 they headed south and have since explored Central America and South America with plans to explore Chile in 2015. Their blog has excellent passage notes and trip reports, including lots of information for Colombia.
Noonsite welcomes information and updates especially regarding clearance, customs and immigration procedures from cruisers visiting this country.
Please E-mail noonsite with any new information, updates or corrections. Even just a short email confirming that the current data is accurate would be most helpful.


I joined Zhejiang University in Dec. 2021 as a University Chair Professor 浙江大学求是讲席教授.
I was an Adjunct Professor of Data Science and AI from 2019 to Jun. 2022 at Faculty of Information Technology, Monash University; and a Senior Lecturer/Associate Professor/Professor at The University of Adelaide from 2011 to Nov. 2021. I was awarded an ARC Future Fellowship in 2012. Prior to that I worked at NICTA and Australian National University, Canberra from Oct. 2005 to early 2011.
I studied at University of Adelaide, Australia (PhD), Australian National University (MPhil) and Nanjing University (BSc and MSc).
News
Open source toolbox for multiple instance-level detection and recognition tasks developed by my team
The FCOS paper is one of the most influential papers
| office: 浙江大学紫金港校区蒙民伟楼 | |
| orcid | |
| Bowen Zhang | 2020 ↝ 2023 | Researcher at University of Adelaide |
| Xinyu Wang | 2019 ↝ 2023 | Researcher at University of Adelaide |
| Libo Sun | 2019 ↝ 2022 | Researcher at University of Adelaide |
| Xinlong Wang | 2019 ↝ 2022 | 北京智源研究院; Dean’s Commendation for Doctoral Thesis Excellence; Google PhD Fellowship; University Doctoral Research Medal 2021 |
| Jia-Wang Bian | 2019 ↝ 2021 | Researcher at University of Oxford |
| Yutong Dai | 2018 ↝ 2021 | Dean’s Commendation for Doctoral Thesis Excellence |
| Wei Yin | 2018 ↝ 2021 | Dean’s Commendation for Doctoral Thesis Excellence |
| Hu Wang | 2018 ↝ 2021 | Researcher at University of Adelaide |
| Yang Zhao | 2018 ↝ 2021 | Researcher at University of Adelaide |
| Yifan Liu | 2018 ↝ 2021 | Lecturer at University of Adelaide; Dean’s Commendation for Doctoral Thesis Excellence; Google PhD Fellowship |
| Zhi Tian | 2018 ↝ 2021 | Researcher at Meituan 美团; Dean’s Commendation for Doctoral Thesis Excellence; Google PhD Fellowship; University Doctoral Research Medal 2021 |
| Hao Chen | 2018 ↝ 2020 | Assistant Professor at Zhejiang University 浙江大学; Dean’s Commendation for Doctoral Thesis Excellence; Thesis |
| Tong He | 2017 ↝ 2020 | Researcher at University of Adelaide; Dean’s Commendation for Doctoral Thesis Excellence; Thesis |
| Ming Cai | 2017 ↝ 2020 | Thesis |
| Vladimir Nekrasov | 2017 ↝ 2020 | Research Scientist at Skydio; Dean’s Commendation for Doctoral Thesis Excellence; Thesis |
| Tong Shen | 2015 ↝ 2018 | Research Scientist at JD AI 京东 Thesis |
| Hui Li | 2014 ↝ 2018 | Research Scientist at Samsung; Dean’s Commendation for Doctoral Thesis Excellence; Thesis |
| Yuanzhouhan Cao | 2014 ↝ 2017 | Lecturer at Beijing Jiaotong University; Thesis |
| Qichang Hu | 2014 ↝ 2017 | Thesis |
| Ruizhi Qiao | 2014 ↝ 2017 | Researcher at Tencent 腾讯; Thesis |
| Bohan Zhuang | 2015 ↝ 2018 | Lecturer at Monash University; Dean’s Commendation for Doctoral Thesis Excellence; Thesis |
| Yao Li | 2013 ↝ 2017 | Senior Applied Scientist at Microsoft Seattle; Dean’s Commendation for Doctoral Thesis Excellence |
| Peng Wang | 2014 ↝ 2016 | Lecturer at University of Wollongong; Thesis |
| Fayao Liu | 2011 ↝ 2015 | Researcher at A*STAR Singapore; Dean’s Commendation for Doctoral Thesis Excellence; Thesis |
| Guosheng Lin | 2011 ↝ 2014 | Assistant Professor at Nanyang Technological University 新加坡南洋理工大学; Dean’s Commendation for Doctoral Thesis Excellence, Google PhD Fellowship; Thesis |
| Lingqiao Liu | 2010 ↝ 2013 | Senior Lecturer at University of Adelaide; ARC DECRA Fellowship; Thesis |
| Junae Kim | 2007 ↝ 2011 | Research Scientist at Defence Science and Technology Group; Thesis |
| Sakrapee Paisitkriangkrai | 2006 ↝ 2010 | Data Scientist; Thesis |
| Hanxi Li | 2006 ↝ 2010 | Professor at Jiangxi Normal Univeristy; Thesis |
| Luping Zhou | 2006 ↝ 2010 | Associate Professor at University of Sydney; ARC DECRA Fellowship; Thesis |
| Dandan Zheng | 2019 ↝ 2020 | Visited from Peking Union Medical College |
| Chunlei Liu | 2019 ↝ 2021 | Visited from Beihang University; now Postdoc Researcher at The University of Sydney |
| Haokui Zhang | 2018 ↝ 2019 | Visited from Northwestern Polytechnical University |
| Xinyu Zhang | 2018 ↝ 2019 | Visited from Tongji University |
| Cheng Yan | 2019 | Visited from Beihang University; 现在：天津大学助理教授 |
| Yuliang Liu | 2019 ↝ 2020 | Visited from South China University of Technology 图象图形学学会优秀博士学位论文奖; 现在：华中科技大学教授 |
| Changqian Yu | 2019 | Visited from Huazhong University of Science and Technology 图象图形学学会优秀博士学位论文奖; 现在：美团 |
| Shuai Li | 2019 | Visited from Arizona State University |
| Wei Liu | 2017 ↝ 2018 | Visited from Shanghai Jiao Tong University |
| Pingping Zhang | 2017 ↝ 2018 | Visited from Dalian University of Technology 图象图形学学会优秀博士学位论文奖; 现在：大连理工大学副教授 |
| Xueling Chen | 2017 ↝ 2018 | Visited from Northwestern Polytechnical University |
| Chenglu Zhu | 2017 ↝ 2018 | Visited from Zhejiang University of Technology |
| Jinbo Chen | 2017 ↝ 2018 | Visited from Zhejiang University of Technology；现在：阿里云 |
| Yasi Wang | 2017 ↝ 2018 | Visited from Harbin Institute of Technology |
| Jianpeng Zhang | 2017 ↝ 2018 | Visited from Northwestern Polytechnical University |
| Yuzhu Zhang | 2017 ↝ 2018 | Visited from Northwestern Polytechnical University |
| Yu Chen | 2016 ↝ 2017 | Visited from Nanjing University of Science and Technology 图象图形学学会优秀博士学位论文奖 |
| Liqian Liang | 2016 ↝ 2017 | Visited from Beijing Jiaotong University |
| Xiu-Shen Wei | 2016 ↝ 2017 | Visited from Nanjing University; 现在：南京理工大学教授 |
| Hao Lu | 2016 ↝ 2017 | Visited from Huazhong University of Science and Technology; 现在：华中科技大学副教授 |
| Ke Xian | 2016 ↝ 2017 | Visited from Huazhong University of Science and Technology |
| Huibing Wang | 2016 ↝ 2017 | Visited from Dalian University of Technology; 现在：大连海事大学副教授 |
| Yanzhu Zhao | 2016 ↝ 2017 | Visited from Zhejiang University of Technology |
| Xiao-Jiao Mao | 2015 ↝ 2016 | Visited from Nanjing University |
| Ruoxi Deng | 2015 ↝ 2017 | Visited from Central South University; 现在：温州大学助理教授 |
| Lei Zhang | 2015 ↝ 2017 | Visited from Northwestern Polytechnical University 图象图形学学会优秀博士学位论文奖; 现在：西北工业大学教授 |
| Jiewei Cao | 2016 | Visited from University of Queensland |
| Zongyuan Ge | 2015 | Visited from Queensland University of Technology; 现在：Associate Professor at Monash University |
| Zetao Chen | 2015 ↝ 2016 | Visited from Queensland University of Technology; 现在：Research Scientist at Facebook Reality Lab, Zurich Switzerland |
| Biyun Sheng | 2015 ↝ 2016 | Visited from Southeast University; 现在：南京邮电大学助理教授 |
| Lei Luo | 2013 ↝ 2014 | Visited from National Univeristy of Defense Technology; 现在：国防科技大学副教授 |
| Bo Li | 2013 ↝ 2015 | Visited from Northwestern Polytechnical University; Research Scientist at Inception Institute of Artificial Intelligence, UAE |
| Chao Zhang | 2011 ↝ 2014 | Visited from Beijing Institute of Technology; 现在：Netease 网易 |
| Yongbin Zheng | 2010 ↝ 2011 | Visited from National Univeristy of Defense Technology; 现在：国防科技大学教授 |
| Zhihui Hao | 2010 ↝ 2011 | Visited from Beijing Institute of Technology; 现在：高德地图 |
| Fumin Shen | 2011 ↝ 2012 | Visited from Nanjing University of Science and Technology; 现在：电子科技大学教授 |
| Peng Wang | 2008 ↝ 2010 | Visited from Beihang University; 现在：西北工业大学教授 |
王鹏 (西北工业大学教授); Sakrapee Paisitkriangkrai; Jiewei Cao; Peng Wang (University of Wollongong助理教授); 吴子锋 (深睿医疗); 谭明奎 (华南理工大学教授); 武林 (合肥工业大学教授); 林国省 (新加坡南洋理工大学助理教授); 陆昊 (华中科技大学副教授); 张磊 (西北工业大学教授); 马超 (上海交通大学副教授); 庄博涵 (Monash University助理教授); 曹原周汉 (北京交通大学副教授); 张俊杰 (上海大学助理教授); 刘伟 (上海交通大学副教授); 贺通 (上海人工智能实验室); 田值 (美团); 蔡英 (西南民族大学副教授); 刘禹良 (华中科技大学教授); 庞观松 (新加坡管理大学助理教授).


LuaInterface is a way for Lua programs to access the CLR (Common Language Runtime), otherwise known as .NET in the Windows world and Mono on Linux. (This version (1.5.3) can be accessed using the standard Lua binaries for Lua 5.1; there is a later version, but it has its own copy of Lua which is run in completely managed code.) You can also use LuaInterface to easily add Lua scripting abilities to C# programs, for instance, but that is outside the scope of this tutorial and is discussed fully in the LuaInterface documentation.
Here is a very simple program which uses the CLR classes to write out the value of the square root of two:
require 'luanet'
luanet.load_assembly "System"
Console = luanet.import_type "System.Console"
Math = luanet.import_type "System.Math"
Console.WriteLine("sqrt(2) is {0}",Math.Sqrt(2))
The first task for any LuaInterface program is to load any assemblies needed, and the second task is to import the types. In this case, the Console
and Math
classes are loaded explicitly, and we call their static methods WriteLine
and Sqrt
. LuaInterface will convert Lua numbers and strings into their .NET equivalents for us.
Like all hello programs, it is basically silly; the equivalent pure Lua program is of course just this one-liner:
print("sqrt(2) is "..math.sqrt(2))
But these techniques will be used to bring all the considerable power of the .NET framework into Lua programs, like the ability to easily write good-looking GUI applications, examine running processes, etc.
If you allow for the usual 'public static main' stuff, the equivalent C# program is also a one-liner, thanks to the using
statement. This brings a whole namespace into global scope, so if there's a using System;
at the top, then any member of that namespace becomes directly available. It would be very convenient to have this available for LuaInterface programs as well. It turns out that this is not difficult at all, using a short utility library:
require 'CLRPackage'
import "System"
Console.WriteLine("sqrt(2) is {0}",Math.Sqrt(2))
Here the import
function works very much like C#'s using
statement. This program brings in the System.IO
namespace, so now useful things like Directory
and Path
effectively become global.
require 'CLRPackage'
import "System"
import "System.IO"
Console.WriteLine("we are at {0}",Directory.GetCurrentDirectory())
The power of interpreted languages is that they usually provide an interactive mode, where you can enter into a question-and-answer game with the system and explore the possibilities of libraries without having to write a host of little programs. Even if your main development language is C# or C++, having access to an interactive language like Lua is an excellent exploration tool. Since expressions are not statements in Lua, one has to use print
to explicitly output expressions, or use the =
shortcut:
C:\lang\lua\libraries\Built\console>lua
Lua 5.1.3 Copyright (C) 1994-2008 Lua.org, PUC-Rio
> require "CLRPackage"
> import "System"
> = Console
ProxyType(System.Console): 18643596
> = Environment.CurrentDirectory
C:\lang\lua\libraries\Built\console
Here we get a glimpse into the inner workings of LuaInterface; the actual type of Console
is a proxy type which has the job of passing on Lua calls to the underlying .NET class.
A more convenient way to use Lua interactively is ilua
; this does not require =
and may appear more natural to people used to languages like Python. (If the default command-line irritates you, then run 'lconsole.wlua' for a proper GUI prompt.)
C:\lang\lua\libraries\Built\console>lua -lilua
ILUA: Lua 5.1.2 Copyright (C) 1994-2007 Lua.org, PUC-Rio
"quit" to end
> require 'CLRPackage'
true
> Console
ProxyType(System.Console): 18643596
> Console.WriteLine("Hello")
Hello
> import "System.IO"
{packageName='System.IO'}
> Directory
ProxyType(System.IO.Directory): 33574638
> dir = Directory.GetCurrentDirectory()
> dir
'C:\lang\lua\libraries\Built\console'
> Path.GetDirectoryName(dir)
'C:\lang\lua\libraries\Built'
> File.Exists "hello1.lua"
true
> File.Copy("hello1.lua","backup.lua")
> f = File.OpenText "hello1.lua"
> f:ReadLine()
'require 'luanet''
> f:Close()
> fsw = FileSystemWatcher(dir)
> fsw.Created:Add(print)
System.IO.FileSystemEventHandler: 17721300
> fsw.EnableRaisingEvents = true
> File.Copy("hello1.lua","new-hello.lua")
System.IO.FileSystemWatcher System.IO.FileSystemEventArg
>
As you can see, all that very useful functionality in the System.IO
namespace is now available for us to browse and explore. Some of these have Lua equivalents, but usually require extra modules (e.g. lfs.currentdir()
requires the binary extension lfs
). Please note that, as usual, actual non-static methods in Lua are called with the :
operator.
In some cases, like FileSystemWatcher
, they aren't commonly available in Lua at all. This last example also shows how events can be defined in Lua code. It is this ability which makes Lua into a real .NET-capable language and not just an amusing .NET-aware desktop calculator. There is no +=
operator equivalent in Lua, so all exported events like Created
export a sepcial method called Add
which is passed any Lua function. Just using print
shows us that the Created
event passes us the object itself, plus a FileSystemEventArg
object. But do note that we can make any function implement an event callback!
Array values are very common argument types, and are often returned by functions. LuaInterface provides a convenient index notation for accessing the values, but note that the index runs from zero to Length-1
!
> args = Environment.GetCommandLineArgs()
> args.Length
2
> args[0]
'wlua'
> args[1]
'lconsole.lua'
Creating an array of strings is easy. Use the type name followed by the size in square brackets - this is consistent with the C# syntax.
> ss = String[3]
> ss[0] = "one"
> ss[1] = "two"
> ss[2] = "three"
However, note that you can only initialize values in this simple way if you are dealing with objects and not numbers. Then you have to use Array.SetValue
explicitly.
> d = Double[4]
> d[0] = 1.0
System.InvalidCastException: Unable to cast object of type
'System.Double[]' to type 'System.Object[]'.
> d:SetValue(0,1.0)
There are no implicit conversions of Lua tables into .NET types, but it is easy to do manually. Here is a useful function for creating an array of doubles from a table:
function make_double_array (tbl)
local arr = Double[#tbl]
for i,v in ipairs(tbl) do
arr:SetValue(v,i-1)
end
return arr
end
Other collection types are treated similarly; generally, if the object is indexable, Lua will be able to index it naturally as well. Consider this Hashtable
of all environment variables:
> vars = Environment.GetEnvironmentVariables()
> vars
System.Collections.Hashtable: 7284614
> vars.Count
35
> vars['SystemRoot']
'C:\WINDOWS'
> e = vars:GetEnumerator()
> e
System.Collections.Hashtable+HashtableEnumerator: 37564172
> e:MoveNext()
true
> e.Current
System.Collections.DictionaryEntry: 652891594
> de = _
> de.Key
'Path'
> de.Value
'C:\WINDOWS\system32;...
There is no direct support in Lua for enumerables, as there is in C# with the foreach
statement, but it is not difficult to write a function that will allow us to iterate through any such collection using a Lua for
statement:
function enum(o)
local e = o:GetEnumerator()
return function()
if e:MoveNext() then
return e.Current
end
end
end
> for v in enum(args) do print(v) end
wlua
lconsole.lua
There are some .NET methods which will throw exceptions on error. These are converted into regular Lua errors by LuaInterface, so you need to execute these methods in a protected call to avoid your program crashing. For instance, load_assembly
usually loads assemblies from the Global Assembly Cache (GAC) but it will work with your own assemblies if you end them with an explicit '.dll'.
However, it will not load an assembly given an arbitrary path. This is not difficult to get around, but the function we need is one of those that throw exceptions. Consider this script:
-- load.lua
require "CLRPackage"
import "System.Reflection"
function get_assembly_name(name)
local res
local suc,err = pcall(function()
res = AssemblyName.GetAssemblyName(name)
end)
if suc then
return res
else
return nil,err
end
end
print(get_assembly_name(arg[1]))
GetAssemblyName
returns an object which you can pass to Assembly.Load
, but we have to call it using pcall
. pcall
will usually just return true
, but if an error occured it returns false,error
. In effect, this is Lua's try..catch
mechanism.
C:\console\test>lua load.lua ..\CSML.dll
CSML, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null: 3357463
C:\lang\lua\libraries\Built\console\test>lua load.lua ..\CSMLx.dll
nil System.IO.FileNotFoundException: Could not load file or ...
I have truncated the error message, but the exception type is the first part of this rather long error string!
Showing a form is very straightforward, once you have brought in the necessary assembly, and the Form
type itself.
-- form1.wlua
require 'luanet'
luanet.load_assembly "System.Windows.Forms"
Form = luanet.import_type "System.Windows.Forms.Form"
form = Form()
form.Text = "Hello, World!"
form:ShowDialog()
Since this is a GUI script, I have given it a .wlua extension. The convention is that .lua is associated with the console version lua.exe, and .wlua is associated with the GUI version wlua.exe. Then, if you run this script from Windows Explorer you will not get the dreaded black console window appearing as well. (Also, in Lua for Windows .wlua scripts can be properly run and debugged from SciTE.)
Since explicitly bringing in all the required types can be tedious, I will now switch to using CLRPackage/import
for the next example:
-- form2.wlua
require 'CLRPackage'
import "System.Windows.Forms"
import "System.Drawing"
form = Form()
form.Text = "Hello, World!"
button = Button()
button.Text = "Click Me!"
button.Location = Point(20,20)
button.Click:Add(function()
MessageBox.Show("We wuz clicked!",arg[0],MessageBoxButtons.OK)
end)
form.Controls:Add(button)
form:ShowDialog()
Windows.Forms applications are conceptually very simple; one creates controls of various types, sets their properties, and adds them to the control array of the form, which then can be shown. One attaches functions to the events of the objects to get feedback from the user or the system.
Unlike IUP, controls are usually given an explicit position. However, controls can be docked to the sides of their container:
-- form3.wlua
require 'CLRPackage'
import "System.Windows.Forms"
import "System.Drawing"
button = Button()
button.Text = "Click!"
button.Dock = DockStyle.Top
edit = RichTextBox()
edit.Dock = DockStyle.Fill
form = Form()
form.Text = "Hello, World!"
form.Controls:Add(edit)
form.Controls:Add(button)
form:ShowDialog()
In this example, a text box is made to fill all of the form, and then a button is added which is to be docked to the top side of the form. (The creation order of the text box and the button is not important, but they do have to be added in this order.)
The normal interactive Lua prompt does not play nicely with GUI applications, since these typically need to run an event loop. lconsole
is an application written using LuaInterface that allows you to type in Lua expressions and statements in a purely GUI environment. Since the console window is based on a rich text box, all the usual clipboard operations are available, and the general black-on-white theme fits better with modern desktops. To run it, double click on 'lconsole.wlua'.
There are three parts to the lconsole
window; the text pane, where you enter commands, the code pane, where you can enter little pieces of code, and the list down the side of the code pane, which shows the currently saved functions and snippets. The main reason for the code pane is that (like ilua
as discussed above) one cannot enter multiline statements like a function definition; lconsole
makes a virtue of this limitation, by automatically saving these little code snippets.
You can access the command history by using the Alt+UpArrow
and Alt+DownArrow
shortcuts.
The first point to note is that the console is very much inside the application. There is an app
table which contains the code and text panes, the list box and the form itself.
ILUA: Lua 5.1.1 Copyright (C) 1994-2007 Lua.org, PUC-Rio
> app.code.Height
70
> app.form.Width
420
> app.form.Text = "My Console!"
(This makes lconsole
a very easy application to customize. Tired of the background colour? Change it!)
To create a new function, execute the command fun(name)
:
> fun 'sqr'
and in the code pane appears:
function sqr()
end
which can be edited so:
function sqr(x)
return x*x
end
Hit F5 (or Run|Save and Go
) to load it into the session. Note that a new item 'sqr' has appeared, and will persist into the next session, since it's actually saved as sqr.lua
in your session directory. The code pane is not intended to be a real code editor, there's no attempt at syntax highlighting and the File|Load Lua
.
It is very straightforward to bring in an image and put it inside a form using the PictureBox
control:
> f = [[C:\Program Files\MP3 CD Converter\skins\jazz_folder.bmp]]
> im = Image.FromFile(f)
> im
System.Drawing.Bitmap: 50048984
> im.Width
150
> f = Form()
> pic = PictureBox()
> pic.Dock = DockStyle.Fill
> f.Controls:Add(pic)
> f:show()
method not found (or no indexer): show
> f:Show()
> pic.Image = im
> f.ClientSize = Size(im.Width,im.Height)
If you get bored typing something repeatedly, then a function is your friend. In this case I got bored adding dock styles, so:
function dock(c,s)
s = s or 'Fill'
c.Dock = DockStyle[s]
return c
end
Now it's possible to do this:
> f.Controls:Remove(pic) -- got bored of the picture!
> e = dock(ListBox())
> f.Controls:Add(e)
And indeed, a list box fills the form!
People new to Lua may find the first two lines of this little function a bit puzzling. The key to the first line is that the or
operator works with any type, and returns the value used - it doesn't always return a boolean value, as in most languages. Values are considered false in Lua either if they have the value false
or if they are nil
, so if we don't pass a second argument to this function, it will be given the default value 'Fill'. The second line comes from the fact that a.x
and a['x']
are completely equivalent; they are both table lookups (JavaScript works like this as well, and it is a very useful feature.)
The CLRForm
module contains some very useful utilties for doing Windows Forms programming in Lua. lconsole
is built using CLRForm
, so all of these utilities can be tested in this environment.
A common need is to ask the user for a single string:
require "CLRForm"
if PromptForString("MyApp","Give your name","") then
MessageBox.Show("Name!",arg[0],MessageBoxButtons.OK)
end
People however get irritated by being asked tiny questions, so in true bureaucratic style we would like her to fill in a form. This is a very common thing in GUI applications, and generally requires far too much coding. Some of that coding may be generated by the wizards that lurk in your IDE, but sometimes the ideal amount of code is zero. Consider this:
-- auto1.wlua
require "CLRForm"
data = {
firstname = "",
lastname = "",
age = 0,
title = "",
phone = "",
email = ""
}
form = AutoVarDialog { Text = "Please Supply Details", Object = data;
"First Name:","firstname",
"Last Name:","lastname",
"Age:","age",
"Title:","title",
"Phone number:","phone",
"E-mail Address:","email"
}
if form:ShowDialogOK() then
print 'ok'
end
os.exit(0)
The call to AutoVarDialog
automatically generates a dialog based on a template, which maps descriptive labels to the actual fieldnames. This kind of trick is possible in highly dynamic languages like Lua, where the actual type at runtime of any object is easy to determine. So by default we will try to edit numbers and strings with text boxes, and boolean values with checkboxes. At this level, some input validation is already possible; age
was a number, so whatever gets typed into the 'Age:' box must be convertable to a number and the user will not be allowed to proceed successfully until this is fixed.
But the general problem of validation remains. It's a bad idea to let bogus data into your system, and it should be caught as soon as possible. Also, fields like 'Title' are profoundly confusing. People will put in what their interpretation tells them, rather than your interpretation. So the next example shows an extra (optional) validation field that can follow the field name:
-- auto1.wlua
require "CLRForm"
data = {
firstname = "steve",
lastname = "donovan",
age = 16,
title = "Mr",
phone = "+27116481212",
email =<EMAIL_ADDRESS>}
form = AutoVarDialog { Text = "Please Supply Details", Object = data;
"First Name:","firstname",NonBlank,
"Last Name:","lastname",NonBlank,
"Age:","age",Range(16,120),
"Title:","title",{"Mr","Ms","Dr","Prof"},
"Phone number:","phone",Match ('^%+%d+$',"Not a valid phone no."),
"E-mail Address:","email",Match ("%S+@%S+","Not valid email")
}
if form:ShowDialogOK() then
print 'ok'
end
os.exit(0)
Notice that by making 'title' to be explicitly a list of items, we can now deduce that a drop-down list is the appropriate way to present the choice to the user. As for 'age', numerical values nearly always have a valid range. Text fields require more complicated validation - here phone numbers must be entered in international format, and email addresses must have a '@' somewhere. (They can still be utterly bogus, but at least they are well-formed rubbish ;))
Here is a more complete example, showing off file entry fields and booleans.
-- autoform.wlua
require "CLRForm"
tbl = {
x = 2.3,
y = 10.2,
z = "two",
t = -1.0,
file = "c:\\lang\\lua\\ilua.lua",
outfile = "",
res = true,
}
form = AutoVarDialog { Text = "Test AutoVar", Object = tbl;
"First variable:","x", Range(0,4),
"Second Variable:","y",
"Domain name:","z", {"one","two","three"; Editable=true},
"Blonheim's Little Adjustment:","t",
"Input File:","file",FileIn "Lua (*.lua)|C# (*.cs)",
"Output File:","outfile",FileOut "Text (*.txt)",
"Make a Note?","res",
}
if form:ShowDialogOK() then
print(tbl.x,tbl.z,tbl.res,tbl.file)
end
Generally, Windows Forms controls are positioned absolutely within their parent control. Other frameworks use explicit layout strategies, which can be very useful. For instance, the AutoVarDialog
form uses automatic control layout. CLRForm
defines a useful StreamLayout
class, which works rather like writing to a file; each new control is placed after the last, until there's an explicit request for a 'new line'.
This example attaches a rough-and-ready toolbar to a form. A Panel
control is a useful tool in composing forms; by default it does not have a border. It is easy to attach it to the top of the form with DockStyle.Top
. The StreamLayout
is used to put the controls in a nice row:
-- layout1.wlua
require 'CLRForm'
panel = Panel()
layout = StreamLayout(panel)
b = Button()
b.Text = "One"
layout:Add(b)
b = Button()
b.Text = "Two"
layout:Add(b)
t = TextBox()
layout:Add(t)
layout:Finish()
form = Form()
form.Text = "Hello, World!"
panel.Dock = DockStyle.Top
form.Controls:Add(panel)
form:ShowDialog()
Object-oriented style is particularly appropriate for GUI applications. Although Lua does not have a formal concept of 'class', it is not difficult to add a class mechanism. Then our forms can be self-contained objects, as is obligatory in C#. The classes described here are not proper derived classes of the .NET Form class, rather they use delegation; if our form object cannot find a method or property within itself, it calls the delegate object, which is a Form object.
-- menuform.lua
require "CLRForm"
MenuForm = class()
function MenuForm:_init ()
self.form = Form()
self.name = "Dolly"
-- this method can only be called once we've set up our own fields!
self:delegate(self.form)
self.Text = "A Simple Form Class"
self.FormBorderStyle = FormBorderStyle.FixedDialog
self.MaximizeBox = false
self.MinimizeBox = false
self.ContextMenu = popup_menu {
"First",method(self,self.first),
"Second",method(self,self.second),
}
end
function MenuForm:first()
local name = PromptForString(arg[0],"Give the dog a name",self. name)
if name then self.name = name end
end
function MenuForm:second()
ShowMessageBox (self.name)
end
form = MenuForm()
form:ShowDialog()
Notice the useful popup_menu
function, which takes some of the tedium out of defining menus. (A more complete example can be found in the source for lconsole.lua
, where shortcuts are defined, etc.) The little function method
has a simple definition; it creates a callback function which actually does the function call, passing the object as the first parameter (the self object):
function method (obj,fun)
return function()
fun(obj)
end
end
Main menus are also easy to construct; here is how lconsole.wlua
does its menu:
local menu = main_menu {
"File",{
"Load Lua(CtrlO)",load_lua,
"Save Session(CtrlS)",save_session,
"Save As Text",save_text,
"E&xit(CtrlX)",function() os.exit(0) end,
},
"Run",{
"Save and Go(F5)",save_and_go,
"Create Function",function() fun() end,
"Delete Item",delete_list_item,
"Clear Code Pane",clear_code,
},
"History", {
"Last(AltUpArrow)", function() get_history(true) end,
"Previous(AltDownArrow)", function() get_history(false) end
}
}
If an item string contains '(...)', then it's interpreted as a name from the System.Windows.Forms.Shortcut
enumeration; see the .NET documentation for all available constants.
LuaForm
makes creating form objects easier. You feed LuaForm
wiith a table; the array-like part of the table contains the controls, and the map-like part contains any properties you wish to assign to the control. If there is only one control to be added, then it's assumed that we want it to fill the whole client area of the form.
> txt = RichTextBox()
> f = LuaForm{txt;Text="hello"}
> f:Show()
If multiple controls are added, then one can provide their dock styles:
> txt = RichTextBox()
> list = ListBox()
> f = LuaForm{'Fill',txt,'Left',list; Text = "Test!"}
> f:Show()


Sorry, there's nothing to see here.
Try a bigger screen.
Try a bigger screen.
9AM
10AM
11AM
12PM
1PM
2PM
3PM
4PM
5PM


Contents
checkgrad.m
Summary: checkgrad checks the derivatives in a function, by comparing them to finite differences approximations. The partial derivatives and the approximation are printed and the norm of the difference divided by the norm of the sum is returned as an indication of accuracy.
function [d dy dh] = checkgrad(f, X, e, varargin)
Input arguments:
% f function handle to function that needs to be checked. % The function f should be of the type [fX, dfX] = f(X, varargin) % where fX is the function value and dfX is the gradient of fX % with respect to the parameters X % X parameters (can be a vector or a struct) % e small perturbation used for finite differences (1e-4 is good) % varargin other arguments that are passed on to the function f % % % *Output arguments:* % % d relative error of analytical vs. finite difference gradient % dy analytical gradient % dh finite difference gradient % % % Copyright (C) 2008-2013 by % Marc Deisenroth, Andrew McHutchon, Joe Hall, and Carl Edward Rasmussen. % % Last modified: 2013-03-21 %
High-Level Steps
- Analytical gradient
- Numerical gradient via finite differences
- Relative error
function [d dy dh] = checkgrad(f, X, e, varargin)
Code
% 1. Analytical gradient Z = unwrap(X); NZ = length(Z); % number of input variables [y dy] = feval(f, X, varargin{:}); % get the partial derivatives dy [D E] = size(y); y = y(:); Ny = length(y); % number of output variables if iscell(dy) || isstruct(dy); dy = unwrap(dy); end; dy = reshape(dy,Ny,NZ); % 2. Finite difference approximation dh = zeros(Ny,NZ); for j = 1:NZ dx = zeros(length(Z),1); dx(j) = dx(j) + e; % perturb a single dimension y2 = feval(f, rewrap(X,Z+dx), varargin{:}); y1 = feval(f, rewrap(X,Z-dx), varargin{:}); dh(:,j) = (y2(:) - y1(:))/(2*e); end % 3. Compute error % norm of diff divided by norm of sum d = sqrt(sum((dh-dy).^2,2)./sum((dh+dy).^2,2)); small = max(abs([dy dh]),[],2) < 1e-5; % small derivatives are poorly tested ... d(d > 1e-3 & small) = NaN; % ... by finite differences d = reshape(d,D,E); disp(' Analytic Numerical'); for i=1:Ny; disp([dy(i,:)' dh(i,:)']); % print the two vectors fprintf('d = %e\n\n',d(i)) end if Ny > 1; disp('For all outputs, d = '); disp(d); end; fprintf('\n');


We are Hexspeak, a FIRST Tech Challenge team from Redmond, WA. Our team consists of 8 people, 2 boys and 6 girls. We are a rookie team who started FTC this year and are still learning lots of things. We've attended a few outreach events and even hosted a few of our own(More information about this can be found on the outreach page)! We are excited to design, build, and program our robot and can't wait to meet other teams!


Coco Reporter
Branches History
Tags History
Learning Curve
Package by Size 1
Package by Size 2
Member Lifecycle
Hour Heatmap
Hour Heatmap (Half Year)
Hour Heatmap (Three Month)
Commits Tree


Indiana
I'm a Junkie-Monkey!
Registered: Oct 2001
Location: Incommincado Tyler Durden says: Do we really need another women?
Posts: 3087 |
They already have things like that. They're called Conventions. There's one at Wolf SG4 then there's SG-5 next. There's one in canada which is quite famous. I believe they call it gatecon.
__________________
"Now I'm cleaning up and I'm moving on, going straight and choosing life. I'm looking forward to it already.  The washing machine, the car, the compact disc and electric tin opener, good health, low cholesterol, dental insurance, mortgage, starter home, leisure wear, luggage, three piece suite, DIY, game shows, junk food, children, walks in the park, nine to five, good at golf, washing the car, choice of sweaters, family Christmas, indexed pension, tax exemption clearing gutters, getting by, looking ahead, the day you die."
Report this post to a moderator | ? + *
|


Rewards
0
"
class="customer-rewards-container"
>
{{ level }}
{{ customerReward.content }}
No Obtained Rewards


| Package | Description |
|---|---|
| com.sleepycat.bind |
Bindings between database entries and Java objects.
|
| com.sleepycat.bind.serial |
Bindings that use Java serialization.
|
| com.sleepycat.bind.tuple |
Bindings that use sequences of primitive fields, or tuples.
|
| com.sleepycat.collections |
Data access based on the standard Java collections API.
|
| com.sleepycat.db | |
| com.sleepycat.persist |
The Direct Persistence Layer (DPL) adds a persistent object model to the
Berkeley DB transactional engine.
|
| com.sleepycat.persist.raw |
Raw data access for general purpose tools and manual conversions.
|
| Class and Description |
|---|
| DatabaseEntry
Encodes database key and data items as a byte array.
|
| Class and Description |
|---|
| Database
Creates a database handle for a single Berkeley DB database.
|
| DatabaseEntry
Encodes database key and data items as a byte array.
|
| DatabaseException
The root of all database exceptions.
|
| ForeignKeyNullifier
The interface implemented for setting single-valued foreign keys to null.
|
| SecondaryDatabase
A secondary database handle.
|
| SecondaryKeyCreator
The interface implemented for extracting single-valued secondary keys from
primary records.
|
| Class and Description |
|---|
| DatabaseEntry
Encodes database key and data items as a byte array.
|
| ForeignKeyNullifier
The interface implemented for setting single-valued foreign keys to null.
|
| SecondaryDatabase
A secondary database handle.
|
| SecondaryKeyCreator
The interface implemented for extracting single-valued secondary keys from
primary records.
|
| Class and Description |
|---|
| CursorConfig
Specify the attributes of database cursor.
|
| Database
Creates a database handle for a single Berkeley DB database.
|
| DatabaseEntry
Encodes database key and data items as a byte array.
|
| DatabaseException
The root of all database exceptions.
|
| Environment
A database environment.
|
| JoinConfig
The configuration properties of a
JoinCursor . |
| Transaction
The Transaction object is the handle for a transaction.
|
| TransactionConfig
Specifies the attributes of a database environment transaction.
|
| Class and Description |
|---|
| BackupHandler
An interface that can optionally be used to override the default behavior
performed by the
Environment.backup
and
Environment.backupDatabase
methods. |
| BackupOptions
Options for
Environment.backup(java.lang.String, com.sleepycat.db.BackupOptions) operations. |
| BtreeCompressor
An interface specifying how Btree compression works.
|
| BtreePrefixCalculator
An interface specifying how Btree prefixes should be calculated.
|
| CacheFile
This class allows applications to modify settings for
a
Database using the Database.getCacheFile . |
| CacheFilePriority
Priorities that can be assigned to files in the cache.
|
| CacheFileStats
Statistics for a file in the cache.
|
| CacheStats
Cache statistics for a database environment.
|
| CheckpointConfig
Specifies the attributes of an application invoked checkpoint operation.
|
| CompactConfig |
| CompactStats |
| Cursor
A database cursor.
|
| CursorConfig
Specify the attributes of database cursor.
|
| Database
Creates a database handle for a single Berkeley DB database.
|
| DatabaseConfig
Specify the attributes of a database.
|
| DatabaseEntry
Encodes database key and data items as a byte array.
|
| DatabaseException
The root of all database exceptions.
|
| DatabaseStats
Statistics for a single database.
|
| DatabaseStream
A database stream.
|
| DatabaseStreamConfig
Specify the attributes of database stream.
|
| DatabaseType
Database types.
|
| DeadlockException
DeadlockException is thrown to a thread of control when multiple threads
competing for a lock are
deadlocked, when a lock request has timed out
or when a lock request would need to block and the transaction has been
configured to not wait for locks.
|
| Environment
A database environment.
|
| EnvironmentConfig
Specifies the attributes of an environment.
|
| ErrorHandler
An interface specifying a callback function to be called when an error
occurs in the Berkeley DB library.
|
| EventHandler
An interface classs with prototype definitions of all event functions that
can be called via the Berkeley DB event callback mechanism.
|
| FeedbackHandler
An interface specifying a function to be called to provide feedback.
|
| ForeignKeyDeleteAction
The action taken when a referenced record in the foreign key database is
deleted.
|
| ForeignKeyNullifier
The interface implemented for setting single-valued foreign keys to null.
|
| ForeignMultiKeyNullifier
The interface implemented for setting multi-valued foreign keys to null.
|
| Hasher
An application-specified, database hash function.
|
| HeapRecordId
Content used for the key in a Heap database record.
|
| JoinConfig
The configuration properties of a
JoinCursor . |
| JoinCursor
A specialized join cursor for use in performing equality or natural joins on
secondary indices.
|
| KeyRange
An object that returns status from the
Database.getKeyRange method. |
| Lock
The locking interfaces for the database environment are methods of the
Environment handle. |
| LockDetectMode
Deadlock detection modes.
|
| LockMode
Locking modes for database operations.
|
| LockOperation
Operations that can be performed on locks.
|
| LockRequest
The LockRequest object is used to encapsulate a single lock request.
|
| LockRequestMode
When using the default lock conflict matrix, the LockRequestMode class
defines the set of possible lock modes.
|
| LockStats
Lock statistics for a database environment.
|
| LogCursor
The LogCursor object is the handle for a cursor into the log files,
supporting sequential access to the records stored in log files.
|
| LogRecordHandler
A function to process application-specific log records.
|
| LogSequenceNumber
The LogSequenceNumber object is a log sequence number which
specifies a unique location in a log file.
|
| LogStats
Log statistics for a database environment.
|
| LogVerifyConfig
Specify the attributes of a database.
|
| MessageHandler
An interface specifying a callback function to be called to display
informational messages.
|
| MultipleDataEntry |
| MultipleEntry
An abstract class representing a DatabaseEntry that holds multiple results
returned by a single
Cursor get method. |
| MultipleKeyDataEntry |
| MutexStats
Statistics about mutexes in a Berkeley DB database environment, returned
by
Environment.getMutexStats(com.sleepycat.db.StatsConfig) |
| OperationStatus
Status values from database operations.
|
| PanicHandler
An interface specifying a function to be called if the database
environment panics.
|
| PartitionHandler
An interface specifying how to set up database partitioning.
|
| PreparedTransaction
The PreparedTransaction object is used to encapsulate a single prepared,
but not yet resolved, transaction.
|
| RecordNumberAppender
An interface specifying a callback function that modifies stored data
based on a generated key.
|
| RecoveryOperation
The recovery operation being performed when
LogRecordHandler.handleLogRecord is called. |
| RegionResourceType
Advanced configuration is possible for various systems that use shared
memory (regions) for cross process sharing.
|
| ReplicationChannel
A ReplicationChannel handle is used to manage a channel in a replication group.
|
| ReplicationConfig
Settings that configure Berkeley DB replication.
|
| ReplicationHostAddress
A simple wrapper class to hold information needed to define
a host in a replication group.
|
| ReplicationManagerAckPolicy
A class that provides definitions for the types of network ack policy to use
when transmitting messages between replication sites using the Replication
Manager.
|
| ReplicationManagerConnectionStatus
Describes the connection status of a replication site.
|
| ReplicationManagerMessageDispatch |
| ReplicationManagerSite
A ReplicationManagerSite handle is used to manage a site in a replication group.
|
| ReplicationManagerSiteConfig
Specifies the attributes of a site in the replication group.
|
| ReplicationManagerSiteInfo
A simple wrapper class to hold information needed to define a replication site.
|
| ReplicationManagerStartPolicy
This class provides definitions of the various start policies thatcan be specified when starting a replication client using the
Environment.replicationManagerStart call. |
| ReplicationManagerStats
Replication Manager statistics for a database environment.
|
| ReplicationStats
Replication statistics for a database environment.
|
| ReplicationStatus
The return status from processing a replication message.
|
| ReplicationTimeoutType
The ReplicationTimeoutType defines the types of timeouts that can beconfigured for the Berkeley Db replication functionality.
|
| ReplicationTransport
An interface specifying a replication transmit function, which sends
information to other members of the replication group.
|
| ReplicationViewHandler
An interface specifying a callback function to be used by replication views.
|
| SecondaryConfig
The configuration properties of a
SecondaryDatabase extend
those of a primary Database . |
| SecondaryCursor
A database cursor for a secondary database.
|
| SecondaryDatabase
A secondary database handle.
|
| SecondaryKeyCreator
The interface implemented for extracting single-valued secondary keys from
primary records.
|
| SecondaryMultiKeyCreator
The interface implemented for extracting multi-valued secondary keys from
primary records.
|
| Sequence
A Sequence handle is used to manipulate a sequence record in a database.
|
| SequenceConfig
Specify the attributes of a sequence.
|
| SequenceStats
A SequenceStats object is used to return sequence statistics.
|
| Slice
An interface specifying in which slice database records are
read or written based on the given key.
|
| StatsConfig
Specifies the attributes of a statistics retrieval operation.
|
| Transaction
The Transaction object is the handle for a transaction.
|
| TransactionConfig
Specifies the attributes of a database environment transaction.
|
| TransactionStats
Transaction statistics for a database environment.
|
| TransactionStats.Active |
| TransactionStatus
Status values from transaction application checking operations.
|
| VerboseConfig
Specifies the attributes of a verification operation.
|
| VerifyConfig
Specifies the attributes of a verification operation.
|
| Class and Description |
|---|
| CursorConfig
Specify the attributes of database cursor.
|
| Database
Creates a database handle for a single Berkeley DB database.
|
| DatabaseConfig
Specify the attributes of a database.
|
| DatabaseException
The root of all database exceptions.
|
| Environment
A database environment.
|
| LockMode
Locking modes for database operations.
|
| SecondaryConfig
The configuration properties of a
SecondaryDatabase extend
those of a primary Database . |
| SecondaryDatabase
A secondary database handle.
|
| Sequence
A Sequence handle is used to manipulate a sequence record in a database.
|
| SequenceConfig
Specify the attributes of a sequence.
|
| Transaction
The Transaction object is the handle for a transaction.
|
| Class and Description |
|---|
| DatabaseException
The root of all database exceptions.
|
| Environment
A database environment.
|
Copyright (c) 1996, 2016 Oracle and/or its affiliates. All rights reserved.


DOAG PL/SQL Conventions Introduction The DOAG PL/SQL Conventions are from the community for the community… Table of contents Naming conventions Tables (Trigger, views, format) PL/SQL General Exception Handling Logging Code dokumentation Code commentaries Transaction handling Performance How to use ( mainly for authors )


Unemployment in Latvia drops to 6%
by BNNLatvia’s unemployment rate constituted 6.0 % in Q3 2019. Compared to the previous quarter, unemployment rate fell by 0.4 percentage points, while over the year it reduced by 1.0 percentage points.
In Q3, in Latvia there were 58.9 thousand unemployed persons aged 15–74, which is 9.9 thousand fewer than a year ago and 2.6 thousand fewer than in the previous quarter, according to results of the Labour Force Survey conducted by the Central Statistical Bureau.
In Q2 2019, Latvian unemployment rate (constituting 6.4 %) exceeded the EU average (6.2 %) by 0.2 percentage points. Over the past five years (since Q3 2014), Latvia has had the highest unemployment rate in the Baltic states, however in Q3 2019 it was 0.1 percentage points lower than in Lithuania (6.1 %), while the lowest rate was recorded in Estonia (3.9 %).
Long-term unemployed persons
In Q3 2019, the share of long-term unemployed persons, i.e., those who have been without work for 12 months or longer, in the total number of unemployed persons fell by 6.1 percentage points – from 41.3 % to 37.0 % over the year. The number of long-term unemployed persons, in its turn, reduced by 7.6 thousand, constituting 21.8 thousand.
Youth unemployment
Unemployment rate among young people aged 15–24 accounted for 11.3 % in Q3 2019, which is 0.3 percentage points higher indicator than that registered a year ago and 3.8 percentage points lower indicator than that recorded in previous quarter. During the year, the number of young unemployed persons fell by 0.5 thousand.
In Q3, young people accounted for 7.2 thousand or 12.2 % of all unemployed persons. Over the year, their share in the total number of unemployed persons grew by 1.0 percentage points, whereas compared to the 2nd quarter, it reduced by 1.8 percentage points.
In Q3 the year, 37.2 % of all young people were active, i.e., employed or actively seeking a job (unemployed), while 62.8 % of young people were inactive (mainly studying and not seeking a job).
Inactive population
In Q3 2019, 30.1 % or 421.3 thousand people aged 15–74 were inactive. i.e., were neither employed nor actively seeking a job. Compared to Q2 2019, inactive population declined by 12.2 thousand people or 2.8 %, whereas over the year it grew by 0.6 thousand people or 0.1 %.
In Q3, 14.8 thousand people or 3.5 % of the inactive population were discouraged to find a job (compared to 4.1 % a year ago and 3.6 % in Q2 2019).
In Q3 2019, Labour Force Survey questions about economic activity were asked to 7.1 thousand people aged 15–74 living in 4.0 thousand households.


Duplication Checking Info
Browser Cookie Duplication Checking - Duplicate votes will be disallowed based on the browser of the user, allowing multiple votes from the same IP address. This checking is done by default.
Require User Sign In to Vote - Voting is not allowed unless the voter is signed into their Suffragium account.
No Duplication Checking - Duplication checking will be disabled and users can vote as many times as they would like.


Star Trek is an American space opera media franchise based on the science fiction television series created by Gene Roddenberry.
Learn more
Star Trek is an American space opera media franchise based on the science fiction television series created by Gene Roddenberry. The first television series, simply called Star Trek and now referred to as "The Original Series", debuted in 1966 and aired for three seasons on the television network NBC. It followed the interstellar adventures of Captain James T. Kirk (William Shatner) and his crew aboard the starship USS Enterprise, a space exploration vessel, built by the United Federation of Planets in the twenty-third century.
The Star Trek canon of the franchise includes The Original Series, an animated series, five spin-off television series, the film franchise, and further adaptations in several media. Star Trek has been a cult phenomenon for decades.[1] Fans of the franchise are called Trekkies or Trekkers. The franchise spans a wide range of spin-offs including games, figurines, novels, toys, and comics.
Some quick example text to build on the card title and make up the bulk of the card's content.
This is a footer. The best footer you have ever seen.


John Car Exporter
We specialise in sourcing, purchasing, transporting, and shipping new and used cars and other types of vehicles from the UK, for exporting to Private Clients, International Car Dealers, Governments, and Commercial Organisations worldwide.
leading vehicle locator, supplier, shipping & exporting company in the United Kingdom
We source and supply the best quality vehicles from the UK and then ship to destination ports in Africa, Asia the Caribbean as well as Australia & New Zealand. We offer a wide range of cars from classic sports cars to luxury vehicles and everything in between from SUV’s, hatchbacks, vans, trucks, quads, tippers, tractor and trailer units. Furthermore we can supply all kinds of motor vehicle spare parts and accessories to turn your car into the top range car that you desire.
We have access to a wide network of sources including the largest UK car auctions, independent and franchise dealers as well as direct private individuals across UK. The cars then go through rigorous checks and are re-inspected before they can be considered for export to the global market
Vehicle Exports gives you the best experience throughout the entire car buying process, guiding you seamlessly from research to purchase. Ultimately you end up with the right car at an amazing price.
We have recently added to the website functionality e.g you can easily compare the vehicles you are interested with by clicking on compare vehicles on the inventory page.
CUSTOM CAR SUPPLY
We GUARANTEE to get you cheapest car prices in the UK and very competitive shipping rates. We source and supply ANY CAR and on any budget, and we handpick each vehicle to ensure that they are above average condition. We only Source and supply Right Hand cars available in the UK Market. The Cars come with Service History, are certified to British Standards and are accompanied by Ministry of Transport (MOT) Certificate to this effect. The vehicles are HPI cleared before shipment (Check if stolen, in an accident, flood damaged etc). They are also professionally cleaned and fully inspected by Engineers/Mechanics before shipment.
CAR TRANSPORTATION
We offer Car Transportation and Delivery Services to best suit your needs and requirements. We arrange for vehicles to be collected from your premises and delivered to the required port ready for shipping or at our storage facility pending a shipping date. We have regular full and part load trailer that can collect your vehicles from the Car Dealer to the port of delivery in Mainland UK. Whether we are collecting a vehicle that we have sourced and purchased on your behalf or one that you have purchased yourself, the cars are fully insured when being driven or transported to our storage facilities or port on mainland UK ready for shipment.
More info


import { ProgressModule } from 'easy-framework';
Progress bars are styled with .progress[-label || -striped]
classes.
Note: If a progress bar does not have a value
attribute, it is considered indeterminate.
Note: If a progress bar not have max
, position
, for
, and/or id
, attributes, they will be set and updated automatically.


Enter your Username and Password. In case of forgotten password, please contact your System Administrator.
Login


{{selectedEmployee.Id}}
{{selectedEmployee.FirstName}}
{{selectedEmployee.BirthDate}}
{{selectedEmployee.FullName}}
{{selectedEmployee.Age}}


Ethically-sourced cocoa beans supplied by Ingemann Fine Cocoa. Based in Tipitapa, Nicaragua, Ingemann currently receives wet beans from 450 small holders. These farmers receive a premium of 25% on their wet beans (compared to market rate for dried beans) as well as cultivation support and collection at farm gate.
Ingredients: Organic cocoa beans and organic sugar.
Nahua is Costa Rica's leading fine flavour cocoa producer with a social mission committed to improving the lives of the local smallholder farmers. Like our other cocoa bean suppliers, Nuhua collects wet beans at the farm gate and ferments them centrally. This takes the burden of mastering the complex fermentation process off the farmer and ensures the cocoa beans are fermented and dried to an exacting standard.
Ingredients: Cocoa beans and organic sugar.


Both Republicans and Democrats have found reason to be optimistic about the midterm elections this week, as an uncertain political climate — both nationally and in Minnesota — has left the outcome of a number of key races in question.
Republicans have control of the White House, Congress, and the governorships and legislatures of 26 states. But midterms historically have gone poorly for the party in the majority, which has given rise to talk of a Democratic wave this election cycle.
Here in Minnesota, Republicans are hopeful that partisan voting trends, demographics and President Donald Trump's popularity among party voters will give them an advantage on Election Day.
(Click here to see three reasons for Democrats to be optimistic).
After decades as a reliable Democratic stronghold, Minnesota handed Hillary Clinton only a narrow two-point victory in 2016, one of the slimmest margins for a Democratic victory in the state's history.
But Trump's insurgent vote total in Minnesota isn't the only indicator that Minnesota has become more Republican.
On a statewide level, Minnesota's Cook Partisan Voting Index has gradually moved from a strongly Democratic lean to one that's almost evenly split between the two parties.
The index compares average Democratic and Republican presidential vote shares in a state or congressional district to national numbers for the previous two elections. Being closer to an "even" score suggests Minnesota is less Democratic-leaning than in recent memory.
Minnesota has transformed into a much more level playing field for the GOP, which is extremely consequential in this year's midterm where the governor's office, Attorney General, state Legislature and U.S. Congress are up for grabs.
Additionally, split-ticket voting between Congressional and statewide races has declined over the past two decades, suggesting voters have become more partisan overall.
While Trump's polls somewhat slipped from earlier in the year, his approval rating is still strong among Minnesota Republicans, according to a Star Tribune/MPR News Minnesota Poll data from September 2018.
Likely voters in the northern part of the state and Iron Range have the highest regional approval of Trump, according to polls, which might be helpful for Congressional and legislative races there.
If those approval ratings translate into voter enthusiasm, it may help push Republican candidates over the finish line in competitive districts in greater Minnesota and in tight statewide contests.
When Republican voters turned out significantly for Donald Trump in 2016, 19 counties in greater Minnesota flipped to trending Republican despite favoring Democrats in 2012 and 2008.
This resembles broader Republican voting patterns, as Minnesota demographically resembles a lot of neighboring red states and regions sometimes referred to as "Trump Country."
Demographic maps of Minnesota — shaded from less to more on various metrics — reveal a state that's whiter, a majority religious, on average older, less educated with a median income around $50,000 per year.
And places where those traits are most prominent were won by Republicans in 2016.


This feature is only for Android version, for iOS version it will be soon.
The Quick Action button is a flexible menu of shortcuts providing direct access to whatever features you need to access most frequently: You select and add them to this 'toolbar'. In this way, the next time you need to add a new favorite, add a navigation destination, enable or disable voice guidance, etc., These actions are now directly accessible. The quick action button can be added via the Configure screen menu. To add actions to the menu, please press 'Add action' right on its menu bar. To remove an action, go to Configure screen and tap the 'Quick action' menu, then remove any shortcuts not needed.
Starting with version 3.3 for Android as requested by many users, we have added Show/Hide tracks, Day/Night mode switches in Quick action.
Please see full video guide below:
OsmAnd at Facebook, Twitter, and Reddit! Join to us at our group of Telegram.


WITNESS LIST Government Organization Committee February 12, 2003 - 1:00P State Auditor's Office ON: Alwin, Larry State Auditor (State Auditor's Office), Austin, TX Dacus, Tina IT Consultant (State Auditor's Office), Austin, TX Kinton, Craig Auditor (Texas State Auditor's Office), Austin, TX Purcell, Carolyn Executive Director (Department of Information Resources), Austin, TX Vito, Kelli State Classification Officer (State Auditor's Office), Austin, TX


Novel hashing and encryption program. This started as an undergraduate research project that was accepted for presentation at CCSCNE 2020.
Productivity tool that lets the user fine-tune their process. Adjust the sliders, work, break, repeat. Recently updated with persistent settings and a notes section. Sound effects made in LMMS
Landing page for SECS Software. Includes a simple contact page and custom animation for the navigation section.
Work in progress. The goal is to create a database generator, then create an inventory management system, point of sale system, and web shop interface.
Simple early version of WorkLoops Desktop. Shares most of the functionality of the desktop version, but runs in a browser window.
A mix of Pong and Arknoid style gameplay. Currently for two players, options for computer player in the works.
More or less what it says on the tin. Pull this up on multiple phones or computers to play together!
I'm always working on something.


(Defined in: jpgraph_stock.php : 15)
Class usage and Overview
Create a stock chart graph, aka Candle-chart, aka Box-graph.
Each data point is represented by four values
(open,close,min,max)
Class Methods
Show horizontal mark lines at the end of min/max lines
| Argument | Default | Description |
|
$aHide
|
true
| Flag true=show end lines |
Description:
Show horizontal mark lines at the end of min/max lines. This is enabled by default.
$stock->HideEndLines();
Specify colors for the stock plot
| Argument | Default | Description |
|
$aColor
| | Line color for positive bars |
|
$aColor1
|
'white'
| Fill color for positive bars |
|
$aColor2
|
'darkred'
| Line color for negative bars |
|
$aColor3
|
'darkred'
| Fill color for negative bars |
Description:
Specify the colros for a stock chart. A positive bar is defined as a bar where close > open. A negative bar is defined as a bar where close < open.
The positive line color is always used for the min/max lines.
By default positve colors are black and white. Negative colors are 'red' and 'red'.
$stockplot->SetColor('black','white','red','red');
Specify width for stock bars in pixels
| Argument | Default | Description |
|
$aWidth
| | Width in pixels |
Description:
Specify width for stock bars in pixels
$stockplot->SetWidth(8);
Constructor for Stock plots
| Argument | Default | Description |
|
$datay
| | No description available |
|
$datax
|
false
| X data array |
Description:
Create a new Stock data plot. Each data value consists of 4 data points. (open,close,min,max)
If the $ydata isn't an even number of data quadruples an error message will result.
$ydata = array( .... )
$stockplot = new StockPlot($ydata);


Dr. Jordan B Peterson has been a dishwasher, gas jockey, bartender, short-order cook, beekeeper, oil derrick bit re-tipper, plywood mill labourer and railway line worker. He’s taught mythology to lawyers, doctors and businessmen, consulted for the UN Secretary General’s High Level Panel on Sustainable Development, helped his clinical clients manage depression, obsessive-compulsive disorder, anxiety, and schizophrenia, served as an advisor to senior partners of major Canadian law firms, identified thousands of promising entrepreneurs on six different continents, and lectured extensively in North America and Europe.
He has flown a hammer-head roll in a carbon-fiber stunt plane, piloted a mahogany racing sailboat around Alcatraz Island, explored an Arizona meteorite crater with a group of astronauts, built a Native American Long-House on the upper floor of his Toronto home, and been inducted into the coastal Pacific Kwakwaka’wakw tribe.
With his students and colleagues, Dr. Peterson has published more than a hundred scientific papers, transforming the modern understanding of personality, and revolutionized the psychology of religion with his now-classic book, Maps of Meaning: The Architecture of Belief. As a Harvard professor, he was nominated for the prestigious Levinson Teaching Prize, and is regarded by his current University of Toronto students as one of three truly life-changing teachers.
He’s a Quora Most Viewed Writer in Values and Principles and Parenting and Education with 125,000 Twitter followers and 35,000 Facebook likes. His YouTube channel has over 200 videos, 275,000 subscribers, and 12,000,000 views and his classroom lectures on mythology were turned into a popular 13-part TV series on TVO. Dr. Peterson’s online self-help program, the Self Authoring Suite, featured in O: The Oprah Magazine, CBC radio, and NPR’s national website, has helped over 150,000 people resolve the problems of their past and radically improve their future.


The DOMCharacterData
interface extends DOMNode with a set of attributes and methods for accessing character data in the DOM.
More...
#include <DOMCharacterData.hpp>
Public Member Functions | |
Destructor | |
| virtual | ~DOMCharacterData () |
| Destructor. | |
Functions introduced in DOM Level 1 | |
| virtual const XMLCh * | getData () const =0 |
| Returns the character data of the node that implements this interface. | |
| virtual XMLSize_t | getLength () const =0 |
Returns the number of characters that are available through data and the substringData method below. | |
| virtual const XMLCh * | substringData (XMLSize_t offset, XMLSize_t count) const =0 |
| Extracts a range of data from the node. | |
| virtual void | appendData (const XMLCh *arg)=0 |
| Append the string to the end of the character data of the node. | |
| virtual void | insertData (XMLSize_t offset, const XMLCh *arg)=0 |
| Insert a string at the specified character offset. | |
| virtual void | deleteData (XMLSize_t offset, XMLSize_t count)=0 |
| Remove a range of characters from the node. | |
| virtual void | replaceData (XMLSize_t offset, XMLSize_t count, const XMLCh *arg)=0 |
| Replace the characters starting at the specified character offset with the specified string. | |
| virtual void | setData (const XMLCh *data)=0 |
| Sets the character data of the node that implements this interface. | |
Protected Member Functions | |
Hidden constructors | |
| DOMCharacterData () | |
| DOMCharacterData (const DOMCharacterData &other) |
The DOMCharacterData
interface extends DOMNode with a set of attributes and methods for accessing character data in the DOM.
For clarity this set is defined here rather than on each object that uses these attributes and methods. No DOM objects correspond directly to DOMCharacterData
, though DOMText
and others do inherit the interface from it. All offsets
in this interface start from 0
.
As explained in the DOM spec, text strings in the DOM are represented in UTF-16, i.e. as a sequence of 16-bit units. In the following, the term 16-bit units is used whenever necessary to indicate that indexing on DOMCharacterData is done in 16-bit units.
See also the Document Object Model (DOM) Level 2 Core Specification.
| xercesc::DOMCharacterData::DOMCharacterData | ( | ) | [inline, protected] |
| xercesc::DOMCharacterData::DOMCharacterData | ( | const DOMCharacterData & | other | ) | [inline, protected] |
| virtual xercesc::DOMCharacterData::~DOMCharacterData | ( | ) | [inline, virtual] |
Destructor.
| virtual void xercesc::DOMCharacterData::appendData | ( | const XMLCh * | arg | ) | [pure virtual] |
Append the string to the end of the character data of the node.
Upon success, data
provides access to the concatenation of data
and the XMLCh* String
specified.
| arg | The XMLCh* String to append. |
| DOMException | NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. |
| virtual void xercesc::DOMCharacterData::deleteData | ( | XMLSize_t | offset, | |
| XMLSize_t | count | |||
| ) | [pure virtual] |
Remove a range of characters from the node.
Upon success, data
and length
reflect the change.
| offset | The offset from which to remove characters. | |
| count | The number of characters to delete. If the sum of offset and count exceeds length then all characters from offset to the end of the data are deleted. |
| DOMException | INDEX_SIZE_ERR: Raised if the specified offset is negative or greater than the number of characters in data , or if the specified count is negative. NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. |
| virtual const XMLCh* xercesc::DOMCharacterData::getData | ( | ) | const [pure virtual] |
Returns the character data of the node that implements this interface.
The DOM implementation may not put arbitrary limits on the amount of data that may be stored in a DOMCharacterData
node. However, implementation limits may mean that the entirety of a node's data may not fit into a single XMLCh* String
. In such cases, the user may call substringData
to retrieve the data in appropriately sized pieces.
| DOMException | NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly. |
| virtual XMLSize_t xercesc::DOMCharacterData::getLength | ( | ) | const [pure virtual] |
Returns the number of characters that are available through data
and the substringData
method below.
This may have the value zero, i.e., CharacterData
nodes may be empty.
| virtual void xercesc::DOMCharacterData::insertData | ( | XMLSize_t | offset, | |
| const XMLCh * | arg | |||
| ) | [pure virtual] |
Insert a string at the specified character offset.
| offset | The character offset at which to insert. | |
| arg | The XMLCh* String to insert. |
| DOMException | INDEX_SIZE_ERR: Raised if the specified offset is negative or greater than the number of characters in data . NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. |
| virtual void xercesc::DOMCharacterData::replaceData | ( | XMLSize_t | offset, | |
| XMLSize_t | count, | |||
| const XMLCh * | arg | |||
| ) | [pure virtual] |
Replace the characters starting at the specified character offset with the specified string.
| offset | The offset from which to start replacing. | |
| count | The number of characters to replace. If the sum of offset and count exceeds length , then all characters to the end of the data are replaced (i.e., the effect is the same as a remove method call with the same range, followed by an append method invocation). | |
| arg | The XMLCh* String with which the range must be replaced. |
| DOMException | INDEX_SIZE_ERR: Raised if the specified offset is negative or greater than the number of characters in data , or if the specified count is negative. NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. |
| virtual void xercesc::DOMCharacterData::setData | ( | const XMLCh * | data | ) | [pure virtual] |
Sets the character data of the node that implements this interface.
| data | The XMLCh* String to set. |
| virtual const XMLCh* xercesc::DOMCharacterData::substringData | ( | XMLSize_t | offset, | |
| XMLSize_t | count | |||
| ) | const [pure virtual] |
Extracts a range of data from the node.
| offset | Start offset of substring to extract. | |
| count | The number of characters to extract. |
offset
and count
exceeds the length
, then all characters to the end of the data are returned. | DOMException | INDEX_SIZE_ERR: Raised if the specified offset is negative or greater than the number of characters in data , or if the specified count is negative. |


This website provides a RESTful API interface to highly detailed objects built from thousands of lines of data related to Saint Seiya. Using this website, you can consume information on Saint Seiya, their characters, cloths, classes and more.
An API (Application Programming Interface) is a contract that allow developers to interact with an application through a set of interfaces. In this case, the application is a database of thousands of Saint-Seiya-related objects, and the interfaces are URL links. A RESTful API is an API that conforms to a set of loose conventions based on HTTP verbs, errors, and hyperlinks.
I know! Feel free to contribute to open issues on GitHub.
Saint Seiya V1 was created by Diego Chagas as a personal project.
I gathered the information on this site from various resources:
The website were built using Angular framework and CSV files database to store the data. The API were build with Node and Express, that were used to expose the data through a RESTful API, that converted CSV files to serve static JSON files in a fully backwards compatible manner. The images was storage on Firebase.


Interface IDevice
Base interface of every client implementation of ASCOM Alpaca device
Namespace: ES.Ascom.Alpaca.Devices
Assembly: ES.Ascom.Alpaca.Shared.dll
Syntax
public interface IDevice
Properties
| Improve this Doc View SourceDeviceNumber
Device number configured in the device instance
Declaration
int DeviceNumber { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
Methods
| Improve this Doc View SourceGetDescription()
Retrieves a description of the device (manufacturer, model number, ...)
Declaration
string GetDescription()
Returns
| Type | Description |
|---|---|
| System.String | Device description |
GetDriverInfo()
Retrieves descriptive and version information about the device.
Declaration
string GetDriverInfo()
Returns
| Type | Description |
|---|---|
| System.String | Device information |
GetDriverVersion()
Retrieves the version of the driver
Declaration
string GetDriverVersion()
Returns
| Type | Description |
|---|---|
| System.String | A string containing only the major and minor version of the driver. |
GetInterfaceVersion()
The ASCOM Device interface version number that this device supports.
Declaration
int GetInterfaceVersion()
Returns
| Type | Description |
|---|---|
| System.Int32 |
GetName()
Retrieves the name of the device
Declaration
string GetName()
Returns
| Type | Description |
|---|---|
| System.String | Name of the device |
GetSupportedActions()
Returns the list of action names supported by this driver.
Declaration
IList<string> GetSupportedActions()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IList<System.String> |
InvokeAction(String, String)
Invokes the specified device-specific action.
Declaration
string InvokeAction(string actionName, string actionParameters)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | actionName | A well known name that represents the action to be carried out. |
| System.String | actionParameters | List of required parameters or an Empty String if none are required |
Returns
| Type | Description |
|---|---|
| System.String | String response from the device |
IsConnected()
Retrieves the connected state of the device
Declaration
bool IsConnected()
Returns
| Type | Description |
|---|---|
| System.Boolean |
|
SendCommandBlind(String, Boolean)
Transmits an arbitrary string to the device and does not wait for a response. Optionally, protocol framing characters may be added to the string before transmission.
Declaration
void SendCommandBlind(string command, bool raw = false)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | command | The literal command string to be transmitted |
| System.Boolean | raw | If set to true the string is transmitted 'as-is', if set to false then protocol framing characters may be added prior to transmission |
SendCommandBool(String, Boolean)
Transmits an arbitrary string to the device and waits for a boolean response. Optionally, protocol framing characters may be added to the string before transmission.
Declaration
bool SendCommandBool(string command, bool raw = false)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | command | The literal command string to be transmitted |
| System.Boolean | raw | If set to true the string is transmitted 'as-is', if set to false then protocol framing characters may be added prior to transmission |
Returns
| Type | Description |
|---|---|
| System.Boolean | Boolean response from the device. |
SendCommandString(String, Boolean)
Transmits an arbitrary string to the device and waits for a string response. Optionally, protocol framing characters may be added to the string before transmission.
Declaration
string SendCommandString(string command, bool raw = false)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | command | The literal command string to be transmitted. |
| System.Boolean | raw | If set to true the string is transmitted 'as-is', if set to false then protocol framing characters may be added prior to transmission |
Returns
| Type | Description |
|---|---|
| System.String | String response from the device. |
SetConnected(Boolean)
Sets the connected state of the device
Declaration
void SetConnected(bool connected)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Boolean | connected | Set True to connect to the device hardware, set False to disconnect from the device hardware |


Go to the source code of this file.
| #define CMPSS_O_COMPCTL 0x0U |
| #define CMPSS_O_COMPHYSCTL 0x1U |
Referenced by CMPSS_setHysteresis().
| #define CMPSS_O_COMPSTS 0x2U |
Referenced by CMPSS_getStatus().
| #define CMPSS_O_COMPSTSCLR 0x3U |
Referenced by CMPSS_clearFilterLatchHigh(), CMPSS_clearFilterLatchLow(), and CMPSS_configLatchOnPWMSYNC().
| #define CMPSS_O_COMPDACCTL 0x4U |
Referenced by CMPSS_configDAC(), and CMPSS_configRamp().
| #define CMPSS_O_DACHVALS 0x6U |
Referenced by CMPSS_setDACValueHigh().
| #define CMPSS_O_DACHVALA 0x7U |
Referenced by CMPSS_getDACValueHigh().
| #define CMPSS_O_RAMPMAXREFA 0x8U |
Referenced by CMPSS_getMaxRampValue().
| #define CMPSS_O_RAMPMAXREFS 0xAU |
Referenced by CMPSS_configRamp(), and CMPSS_setMaxRampValue().
| #define CMPSS_O_RAMPDECVALA 0xCU |
Referenced by CMPSS_getRampDecValue().
| #define CMPSS_O_RAMPDECVALS 0xEU |
Referenced by CMPSS_configRamp(), and CMPSS_setRampDecValue().
| #define CMPSS_O_RAMPSTS 0x10U |
| #define CMPSS_O_DACLVALS 0x12U |
Referenced by CMPSS_setDACValueLow().
| #define CMPSS_O_DACLVALA 0x13U |
Referenced by CMPSS_getDACValueLow().
| #define CMPSS_O_RAMPDLYA 0x14U |
Referenced by CMPSS_getRampDelayValue().
| #define CMPSS_O_RAMPDLYS 0x15U |
Referenced by CMPSS_configRamp(), and CMPSS_setRampDelayValue().
| #define CMPSS_O_CTRIPLFILCTL 0x16U |
Referenced by CMPSS_configFilterLow(), and CMPSS_initFilterLow().
| #define CMPSS_O_CTRIPLFILCLKCTL 0x17U |
Referenced by CMPSS_configFilterLow().
| #define CMPSS_O_CTRIPHFILCTL 0x18U |
Referenced by CMPSS_configFilterHigh(), and CMPSS_initFilterHigh().
| #define CMPSS_O_CTRIPHFILCLKCTL 0x19U |
Referenced by CMPSS_configFilterHigh().
| #define CMPSS_O_COMPLOCK 0x1AU |
| #define CMPSS_COMPCTL_COMPHSOURCE 0x1U |
| #define CMPSS_COMPCTL_COMPHINV 0x2U |
| #define CMPSS_COMPCTL_CTRIPHSEL_S 2U |
| #define CMPSS_COMPCTL_CTRIPHSEL_M 0xCU |
Referenced by CMPSS_configOutputsHigh().
| #define CMPSS_COMPCTL_CTRIPOUTHSEL_S 4U |
| #define CMPSS_COMPCTL_CTRIPOUTHSEL_M 0x30U |
Referenced by CMPSS_configOutputsHigh().
| #define CMPSS_COMPCTL_ASYNCHEN 0x40U |
| #define CMPSS_COMPCTL_COMPLSOURCE 0x100U |
| #define CMPSS_COMPCTL_COMPLINV 0x200U |
| #define CMPSS_COMPCTL_CTRIPLSEL_S 10U |
| #define CMPSS_COMPCTL_CTRIPLSEL_M 0xC00U |
Referenced by CMPSS_configOutputsLow().
| #define CMPSS_COMPCTL_CTRIPOUTLSEL_S 12U |
| #define CMPSS_COMPCTL_CTRIPOUTLSEL_M 0x3000U |
Referenced by CMPSS_configOutputsLow().
| #define CMPSS_COMPCTL_ASYNCLEN 0x4000U |
| #define CMPSS_COMPCTL_COMPDACE 0x8000U |
Referenced by CMPSS_disableModule(), and CMPSS_enableModule().
| #define CMPSS_COMPHYSCTL_COMPHYS_S 0U |
| #define CMPSS_COMPHYSCTL_COMPHYS_M 0x7U |
| #define CMPSS_COMPSTS_COMPHSTS 0x1U |
| #define CMPSS_COMPSTS_COMPHLATCH 0x2U |
| #define CMPSS_COMPSTS_COMPLSTS 0x100U |
| #define CMPSS_COMPSTS_COMPLLATCH 0x200U |
| #define CMPSS_COMPSTSCLR_HLATCHCLR 0x2U |
Referenced by CMPSS_clearFilterLatchHigh().
| #define CMPSS_COMPSTSCLR_HSYNCCLREN 0x4U |
Referenced by CMPSS_configLatchOnPWMSYNC().
| #define CMPSS_COMPSTSCLR_LLATCHCLR 0x200U |
Referenced by CMPSS_clearFilterLatchLow().
| #define CMPSS_COMPSTSCLR_LSYNCCLREN 0x400U |
Referenced by CMPSS_configLatchOnPWMSYNC().
| #define CMPSS_COMPDACCTL_DACSOURCE 0x1U |
Referenced by CMPSS_configDAC().
| #define CMPSS_COMPDACCTL_RAMPSOURCE_S 1U |
Referenced by CMPSS_configRamp().
| #define CMPSS_COMPDACCTL_RAMPSOURCE_M 0x1EU |
Referenced by CMPSS_configRamp().
| #define CMPSS_COMPDACCTL_SELREF 0x20U |
Referenced by CMPSS_configDAC().
| #define CMPSS_COMPDACCTL_RAMPLOADSEL 0x40U |
Referenced by CMPSS_configRamp().
| #define CMPSS_COMPDACCTL_SWLOADSEL 0x80U |
Referenced by CMPSS_configDAC().
| #define CMPSS_COMPDACCTL_FREESOFT_S 14U |
| #define CMPSS_COMPDACCTL_FREESOFT_M 0xC000U |
| #define CMPSS_DACHVALS_DACVAL_S 0U |
| #define CMPSS_DACHVALS_DACVAL_M 0xFFFU |
| #define CMPSS_DACHVALA_DACVAL_S 0U |
| #define CMPSS_DACHVALA_DACVAL_M 0xFFFU |
| #define CMPSS_DACLVALS_DACVAL_S 0U |
| #define CMPSS_DACLVALS_DACVAL_M 0xFFFU |
| #define CMPSS_DACLVALA_DACVAL_S 0U |
| #define CMPSS_DACLVALA_DACVAL_M 0xFFFU |
| #define CMPSS_RAMPDLYA_DELAY_S 0U |
| #define CMPSS_RAMPDLYA_DELAY_M 0x1FFFU |
| #define CMPSS_RAMPDLYS_DELAY_S 0U |
| #define CMPSS_RAMPDLYS_DELAY_M 0x1FFFU |
Referenced by CMPSS_configRamp().
| #define CMPSS_CTRIPLFILCTL_SAMPWIN_S 4U |
Referenced by CMPSS_configFilterLow().
| #define CMPSS_CTRIPLFILCTL_SAMPWIN_M 0x1F0U |
Referenced by CMPSS_configFilterLow().
| #define CMPSS_CTRIPLFILCTL_THRESH_S 9U |
Referenced by CMPSS_configFilterLow().
| #define CMPSS_CTRIPLFILCTL_THRESH_M 0x3E00U |
Referenced by CMPSS_configFilterLow().
| #define CMPSS_CTRIPLFILCTL_FILINIT 0x8000U |
Referenced by CMPSS_initFilterLow().
| #define CMPSS_CTRIPLFILCLKCTL_CLKPRESCALE_S 0U |
| #define CMPSS_CTRIPLFILCLKCTL_CLKPRESCALE_M 0x3FFU |
| #define CMPSS_CTRIPHFILCTL_SAMPWIN_S 4U |
Referenced by CMPSS_configFilterHigh().
| #define CMPSS_CTRIPHFILCTL_SAMPWIN_M 0x1F0U |
Referenced by CMPSS_configFilterHigh().
| #define CMPSS_CTRIPHFILCTL_THRESH_S 9U |
Referenced by CMPSS_configFilterHigh().
| #define CMPSS_CTRIPHFILCTL_THRESH_M 0x3E00U |
Referenced by CMPSS_configFilterHigh().
| #define CMPSS_CTRIPHFILCTL_FILINIT 0x8000U |
Referenced by CMPSS_initFilterHigh().
| #define CMPSS_CTRIPHFILCLKCTL_CLKPRESCALE_S 0U |
| #define CMPSS_CTRIPHFILCLKCTL_CLKPRESCALE_M 0x3FFU |
| #define CMPSS_COMPLOCK_COMPCTL 0x1U |
| #define CMPSS_COMPLOCK_COMPHYSCTL 0x2U |
| #define CMPSS_COMPLOCK_DACCTL 0x4U |
| #define CMPSS_COMPLOCK_CTRIP 0x8U |


Welcome to the emubot
Framework¶
emubot
aims to enable users with little coding experience as well as users with extensive experience that want to quickly set up a flexible and
transparent chatbot. This documentation is complementary to our GitHub repository and describes the setup for various
messaging platforms and natural language processing (NLP) services. Currently, we support two messaging services (Facebook and Slack) as well as three NLP
services (Dialogflow, Rasa and Snips) out of the box. Adding adapters for another, also your very own, chat platform or
another NLP service is designed to be easy.If you do not know how chatbots work, want to know which components are relevant, or if you want to know what our architecture looks like,
you might want to start in the Overview section.
The Quickstart guide offers all information required to get up and running.
Feel free to Contact us if you would like to Contribute another adapter to this framework!