typedef struct { } x;
Members description: x; y; z...
Individual summary...
Relationship...
There are two static functions that workaround the needs of "standard" practices: rtp_loadinistandard will replace the key found in the INI with the actual location installed; rtp_pathloop_adjust will workaround the case issue checking for letters in the filename, if any is found there will be 3 loops with different cases.
VALUE rb_load_data(VALUE self, VALUE path);
This is used as a binding to the method "load_data", its purpose is to load the scripts from the "Data" directory. The use of "self" is unknown (void), but path is exactly the filename, pending conversion from ruby.
If the file is found, the data will be read to a ruby string (rb_str_new), trough loops of rb_str_cat. There isn't a reason to return anything, but here is the catch: after calling rb_const_get_at (used for???), the method is called trough the last argument of rb_funcall, using the method ID of "load", and that is the return value.
int configure_rtp_path(struct ini_section *game_section);
Configures the RTP path by looking at the keys inside "game_section", and the configuration file. The configuration file theoretically has priority over the INI.
The configuration reading is a mess but only a checking to ensure PATH_MAX limit is done, if this file can't be read, the function uses stat to check for available paths. After setting the base path correctly, the first key to check is "RTP", for RGSS2 and RGSS3, if the key is not there then the indexed loop is done. For both cases, the same procedure: rtp_loadinistandard is called to check the standard paths, or just let it be.
Returns 1 for crossing PATH_MAX boundaries, or 0 for success. Note: not having a standard directory IS NOT an error, RTP should support local path!
size_t loadfile_withrtp( char *pato, const char *filen, const char (*extsa)[5], const size_t filens, const size_t extotal, const size_t extrtp );
It loads the filename "filen", with size "filens", appending extensions for checking from array "extsa" (4 letters limit), with a maximum loop cycle of "extotal" for local paths, and a maximum loop cycle of "extrtp" for RTP paths. When the file is found, the full path string to reload it is pasted in "pato".
First, for local paths it is a simple matter of opening the files after adding each extension. If the file is not found locally, then the most complex RTP cycle is done checking the PATH_MAX boundaries, getting the number of "case" cycles with rtp_pathloop_adjust and hopefully finding the file.
Returns 0 if the file is not found, or the path size otherwise.
unsigned char build_rtppath( char (*patob)[PATH_MAX + 1], const char *newdir, const size_t newdirs );
Using the paths inside "patob", append them the string "newdir", with size "newdirs".
This is mostly a wrapper for getting RTP filename outside this source file, its sole use is to concatenate the fonts directory in initFontLookup.
Returns 0 for crossing PATH_MAX boundaries, or the number of slots.
int copyofmy_mkpath( char *path, const size_t pathl, const mode_t defperm );
This description and function are copies of my mkpath function, from base utilities project. Makes directories trough the path, with size of "pathl", using default permission "defperm" for each directory.
The main loop goes up to the "null" character, with the position updated by the strcspn function, searching for the "/" directory divider, plus 1 for next loops. The error condition is checked against stat result, to make inform correctly about existing directories, when reading "errno".
Returns 1 for operational error, or 0 for success.
int rgssad_createhierarchy( const rgssa_subhdr *rgsssh, const size_t filec );
It creates a directory hierarchy based on "rgsssh" subheader array, with "filec" members.
It allocates one index and position array, to get preliminary path differences and base directories position, get the later first with rgssad_dirpos to use when processing sequential differences with rgssad_difseqst; allocates the exclusive index array with the previous differences to get the final count, with rgssad_difpara; finally, with the correct number of differences, allocates the final string array to copy and paste exclusive paths for copyofmy_mkpath. This last allocation is not really needed but it is done to make the logic read to reuse.
Returns 1 for first memory allocation and directory creation error, 2 to second row allocation and memory errors, or 0 for success.
int rgssad_extractf( FILE *rgssarc, const rgssa_subhdr *rgsssh, long int curpos, const size_t maxbsize, const size_t filec );
It extracts "filec" members from "rgsssh", from "rgssarc", starting from current position "curpos" with a maximum file size of "maxbsize". The members filename should have a valid path.
The maxbsize is used to allocate two buffers, the original (encrypted) file buffer and the buffer to hold the decrypted data. The main loop simply seeks, reads, decrypts using rgssad_decriptestem3, and writes data, checking for errors when at each fseek, fopen and fread.
Returns 1 for memory allocation errors, 2 for main loop errors, or 0 for success.
size_t rgssad_difpara( size_t *finali, size_t *availi, const size_t arrayc );
This will find "exclusive differences" among the same array "availi", with size "arrayc", and writes the values to the "finali".
Both availi and finali must hold the same size of arrayc, the main loop cycles while differences are found, being the initial value arrayc; the inner loop searches for the differences inside availi, and keeps updating the array and the partial difference counter when the difference is found, comparing them to the oldest entry; the oldest entry is actually the first difference put inside availi, and if differences are found, the difference counter is updated; at the end, the partial differences becomes the number of differences for the next loop.
Returns the difference counter (final array size).
size_t rgssad_difseqst( size_t *availi, const size_t *pathsa, const rgssa_subhdr *rgsssh, const size_t filec );
It searches for sequential differences among path strings from "rgsssh", with "filec" members, using path size array "pathsa", and writes the values to the "availi". It will simply compare the oldest path entry to the next entry, replacing the entry and updating the counter if the difference is found.
Returns the difference counter.
size_t rgssad_dirpos( size_t *pathsa, const rgssa_subhdr *rgsssh, const size_t filec );
It searches for base directory position of "rgsssh" file names, with "filec" members, writing them to path size array "pathsa". The only break condition is to avoid absolute path names.
Returns the number of loops rolled (filec maximum) to make sure the break didn't happen.
size_t rgssad_getheadf( FILE *rgssf, rgssa_hdr *rgssh );
It reads the main header "rgssh" from "rgssf", returning the number of bytes read.
size_t rgssad1_countsubheadf( FILE *rgssf, const unsigned int key );
It counts the number of version 1 subheaders in "rgssf", using initial "key".
It will read the subheader using rgssad1_getsubheadf, then seek to skip the data. The break condition is not only the RGSS1_MINISHDR size but also the seek return, after the main loop, the file initial position is restored and one last conditional will solve missing links.
Returns the number of subheaders, or 0 for errors.
size_t rgssad1_getsubheadf( FILE *rgssf, rgssa_subhdr *rgsssh, const unsigned int key );
It reads the version 1 subheader "rgsssh", from file "rgssf", using initial "key". There is a conditional to check for PATH_MAX boundaries, returning the number of bytes read accordingly.
size_t rgssad1_getsubheadfv( FILE *rgssf, rgssa_subhdr *rgsssh, const unsigned int key );
The same as rgssad1_getsubheadf, except no checking is done so it should be used on subsequent reads.
size_t rgssad3_countsubheadf( FILE *rgssf, const unsigned int key );
The same as rgssad1_countsubheadf for version 3, where there is no seeking in the main loop with it only working trough RGSS3_MINISHDR, and the function used to get subheader is rgssad3_getsubheadf.
size_t rgssad3_getsubheadf( FILE *rgssf, rgssa_subhdr *rgsssh, const unsigned int key );
The same as rgssad1_getsubheadf for version 3, where the key remains constant. Some members are not calculated with a XOR here, only the needed!
size_t rgssad3_getsubheadfv( FILE *rgssf, rgssa_subhdr *rgsssh, const unsigned int key );
The same as rgssad1_getsubheadfv for version 3. Every subheader member is decrypted here!
void rgssad_decriptestem2( unsigned char *bufmod, const unsigned char *buforg, const unsigned int files, unsigned int curpos, unsigned int datakey );
This is a decryption algorithm for "buforg" data, with a size of "files", beginning from position "curpos", with the given "datakey". The decrypted data, the with same size of the encrypted data, is written to "bufmod".
This could work with some fixes, but it is just for alignment theory like rgssad_decryptrealm, except it work trough bytes.
void rgssad_decriptestem3( unsigned char *bufmod, const unsigned char *buforg, const unsigned int files, unsigned int datakey );
This is THE decryption algorithm for "buforg" data, with a size of "files" and the given "datakey". The decrypted data, the with same size of the encrypted data, is written to "bufmod".
This is pretty much rgssad_decryptrealm without the alignment bullshit: entire loops plus missing bytes.
void rgssad_decryptrealm( unsigned char *bufmod, const unsigned char *buforg, const unsigned int curpos, const unsigned int files, unsigned int datakey );
This is a decryption algorithm for "buforg" data, with a size of "files", beginning from position "curpos", with the given "datakey". The decrypted data, the with same size of the encrypted data, is written to "bufmod".
The theory beyond this function is as if the decryption worked trough integer alignment, inside memory, so it has three possible reading: bytes before the first possible alignment, loops for aligned reads, remaining bytes after aligned reads. The format DOES NOT work this way!
void rgssad_fixpath( char *filen, const size_t filens );
Fixes the path in "filen", with a size of "filens", converting them from DOS to Unix ('\' to '/').
void rgssad_inihead( rgssa_hdr *rgssh );
Initializes the members from header "rgssh".
void rgssad_inisubhead( rgssa_subhdr *rgsssh );
Initializes the members from subheader "rgsssh".
void rgssad_print( const rgssa_subhdr rgsssh );
Prints information about the members from subheader "rgsssh".
Blah blah blah...
To understand, inside rb_load_data (openres.c): rb_const_get_at, rb_funcall, and rb_intern.
Everything inside bindings is a "VALUE", so to define anything imported from the interpreter, like "VALUE x;", you must convert them for use in C when the data is called from inside.
RSTRING_PTR(x): accesses the character string, from an object with existing data.
RSTRING_LEN(x): grabs the character string length, from an existing object.
StringValue(x) and variants: allocates object using "#to_str", from the data inside the variable, returning the character string pointer. Every one of them work by creating objects with "#to_str". For StringValueCStr, the null character is appended to the end of the string (\0).
VALUE rb_define_module(const char *name);
Module is the library of functions, to be used inside classes (methods). Inside the bindings, class is the variable that receives VALUE from "rb_define_method" and variants.
VALUE rb_define_method(VALUE klass, const char *name, VALUE (*func)(ANYARGS), int argc);
x = rb_define_singleton_method(rb_mAudio, "bgs_play", rb_audio_s_bgs_play, -1);
The following is direct from ruby documentation... Defines a method for the class. func is the function pointer. argc is the number of arguments. if argc is -1, the function will receive 3 arguments: argc, argv, and self. if argc is -2, the function will receive 2 arguments, self and args, where args is a Ruby array of the method arguments. Also the maximum number of arguments is 16.
VALUE rb_define_class(const char *name, VALUE super);
Class given by this function is just a reference inside ruby, without even holding the structure. The real creation only happens when using ALLOC like in "struct Bitmap *ptr = ALLOC(struct Bitmap)", then you should pass it to ruby stuff using Data_Wrap_Struct. You can also do both by using "TypedData_Make_Struct(klass, type, data_type, sval)".
The only standard files known are "Game.ini", the archive file (Game.rgssad, Game.rgss2a, and Game.rgss3a) when it exists, and the RTP files.
The only relevant section that should exist is "Game". The keys available: "RTP#", "Library", "Scripts", and "Title".
The "RTP" key is the RGSS2 and RGSS3 version, the indexed (RTP#) versions are for RGSS1 only, they are the standard directory from where RTP files are installed (C:\Program Files\Enterbrain), however they are actually a subdirectory of the distribution, as weird as it can get: for "RPGVXAce" value, it is actually "RGSS3\RPGVXAce\". There is only one RTP released for RGSS1, despite the indexes.
The "Library" key is the DLL used for loading the data (includes ruby interpreter and main script file), up to the "RGSS102#.dll", the details inside remain uncompressed. The path goes locally then fallback to RTP directory.
The "Scripts" key is where the ruby executable is, loaded trough priority order: archive, local directory. It is not known if it can access the RTP directory.
The "Title" key is the window title for the game, it can be any encoding but the RPG Maker tool uses Shift-JIS.
The RGSS Archive (Data?) format is composed of one main header and many subheader entries. The main header: magic string (always "RGSSAD" with a null string, 7 bytes), and the version (one byte, only 1 and 3 are used). When version is 3, there is also the main key (4 bytes) to translate subheader entries, version 1 key is always 0xDEADCAFE (hexadecimal).
The main header key must be recalculated for version 3, before it is used for each entry. In version 1, there is only one key value for everything, or else, it must be continuously calculated after every entry to decrypt data, but there is the weird story... The keys don't work "logically", as one would expect from all this stuff, trough integer alignment but in a mix of byte, when processing file name, and integer from where it began to read data, for everything else. It is important to notice this because most engines are using some sort of custom seek function that makes no sense, trough offset alignment.
The subheader data is different even where the data is packed. Version 1 works like a "tar" file, with the order: filename size, filename, and file size; then comes the file data. Version 3 is better packed, with only subheader together: absolute offset, file size, data key, filename size, and filename. The version 1 has only one way to decrypt stuff, and recalculate the key, the version 3 does not need to recalculate the key, but has to realign the key by offset in the filename (the only place where this happens).
The data is decrypted the same way in both versions, with the key obtained from headers, after recalculating from the previous subheader entry (except data) in version 1, or just by getting the data key in version 3.
Some facts that should be true about the archive: version 1 always end at EOF (end of file macro); version 3 has the first offset as the end of header, and the position plus the size of last entry points to EOF, but you can only find the last subheader by going trough everything.
Standard subdirectories from "Graphics" tree, used by the main script: "Animations", "Autotiles", "Battlebacks", "Battlers", "Characters", "Faces", "Fogs", "Gameovers", "Icons", "Panoramas", "Parallaxes", "Pictures", "System", "Tilesets", "Titles", "Transitions", and "Windowskins". The RPG Maker XP package does not use the directories "Faces", "Parallaxes", and "System". The RPG Maker VX Ace have indexed entries "Battlebacks1" and "Battlebacks2" instead of "Battlebacks", and "Titles1" and "Titles2" instead of "Titles". These are considered "standard" directories, but archives can load from different paths.
Standard subdirectories from "Audio" tree, used by the main script: "BGM", "BGS" (background sound), "ME" (music effect), "SE". Thankfully, these are REALLY standard among versions and scripts, audio files cannot be loaded from different paths. Other trees that can be used as "standard paths" are "Fonts" and "System".
So, thanks to the archive madness, it is not a good idea to standardize file loading for graphics. The biggest path from RTPs is "/usr/local/share/Enterbrain/RGSS3/RPGVXAce/Graphics/Battlebacks1/DecorativeTile.png" or "C:\Program Files\Enterbrain\RGSS3\RPGVXAce\Graphics\Battlebacks1\DecorativeTile.png" (84 characters). There is also another point of concern, regarding file loading: you can't use indexes (before alphabetic characters) to avoid text case problems, because they are only available in RPG Maker XP.
The RTPs only have four standard extensions used: ".png" for most "Graphics", ".jpg" for a few "Graphics", ".midi" for "Audio\BGM" and "Audio\ME", ".ogg" for "Audio\BGS" and "Audio\SE". The ".jpg" are found exactly in: "RGSS\Standard\Graphics\Battlebacks\", "RGSS\Standard\Graphics\Gameovers\", "RGSS\Standard\Graphics\Panoramas\", "RGSS\Standard\Graphics\Titles\", and "RGSS2\RPGVX\Graphics\Parallaxes\". There is neither ".jpg" nor ".midi" files in RPG Maker VXAce RTP.
Memory reallocation is only done inside "ini.c" and "sdl_misc.c". Originally, "Audio.c" also had reallocation routine that was removed.
The "openres.*" is used to find the file inside archive or RTP (it didn't work well with RTP), but it also fixes the path given given as an argument. Its sole use was because of the path, in rb_audio_s_bgm_play. Only the functions rb_load_data and flag_script_loading remain from the original version.
The use of functions from "read_*" and "write_*", in "misc.c", are always algorithms with fixed address not variable!

It had problems falling back to the RTP, when opening files locally.
The exit function was used in: "font_lookup.c", "gl_misc.c", "sdl_misc.c", and "main.c". In "font_lookup.c", there was a chain beginning and ending in "Bitmap.c": loadFont > rb_font_to_sdl > rb_bitmap_m_draw_text | rb_bitmap_m_text_size; fortunately it was a "single node". In "gl_misc.c", the function type had to be changed because of the checkup, and some didn't even happen correctly.


public static final java.lang.String |
ACCOUNTANT |
"Accountant" |
public static final java.lang.String |
ACTION_CARD |
"Action Card" |
public static final java.lang.String |
ATHLETE |
"Athlete" |
public static final java.lang.String |
BLUE_CARD |
"Blue Card" |
public static final java.lang.String |
BLUE_SPACE |
"Blue Space" |
public static final java.lang.String |
BUY_A_HOUSE |
"Buy a House" |
public static final java.lang.String |
CAREER_CARD |
"Career Card" |
public static final java.lang.String |
COLLEGE_CARREER_CHOICE |
"College Career Choice" |
public static final java.lang.String |
COMPUTER_CONSULTANT |
"Computer Consultant" |
public static final java.lang.String |
DOCTOR |
"Doctor" |
public static final java.lang.String |
GET_MARRIED |
"Get Married" |
public static final java.lang.String |
GREEN_SPACE |
"Green Space" |
public static final double |
HEXAGON_SIZE |
25.0 |
public static final java.lang.String |
HOUSE_CARD |
"House Card" |
public static final java.lang.String |
JOB_SEARCH |
"Job Search" |
public static final java.lang.String |
LAWYER |
"Lawyer" |
public static final java.lang.String |
MAGENTA_SPACE |
"Magenta Space" |
public static final int |
MAX_MONEY |
1000000 |
public static final int |
MAX_PLAYER |
3 |
public static final int |
MIN_MONEY |
50000 |
public static final int |
MIN_PLAYER |
2 |
public static final int |
MONEY_INC |
50000 |
public static final int |
nCollectBank |
20 |
public static final int |
nCollectPlayer |
5 |
public static final int |
nPayBank |
20 |
public static final int |
nPayPlayer |
5 |
public static final java.lang.String |
ORANGE_SPACE |
"Orange Space" |
public static final int |
PATH_SPACES |
20 |
public static final java.lang.String |
PAY_DAY |
"Pay Day" |
public static final java.lang.String |
PAY_RAISE |
"Pay Raise" |
public static final java.lang.String |
RACECAR_DRIVER |
"Racecar Driver" |
public static final java.lang.String |
RETIREMENT_SPACE |
"Retirement Space" |
public static final java.lang.String |
SALARY_CARD |
"Salary Card" |
public static final java.lang.String |
SERVER |
"Server" |
public static final java.lang.String |
WHICH_PATH |
"Which Path" |


ERP Contest
Menu
Advisors
Rules
Data
Resources
Demos
News Items
Literature
2019 ERP Contest
Leaderboard
LITERATURE
Hull Tactical Articles
Return Predictability and Market-Timing: A One-Month Model
Seasonal Effects and Other Anomalies
A Practitioner's Defense of Return Predictability
Academic literature
A Comprehensive Look at The Empirical Performance of Equity Premium Prediction
Reference books
Fox, Justin. "The Myth of the Rational Market."
Mackenzie, Donald. "An Engine, Not a Camera: How Financial Models Shape Markets."
Burton G. Malkiel. "A Random Walk Down Wall Street: The Time-Tested Strategy for Successful Investing (Ninth Edition)"


Biswanath received his B.Sc and M.Sc in Zoology from University of Calcutta, India. After finishing his M.Sc in 2006, he joined the lab of Prof. Sandip K Bandyopadhyay at the Department of Biochemistry, IPGME&R Calcutta for PhD studies. His doctoral work was focused on dissecting the impact of different biological modifiers in NSAID-induced gastric inflammation. After finishing PhD in 2010, Biswanath moved to Prof. Rory A. Fisher’s laboratory at the Carver College of Medicine & Holden Comprehensive Cancer Centre at the University of Iowa, USA. His research focus was to dissect the role of G-protein signalling and its regulators in physiology. Biswanath stayed in the same laboratory for 4 years and 10 months. He is the recipient of independent American Heart Association (AHA) postdoctoral fellowship, multiple international travel awards, best poster award at ASBMB and Junior Scientist Award in Pharmacology (during postdoctoral tenure). As a next career step, Biswanath returned to India at the age of 32 years with both prestigious Ramalingaswami (DBT) and Ramanujan (DST) Fellowship leaving his AHA fellowship to start his independent scientific career. He joined the Department of Zoology, University of Calcutta with Ramalingaswami Fellowship in January 2015 and worked there for 2 years before he moved as Assistant Professor to the Centre of Biomedical Research (CBMR), SGPGI Campus at Lucknow in the beginning of 2017. He has currently 3 CSIR PhD students working with him. His research laboratory is focused on the molecular understanding of different G-protein regulators in cancer and cardiovascular phenotype.
Positions/Employment:
2006 - 2010 PhD Student, Department of Zoology, University of Calcutta, India
March 2010 - Dec 2014 Postdoctoral Research Scholar, Dept. of Pharmacology, University of Iowa, USA
Jan 2015 – Jan 2017 Ramalingaswami Fellow (DBT), Department of Zoology, University of Calcutta, India
Jan 2017 – date Assistant Professor, Centre of Biomedical Research (at SGPGI campus),Lucknow, India
Awards:
2011 Holden Comprehensive Cancer Center travel award, Experimental Biology Meeting, Washington, DC
2012 American Society of Biochemistry and Molecular Biology (ASBMB) travel award, Experimental Biology Meeting, San Diego, CA
2013 Holden Comprehensive Cancer Center travel award, Experimental Biology Meeting, Boston, MA
2013 ASBMB travel award, Experimental Biology Meeting, Boston, MA
2014 ASBMB travel award, Experimental Biology Meeting, San Diego, CA
2014 ASBMB Best Poster Award (Signaling Transduction Section), Experimental Biology Meeting, San Diego, CA
2014 Selected as a YIM Postdoc Candidate, YIM Boston, USA
2014 - 2016 American Heart Association (AHA) Postdoctoral Fellowship, USA
2014 American Radiolabelled Chemical Junior Scientist Award in Pharmacology
2015 - 2020 Ramalingaswamy Re-entry Fellowship (DBT)
2015 - 2020 Ramanujan Fellowship (DST, didn’t accept)
Reviewer responsibilities:
2017 - present Editor, Journal of Molecular Genetics
2013 - present Assistant Editor of “Journal of Experimental Biology and Agricultural Sciences”
2014 - present Technical Editor of “South Asian Journal of Experimental Biology”
2013 - present Peer Reviewer of “International Immunopharmacology” (Elsevier Journal)
2013 - present Peer Reviewer of “Cancer Biology & Medicine”
2013 - present Peer Reviewer of “Life Sciences”
2013 - present Peer Reviewer of “FEBS Open bio”
2013 - present Peer Reviewer of “BioMed Central”
2013 - present Peer Reviewer of “Biology - Open Access Biological Sciences Journal”
2014 - present Peer Reviewer of “Indo-European Journal of Pharmaceutical Sciences”
Administrative Responsibilities:
March 2017 – present Member, PhD Admission Program of CBMR
March 2017 – present Safety & Security Officer, CBMR
May 2017 – present Assistant Warden, CBMR Hostel
Mr. Arnab Pramanick: I completed my M.Sc from the University of Calcutta in 2014 and joined the BM laboratory in August 2015 with CSIR fellowship (Rank 21). My research focus is to dissect the pleiotropic role of RGS6 in breast tumour suppression with special emphasis to identify the mechanism of loss of RGS6 and its impact on hypoxia induced epithelial to mesenchymal transition.
Email<EMAIL_ADDRESS>Ms. Sreemoyee Chakraborti: After finishing my masters in 2015 from the University of Calcutta, I joined the BM laboratory in August 2015. I am CSIR (NET-LS) and GATE qualified. My research direction is to identify the impact of G5 protein in cardiovascular regulation. In addition, I am also working on how long term use of different NSAIDs can cause cardiovascular complications and the underlying G-protein dependent & independent mechanisms.
Email<EMAIL_ADDRESS>Ms. Swranima Pandey: My hometown is Jamshedpur. I have done my B.Sc and M.Sc from the University of Delhi. After qualifying CSIR (Rank 59), I joined the BM lab in June 2017 through CBMR PhD program. My project deals with how RGS6/G5 functions to modulate cellular senescence.
Email:


Weekly Feminist News Digest - 7/22/2013-7/26/2013
The Weekly Feminist News Digest is a service of the Feminist Majority Foundation, made possible through the support of individuals like you. Your contribution is vital to the continued success of our empowering work. Donate Today [ https://salsa.democracyinaction.org/o/1400/shop/custom.jsp?donate_page_KEY=2117 ]!
Top Feminist News - 7/22/2013 -7/26/2013
Jul 26 2013
Cancellation of Sequestration Would Lead to 1.6 Million New Jobs
According to a new analysis released by The Congressional Budget Office, a full cancellation of the sequester by August 1 would allow for the creation of up to 1.6 million jobs…
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14503 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14503 ]
Jul 25 2013
House Passes Bill Investigating Discharges of Military Sexual Assault Survivors
Yesterday the House passed an amendment to the 2014 defense appropriations bill that seeks to increase support of military sexual assault victims who have faced separation from the military based on alleged mental disorders…
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14498 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14498 ]
Jul 24 2013
Federal Judge Delays Enforcement of Alabama Abortion Law
US District Judge Myron Thompson has delayed the implementation of an Alabama law that would severely limit access to abortion services from August 2013 to March 24, 2014…
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14495 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14495 ]
Jul 23 2013
Federal Judge Blocks ND Six Week Abortion Ban
Yesterday a federal judge placed a temporary block on North Dakota’s ban on abortions after a fetal heartbeat is detected…
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14494 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14494 ]
Jul 22 2013
Groundbreaking Journalist, Helen Thomas, Dies at 92
Helen Thomas, a trailblazing journalist who has been a fixture in White House reporting for over 40 years, died on Saturday at the age of 92…
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14490 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14490 ]
Other Feminist News This Week
Jul 26 2013
Outrage Over Continuing Child Marriage in Nigeria
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14501 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14501 ]
Jul 26 2013
North Carolina Senate Passes Abortion Restrictions
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14502 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14502 ]
Jul 25 2013
Senate Passes Student Loan Reform Bill
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14499 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14499 ]
Jul 25 2013
DOJ Will Counter Gutting of Voting Rights Act
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14500 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14500 ]
Jul 24 2013
NC Advances Extreme Voter Suppression Legislation
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14496 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14496 ]
Jul 24 2013
Teva Pharmaceuticals Gets Exclusive Rights to OTC Emergency Contraception
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14497 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14497 ]
Jul 23 2013
USC Under Investigation for Mishandling Sexual Assault Cases
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14492 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14492 ]
Jul 23 2013
New Report Shows FGM in Decline, but 30 Million Girls Still at Risk
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14493 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14493 ]
Jul 22 2013
Hobby Lobby Win Injunction Against Birth Control Mandate
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14489 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14489 ]
Jul 22 2013
Review of “Stand Your Ground” Laws Receives Bipartisan Support
http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14491 [ http://www.feminist.org/news/newsbyte/uswirestory.asp?id=14491 ]


We have as values the search for excellence, the personal, academic and professional improvement on an constant and integrated way
We look to participate on FIRST competitions and represent our state and country in the World's Greatest Robotics Competition
We aim to motivate you students into STEAM filed - Science, Technology, Engineering, Arts and Mathematics
* Ongoing Projects
“We decided to support the team, because we believe that through these projects talents can be discovered, people that can make the difference to mankind. This kind of experience enriches people and brings lots of benefits to professional life.”
“The acknowledgment that they got, the academic institution and the city of Florianopolis has received, by the achievements on competition, is unthinkable”
“You left an Island in the South of the World and went to the USA to compete together with different countries, and even managed to stand out. The Municipal Council of Florianópolis congratulates the work you have done”
The guys and ladies who develop the robot structure, 3D model the digital project and create solutions to let the machine resistent, efficient and ferocious.
Give live to the robot and manage the structure assembly, batteries, pneumatics and wireless communication with their knowledge on Circuits, Digital and Analogic Electronics, Motors and drive train.
The artists who take care of social platforms, documents, team image, presentations, media and sponsors contact,
partnerships and more...
(and they made this cool website)
System.out.println("The part of the team responsible of developing the code that makes the robot see, be
controlled, take decisions, walk by himself and everything else");
Programming Language: Java


--- layout: index title: Home ---
I can provide sessions that are flexible to your schedule and can help you learn a variety of computing languages, including:
During tutorials, I work with students to create simple projects that help them understand programming. My focus is to get students to start coding as soon as possible and build up their confidence to be able to build their own unique projects. My one-on-one tutorials works matches the style and pace of each student’s learning preferences.
If you are a beginner, classes will focus on the fundamentals of programming and gaining the experience you need to build your own projects.
I will teach basic use of git based source control and IDE setup. All projects worked on during sessions will be released open source on git, with the GNU AGPLv3 licence. This means others can use and learn from code created during sessions.
I do not teach to an exam or offer an accreditation - my goal is to help you develop key industry skills and start working on a portfolio. If you are seeking employment within a coding-relating field, your portfolio will demonstrate to future employers that you know and can use the language. I also encourage students to make use of resources, such as Hackerrank and Edabit (link).
During the first session, I will get you set up with:


| From Name | Concept | Rel Type | Lvl | Terminology | Editor | |
|---|---|---|---|---|---|---|
| {{relationship.fromName}} | {{relationship.fromId}} | {{relationship.relationshipType}} {{relationship.additionalRelationshipType}} | {{relationship.level}} | {{relationship.terminology}} | {{relationship.lastModifiedBy}} |


Facebook
Email
Password
Log in
Connect with all your friends!
See photos and updates in your news feed.

Sign Up
Birthday
Month
Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
Day
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
20
21
22
23
24
25
26
27
28
29
30
Year
1998
1997
1996
1994
1993
1992
1991
1990
1989
1988
1987
1986
1985
1984
1983
1982
1981
1980
1979
1977
1977
1976
1975
1974
1973
1972
1971
1970
1969
1968
1967
Female
Male
Sign Up!


What's App
Warm up
♬ Music ♬
Music from:
Round 1
♬ Music ♬
Icon from:
Round 2
Icons from:
Round 2
Icons from:
Round 3
Icons from:
Round 3
Icons from:
Round 4
Icons from:
Round 4
Icons from:
Round 5
Icons from:
Round 5
Icons from:
Round 6
Icons from:
Round 6
Icons from:


IQStack
The IQStack project is made up of several sub-projects that relate to distributed automation and configuration management that is simple, fast and powerful. To make it simple we approach the design in a layered approach with each layer being more abstract and more opinionated. Think of it akin to a Cloud environment where you have IaaS, PaaS and SaaS layers with each taking advantage of the layers below but being able to access code from any layer.
Under heavy development
Not all parts are available for public access at this time but will be soon.
Languages used
Important: In today's environments there are no longer a single anything. Meaning, we live in a polygot world in the DevOps community and thus IQStack thinks of programming languages as a tool. IQStack's primary language is Go but the complete list is:
- Go for its speed, true concurrency, compiled code and single file distribution.
- Python for its simplicity and rich toolset.
- Shell scripts because you can't really live without them no matter how hard you try :).
- Jsonlang! Jsonlang is a powerful and flexible templating language in Json. See more below.
Project
If you would like to checkout the whole project then simply clone https://github.com/iqstack or better yet, learn more about the project by contributing. Simply fork the sub-project or the whole project and begin making contributions.
Story
My name is Chris Jones and I have worked at many large enterprises such as Bloomberg, Turner Broadcasting (CNN, TBS, etc), Internap. I have also work in contracting roles for Cisco, AT&T, MLB, Accenture and a lot more. I have been in development, systems engineering, architecting and management throughout my career. I remember the days of using installers to generate custom Windows MSIs and just plain tar balls on Linux (before good package management). The point is we continue to search for better ways to control our fleets of bare metal, appliances, routers/switches, public and private cloud environments in a pipeline oriented way that is as structured as our given organization or group can handle.
Over the last 5+ years we all have seen good projects like Puppet, Chef, Ansible, SaltStack and others born. I have personally used all of them in some capacity or another. However, no matter what large organization you find yourself in there are always different groups using different products to help manage their infrastructure (application or environment) even if the company policy is to use only one. It typically boils down to "I like Ansible and SaltStack because they're Python or I like Puppet or Chef because they're Ruby." Also, everywhere is going to have some kind of home-grown dark magic piece of code that "Bob" wrote a few years ago and no one wants to touch it out of fear of having to support it.
In my current role I use Chef and Ansible on a daily basis (one I like and one I'm forced to like). I also support other projects that use Puppet and a sprinkle of Salt as well. There are some things that each of these do very well and other tasks they are horrible at. My goal with this project is to take the "good" from each, fix the "bad" and just get rid of the "ugly".
In my current environment I have outside Cloud services (AWS and Google Compute) plus VERY large OpenStack clusters with VERY large distributed Object Storage (Ceph) clusters. We have to use multiple products because not one of the ones I have mentioned can do everything we need well. They keyword is well. The given product may be able to do 'something' but it may take more work because it maybe simply not built for dynamic modern infrastructures (platform and application) in a distributed environment where you need to version, upgrade, rollback and/or patch easily.
More to come...


Create a class roster
Our Excel CSV export sample creates a CSV file to be imported into a classroom management service.
1) Select your management tool
2) Create class roster
When you've filled in your roster, export a CSV file to your computer and then import into the tool.
3) Export your roster
Excel can export your class roster as a .CSV file. Click the help button to learn how.
More information


| Dibenzylbutanes |
Niranthin |
Phyllanthus niruri L. (Euphorbiaceae)
|
Whole plants |
HBV |
15.6~25.1 |
369.9 In HepG 2.2.15 |
In Vitro
In Vivo
|
inhibits DHBV DNA replication and HBV antigen expression. |
[
12,
16]
|
| NDGA |
Larrea tridentate (Zygophyllaceae)
|
Leaves (resin) |
DENV |
No data |
No data |
In Vitro |
targets genome replication and viral assembly |
[
22,
23,
24,
25]
|
| HCV |
30 |
70 in Huh7 |
NDGA-mediated alterations of host lipid metabolism, LD morphology, and VLDL transport affect HCV proliferation |
| WNV/ZIKV |
7.9/9.1 |
162.1 in Vero |
WNV: disturb the lipid metabolism probably by interfering with the sterol regulatory element binding proteins (SREBP) pathway |
| IAV |
In Vivo |
suppresses replication of IAV and induction of cytokines, trypsin, and MMP-9, with improved animal survival |
| TMP |
Larrea tridentata (Zygophyllaceae)
|
Leaves (resin) |
WNV/ZIKV |
9.3/5.7 |
1071.0 in Vero |
In Vitro |
impaires viral replication |
[
24,
26,
27,
28,
29,
30]
|
| poxvirus |
No data |
No data |
In Vitro |
prevents the efficient spread of virus particles from cell to cell |
| HSV |
43.5 |
160 in Vero |
In Vitro |
TMP inhibits both these viruses replication by blocking the binding of the host cell transcription factor, Sp1, to viral promoters. |
| HIV |
25 |
No data |
In Vitro |
| HPV |
In Clinical |
selectively interferes with HPV viral genes E6/E7 with Sp1dependent promoters, and induces apoptosis by inactivation of the CDC2/cyclin B complex (maturation promoting factor) and production and phosphorylation of survivin |
| Secoisolariciresinol dimethyleTher acetate |
Justicia procumbens (Acanthaceae)
|
Air-dried aerial parts |
HIV-1 |
5.27 |
11.6 |
In Vitro |
waiting for the deeper research |
[
31]
|
| Dibenzyltyrolactones |
ATG |
Arctium lappa L. (Compositae)
|
Whole plants |
IAV |
No data |
No data |
In Vitro
In Vivo
|
induce the production of interferon |
[
32,
33,
34,
35,
36]
|
| HIV-1 |
No data |
No data |
In Vitro |
inhibit the expression of protein P17 and P24 of the HIV-1 virus |
| Yatein |
Chamaecyparis obtuse (Cupressaceae)
|
Dried leaves |
HSV-1 |
30.6 ± 5.5 |
>100 |
In Vitro |
inhibiting HSV-1 alpha gene expression, including expression of the ICP0 and ICP4 genes, and by arresting HSV-1 DNA synthesis and structural protein expression in HeLa cells |
[
37,
38]
|
| Hinokinin |
Chamecyparis obtusa (Cupressaceae)
|
Woods |
HBV |
No data |
No data |
In Vitro |
waiting for the deeper research |
[
12,
45,
46,
47]
|
| HIV |
<28 |
527 in H9 |
|
| SARS-CoV |
>10 |
>750 in Vero |
| HCMV |
No data |
115 in A549 |
| Arylnaphthalenes |
Diphyllin |
genus
Haplophyllum (Rutaceae)
|
Epigeal part |
ZIKV |
0.06 |
3.48 in MDCK |
In Vitro |
vacuolar ATPase (V-ATPase) inhibitors |
[
48,
49,
50,
51,
52]
|
| IAV |
0.1–0.6 in different strains |
24.1 in A549 |
inhibit endosomal acidification, thus interfering with downstream virus replication |
| DGP |
Justicia gendarussa (Acanthaceae)
|
Stems and leaves |
ZIKV |
0.01–0.07 |
15–32 |
In Vitro
In Vivo
|
prevented the acidification of endosomal/lysosomal compartments in target cells, thus inhibiting ZIKV fusion with cellular membranes and infection. |
[
51,
53,
54,
55]
|
| HIV-1 |
15–21 nM |
No data |
In Vitro |
HIV-1 reverse transcription |
| Aryltetralins |
|
Dysosmae Verspiellis & Podophyllum peltatum (Berberidaceae)
|
Roots and stems |
Papilloma virus |
Launched in China |
waiting for the deeper research |
[
3,
11,
56,
57,
58]
|
| Substituted tetrahydrofurans |
lariciresinol-4-
O-β-
d-glucopyranoside
|
Isatis indigotica Fort (Cruciferae)
|
Roots |
IAV |
50 μg/mL |
>200 μg/mL |
In Vitro |
pharmacological actions on the immune system, signal transduction, cell cycle, and metabolism |
[
62,
63]
|
| (
7′R,
8S)-9′-lariciresinol-(α-methyl)-butanoate
|
HIV-1 |
0.66 mM |
0.67mM in C8166 |
In Vitro |
No report |
[
64]
|
| Isatindolignanoside A |
CVB3 |
25.9 |
>100 |
In Vitro |
waiting for the deeper research |
[
65]
|
| Clemastanin B |
IAV |
0.087–0.72 mg/mL |
6.2–7.5 mg/mL |
In Vitro |
targets viral endocytosis, uncoating or RNP export from the nucleus |
[
66]
|
| 2,6-diarylfurofurans |
Phillygenin |
Fructus Forsythiae (Oleaceae)
|
Fruits |
IAV |
In Vivo |
reduce inflammation caused by IAV. |
[
57,
58]
|
| Sesamin |
Sesamum indicum (Pedaliaceae)
|
Seeds |
inflammatory cytokines induced by H1N1 |
No data |
No data |
In Vitro |
anti-inflammatory cytokines in human PBMCs |
[
67]
|
| Dibenzocyclooctene |
Bicyclol |
Analogue of schizandrin C from
Fructus Schiznadrae
|
HBV |
Launched in China |
inhibit virus replication in patients infected with HBV |
[
76,
77,
78,
79,
80]
|
| |
|
|
HCV |
30 |
No data |
In vitro/Vivo/Clinical |
modulation of cytotoxic T lymphocytes
up-regulating the host restrictive factor (GLTP) for HCV replication, and causing spontaneous restriction of HCV replication
|
|
| |
Rubrifloralignan A |
Schisandra rubriflora (Schisandraceae)
|
Fruits |
HIV-1 |
40.46 |
123.35 |
In Vitro |
inhibit the early stage of HIV-1 replication |
[
81,
82,
83]
|
| 1,4-Benzodioxane lignans |
Silymarin |
Silybum marianum (Compositae)
|
Seeds |
HCV |
In Clinical |
blocked HCV production, increased anti-inflammatory, anti-proliferative gene expressions without affecting serum albumin levels |
[
84,
85,
86,
87,
88,
89]
|
| IAV |
No data |
No data |
In Vitro |
inhibition of late viral RNA synthesis |
| Dimer of strebluslignanols |
(
7′R,
8′S,
7″R,
8″S)-erythro-strebluslignanolG
|
Streblus asper (Moraceae)
|
Roots |
HBV |
3.67/HBsAg 14.67/HBeAg |
No data |
In Vitro |
inhibit the secretion of HBsAg and HBeAg |
[
90]
|
| Secolignans |
Peperomins A&B |
Peperomia pellucida (Piperaceae)
|
Whole plants |
HIV-1 IIIB |
5 |
No data |
In Vitro |
related to the cytotoxicity expressed as CC
50 of compounds
|
[
98,
99]
|


{% include head.html %}
404 - Page not found :(
The requested page could not be found.
Lead me back!


Thank you for checking out my portfolio! I'm a full stack developer and entrepreneur, working as a freelancer since 2015. During my two and a half year career, I have worked in Los Angeles, Seattle, and Chicago. Nowadays, I'm back in LA, coding and trying to motivate myself to use my new Bowflex (unsuccessfully).
I've been passionate about databases and algorithms my entire career, but more recently, I've been working primarily on front-end development, using JavaScript, Bootstrap, and jQuery. I've also started working more with WordPress, WooCommerce, and Shopify. I earned a B.A. from University of California, Irvine, majoring in Social Ecology: Planning, Policy, and Design, and I sharpened my self-taught web-development skills at DevBootcamp.
Great things are done by a series of small things brought together.


We're sorry but bsicstat doesn't work properly without JavaScript enabled. Please enable it to continue.
KOKLATECH
@koklatech.github.io
let us tech care of you!


BLUETOOTH-AGENT(1) BLUETOOTH-AGENT(1) NAME bluetooth-agent - Bluetooth pass agent SYNOPSIS bluetooth-agent DESCRIPTION Bluetooth-agent is pass agent program for bluetooth. USAGE bluetooth-agent [--adapter adapter-path] [--path agent-path] <passkey> [<device>] AUTHOR This manual page was written by Nobuhiro Iwamatsu<EMAIL_ADDRESS>for the Debian GNU/Linux system (but may be used by others). March 2010 BLUETOOTH-AGENT(1)


Robert Pearce
💜 My mission is to help developers be as productive as possible in their
work and their learning. Helping people be the best developers they can be
is what drives me to make, share, and teach. If you'd like to support me,
check out my GitHub
sponsorship page.
🗺 I'm from Charleston, SC, USA, and I work on, write about, and mentor
folx on topics like JavaScript, React, NodeJS,
TypeScript, maintaining open source software, functional programming,
web accessibility, Nix, Haskell,
Hakyll, Ruby, Ruby on Rails,
Bash, dotfiles, and more.
🌱 Learning: Elixir/Phoenix, Go, and Rust.
Notes
| Date |
Title |
$for(posts)$
| $date$ |
$title$ |
$endfor$


Travis Scott's Nike Air Force 1 Low Already Reselling For 5x Retail Price
Travis Scott's latest Nike AF1 Low fetching more than $750 on StockX.
by Kyle RooneyThere's yet another "Cactus Jack" sneaker collab dropping this weekend - this time taking shape in the form of a Nike Air Force 1 Low. Men's sizes of the limited edition sneakers will retail for a mere $160, but the kicks are already reselling for nearly five times that on StockX.
With an average resale price of over $750, Travis Scott's latest Nike AF1 Low rivals the super exclusive white colorway that debuted in 2017 as part of Nike's AF100 collection. Even his 2018 "Sail" AF1 Low collab goes for an average of $500, so you can expect the latest "Cactus Jack" Air Force 1 Low to be another very valuable pickup this weekend.
The 2019 collab is much busier than the two that dropped in 2017 and 2018, as it features a patchwork design highlighted by a combination of materials including leather, suede, canvas and corduroy. The kicks are also decked out in a dizzying array of colors such as gold, purple, navy and black, with a zip-up shroud covering the tongue and laces.
Check out the official photos below.


public class ArcAlgorithms
extends java.lang.Object
| Modifier | Constructor and Description |
|---|---|
private |
ArcAlgorithms() |
| Modifier and Type | Method and Description |
|---|---|
static float |
distBetweenPoints(Point a,
Point b)
Calculates the distance between any two points.
|
private static double |
distP2toP3(double radius,
double z)
Assume p2 is the "takeoff" point and p3 is the final target point, this private helper method is used to
calculate the distance between p2 to p3, given only the radius and an intermediate value z.
|
static Point |
findCircleCenter(Point p1,
float radius,
float heading)
Calculates the center of a circle that rests on the tangent of the vehicle's starting heading.
|
static Point |
findP2(Point c,
Point p3,
float radius)
This method finds P2 if the vehicle is traveling to a point (with no heading).
|
static Point |
findPointOnHeading(Point original,
float heading,
float distance)
Given a starting point and heading, this method will calculate another Point that is distance away from the first
point.
|
static float |
getArc(Point p1,
Point p2,
float radius,
float heading,
boolean forward)
If p1 is the starting point of the robot, and p2 is the point at which the robot is pointing
directly at the target point, this method calculates the angle to travel along the circle (an arc)
to get from p1 to p2.
|
static float |
getArcBackward(float forwardArc)
Quick calculation of reverse arc instead of going through getArcLength() math again.
|
static double |
getArcOld(Point p1,
Point p2,
double radius)
Deprecated.
This method is no longer used because it can't calculate >180 angles. Delete any time.
|
static Move[][] |
getAvailablePaths(Pose start,
float turnRadius1,
Pose destination,
float turnRadius2)
This method gets all the available paths given a start Pose and destination Post.
|
static Move[][] |
getAvailablePaths(Pose start,
Point destination,
float turnRadius)
This method calculates the moves needed to drive from a starting Pose to a final Point.
|
static Move[] |
getBestPath(Move[][] paths)
This helper method accepts a number of paths (an array of Move) and selects the shortest path.
|
static Move[] |
getBestPath(Pose start,
float turnRadius1,
Pose destination,
float turnRadius2)
Find the shortest path for a steering vehicle between two points.
|
static Move[] |
getBestPath(Pose start,
Point destination,
float radius)
This method generates the shortest path from a starting Pose to a final Point.
|
static float |
getHeading(float oldHeading,
float changeInHeading)
Given the former heading and the change in heading, this method will calculate a new heading.
|
static float |
getHeading(Point from,
Point to)
Calculates the heading designated by two points.
|
static float |
getTriangleAngle(Point p1,
Point p2,
Point pa)
This method calculates the angle generated by three points.
|
public static Move[] getBestPath(Pose start, float turnRadius1, Pose destination, float turnRadius2)
start
- The starting PoseturnRadius1
- The turning radius for the first arc.destination
- The destination PoseturnRadius2
- The turning radius for the final arcpublic static Move[][] getAvailablePaths(Pose start, float turnRadius1, Pose destination, float turnRadius2)
start
- The starting PoseturnRadius1
- The turning radius for the first arcdestination
- The destination PoseturnRadius2
- The turning radius for the final arcpublic static Move[][] getAvailablePaths(Pose start, Point destination, float turnRadius)
start
- The starting Posedestination
- The destination PointturnRadius
- The turn radiuspublic static Move[] getBestPath(Pose start, Point destination, float radius)
start
- The starting Posedestination
- The destination Pointradius
- The turn radiuspublic static Move[] getBestPath(Move[][] paths)
paths
- Any number of paths.public static Point findPointOnHeading(Point original, float heading, float distance)
original
- The starting pointheading
- The heading of the pointdistance
- The distance away from this point to calculate a new pointpublic static float getTriangleAngle(Point p1, Point p2, Point pa)
p1
- An outer point, connects only with pa.p2
- An outer point, connects only with pa.pa
- The central point, connects with both p1 and p2.public static float getHeading(float oldHeading, float changeInHeading)
oldHeading
- The old heading (original heading of robot) in degreeschangeInHeading
- The change in angle, in degrees.public static float getArc(Point p1, Point p2, float radius, float heading, boolean forward)
p1
- Start positionp2
- Take-off point on the circleradius
- Radius of circle AKA the turnRadiusheading
- Start heading vehicle is pointed, in degrees.forward
- Will the vehicle be moving forward along the circle arc?public static float getArcBackward(float forwardArc)
forwardArc
- @Deprecated public static double getArcOld(Point p1, Point p2, double radius)
p1
- Start positionp2
- Take-off point on circleradius
- Radius of circleprivate static double distP2toP3(double radius, double z)
radius
- The turn radius of the vehicle.z
- An intermediate value.public static float distBetweenPoints(Point a, Point b)
a
- The first pointb
- The second pointpublic static float getHeading(Point from, Point to)
from
- Starting point.to
- Final point.public static Point findP2(Point c, Point p3, float radius)
c
- The center point of the turning circle.p3
- The final target pointradius
- The turn radius.public static Point findCircleCenter(Point p1, float radius, float heading)
p1
- the starting point of the vehicle.radius
- Turning radius of vehicle. A negative value produces a circle to the right of the heading.heading
- Start heading of vehicle, in degrees (not radians).


wasmtime.dev
HomepageThe Wasmtime homepage is generated with the Cobalt static site generator.
Every file and directory that isn't prefixed with .
or _
ends up in the
built website.
Markdown files are rendered to HTML.
Each file is processed by the liquid
templating engine so we can
include/extend/loop/etc should we choose to.
_cobalt.yml
: Cobalt static site generator configuration.index.md
: The markdown source for the main index.html
page.install.sh
: The bash script users curl to install Wasmtime on macOS and
Linux._layouts/
: HTML skeletons that we can use/extend for individual pages.
_layouts/default.liquid
: The default HTML skeleton for our website.assets/
: Static assets: JS, CSS, images, fonts, etc...
assets/css
: CSS files.
assets/css/fonts
: Webfonts.assets/images
: Image files.assets/scripts
: JS scripts._site/
: The built website. This is checked into the repo so github pages can
access it. Don't edit these files by hand, edit the sources and rebuild
instead. Don't review these files, review the original sources instead. CI
will check that _site
doesn't diverge from rebuilding the original sources.Install the cobalt
CLI:
$ cargo install cobalt-bin
To re-build the wasmtime.dev
website, run
cobalt build
The built site will be in _site/
.
To start a local server and rebuild the website whenever a file is changed, run
cobalt serve
and visit http://localhost:1024/ in your browser.


Originally created for the VeryPoliteGamer community, ImpostorBot is a Discord bot designed to help Twitch streamers easily invite their viewers to play Among Us without sharing the invite code publicly. No need for private messaging or other long manual solutions. Once installed use ?info to get started!
During the COVID19 lockdown and the unexpected trend of Among Us, I began developing a simple Discord Bot for experimentation in Node.JS and bot development. The bot found its direction as a solution for inviting twitch viewers to play with their favorite streamers in the popular online game Among Us, thus getting the name Impostor Bot.
The main goal of this project, first and foremost, was to create my first discord bot, with purpose coming after the fact, so I started by making a basic Hello World script and deploying it to Discord. After this, I began brainstorming ideas through the research of DiscordJS documentation and other bots created by the community.
After playing a few games of Among Us one night and discussing potential solutions for inviting people in the Discord without leaking the code, I had the genius idea of using members of a voice chat and sending private messages to all of them on a bot command. So I challenged myself to my fellow moderators in the VeryPoliteGamer community Discord and got the entirety of the bot idea done in a single night.
I learnt I need to be confident, confident I can achieve things in record time if I put my mind to it and focus. This project is an amazing example of what I'm capable of when I get stuck into a new project. While the project is fairly simple and short to complete, I need to take the emotion and the drive I had during its development and apply it to all future projects.
Another lesson I learnt is the importance of Hello World programs and starting simple. I get impatient when it comes to new projects and new engines/platforms, and soon find myself lost. That's why Hello World or other simple programs, are the perfect starting point to get a grasp before diving headfirst. Without starting simple to learn about DiscordJS and creating bots, I'm doubtful this project would be complete right now.


Venue: Campus Activity Centre
The Office of Research and Graduate Studies is in the process of assessing the impact of its current Strategic Research Plan, and is looking for further direction on its implementation during its final two years.
It is our goal to include all key stakeholder groups, beginning with early career, mid-career and full professors. If you fall into one of these three groups you’re invited to participate in the upcoming Strategic Consultation Dialogues.
Dialogue IV: Monday, Nov. 20, 3pm – 5pm in the CAC 130 (The Alpine Room) Graduate Studies program coordinators, 3pm – 4pm; graduate students, 4pm – 5pm
Food and drink will be provided and no RSVP is required. You are welcome to come for all or part of the sessions. Bring your ideas and questions, engage in the structured dialogue, and ensure that your voice is heard as we discuss priorities.
We look forward to working together during this strategic review process.
No children allowed.
No pets allowed


iCaching - macOS Review
iCaching - macOS Review
I’ve been geocaching for a few years now and I’ve been using Geocaching Swiss Army Knife (GSAK) for the past year. It’s a handy program for keeping track of caches that I’ve found, as well as organising GPX files for import on to my Garmin or phone.
However, the program is Windows only. Which isn’t the end of the world, as I have a Windows machine, but I’ve also got a Mac and it tends to be my main machine for getting work done at home, so it’s often on.
As an alternative to GSAK on the Mac, I discovered iCaching.
iCaching is available in the Mac App Store - more information can be found on its website. It is very similar to GSAK and replicates most of the same functionality. It allows you to import pocket queries direct from Gecaching.com as well as GPX files and others. You can also log geocaches direct from the app, including trackables and adding pictures.
Logging
A main use of the software for me is logging geocaches that I’ve found. I normally use a phone for caching, using either Cachly or Locus Maps but I do also have a Garmin eTrex for when I’m out as well. When I’m doing a number of caches at once, I’ll log the caches offline and then upload from the comfort of home. Once I come home, I then either write the caches up on the device if using my phone, but more often will use iCaching or GSAK to write the log and upload them directly from the application.
You’d be forgiven as to wonder why the software is needed, as logging can be done online, however, iCaching offers some additional benefits over logging online, primarily, the ability to auto visit trackables for an imported field note file.
In addition, once you add items to your database, you can then easily export them to a GPX file for use in on a GPS or on a phone. You can view all the data on the imported caches within the app.
Searches
iCaching has some benefits over GSAK - a stand out feature for me is the ability to run saved searches on the downloaded caches. Whilst GSAK does do searches (they call it filters), iCaching is more straight forward in its searches they can be quite complicated if needed to be.
For example, I have a smart folder created that searches my database for geocaches that have been archived and that I haven’t found (but have logged a did not find) - i.e. it’s a cache that I’ll now never find. This means that I can delete the cache from my list as it’s pointless me ever trying to turn the icon into a smiley face!
Maps
One of the nicer benefits over GSAK is that iCaching can display caches on a map.
In this way, you can view and browse, similar to that of the Geocaching website. This means that you can make use of the excellent search features in iCaching and then view these on the map - making it more powerful than the inbuilt filters that are available on the geocaching website map.
The mapping function uses the inbuilt Apple Maps function but also allows you to view the maps using OpenStreetMaps and OpenCycleMaps, so you can view the map on the map provider you prefer.
Conclusion
Whilst iCaching isn’t perhaps as feature rich as GSAK and lacks the extension features of GSAK, I find that it does all of the features that I need it to do. It is perhaps software that not everyone needs for geocaching and you can very happily go geocaching without it, but for me I find that it fills an additional aspect for me that I could need. It means that I can download and merge GPX files, as well as tracking my found caches nicely.
Overall, I find it a worthwhile tool within my geocaching toolbox and is worth the money I paid for it.


Use .container-fluid
to wrap content and center a page to the grid. Though rare, .container-fluid
can be nested as well.
.container-fluid
class.

 Content wrapped in parent with a .container-fluid class.


|
|
virtual void | update (float dt) |
| |
|
virtual void | onConstruct () |
| |
|
virtual void | onEnter () |
| |
|
virtual void | onExit () |
| |
|
virtual void | onUpdate (float dt) |
| |
|
virtual void | onPause () |
| |
|
virtual void | onResume () |
| |
|
virtual bool | onTransition (TransitionMode) |
| |
|
| enum | TransitionMode { NONE,
EXITING,
ENTERING
} |
| |
| enum | { MAX_NUM_SCENES = 150
} |
| |
|
static bool | is (const char *name) |
| |
|
static const char * | next () |
| |
|
static const char * | name () |
| |
|
static void | transit (const char *name) |
| |
|
static void | pushTransit (const char *name) |
| |
|
static void | popTransit () |
| |
|
static bool | transitioning () |
| |
|
static bool | running () |
| |
|
static bool | loaded () |
| |
|
static int | counter = 0 |
| |
The documentation for this class was generated from the following files:
- C:/EpicForceBackup/EpicForceEngine/EpicForceEngine/MagnumEngineLib/MagnumCore/BasicScene.h
- C:/EpicForceBackup/EpicForceEngine/EpicForceEngine/MagnumEngineLib/MagnumCore/BasicScene.cpp


The man who scored Nigeria's first worldcup goal
"There are no words to describe all Rashidi Yekini did for Nigerian Football. Thanks for the classic moments legend!"~ Austin Okon-Akpan, Lead Sports Producer, Presenter and Correspondent at Channels Television
Written and coded by Olawale AYODELE.


My Name is
I'm a Graduate Student at New Jersey Institute of Technology
Currently exploring paradigms in the field of Computer Science and Data Science
Computer Science
Graduate Student at New Jersey Institute of Technology with strong background in Agile Methodoligies, Software Development Life Cycle and SCRUM. I'd like to work on a Software Development/Full Stack/Front-end/Back-end/Data Science Domains. Besides this I am also interested in building iOS/Andorid Applications
Computer Architecture | Data Structure and Algorithm | Machine Learning | Big Data
Data Structures | Computer Architecture | Data Base System | Computer Networks
Implemented a new process for creating an ISO image on the Ultrasound Imaging System on WINPE environment, leading to optimization of the process by more than 50% of the previous process.
Developed 3 new features for the TFS dashboard, where the team members could find the information of the team’s progress. For example: the number of passed test cases, the number of failed test cases.
Designed and developed Entity-Framework with Code First approach using C# framework, which helped the team members to work interactively with the database. Streamlining of the TFS dashboard.
Master of Science - Computer Science from New Jersey Institute of Technology with 3 years of experience as Software Developer at SIEMENS HEALTHCARE Pvt Ltd. My core competencies include: Problem Solving, Team Management Software Skills : Java, Python, JavaScript, SQL, HTML, CSS, XML, JSON, Machine Learning Algorithms. Looking for Internship Opportunities starting Summer 2021.
I believe diversity in skills has the same importance to having a complete experitse at one thing .


Desktop publishing began in 1985 with the introduction of PageMaker software from Aldus and the LaserWriter printer from Apple Computer for the Apple Macintosh computer. The ability to create WYSIWYG page layouts on screen and then print pages at crisp 300 ppi resolution was revolutionary for both the typesetting industry as well as the personal computer industry. The term "desktop publishing" is attributed to Aldus Corporation founder Paul Brainerd, who sought a marketing catch phrase to describe the small size and relative affordability of this suite of products in contrast to the expensive commercial phototypesetting equipment of the day. Often considered a primary skill, increased accessibility to more user friendly DTP software has made DTP a secondary skill to art direction, graphic design, multimedia development, marketing communications, administrative careers and advanced high school literacy in thriving economies. DTP skill levels range from what may be learned in a few hours (e.g. learning how to put clip art in a word processor) to what requires a college education and years of experience (e.g. advertising agency positions.)
Automatic Copyright Protection Nearly any original creation is protected by copyright laws, whether or not accompanied by a copyright notice. Therefore, when creating any kind of publication or media display, you cannot copy and use any type of image from the Internet without explicit written permission. Copyright Valid Regardless of Profit A common misconception is that if a copyrighted work is distributed or used in any way without charging others or otherwise profiting, it may be utilized for the project at hand. This is not the case, and may in fact damage the value or exclusivity of the work by making it widely available. Application of the Fair Use Doctrine Just because something is posted on the Internet, that does not mean it is in the public domain and subject to free use at will. The ease of desktop publishing makes this a particularly vulnerable area. The "fair use" concept was designed as part of U.S. copyright law only for news reporting, research or citation to allow for ease of reference and widespread dissemination of information. Even then, any such usage must be attributed and can only include brief excerpts or references. If it generally negates the necessity to buy the work at hand, then it cannot be used. Derivative Works Subject to Copyright Restrictions Any kind of work created through desktop publishing that is substantially or partially based upon something else, whether in written or image form, remains subject to copyright laws. Despite what may be a new work in significantly different form or otherwise not immediately recognizable as the work of another person, it cannot be used without permission. Free Advertising Not a Justification Using desktop publishing to publicize or spread the work of another person may appear to be harmless, and indeed, beneficial to the owner of the work at hand. But only that person can grant permission, and no one else has the right to determine the relative benefits of any kind of usage. This amounts to little more than a rationalization, and is not permitted under copyright laws. Even though permission in such cases is often granted, you must still request permission.
Graphic design jobs involve the creative process of coming up with the concepts and ideas and arrangements for visually communicating a specific message Desktop publishing is the mechanical process that the designer and the non-designer use to turn their ideas for newsletters, brochures, ads, posters, greeting cards, and other projects into digital files for desktop or commercial printing


1. Total number of rentals that are available 365 days a year, the total number of rentals.(As numbers)
365 Days a Year:
843 Total number of rentals:
1650399
2. Number of rentals per neighborhood group
3. Average price of Private room rental by neighborhood group
4. Top 10 neighbourhood based on Average price of Private room
5. The 5 lowest price rentals per each room type
6. Percentage of owners who rent more than one property


Cultural Blog - Mindset
Neuroplasticity
What is Neuroplasticity?
Neuroplasticity is the ability of the brain to restructure or rewire itself in order to learn and adapt. Traditional thinking was brains became fully developed when you reached adulthood however there is growing evidence and recognition that this ability to restructure can occur throughout life.
The benefits of neuroplasticity is it allows us to train our brain just like how we would train our muscles to become stronger, in order to develop or keep our mental fitness and resilience. It doesn't matter if you are 9 or 90!
How does it work?
Neutroplastic change occurs at the chemical, structural and functional levels of the brain
- Chemical Change - Occurs in the initial stages of learning something new. Primarily influences short-term memory or short-term improvement of a motor skill.
- Structural Change - Occurs when neurons in the brain change their connections, altering your brain structure through the creation of new neurons and neural connections. This type of change requires more effort and time and involves long-term memory and long-term improvement of a motor skill.
- Functional Change - Occurs when entire brain networks change. Brain networks become more excitable and more efficient when they are activated over and over.
How can we harness the power of Neuroplasticity?
On average, cognitive declines begins between the ages of 20 and 30.  It is truely a case of "use it or lose it".
Therefore it is key to exercise the brain and there are numerous ways to do so:
- Video Games - There are numerous benefits associated with playing video games including motor co-ordination, visual recognition and spatial navigation, memory and reaction time, reasoning, decision making and problem solving skills as well as teaching the skills of resilience and teamwork.
- Exercise - Exercise has been shown to improve cognitive abilities like learning and memory. It promotes blood flow and cell growth in the brain.
- Travel - Exposure to new environments leads to synaptogenesis, which is the creation of new neural connections in the brain.
- Sleep! - Sleep is important to the brain and helps with learning and memory retention. Naps are good.
- Food - walnuts, blueberries, avacado. Vitamind D and magnesium are important nutrients.
Other ways to enhance neuroplasticity:
- Learn a language or play a musical instrument
- Non-dominant hand exercises
- Yoga
- Reading
- Fasting
- Brain training games
Learn more:
Growth Mindset
What is it?
A growth mindset is the belief that intelligence can be developed, this leads to a desire to learn and therefore a tendency to embrace challenges, persist in the face of setbacks, see effort as the path to mastery, learn from criticsm and find lessons and inspiration in the success of others. As a result, those with a growth mindset are able to reach even higher levels of achievement than those with a fixed mindset who instead tend to run from difficulty and give up easily. A growth mindset gives you a greater sense of free will and that your effort and persistence is a determiner of your success
Integrating into my learning journey
To integrate a growth mindset into my learning journey I will praise and reward effort rather than results or grades. I will see learning as a continual process and just because I am not capable of doing something now, does not mean that I am incapable or unintelligent, it just means that I have not yet developed the ability (embrace the power of yet). I will seek out challenges even if there is a chance of failure and instead see it as an opportunity to grow. I will not be afraid to seek help or admit when I don't know something, rather than seeing it as making me look stupid instead I will view it as a learning opportunity.
Other ways to embrace a growth mindset:
- Embrace your imperfections
- Process more important than the end result
- Stop seeking approval of others - enjoy the learning process
- Growth is more important than speed - learning takes time
- Cultivate a sense of purpose - keep a gratitude journal
- Talent is 99% hard work, 1% genius
- Embrace criticism
- "room for improvement" rather than "failure"
- Take time to reflect
- Take risks even if others are watching
Useful resource: https://www.intelligentchange.com/blogs/read/what-is-growth-mindset-and-how-to-achieve-it


Up and Running with Visual Regression Testing
I'm Kevin Lamping
Front-end Engineer at Four Kitchens.
I'm really excited about this.

When I Change the CSS
Not a Sustainable Test Plan
The Tools
- Wraith
- Gemini
- WebdriverCSS
There are many many more (like DiffUX, DPXDT)
Things
- Static content helps
- Not perfect
- Take tiny steps


Tracking line
jsGraph allows you to display a vertical line as a tracker and to display information about the series at the x point of the tracker. Obviously your x data must be monotoneously increasing for this feature to work. I will show you through a serie of examples how to work with the tracking features.
Blank example
Let’s start by a standard blank example
// Create waveforms
// const colorado = Graph.newWaveform().setData( yArr, xArr );
var graph = new Graph('example-1');
graph.resize(700, 300); // Resizes the graph
graph.getYAxis().secondaryGridOff();
graph.getXAxis().secondaryGridOff();
graph.getYAxis().setPrimaryGridColor('#f0f0f0');
graph.getXAxis().setSecondaryGridColor('#f0f0f0');
var serie = graph
.newSerie('CA')
.setLineColor('#2B65EC')
.setLineWidth(2);
serie.setWaveform(california);
serie.autoAxis();
var serie = graph
.newSerie('CO')
.setLineColor('#E42217')
.setLineWidth(2);
serie.setWaveform(colorado);
serie.autoAxis();
There are two modes of tracking available: individual
and common
:
Common mode
In the common mode, no matter where the mouse is, jsGraph will try to find the closest x value for each serie and process them all together. If there is no computable data for any serie (outside of any serie range), nothing is displayed. Otherwise, a vertical line is shown, the closest point in each serie is highlighted and a single text box appears (common to all series). Here’s how to do:
graph.trackingLine({
mode: 'common', // Defines the mode, individual or common
snapToSerie: graph.getSerie('CA'), // In the common mode, choses the serie onto which the tracking line will snap
textMethod: function(output) {
// Method that should return the content of the text box
var txt = '';
if (output['CA']) {
txt += 'California: ' + Math.round(output['CA'].yValue) + ' ktons<br />';
}
if (output['CO']) {
txt += 'Colorado: ' + Math.round(output['CO'].yValue) + ' ktons';
}
return txt;
},
trackingLineShapeOptions: {
// Parameters of the tracking line
strokeColor: '#c0c0c0'
},
series: [
// A list of series that can be tracked
{
serie: graph.getSerie('CA')
},
{
serie: graph.getSerie('CO'),
withinPx: 10 // Allows to be within a 10px range
}
]
});
- The
snapToSerie
option defined which serie will reference the available x values for the tracking line. The other series will look for the best point around the snapped value to return their closest value. - The
textMethod
option defined a method used to generate the text located inside the legend box. - The
trackingLineShapeOptions
applies its members to the line shape element. See ShapeLine for more details - The
series
option lists all the series accepting tracking. ThewithinPx
option defined the position range in which it is acceptable for the serie to show a tracking point. ThewithinVal
option is also available for the same feature but in axis unit.
withinVal and withinPx
To demonstrate the within
feature, let us use another example. In this example, the snapToSerie
option is set to the red
var graph = new Graph('example-3');
graph.resize(700, 300); // Resizes the graph
graph.getYAxis().secondaryGridOff();
graph.getXAxis().secondaryGridOff();
graph.getYAxis().setPrimaryGridColor('#f0f0f0');
graph.getXAxis().setSecondaryGridColor('#f0f0f0');
var s1 = [
[1, 2.2, 3.4, 4.6, 5.8, 7, 8.2, 9.4, 10.6, 11.8, 13],
[1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1]
]; // 0
var s2 = [
[1, 2.2, 3.4, 4.6, 5.8, 7, 8.2, 9.4, 10.6, 11.8, 13],
[1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1]
]; // -0.5
var s3 = [
[1, 2.2, 3.4, 4.6, 5.8, 7, 8.2, 9.4, 10.6, 11.8, 13],
[1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1]
]; // -1
var s4 = [
[1, 2.2, 3.4, 4.6, 5.8, 7, 8.2, 9.4, 10.6, 11.8, 13],
[1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1]
]; // -1.5
s2[0] = s2[0].map(el => el - 0.5);
s3[0] = s3[0].map(el => el - 1);
s4[0] = s4[0].map(el => el - 1.5);
s2[1] = s2[1].map(el => el - 0.5);
s3[1] = s3[1].map(el => el - 1);
s4[1] = s4[1].map(el => el - 1.5);
const w1 = Graph.newWaveform().setData(s1[1], s1[0]);
const w2 = Graph.newWaveform().setData(s2[1], s2[0]);
const w3 = Graph.newWaveform().setData(s3[1], s3[0]);
const w4 = Graph.newWaveform().setData(s4[1], s4[0]);
var serie = graph
.newSerie('s1')
.setLineColor('#2B65EC')
.setLineWidth(2);
serie.setWaveform(w1);
serie.autoAxis();
var serie = graph
.newSerie('s2')
.setLineColor('#E42217')
.setLineWidth(2);
serie.setWaveform(w2);
serie.autoAxis();
var serie = graph
.newSerie('s3')
.setLineColor('#369173')
.setLineWidth(2);
serie.setWaveform(w3);
serie.autoAxis();
var serie = graph
.newSerie('s4')
.setLineColor('#DB810B')
.setLineWidth(2);
serie.setWaveform(w4);
serie.autoAxis();
graph.trackingLine({
mode: 'common', // Defines the mode, individual or common
snapToSerie: graph.getSerie('s1'), // In the common mode, choses the serie onto which the tracking line will snap
textMethod: function(output) {
// Method that should return the content of the text box
var txt = '';
return txt;
},
trackingLineShapeOptions: {
// Parameters of the tracking line
strokeColor: '#c0c0c0'
},
series: [
// A list of series that can be tracked
{
serie: graph.getSerie('s2'),
withinPx: 15 // Allows to be within a 30px range
},
{
serie: graph.getSerie('s3'),
withinPx: 30 // Allows to be within a 50px range
},
{
serie: graph.getSerie('s4'),
withinVal: 0.5 // Allows to be within a 0.8 value in the x direction
}
]
});
graph.draw();
In this example, the second serie (red) will only highlight if the snapped point on the blue serie is less than 10px than the closest point on the red serie. With this particular graph width, it happens when the x value of the red point is either exactly on the blue one or shifted by one. The third serie (green) will highlight a point only if it is within 20px of the snapped point on the blue serie. Therefore, more points compared to the red serie are selected. In the fourth serie (orange), only points not further than 0.2 (included) will be tracked. If no point is within 0.2 (in x axis value), then no tracking is done and the dot is not showed. The only tracked points are the first two (0, +0.2), the three in the middle (-0.2, 0, +0.2) and the last two (-0.2, 0).
You may also note that the serie 1 is used for snapping but is not in the tracked series list. It therefore doesn’t show up in the list !
Individual mode
In the individual mode, every serie is tracked independently and leads to a multiple legend instances:
graph.trackingLine({
mode: 'individual', // Defines the mode, individual or common
legend: true,
series: [
// A list of series that can be tracked
{
serie: graph.getSerie('CA')
},
{
serie: graph.getSerie('CO')
}
]
});


Much of the work in representation leaning uses Euclidean vector spaces to embed datapoints (like words, nodes, entities etc).
This approach is not effective when data has a (latent) hierarchical structure.
The paper proposes to compute the embeddings in the hyperbolic space so as to preserve both the similarity and structure information.
Hyperbolic spaces are spaces with a constant negative curvature while Euclidean spaces have zero curvature.
The hyperbolic disc area and circle length increase exponentially with the radius r while in Euclidean space, it increases quadratically and linearly respectively.
This makes the hyperbolic space more suitable for embedding tree-like structures where the number of nodes increases as we move away from the root.
Hyperbolic spaces can be thought of as the continuous version of trees and trees can be thought of as the discrete version of hyperbolic spaces.
Poincare model is one of the several possible models of the hyperbolic space and is considered here as it is more amenable to gradient-based optimisation.
Distance between 2 pints change smoothly and is symmetric. Thus the hierarchical organisation only depends on the distance from the origin which makes the model applicable in settings where the hierarchical structure needs to be inferred from the data.
Eventually the norm of a point represents its hierarchy and distance between the points represents similarity.
Embedding taxonomy for wordnet task
Setup
The input data is a collection of a pair of words (u, v) which are related to each other.
For each word pair, 10 negative samples of the form (u, v’) are sampled and the training procedure uses a soft ranking loss that aims to bring the related objects closer together.
Network Embedding
Baselines
Datasets
Lexical Entailment
* Hyperlex - Gold standard to evaluate how well the semantics models capture lexical entailment on a scale of [0, 10].
* The key takeaway is that for all the datasets/setups, hyperbolic embeddings give a performance benefit when the embedding dimension is small.
Hyperbolic embeddings are not suitable for all the datasets. Eg if the dataset is not tree-like or has cycles.
Hyperbolic embeddings are difficult to optimize as each operation needs to be modified to be usable in the hyperbolic space.


Index
—
Package: test
enum
EnumImplicit
Implicit naming depending on the variant
variant
EnumImplicit
::
A
as
"A"
no documentation :(
variant
EnumImplicit
::
B
as
"B"
no documentation :(


As Earth orbits the sun, it runs into a lot of debris. Small pieces burn up in the upper atmosphere - we call these shooting stars, or meteors.  It might even explode! Exploding fireballs are bolides, or airbursts - they explode above the ground and release energy like a bomb...
Play with the sliders to see how likely these different things are:
| Earth | Populated | Urban | You |
| Audible | Chelyabinsk | Tunguska |
| ≅+ |


Presentation of Slickenside and Striation Data
This program treats slickensides and striations. The data input is the same as in the previous programs. In the menu "Angle" you choose the 1-360° or the 1-400gon scale for manual input.


Bought BMW with fake card
by Jane Seyd/North Shore NewsA serial fraudster who targeted victims after stealing their mail has a new address – in jail.
Cody Justin Parent, 27, of Surrey, stole mail from three apartment buildings as well as vehicles in North Vancouver and used fake IDs and credit cards to buy a BMW and rack up an $18,000 cellphone bill.
Parent was recently handed a three-year jail sentence by B.C. Supreme Court Justice Laura Gerow after pleading guilty to seven charges, including three counts of break and enter, plus fraud, identity theft and possession of a credit card embosser.
According to an agreed statement of facts submitted to the court, Parent was nabbed after being caught on surveillance cameras breaking into mailboxes at three apartment buildings on June 10 and 11, 2018.
When police searched Parent’s residence at a Surrey recovery house, they found more than 200 pieces of stolen or fraudulent identification including credit cards, cheques, passports, driver’s licences, Nexus cards and a social insurance card, according to the judge’s summary of the case.
Parent bought multiple cellphones and ran up bills on them with a fake credit card and identity documents, resulting in a loss of about $18,000, according to the court.
Parent was also driving a 2006 BMW at the time of his arrest, which he bought with a bogus credit card after stealing another man’s identity, said the judge.
Crown counsel described Parent’s identity thefts as brazen, the judge noted, pointing out Parent’s long criminal record, which includes 27 prior convictions. He was on probation for similar offences at the time he committed his crimes.
Gerow imposed a global sentence of three years in jail, but gave Parent credit for time already served in jail. He will serve another 21 months in custody.


$32
Green Goddess Chicken Salad
It is a non vegetarian salad which consists of the green goddess dressing mixed with chicken, peppers, olives and celery.
It is a non vegetarian salad which consists of the green goddess dressing mixed with chicken, peppers, olives and celery.


The Application Context¶
New in version 0.9.
One of the design ideas behind Flask is that there are two different
“states” in which code is executed. The application setup state in which
the application implicitly is on the module level. It starts when the
Flask
object is instantiated, and it implicitly ends when the
first request comes in. While the application is in this state a few
assumptions are true:
- the programmer can modify the application object safely.
- no request handling happened so far
- you have to have a reference to the application object in order to modify it, there is no magic proxy that can give you a reference to the application object you’re currently creating or modifying.
In contrast, during request handling, a couple of other rules exist:
- while a request is active, the context local objects
(
flask.request
and others) point to the current request. - any code can get hold of these objects at any time.
There is a third state which is sitting in between a little bit. Sometimes you are dealing with an application in a way that is similar to how you interact with applications during request handling just that there is no request active. Consider for instance that you’re sitting in an interactive Python shell and interacting with the application, or a command line application.
The application context is what powers the current_app
context local.
Purpose of the Application Context¶
The main reason for the application’s context existence is that in the past a bunch of functionality was attached to the request context in lack of a better solution. Since one of the pillar’s of Flask’s design is that you can have more than one application in the same Python process.
So how does the code find the “right” application? In the past we recommended passing applications around explicitly, but that caused issues with libraries that were not designed with that in mind.
A common workaround for that problem was to use the
current_app
proxy later on, which was bound to the current
request’s application reference. Since however creating such a request
context is an unnecessarily expensive operation in case there is no
request around, the application context was introduced.
Creating an Application Context¶
To make an application context there are two ways. The first one is the implicit one: whenever a request context is pushed, an application context will be created alongside if this is necessary. As a result of that, you can ignore the existence of the application context unless you need it.
The second way is the explicit way using the
app_context()
method:
from flask import Flask, current_app
app = Flask(__name__)
with app.app_context():
# within this block, current_app points to app.
print current_app.name
The application context is also used by the url_for()
function in case a SERVER_NAME
was configured. This allows you to
generate URLs even in the absence of a request.
Locality of the Context¶
The application context is created and destroyed as necessary. It never
moves between threads and it will not be shared between requests. As such
it is the perfect place to store database connection information and other
things. The internal stack object is called flask._app_ctx_stack
.
Extensions are free to store additional information on the topmost level,
assuming they pick a sufficiently unique name and should put there
information there, instead on the flask.g
object which is reserved
for user code.
For more information about that, see Flask Extension Development.
Context Usage¶
The context is typically used to cache resources on there that need to be created on a per-request or usage case. For instance database connects are destined to go there. When storing things on the application context unique names should be chosen as this is a place that is shared between Flask applications and extensions.
The most common usage is to split resource management into two parts:
- an implicit resource caching on the context.
- a context teardown based resource deallocation.
Generally there would be a get_X()
function that creates resource
X
if it does not exist yet and otherwise returns the same resource,
and a teardown_X()
function that is registered as teardown handler.
This is an example that connects to a database:
import sqlite3
from flask import g
def get_db():
db = getattr(g, '_database', None)
if db is None:
db = g._database = connect_to_database()
return db
@app.teardown_appcontext
def teardown_db(exception):
db = getattr(g, '_database', None)
if db is not None:
db.close()
The first time get_db()
is called the connection will be established.
To make this implicit a LocalProxy
can be used:
from werkzeug.local import LocalProxy
db = LocalProxy(get_db)
That way a user can directly access db
which internally calls
get_db()
.


Places List (QML)
Running the Example
To run the example from Qt Creator, open the Welcome mode and select the example from Examples. For more information, visit Building and Running an Example.
The Places List
example demonstrates how to search for a list of places in a certain area and displays the result using a ListView. In this particular case, a search for places associated with the term pizza
is performed.
Performing a Place Search
To write a QML application that will show places in a list, we start by making the following import declarations.
import QtQuick 2.0 import QtPositioning 5.5 import QtLocation 5.6
Instantiate a Plugin instance. The Plugin is effectively the backend from where places are sourced from. Depending on the type of the plugin, some mandatory parameters may be need to be filled in. The most likely type of PluginParameter are some form of service access token which are documented in the service plugin. As an example see the HERE Plugin documentation. In this snippet the osm
plugin is used which does not require any further parameter:
Plugin { id: myPlugin name: "osm" //specify plugin parameters as necessary //PluginParameter {...} //PluginParameter {...} //... }
Next we instantiate a PlaceSearchModel which we can use to specify search parameters and perform a places search operation. For illustrative purposes, update() is invoked once construction of the model is complete. Typically update() would be invoked in response to a user action such as a button click.
PlaceSearchModel { id: searchModel plugin: myPlugin searchTerm: "pizza" searchArea: QtPositioning.circle(startCoordinate); Component.onCompleted: update() }
Finally we instantiate a ListView to show the search results found by the model. An inline delegate has been used and we have assumed that every search result is of type PlaceSearchesult
. Consequently it is assumed that we always have access to the place role, other search result types may not have a place role.
ListView { anchors.fill: parent model: searchModel delegate: Component { Row { spacing: 5 Marker { height: parent.height } Column { Text { text: title; font.bold: true } Text { text: place.location.address.text } } } } }
Files:


Social Media Dashboard
Total Followers: 23,004
@nathanf
@nathanf
@realnathanf
Nathan F.
Overview - Today
Page Views
87
3%
Likes
52
2%
Likes
5462
2257%
Profile Views
52k
1375%
Retweets
117
303%
Likes
507
553%
Likes
107
19%
Total Views
1407
12%


Finding route between two points from OSM road network input
2019-01-03
Finding navigable route such as for driving between two points has several application.
Open Street Map(OSM) with its free downloadable map, routing algorithms can be applied to
find best route between two location. OSMNX, a python library import osm (a default file format
provided by OSM) into graphml format which can be used with network analysis to get route network.
The OSM downloaded from overpass using the polygon bouundary for an urban area, the overpass query
https://overpass-api.de/api/map?bbox=77.3,12.7,77.9,13.3
was then created by
import geopandas as gp
ex=gp.read_file('urban_polygon.shp')
ex.bounds
print('https://overpass-api.de/api/map?bbox=',ex.bounds['minx'][0],',',ex.bounds['miny'][0],',',ex.bounds['maxx'][0],',',ex.bounds['maxy'][0])
The osm file is then converted into graphml file format by
import osmnx as ox
import networkx as nx
B1=ox.graph_from_file('bng.osm', network_type='all', simplify=False, retain_all=False, name='b1')
ox.save_graphml(B1, filename='bng.graphml')
Route network was then found by using Network analysis libraries [Networkx] [1] and [graph-tool] [2].
Conversion of OSM into graphml makes it Graph notations to read by network analysis libraries.
Graphml represents vertices in OSM road network file into node/vertex and line connecting the vertices as edge.
The locations to be queried to get route network has to be made into nodes as well.
Networkx
The graphml is read by networkx as follows
import osmnx as ox
import networkx as nx
G2 = ox.load_graphml('bng.graphml')
The nodes of the querry location points are derived as follows. A shape file with point fetures containing origin and destination deatils are read and node deatials are derived by querying nearest nodes
import numpy as np
import itertools
import osmnx as ox
db=gp.read_file('bangalore_wards.json')
#list=np.arange(0,len(db.index))
db['centroid']=db['geometry'].centroid
db["x"] = db.centroid.map(lambda p: p.x)
db["y"] = db.centroid.map(lambda p: p.y)
gmc=[]
for idx, row in db.iterrows():
od_node = ox.get_nearest_node(G2, (row['y'],row['x']), method='euclidean')
gmc.append(od_node)
od_node=[]
db['gmcnode']=gmc
graph-tool
To be continued….


InitKeyboard()
Syntax
Result = InitKeyboard()Description
Initializes the keyboard environment for later use. This function has to be called before any other function in this library.
Parameters
None.
Return value
Nonzero if the keyboard access can be initialized, zero otherwise. If this function fails while trying to open DirectX, it is most likely due to the fact that DirectX is not available on the system or the version currently installed is out of date. The DirectX recommendations are: DirectX version v3.0 for NT4.0 compatibility or DirectX version v7.0 under all other circumstances.
Supported OS
All