Post by: Jude Wyatt, Greenhorn
on Feb 15, 2012 07:42:51
Hello all-
This is my first post here. I've been taking courses to learn Java for almost a year now. I really enjoy it and love it when I make a breakthrough. However, I'm struggling pretty hard right now with this one thing.
I have an ArrayList of objects in my Driver Program. I am required to pass this array to a method called "mate", which is located in another class. Inside this "mate" method, I'm required to check some conditions and if true, add additional objects to the ArrayList located in main. However, the method is not suppossed to return any value. The code I'm currently using is below:
This is my driver with the ArrayList, as well as the Main Method: (NOTE: there is quite a bit of other code that I have omitted because all I'm concerned with is learning how to add an additional object to my ArrayList, from the mate method.)
and here is my Mouse class which holds the grow() and mate() methods: (NOTE: Again, code omitted because all I'm concerned with is learning how to add an additional object to my ArrayList, from within the mate method.)
So, basically I need to know why this line miceModified.add(new Mouse()); is causing the error and what I need to do instead of this line in order to add an additional Mouse Object to my ArrayList, while I'm inside of this mate() method.
Here is the error that I receive:
Any help anyone could provide would be awesome!
Thanks,
chief
Post by: Jeff Verdegan, Bartender
on Feb 15, 2012 07:55:48
Hi, and welcome to the Ranch!
When you post code, UseCodeTags(⇐click) so it will be readable.
ItDoesntWorkIsUseless.(⇐click) You need to copy/paste the exact, complete error message.
As it is, skimming your unformatted code and with no details about the error, I don't see anything that should be causing a problem, so please follow the above suggestions and then we'll see what the problem is.
Post by: Joanne Neal, Rancher
on Feb 15, 2012 07:56:59
chief warpaint wrote:So, basically I need to know why this line miceModified.add(new Mouse()); is causing the error
What error ?
Post by: Jude Wyatt, Greenhorn
on Feb 15, 2012 08:01:38
Jeff Verdegan wrote:Hi, and welcome to the Ranch!
When you post code, UseCodeTags(⇐click) so it will be readable.
ItDoesntWorkIsUseless.(⇐click) You need to copy/paste the exact, complete error message.
As it is, skimming your unformatted code and with no details about the error, I don't see anything that should be causing a problem, so please follow the above suggestions and then we'll see what the problem is.
Jeff-
My apologies and thanks for the heads up. I edited the post to reflect java code, but is there anyway to post the error message without having to type it all out? Copy/Paste doesn't seem to work.
Post by: Jeff Verdegan, Bartender
on Feb 15, 2012 08:06:41
chief warpaint wrote:is there anyway to post the error message without having to type it all out? Copy/Paste doesn't seem to work.
Windows cmd.exe?
Either just select it and hit Enter to copy, or, if not in quick-edit mode, right click, and choose "Select" or whatever is appropriate from the popup menu, then, I think, hit Enter to copy.
Linux terminal?
Just select the text to copy it.
Console in an IDE such as Eclipse or NetBeans?
You shouldn't be using an IDE yet, but I'm sure there's a way to copy its output. See its docs or help section.
Also, please re-edit your post so that the long comment is above the line in question, not at the end of it. Code doesn't line-wrap, so it makess the text area very wide and I have to scroll right to read everything. Thanks.
Post by: Jude Wyatt, Greenhorn
on Feb 15, 2012 08:12:09
Jeff Verdegan wrote:
chief warpaint wrote:is there anyway to post the error message without having to type it all out? Copy/Paste doesn't seem to work.
Windows cmd.exe?
Either just select it and hit Enter to copy, or, if not in quick-edit mode, right click, and choose "Select" or whatever is appropriate from the popup menu, then, I think, hit Enter to copy.
Linux terminal?
Just select the text to copy it.
Console in an IDE such as Eclipse or NetBeans?
You shouldn't be using an IDE yet, but I'm sure there's a way to copy its output. See its docs or help section.
Also, please re-edit your post so that the long comment is above the line in question, not at the end of it. Code doesn't line-wrap, so it makess the text area very wide and I have to scroll right to read everything. Thanks.
Jeff-
Thanks. That worked perfectly! I posted the error message into the original post.
Post by: Jeff Verdegan, Bartender
on Feb 15, 2012 08:17:38
Did you read the docs for java.util.ConcurrentModificationException?(⇐click)
"For example, if a thread modifies a collection directly while it is iterating over the collection with a fail-fast iterator, the iterator will throw this exception."
I didn't see any multithreading in your code, so probably you're doing this:
While an iteration is in progress, you can only modify the list via the iterator. Plain old Iterator has a remove() method. ListIterator has an add() method as well.
So, you either need to use a ListIterator and call its add() method, rather than the List's add() method; or you need to collect all the stuff to add in a separate List, and then, after the iteration is complete, add everything from the new list into the original.
Post by: Joanne Neal, Rancher
on Feb 15, 2012 08:22:12
The foreach loop is just syntactic sugar for looping over a collection with an Iterator (see this thread for an example). And modifying a collection when it is being iterated using anything other than the itearor is not allowed.
As it says in the javadoc for ArrayList
The iterators returned by this class's iterator and listIterator methods are fail-fast: if the list is structurally modified at any time after the iterator is created, in any way except through the iterator's own remove or add methods, the iterator will throw a ConcurrentModificationException.
Post by: Campbell Ritchie, Sheriff
on Feb 15, 2012 08:24:51
That grow method, if you have the same in the Cat class, will have this effect
Post by: Campbell Ritchie, Sheriff
on Feb 15, 2012 08:34:43
I had to introduce some new lines into your code because the comment made it too wide for a screen.
Why is the mouseModified List static?  Both those things look like very iffy design to me.
You can only suffer that exception if you have an Iterator elsewhere. It must be that in the for-each loop in the main method, passed on to mate() method. If you do need Iterators, you should almost always declare them as loop-local variables, not fields, otherwise you are setting yourself up for a ConcurrentModificationException. In the case where you wish to alter the List, you should consider using an old-fashioned for loop, not for-each. Also read about the RandomAccess [â†?link] interface, and see whether ArrayList implements RandomAccess.
Post by: Jude Wyatt, Greenhorn
on Feb 15, 2012 08:52:11
...Why is the mouseModified List static?  Both those things look like very iffy design to me...
Campbell-
That is from a result of me tinkering. We're not suppossed to return anything from the mate() method. So , essentially I tried making a copy of the ArrayList and adding new Mouse Objects to the copy. Then at a later time, I would pull the copied ArrayedList for generating screen output. Like the title of the post says, I'm a newb and am still learning all of this. I'm sure there is probably a better way to do this. I just haven't learned it yet.
Post by: Rob Spoor, Sheriff
on Feb 15, 2012 09:15:26
Line 16 of your Mouse class does not create a copy of m, it creates a new reference to the existing List object.
Post by: Campbell Ritchie, Sheriff
on Feb 15, 2012 09:30:52
You need to get a pencil and paper (and an eraser, probably the most important piece of equipment) and draw a diagram with your classes on. Draw a List of Mice; a square labelled mouseList containing M1, M2, M3, will do. Now decide where to put that.
Does it belong to a particuar mouse (instance field of the mouse class)?
Does it belong to the application as a whole (passed from outside the Mouse class)?
Does it belong to the Mouse class (rather than to a particular Mouse), being shared between all Mice (probably static field of the mouse class)?
Altering the field because a List is passed as an argument sounds iffy to me. Maybe you should have a method like this:-
If you search these fora, you will find discussion about whether things should be static or not; there seem to have been lots of such discussion in the last week or two. Making something static “because it works” sounds dubious, but making something static because you have worked out it ought to be static is good practice.
You are right not to return something from the mate() method. A method should do one thing and one thing only.
There are ways of granting access to the List of mice from outside the class; you create a method which returns a reference to it (or, better still, you find this, which copies it in a read-only form, to return from your method). By the way: if you are using a static member, you should call it by the name of the class, not an object. If you have a method which returns something static, you will most likely want that method to be static, too.
Post by: Jude Wyatt, Greenhorn
on Feb 15, 2012 18:47:01
Campbell Ritchie wrote:That grow method, if you have the same in the Cat class, will have this effect
Campbell-
Hahaha you were right. The kitty sure does get big pretty quick. Any way you could explain to me why it is happening and how I can correct it? I do have a grow method in both classes, but I thought that I was telling them to call their appropriate classes grow methods.
Thanks,
Jeff
Post by: Campbell Ritchie, Sheriff
on Feb 16, 2012 03:51:32
I actually meant the effect at the end of the clip.
All times above are in ranch (not your local) time.
The current ranch time is Dec 13, 2013 16:19:38.


RT_SIGRETURN
Section: Linux Programmer's Guide (2)Updated: 2004-March-12
Index Return to Main Contents
NAME
rt_sigreturn - Return from a signal handler and clean up the stack frameSYNOPSIS
- int sys_rt_sigreturn (unsigned long __unused); xSeries
- int sys_rt_sigreturn (int r3, int r4, int r5, int r6, int r7, int r8, struct pt_regs *regs); pSeries
- long sys_rt_sigreturn (struct pt_regs regs); Opteron, zSeries
DESCRIPTION
rt_sigreturn returns from a signal handler and cleans up the stack frame. The int r# values for pSeries are place holders and do not carry any value in the code itself. In some architectures, the struct pt_regs regs is used to indicate interrupts.
RETURN VALUE
rt_sigreturn returns old context.
ERRORS
SEE ALSO
rt_sigaction(2), rt_sigpending(2), rt_sigprocmask(2), rt_sigqueue(2), rt_sigsuspend(2), rt_sigtimedwait(2)
AUTHOR
Niki Rahimi
Index
This document was created by man2html, using the manual pages.
Time: 05:33:05 GMT, December 24, 2015


Video Funnels
Product
All features
Integrations
Chrome Extension
Bonjoro for
SaaS
Marketing
Customer Success
Sales
eCommerce
Online Education
Blog
Pricing
Login
Start free trial
menu
Video Funnels
Product
All features
Integrations
Chrome Extension
Bonjoro for
SaaS
Marketing
Customer Success
Sales
eCommerce
Online Education
Blog
Pricing
Login
Start free trial
asdf
asdf
chat_bubble


Welcome to NEXT
No blockchain files were found on your device.
Here is your options
Bootstrap Blockchain From Trusted URL (Fast/Recommended)
Synchronize Over Network
Quit


| Created: | 1/27/2021 3:41:44 PM |
| Modified: | 1/27/2021 3:41:44 PM |
| Project: | |
| Advanced: |
| Attribute |
|
Public bigint draw_id |
|
Details:
|
|
Public date draw_draw_date |
|
Details:
|
|
Public date draw_pay_date |
|
Details:
|
|
Public varchar(255) draw_state |
|
Details:
|
|
Public jsonb draw_verification_status |
|
Details:
|
|
Public timestamp with time zone(0) draw_sco_balance_verified_at |
|
Details:
|
|
Public integer draw_smart_link_number |
|
Details:
|
|
Public timestamp with time zone(0) draw_created_at |
|
Details:
|
|
Public bigint draw_created_by_user_id |
|
Details:
|
|
Public varchar(255) draw_created_by_user_sub |
|
Details:
|
|
Public varchar(255) draw_created_by_user_first_name |
|
Details:
|
|
Public varchar(255) draw_created_by_user_last_name |
|
Details:
|
|
Public varchar(255) draw_created_by_user_email |
|
Details:
|
|
Public timestamp with time zone(0) draw_updated_at |
|
Details:
|
|
Public bigint draw_updated_by_user_id |
|
Details:
|
|
Public varchar(255) draw_updated_by_user_sub |
|
Details:
|
|
Public varchar(255) draw_updated_by_user_first_name |
|
Details:
|
|
Public varchar(255) draw_updated_by_user_last_name |
|
Details:
|
|
Public varchar(255) draw_updated_by_user_email |
|
Details:
|
|
Public bigserial ods_id |
|
Details:
|
|
Public jsonb ods_meta |
|
Details:
|
|
Public varchar(255) ods_created_by |
|
Details:
|
|
Public timestamp with time zone(0) ods_created_at |
|
Details:
|
|
Public varchar(255) draw_updated_by_user_oid |
|
Details:
|
|
Public varchar(255) draw_created_by_user_oid |
|
Details:
|
| Operation | ||
|
Public draws_pkey( ods_id: bigserial, |
||
|
Details:
<<PK>>
|
||
|
Public draws_draw_id_index( draw_id: bigint, |
||
|
Details:
<<index>>
|
||
|
Public draws_draw_updated_at_index( draw_updated_at: timestamp with time zone, |
||
|
Details:
<<index>>
|
| Tag | Value |
| Owner | public |
|
Details:
|
| Property | Value |
| isFinalSpecialization: | 0 |
| Object | Type | Connection | Direction | Notes |
| «view» receipt_audit_history_view | View | Dependency | From | |
| «view» voucher_audit_history_view | View | Dependency | From |


Maximum Accounts Reached
The maximum amount of accounts have been created using your IP address. You cannot add any additional accounts using your IP address.
If you are still unsuccessful accessing your account
- Contact the Administrator $this->admin_email for assistance


Your hours have been submitted for aprroval. No changes can be made to your time sheet.
Once you submit your hours, no changes can be made to the time sheet.
Are you sure you want to submit?
Sorry, your times have already been posted. No changes to your time sheet can be made.
Sorry, your times have already been approved. Please contact your supervisor if you wish to make any changes.


Capture Test
Test file to play around with the functionalities of in-Browser image capturing and handling.
You can drag an image file here
Uploaded Images
Preview and Crop
set as reference image
generate new sample
zoom
-
+
angle
-
+
crop
set
Find!
imagen_1.jpg
python!


Question 1
expend energy, enjoy groups
conserve energy, enjoy one-on-one
Question 2
interpret literally
look for meaning and possibilities
Question 3
logical, thinking, questioning
empathetic, feeling, accommodating
Question 4
organized, orderly
flexible, adaptable
Question 5
more outgoing, think out loud
more reserved, think to yourself
Question 6
practical, realistic, experiential
imaginative, innovative, theoretical
Question 7
candid, straight forward, frank
tactful, kind, encouraging
Question 8
plan, schedule
unplanned, spontaneous
Question 9
seek many tasks, public activities, interaction with others
seek private, solitary activities with quiet to concentrate
Question 10
standard, usual, conventional
different, novel, unique
Question 11
firm, tend to criticize, hold the line
gentle, tend to appreciate
Question 12
regulated, structured
easygoing, “live” and “let live”
Question 13
external, communicative, express yourself
internal, reticent, keep to yourself
Question 14
focus on here-and-now
look to the future, global perspective, “big picture”
Question 15
tough-minded, just
tender-hearted, merciful
Question 16
preparation, plan ahead
go with the flow, adapt as you go
Question 17
active, initiate
reflective, deliberate
Question 18
facts, things, “what is”
ideas, dreams, “what could be,” philosophical
Question 19
matter of fact, issue-oriented
sensitive, people-oriented, compassionate
Question 20
control, govern
latitude, freedom
Finish
View Record


#import "template.html" as t><EMAIL_ADDRESS><#include "navbar.html" />
| ${labels["card.type"]} | ${labels['primary']} | ${labels["name.on.card"]} | ${labels["expires.on"]} | ${labels["action"]} | <#list accountProfile.creditCards?sort_by( "addedOn") as creditCard>
|---|---|---|---|---|
| ${(creditCard.cardType)!} ${labels["ending.in"]} ${(creditCard.lastFour)!} | <#if creditCard.primary>#if> | ${creditCard.cardholderName} | ${(creditCard.expirationMonth)!}/${(creditCard.expirationYear)!} | ${labels["edit"]} <#if ! creditCard.primary> ${labels["make.primary"]} #if> |


Company profile - Canadian Company Capabilities
Third-Party Information Liability Disclaimer
Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.
Stewart & Stevenson Canada Inc
Legal Name:
Stewart & Stevenson Canada Inc
Operating Name:
Stewart & Stevenson Canada
Mailing Address:
3111 Shepard Place SECALGARY, Alberta
T2C 4P1
Location Address:
3111 Shepard Place SECALGARY, Alberta
T2C 4P1
Tel.:<PHONE_NUMBER>
Tel.:<PHONE_NUMBER>
Fax:<PHONE_NUMBER>
Logo
Company Profile
Stewart & Stevenson is a leading designer, manufacturer and marketer of specialized equipment and a leading provider of aftermarket parts and service to the oil and gas and other industries that we have served for over 100 years. Our diversified product offerings include equipment for well stimulation, well workover and service, drilling, coiled tubing, cementing, nitrogen pumping, power generation and electrical systems as well as engines, transmissions and material handling equipment. As a result of our long history and product quality, we have a substantial installed base of equipment and our commitment to providing aftermarket parts and service remains a significant portion of our proud tradition. We also provide rental equipment to a broad range of customers.
Headquartered in Houston, Texas since 1902, we operate from a network of 53 strategic locations. Leveraging more than a century of business excellence, we are building for the next century
For more information, please visit our webite at www.stewartandstevenson.com
Full profile
Full profile
Contact information
Company description
Product / Service / Licensing
Stewart & Stevensons advanced equipment designs include:
- Truck, trailer, or skid mounted
- Automatic or manual density controls
- Recirculating or jet mixing systems
- Single or dual pump configurations
- High temperature and cold weather packages
Trailerized coiled tubing units utilize injector heads with pull capacity up to 100,000 lb and feature a choice of a stand-alone diesel hybrid power pack or wet kit style power pack. Trailer-mounted units are available with and without a crane. Reel trailers for large tubing sizes are also available.
Truck-mounted coiled tubing units are designed to fit the chassis of the truck model that meets customer needs and operating conditions. The unit can be provided with or without an integral crane.
Offshore CTUs consist of skidded equipment for use on offshore platforms or purpose-built well intervention vessels. Units are split into multiple skids/lifts. For faster rig up, the control cabin and power pack can be combined into a single skid/lift. Options include containerization/sound attenuation, exhaust gas-cooling system with integral flame traps, gas detection system, explosion-proof wiring and certified lifting frames.
- Fracturing Pumps
- Blenders
- Chemical Additive and Hydration Systems
- Acidizing Equipment
- Proppant Units
- Data Acquisition
- Control Centers
- Support Equipment
Combining more than 60 years of fracturing equipment experience with in-house engineering, software development and quality control expertise, Stewart & Stevenson develops leading edge stimulation equipment that offers maximum reliability.
We tailor equipment to meet each operating regions specific environment with advanced control systems to serve as a single control platform for multiple pieces of equipment. Our data vans have controls, data acquisition software and communication technology that makes complete control of field operations possible. Quality control in all phases of equipment design and construction ensures consistent quality that minimizes maintenance requirements.
Stewart & Stevensons fully integrated stimulation systems offer simplified operation and improved job quality while requiring fewer trained operators to perform a fracturing treatment.
Heat recovery versions provide heat to vaporize liquid nitrogen
- Available in 90K and 180K SCFH units
- Capable of pumping pressures to 15,000 psi
Direct-fired units deliver nitrogen gas at high rates and
pressures
- Available in 540K, 660K and 1.2MM SCFH units
- Equipped with high horsepower engines, electronic controls and advanced hydraulics
- Provide maximum performance in stimulation treatments
Manufactured completely in the companys Canadian and U.S. manufacturing facilities, Stewart & Stevenson rigs undergo pull testing and meet the rigorous industry standards established by the American Petroleum Institute (API) and the International Standards Organization (ISO). Major operators around the globe rely on the superior quality of Stewart & Stevenson rigs.
- DaqPaqTM real time monitoring and recording
- Mixing tub with feed auger systems
- Acid transportation tanks
Manufactured completely in the companys Canadian and U.S. manufacturing facilities, Stewart & Stevenson rigs undergo pull testing and meet the rigorous industry standards established by the American Petroleum Institute (API) and the International Standards Organization (ISO). Major operators around the globe rely on the superior quality of Stewart & Stevenson rigs.
Remanufacturing support is provided for these equipment platforms:
- Fracturing Pumping Units
- Blenders
- Hydration Units
- Pump Trucks
- Tractors
- Trailers
- Nitrogen Units
- Coiled Tubing Units
- Drilling,Workover and Well Servicing Rigs
- Masts
Remanufacturing support is provided for these equipment
platforms:
- Fracturing Pumping Units
- Blenders
- Hydration Units
- Pump Trucks
- Tractors
- Trailers
- Nitrogen Units
- Coiled Tubing Units
- Drilling, Workover and Well Servicing Rigs
- Masts
Single and twin configurations:
- Skid, trailer and truck
- 500 to 2,000 horsepower
- Automatic transmissions
Twin pumping unit features:
- Rugged oilfield trailer
- Two high-pressure pumping systems, fluid handling system and operators control console
- Two engines, two powershift transmissions, two triplex pumps with gear reducers and 2-speed gearboxes for low rate pumping
- Quintuplex pumps can be installed for greater flow rates
Technology profile
Headquartered in Houston, Texas since 1902, we operate from a network of 53 strategic locations. Leveraging more than a century of business excellence, we are building for the next century
Market profile
Industry sector market interests:
- Manufacturing
Geographic markets:
Export experience:
- Angola
- Argentina
- Australia
- Brazil
- Brunei Darussalam
- China
- Colombia
- Egypt
- Germany
- India
- Iraq
- Mexico
- Nigeria
- Oman
- Romania
- Russian Federation
Actively pursuing:
- Ecuador
- Indonesia
- Peru
- Poland
- Qatar
- Saudi Arabia
- Turkey
- United Arab Emirates
- United Kingdom
- Venezuela, Bolivarian Republic of
Sector information
Key / Major clients:
Halliburton Energy Services, Oil & Natural GasCorporation Ltd. (India), Oil India Limited
(India), Schlumberger, Trican Well Services,
Calfrac Well Services, Sanjel Corporation,
Evergreen Resources, Inc., BJ Services Company,
Pride San Antonio (South America), Smith Eurasia
(Russia), Sinopec Star Petroleum (China), Petro
Alliance (Russia), Precision Drilling, DDT
Cementing, Ram Cementers, Bearspaw Petroleum,
Ucisco Inc., Enecal Canada Corp., Airborne Energy
Solutions, Talisman Energy Inc., Bouchard Well
Services, Rockwell Servicing Inc., Pantara
Drilling Inc., Great Plains Well Servicing Corp.,
Cardinal Well Services Inc., Chinook Drilling
Inc., Rattler Rig Ltd., Prodril, Frac Tech, Kala
Naft (Iran), Petrom (Romania), Huabei (China),
ROS Ltd. (Russia)
Third-Party Information Liability Disclaimer
Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.
Contacts
Contact information
Description
Company description
Products, services and licensing
Product / Service / Licensing
Stewart & Stevensons advanced equipment designs include:
- Truck, trailer, or skid mounted
- Automatic or manual density controls
- Recirculating or jet mixing systems
- Single or dual pump configurations
- High temperature and cold weather packages
Trailerized coiled tubing units utilize injector heads with pull capacity up to 100,000 lb and feature a choice of a stand-alone diesel hybrid power pack or wet kit style power pack. Trailer-mounted units are available with and without a crane. Reel trailers for large tubing sizes are also available.
Truck-mounted coiled tubing units are designed to fit the chassis of the truck model that meets customer needs and operating conditions. The unit can be provided with or without an integral crane.
Offshore CTUs consist of skidded equipment for use on offshore platforms or purpose-built well intervention vessels. Units are split into multiple skids/lifts. For faster rig up, the control cabin and power pack can be combined into a single skid/lift. Options include containerization/sound attenuation, exhaust gas-cooling system with integral flame traps, gas detection system, explosion-proof wiring and certified lifting frames.
- Fracturing Pumps
- Blenders
- Chemical Additive and Hydration Systems
- Acidizing Equipment
- Proppant Units
- Data Acquisition
- Control Centers
- Support Equipment
Combining more than 60 years of fracturing equipment experience with in-house engineering, software development and quality control expertise, Stewart & Stevenson develops leading edge stimulation equipment that offers maximum reliability.
We tailor equipment to meet each operating regions specific environment with advanced control systems to serve as a single control platform for multiple pieces of equipment. Our data vans have controls, data acquisition software and communication technology that makes complete control of field operations possible. Quality control in all phases of equipment design and construction ensures consistent quality that minimizes maintenance requirements.
Stewart & Stevensons fully integrated stimulation systems offer simplified operation and improved job quality while requiring fewer trained operators to perform a fracturing treatment.
Heat recovery versions provide heat to vaporize liquid nitrogen
- Available in 90K and 180K SCFH units
- Capable of pumping pressures to 15,000 psi
Direct-fired units deliver nitrogen gas at high rates and
pressures
- Available in 540K, 660K and 1.2MM SCFH units
- Equipped with high horsepower engines, electronic controls and advanced hydraulics
- Provide maximum performance in stimulation treatments
Manufactured completely in the companys Canadian and U.S. manufacturing facilities, Stewart & Stevenson rigs undergo pull testing and meet the rigorous industry standards established by the American Petroleum Institute (API) and the International Standards Organization (ISO). Major operators around the globe rely on the superior quality of Stewart & Stevenson rigs.
- DaqPaqTM real time monitoring and recording
- Mixing tub with feed auger systems
- Acid transportation tanks
Manufactured completely in the companys Canadian and U.S. manufacturing facilities, Stewart & Stevenson rigs undergo pull testing and meet the rigorous industry standards established by the American Petroleum Institute (API) and the International Standards Organization (ISO). Major operators around the globe rely on the superior quality of Stewart & Stevenson rigs.
Remanufacturing support is provided for these equipment platforms:
- Fracturing Pumping Units
- Blenders
- Hydration Units
- Pump Trucks
- Tractors
- Trailers
- Nitrogen Units
- Coiled Tubing Units
- Drilling,Workover and Well Servicing Rigs
- Masts
Remanufacturing support is provided for these equipment
platforms:
- Fracturing Pumping Units
- Blenders
- Hydration Units
- Pump Trucks
- Tractors
- Trailers
- Nitrogen Units
- Coiled Tubing Units
- Drilling, Workover and Well Servicing Rigs
- Masts
Single and twin configurations:
- Skid, trailer and truck
- 500 to 2,000 horsepower
- Automatic transmissions
Twin pumping unit features:
- Rugged oilfield trailer
- Two high-pressure pumping systems, fluid handling system and operators control console
- Two engines, two powershift transmissions, two triplex pumps with gear reducers and 2-speed gearboxes for low rate pumping
- Quintuplex pumps can be installed for greater flow rates
Technology
Technology profile
Headquartered in Houston, Texas since 1902, we operate from a network of 53 strategic locations. Leveraging more than a century of business excellence, we are building for the next century
Market
Market profile
Industry sector market interests:
- Manufacturing
Geographic markets:
Export experience:
- Angola
- Argentina
- Australia
- Brazil
- Brunei Darussalam
- China
- Colombia
- Egypt
- Germany
- India
- Iraq
- Mexico
- Nigeria
- Oman
- Romania
- Russian Federation
Actively pursuing:
- Ecuador
- Indonesia
- Peru
- Poland
- Qatar
- Saudi Arabia
- Turkey
- United Arab Emirates
- United Kingdom
- Venezuela, Bolivarian Republic of
Sector
Sector information
Key / Major clients:
Halliburton Energy Services, Oil & Natural GasCorporation Ltd. (India), Oil India Limited
(India), Schlumberger, Trican Well Services,
Calfrac Well Services, Sanjel Corporation,
Evergreen Resources, Inc., BJ Services Company,
Pride San Antonio (South America), Smith Eurasia
(Russia), Sinopec Star Petroleum (China), Petro
Alliance (Russia), Precision Drilling, DDT
Cementing, Ram Cementers, Bearspaw Petroleum,
Ucisco Inc., Enecal Canada Corp., Airborne Energy
Solutions, Talisman Energy Inc., Bouchard Well
Services, Rockwell Servicing Inc., Pantara
Drilling Inc., Great Plains Well Servicing Corp.,
Cardinal Well Services Inc., Chinook Drilling
Inc., Rattler Rig Ltd., Prodril, Frac Tech, Kala
Naft (Iran), Petrom (Romania), Huabei (China),
ROS Ltd. (Russia)


{% extends 'layout.html' %} {% block content %}
Route /replay-example
signs and sends a POST
request to /api/replay-example
, which checks to see if the
request has been sent previously. If not, it validates the request
signature and responds with mock new user data if the signature is valid.
{{ request|trim }}
{{ response|trim }}{% endblock %}


Returns the number of tuples in a set (the cardinality of the set). This function counts all tuples of the set regardless of empty values. If you wish to count only tuples that evaluate to nonempty values, use NonEmptyCount.
Syntax
Count ( set [, IncludeEmpty] )
| Parameter | Description |
|---|---|
|
The set for which a tuple count is needed. |
|
IncludeEmpty |
Optional and default (empty values are counted even if this keyword is omitted). |
Notes
This function returns a zero if the input set is empty.
Example
WITH MEMBER [Measures].[Prod Count] AS 'Count ( Crossjoin ( {[Measures].[Sales]}, {[Product].children} ) )' SELECT { [Scenario].[Actual], [Scenario].[Budget] } ON COLUMNS, { Crossjoin ( {[Measures].[Sales]}, {[Product].children} ), ([Measures].[Prod Count], [Product]) } ON ROWS FROM Sample.Basic WHERE ([Year].[Jan], [Market].[New York])
returns the grid:
| Actual | Budget | ||
| Sales | Colas | 678 | 640 |
| Root Beer | 551 | 530 | |
| Cream Soda | 663 | 510 | |
| Fruit Soda | 587 | 620 | |
| Diet Drinks | #Missing | #Missing | |
| Prod Count | Product | 5 | 5 |
The WITH section of the query calculates the count of all products for which a data value exists. The SELECT section arranges the members shown on columns and rows. The entire query is sliced by January and New York in the WHERE section; though those members are not shown in the grid, the data is applicable to those members.


ColVis adds a button to the toolbars around DataTables which gives the end user of the table the ability to dynamically change the visibility of the columns in the table:
To use ColVis, first download DataTables ( http://datatables.net/download ) and place the unzipped ColVis package into a extensions
directory in the DataTables package. This will allow the pages in the examples to operate correctly. To see the examples running, open the examples
directory in your web-browser.
ColVis is initialised using the C
option that it adds to DataTables' dom
option. For example:
$(document).ready( function () {
$('#example').dataTable( {
"dom": 'C<"clear">lfrtip'
} );
} );
If you fancy getting involved with the development of ColVis and help make it better, please refer to its GitHub repo: https://github.com/DataTables/ColVis


The place where our html files and assets will live!
Chico-acm.com is designed as a place to put all the assets and markdown for any pages we want to host. We're focused mainly on algorithms, so I'll take care of all the hosting and routes and static assets and all of that nonsense! In order to reduce the workload on me however I ask you follow the contribution guides below! Feel free to ping me on slack! (you can sign up on chicoacm.slack.com with your @mail.csuchico.edu account)
Thanks! ~ Matt
In order to make contributing as easy as possible, we're going to use github-flavored markdown. This is the same format that this README.md uses itself! There are a few things you need to know about markdown:
Triple ticks indicate a preformatted block, useful for code. You can change the highlighting by putting the language immediately after the first set of ticks:
"```python
def foo: return bar
"```
(quotes are for example only)
will produce:
def foo:
return bar
Links can be imbedded with this syntax: [link text](https://url/for/link)
Images can be imbedded with the following syntax ![short text description](https://link/to/image)
And you can always use regular old html (as long as not scripts, cdns, etc, stylesheets, and all of that jazz)
More info on markdown can be found here!
To submit your content to chico-acm.com I ask you do the following:
Keep it clean. No NSFW text, images, links, etc.
Make your additions in a fork on your github account, and submit a pull request with ONLY your new files in it. Any pull requests that have changes to files that aren't yours will be promplty rejected
Make your writeup is a single page of markdown, you can include links, images, and code and go on as long as you want
All images are referenced relatively to an image file you include in the /images
directory. like ![hello world image](/images/hello_world.jpg)
Use common sense when posting, I will use my own judgement when determing what to post, but this is for ACM-related materials. Nothing advertising products, personal or political beliefs, or any solicitation will be permitted. Just algorithms. Any discussion can happen in the slack channel, no comments here!


Directory functions
The gslab_make
library provides functions to make modifications to a directory. Functions to remove files and directories, clear directories, and zip/unzip files are included.
- remove_dir(dir_list, quiet=False)
Remove directories in list
dir_list
using system command. Safely removes symbolic links. Directories can be specified with the * shell pattern (see here).- Parameters:
dir_list (str, list) – Directory or list of directories to remove.
quiet (bool, optional) – Suppress printing of directories removed. Defaults to
False
.
- Return type:
None
Example
The following code removes directories
dir1
anddir2
.remove_dir(['dir1', 'dir2'])
The following code removes directories beginning with
dir
.remove_dir(['dir1*'])
- clear_dir(dir_list)
Clears all directories in list
dir_list
using system command. Safely clears symbolic links. Directories can be specified with the * shell pattern (see here).Note
To clear a directory means to remove all contents of a directory. If the directory is nonexistent, the directory is created, unless the directory is specified via shell pattern.
- Parameters:
dir_list (str, list) – Directory or list of directories to clear.
- Return type:
None
Example
The following code clears directories
dir1
anddir2
.clear_dir(['dir1', 'dir2'])
The following code clears directories beginning with
dir
.clear_dir(['dir*'])
- unzip(zip_path, output_dir)
Unzips file
zip_path
to directoryoutput_dir
.- Parameters:
zip_path (str) – Path of file to unzip.
output_dir (str) – Directory to write outputs of unzipped file.
- Return type:
None
- zip_dir(source_dir, zip_dest)
Zips directory
source_dir
to filezip_dest
.- Parameters:
source_dir (str) – Path of directory to zip.
zip_dest (str) – Destination of zip file.
- Return type:
None


| head one | head tow | head three | head four |
|---|---|---|---|
| 1 blll | go home | try agine | try agine tow |
| 2 blll | go home | try agine | try agine tow |
| 3 blll | go home | try agine | try agine tow |
| 4 blll | go home | try agine | try agine tow |
| 5 blll | go home | try agine | try agine tow |
| 6 blll | go home | try agine | try agine tow |
| 7 blll | go home | try agine | try agine tow |
| 8 blll | go home | try agine | try agine tow |
| 9 blll | go home | try agine | try agine tow |
| 10 blll | go home | try agine | try agine tow |


AIO_SUSPEND
Section: Linux Programmer's Manual (3)
Updated: 2012-05-08
Index
Return to Main Contents
NAME
aio_suspend - wait for asynchronous I/O operation or timeout
SYNOPSIS
#include <aio.h>
int aio_suspend(const struct aiocb * const aiocb_list[],
int nitems, const struct timespec *timeout);
Link with -lrt.
DESCRIPTION
The
aio_suspend()
function suspends the calling thread until one of the following occurs:
- *
-
One or more of the asynchronous I/O requests in the list
aiocb_list
has completed.
- *
-
A signal is delivered.
- *
-
timeout
is not NULL and the specified time interval has passed.
(For details of the
timespec
structure, see
nanosleep(2).)
The
nitems
argument specifies the number of items in
aiocb_list.
Each item in the list pointed to by
aiocb_list
must be either NULL (and then is ignored),
or a pointer to a control block on which I/O was initiated using
aio_read(3),
aio_write(3),
or
lio_listio(3).
(See
aio(7)
for a description of the
aiocb
structure.)
If
CLOCK_MONOTONIC
is supported, this clock is used to measure
the timeout interval (see
clock_gettime(3)).
RETURN VALUE
If this function returns after completion of one of the I/O
requests specified in
aiocb_list,
0 is returned.
Otherwise, -1 is returned, and
errno
is set to indicate the error.
ERRORS
- EAGAIN
-
The call timed out before any of the indicated operations
had completed.
- EINTR
-
The call was ended by signal
(possibly the completion signal of one of the operations we were
waiting for); see
signal(7).
- ENOSYS
-
aio_suspend()
is not implemented.
VERSIONS
The
aio_suspend()
function is available since glibc 2.1.
CONFORMING TO
POSIX.1-2001, POSIX.1-2008.
NOTES
One can achieve polling by using a non-NULL
timeout
that specifies a zero time interval.
If one or more of the asynchronous I/O operations specified in
aiocb_list
has already completed at the time of the call to
aio_suspend(),
then the call returns immediately.
To determine which I/O operations have completed
after a successful return from
aio_suspend(),
use
aio_error(3)
to scan the list of
aiocb
structures pointed to by
aiocb_list.
SEE ALSO
aio_cancel(3),
aio_error(3),
aio_fsync(3),
aio_read(3),
aio_return(3),
aio_write(3),
lio_listio(3),
aio(7),
time(7)
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- RETURN VALUE
-
- ERRORS
-
- VERSIONS
-
- CONFORMING TO
-
- NOTES
-
- SEE ALSO
-
This document was created by
man2html,
using the manual pages.
Time: 02:55:18 GMT, September 18, 2014


Docker with Node.js in 5-minutes
Get a Node.js app running inside a Docker container on your local computer.

A short introduction to creating a chatbot using Amazon Lex.
Sharing and testing your voice prototype with InvisionApp.
UI kits, icons, and other resources for prototyping with Sketch.
Sketch vs. Photoshop for designing mobile apps.
Resources and information for choosing the right font.
Using UI Kits to bring your app idea to life.
Using Sketch to create a low fidelity prototype of Instagram.
Creating a prototype for your mobile app idea using Balsamiq Mockups.
Using plain HTML templates in a WordPress site.


If you’re inundated by event planning or meeting and not quite sure where to start, the team from EventPlanners can offer our know-how in event planning and development in California, the United States and beyond. Our event planners have been in the business for nearly a decade, so we know precisely how to aid you in planning and developing your event from start to finish.
We work with clients nationwide committing a 100% effort to their goals
and objectives, then devise and deliver a thoroughly crafted design and
marketing message for the meeting or event. Through exploring objectives,
vendors, locations and event design to construct a creative, practical and
goal-driven proposal to our clients. Timelines, budgets, contracts, permits
and risk assessment are priorities in preplanning and all aspects of logistics
and delivery of event management.
The preparation stage is where the organization and strategic planning
magic happens behind the scenes. Regardless of your industry, we offer the following inclusive meeting and event planning and development services in CA and beyond::
Determine Goals and Objectives
Budgeting
Timeline Management
Risk Management
Theme Development
Event Design
Venue and Hotel Sourcing
Vendor and Venue Contracts
Venu Sourcing
Vendor Contracts
Insurance and Permits
Rentals
Décor Design
Sponsorship Fulfillment
Catering Selection
Photography
Team Building Development
Attendee Gifts
Online Registration
Develop Post-Event Surveys
Combine our CA event planning and development expertise with our wide-ranging event planning services and you can bet on your event being an exceptional success. Contact us today in Sacramento, CA to join in on the excitement, and start planning an event with the EventPlanners event planning team.
EventPlanners offers over 10 years of experience in event planning and development in California, Georgia and beyond


Unit 1: 3/10/15
Building a Webpage
Sometimes you just want to break up your page
and have a little formatting fun!


|
MaoMao Zedong didn't set out to be the world's most lethal dictator. It was never his goal to kill more than 80 million of his own people. But then, sometimes things just happen. And anyway, somebody's gotta be the world's deadliest political leader.Mao had a dream of bringing anarchism to China, and as quickly as possible. But there was a paradox.  And Mao realized that this could only be accomplished by imposing a total dictatorship. So the path to a government-free utopia began with autocracy. Which is precisely what Mao announced after the Communists came to power in 1949. Ever since, China has reaped the rewards of its "people's democratic dictatorship," which has in turn manifested its beneficence toward the citizenry in myriad ways. For instance, there was the Great Leap Forward, a revolutionary policy initiative intended to bootstrap China's fledgling economy and establish it as the world's largest steel and grain exporter. Announced in 1959, Mao's brainchild involved three major endeavors:
No one had ever suggested to farmers that they could double or triple their crop yields by simply packing their seeds two or three times closer together. In practice, however, this new technique failed miserably: the seedlings crowded each other and prevented any of them from receiving adequate sunlight and soil nutrients. But everyone was afraid of Mao's temper, and so no one told him that his idea was worthless. Instead, his underlings reported bumper crops, although the opposite was actually the case. Another of Mao's agricultural tips fared almost as poorly. He decreed that farmers make a concerted effort to hunt down and kill each and every sparrow. The birds were seen as pests, which ate the farmers' crops. In actuality, the sparrows were eating insects which lived on the crops. So the farmers were in fact slaughtering one of their few allies in the battle for pest control. And then there was the steel. Whereas you or I might have taken a hundred thousand idle farmhands and assigned them to work in a few steelmills, Mao's plan was something else entirely. He directed the farmers to stay home and wait for those bumper harvests to arrive. In the interim, they were to construct and operate backyard furnaces for smelting steel. They were given production quotas. In order to meet the quotas, the ignorant peasants resorted to melting down whatever metalstuffs they had lying around: hinges, doorknobs, utensils, tools. It was all converted into useless slag and dutifully turned over to the government. This godawful steel found its way into public works, like bridges and dams. Not surprisingly, many of these poorly-engineered structures collapsed dramatically or were abandoned.
So the Great Leap Forward was an unqualified failure. But nobody wanted to tell Mao that. He believed himself to be infallible, and had a history of making life uncomfortable for anyone who dared question his policies. Which is why his lackeys waited months before telling him about the famine. That's right, famine. As in: "the worst famine in the history of mankind." Some estimates put the total as high as 43 million dead. Over a period of three years, beginning in 1958, China's agricultural production completely bottomed out. The combination of the economic policies of the Great Leap Forward along with an unprecedented drought resulted in disaster for domestic food production. The entire population suffered. People all over China were starving. But hardest hit were the hapless populace of rural Henan province. When the farmers could not meet their production quotas in 1959, the local government declared that the farmers were hiding their harvests and denounced the citizenry as enemies of the people. Military patrols were sent to locate these hidden caches of grain. The soldiers beat families who failed to cough up the food they were assumed to have hidden. When winter arrived, the peasants had nothing to eat but tree bark and grass. The officials saw to it that the families' cooking pots were smashed, to prevent them from cooking grass soup. As an incentive to finally release their hidden stores of food, thousands of peasants were tortured and murdered by the local government. Military forces patrolled train stations and roads to block escape. The people had nothing to eat. They filled their stomachs with whatever they could find: leaves, weeds, leather, straw, feathers, dirt. When they had run out of everything, absolutely everything, they finally resorted to cannibalism. People dug up freshly buried corpses. When somebody died, it was common for family members to hide the fact and keep the body for themselves. The government turned a blind eye to the situation, as people were rarely prosecuted for cannibalism. By 1961, Mao had no choice but to relent. He swallowed his pride and bought grain on the world market. He was forced to disband the communes and return to proven farming methods. The backyard steel efforts were abandoned. In political terms, the failure of the Great Leap Forward was a stunning personal defeat for Mao. And the critics inside his own government began to gather momentum. During the next five years, Mao learns to better manage his public relations. At his direction, the Chairman's "little red book" is published, containing pithy quotations about the nature of struggle and so on. A cult of personality is born. Which brings us to Mao's other major achievement. In August of 1966, Mao launched The Cultural Revolution, an effort to purge the country of all dissident thought (by means of bashing in the brains of all dissident thinkers). Leveraging his newfound popularity among the youth, Mao called for students to abandon their studies and form militia groups, to aid the army in the ouster of undesirables. The youths happily complied. Upwards of 11 million schoolchildren joined the Red Guard and traveled to Beijing to await further orders. Mao's defense minister told the mobs that their mission was destroy every throwback of traditional culture and philosophy. Predictably, the Red Guard began by murdering teachers and school administrators. Then they destroyed the Tibetan monasteries. Foreign diplomats were lynched. Next were artists, scholars, and intellectuals. And whenever Mao denounced one of his former comrades, the Red Guard made it their mission to eradicate the offender. And when they ran out of enemies to torture and kill, the various Red Guard factions turned on each other, resulting in street warfare. These waves of repression and killing continued in spurts for more than three years. Millions of people were killed, and the economy left in shambles. The Cultural Revolution continued unabated until Mao's death from Parkinson's disease in 1976. Five years later, the Chinese government issued a declaration condemning the excesses of the Cultural Revolution. The sweeping "Resolution on Certain Questions in the History of Our Party Since the Founding of the People's Republic of China" included this tersely-worded indictment of the man:
Chief responsibility for the grave "Left" error of the "Cultural Revolution," an error comprehensive in magnitude and protracted in duration, does indeed lie with Comrade Mao Zedong. [...] far from making a correct analysis of many problems, he confused right and wrong and the people with the enemy. [...] Herein lies his tragedy.Oh yes, poor Mao.
timeline
|


public final class Expense extends java.lang.Object implements java.lang.Comparable<Expense>
This is an immutable class.
See Expense.Builder
on how to obtain an instance.
| Modifier and Type | Class and Description |
|---|---|
static class |
Expense.Builder
Use this class to obtain instances of
Expense . |
| Modifier and Type | Field and Description |
|---|---|
static java.util.Set<java.lang.String> |
CATEGORIES |
static java.util.Set<org.joda.money.CurrencyUnit> |
CURRENCIES |
static java.util.Comparator<? super Expense> |
OCCURRED_DESCENDING |
| Modifier and Type | Method and Description |
|---|---|
int |
compareTo(Expense o)
Compares this and another instance of
Expense in the following order:
timeOccured
time
description
money
category
id
This method is consistent with equals(Object) : if this method returns 0 ,
equals(Object) returns true , as defined in Effective Java Item 12. |
Expense.Builder |
edit()
Creates a
Builder instance with the given Expense . |
boolean |
equals(java.lang.Object o) |
org.joda.money.Money |
getAmount() |
java.lang.String |
getCategory() |
java.lang.String |
getDescription() |
Destination |
getDestination() |
java.lang.String |
getId() |
static com.google.gson.InstanceCreator<Expense> |
getInstanceCreator()
You must use this to generate an instance of
Expense for Gson . |
Receipt |
getReceipt() |
long |
getTime() |
long |
getTimeOccurred() |
int |
hashCode() |
boolean |
hasReceipt() |
boolean |
isCompleted() |
public static final java.util.Comparator<? super Expense> OCCURRED_DESCENDING
public static final java.util.Set<java.lang.String> CATEGORIES
public static final java.util.Set<org.joda.money.CurrencyUnit> CURRENCIES
public long getTimeOccurred()
public Destination getDestination()
public static com.google.gson.InstanceCreator<Expense> getInstanceCreator()
Expense
for Gson
.InstanceCreator
for Gson
public Expense.Builder edit()
Builder
instance with the given Expense
.Builder
public int compareTo(Expense o)
Expense
in the following order:
This method is consistent with equals(Object)
: if this method returns 0
,
equals(Object)
returns true
, as defined in Effective Java Item 12.
compareTo
in interface java.lang.Comparable<Expense>
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public org.joda.money.Money getAmount()
public java.lang.String getDescription()
public java.lang.String getCategory()
public long getTime()
public java.lang.String getId()
String
id; never nullpublic boolean isCompleted()
Expense
is marked as completedpublic boolean hasReceipt()
Receipt
public Receipt getReceipt()
Receipt
; may be null


Confused as to how to use an equipment at your gym? Click a picture or upload one from your gallery and find out everything related to it. It's that simple! The product is currently under beta-testing
Created with 💖 by Abhijith Chandran | Report Error


Developer
Mayur Bhangale
T.E. Computer Engineering
We Love Open Source
The source code is available on GitHub.
Licence
The MIT License (MIT)
Copyright (c) 2016 Mayur Bhangale
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
 IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.


Noel J Cruz
Software Engineer | Lieutenent (USCGR)
Toby Management
Full-stack H.R. platform for businesses to manage employee information. Incorporates user login, authentication, sessions, file upload, and database management.
View CodeRum Runner
Web based pirate themed game, built in JavaScript using the Phaser.js game engine. Full-stack app with MySQL database to handle the Leaderboard.
View CodeMemory Game
Pokemon themed memory game. Built using the React JavaScript library. Images render in random order after clicking, and the goal is to select each one only once.
View CodeChefTastic
Front-end app that provides recipe suggestions based on the user's ingredient input. Connects to the Recipe Puppy and Google Maps APIs.
View CodeGiphy Sports
Front-end, sports themed app that connects to the Giphy API to render images based on the button selected. Click the images to activate the gif.
View CodeErrand List
Todo List application, built using the React JavaScript library. Incorporates local storage, add/delete/update, nested items, and linked parent/child completion.
View CodeAbout Me
Hi, I'm Noel. I'm fascinated by the world of computer science and passionate about effective teamwork and learning new skills. My approach to software development involves leveraging my leadership experience to support those around me and solving challenging problems with enthusiasm.


| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| ActionWidget.js | 94.12% | 16/17 | 75% | 3/4 | 75% | 3/4 | 94.12% | 16/17 | |
| ButtonGroupWidget.js | 35.29% | 6/17 | 0% | 0/8 | 0% | 0/3 | 35.29% | 6/17 | |
| ButtonInputWidget.js | 30.77% | 12/39 | 0% | 0/16 | 0% | 0/5 | 30.77% | 12/39 | |
| ButtonOptionWidget.js | 40.91% | 9/22 | 0% | 0/4 | 0% | 0/2 | 40.91% | 9/22 | |
| ButtonSelectWidget.js | 42.86% | 3/7 | 100% | 0/0 | 0% | 0/1 | 42.86% | 3/7 | |
| ButtonWidget.js | 76.81% | 53/69 | 38.46% | 10/26 | 44.44% | 4/9 | 76.81% | 53/69 | |
| CapsuleItemWidget.js | 23.68% | 9/38 | 0% | 0/21 | 0% | 0/5 | 23.68% | 9/38 | |
| CapsuleMultiselectWidget.js | 11.63% | 35/301 | 0% | 0/170 | 0% | 0/36 | 11.63% | 35/301 | |
| CheckboxInputWidget.js | 23.81% | 10/42 | 0% | 0/18 | 0% | 0/9 | 23.81% | 10/42 | |
| CheckboxMultioptionWidget.js | 26.67% | 8/30 | 0% | 0/12 | 0% | 0/6 | 26.67% | 8/30 | |
| CheckboxMultiselectInputWidget.js | 18.42% | 14/76 | 0% | 0/16 | 0% | 0/17 | 18.42% | 14/76 | |
| CheckboxMultiselectWidget.js | 13.04% | 6/46 | 0% | 0/29 | 0% | 0/6 | 13.04% | 6/46 | |
| ComboBoxInputWidget.js | 20.69% | 12/58 | 0% | 0/22 | 0% | 0/12 | 20.69% | 12/58 | |
| DecoratedOptionWidget.js | 100% | 8/8 | 100% | 0/0 | 100% | 1/1 | 100% | 8/8 | |
| DropdownInputWidget.js | 20% | 13/65 | 0% | 0/18 | 0% | 0/14 | 20% | 13/65 | |
| DropdownWidget.js | 27.27% | 12/44 | 0% | 0/21 | 0% | 0/6 | 27.27% | 12/44 | |
| HiddenInputWidget.js | 100% | 7/7 | 100% | 0/0 | 100% | 1/1 | 100% | 7/7 | |
| IconWidget.js | 100% | 12/12 | 50% | 1/2 | 100% | 1/1 | 100% | 12/12 | |
| IndicatorWidget.js | 50% | 5/10 | 0% | 0/2 | 0% | 0/1 | 50% | 5/10 | |
| InputWidget.js | 89.87% | 71/79 | 80.56% | 29/36 | 76.92% | 10/13 | 89.87% | 71/79 | |
| LabelWidget.js | 75% | 12/16 | 50% | 3/6 | 50% | 1/2 | 75% | 12/16 | |
| MenuOptionWidget.js | 100% | 6/6 | 100% | 0/0 | 100% | 1/1 | 100% | 6/6 | |
| MenuSectionOptionWidget.js | 66.67% | 4/6 | 100% | 0/0 | 0% | 0/1 | 66.67% | 4/6 | |
| MenuSelectWidget.js | 37.58% | 59/157 | 20.97% | 26/124 | 23.08% | 3/13 | 37.58% | 59/157 | |
| MenuTagMultiselectWidget.js | 55.7% | 44/79 | 38.46% | 20/52 | 47.37% | 9/19 | 55.7% | 44/79 | |
| MultilineTextInputWidget.js | 15.79% | 12/76 | 0% | 0/38 | 0% | 0/11 | 15.79% | 12/76 | |
| MultioptionWidget.js | 30% | 6/20 | 0% | 0/4 | 0% | 0/3 | 30% | 6/20 | |
| MultiselectWidget.js | 24.14% | 7/29 | 0% | 0/4 | 0% | 0/9 | 24.14% | 7/29 | |
| NumberInputWidget.js | 64% | 80/125 | 40.79% | 31/76 | 60% | 9/15 | 64% | 80/125 | |
| OptionWidget.js | 63.64% | 35/55 | 21.74% | 5/23 | 45.45% | 5/11 | 63.64% | 35/55 | |
| OutlineControlsWidget.js | 10.64% | 5/47 | 0% | 0/26 | 0% | 0/3 | 10.64% | 5/47 | |
| OutlineOptionWidget.js | 33.33% | 14/42 | 0% | 0/6 | 0% | 0/9 | 33.33% | 14/42 | |
| OutlineSelectWidget.js | 42.86% | 3/7 | 100% | 0/0 | 0% | 0/1 | 42.86% | 3/7 | |
| PopupButtonWidget.js | 30.77% | 4/13 | 0% | 0/6 | 0% | 0/2 | 30.77% | 4/13 | |
| PopupTagMultiselectWidget.js | 18.18% | 8/44 | 0% | 0/24 | 0% | 0/6 | 18.18% | 8/44 | |
| PopupWidget.js | 11.06% | 26/235 | 0% | 0/197 | 0% | 0/23 | 11.06% | 26/235 | |
| ProgressBarWidget.js | 25% | 5/20 | 0% | 0/6 | 0% | 0/3 | 25% | 5/20 | |
| RadioInputWidget.js | 33.33% | 10/30 | 0% | 0/12 | 0% | 0/8 | 33.33% | 10/30 | |
| RadioOptionWidget.js | 40% | 8/20 | 0% | 0/2 | 0% | 0/3 | 40% | 8/20 | |
| RadioSelectInputWidget.js | 24.49% | 12/49 | 0% | 0/10 | 0% | 0/12 | 24.49% | 12/49 | |
| RadioSelectWidget.js | 42.86% | 3/7 | 100% | 0/0 | 0% | 0/1 | 42.86% | 3/7 | |
| SearchInputWidget.js | 73.08% | 19/26 | 28.57% | 2/7 | 57.14% | 4/7 | 73.08% | 19/26 | |
| SearchWidget.js | 21.88% | 7/32 | 0% | 0/12 | 0% | 0/6 | 21.88% | 7/32 | |
| SelectFileWidget.js | 13.51% | 25/185 | 0% | 0/98 | 0% | 0/25 | 13.51% | 25/185 | |
| SelectWidget.js | 27.81% | 84/302 | 7.77% | 15/193 | 27.03% | 10/37 | 27.81% | 84/302 | |
| TabOptionWidget.js | 50% | 3/6 | 0% | 0/2 | 0% | 0/1 | 50% | 3/6 | |
| TabSelectWidget.js | 42.86% | 3/7 | 100% | 0/0 | 0% | 0/1 | 42.86% | 3/7 | |
| TagItemWidget.js | 58.33% | 42/72 | 27.27% | 15/55 | 50% | 5/10 | 58.33% | 42/72 | |
| TagMultiselectWidget.js | 60.4% | 151/250 | 38.07% | 67/176 | 54.76% | 23/42 | 60.4% | 151/250 | |
| TextInputWidget.js | 54.63% | 118/216 | 45.26% | 43/95 | 44.74% | 17/38 | 54.63% | 118/216 | |
| ToggleButtonWidget.js | 35.14% | 13/37 | 0% | 0/8 | 0% | 0/4 | 35.14% | 13/37 | |
| ToggleSwitchWidget.js | 23.33% | 7/30 | 0% | 0/11 | 0% | 0/5 | 23.33% | 7/30 | |
| ToggleWidget.js | 23.53% | 4/17 | 0% | 0/4 | 0% | 0/3 | 23.53% | 4/17 |


Collection
Statistics on national projections for the number of pupils in schools by type of school and age group.
Statistics from May 2010 onwards are available on GOV.UK. You can find our archived statistics on the National Archives . Note: the search function is not available on archived content so please use the filters on the left of each page.
Published: 21 March 2013
Updated: 14 July 2016
From: Department for Education


DBIPROF
Section: User Contributed Perl Documentation (1)Updated: 2010-08-20
Index Return to Main Contents
NAME
dbiprof - command-line client for DBI::ProfileDataSYNOPSIS
See a report of the ten queries with the longest total runtime in the profile dump file prof1.out:
dbiprof prof1.out
See the top 10 most frequently run queries in the profile file dbi.prof (the default):
dbiprof --sort count
See the same report with 15 entries:
dbiprof --sort count --number 15
DESCRIPTION
This tool is a command-line client for the DBI::ProfileData. It allows you to analyze the profile data file produced by DBI::ProfileDumper and produce various useful reports.OPTIONS
This program accepts the following options:- --number N
- Produce this many items in the report. Defaults to 10. If set to ``all'' then all results are shown.
- --sort field
-
Sort results by the given field. Sorting by multiple fields isn't currently
supported (patches welcome). The available sort fields are:
-
- total
- Sorts by total time run time across all runs. This is the default sort.
- longest
- Sorts by the longest single run.
- count
- Sorts by total number of runs.
- first
- Sorts by the time taken in the first run.
- shortest
- Sorts by the shortest single run.
- key1
- Sorts by the value of the first element in the Path, which should be numeric. You can also sort by "key2" and "key3".
-
- --reverse
-
Reverses the selected sort. For example, to see a report of the
shortest overall time:
dbiprof --sort total --reverse
- --match keyN=value
-
Consider only items where the specified key matches the given value.
Keys are numbered from 1. For example, let's say you used a
DBI::Profile Path of:
[ DBIprofile_Statement, DBIprofile_Methodname ]
And called dbiprof as in:
dbiprof --match key2=execute
Your report would only show execute queries, leaving out prepares, fetches, etc.
If the value given starts and ends with slashes ("/") then it will be treated as a regular expression. For example, to only include SELECT queries where key1 is the statement:
dbiprof --match key1=/^SELECT/
By default the match expression is matched case-insensitively, but this can be changed with the --case-sensitive option.
- --exclude keyN=value
-
Remove items for where the specified key matches the given value. For
example, to exclude all prepare entries where key2 is the method name:
dbiprof --exclude key2=prepare
Like "--match", If the value given starts and ends with slashes ("/") then it will be treated as a regular expression. For example, to exclude UPDATE queries where key1 is the statement:
dbiprof --match key1=/^UPDATE/
By default the exclude expression is matched case-insensitively, but this can be changed with the --case-sensitive option.
- --case-sensitive
- Using this option causes --match and --exclude to work case-sensitively. Defaults to off.
- --delete
- Sets the "DeleteFiles" option to DBI::ProfileData which causes the files to be deleted after reading. See DBI::ProfileData for more details.
- --dumpnodes
- Print the list of nodes in the form of a perl data structure. Use the "-sort" option if you want the list sorted.
- --version
- Print the dbiprof version number and exit.
AUTHOR
Sam Tregar<EMAIL_ADDRESS>AND LICENSE
Copyright (C) 2002 Sam TregarThis program is free software; you can redistribute it and/or modify it under the same terms as Perl 5 itself.
SEE ALSO
DBI::ProfileDumper, DBI::Profile, DBI.
Index
This document was created by man2html, using the manual pages.
Time: 05:29:02 GMT, December 24, 2015


Better ManRobbie Williams Send someone to love me.
I need to rest in arms.
Keep me safe from harm.
In pouring rain.
Give me endless summer.
Lord I fear the cold.
Feel I'm getting old.
Before my time.
As my soul heals the shame.
I will grow through this pain.
Lord I'm doing all I can.
To be a better man.
-------------------------- Go easy on my conscience.
Cause it's not my fault.
I know I've been taught.
To take the blame.
Rest assured my angels.
Will catch my tears.
Walk me out of here.
I'm in pain.
As my soul heals the shame.
I will grow through this pain.
Lord I'm doing all I can.
To be a better man.
Once U've found that lover.
U're homeward bound.
Love is all around.
Love is all around.
I know some have fallen on stony ground.
But Love is all around.
Send someone to love me.
I need to rest in arms.
Keep me safe from harm.
In pouring rain.Give me endless summer.
Lord I fear the cold.
Feel I'm getting old.
Before my time.
As my soul heals the shame.
I will grow through this pain.
Lord I'm doing all I can.
To be a better man.


The reclues
package mimics the SQL Murder Mystery done by Northwestern’s Knight Lab - their game is set up to use SQL
to solve the mystery, reclues
makes their data available in R
to solve the mystery using R
;-).
A brief of the task at hand is given in their walkthrough. Want to play the SQL version of the game online? Here it is courtesy of Simon Willison!
A crime has taken place and the detective needs your help. The detective gave you the crime scene report, but you somehow lost it. You vaguely remember that the crime was a murder that occurred sometime on Jan.15, 2018 and that it took place in SQL City. All the clues to this mystery are buried in a huge database, and you need to use your R skills to navigate through this vast network of information. Your first step to solving the mystery is to retrieve the corresponding crime scene report from the police department’s database.
Take a look at the cheatsheet
(this Readme
file) to learn some tips on how to do this using the tidyverse tools! From there, you can use your R skills to find the murderer. The crime may be solved with other tools besides tidy tools, please feel free to use the dataset as a learning tool for other packages in R or base R itself if that is your wish. The cheatsheet is for tidyverse tools for now as a start, but since I am learning myself I may expand this to include data.table etc. in future. Have fun!
The goal of reclues is to provide the datasets from the SQL Challenge mentioned above within R, and some cheatsheet
tidyverse commands for getting you on your way to solving the mystery.
The datasets will be available as soon as you install the package. These are the datasets available and the data contained within them.
| Table Name | Fields | Rows |
|---|---|---|
| crime_scene_report | date, type, description, city | 1,228 rows |
| drivers_license | id, age, height, eye_color, hair_color, gender, plate_number, car_make, car_model | 10,007 rows |
| facebook_event_checkin | person_id, event_id, event_name, date | 20,011 rows |
| get_fit_now_check_in | membership_id, check_in_date, check_in_time, check_out_time | 2,703 rows |
| get_fit_now_member | id, person_id, name, membership_start_date, membership_status | 184 rows |
| income | ssn, annual_income | 7,514 rows |
| interview | person_id, transcript | 4,991 rows |
| person | id, name, license_id, address_number, address_street_name, ssn | 10,011 rows |
The raw SQLite database as per @knightlab is also available through the get_db()
function. To use the SQLite DB for your investigation you will need the DBI package.
library(reclues)
library(dplyr)
# basic example code
# see the first 6 observations
head(crime_scene_report)
#> # A tibble: 6 x 4
#> date type description city
#> <int> <chr> <chr> <chr>
#> 1 20180115 robbery A Man Dressed as Spider-Man Is on a Robbery Spr~ NYC
#> 2 20180115 murder Life? Dont talk to me about life.  He took an arrow to t~ SQL Ci~
#> 6 20180115 theft Big Bully stole my lunch money! Chicago
glimpse(crime_scene_report)
#> Observations: 1,228
#> Variables: 4
#> $ date <int> 20180115, 20180115, 20180115, 20180215, 20180215, ...
#> $ type <chr> "robbery", "murder", "murder", "murder", "murder",...
#> $ description <chr> "A Man Dressed as Spider-Man Is on a Robbery Spree...
#> $ city <chr> "NYC", "Albany", "Reno", "SQL City", "SQL City", "...
# Notice that the type field contains info on the
# type of crime which took place?
# Want to see how many reports of each incident type we have?
table(crime_scene_report$type)
#>
#> arson assault blackmail bribery fraud murder robbery
#> 148 145 130 135 130 148 134
#> smuggling theft
#> 117 141
Other great packages to explore your data are DataExplorer
and skimr
.
create_report(dataset)
creates an html report with summary stats, missing data, graphs of categorical data etc.skim(dataset)
creates a nice summary of your dataset separating the different types of data allowing you to look at summary stats by data type.In R dplyr’s select()
works much the same as SELECT
in SQL. You use it to get only specific columns you are interested in.
Let’s say I wanted a closer look at the plate_number
, car_make
and car_model
from the drivers_license table?
# Let's have a look at a few columns of interest from
# the drivers_license table
drivers_license %>%
select(plate_number, car_make, car_model) %>%
head(3) %>%
# formattable func from the formattable package just prints a nice table in the Readme
formattable::formattable()
| plate\_number | car\_make | car\_model |
|---|---|---|
| P24L4U | Acura | MDX |
| XF02T6 | Cadillac | SRX |
| VKY5KR | Scion | xB |
# There are also helper functions to select columns of interest
# starts_with('start_text') will help select columns that begin with start_text
# ends_with('end_text') will help select columns that end with end_text
drivers_license %>%
# Maybe I am only interested in the columns describing the car...
select(starts_with('car')) %>%
head(3) %>%
# formattable just prints a nice table in the Readme
formattable::formattable()
| car\_make | car\_model |
|---|---|
| Acura | MDX |
| Cadillac | SRX |
| Scion | xB |
SQL Equivalent is:
SELECT plate_number, car_make, car_model FROM drivers_license LIMIT 3
Here’s a snippet from the online SQL version:
Let’s say we wanted to see a part of the data - the head() function returns 6 observations and performs a similar functionality as the LIMIT
keyword in SQL.
head()
gives you the first 6 observations of the data in the “table”tail()
gives you the last 6 observations of the data in the “table”You can also specify a number as an argument to the head()
or tail()
functions. For example, head(15)
and tail(10)
will give you the first 15, and last 10 observations respectively.
crime_scene_report %>%
select(description) %>%
head(8) %>%
# formattable func from the formattable package just prints a nice table in the Readme
formattable::formattable()
| description |
|---|
| A Man Dressed as Spider-Man Is on a Robbery Spree |
| Life?   There is no hiding, no escape. In the distance, the beast falters, tethered to the void. The killing blow comes without hesitation, without mercy. |
SQL Equivalent is:
SELECT description FROM crime_scene_report LIMIT 8
Here’s a snippet from the online SQL version:
Maybe I am interested in having a look at all variables associated with a person but I just want to have a look at the data not bring back all 10,011 rows.
| id | name | license\_id | address\_number | address\_street\_name | ssn |
|---|---|---|---|---|---|
| 10000 | Christoper Peteuil | 993845 | 624 | Bankhall Ave | 747714076 |
| 10007 | Kourtney Calderwood | 861794 | 2791 | Gustavus Blvd | 477972044 |
| 10010 | Muoi Cary | 385336 | 741 | Northwestern Dr | 828638512 |
| 10016 | Era Moselle | 431897 | 1987 | Wood Glade St | 614621061 |
SQL Equivalent is:
SELECT * FROM person LIMIT 4;
Here’s a snippet from the online SQL version:
Let’s say we wanted to see the different types of criminal activity the reports identify ….
The type
field in the crime scene reports table seems to contain this info. We will use the distinct
function from dplyr
.
library(magrittr)
# the magrittr package contains the pipe %>% function
# Take the crime scene report data AND THEN
# give me the distinct values for the `type` variable.
crime_scene_report %>%
distinct(type) %>%
formattable::formattable()
| type |
|---|
| robbery |
| murder |
| theft |
| fraud |
| arson |
| bribery |
| assault |
| smuggling |
| blackmail |
SQL Equivalent is:
SELECT DISTINCT(type) FROM crime_scene_report
Here’s a snippet from the online SQL version:
Let’s say we were wondering which city has the highest number of crimes
crime_scene_report %>%
count(city) %>%
arrange(desc(n)) %>%
# filter to limit the print-out
filter(n >= 7) %>%
formattable::formattable()
| city | n |
|---|---|
| Murfreesboro | 9 |
| SQL City | 9 |
| Duluth | 8 |
| Evansville | 8 |
| Jersey City | 8 |
| Toledo | 8 |
| Dallas | 7 |
| Hollywood | 7 |
| Kissimmee | 7 |
| Lancaster | 7 |
| Little Rock | 7 |
| Newark | 7 |
| Portsmouth | 7 |
| Reno | 7 |
| Waterbury | 7 |
| Wilmington | 7 |
Hhmmm looks like SQL City is quite notorious for crime!
SQL Equivalent is:
SELECT city, count(city) AS n
FROM crime_scene_report
GROUP BY city
ORDER BY n DESC
Here’s a snippet from the online SQL version:
Sometimes there are fields like crime_scene_report.description
which are hard to see because the text runs over several lines. Even using View() or printing just the description to the screen sometimes does not help.
Enter pull()
from the dplyr package which extracts a column from the data.
Hint: You will need something like this to read some of the textual description and transcript information.
crime_scene_report %>%
head(8) %>%
pull(description) %>%
# these next 2 lines are just for displaying the result nicely in the Readme
tibble::enframe(name = NULL) %>%
formattable::formattable()
| value |
|---|
| A Man Dressed as Spider-Man Is on a Robbery Spree |
| Life?   There is no hiding, no escape. In the distance, the beast falters, tethered to the void. The killing blow comes without hesitation, without mercy. |
interview %>%
filter(stringr::str_length(transcript) >= 230) %>%
pull(transcript) %>%
# these next 2 lines are just for displaying the result nicely in the Readme
tibble::enframe(name = NULL) %>%
formattable::formattable()
| value |
|---|
| I was hired by a woman with a lot of money. I don’t know her name but I know she’s around 5’5" (65“) or 5’7” (67"). She has red hair and she drives a Tesla Model S. I know that she attended the SQL Symphony Concert 3 times in December 2017. |
Let’s say we’re interested in finding the people that start with a Z. We will use the stringr
package for this. The str_detect()
function can be used in conjunction with regular expressions - here we looking for names that start with (^)
Z.
library(stringr)
person %>%
filter(stringr::str_detect(name, "^Z")) %>%
# Limit to top 5 for the print-out
head(5) %>%
formattable::formattable()
| id | name | license\_id | address\_number | address\_street\_name | ssn |
|---|---|---|---|---|---|
| 10452 | Zachary Angeloro | 702210 | 3713 | Currant Ave | 965949567 |
| 10797 | Zack Pentecost | 150590 | 1839 | Rushwood St | 532875652 |
| 11264 | Zada Laban | 808317 | 1663 | Testa Circle | 983015244 |
| 14182 | Zack Karwoski | 964918 | 1546 | W Middleton Way | 482427372 |
| 14930 | Zella Pietrzyk | 440964 | 3680 | Sandgate Circle | 443068729 |
SQL Equivalent is:
SELECT * FROM person
WHERE name LIKE ‘Z%’
Here’s a snippet from the online SQL version:
dplyr
has joining functions such as inner_join()
, left_join()
etc. for joining one table to another. This mimics the SQL
INNER JOIN
etc.
You will notice that the person
table has a field called id
and the interview
table has a person_id
field. Let’s join these tables and see what we get.
person %>%
# Since the two tables have diff field names for the common field
# we have to specify the `by` argument.
# by = c('field_name_from_left_table' = 'field_name_from_right_table')
inner_join(interview, by = c('id' = 'person_id')) %>%
# Let's say we're only interested in interviews from people who live
# on some Drive abbreviated to 'Dr'
filter(stringr::str_detect(address_street_name, 'Dr')) %>%
# Limit for print-out
head(3) %>%
formattable::formattable()
| id | name | license\_id | address\_number | address\_street\_name | ssn | transcript |
|---|---|---|---|---|---|---|
| 10027 | Antione Godbolt | 439509 | 2431 | Zelham Dr | 491650087 | nearer to watch them, and just as she came up to them she heard one of |
| 10034 | Kyra Buen | 920494 | 1873 | Sleigh Dr | 332497972 | a kind of serpent, thatâs all I can say.â |
| 10039 | Francesco Agundez | 278151 | 736 | Buswell Dr | 861079251 | Beau–ootiful Soo–oop\! |
SELECT * FROM person
INNER JOIN interview ON person.id = interview.person_id
WHERE address_street_name LIKE ‘%Dr%’
LIMIT 3
Here’s a snippet from the online SQL version:
Solution Checker
Head over to ‘The SQL Murder Mystery Page’ OR ‘The SQL Murder Mystery Walkthrough’ to check your solution! At the bottom of both pages there is a Check your solution
section where you enter the name of the individual you suspect committed the crime.
Run the following commands in R once you think you’ve solved the problem. You will need the DBI package and if you’ve been using the datasets to solve the mystery and not the SQLite database (i.e. the individual dataframes of person
, drivers_license
etc.) then uncomment the first line to make a connection to the database, run the queries below after you’ve put in the culprit you suspect, and then disconnect from the database.
conn <- reclues::get_db()
# Replace 'Insert the name of the person you found here' with the name of the individual you found.
DBI::dbExecute(conn, "INSERT INTO solution VALUES (1, 'Insert the name of the person you found here')")
# Did we solve it? You'll either get a "That's not the right person." or a "Congrats,..." message.
DBI::dbGetQuery(conn, "SELECT value FROM solution;")
DBI::dbDisconnect(conn)


{# list of current legislators, either house or senate or something #} {% extends "datapages/realtime_base.html" %} {% load humanize %} {% load staticfiles %} {% block sitecss %} {{ block.super }} {% endblock sitecss %} {% block sitejs %} {% endblock %} {% block body_class %}subscribe_form{% endblock %} {% block pagetitle %}Subscribe to FEC Alerts{% endblock %} {% block rtmain %}
Sunlight’s Real-Time FEC allows users to receive an email alert any time a particular committee you're interested in files a new electronic report with the Federal Election Commission. Notifications are available for all committees that file with the FEC, not just super PACs. (Remember, Senate candidates are not required to file electronically.)
Notifications are provided through Scout, the Sunlight Foundation's search and alert tool covering state and federal legislation, the Congressional Record and federal regulations. Real-time federal campaign finance users may also be interested in our campaign finance collection on Scout.
Contact<EMAIL_ADDRESS>with any questions.


Yorick Quick Reference Cards
A set of quick reference cards for yorick fits onto three double sided US letter sheets. To print them, use refs.pdf.
The original constraint to fit onto six sheets makes the organization of this Quick Reference somewhat illogical; in particular, the division between the "Language" and "Function" sheets is somewhat arbitrary. Note that the "I/O" sheet includes graphics.


|
yLib
V0.0.9 beta
|
This is base-class of the all yXxxValues in yLib. More...
#include <ybasicvalue.hpp>
Classes | |
| struct | __value_container__ |
Public Types | |
| enum | yValueType : uint8_t { NONE_TYPE = 0, INT8_TYPE = 1, UINT8_TYPE = 2, INT16_TYPE, UINT16_TYPE, INT32_TYPE, UINT32_TYPE, INT64_TYPE, UINT64_TYPE, FLOAT_TYPE, DOUBLE_TYPE, BOOL_TYPE, STRING_TYPE, OBJECT_TYPE, ARRAY_TYPE, NULL_TYPE, GROUP_TYPE, POINTER_TYPE } |
Public Member Functions | |
| yValue () noexcept | |
| default constructor More... | |
| yValue (const yValue &value_) noexcept | |
| copy constructor More... | |
| yValue & | operator= (const yValue &value_) noexcept |
| assignment constructor More... | |
| yValue (const yValue &&value_) noexcept | |
| move constructor More... | |
| yValue & | operator= (const yValue &&value_) noexcept |
| assignment constructor More... | |
| virtual | ~yValue () noexcept |
| default destructor More... | |
| yValue (int8_t value_) noexcept | |
| override constructor More... | |
| yValue (uint8_t value_) noexcept | |
| override constructor More... | |
| yValue (int16_t value_) noexcept | |
| override constructor More... | |
| yValue (uint16_t value_) noexcept | |
| override constructor More... | |
| yValue (int32_t value_) noexcept | |
| override constructor More... | |
| yValue (uint32_t value_) noexcept | |
| override constructor More... | |
| yValue (int64_t value_) noexcept | |
| override constructor More... | |
| yValue (uint64_t value_) noexcept | |
| override constructor More... | |
| yValue (bool value_) noexcept | |
| override constructor More... | |
| yValue (float value_) noexcept | |
| override constructor More... | |
| yValue (double value_) noexcept | |
| override constructor More... | |
| yValue (const std::string &value_) noexcept | |
| yValue (yValueType type_, void *value_) noexcept | |
| override constructor More... | |
| virtual | operator int8_t () const |
| convert yValue to int8_t More... | |
| virtual | operator uint8_t () const |
| convert yValue to uint8_t More... | |
| virtual | operator int16_t () const |
| convert yValue to int16_t More... | |
| virtual | operator uint16_t () const |
| convert yValue to uint16_t More... | |
| virtual | operator int32_t () const |
| convert yValue to int32_t More... | |
| virtual | operator uint32_t () const |
| convert yValue to uint32_t More... | |
| virtual | operator int64_t () const |
| convert yValue to int64_t More... | |
| virtual | operator uint64_t () const |
| convert yValue to uint64_t More... | |
| virtual | operator bool () const |
| convert yValue to bool More... | |
| virtual | operator float () const |
| convert yValue to float More... | |
| virtual | operator double () const |
| convert yValue to double More... | |
| virtual | operator std::string () const |
| convert yValue to std::string More... | |
| virtual yValue & | operator= (int8_t value_) |
| convert int8_t to exsited obj of yValue More... | |
| virtual yValue & | operator= (uint8_t value_) |
| convert uint8_t to exsited obj of yValue More... | |
| virtual yValue & | operator= (int16_t value_) |
| convert int16_t to exsited obj of yValue More... | |
| virtual yValue & | operator= (uint16_t value_) |
| convert uint16_t to exsited obj of yValue More... | |
| virtual yValue & | operator= (int32_t value_) |
| convert int32_t to exsited obj of yValue More... | |
| virtual yValue & | operator= (uint32_t value_) |
| convert uint32_t to exsited obj of yValue More... | |
| virtual yValue & | operator= (int64_t value_) |
| convert int64_t to exsited obj of yValue More... | |
| virtual yValue & | operator= (uint64_t value_) |
| convert uint64_t to exsited obj of yValue More... | |
| virtual yValue & | operator= (float value_) |
| convert float to exsited obj of yValue More... | |
| virtual yValue & | operator= (double value_) |
| convert double to exsited obj of yValue More... | |
| virtual yValue & | operator= (bool value_) |
| convert bool to exsited obj of yValue More... | |
| virtual yValue & | operator= (const std::string &value_) |
| virtual yValueType | GetType (void) const |
| get the val-type of obj. More... | |
| virtual void * | GetSpecialValue (yValueType type_) const |
| get the val-type of obj. More... | |
| Public Member Functions inherited from yLib::yObject | |
| yObject () | |
| Default constructor. More... | |
| yObject (std::string object_name_) | |
| Override constructor. More... | |
| yObject (const yObject &object_)=delete | |
| Copy constructor. More... | |
| yObject & | operator= (const yObject &object_)=delete |
| Assignment constructor. More... | |
| yObject (const yObject &&object_)=delete | |
| Move constructor. More... | |
| yObject & | operator= (const yObject &&object_)=delete |
| Assignment constructor. More... | |
| ~yObject () | |
| Default destructor. More... | |
Protected Member Functions | |
| virtual void | CleanAllToDefault (void) |
| set obj of yValue to default. More... | |
Static Protected Member Functions | |
| static void | CopyValueContainer (const yValue &src_, yValue &dst_) |
| copy src_'s value-container to dst_'s value-container More... | |
Protected Attributes | |
| struct yLib::yValue::__value_container__ | value_containter |
| yValueType | cur_value_type |
| the current val-type of yValue More... | |
Additional Inherited Members | |
| Public Attributes inherited from yLib::yObject | |
| std::string | object_name |
| The object-name. More... | |
This is base-class of the all yXxxValues in yLib.
| enum yLib::yValue::yValueType : uint8_t |
|
noexcept |
default constructor
|
noexcept |
copy constructor
| value_ | a exsited obj |
|
noexcept |
move constructor
| value_ | a exsited obj |
|
virtualnoexcept |
default destructor
|
explicitnoexcept |
override constructor
| value_ | the initial val. |
|
explicitnoexcept |
override constructor
| value_ | the initial val. |
|
explicitnoexcept |
override constructor
| value_ | the initial val. |
|
explicitnoexcept |
override constructor
| value_ | the initial val. |
|
explicitnoexcept |
override constructor
| value_ | the initial val. |
|
explicitnoexcept |
override constructor
| value_ | the initial val. |
|
explicitnoexcept |
override constructor
| value_ | the initial val. |
|
explicitnoexcept |
override constructor
| value_ | the initial val. |
|
explicitnoexcept |
override constructor
| value_ | the initial val. |
|
explicitnoexcept |
override constructor
| value_ | the initial val. |
|
explicitnoexcept |
override constructor
| value_ | the initial val. |
|
explicitnoexcept |
|
noexcept |
override constructor
| value_ | the initial val. |
|
protectedvirtual |
copy src_'s value-container to dst_'s value-container
| src_ | the value-container copy from |
| dst_ | the value-container copy to |
|
virtual |
get the val-type of obj.
| type_ | get value of special type |
| other_addr | ok. |
| nullptr | error. |
|
virtual |
get the val-type of obj.
|
virtual |
convert yValue to bool
|
virtual |
convert yValue to double
|
virtual |
convert yValue to float
|
virtual |
convert yValue to int16_t
|
virtual |
convert yValue to int32_t
|
virtual |
convert yValue to int64_t
|
virtual |
convert yValue to int8_t
|
virtual |
convert yValue to std::string
|
virtual |
convert yValue to uint16_t
|
virtual |
convert yValue to uint32_t
|
virtual |
convert yValue to uint64_t
|
virtual |
convert yValue to uint8_t
|
virtual |
convert bool to exsited obj of yValue
Reimplemented in yLib::yJsonValue, and yLib::yConfigValue.
|
virtual |
Reimplemented in yLib::yJsonValue, and yLib::yConfigValue.
|
virtual |
convert double to exsited obj of yValue
Reimplemented in yLib::yJsonValue.
|
virtual |
convert float to exsited obj of yValue
Reimplemented in yLib::yConfigValue.
|
virtual |
|
virtual |
convert int32_t to exsited obj of yValue
Reimplemented in yLib::yConfigValue.
|
virtual |
convert int64_t to exsited obj of yValue
Reimplemented in yLib::yJsonValue.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
convert uint64_t to exsited obj of yValue
Reimplemented in yLib::yJsonValue.
|
virtual |
|
protected |
the current val-type of yValue
|
protected |


HTML5 标签含义之元素周期表
HTML5 星空整理：html5star.com|| Semantic HTML
|
html
|
col
|
table
|
|||||||||||||||
First element of the HTML document. Contains document metadata. head
|
span
|
div
|
<fieldset>Set of form controls grouped by theme. fieldset
|
<form>Form. form
|
Document content. body
|

Heading for the current section. h1
|

Contains elements grouped by theme, for example a chapter or tab box. section
|
<colgroup>Defines a group of columns in a table. colgroup
|
tr
|
||||||||
title
|
Hyperlink. a
|

Text that is preformatted in the HTML code. pre
|
<meter>Control for entering a numeric value in a known range. meter
|
<select>Control for selecting from multiple options. select
|
Content related to surrounding elements that doesn't belong inline, such as a advertising or quotes. aside
|

Heading for the current section. h2
|
Navigation or introductory elements for the current section. header
|

Title of a table. caption
|
Table cell. td
|
||||||||
<meta>Document metadata that can't be represented with other elements. meta
|
rt
|
dfn
|
em
|
i
|
An aside, such as fine print. small
|
Text that has been inserted during document editing. ins
|
<s>Text that is outdated or no longer accurate. s
|
br
|
p
|

Quote from another source. blockquote
|
<legend>Define a name for a fieldset. legend
|
<optgroup>Group of option. optgroup
|
<address>Contact information for the current article. address
|

Heading for the current section. h3
|
Contains a collection of links. nav
|
<menu>Set of commands. menu
|
Table heading. th
|
<base>Specifies URL which non-absolute URLs are relative to. base
|
<rp>Contains semantically meaningless markup for browsers that don't understand ruby annotations. rp
|
Abbreviation or acronym. abbr
|
<time>Time defined in a machine readable format. time
|
Stylistically separated text of equal importance, such as a product name. b
|
Text that is important. strong
|
Text that has been removed during document editing. del
|
Example input (usually keyboard) for a program. kbd
|

Thematic break within a paragraph. hr
|

Ordered list. ol
|
dl
|
Caption for a form control. label
|
<option>Single option within a select control. option
|
<datalist>Define sets of options. datalist
|

Heading for the current section. h4
|

Section of the page content, such as a blog or forum post. article
|
<command>Command the user can perform, such as publishing an article. command
|

Contains rows that hold the table's data. tbody
|
<link>Other resources related to the document. link
|
Contains elements that are part of the document only if scripting is disabled. noscript
|
q
|
<var>Mathematical or programming variable. var
|
sub
|
mark
|
<bdi>Text that is separated from directional formatting of its surroundings. bdi
|
wbr
|
figcaption
|

Unordered list. ul
|

Term which will be described. dt
|
input
|
<output>Contains the results of a calculation. output
|
keygen
|

Heading for the current section. h5
|
Footer of the current section. footer
|
summary
|

Contains rows with table headings. thead
|


Since August 2022, I am an indipendent Lee Kuan Yew Postdoctoral Fellow. This scheme was established in 1991 under the Lee Kuan Yew Endowment Fund.
In 2014, I completed my undergraduate studies in Materials Science and Engineering at the Central South University, China. My final year project was conducted at Monash University (Australia), where I employed density functional theory (DFT) to calculate the mechanical properties of metal organic frameworks. I received my MPhil (2014-2015) and PhD (2015-2018) in Materials Science at the University of Cambridge, where I studied novel halide perovskites under the supervision of Prof. Anthony K. Cheetham FRS and Dr. Paul D. Bristowe. I am interested in using first-principles methods, including DFT, to understand and predict properties of energy materials. When I am not doing science, I love travelling and photography.
Publications
1. kMCpy: A Python Package to Simulate Transport Properties in Solids with Kinetic Monte Carlo, Comput. Mater. Sci., 229, 112394 (2023).
2. On the Active Components in Crystalline Li–Nb–O and Li–Ta–O Coatings from First Principles, Chem. Mater. 35, 5657 (2023).
3. As-grown Miniaturized True Zero-order Waveplates Based on Low-dimensional Ferrocene Crystals, Adv. Mater. (2023).
4. Exclusive Recognition of CO2 from Hydrocarbons by Aluminum Formate with Hydrogen-Confined Pore Cavities, J. Amer. Chem. Soc., 145, 11643 (2023).
5. Noncryogenic Air Separation Using Aluminum Formate Al(HCOO)3 (ALF), J. Amer. Chem. Soc., 145, 9850 (2023).
6. Two-Dimensional Hybrid Dion–Jacobson Germanium Halide Perovskites, Chem. Mater., 35, 3265 (2023).
7. Achieving Near-unity Photoluminescence Quantum Yields in Organic-Inorganic Hybrid Antimony (III) Chlorides with the [SbCl5] Geometry, Angew. Chem., 62, e202216720 (2023).
8. Aluminum formate, Al(HCOO)3: An earth-abundant, scalable, and highly selective material for CO2 capture, Sci. Adv., 8, eade1473 (2022).
9. Hybrid Germanium Bromide Perovskites with Tunable Second Harmonic Generation, Angew. Chem., 61, e202208875 (2022).
10. Fundamental investigations on the sodium-ion transport properties of mixed polyanion solid-state battery electrolytes, Nat. Commun., 13, 4470 (2022).
11. Superionic Conduction in the Plastic Crystal Polymorph of Na4P2S6, ACS Energy Lett., 7, 1403 (2022).
12. Crystal Structure of NaxV2(PO4)3, an Intriguing Phase Spotted in the Na3V2(PO4)3-Na1V2(PO4)3 System, Chem. Mater., 34, 451 (2022).
13. Towards Autonomous High-Throughput Multiscale Modelling of Battery Interfaces, Energy Environ. Sci., 15, 579 (2022).
14. Phase Stability and Sodium-Vacancy Orderings in a NaSICON Electrode, J. Mater. Chem. A, 10, 209 (2022).
15. Unlocking the origin of compositional fluctuations in InGaN light emitting diodes, Phys. Rev. Materials 5, 024605 (2021).
16. Phase Behavior in Rhombohedral NaSiCON Electrolytes and Electrodes, Chem. Mater. 32, 7908 (2020).
17. Understanding the Structural and Electronic Properties of Bismuth Trihalides and Related Compounds, Inorg. Chem., 59, 3377−3386 (2020).
18. Metal-free perovskites for non linear optical materials, Chem. Sci., 10, 8187-8194 (2019).