The following topics are covered:
Area: JCE
Synopsis: The Apple
provider has been introduced, which implements a java.security.KeyStore
that provides access to the Mac OS X Keychain. This is part of RFE JDK-7113349, the JDK port for Mac OS X. See the section The Apple
Provider in Java Cryptography Architecture Oracle Providers Documentation
SPARC T4 specific crypto optimizations in the security area
SPARC T4 contains on-chip(native) cryptographic implementations. These implementations can be accessed by Java applications utilizing either SunPKCS11-Solaris provider (available since Java SE 5.0 release) or OracleUcrypto Provider (new in 7u4 release).
The new OracleUcrypto Service Provider accesses the underlying native(T4) crypto library without going through the PKCS11 layer and is configured by default to be the most preferred provider for Solaris OS.
See Java Cryptography Architecture Oracle Providers Documentation.
Area: Java Cryptography Extension
Synopsis: Public key certificates containing Elliptic Curve Cryptography (ECC) keys are parsed correctly by the SunPKCS11
JCE security provider on Solaris 11. See 7054637.
The JDK 7 release adds the following features:
Elliptic Curve Cryptography (ECC): A new native provider has been added to the Java SE 7 release that provides several ECC-based algorithms (ECDSA/ECDH). For more information, see The SunEC Provider's Supported Algorithms section in the Java Cryptography Architecture Oracle Providers Documentation.
CertPath Algorithm Disabling: Weak cryptographic algorithms can now be disabled. For example, the MD2 digest algorithm is no longer considered secure. The Java SE 7 release provides a mechanism for denying the use of specific algorithms in certification path processing and TLS handshaking. See Appendix D: Disabling Cryptographic Algorithms in Java PKI Programmer's Guide and Disabled Cryptographic Algorithms in Java Secure Socket Extension (JSSE) Reference Guide for more information.
JSSE (SSL/TLS):
TLS 1.1: The SunJSSE provider now supports TLS 1.1 as described in RFC 4346. The most important update is protection against cipher block chaining (CBC) attacks.
TLS 1.2: The SunJSSE provider now supports TLS 1.2 as described in RFC 5246. Among other things, it specifies different internal hashing algorithms, adds new cipher suites, and contains improved flexibility, particularly for negotiation of cryptographic algorithms.
Weak cipher suites deprecated: Per RFC 4346, RFC 5246, and RFC 5469, some cipher suites have been made obsolete and should not be used. These obsolete suites are all disabled by default in SunJSSE
. For details, consult the cipher lists in the section The SunJSSE
Provider in Java Cryptography Architecture Oracle Providers Documentation.
Connection-sensitive trust management: Both trust managers and key managers now have the ability to examine parameters of the TLS connection, specifically the SSLSession
under construction, during the handshake. For example, a trust manager might restrict the types of certificates used based on the list of valid signature algorithms.
HttpsURLConnection
and HostnameVerifier
), such verification can now be optionally performed at the TLS level.TLS renegotiation: Java SE supports RFC 5746, which fixes a renegotiation issue in the TLS protocol. See the section Transport Layer Security (TLS) Renegotiation Issue in Java Secure Socket Extension (JSSE) Reference Guide.
SSLv2Hello disabled by default on the client: In Java SE 7, SSLv2Hello is removed from the default enabled protocol list on the client.
Algorithm disabling: Weak cryptographic algorithms can now be disabled, as previously described.
Server Name Indication (SNI) for JSSE client: The Java SE 7 release supports the Server Name Indication (SNI) extension in the JSSE client. SNI is described in RFC 4366. This enables TLS clients to connect to virtual servers.
Tighter checking of EncryptedPreMasterSecret version numbers: Java SE 7 tightens version number checking during TLS 1.1 and TLS 1.2 handshaking. See Tighter Checking of EncryptedPreMasterSecret Version Numbers in Java Cryptography Architecture Oracle Providers Documentation for more information.
In addition, the following enhancements are added:
Area: Security
Standard/Platform: Java SE 7
Synopsis: Security algorithm requirement have been defined
for Java SE 7 that provide a list of algorithms that all
implementations of Java SE 7 must support. The class summary of
applicable classes (ex: java.security.Signature) has been
updated to include the implementation requirements. Also, all of
the requirements are listed in the
Implementation Requirements section of the Standard Algorithms
document.
RFE: 5001004
Area: API: JSSE
Standard/Platform: Java SE 7
Synopsis: In previous releases, except for the default
algorithm, there was no standard algorithm name for
KeyManagerFactory. In the Java SE 7 release, "PKIX" is
exported as the standard algorithm name for
KeymanagerFactory. The "PKIX" KeyManagerFactory
algorithm is defined as:
A factory for X509ExtendedKeyManagers that manages X.509
certificate-based key pairs for the local side authentication
according to the rules defined by the IETF PKIX working group in
RFC 3280 or its successor. The KeyManagerFactory must
support initialization using the class
javax.net.ssl.KeyStoreBuilderParameters.
RFE: 7022855
Area: API: JSSE
Standard/Platform: Java SE 7
Synopsis: Support for TLS 1.2 has been added to the SunJSSE
provider.
RFE: 6916074
Area: JSSE
Standard/Platform: JDK 7
Synopsis: The TLS renegotiation fix has been implemented.
Please see
TLS/SSLv3 Renegotiation Vulnerability Explained and
Understanding the TLS Renegotiation Attack for more information.
Area: JSSE
Standard/Platform: JDK 7
Synopsis: Support for the Server Name Indication (SNI)
extension has been added to the JSSE client in the SunJSSE
provider.
RFE: 6985179
Area: SASL
Standard/Platform: JDK 7
Synopsis: NTLM is now supported as a SASL mechanism on both
the client and server side. Only the authentication layer is
implemented, and there is no privacy or integrations protection in
communication.
RFE: 6911951
Area: Security
Standard/Platform: JDK 7
Synopsis: The implementation of PKIX has been enhanced to
include an option to reject certificates if the corresponding key
is not strong enough, for example MD2 hash functions or any RA key
with key size less than 1024.
RFE: 6792180
Area: API: JSSE
Standard/Platform: JDK 7
Synopsis: Support for TLS 1.1 has been added to the SunJSSE
provider, and the SSLv2Hello "pseudo protocol" is no longer active
by default in the SunJSSE provider.
RFE: 4873177
Area: JGSS
Standard/Platform: JDK 7
Synopsis: Java now reads a keytab file whenever that keytab
file changes. The file can be empty or nonexistent when the
application that uses the file is started.
Area: JGSS
Standard/Platform: JDK 7
Synopsis: A default configuration file is now provided for
JGSS with default krb5.conf settings for Windows and *nix
systems. This makes deploying a JGSS/krb5 program very easy,
especially for deploying Java applets.
RFE: 6483218,
6785456,
6552334
Area: JCE
Standard/Platform: JDK 7
Synopsis: SunPKCS11 provider now supports Raw RSA
encryption, for example,
Cipher.getInstance("RSA/ECB/NoPadding") calls, when the
underlying PKCS11 library supports CKM-RSA_X_509 mechanism. In
addition, SunPKCS11 provider recognizes "RSA" as an alias for the
"RSA/ECB/PKCS1Padding" transformation when requesting a
Cipher object.
RFE: 6994008
Area: JCE
Standard/Platform: JDK 7
Synopsis: The SunPKCS11 provider now supports ECB, CBC modes
with PKCS5Padding for certain block ciphers. To be more specific,
it supports the following transformations for
Cipher.getInstance(...) calls when the corresponding
PKCS11 mechanism is supported by the underlying PKCS11 library:
DES, DESede, AES, and Blowfish with CBC mode and PKCS5Padding
DES, DESede, AES with ECB mode and PKCS5Padding
DES, DESede, AES with ECB mode and NoPadding
RFE: 4898461
Area: JCE
Standard/Platform: JDK 7
Synopsis: The SunPKCS11 provider now supports AES encryption
with Counter mode (CTR), (for example,
Cipher.getInstance("AES/CTR/NoPadding") calls) when the
underlying PKCS11 library supports CKM_AES_CTR mechanism.
RFE: 6604496
Area: JCE
Standard/Platform: JDK 7
Synopsis: Given that the relevant Solaris bug (i.e. 6306708
"CKM_SSL3_KEY_AND_MAC_DERIVE returns incorrect cipher keys for
exportable ciphersuites") has been addressed in the Solaris 10
update 5 release, the SunPKCS11 provider no longer disables the
following two mechanisms by default:
CKM_SSL3_KEY_AND_MAC_DERIVE
CKM_TLS_KEY_AND_MAC_DERIVE
RFE: 7036252


Bits and pieces of code,projects,and tutorials.
Go There
This paper proves I can do the thing.
Sorry Not Looking
The over engineered Minecraft server. It's not creepy, it's cool.
PSSSSssSS
PAC members looking for 2016 CST data can go here.
Go CST


jsnbt provides custom routes and a "custom" entity for the code nodes.
The custom routes are defined in the module's config file, and can be selected for a custom node as their custom routing process. An appropriate function should be placed in the root of the module's index file passing the request context as a parameter.
So, you dont fancy the jsnbt routers? or you need something more specific to your needs? develop it!


The MARS web page is maintained at http://www.cs.missouristate.edu/MARS/ and will contain updated releases, bug lists, etc.
For bug reporting and general comments, please send email to Dr. Pete Sanderson at<EMAIL_ADDRESS>with "MARS" in the subject line. Please include sufficient information to recreate the problem, and assembly programs if appropriate.
For bugs with the Dark Side of MARS theme, and general comments about it, please send email to Doga Oruc at<EMAIL_ADDRESS>with "Dark Side of MARS" in the subject line. Please include sufficient information to recreate the problem, and provide screenshots if, at all, possible.


Sous-Vide Controller Part 1 – Design
Sous-vide cooking involves sealing food inside a bag (generally in a vacuum) and immersing the bag in a water bath at a carefully controlled temperature. Generally the water bath is kept at a fairly low temeperature – around 60 °C. By using such a low temperature it is possible to cook the item to an even temperature throughout, so a steak could be cooked to medium all the way through and then seared on the outside to give a result like the picture shown at the top of this page.
Currently, commercial sous-vide cookers are very expensive. Prices have come down over the past few years but the cheapest model on Amazon is still £126, somewhat more than I was willing to pay. So I decided to make my own version. While open source controllers do exist, like the ember kit, they are not easily available and I’d prefer to build my own anyway. The following roughly documents the design process of my controller.
Types of sous-vide cooker
There are currently two common methods of creating a sous-vide bath: immersion heaters and those with an element outside of the water container. Immersion heaters are generally portable and can be attached to any container which is a huge advantage if you ever need to cook a large item. Kickstarter has recently had two sous-vide controllers based on both methods, the Nomiku, an immersion heater and the Codlo, which allows any heating appliance like a rice cooker to be used as a water bath.
I eventually decided to build something like the Codlo, since it is far simpler to build and doesn’t really require the water in the bath to be circulated which would require something like an aquarium pump.
Box and Interface
Having a plug-to-plug case something like the Codlo’s would be perfect however there’s nothing available like that and while it would be possible to make a box with both plug and socket, I decided in the end to just use a large ABS box from Maplin (the MB4 enclosure) and mount a socket on the top. The box is large enough to mount a mains socket on one side and an LCD and interface buttons on the other. While I was working out the dimensions I drew up a quick mock-up:
The LCD can be used to display the temperature and current state of the cooker. The only input is a rotary encoder, this allows the desired temperature to be adjusted easily and also includes a push-button. I’ve also included a timer function, this allows the controller to turn off the heater when the timer finishes and a buzzer will sound to let the user know when the food is done.
Temperature Sensor
One of the main objectives of any sous-vide controller is accurate temperature control and as such the choice of temperature sensor is key. I’ll quickly go over the four options.
First, and probably most popular is the K-type thermocouple. Thermocouples make use of the Seebeck effect to generate a voltage proportional to the temperature of their junctions, this voltage is normally in the mV range and must be amplified before digitizing. K-type probes are widely available and are not that hard to implement well however their inherent accuracy is not particularly high, it’s often quoted as ±1 °C and drift can become a problem.
RTDs (Resistance temperature detectors) – These devices generally have much higher accuracy than thermocouples, up to 0.01 °C apparently, however they are more expensive and require slightly more complex electronics.
Thermistors – Thermistors are essentially similar to RTDs in that their resistance varies with temperature. The difference is that the range of resistance over a small temperature range is much higher and accuracy can again be as high as 0.01 °C. Thermistors come in a number of varieties, differentiated by their resistance at 25 °C and their accuracy. One problem is that the temperature for a given resistance is not trivial to calculate, and some datasheets don’t actually list the required coefficients for accurate calculation.
Digital Temperature Sensors – Popularised by Maxim, these parts output a calibrated temperature accurate to within 0.5 °C on a one-wire bus. They are extremely easy to interface to and have high enough accuracy for most applications.
After some thought I eventually decided to use both a thermistor and a digital temperature sensor in my design, I wanted high accuracy and hence a thermistor seemed to be the best option (although I may change this to an RTD in the next prototype). The most common method for reading temperatures from a thermistor is to use a simple potential divider but this has fundamental issues and does not give very high accuracy. I used a slightly less common method of interfacing with the thermistor to achieve slightly higher accuracy. This is of course probably unnecessary. Although websites often state that super accuracy is the most important part of sous-vide, I can’t really see there being any problem with using a sensor accurate to 1 °C. That’s why I also included a digital sensor in my design, to make getting the basic control algorithms up and running a bit easier, and also just in case my thermistor circuit didn’t work (I didn’t have a chance to test it).
Circuit and PCB
I recently came across a free PCB prototyping service from Spirit Circuits – their ‘GoNaked’ option. This allows you to produce three prototype PCBs with no soldermask or silkscreen for free before you buy a board from them. It sounded like a fantastic service so I put together a PCB for this design. I ended up using a majority of surface mount parts just to see how well I could solder them without soldermask.
The design revolves around a control loop to keep the temperature constant in the water bath, this will probably involve a PID loop. The temperature of the water is sensed by either of the two sensors and the power to the appliance is modulated through an SSR. The schematic is shown below:
The circuit is based around an ATmega168, this means its compatible with the Arduino bootloader and makes the software a little easier. The schematic is fairly simple. Power comes in from a transformer and is rectified and regulated, all the AVR circuitry is standard. The only unusual part is the thermistor sense circuit. I based the design on an application note from TI – SLOA052. Essentially, there are two problems with the standard method of using a potential divider to measure a thermistor’s voltage drop: non-linearities are introduced and the thermistor may be subject to self heating. By using a current source to pass a very small current through the thermistor and measuring the resulting voltage, both problems can be avoided. The voltage across the thermistor is then amplified and offset to move it into the range of an ADC.
I ended up using an LTC2452 for the ADC. This is almost certainly overkill, and a 12-bit ADC could be used instead but the LTC2452 met my requirements and was a reasonable price. There are actually a couple of components which could be changed for cheaper / lower performance parts, the op-amp is likely better than it needs to be and the current source could be implemented discretely to lower the cost. Most of the parts were what I had on hand from previous sample orders.
The PCB design was more rushed than I would have liked and as such I’ve already noticed a few mistakes, but I’ll detail those after I’ve built it up and tested it. I designed the board to mount directly under the lid of the box below the LCD. The rotary encoder is mounted on the top of the board and emerges through the lid. All the sensors are connected through headers since I’ll eventually be using sockets to connect them in to the box.
I used Mayhew Lab’s webGerber service to generate a render of the board with no soldermask or silkscreen.
All the files for the design are available on my github, feel free to share / modify / use them as you like.


Agile Driven Development Of Your Brands.
Award Nominating Designs
Our designs have been nominated for awards and noted for one-of-a kind designs.
Our designs have been nominated for awards and noted for one-of-a kind designs.
Design Team
Our brilliant Design Team work seamlessly to create stunning designs.
App Development
West & Zedd's App Development Team creates responsive user friendly apps to reach your audience on any device.
About West & Zedd Digital
People-built organization designed for our partners to thrive in a competitive landscape and reach their goals.
At West & Zedd we are a remote People-First organization that helps our partners create an amazing brand that illustrates their story, reach their goals and their intended audience.
How Can We Assist You?
Services West & Zedd Offers
West & Zedd offers Design, Strategy, Marketing, QA, App & Web Development Teams
Strategy
Our Strategy Team is made of experts dedicated to helping our partners create successful strategies to reach goals.
Web Development
Our Web Development experts are craftsmen and women dedicated to bring incredible websites to life
Marketing
West & Zedd Marketing Team is made of highly skilled professionals that help businesses reach their intended audiences
Mobile Development
Our Mobile Development experts are professionals able to take an idea into a incredible app that illustrates your story
Quality Assurance
West & Zedd Digital Quality Assurance experts insures every design is smooth, responsive and user friendly.
Let's Talk About the Rapid Growth of Our Digital Agency
West & Zedd Digital Growth
We have grown rapidly in the past 3 years.
199
Satisfied Partners
575
Days In Operations
49
Completed Brands
55
Awards Nominated


via Properties / yaml
io.ebean.Database can automatically be configured via properties in application.yaml
,
application.properties
etc.
The default database name is db
so the minimal configuration looks like:
H2 - In memory
## H2 setup - In memory
datasource:
db:
username: sa
password: sa
url: jdbc:h2:mem:myapp
Postgres
datasource:
db:
username: my_app
password: my_password
url: jdbc:postgresql://localhost:5432/my_app
ebean.migration.run
Generally we want Ebean to run migrations on startup and we have ebean.migration.run
set to true
.
Postgres - ebean.dbSchema
Generally for Postgres we set ebean.dbSchema
to match the database username when
we want database tables etc to be in that named schema rather than the public
schema.
Example Postgres typical configuration
ebean:
dbSchema: my_app # use this schema rather than public
migration:
run: true # run database migrations on startup
datasource:
db:
username: my_app
password: ${myPassword}
url: jdbc:postgresql://${myDatabaseHost}:5432/my_app
## Expects system properties to be set for:
## myPassword and myDatabaseHost
Multiple databases
When using multiple databases we set multiple datasource configurations.
The non-default databases have a name. For example, if we have a second
database called "other"
we configure a second datasource
like below:
ebean:
dbSchema: my_app # use this schema rather than public
migration:
run: true # run database migrations on startup
datasource:
db:
username: my_app
password: ${myPassword2}
url: jdbc:postgresql://${myDatabaseHost2}:5432/my_app
other:
username: other_username
password: ${otherPassword}
url: jdbc:postgresql://${otherDatabaseHost}:5432/other_dbname
We can obtain the "other" database instance by it's name:
// obtain "other" database by its name
Database otherDatabase = DB.byName("other");
// obtain "other" database by its name
val otherDatabase = DB.byName("other");
Goto docs / multi-database for more details on using multiple databases
with @DbName
, Model and Finder.
Programmatically creating database
We can programmatically create a Database instance using DatabaseFactory and DatabaseConfig.
// datasource
DataSourceConfig dataSourceConfig = new DataSourceConfig();
dataSourceConfig.setUsername("sa");
dataSourceConfig.setPassword("");
dataSourceConfig.setUrl("jdbc:h2:mem:myapp;");
// configuration ...
DatabaseConfig config = new DatabaseConfig();
config.setDataSourceConfig(dataSourceConfig);
...
// create database instance
Database database = DatabaseFactory.create(config);
// datasource
val dataSourceConfig = new DataSourceConfig()
dataSourceConfig.setUsername("sa")
dataSourceConfig.setPassword("")
dataSourceConfig.setUrl("jdbc:h2:mem:myapp;")
// configuration ...
val config = new DatabaseConfig();
config.setDataSourceConfig(dataSourceConfig)
...
// create database instance
val database = DatabaseFactory.create(config)
For Testing with ddl.generation
We can set ddl.generation and ddl.run true for simple testing against in memory H2 or a provided database instance (especially if our application is read only).
ebean:
ddl:
generate: true
run: true
# initSql: test-init.sql
# seedSql: test-seed.sql
datasource:
db:
username: sa
password: sa
url: jdbc:h2:mem:myapp
For Testing with ebean-test
ebean-test
was built to help with testing against the target database
(Postgres, MySql, MariaDB, SQLServer, Oracle ...).
Docker especially can be used to programmatically setup and initialise the database for testing
purposes.
Testing against the full featured target database(s) comes with a number of advantages in terms of testing and coverage that we talk about at docs / testing.
ebean-test reads the configuration in
src/test/resources/application-test.yaml
.
See the example below:
ebean:
test:
platform: postgres # h2, postgres, mysql, ...
ddlMode: dropCreate # none | dropCreate | migration
dbName: my_app
ebean-test hooks into the Ebean startup and configures the datasource based on
ebean.test.platform
and configures the DDL generation and execution
based on ebean.test.ddlMode
(plus start, setup and wait for docker
container(s) as necessary when using docker test containers).
Using ebean-test is the recommended approach
for testing as it puts us in a position where we can easily change the database used for testing.
For example, changing from testing against H2 to testing against Postgres docker container
is as simple as changing ebean.test.platform
to postgres
.
Refer to docs / testing for more details.


A.C.E. Beta
Attacker Chrome Extension by
ProCheckUp
Javascript:
console.log('Test');
Run Javascript in tabs


Lesson 1 Lesson 2 Lesson 3 Lesson 4 Lesson 5 Lesson 6 Lesson 7 Lesson 8 Lesson 9 Lesson 10 Lesson 11 Lesson 12 Lesson 13 Lesson 14 Lesson 15 Lesson 16
Practice 3 Practice 6 Practice 7 Practice 7_1


N-gram json index structure
N-gram
To work without any word delimiters is a remarkable advantage of the N-gram method. Because Japanese language does not put delimiters between words, it is hard to extract "words" by machine as a minimum unit of index key.
This library is optimized to the Bigram (size 2), though the size can be changed. By default, indexes of size 2 and 1 are generated, so a text "cat" will be indexed by "ca", "at", "c", "a" and "t".
This library uses json files to store indexes. Everything is text and easy to handle by any script languages, including JavaScript.
Index file name
To perfome fast reading, the library uses the hierarchy file system to place indexes.
Each index is encoded as an ascii string of unicode numbers.
For example, a key "ca" will be "00630061".
Here, "c" is U+0063
and "a" is U+0061
.
This makes all unicode characters, even the control characters, safe to be indexed.
Though files can also be placed in a single directory flatly, they are placed in a tree of directories by default. Too many files in a single directory will slow down the system. The above index file will be "./00/63/00/61.json".
Index file format
Array of array as json. The inner array has two elements, namely, an identification and a position. The identification is a unique id for a single file, and it may be a file path. The position is a location of the key string within a file. All pairs that found to have the key string is listed as the outer array.
[ ["a/b.txt", 129], ["c/d/e.txt", 148] ]
For example, when the json file for the key "ca" is as above, it means: In "a/b.txt" at position 129, "ca" is found. In "c/d/e.txt" at position 148, "ca" is found. And the position means the occurrence position from the beginning of text with 0 for the first character .
Example
The online demo page shows all index files generated for short example contents.


Recipient
Some Company
c/o Some Guy
| Invoice # | 101138 |
|---|---|
| Date | OCTOBER 5, 2017 |
| Amount Due | ₹00.00 |
| Item | Description | Rate | Quantity | Tax | Total Tax | Discount | Total Discount | Price |
|---|---|---|---|---|---|---|---|---|
| -Front End Consultation | Experience Review | ₹000.00 | 0 | 0 | 0 | 0 | 0 | 000.00 |
| Total | ₹000.00 |
|---|---|
| Amount Paid | ₹0.00 |
| Balance Due | ₹ 000.00 |


Open Forum Radio Button
Select this radio button if you want to create an open CIX forum, that is one that can be freely joined by anyone on CIX at any time.


Something about the price of haddock in the open market economy and it's causal links to damage of oceanic habitat.
Show modal


I've spent 10 years building a successful career as a Product Manager in the corporate software world. In the same span of time, I’ve found creative outlets to hone my attention to detail, tell stories in new ways, and find the right people at the right time.
This path has helped me become tirelessly curious. If you’re interested in collaborating with me, please get in touch.


Fashionable Consumption
Written and Directed by Titobi
Produced by Christopher Evans and Regé-Jean Page
Starring: Rihanna, Leonardo DiCaprio, and Christopher Evans
Finding love during COVID-19 was hard...learning that she was patient zero was harder. Though they were socially distant, their love grew emotionally close. Rihanna as Molly, a woman torn between two loves: one she has never met outside of Zoom, and the other her best friend.
- 44 minutes
- B & W
- 16:9
- English
- Romantic Comedy
Meet the Filmmakers
Christopher Evans
Co-Producer
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Titobi
Writer/Director
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud
exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure
dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit
anim id est laborum
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum
dolore eu fugiat nulla pariatur.Excepteur sint occaecat cupidatat non proident, sunt in
culpa qui officia deserunt mollit anim id est laborum
Regé-Jean Page
Co-Producer
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Fashionable Consumption
Some Fun Question to Ask Students - Responses Below
I had a great time making this film and learned so much!
I had a great time making this film and learned so much!
I had a great time making this film and learned so much!
I had a great time making this film and learned so much!
I had a great time making this film and learned so much!
I had a great time making this film and learned so much!
I had a great time making this film and learned so much!
I had a great time making this film and learned so much!


Portfolio Project
Keyunja Parker
Click here to see BootStrap Layout:
Visit
Click here to see Liquid Layout:
Visit
Click here to see Fixed-Width Layout:
Visit
Name:
Link:
GitHub Repo:
CodePen:
CodePen UserName
(opens in a new window)
W3C:
W3C Schools
(opens in a new window)


From:The Desk Of Mr.Terry Larson Banco Santander (Guernsey)Ltd Channel Island UK. Dear Friend, I Am Mr. Terry Larson, Branch Manager Of Banco Santander Bank.I Would Like To Know If This Proposal Will Be Worthwhile For Your Acceptance. I Have A Customer Who Is An Investor, Crude Oil Merchant And Government Contractor That Was A Victim Of Sosoliso Plane Crash Of 10th December 2005 In Port Harcourt, Mr.Whyte V. I.Leaving A Closing Balance Of £20m (Twenty million Pounds) In One Of His Domicilliary Account That Is Been Managed By Me As The Customer's Account Officer. Base On My Security Report,These Funds Can Be Claimed Without Any Hitches As No One Is Aware Of The Funds And Its Closing Balance Except Me And The Customer (Now Deceased) Therefore, I will Present You As The Next Of Kin And We Will Work Out The Modalities For The Claiming Of The Funds In Accordance With The Law. If You Are Interested, Please Call Me To Discuss In Further Details. Our Sharing Ratio Will Be 60:40.Kindly give me your private phones numbers for easy communication.This is MY Private Email<EMAIL_ADDRESS>Thank You, Sincerely, Mr.Terry Larson +44<PHONE_NUMBER>


In POSIX sh, $(<file) is undefined.
(or "In dash, ... is not supported." when using dash
)
content=$(<file)
content=$(cat file)
In bash and ksh, $(< file)
will expand to the full contents of the file.
However, in dash and POSIX sh, it will instead expand to nothing. This is because it's not recognized as special, and simply results in the command output of < file
, a no-op command that opens the file and exits without reading it.
None.


ABOUT US
Gerryeats is a cloud kitchen based foodtech startup focused on
building a brand around daily comfort meals. It is a platform where
consumers get daily affordable meals that they can eat for months.
Gerryeats currently serves breakfast, lunch and dinner on a pre
order basis where they can order lunch until 9am and dinner until
5pm of the day of delivery.  The delivery person then delivers the food in the
chosen slot Customers can choose between the recommended meals and
can even customise their own meal choosing from 2,3 or 4 compartment
meal options.
CONTACT INFORMATION
Email<EMAIL_ADDRESS>Address : Shivalik - 303, Godrej Prakriti, 187F/1 B.T. Road, Sukchar
Girja, Sodepur, Kolkata - 700115
Phone Number:<PHONE_NUMBER>
TERMS OF SERVICE
OVERVIEW
This website is operated by gerryeats Throughout the site, the terms
“we”, “us” and “our” refer to gerryeats. gerryeats offers this
website, including all information, tools and services available
from this site to you, the user, conditioned upon your acceptance of
all terms, conditions, policies and notices stated here. By visiting
our site and/ or purchasing something from us, you engage in our
“Service” and agree to be bound by the following terms and
conditions (“Terms of Service”, “Terms”), including those additional
terms and conditions and policies referenced herein and/or available
by hyperlink. These Terms of Service apply to all users of the site,
including without limitation users who are browsers, vendors,
customers, merchants, and/ or contributors of content. Please read
these Terms of Service carefully before accessing or using our
website. By accessing or using any part of the site, you agree to be
bound by these Terms of Service. If you do not agree to all the
terms and conditions of this agreement, then you may not access the
website or use any services. If these Terms of Service are
considered an offer, acceptance is expressly limited to these Terms
of Service. Any new features or tools which are added to the current
store shall also be subject to the Terms of Service. You can review
the most current version of the Terms of Service at any time on this
page. We reserve the right to update, change or replace any part of
these Terms of Service by posting updates and/or changes to our
website. It is your responsibility to check this page periodically
for changes. Your continued use of or access to the website
following the posting of any changes constitutes acceptance of those
changes.
SECTION 1 - ONLINE STORE TERMS
By agreeing to these Terms of Service, you represent that you are at
least the age of majority in your state or province of residence, or
that you are the age of majority in your state or province of
residence and you have given us your consent to allow any of your
minor dependents to use this site. You may not use our products for
any illegal or unauthorized purpose nor may you, in the use of the
Service, violate any laws in your jurisdiction (including but not
limited to copyright laws). You must not transmit any worms or
viruses or any code of a destructive nature. A breach or violation
of any of the Terms will result in an immediate termination of your
Services.
SECTION 2 - GENERAL CONDITIONS
We reserve the right to refuse service to anyone for any reason at
any time. You understand that your content (not including credit
card information), may be transferred unencrypted and involve (a)
transmissions over various networks; and (b) changes to conform and
adapt to technical requirements of connecting networks or devices.
Credit card information is always encrypted during transfer over
networks. You agree not to reproduce, duplicate, copy, sell, resell
or exploit any portion of the Service, use of the Service, or access
to the Service or any contact on the website through which the
service is provided, without express written permission by us. The
headings used in this agreement are included for convenience only
and will not limit or otherwise affect these Terms.
SECTION 3 - ACCURACY, COMPLETENESS AND TIMELINESS OF INFORMATION
We are not responsible if information made available on this site is
not accurate, complete or current. The material on this site is
provided for general information only and should not be relied upon
or used as the sole basis for making decisions without consulting
primary, more accurate, more complete or more timely sources of
information. Any reliance on the material on this site is at your
own risk. This site may contain certain historical information.
Historical information, necessarily, is not current and is provided
for your reference only. We reserve the right to modify the contents
of this site at any time, but we have no obligation to update any
information on our site. You agree that it is your responsibility to
monitor changes to our site.
SECTION 4 - MODIFICATIONS TO THE SERVICE AND PRICES
Prices for our products are subject to change without notice. We
reserve the right at any time to modify or discontinue the Service
(or any part or content thereof) without notice at any time. We
shall not be liable to you or to any third-party for any
modification, price change, suspension or discontinuance of the
Service.
SECTION 5 - PRODUCTS OR SERVICES
Certain products or services may be available exclusively online
through the website. These products or services may have limited
quantities and are subject to return or exchange only according to
our Return Policy. We have made every effort to display as
accurately as possible the colors and images of our products that
appear at the store. We cannot guarantee that your computer
monitor's display of any color will be accurate. We reserve the
right, but are not obligated, to limit the sales of our products or
Services to any person, geographic region or jurisdiction. We may
exercise this right on a case-by-case basis. We reserve the right to
limit the quantities of any products or services that we offer. All
descriptions of products or product pricing are subject to change at
anytime without notice, at the sole discretion of us. We reserve the
right to discontinue any product at any time. Any offer for any
product or service made on this site is void where prohibited. We do
not warrant that the quality of any products, services, information,
or other material purchased or obtained by you will meet your
expectations, or that any errors in the Service will be corrected.
SECTION 6 - ACCURACY OF BILLING AND ACCOUNT INFORMATION
We reserve the right to refuse any order you place with us. We may,
in our sole discretion, limit or cancel quantities purchased per
person, per household or per order. These restrictions may include
orders placed by or under the same customer account, the same credit
card, and/or orders that use the same billing and/or shipping
address. In the event that we make a change to or cancel an order,
we may attempt to notify you by contacting the e-mail and/or billing
address/phone number provided at the time the order was made. We
reserve the right to limit or prohibit orders that, in our sole
judgment, appear to be placed by dealers, resellers or distributors.
You agree to provide current, complete and accurate purchase and
account information for all purchases made at our store. You agree
to promptly update your account and other information, including
your email address and credit card numbers and expiration dates, so
that we can complete your transactions and contact you as needed.
For more detail, please review our Returns Policy.
SECTION 7 - OPTIONAL TOOLS
We may provide you with access to third-party tools over which we
neither monitor nor have any control nor input. You acknowledge and
agree that we provide access to such tools ”as is” and “as
available” without any warranties, representations or conditions of
any kind and without any endorsement. We shall have no liability
whatsoever arising from or relating to your use of optional
third-party tools. Any use by you of optional tools offered through
the site is entirely at your own risk and discretion and you should
ensure that you are familiar with and approve of the terms on which
tools are provided by the relevant third-party provider(s). We may
also, in the future, offer new services and/or features through the
website (including, the release of new tools and resources). Such
new features and/or services shall also be subject to these Terms of
Service.
SECTION 8 - THIRD-PARTY LINKS
Certain content, products and services available via our Service may
include materials from third-parties. Third-party links on this site
may direct you to third-party websites that are not affiliated with
us. We are not responsible for examining or evaluating the content
or accuracy and we do not warrant and will not have any liability or
responsibility for any third-party materials or websites, or for any
other materials, products, or services of third-parties. We are not
liable for any harm or damages related to the purchase or use of
goods, services, resources, content, or any other transactions made
in connection with any third-party websites. Please review carefully
the third-party's policies and practices and make sure you
understand them before you engage in any transaction. Complaints,
claims, concerns, or questions regarding third-party products should
be directed to the third-party.
SECTION 9 - USER COMMENTS, FEEDBACK AND OTHER SUBMISSIONS
If, at our request, you send certain specific submissions (for
example contest entries) or without a request from us you send
creative ideas, suggestions, proposals, plans, or other materials,
whether online, by email, by postal mail, or otherwise
(collectively, 'comments'), you agree that we may, at any time,
without restriction, edit, copy, publish, distribute, translate and
otherwise use in any medium any comments that you forward to us. We
are and shall be under no obligation (1) to maintain any comments in
confidence; (2) to pay compensation for any comments; or (3) to
respond to any comments. We may, but have no obligation to, monitor,
edit or remove content that we determine in our sole discretion are
unlawful, offensive, threatening, libelous, defamatory,
pornographic, obscene or otherwise objectionable or violates any
party’s intellectual property or these Terms of Service. You agree
that your comments will not violate any right of any third-party,
including copyright, trademark, privacy, personality or other
personal or proprietary right. You further agree that your comments
will not contain libelous or otherwise unlawful, abusive or obscene
material, or contain any computer virus or other malware that could
in any way affect the operation of the Service or any related
website. You may not use a false e-mail address, pretend to be
someone other than yourself, or otherwise mislead us or
third-parties as to the origin of any comments. You are solely
responsible for any comments you make and their accuracy. We take no
responsibility and assume no liability for any comments posted by
you or any third-party.
SECTION 10 - PERSONAL INFORMATION
Your submission of personal information through the store is
governed by our Privacy Policy.
SECTION 11 - ERRORS, INACCURACIES AND OMISSIONS
Occasionally there may be information on our site or in the Service
that contains typographical errors, inaccuracies or omissions that
may relate to product descriptions, pricing, promotions, offers,
product shipping charges, transit times and availability. We reserve
the right to correct any errors, inaccuracies or omissions, and to
change or update information or cancel orders if any information in
the Service or on any related website is inaccurate at any time
without prior notice (including after you have submitted your
order). We undertake no obligation to update, amend or clarify
information in the Service or on any related website, including
without limitation, pricing information, except as required by law.
No specified update or refresh date applied in the Service or on any
related website, should be taken to indicate that all information in
the Service or on any related website has been modified or updated.
SECTION 12 - PROHIBITED USES
In addition to other prohibitions as set forth in the Terms of
Service, you are prohibited from using the site or its content: (a)
for any unlawful purpose; (b) to solicit others to perform or
participate in any unlawful acts; (c) to violate any international,
federal, provincial or state regulations, rules, laws, or local
ordinances; (d) to infringe upon or violate our intellectual
property rights or the intellectual property rights of others; (e)
to harass, abuse, insult, harm, defame, slander, disparage,
intimidate, or discriminate based on gender, sexual orientation,
religion, ethnicity, race, age, national origin, or disability; (f)
to submit false or misleading information; (g) to upload or transmit
viruses or any other type of malicious code that will or may be used
in any way that will affect the functionality or operation of the
Service or of any related website, other websites, or the Internet;
(h) to collect or track the personal information of others; (i) to
spam, phish, pharm, pretext, spider, crawl, or scrape; (j) for any
obscene or immoral purpose; or (k) to interfere with or circumvent
the security features of the Service or any related website, other
websites, or the Internet. We reserve the right to terminate your
use of the Service or any related website for violating any of the
prohibited uses.
SECTION 13 - DISCLAIMER OF WARRANTIES; LIMITATION OF LIABILITY
We do not guarantee, represent or warrant that your use of our
service will be uninterrupted, timely, secure or error-free. We do
not warrant that the results that may be obtained from the use of
the service will be accurate or reliable. You agree that from time
to time we may remove the service for indefinite periods of time or
cancel the service at any time, without notice to you. You expressly
agree that your use of, or inability to use, the service is at your
sole risk. The service and all products and services delivered to
you through the service are (except as expressly stated by us)
provided 'as is' and 'as available' for your use, without any
representation, warranties or conditions of any kind, either express
or implied, including all implied warranties or conditions of
merchantability, merchantable quality, fitness for a particular
purpose, durability, title, and non-infringement. In no case shall
gerryeats, our directors, officers, employees, affiliates, agents,
contractors, interns, suppliers, service providers or licensors be
liable for any injury, loss, claim, or any direct, indirect,
incidental, punitive, special, or consequential damages of any kind,
including, without limitation lost profits, lost revenue, lost
savings, loss of data, replacement costs, or any similar damages,
whether based in contract, tort (including negligence), strict
liability or otherwise, arising from your use of any of the service
or any products procured using the service, or for any other claim
related in any way to your use of the service or any product,
including, but not limited to, any errors or omissions in any
content, or any loss or damage of any kind incurred as a result of
the use of the service or any content (or product) posted,
transmitted, or otherwise made available via the service, even if
advised of their possibility. Because some states or jurisdictions
do not allow the exclusion or the limitation of liability for
consequential or incidental damages, in such states or
jurisdictions, our liability shall be limited to the maximum extent
permitted by law.
SECTION 14 - INDEMNIFICATION
You agree to indemnify, defend and hold harmless gerryeats and our
parent, subsidiaries, affiliates, partners, officers, directors,
agents, contractors, licensors, service providers, subcontractors,
suppliers, interns and employees, harmless from any claim or demand,
including reasonable attorneys’ fees, made by any third-party due to
or arising out of your breach of these Terms of Service or the
documents they incorporate by reference, or your violation of any
law or the rights of a third-party.
SECTION 15 - SEVERABILITY
In the event that any provision of these Terms of Service is
determined to be unlawful, void or unenforceable, such provision
shall nonetheless be enforceable to the fullest extent permitted by
applicable law, and the unenforceable portion shall be deemed to be
severed from these Terms of Service, such determination shall not
affect the validity and enforceability of any other remaining
provisions.
SECTION 16 - TERMINATION
The obligations and liabilities of the parties incurred prior to the
termination date shall survive the termination of this agreement for
all purposes. These Terms of Service are effective unless and until
terminated by either you or us. You may terminate these Terms of
Service at any time by notifying us that you no longer wish to use
our Services, or when you cease using our site. If in our sole
judgment you fail, or we suspect that you have failed, to comply
with any term or provision of these Terms of Service, we also may
terminate this agreement at any time without notice and you will
remain liable for all amounts due up to and including the date of
termination; and/or accordingly may deny you access to our Services
(or any part thereof).
SECTION 17 - ENTIRE AGREEMENT
The failure of us to exercise or enforce any right or provision of
these Terms of Service shall not constitute a waiver of such right
or provision. These Terms of Service and any policies or operating
rules posted by us on this site or in respect to The Service
constitutes the entire agreement and understanding between you and
us and govern your use of the Service, superseding any prior or
contemporaneous agreements, communications and proposals, whether
oral or written, between you and us (including, but not limited to,
any prior versions of the Terms of Service). Any ambiguities in the
interpretation of these Terms of Service shall not be construed
against the drafting party.
SECTION 18 - GOVERNING LAW
These Terms of Service and any separate agreements whereby we
provide you Services shall be governed by and construed in
accordance with the laws of India and jurisdiction of Jaipur,
Rajasthan
SECTION 19 - CHANGES TO TERMS OF SERVICE
You can review the most current version of the Terms of Service at
any time at this page. We reserve the right, at our sole discretion,
to update, change or replace any part of these Terms of Service by
posting updates and changes to our website. It is your
responsibility to check our website periodically for changes. Your
continued use of or access to our website or the Service following
the posting of any changes to these Terms of Service constitutes
acceptance of those changes.
SECTION 20 - CONTACT INFORMATION
Questions about the Terms of Service should be sent to us at
<EMAIL_ADDRESS>Refund Policy
Returns
Our policy lasts 30 days. For packaged items If 7 days have gone by
since your purchase, unfortunately we can’t offer you a refund or
exchange. To be eligible for a return, your item must be unused and
in the same condition that you received it. It must also be in the
original packaging. Several types of goods are exempt from being
returned. Any perishable good is not returnable
Non-returnable items:
- Cooked meals
- Prepared beverages
To complete your return, we require a receipt or proof of purchase.
Please do not send your purchase back to the manufacturer. There are
no situations where partial refunds are granted. Any item not in its
original condition, is damaged or missing parts for reasons not due
to our error and any item that is returned more than 30 days after
delivery is non refundable
Refunds
For the cancellation of the ordered meals your money will be
refunded to your gerryeats wallet only if you cancel the order
before the last ordering time of that meal. For the orders not
received your money will be refunded to your gerryeats wallet
Sale items
Only regular priced items may be refunded, unfortunately sale items
cannot be refunded.
Shipping
To return your product, you should mail your product to:
Shivalik - 303, Godrej Prakriti, 187F/1 B.T. Road, Sukchar Girja,
Sodepur, Kolkata - 700115
You will be responsible for paying for your own shipping costs for
returning your item. Shipping costs are non-refundable. If you
receive a refund, the cost of return shipping will be deducted from
your refund. Depending on where you live, the time it may take for
your exchanged product to reach you, may vary. If you are shipping
an item you should consider using a trackable shipping service or
purchasing shipping insurance. We don’t guarantee that we will
receive your returned item.

When you purchase something from our store, as part of the buying
and selling process, we collect the personal information you give us
such as your name, address and email address. When you browse our
store, we also automatically receive your computer’s internet
protocol (IP) address in order to provide us with information that
helps us learn about your browser and operating system. Email
marketing (if applicable): With your permission, we may send you
emails about our store, new products and other updates.
SECTION 2 - CONSENT
How do you get my consent? When you provide us with personal
information to complete a transaction, verify your credit card,
place an order, arrange for a delivery or return a purchase, we
imply that you consent to our collecting it and using it for that
specific reason only. If we ask for your personal information for a
secondary reason, like marketing, we will either ask you directly
for your expressed consent, or provide you with an opportunity to
say no. How do I withdraw my consent? If after you opt-in, you
change your mind, you may withdraw your consent for us to contact
you, for the continued collection, use or disclosure of your
information, at anytime, by contacting us at
<EMAIL_ADDRESS>or mailing us at:
Shivalik - 303, Godrej Prakriti, 187F/1 B.T. Road, Sukchar Girja,
Sodepur, Kolkata - 700115
SECTION 3 - DISCLOSURE
We may disclose your personal information if we are required by law
to do so or if you violate our Terms of Service.
SECTION 4 - PAYMENT
We use Razorpay for processing payments. We/Razorpay do not store
your card data on their servers. The data is encrypted through the
Payment Card Industry Data Security Standard (PCI-DSS) when
processing payment. Your purchase transaction data is only used as
long as is necessary to complete your purchase transaction. After
that is complete, your purchase transaction information is not
saved. Our payment gateway adheres to the standards set by PCI-DSS
as managed by the PCI Security Standards Council, which is a joint
effort of brands like Visa, MasterCard, American Express and
Discover. PCI-DSS requirements help ensure the secure handling of
credit card information by our store and its service providers. For
more insight, you may also want to read terms and conditions of
razorpay on https://razorpay.com
SECTION 5 - THIRD-PARTY SERVICES
In general, the third-party providers used by us will only collect,
use and disclose your information to the extent necessary to allow
them to perform the services they provide to us. However, certain
third-party service providers, such as payment gateways and other
payment transaction processors, have their own privacy policies in
respect to the information we are required to provide to them for
your purchase-related transactions. For these providers, we
recommend that you read their privacy policies so you can understand
the manner in which your personal information will be handled by
these providers. In particular, remember that certain providers may
be located in or have facilities that are located a different
jurisdiction than either you or us. So if you elect to proceed with
a transaction that involves the services of a third-party service
provider, then your information may become subject to the laws of
the jurisdiction(s) in which that service provider or its facilities
are located. Once you leave our store’s website or are redirected to
a third-party website or application, you are no longer governed by
this Privacy Policy or our website’s Terms of Service. Links When
you click on links on our store, they may direct you away from our
site. We are not responsible for the privacy practices of other
sites and encourage you to read their privacy statements.
SECTION 6 - SECURITY
To protect your personal information, we take reasonable precautions
and follow industry best practices to make sure it is not
inappropriately lost, misused, accessed, disclosed, altered or
destroyed.
SECTION 7 - COOKIES
We use cookies to maintain the session of your user. It is not used
to personally identify you on other websites.
SECTION 8 - AGE OF CONSENT
By using this site, you represent that you are at least the age of
majority in your state or province of residence, or that you are the
age of majority in your state or province of residence and you have
given us your consent to allow any of your minor dependents to use
this site.
SECTION 9 - CHANGES TO THIS PRIVACY POLICY
We reserve the right to modify this privacy policy at any time, so
please review it frequently. Changes and clarifications will take
effect immediately upon their posting on the website. If we make
material changes to this policy, we will notify you here that it has
been updated, so that you are aware of what information we collect,
how we use it, and under what circumstances, if any, we use and/or
disclose it. If our store is acquired or merged with another
company, your information may be transferred to the new owners so
that we may continue to sell products to you.
QUESTIONS AND CONTACT INFORMATION
If you would like to: access, correct, amend or delete any personal
information we have about you, register a complaint, or simply want
more information contact our Privacy Compliance Officer at
<EMAIL_ADDRESS>or by mail at
Shivalik - 303, Godrej Prakriti, 187F/1 B.T. Road, Sukchar Girja,
Sodepur, Kolkata - 700115


SymPy Papers¶
A list of papers which either use or mention SymPy, as well as presentations given about SymPy at conferences can be seen at SymPy Papers.
Planet SymPy¶
We have a blog aggregator at http://planet.sympy.org.
SymPy logos¶
SymPy has a collection of official logos, which can be generated from sympy.svg in your local copy of SymPy by:
$ cd doc
$ make logo # will be stored in the _build/logo subdirectory
The license of all the logos is the same as SymPy: BSD. See the LICENSE file in the trunk for more information.


FaNS Department
Version control is the process of updating your document versions,
while keeping track of older versions.
So, for example:
Git is a method that allows you to do version control. While it's
designed for coding, you can use it for anything.
Git is also particularly designed for collaborative work, so when
you're working on an analysis script with someone else.
It relies on you "pushing" your code to a server, and others can
"pull" it from there, or push their own changes.
Github is a company that aims to make the use of git easier, by
allowing you to look at your code through your web browser, and
allowing you to interact with others.
On your desktop, you can use GitHub to manage your repositories and
commit your changes.
In your browser, you can visit github.com.
Github makes sharing your code, as well as your results, easy - so you can comply with guidelines by journals such as PLOS One and Science
Github integrates very well into existing facilities for managing your projects, such as the Open Science Framework
You can also use GitHub as a to-do list manager for your analysis
And, as an academic institution, we get free "premium" institutional benefits.


|
||||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
See:
Description
| Interface Summary | |
|---|---|
| ProjectionSpec | Something to be used in the SELECT clause of a SQL query, e.g. |
| RelationalOperators |
| Class Summary | |
|---|---|
| AliasMap | A map from table names to aliases. |
| AliasMap.Alias | |
| Attribute | A database column. |
| ColumnRenamer | Something that can rename columns in various objects. |
| ColumnRenamerMap | A ColumnRenamer based on a fixed map of
original and replacement columns. |
| CompatibleRelationGroup | A group of Relation s that can be combined into a single
relation without changing the semantics of NodeMaker s. |
| ExpressionProjectionSpec | |
| Join | Represents an SQL join between two tables, spanning one or more columns. |
| JoinOptimizer | Removes unnecessary joins from a TripleRelation in cases
where this is possible without affecting the result. |
| MutableRelation | Wraps a relation and allows it to be modified by relational operators. |
| NodeRelation | A Relation associated with a number of named NodeMaker s. |
| OrderSpec | |
| Relation | TODO Describe this type TODO Add uniqueConstraints() TODO Explicitly list tables!!! |
| RelationImpl | |
| RelationName | A relation name, including an optional schema name. |
| TripleRelation | A collection of virtual triples obtained by applying a Relation to a
database, and applying NodeMaker s for subject, predicate and object
to each result row. |
| VariableConstraints | A map from variables to NodeMaker s that helps to build up
constraints in cases where a variable is bound multiple times. |
Implementation of an RDF-based relational algebra.
|
||||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |


Arian LeShaun Johnson
LeShaunJ
Calgary, Alberta, Canada
31years old
Marc Djoudi
mdjoudi
Calgary, Alberta, Canada
31years old
Darren Sun
darrensun09
Calgary, Alberta, Canada
31years old
Ben Ashford
theBigBen
Calgary, Alberta, Canada
31years old
Farhan Bhatti
fabhatti
Calgary, Alberta, Canada
31years old


Trip Purpose
Aleidra and I set our on this trip to make the most of our Valentine's Day. We also wanted to stay on a budget and not go broke. Luckily, Southwest had some great fares for us to go to Denver, a place we've never been, on the cheap. Spoiler alert: We were not disappointed.
Sights to See
We wanted to make sure we checked out quite a few sites in Denver. First, we arrived at the airport. After that, we checked out the Pepsi Center and saw the Warriors get beaten pretty badly by the Nuggets. On our second day, we checked out the MCA. We also went to go get some painting done too. The last day we spent some time in Boulder, CO.
Food!!!
Here are the list of places we ate at in Denver and Boulder.


General discussion about Komodo. For useful links and more info click the pinned messages to the right. DON'T DM @jl777
100 messages
Before 05-Dec-19 12:00 AM
SHossain02-Feb-19 12:48 PM
yes, i have blank screen too on Ubuntu 18.04. followed the steps exactly
dukeleto02-Feb-19 12:48 PM
the error is using file:///
CORS blocks it
SHossain02-Feb-19 12:49 PM
let me retest again from scratch
dukeleto02-Feb-19 12:49 PM
or rather, same origin policy. you need CORS headers or to load it not from file:/// , depends on browser and day of week and what the spec says this month
i ll look into the specific code and why index is loaded via file stream
dukeleto02-Feb-19 12:52 PM
when developing locally, on localhost, file:/// probably works. When you make a binary and it's not using localhost anymore, you can't use file:///, it's not the same origin
ca33302-Feb-19 12:53 PM
@SHossain are you on debian? please make sure you are.
SHossain02-Feb-19 12:53 PM
Ubuntu 18.04
dukeleto02-Feb-19 12:53 PM
browsers may handle this edge case differently, not sure
ca33302-Feb-19 12:53 PM
yes i know @dukeleto - thats why i am saying we shouldnt have filestream in there anymore. we removed it all a looong time ago.
dukeleto02-Feb-19 12:53 PM
so check in Chrome + Firefox, too
ca33302-Feb-19 12:53 PM
to make sure not violating same origin policy
it was in fact the reason we created Agama
ComputerGenie 👴👴👴02-Feb-19 12:54 PM
browsers may handle this edge case differently, not sure
it's using its own (chromish)
dukeleto02-Feb-19 12:54 PM
@ca333 agreed, this kind of thing happens often, where code works in dev but that fails in the big scary real world
1
1
ca33302-Feb-19 12:54 PM
with a modified netstack and recompiled kernel i could get my modded webserver to empty your agama (in old cases)
dukeleto02-Feb-19 12:54 PM
electrum wallets used to let any website in the world empty your Bitcorns
1
security, it was not the first thing on their mind I guess
ca33302-Feb-19 12:55 PM
maybe we missed something - pinged @pbca26 and looking into it
yes - security wasnt really taken care of. nowhere...
not here - but in the rest of the cryptoworld
dukeleto02-Feb-19 12:56 PM
it might be, that in development, the file path of something was stored, and it's using file:///, perhaps a dependency (of a dependency ...)
ca33302-Feb-19 01:07 PM
@ComputerGenie 👴👴👴 plz ensure you ran "npm run build" inside agama/gui/EasyDEX-GUI/react/
if it fails let me know what it spits
also what does your frontend terminal show? can you plz post/DM that infos
it allows me to ensure you have the frontend built and running properly
ComputerGenie 👴👴👴02-Feb-19 01:12 PM
@ca333 seems that the missing 'run' makes the difference
working now
ca33302-Feb-19 01:13 PM
noticed - fixing that. (sry - was ignored since expected the origin author wouldnt miss it)
1
ComputerGenie 👴👴👴02-Feb-19 01:14 PM
!kmdtip @ca333 20
1
KMD TipBotBOT02-Feb-19 01:14 PM
TipBot
@ComputerGenie 👴👴👴 (ComputerGenie ツ#7004)
You tipped @ca33320 KMD
ComputerGenie 👴👴👴02-Feb-19 01:18 PM
ty ty ty
I had it working once on a long dead debian 8 vm and other than that have never had it work; now I can have some fun and maybe be helpful at the same time
1
ca33302-Feb-19 01:27 PM
thank you very much @ComputerGenie 👴👴👴 !! - the tip will float into the next Cryptopuzzle. Thanks!
ComputerGenie 👴👴👴02-Feb-19 01:29 PM
It's well worth it and the help was appreciated
I use cli or Ocean for preference reasons, but it's nice to finally have local agama as an option and be able to maybe even help with some of the issues I've seen
ca33302-Feb-19 01:32 PM
i am very sure that you will be very helpful - feedback from the techy users in here is always highly appreciated.
SHossain02-Feb-19 01:36 PM
Ocean is fast performer and easy. The main reason I use Agama is Lite mode and lot of other features packed inside. i.e.: offline signing
Lite mode is the quickest to send funds without downloading the chain for about 250 coins (i dont' use them all thought)
bogybogy02-Feb-19 01:51 PM
Hy
I hope is everyone k
I got a link about Chinese market will release something at 15 September
@bogybogy China even has an official Crypto Rating Index - https://news.bitcoin.com/bitcoin-chinas-crypto-ranking-2019/ - where KMD is in the Top 10 - the chinese are being very active. So if you see this sort of stuff going on then be sure - its just the tip of the iceberg. History should have taught us - China often keeps operating in the underground until whatever "project" has matured to be released. I guess this applies to lot of things..
China’s Center for Information and Industry Development has released its latest ranking of 34 crypto projects. This is the first update for 2019, but it is the ninth update overall. Bitcoin has been upgraded from the previous ranking while the top two positions remain uncha...
bogybogy02-Feb-19 02:03 PM
We will see
LocoMB02-Feb-19 02:41 PM
EOS on #1 and Bitshares on #5 ?!?! I am not convinced...
6 of the teams you wanted to host an AMA in the #Binance Telegram https://t.co/xYcqyDnJDx
@zilliqa $ZIL
@KomodoPlatform $KMD
@metalpaysme $MTL
@wavesplatform $WAVES
@zcoinofficial $XZC
@NeblioTeam $NEBL
There will be two polls with the rules included on the second
Poll ...
Likes
184
Bitcoin Benny02-Feb-19 02:49 PM
Tweeted it now. Will rally some troops for voting
1
2
1
SHossain02-Feb-19 02:51 PM
Casted my vote
Yassin02-Feb-19 03:05 PM
voted!!
4
coingirl8702-Feb-19 03:06 PM
I think vote is not clean...neblio get 2000 votes in minutes
Same for zcoin...1000 votes in seconds
SHossain02-Feb-19 03:07 PM
paid bots
i guess
coingirl8702-Feb-19 03:07 PM
Its pitty....i hope binance will count only real votes
Maybe than we have a chance
SHossain02-Feb-19 03:10 PM
is there a way to differentiate real user vote or by bot?
coingirl8702-Feb-19 03:12 PM
Dont know but bots has many numbers in name
ComputerGenie 👴👴👴02-Feb-19 03:12 PM
How come it's "paid bots" when other coins do it, but when Komodo spams a few thousand people to vote, then the votes are "real"?
1
coingirl8702-Feb-19 03:12 PM
For example kimdotcom34673245
We dont pay community...only ask to help komodo...its not the same
SHossain02-Feb-19 03:13 PM
by paid bot i meant to say, probably fake users. there are lot of sites where you can pay few cents to perform micro works
ComputerGenie 👴👴👴02-Feb-19 03:14 PM
Why assume that instead of assuming that they too spammed all of their users and just had a better turn out?
SHossain02-Feb-19 03:15 PM
that could be.
but, our users are real. like ComputerGenie is not fake
ComputerGenie 👴👴👴02-Feb-19 03:15 PM
like ComputerGenie is not fake
I'm sure @meatspoon disagrees with that claim
1
coingirl8702-Feb-19 03:15 PM
Because neblio for example jumps from 15 % to over 40% in seconds ...
2
Thats normal for you?
ComputerGenie 👴👴👴02-Feb-19 03:17 PM
at x level of "voting" 100 people make up 40%
so, there's that
coingirl8702-Feb-19 03:18 PM
No...at this moment (neblio was 15%) there was more than 3500 votes...
So 100 people cant make the difference
ComputerGenie 👴👴👴02-Feb-19 03:20 PM
875 can
because, math
coingirl8702-Feb-19 03:21 PM
I think with fair methods komodo will not win this poll but its okey for me.
Yes and you think 875 people vote in few seconds?
Before that 3500 people vote in hours
ComputerGenie 👴👴👴02-Feb-19 03:25 PM
Yes and you think 875 people vote in few seconds?
What I think happened and what's realistically plausible are not always mutually inclusive.
My point remains that if you think that it's implausible that 875 people in the entirety of the internet can do something "within seconds", then you underestimate the functionality of the internet (probability of happening in such a narrow space is another topic).(edited)
1
Never underestimate the "power" of fanboys with followers.
FishyGuts02-Feb-19 03:34 PM
Or people with bags to dump
4
ComputerGenie 👴👴👴02-Feb-19 03:36 PM
Richard Heart has 50k followers that he routinely tells are "idiots", "morons", and "too stupid to understand a fuking thing I say" and yet if he told them something was good to vote for, it wouldn't even take 1.76% of his followers to make 875.(edited)
hastrup02-Feb-19 04:08 PM
@ComputerGenie 👴👴👴 stop coming here whit you're logic and reason we trying to have some hope and shift some blame
1
at02-Feb-19 04:33 PM
Computer genie is my current personal hero i think he may be a super genius of some degree
ComputerGenie 👴👴👴02-Feb-19 04:37 PM
is fearful for the life of anyone that perceives him as a "hero"
1
ComputerGenie 👴👴👴02-Feb-19 04:45 PM
i think he may be a super genius of some degree
Only if compared to the selection pool of American liberal colleges/universities.
1
1
1
Bitcoin Benny02-Feb-19 05:13 PM
def paid bots. Nobody is even mentioning some of the others. Second group has double the votes too. Need to call this out
1
hastrup02-Feb-19 05:19 PM
@ComputerGenie 👴👴👴 i think he may be a super genius of some degree
Only if compared to the selection pool of American liberal colleges/universities. wink == lol == how is not compare to the mighty US education system
at02-Feb-19 05:32 PM
I tired and failed at tolerating college a couple times. never again. Even amazon dropped the degree requirement
Tried
ComputerGenie 👴👴👴02-Feb-19 05:36 PM
If there is any doubt ZIL is botting this vote, look at the comments. The ratio of Cashtags should speak volumes.
So, my vote doesn't count because I didn't comment?
FishyGuts02-Feb-19 05:55 PM
No, but social media and the herd mentality have certain "features".
And there should definitely be a larger vocal presence for projects with real followers, as is evidenced by the KMD voices.
ComputerGenie 👴👴👴02-Feb-19 05:58 PM
moooooooo
maybe the silent majority are like @at and find me a "personal hero" and voted for ZIL without comment because they saw I did


This page lets you create HTML by entering text in a simple format that’s easy to read and write.
Textile is a lightweight markup language billed as a “humane web text editor”. It originated in the blogging software Textpattern.
Textile takes plain text with simple markup and produces valid XHTML. It’s used in web applications, content management systems, blogging software and online forums. Try it for yourself with the Textile quick reference and preview.
This document is written in Textile; you can see the plain-text version on the left. To get a feel for Textile’s syntax, type some text into the left window and watch the results in the right. You can see a Textile syntax guide by switching the right-hand window from Preview to Syntax Guide.
Textile-js is a JavaScript port of Textile. You can get the full source code from its GitHub repository.
Start with a blank page or edit this document in the left window.


Basic Form
Basic Material inputs
Just add form-material
class to the form that's
it.
Different Widths
Just add col*
class to form-group
Default Basic Forms
All bootstrap element classies
Default Horizontal Forms
All bootstrap element classies
Input groups
All bootstrap element classies
Input States
Validation styles for error, warning, and success states on form controls.
Sample Basic Forms
Bootstrap Elements
Sample Horizontal form
Use Bootstrap's predefined grid classes for horizontal form


??
?
?
8
9
10
The
New
York
copyright
reserved
botanical
Garden
FLORA
OF
HiSPANOLA.
DOMINICAN
REPUBLIC
No.
17776
Agalinis
fasciculata
(Ell.)
Raf.
Det.
Alain
H.
Liogier,
1970.
Herbaceous,
erect,
60
cm
high;
flowers
white;
in
pine
forest,
on
slope;
uncommon
among
the
pink-flowered
variety.
Loma
Pegu*ra,
Hato
Viejo,
^onao.
Serpentine
hills
with
iron
ere.
Alt#
300-400
a.
botanical
NEW
YORK
BOTANICAL
GARDEN
33393
Alain
H.
Liogier,
Coll.
Date:
8
Aug
1970
01333931
Legend -
Level of confidence that token is an accurately-transcribed word
extremely low
very low
low
undetermined
medium
high
very high


Dell releases new, detailed patent for foldable PC
by AtiyaNews of Dell’s dual-screened, foldable Windows 10 device first came to light over a year ago; for which the company has since filed many different patents.
In a new patent, we can see the hinge design which creates a visible gap in the closed state. The device with the hinge gap is likely to feature a folding screen , similar to Samsung’s folding PC.
Also included in the patent is an alternative hinge design, which allows the laptop to close without a gap:
Here we can see display borders, which move via a roller, and assist in folding and help prevent damage:
FIGS. 22A and 22B depicting an assembly in a closed and planar configuration;
Figures 22A and 22B depict a side sectional view of an exemplary embodiment of a roll assembly in closed and planar configurations that aids in managing sliding movement of the display frame structure relative to housing sections;
The foldable PC is predicted to be released in the second half of 2020 and will include the much anticipated Windows 10X– a version of Windows 10 that has been tailored to dual-screen devices.
Source: Windowsunited


|
this
template was created in Dreamweaver 4.0 ...this template
is free as long as you leave the copyright notice
and the link to my site at the bottom... if you like
this template, please visit my site and click on the
link at the top of my pages and sign up for a free
email webmaster resource newsletter; it only takes
a minute, it's free and helps me keep these templates
free... i can customize this for a fee, just
email me... if
you order a customization, you do not have to keep
the link to my site
you
can purchase a customized flash version of this template
for $50... email
me for info
|
content
|
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text text
text text text text text text text text text


{% extends 'ta_app/base.html' %} {% block content %} {% include 'students/_menu.html' %}
Please go to Edit Confidential Information if you would like to delete your uploaded files.
If you are a Domestic Student, please click down below.
If you are an International Student, please click down below.


We currently expose five primary classes:
We make them available to:
BSTAlexa is our Alexa emulator. It allows one to write unit tests and functional tests that mimic the functionality of the Alexa service.
The LambdaServer makes it easy to run your Lambdas locally for unit and functional tests.
BSTProxy allows our proxy tool to be used programmatically. An example is here.
BSTEncode encodes audio files to Alexa standards and makes them available via S3.
Logless makes logging and diagnostics for Alexa skills and Lambdas super-simple.
Below is a simple example Mocha test.
This can be used to test any Alexa skill, not just one written in JavaScript:
it('Plays and Goes To Next', function (done) {
alexa.spoken('Play Music', function(error, response) {
// Confirms the correct directive is returned when the Intent is spoken
assert.equal(response.response.directives[0].type, 'AudioPlayer.Play');
// Ensures the track with correct token is returned
assert.equal(response.response.directives[0].audioItem.stream.token, '1');
alexa.intended('AMAZON.NextIntent', null, function (error, response) {
// Ensures the track with next token is returned
assert.equal(response.response.directives[0].audioItem.stream.token, '2');
done();
});
});
});
We initialize the BSTAlexa in the beforeEach block, like so:
let alexa = null;
beforeEach(function (done) {
alexa = new bst.BSTAlexa('http://localhost:10000',
'./speechAssets/IntentSchema.json',
'./speechAssets/Utterances.txt');
alexa.start(function () {
done();
});
});
And we cleanup:
afterEach(function (done) {
alexa.stop(function () {
done();
});
});
We can the utilize the LambdaServer to automatically start and stop a NodeJS/Lambda-based skill within our test.
To do this, simply start the LambdaServer on an open port and point it at your Lambda file:
let server = new bst.LambdaServer('./lib/index.js', 10000, true);
server.start();
The last parameter, true, enables verbose debugging. This prints out all the requests and responses from the skill to the console.
This will typically reside within our beforeEach block, similar to the the BSTAlexa initialization:
beforeEach(function (done) {
server = new bst.LambdaServer('./lib/index.js', 10000, true);
alexa = new bst.BSTAlexa('http://localhost:10000',
'./speechAssets/IntentSchema.json',
'./speechAssets/Utterances.txt');
server.start(function() {
alexa.start(function () {
done();
});
});
});
And we shut it down at the end like so:
afterEach(function(done) {
alexa.stop(function () {
server.stop(function () {
done();
});
});
});
It is very important to shutdown the server - otherwise it will go on listening on the port specified!
Listeners can be set on all the events listed here.
For example, to see that a track has begun playing, add a listener on the AudioPlayer.PlaybackStarted event.
This works well in concert with the audioItemFinished call.
This call acts as if the current track had finished playing on the device.
The next audio item queued from your skill should then be started.
Sample code:
alexa.on('AudioPlayer.PlaybackStarted', function(audioItem) {
assert.equal(audioItem.stream.token, '2');
});
alexa.audioItemFinished();
Generated using TypeDoc


Grouping:
Group by shape
Group by color
Sorting:
Sort by shape
Sort by color
Filtering:
Only show blue triangles
Only show red circles
Clear filters


{% extends "base.html" %} {% load static %} {% block page_content %}
This web is actually just an old site archive, but the articles are browsable.
Read blog archive


Contents
I. K-Nearest Neighbors
Given a positive integer and a test observation , the K-nearest neighbors (KNN) classifier identifies the points in the training data closest to , represented by , and then estimates the conditional probability for class as the fraction of points in whose response values equal :
KNN has high bias and low variance when is large, and vice versa when is small. While the training error rate will always decrease as decreases, the test error will take on a characteristic U-shape due to overfitting.
II. Logistic Regression
Logistic Regression with One Predictor
Logistic regression models the probability that belongs to a particular category.
We can re-write this equation to represent the odds , and log-odds/logit of :
- Note that because logistic regression takes an shape, the effect of one-unit increase in on depends on the current value of .
We estimate the coefficients and using estimates that maximize the likehood that the logistic model produced the observed data; in other words, plugging the coefficients into the logistic model should result in a number close to 1 for all observations with , and close to 0 for all observations with . This is accomplished by maximizing the likelihood function, :
We can conduct a hypothesis test to test if the probability of does not depend on with null hypothesis , by using a -statistic,
Multiple Logistic Regression
We can extend the basic logistic regession model to include multiple predictors:
Be careful of confounding variables! The results obtained using one predictor may be different than those obtained with multiple predictors, especially if predictors are correlated with each other.
- Note: Logistic regression is mostly used when the response variable has two classes. It is possible to use logistic regression for a response variable with more than two classes; however, linear discriminant analysis is much more often used in that scenario.
III. Linear Discriminant Analysis
Linear discriminant analysis (LDA) focuses on maximizing the separability among categories by modeling the distributions of the predictors separately in each response class, , then using Bayes’ theorem to flip them into estimates of .
Motivation
Why use LDA instead of logistic regression?
- When the classes are well-separated, the parameter estimates for LDA are more stable than for logistic regression.
- If is small and the distribution of predictors is approximately normal in each class, then LDA is more stable than logistic regression.
Let us define the following conditions:
- is the prior probability that a random observation comes from the th class
- is the density function of for an observation from the th class
- is the posterior probability that an observation belongs to the th class
Then Bayes’ theorem states that:
The goal is to estimate to develop a classifier that estimates the Bayes classifier.
LDA for one predictor
Assumptions:
- is normal or gaussian, and its density takes the form
- Variance is constant within each class;
We assign each observation to the class that maximizes the discriminant function, which we obtain by plugging the into Bayes’ theorem and simplifying:
The parameters and are estimated as follows:
Thus, the LDA classifier results are calculated by plugging estimates for each parameter with the observation value into the Bayes classifier.
- Note that for the two-class scenario with , then the Bayes decision boundary correponds to the point where .
LDA for multiple predictors
Assumption:
- is drawn from a multivariate gaussian distribution with a class-specific mean vector and common covariance matrix, with density:
If observations in the th class are drawn from , then we can plug in the density function to find that the Bayes classifier assigns an observatino to maximize the discriminant function:
The unknown parameters are estimated with formulas similar to those in the one-dimensional case. To assign a new observation, LDA plugs the parameter estimates into the discriminant function and classifies it to the class for which is largest.
Considerations when using LDA
- The higher the ratio of parameters to sample size , the more likely LDA will overfit the data.
- LDA has low sensitivity (power), because it is based off of the Bayes classifier which minimizes total error by assigning observations to categories if
A confusion matrix is a table that displays predicted vs. actual values, and they can be used to calculate the following important measure for classification and diagnostic testing:
- Sensitivity (aka power) =
- Specificity =
- Type I Error is the false positive rate, also 1 - Specificity
- Type II Error is the false negative rate, also 1 - Sensitivity
- Note: check out Wikipedia for a nice visualization of a 2x2 confusion matrix and all of its related statistics.
We can address problem #2 by setting a new threshold for assigning an observation to a certain class, based on domain knowledge. Setting a new threshold can be visualized with an ROC curve (receiver operating characteristics). An example is shown below.1
The ROC curve graphs False Positive Rate (Type I Error) against the True Positive Rate (Power/Sensitivity). Ideally, it should hug the top left corner of the plot. Increasing the threshold will move results to the lower left along the ROC curve, and decreasing the threshold will move results to the upper right.
AUC is the area under the ROC curve, and it tells us how much the model is able to distinguish between classes. The higher the AUC value, the better the model, with a max value = 1.
- High AUC: model classifies observations well
- Close to .5: model has no separation ability
- Low AUC: model classifies the opposite way
IV. Quadratic Discriminant Analysis
Quadratic distriminant analysis (QDA) assumes that each class has its own covariance matrix, so an observation in the th class is given by .
We assign an observation to the class where is largest. Note that is a quadratic function of , as opposed to a linear function.
Comparing LDA and QDA:
- when there are p predictors, assuming a separate covariance matrices with QDA means estimating parameters. However, LDA only requires estimates linear coefficients by assuming a common covariance matrix.
- LDA has higher bias and lower variance
- QDA has lower bias and higher variance
- LDA: useful when there are fewer training observations, when reducing variance is important
- QDA: useful when the training set is ver large, or if you can’t assume a common covariance matrix
V. Comparison of Classification Methods
Logistic regression and LDA produce linear decision boundaries. While logistic regression estimates parameters with maximum likelihood, LDA estimates parameters with the estimated and from a normal distribution. Therefore, we should use LDA when we can assume that observations are drawn from a gaussian distribution with common covariance matrix, and use logistic regression when those assumptions are not met.
QDA can model a wider range of data than logistic regression and LDA, but it is not as flexible as KNN. However, QDA performs better than KNN with limited training observations.
KNN dominates when the true decision boundary is non-linear, but it suffers a major drawback that it doesn’t show which predictors are important in obtaining the result.
Summary of Each Method
Logistic Regression
- Linear decision boundary
- Provides interpretability with odds ratios
- High bias, low variance
Linear Discriminant Analysis
- Linear decision boundary
- Provides interpretability with predictor ability to separate variation
- Assumes all observations are drawn from normal distributions
- Assumes observations in all classes share a covariance matrix
- Stable when classes are “well-separated”
- Stable when sample size is small
- Commonly used over logistic regression when response is >2 classes
- Can adjust assignment-probability threshold for a better specificity rate with the ROC curve
- High bias, low variance
Quadratic Discriminant Analysis
- Quadratic decision boundary
- Assumes observations are drawn from a multivariate normal distribution
- Assumes different covariance matrices for each class
- Performs well with many training observations compared to LDA
- Medium bias, medium variance
K-Nearest Neighbors
- Non-parametric decision boundary
- No interpretability
- Requires smart selection of the smoothness
- Bad when the number of predictors is large, due to the curse of dimensionality
- Low bias, high variance
VI. Applications in R
-
Image source: James et. al, Introduction to Statistical Learning, 7th Ed., pg. 148 ⤴


Class of most common structure.
More...
List of all members.
Detailed Description
Member Function Documentation
| AtomMap LargestCommonSubstructure::AtomMapM1 |
( |
| ) |
const |
Get StructureData's atom dict to structure1
| AtomMap LargestCommonSubstructure::AtomMapM2 |
( |
| ) |
const |
Get StructureData's atom dict to structure2
| BondMap LargestCommonSubstructure::BondMapM1 |
( |
| ) |
const |
Get StructureData's bond dict to structure1
| BondMap LargestCommonSubstructure::BondMapM2 |
( |
| ) |
const |
Get StructureData's bond dict to structure2
| StructureData* LargestCommonSubstructure::CommonSubstructure |
( |
| ) |
const |
Find the maximum common sub-graph between structure1 and structure2
Python Example:
>>> structure1 = StructureData.LoadData("C1(C)CCCC1CCO")
>>> structure2 = StructureData.LoadData("C1CCCC1C")
>>> common = LargestCommonSubstructure.Compute(structure1, structure2)
>>> atommap1 = common.AtomMapM1()
>>> bondmap1 = common.BondMapM1()
>>> atommap2 = common.AtomMapM2()
>>> bondmap2 = common.BondMapM2()
>>> for a in atommap1.keys():
... r = a.Name + '->' + atommap1[a].Name + '->' + atommap2[a].Name
... print(r)
>>> for b in bondmap1.keys():
... r = b.Name + '->' + bondmap1[b].Name + '->' + bondmap2[b].Name
... print(r)


Welcome to my Data Rep Project
Username
(required)
Password
(required)
For testing purposes, please use >>
gmit
<< for both Username and Password, already provided for convenience.
Top


A deactivated cyborg is revived, but cannot remember anything of her past life and goes on a
quest
to find out who she is.
Ad Astra
Ad Astra
Astronaut Roy McBride undertakes a mission across an unforgiving solar system to uncover the
truth about his missing father and his doomed expedition that now, 30 years later, threatens the
universe.
Avengers: Endgame
Avengers: Endgame
After the devastating events of Avengers: Infinity War (2018), the universe is in ruins. With
the help of remaining allies, the Avengers assemble once more in order to reverse Thanos'
actions and restore balance to the universe.
Toy Story 4
Toy Story 4
When a new toy called "Forky" joins Woody and the gang, a road trip alongside old and new
friends reveals how big the world can be for a toy.
The Lion King
The Lion King
After the murder of his father, a young lion prince flees his kingdom only to learn the true
meaning of responsibility and bravery.
Spider-Man: Far from Home
Spider-Man: Far from Home
Following the events of Vengadores: Endgame (2019), Spider-Man must step up to take on new
threats in a world that has changed forever.
Joker
Joker
A gritty character study of Arthur Fleck, a man disregarded by society.
Terminator: Dark Fate
Terminator: Dark Fate
Sarah Connor and a hybrid cyborg human must protect a young girl from a newly modified liquid
Terminator from the future.
Rambo: Last Blood
Rambo: Last Blood
Rambo must confront his past and unearth his ruthless combat skills to exact revenge in a final
mission.
Dark Phoenix
Dark Phoenix
Jean Grey begins to develop incredible powers that corrupt and turn her into a Dark Phoenix. Now
the X-Men will have to decide if the life of a team member is worth more than all of humanity.
Aladdin
Aladdin
A kind-hearted street urchin and a power-hungry Grand Vizier vie for a magic lamp that has the
power to make their deepest wishes come true.
The Aeronauts
The Aeronauts
Pilot Amelia Wren (Felicity Jones) and scientist James Glaisher (Eddie Redmayne) find themselves
in an epic fight for survival while attempting to make discoveries in a hot air balloon.
Annabelle Comes Home
Annabelle Comes Home
While babysitting the daughter of Ed and Lorraine Warren, a teenager and her friend unknowingly
awaken an evil spirit trapped in a doll.
Once Upon a Time... in Hollywood
Once Upon a Time... in Hollywood
A faded television actor and his stunt double strive to achieve fame and success in the film
industry during the final years of Hollywood's Golden Age in 1969 Los Angeles.
Captain Marvel
Captain Marvel
Carol Danvers becomes one of the universe's most powerful heroes when Earth is caught in the
middle of a galactic war between two alien races.
Alita: Battle Angel
Alita: Battle Angel
A deactivated cyborg is revived, but cannot remember anything of her past life and goes on a
quest
to find out who she is.
Ad Astra
Ad Astra
Astronaut Roy McBride undertakes a mission across an unforgiving solar system to uncover the
truth about his missing father and his doomed expedition that now, 30 years later, threatens the
universe.
Avengers: Endgame
Avengers: Endgame
After the devastating events of Avengers: Infinity War (2018), the universe is in ruins. With
the help of remaining allies, the Avengers assemble once more in order to reverse Thanos'
actions and restore balance to the universe.
Toy Story 4
Toy Story 4
When a new toy called "Forky" joins Woody and the gang, a road trip alongside old and new
friends reveals how big the world can be for a toy.
The Lion King
The Lion King
After the murder of his father, a young lion prince flees his kingdom only to learn the true
meaning of responsibility and bravery.
Spider-Man: Far from Home
Spider-Man: Far from Home
Following the events of Vengadores: Endgame (2019), Spider-Man must step up to take on new
threats in a world that has changed forever.
Joker
Joker
A gritty character study of Arthur Fleck, a man disregarded by society.
Terminator: Dark Fate
Terminator: Dark Fate
Sarah Connor and a hybrid cyborg human must protect a young girl from a newly modified liquid
Terminator from the future.
Rambo: Last Blood
Rambo: Last Blood
Rambo must confront his past and unearth his ruthless combat skills to exact revenge in a final
mission.
Dark Phoenix
Dark Phoenix
Jean Grey begins to develop incredible powers that corrupt and turn her into a Dark Phoenix. Now
the X-Men will have to decide if the life of a team member is worth more than all of humanity.
Aladdin
Aladdin
A kind-hearted street urchin and a power-hungry Grand Vizier vie for a magic lamp that has the
power to make their deepest wishes come true.
The Aeronauts
The Aeronauts
Pilot Amelia Wren (Felicity Jones) and scientist James Glaisher (Eddie Redmayne) find themselves
in an epic fight for survival while attempting to make discoveries in a hot air balloon.
Annabelle Comes Home
Annabelle Comes Home
While babysitting the daughter of Ed and Lorraine Warren, a teenager and her friend unknowingly
awaken an evil spirit trapped in a doll.
Once Upon a Time... in Hollywood
Once Upon a Time... in Hollywood
A faded television actor and his stunt double strive to achieve fame and success in the film
industry during the final years of Hollywood's Golden Age in 1969 Los Angeles.
Captain Marvel
Captain Marvel
Carol Danvers becomes one of the universe's most powerful heroes when Earth is caught in the
middle of a galactic war between two alien races.