Chocolate Pizza
For the fig-swirl: Melt butter over medium heat in a saucepan. Add brown sugar and stir to dissolve. Halve all too the figs and toss in the saucepan with water and lemon juice. Cook over medium, heat stirring frequently, until you have chunck-jammy mixture. Add salt with one or two stirs, set aside and let cool completely.
Ice cream: In a small pot over medium heat, combine milk, and granulated sugar until sugar is completely dissolved and the milk is just barely lukewarm. Whisk in the egg yolks. Set Mixture in the fridge and wait until fig mixture is cooled.
Using an ice cream machine, pour liquids into the frozen basin and process according to manufacturer instructions, i.e., let spin and thicken for 20 minutes before adding mascarpone, fig jam mixture, and the nuts. Continue to process for +/- 10 minutes. Pour semi-frozen mixture into a pyrex dish or glass tupperware. Freeze for at least two hours before serving.
- 1 1/2 cups milk
- 1 1/2 cups heavy cream
- 1/2 cups mascarpone
- 1/3 granulated sugar
- 1/2 tsp pink salt
- 2 egg yolks
- 1 lb Black Mission Figs
- 1 lemon, juiced
- 1/2 cup brown sugar
- 2 tbsp butter
- 2-4 tbsp water
- 1 cup honey roasted pecans, roughly chopped


POWERSNAKE
DON'T TOUCH...
MOVE
SHOOT
...THE 'APPLE'
MOVE
GAME MODE
PREY has wrapping.
Press 'P' to Pause or Play
Sachin Patel (Sach-P)


The Ruby gem makes it easy to create deeper Frankly chat integrations in your app by interacting with Frankly's server APIs for managing Rooms, Messages, and Users.
In your Gemfile include <code> gem 'frankly-ruby', :git => 'git://github.com/franklyinc/frankly-ruby.git' </code> then run <code> bundle install </code>
require 'frankly-ruby'
Here are the resources available: 1. Complete Frankly Chat Service integration guide - franklyinc.github.io 2. Frankly Ruby gem API reference - franklyinc.github.io/APIReference-Ruby.html/ 3. Frankly Chat Service Authentication guide - franklyinc.github.io/Auth.html
Frankly Platform provides a great way for brands to integrate chat in their iOS, Android, and Web apps in order to build and engage their communities. But of course, that's not possible without developers like you. Have ideas for improving the integration experience? Let us know by creating a Github issue in this repo!
Right now Frankly Platform is limited in access. If you'd like to learn more about how to get access, please reach out to us by emailing platform-support@franklychat.com.


© 2019
| fabaceus fabacea fabaceum | bean like | |||
| faba | fab | noun/f | bean | |
| aceus | ace | adj | adjective suffix for nouns: resembles, of..., ...like, mixture using, fragrance of; borrowed from nouns declined like ...ax, ...acis + eus | |
| Marah fabaceus (Naud.) Naud. ex Greene | ||||
| falcatus falcata falcatum | sickle shaped | |||
| falcatus | falcat | adj | sickle shaped | |
| Chrysopsis falcata (Pursh) Ell. Cyrtomium falcatum (L.f.) K.Presl Aster falcatus Lindl. | ||||
| falcifolius falcifolia falcifolium | sickle shaped leaves | |||
| flax | falc | noun/f | falx curved blade, pruning hook; sickle, scythe | |
| i | i | cnct | connective vowel used by botanical Latin | |
| folius | foli | adj | folium leaf | |
| Oberonia falcifolia Schltr. Allium falcifolium Hook. & Arn. | ||||
| fallacissimus fallacissima fallacissimum | most deceptive | |||
| superlative of fallax | fallac | adj | deceptive, fallacious | |
| issimus | issim | adj | superlative suffix; most so, to the greatest degree; most-, -est (e.g. largest, prettiest, whitest) | |
| Boerhavia fallacissima Heimerl | ||||
| farinaceus farinacea farinaceum | mealy | |||
| farina | farin | noun/f | flour, meal | |
| aceus | ace | adj | adjective suffix for nouns: resembles, of..., ...like, mixture using, fragrance of; borrowed from nouns declined like ...ax, ...acis + eus | |
| Salvia farinacea Benth. | ||||
| farinosus farinosa farinosum | mealy | |||
| farina | farin | noun/f | flour, meal | |
| osus | os | adj | adjective suffix for nouns: plenitude or notable development | |
| Aletris farinosa L. Combretum farinosum Kunth | ||||
| fasciatus fasciata fasciatum | banded, bundled | |||
| fascia | fasci | noun/f | band, girth | |
| atus | at | adj | adjectival suffix for nouns: possessive of or likeness of something (with, shaped, made)/ for verb participles: a completed action, -ed | |
| Sansevieria fasciata Cornu ex Gerome & Labroy | ||||
| fasciculatus fasciculata fasciculatum | banded, bundled | |||
| fasciculus | fascicul | noun/m | bundle, packet | |
| atus | at | adj | adjectival suffix for nouns: possessive of or likeness of something (with, shaped, made)/ for verb participles: a completed action, -ed | |
| Cassia fasciculata Michx. Eriogonum fasciculatum Benth. Anoplanthus fasciculatus (Nutt.) Walp. | ||||
| fastigiatus fastigiata fastigiatum | clustered, parallel and erect | |||
| fastigium | fastigi | adj/n | projecting point, gable, highest point | |
| atus | at | adj | adjectival suffix for nouns: possessive of or likeness of something (with, shaped, made)/ for verb participles: a completed action, -ed | |
| Cassiope fastigiata D.Don Rhododendron fastigiatum Franch. Andropogon fastigiatus Sw. | ||||
| fastuosus fastuosa fastuosum | proud | |||
| fastuosus | fastuos | adj | fastosus proud, haughty (also fastuosus) | |
| Datura fastuosa L. Echium fastuosum Ait. | ||||
| fenestralis fenestralis fenestrale | window like | |||
| fenestra | fenestr | noun/f | window | |
| alis | al | adj | adjective suffix for nouns: of or pertaining to | |
| Lobelia fenestralis Cav. | ||||
| fenestrellatus fenestrellata fenestrellatum | with little windows | |||
| fenestra | fenestr | noun/f | window | |
| ella | ell | noun/f | ellus substantive suffix for 1st & 2nd declension nouns: diminutive | |
| atus | at | adj | adjectival suffix for nouns: possessive of or likeness of something (with, shaped, made)/ for verb participles: a completed action, -ed | |
| Campanula fenestrellata Feer |


An integer N is given, representing the area of some rectangle.
The area of a rectangle whose sides are of length A and B is A * B, and the perimeter is 2 * (A + B).
The goal is to find the minimal perimeter of any rectangle whose area equals N. The sides of this rectangle should be only integers.
For example, given integer N = 30, rectangles of area 30 are:
- (1, 30), with a perimeter of 62,
- (2, 15), with a perimeter of 34,
- (3, 10), with a perimeter of 26,
- (5, 6), with a perimeter of 22.
Write a function:
def solution(N)
that, given an integer N, returns the minimal perimeter of any rectangle whose area is exactly equal to N.
For example, given an integer N = 30, the function should return 22, as explained above.
Assume that:
- N is an integer within the range [1..1,000,000,000].
Complexity:
- expected worst-case time complexity is O(sqrt(N));
- expected worst-case space complexity is O(1).


A040 - Magnified Image
Back
The Parish Church of St. James the Great, South Leigh, Oxfordshire.
Copyright © St. James the Great South Leigh Parochial Church Council, 2006
Updated 22nd November 2005
Feedback


maintenance lorem ipsum dolor sit amet, consectetur adipisicing elit. Asperiores quibusdam cum nam, consequatur
electronics
gadgets
automobiles
office appliances
home appliances
generators
engineering equipments
farming equipments


HexMINES.visaub.com
Restart
Size of puzzle:
Number of mines:
Total number of cells:
61
Time:
0
seconds.
Done by: Victor Sainz Ubide 2019.
@visaub
Repository with the code of this game.


|
Supplemental Information 1
|
Normalized historic and GCM populations Raw data for normali ... |
|
Supplemental Information 2
|
Individual raw data maps Raw data used to create consensus m ... |
|
Supplemental Information 3
|
Population and fruit quality index for base model Raw data u ... |
|
Supplemental Information 4
|
Populations per year and for mean annual temperature Raw dat ... |


loading...
There is currently no admin account. Press this button to create the admin account and print the username and password to the server log:
Authenticated as ...
Permissions: read add control playlist admin
Authenticated as ....
Scrobbling is
Authenticate with Last.fm


Kiri:Moto Javascript Engine API
Engine Methods
- where URL points to an STL
- where data is a string or binary STL
- FDM, CAM, LASER, SLA
- function to receive engine progress messages
- change default object parameters
- change default process parameters
- absolute move origin of loaded object
- relative move origin of loaded object
- scale axes of loaded object
- rotate axes of loaded object in radians
- async slice loaded object
- async path routing of slice data
- async gcode generation from path routing


--- layout: page title: About header-img: "img/about-bg.png" ---
Kate McHugh-Westfall is a 34 year old woman living in Baltimore, Md.


--- layout: post status: publish published: true title: KeithBa's Book author: display_name: Tomas Restrepo login: tomasr email<EMAIL_ADDRESS>url: http://winterdom.com/ author_login: tomasr author_email<EMAIL_ADDRESS>author_url: http://winterdom.com/ wordpress_id: 668 wordpress_url: http://winterdom.com/2003/03/keithbasbook date: '2003-03-02 08:25:12 +0000' date_gmt: '2003-03-02 08:25:12 +0000' categories: - Web Services tags: [] comments: [] ---
I've been reading this week Keith Ballinger's new book, ".NET Web Services: Architecture and Implementation" (courtesy of a friend). So far, I'm only up to chapter 12, but I've learned quite a few things I wasn't aware of. I specially like how Keith puts everything together and explains things in a concise, yet easy to grasp manner.
However, I have seen a few typos and errors I can't help but mention (I guess the tech reviewer in me resists to read a book without dissecting it:)). These are fairly minor, and don't detract in any way from the overall quality of the book. So, Keith, in case you're interested, here are some of them:
In page 41, at the bottom of the page there's a small example of a WebMethod that uses XmlElementAttribute to change the XML element name for the message response (consisting of a string argument marked as out). However, as far as I can see, this doesn't work, since the XMlElementAttribute is applied to the method's return value, which is of type void, not to the entire response, which I believe is what Keith wanted. Or at least, it doesn't seem to work for me.
In pages 103 and 104, an example of using XmlArrayItemAttribute is shown to modify what the repeating element name inside an XML-serialized array (from the default, which is just the type name). The example uses this attribute to modify the serialization of a string[] so that each item is in an element called "name" instead of just "string", and page 104 is supposed to show what the resulting XML should be. However, this example still has all items serialized as "
I think I saw a few more, but I can't remember right now exactly what they were...


Schema Evolution
An important aspect of data management is schema evolution. Similar to how APIs evolve and need to be compatible for all applications that rely on old and new versions of the API, schemas also evolve and likewise need to be compatible for all applications that rely on old and new versions of a schema.
Problem
How do I restructure or add new information to an event, ideally in a way that ensures Schema Compatibility?
Solution
One approach for evolving a schema is "in-place" (shown above), in which a stream can have events with both new and previous schema versions in it. The schema compatibility checks then ensure that Event Processing Applications and Event Sinks can read schemas in both formats.
Another approach is dual schema upgrades a.k.a. versioned streams (shown above). This approach is useful especially when breaking changes in a stream's schema(s) need to be introduced; i.e., in a situation where the new schema is incompatible to the previous schema. Here, the Event Sources write to two streams:
- One stream with the previous schema version, e.g.
payments-v1
. - One stream with the new schema version, e.g.
payments-v2
.
Event Processing Applications and Event Sinks then consume from the respective stream that they are compatible with. Once all consumers are upgraded to the new schema, the old stream can be retired.
Implementation
For "in-place" schema evolution, an Event Stream has multiple versions of the same schema that are compatible with each other. For example, if a field is removed: a consumer that was developed to process events without this field will be able to process events written with the old schema and contain the field – the consumer will just ignore that field. In this case, if the original schema were:
{"namespace": "io.confluent.examples.client",
"type": "record",
"name": "Event",
"fields": [
{"name": "field1", "type": "boolean", "default": true},
{"name": "field2", "type": "string"}
]
}
Then we could change it to be without field2
as show below, and the Event Stream would have a mix of both schema types.
If new consumers process events written with the old schema, they would just ignore field2
.
{"namespace": "io.confluent.examples.client",
"type": "record",
"name": "Event",
"fields": [
{"name": "field1", "type": "boolean", "default": true}
]
}
For dual schema upgrades, there are breaking changes. So the processing flow needs to be more explicit such that clients are only writing to and reading from the version of the Event Stream that corresponds to the schema that they are able to process. For example, an application that can process v1 schema would read from one stream:
CREATE STREAM payments-v1 (transaction_id BIGINT, username VARCHAR)
WITH (kafka_topic='payments-v1');
And an application that can process v2 schema would read from another stream:
CREATE STREAM payments-v2 (transaction_id BIGINT, store_id VARCHAR)
WITH (kafka_topic='payments-v2');
Considerations
Follow Schema Compatibility rules to determine which schema changes are compatible or breaking.
References
- Event Serializer: encode events so that they can be written to disk, transferred across the network, and generally preserved for future readers
- Schema-on-Read: enable the reader of events to determine which schema to apply to the Event that is processed
- Schema evolution and compatibility: backward, forward, full
- Working with schemas: creating, editing, comparing versions
- Maven plugin to test for schema compatibility during the development cycle


Configuring Wiki Editing Permissions
How to configure editing permissions for the Wiki module. You can use either the standard module permissions as set on the Module Settings page, or create a unique set of editing permissions. Note: Only Administrators and SuperUsers can access manage configuration.
- Select Wiki Configuration from the Wiki module actions menu.
- Expand the Security Settings section.
- At Module Security, select from these options:
- Mark the check box to use the edit permissions set for this module on the Module Settings page. See "Setting Module Permissions"
- Unmark the check box to create custom permissions. This will expose the "Wiki Edit Roles" field where you can set the custom permissions. For example, in the below image editing rights have been assigned to all users in the Staff role.
- To assign a role as an editor, click on the role name in the Available list and click the Add selected Available Item to Assigned> link.
- To remove a role as an editor, click on the role name in the Assigned list and click the Remove selected Assigned Item< link.
- To assign all roles as editors, click the Add All Available Items to Assigned>> link.
- To remove all roles as editors, click the Remove All Assigned Items>> link.
- Click the Save button.


COBBLES EXIT
Coronation Street’s Beverley Callard reveals she’s quitting the soap after 30 years as Liz McDonald
by Beth AllcockCORONATION Street legend Beverley Callard - known for playing feisty barmaid Liz McDonald - is quitting the ITV soap.
The actress, who has been on the ITV series for 30 years, made the sensational confession and admitted her character would go out with "one hell of a bang."
Bev, 62, told OK! Magazine her final scenes would air next year, in news set to devastate her loyal fans.
Revealing her reaction after telling bosses of the Weatherfield soap of her intention to quit, she added: “I was in shock, I felt totally numb."
 I cant wait!”
The Leeds-born actress did tell how she had experienced many "sleepless nights" deliberating with the major decision.
Yet Corrie fans can take some comfort from the fact Liz will remain on screen until summer 2020.
Bev, who joined Corrie in 1989, will leave screens in order to go on tour with comedy play, The Thunder Girls.
She plays character Roxanne in the show, which stars four women over the age of 50.
Viewers will miss Liz's bubbly nature and passionate streak on screen, particularly as Steve McDonald's mum has been at the heart of recent storylines.


Toggle navigation
GadgetCrunch
Home
Cellphones
Laptops/Tablets
Wearables
Contact Us
Create An Account
{{ registration.message }}
Name
Surname
Email
Not an email
Username
Password
Confirm Password
Register!


haskell-jp / general #28 at 2021-04-01 11:43:59 +0900
Back to general #28
Slackbot
2021-04-01 11:43:59 +0900
This message was deleted.
kakkun61
2021-04-01 16:29:03 +0900
general
だよ:sunglasses:
igrep
2021-04-01 16:50:41 +0900
間違えた！
Back to general #28


Radius
Restaurants
Bars
Night Clubs
Museums
Universities
Place name
-
Address
-
Open
-
Friends, who visited this place
-
Actions
I've been there
Add note
x


TWSDC 2018
Register
Adj Test
Schedule
Motions
School Map
Documents
Org Comm
Contact
Documents
Home
Documents
Official Invitation Letter
Download file
WSDC Debating Rules
Download file
WSDC Note to Adjudicators
Download file
Code of Conduct
Download file


AMAZING PEOPLE ARE MAKING AMAZING DESIGNS IN A FUN ENVIRONMENT
When you work with us, you are part of a team of committed collaborators. All aspects of our software development process are intergrated, interactive and agile.
Our approach unifies design, development and product management to create exceptional products.
We start each project by understanding your business goals, the user's needs and the product requirements
Then we help translate them into effective and elegant solutions.
Before we sign a contract or write a line of code our team will spend the time need to understand your product vision.
The outcome of this scoping session is a proposal of high level statement of work.
Based on your requirements we can provide a complete offering or just the pieces you need.
DESIGN
DESIGN
Our design practice offers a full range of services including brand strategy, interaction and visual design and user experience testing.Throughout your project, our designers create and implement visual design and workflows, solicit user feedback and work with you to make sure what gets built is what is needed.
DEVELOPMENT
DEVELOPMENT
Our design practice offers a full range of services including brand strategy, interaction and visual design and user experience testing.Throughout your project, our designers create and implement visual design and workflows, solicit user feedback and work with you to make sure what gets built is what is needed.
PRODUCT MANAGEMENT
PRODUCT MANAGEMENT
Planning and development is iterative. Because we are constantly coding and testing, the products we build are always ready to go live.This iterative process allows for changes as business requirements evolve.
Dark Blue
Mighty Ontario
Yellow Orange
Jim Carrey
Blog Templates
Machine
Burned Logo
Bailey Wonger
DELANI STUDIO
2019


Hi! I am James Angeles, a passionate software engineer who desires to change the world through ground-breaking technologies. I pursue this dream by constantly challenging my skills as a developer whether it be through my classes at the University of Stony Brook or my numerous projects. I am most successful when using Java, JavaScript, and Node.JS.
I am learning that communication is one of the most important and underrated skills to have as an engineer. I found that through projects such as these, I am able to gain a deeper understanding of technical communications.
As a self-motivated programmer, it is my ultimate goal to make the best possible software. Through these projects, I am able to exhibit my persistent progress towards this objective.
By using real-time technologies such as Node.js and Socket.IO, ExamPrep allows students to answer user-generated trivia through their phones, while having the web app constantly update with the scores.
I pride myself on never settling on one particular skill. Because of this, I continue to learn and adapt to different technologies of the software industry
Combining my desire and passion for learning, I fully take advantage of the tools presented to me in order to succeed.
B.S. in Computer Science
Stony Brook University
Progressing towards a Bachelor's Degree in Computer Science with a focus in artificial intelligence. Awarded Dean's List throughout all years of attending. Currently maintain a GPA of 3.70
H.S. Diploma
Nanuet Senior High School
Maintained a GPA of 4.0. Member of National Honor Society, Mu Alpha Theta, and Sociedad Honoraria Hispánica. Participated in extra-curricular activities such as varsity basketball and technology club.
Feel free to contact me at<EMAIL_ADDRESS>by email or by using this form!


--- layout: archive title: Zulip Chat Archive permalink: /stream/113488-general/topic/mergify.html ---
Is there a way to teach mergify
that, if it merges a branch with master
, then it should not dismiss approving reviews? #1085 is blocked because of this (and I can not approve it myself as I am the author :)
Does anyone know why mergify is stuck on this PR? https://github.com/leanprover-community/mathlib/pull/2056
I have no idea. What should I do: wait? merge manually?
Same for #2060
It seems that mergify doesn't like (some of) my PRs. Can we debug this problem?
The last PR that mergify worked on was #2062, so I suspect something in #2065 caused it to stop working.
Who has access to mergify logs? Note that #2065 was not merged automatically.
I don't understand what was the purpose of #2065, not speaking of possible unwanted side-effects.
I think #2065 was meant to address the comments here in #2048.
Let's call @Rob Lewis and @Gabriel Ebner
@Mario Carneiro Maybe you have access to some mergify logs?
Nope, clicking around didn't lead me anywhere interesting
there is a button labeled "view more details on mergify" but it leads to the same page
Oh wait, I made it to the mergify dashboard. Here is the summary for #2056
#### Rule: automatic merge on CI success and review - pr (delete_head_branch, merge) - [ ] `status-success=Build mathlib (leanprover-community/lean:3.5.1)` - [X] `#changes-requested-reviews-by=0` - [X] `base=master` - [X] `label=ready-to-merge` - [X] `approved-reviews-by=@leanprover-community/mathlib-maintainers` #### Rule: automatic merge on CI success and review - push #1 (delete_head_branch, merge) - [ ] `status-success=Build mathlib (leanprover-community/lean:3.5.1)` - [X] `#changes-requested-reviews-by=0` - [X] `base=master` - [X] `label=ready-to-merge` - [X] `approved-reviews-by=@leanprover-community/mathlib-maintainers`
Probably we should remove " (leanprover-community/lean:3.5.1)" from mergify.yml
that certainly looks like the problem. Not clear what that string is supposed to bind to
Could you approve #2077 please?
are you sure that's the right thing? It's still not clear how this config generates that string
Oh I see, it is the build matrix thing at the top that got removed
I think that it added label from "matrix".
I merged directly, maybe mergify has to be restarted for existing builds
CI seems to be running so we'll see if things are fixed in an hour
#2056 is merged so I think we're good
Is it?
Oh I guess that was just the first stage; it put a merge commit on the branch
So, we'll know in about 1 hour as you said before.
Did mergify just merge something?
Yes.
Mergify is getting greedy, it's claiming commits as its own now. https://github.com/leanprover-community/mathlib/commit/9fc675c43151a53052b7f467c8182ea3bece7de6
It happened with the latest commit as well. Does anyone know what changed?
so mergify will be an author of the mathlib 2.0 paper?
the revolution is upon us
Apparently github changed something: https://github.com/Mergifyio/mergify-engine/issues/764
According to the reports on the mergify bug tracker, mergify is no longer greedy.
ha ha and I now see that the last commit was by leanprover-community-bot
! They are taking over!
I think that one actually was a bot commit
Something about the prior commit meant it automatically made that commit I think.
When will leanprover-community-bot
be able to bundle subgroups?
leanprover-community-bot
is friendly and one of us. mergify[bot]
, though, that one has a bit of an attitude.
Last updated: Apr 24 2020 at 19:02 UTC


010101111000010.... geeks get it....
Small Things make big changes!
Tesla's coming to town!
It's gonna take all your metal!
If anything is not alright..build it on your own!


CrimPapers
Articles published on 15 May 2017
On 15 May 2017, 6 new articles were published in 6 journals.
Frequency Vs. Length of Hot Spots Patrols: A Randomised Controlled Trial
Homicide of Children and Adolescents in Mexico (1990–2013) by Sonia M. Frías, David Finkelhor
The Associations Between Abuse Characteristics in Child Sexual Abuse: A Meta-Analysis by Daniel Ventus, Jan Antfolk, Benny Salo
Parents’ Knowledge and Attitudes About Youths’ Interrogation Rights by Hayley M. D. Cleary, Todd C. Warner
Paused For Thought? Using Verbal Protocol Analysis to Understand the Situational and Temporal Cues in the Decision-Making of Residential Burglars
Different Uses of Violence: Motives For Camorra Murders


Note that by design anyone can read these cookies, so you shouldn't store sensitive data in it. Also note that the cookie server works by setting so-called third-party cookies, so a browser set to block those won't be able to use the clipboard.
How does it work? The clipboard is stored as a cookie associated with this clip-server.html page. clip-server.html loads clip-server.js which implements the clipboard server. It listens for window.postMessage events asking it to get/set the clipboard value; it does so by accessing the cookie and using window.postMessage to return the result if necessary.
Below is a small inspection screen for testing the value of the cookie named "clipboard". Type to change the clipboard; click "refresh" to update/paste from the clipboard after changing the clipboard elsewhere:


|
BitShares-Core
6.1.0
BitShares blockchain implementation and command-line interface software
|
contains properties that only apply to bitassets (market issued assets) More...
#include <asset_object.hpp>
Public Member Functions | |
| bool | is_current_feed_price_capped () const |
| share_type | max_force_settlement_volume (share_type current_supply) const |
| Calculate the maximum force settlement volume per maintenance interval, given the current share supply. More... | |
| bool | has_settlement () const |
| bool | has_individual_settlement () const |
| price | get_individual_settlement_price () const |
| Get the price of the individual settlement pool. More... | |
| bitasset_options::black_swan_response_type | get_black_swan_response_method () const |
| Get the effective black swan response method of this bitasset. More... | |
| price | get_margin_call_order_price () const |
| Get margin call order price (MCOP) of this bitasset. More... | |
| ratio_type | get_margin_call_order_ratio () const |
| Get margin call order ratio (MCOR) of this bitasset. More... | |
| ratio_type | get_margin_call_pays_ratio () const |
| Get margin call pays ratio (MCPR) of this bitasset. More... | |
| bool | need_to_update_cer () const |
| Whether need to update core_exchange_rate in asset_object. More... | |
| time_point_sec | feed_expiration_time () const |
| The time when current_feed would expire. More... | |
| bool | feed_is_expired_before_hf_615 (time_point_sec current_time) const |
| bool | feed_is_expired (time_point_sec current_time) const |
| void | update_median_feeds (time_point_sec current_time, time_point_sec next_maintenance_time) |
| Public Member Functions inherited from graphene::db::abstract_object< asset_bitasset_data_object, implementation_ids, impl_asset_bitasset_data_object_type > | |
| abstract_object () | |
| object_id< SpaceID, TypeID > | get_id () const |
| Public Member Functions inherited from graphene::db::base_abstract_object< asset_bitasset_data_object > | |
| std::unique_ptr< object > | clone () const override |
| void | move_from (object &obj) override |
| fc::variant | to_variant () const override |
| std::vector< char > | pack () const override |
| Public Member Functions inherited from graphene::db::object | |
| object ()=default | |
| object (uint8_t space_id, uint8_t type_id) | |
| virtual | ~object ()=default |
Public Attributes | |
| asset_id_type | asset_id |
| The asset this object belong to. More... | |
| bitasset_options | options |
| The tunable options for BitAssets are stored in this field. More... | |
| flat_map< account_id_type, pair< time_point_sec, price_feed_with_icr > > | feeds |
| price_feed_with_icr | median_feed |
| This is the median of values from the currently active feeds. More... | |
| price_feed_with_icr | current_feed |
| This is the currently active price feed, calculated from median_feed and other parameters. More... | |
| time_point_sec | current_feed_publication_time |
| This is the publication time of the oldest feed which was factored into current_feed. More... | |
| price | current_maintenance_collateralization |
| price | current_initial_collateralization |
| bool | is_prediction_market = false |
| True if this asset implements a Prediction Market. More... | |
| share_type | force_settled_volume |
| This is the volume of this asset which has been force-settled this maintanence interval. More... | |
| bool | asset_cer_updated = false |
| Track whether core_exchange_rate in corresponding asset_object has updated. More... | |
| bool | feed_cer_updated = false |
| Track whether core exchange rate in current feed has updated. More... | |
| price | settlement_price |
| share_type | settlement_fund |
| Amount of collateral which is available for force settlement due to global settlement. More... | |
| share_type | individual_settlement_debt |
| share_type | individual_settlement_fund |
| Amount of collateral which is available for force settlement due to individual settlements. More... | |
| Public Attributes inherited from graphene::db::object | |
| object_id_type | id |
Additional Inherited Members | |
| Static Public Attributes inherited from graphene::db::abstract_object< asset_bitasset_data_object, implementation_ids, impl_asset_bitasset_data_object_type > | |
| static constexpr uint8_t | space_id |
| static constexpr uint8_t | type_id |
contains properties that only apply to bitassets (market issued assets)
Definition at line 255 of file asset_object.hpp.
|
inline |
The time when current_feed would expire.
Definition at line 370 of file asset_object.hpp.
|
inline |
Definition at line 383 of file asset_object.hpp.
|
inline |
The old and buggy implementation of feed_is_expired before the No. 615 hardfork. See https://github.com/cryptonomex/graphene/issues/615
Definition at line 380 of file asset_object.hpp.
|
inline |
Get the effective black swan response method of this bitasset.
Definition at line 334 of file asset_object.hpp.
|
inline |
Get the price of the individual settlement pool.
Definition at line 327 of file asset_object.hpp.
|
inline |
Get margin call order price (MCOP) of this bitasset.
Definition at line 340 of file asset_object.hpp.
|
inline |
Get margin call order ratio (MCOR) of this bitasset.
Definition at line 346 of file asset_object.hpp.
|
inline |
Get margin call pays ratio (MCPR) of this bitasset.
Definition at line 352 of file asset_object.hpp.
|
inline |
Definition at line 324 of file asset_object.hpp.
|
inline |
Definition at line 299 of file asset_object.hpp.
|
inline |
Definition at line 277 of file asset_object.hpp.
| share_type graphene::chain::asset_bitasset_data_object::max_force_settlement_volume | ( | share_type | current_supply | ) | const |
Calculate the maximum force settlement volume per maintenance interval, given the current share supply.
Definition at line 33 of file asset_object.cpp.
|
inline |
Whether need to update core_exchange_rate in asset_object.
Definition at line 364 of file asset_object.hpp.
| void graphene::chain::asset_bitasset_data_object::update_median_feeds | ( | time_point_sec | current_time, |
| time_point_sec | next_maintenance_time | ||
| ) |
Definition at line 47 of file asset_object.cpp.
| bool graphene::chain::asset_bitasset_data_object::asset_cer_updated = false |
Track whether core_exchange_rate in corresponding asset_object has updated.
Definition at line 358 of file asset_object.hpp.
| asset_id_type graphene::chain::asset_bitasset_data_object::asset_id |
The asset this object belong to.
Definition at line 260 of file asset_object.hpp.
| price_feed_with_icr graphene::chain::asset_bitasset_data_object::current_feed |
This is the currently active price feed, calculated from median_feed and other parameters.
Definition at line 272 of file asset_object.hpp.
| time_point_sec graphene::chain::asset_bitasset_data_object::current_feed_publication_time |
This is the publication time of the oldest feed which was factored into current_feed.
Definition at line 274 of file asset_object.hpp.
| price graphene::chain::asset_bitasset_data_object::current_initial_collateralization |
After BSIP77, when creating a new debt position or updating an existing position, the position will be checked against the initial_collateral_ratio
(ICR) parameter in the bitasset options. This value is derived from current_feed (which includes ICR
) for better performance and should be kept consistent.
Definition at line 288 of file asset_object.hpp.
| price graphene::chain::asset_bitasset_data_object::current_maintenance_collateralization |
Call orders with collateralization (aka collateral/debt) not greater than this value are in margin call territory. This value is derived from current_feed for better performance and should be kept consistent.
Definition at line 283 of file asset_object.hpp.
| bool graphene::chain::asset_bitasset_data_object::feed_cer_updated = false |
Track whether core exchange rate in current feed has updated.
Definition at line 361 of file asset_object.hpp.
| flat_map<account_id_type, pair<time_point_sec,price_feed_with_icr> > graphene::chain::asset_bitasset_data_object::feeds |
Feeds published for this asset. The keys in this map are the feed publishing accounts. The timestamp on each feed is the time it was published.
Definition at line 268 of file asset_object.hpp.
| share_type graphene::chain::asset_bitasset_data_object::force_settled_volume |
This is the volume of this asset which has been force-settled this maintanence interval.
Definition at line 294 of file asset_object.hpp.
| share_type graphene::chain::asset_bitasset_data_object::individual_settlement_debt |
The individual settlement pool. In the event of individual settlements to fund, debt and collateral of the margin positions which got settled are moved here.
Amount of debt due to individual settlements
Definition at line 318 of file asset_object.hpp.
| share_type graphene::chain::asset_bitasset_data_object::individual_settlement_fund |
Amount of collateral which is available for force settlement due to individual settlements.
Definition at line 320 of file asset_object.hpp.
| bool graphene::chain::asset_bitasset_data_object::is_prediction_market = false |
True if this asset implements a Prediction Market.
Definition at line 291 of file asset_object.hpp.
| price_feed_with_icr graphene::chain::asset_bitasset_data_object::median_feed |
This is the median of values from the currently active feeds.
Definition at line 270 of file asset_object.hpp.
| bitasset_options graphene::chain::asset_bitasset_data_object::options |
The tunable options for BitAssets are stored in this field.
Definition at line 263 of file asset_object.hpp.
| share_type graphene::chain::asset_bitasset_data_object::settlement_fund |
Amount of collateral which is available for force settlement due to global settlement.
Definition at line 310 of file asset_object.hpp.
| price graphene::chain::asset_bitasset_data_object::settlement_price |
In the event of global settlement, all margin positions are settled with the siezed collateral being moved into the settlement fund. From this point on forced settlement occurs immediately when requested, using the settlement price and fund. Price at which force settlements of a globally settled asset will occur
Definition at line 308 of file asset_object.hpp.


This tutorial will show you how to create a FHIR based web application that reads, writes, updates, and deletes FHIR resources from a remote server. The application we will build is a simple patient task manager. Essentially this is a "To-Do" list for a healthcare provider to keep track of all the tasks needed in the care of a patient.
The FHIR resources used in this application are:
To make creation of this web app easier we are using the open-source web framework, MeteorJS. Meteor simplifies creation of web based tools by supplying a robust premade client-server infrastructure that allows us to focus on creating, manipulating, and displaying data (the fun stuff).
While this tutorial is intended to be used by anyone, regardless of programming background, it may be helpful to start by doing the "To Do" tutorial on the Meteor website (link here). The Meteor tutorial does go more in depth into the capabilities of Meteor then is needed for his tutorial, but also gives a good overview of the basic concepts and components of the framework.
All together, this tutorial consists of 205 lines of code (including some spaces), and we will build the app piece by piece.
This app was created purposefully to be in a single HTML file. One of Meteor's strengths is its templating engine, which we are not making use of for the sake of simplicity. The goal of this tutorial is the use of FHIR, rather than using Meteor. Also, I don't use ending semi-colons - because they are not needed in JavaScript, and tabs, not spaces. :)
To create a Meteor application you must first install Meteor on your machine. This is a pretty easy process, simply follow the instructions at the Meteor website:
Meteor InstallationOnce Meteor is installed on your computer you are ready to create your first application. Open a command prompt window and type:
meteor create patient-todo
This will tell Meteor to create the basic framework and directory structure for your application. There is simple built-in webpage to test that meteor is working. At the command prompt, navigate to the directory of your application:
cd patient-todo
and then simply type:meteor
Hit enter and the Meteor framework will begin to build your application. The first time you run Meteor at the command line it will take a bit to download all the necessary components and start your application. Once the process is completed you should see a message at the command prompt that looks like this:
If you then open a web browser (Google Chrome is recommended for its debugging capabilities) and type `localhost:3000` into the address bar you should see a web page like below. The `localhost` portion of the address is telling the web browser to reference the local computer (the one you are using) and the :3000
is directing it to PORT 3000, which is the default port that Meteor applications use. If you have another program running on PORT 3000 then you may receive an error at the command line and the application will fail to load.
If everything went well, you should now see this in your web browser:
You can stop the Meteor application from running at the command line by typing `CTRL-C`. The application will exit and you will be back to the command prompt. Stop the application now so that we can complete the final portion of Step 1.
We will add one directory to the application structure to eventually hold our database collection code. From the command line (or file explorer), make a new folder in the project dierectory called `import`. Your project directory should look something like this:
Now that we have installed Meteor and created the basic framework for our application, lets add a few additional building blocks to make our job even easier. Proceed to Step 2.
Meteor makes it easy to add other open-source packages and components to the framework to enhance and extend the basic capabilities. We will use the following packages to make communication with the FHIR server easier and the overall look of our webpage prettier.
The first package that we will add is called `HTTP`. This package allows you to send HTTP calls to a remote server. Since the basis for FHIR is as a REST API over HTTP supporting the standard CRUD operations (C-create, R-read, U-update, D-delete) the HTTP package is perfect for our purposes.
At the command line, execute the following:
meteor add http
The second package to add is called `Session`. This package adds the use of "Session" variables within a client web broswer. When a user navigates to the app webpage, the application can create unique Session variables which exist for that particular user as long as the webpage is open in the browser. Once the window is closed the Session variables are destroyed. The particularly useful thing about Session variables in the Meteor framework is that when the value of the variable changes, it forces elements within the webpage to change as well. We will use these variables to identify when a user has made a selection and update the webpage to reflect that choice.
Again, at the command line, execute the following:
meteor add session
The final package to add is `Bootstrap`. Bootstrap is a library of HTML-, CSS-, and JavaScript- based design templates for the web front-end. Bootstrap makes it easy to quickly build visually appealing websites. There are a variety of similar libraries out there such as Zurb Foundation and Semanti UI, but Bootstrap is easy and widely accepted, so we will enploy it to make our webpage a little prettier.
Finally, at the command line, execute the following:
meteor add twbs:bootstrap
Proceed to Step 3...
The first functionality we will add to the application is the ability to search for a particular patient in the FHIR database. We will keep this simple, and look patients up by their last name, allowing a user to then select a patient from the search result list.
Let's being by adding a title and some styling to our web page. Open the main.html
file located in the patient-todo/client
directory. Delete the Meteor starter HTML, so that the file now looks like this:
This will be our blank HTML slate to build upon. I have left place holder comments in the code, so you need to do is copy the tutorial code and replace the ≺!-- Step x HTML code goes HERE -->
markers at each step. Add the following HTML into the body
section of the client/main.html
file.
If you run Meteor from the command line in the project directory (/patient-todo/meteor
) and then open a web browser window to localhost:3000
then you should see the following:
Next let's add the search input box and button to initite the patient search. Much of the following code, particularly the class=""
delcarations, are components of Bootstrap used to make the page look pretty. Don't feel overwhelmed if you don't quite understand all the details of what we are doing in the HTML. The important points here are the input
and button
elements. This code snippit should also be added to the client/main.html
file, just below the code we added above.
With Meteor still running from the command line, you should be able to simply reload the webpage in the browser and now see something like this:
You can type in a name and press enter in the box (or press the search button). At this point the visual elements of the search are present, but entering a name and clicking the search button doesn't do anything. To make these pieces work, we need to add some JavaScipt code to the client/main.js
file. Find and open that file in your project patient-todo/
directory, and delete the Meteor starter code so our blank JavaScript slate only contains 2 lines of code and looks like this:
import { Template } from 'meteor/templating' import './main.html'
These two lines tell our application to load the Meteor Templating engine and then tie this JavaScript file to the main.html
webpage. Let's add two snippits of code beneath the import './main.html'
line.
The first piece of code we will add will listen for a user to click (or press enter) on the "Search for Patient" button that we created on the webpage. To do this we add a code section called events
. Copy and paste the code below into the main.js
file.
Template.body.events({ 'click #patientSearch' : function(event) { event.preventDefault() let name = $('#patientName').val() Meteor.call('FHIRpatientSearch', name, function(err, res) { Session.set('patientSearchList', res.entry) }) }, //Insert Step 5.3 Code Here //Insert Step 6.3 Code Here //Insert Step 7.2 Code Here //Insert Step 7.4 Code Here }) //Insert Step 4.1 Code Here
This code tells the webpage to listen for a click on the HTML element with an id
of patientSearch
. If you look back at the HTML we added above, you will see that the button we created has that id
. So everytime the "Search" button is clicked the webpage will execute the code within this 'click #patientSearch'
function. The function itself retrieves the text that we entered into the input
box and sends that information to our web app server in order to make a call via FHIR.
In order to make this function work, we need to add the server side code that sends the search query to the FHIR server. Let's do that now by editing the main.js
file in the patient-todo/server
directory. To the bottom of the main.js
file, add the following code snippit:
import { HTTP } from 'meteor/http' Meteor.methods({ FHIRpatientSearch : function (searchString) { let result = HTTP.call('GET', "http://learnfhir.aidbox.io/fhir/Patient?family=" + searchString) return JSON.parse(result.content) }, // Step 5.4 Code Goes HERE // Step 6.4 Code Goes HERE // Step 7.5 Code Goes HERE // Step 8.3 Code Goes HERE })
This code makes a request of the remote FHIR server (in this case "learnfhir.aidbox.io"). The request is to retrieve all Patient
resources with a family
name equal to the value of the input box from our web client. So when a user enters a name into the box and presses enter, that name is sent to the application server, which then performs a request of the FHIR sevrver to find all Patient records with that name and return the results. We then pass those results back to the user's web client.
To view those results in the webpage proceed to Step 4...
Now we need to show the patient search results in a list and allow users to select a patient or patients to follow.
Returning to the client code, the second code piece we will add defines some webpage "helpers". In Meteor, helpers can be thought of as placeholders or holes in the webpage. When the browser loads the webpage, these placeholders are filled in dynamically with data depending on how we define them in our JavaScript code. Add the following code to your client/main.js
file:
Template.body.helpers({ patientSearchResults : function () { return Session.get('patientSearchList') }, patientFirstName : function () { return this.resource.name[0].given[0] }, patientLastName : function () { return this.resource.name[0].family[0] }, patientId : function () { return this.resource.id }, //Insert Step 6.2 Code Here //Insert Step 7.3 Code Here //Insert Step 8.4 Code Here })
Now that we have defined the "helpers" in the JavaScript file we can use them in our HTML file in order to display the dynamic content in the webpage. Replace the "4.2 HTML" placeholder in the client/main.html
file with the following code:
Refresh your Meteor application/browser window. Then search for a patient by the name of "Hanson". After a few seconds, the webpage with search results should look like this:
Don't be surprised if there is a bit of a delay before you see the search results. There can often be some lag for the first request to the FHIR server, however subsequent requests will perform better. You can also try searching for a patient by the last name 'Morrison'.
Proceed to Step 5...
The next functionality we want to add to the application is the ability to create a custom patient follow-up list. We will use one of the fundmental parts of Meteor to do this - a MongoDB database. MongoDB falls under the NoSQL class of databases. Individual records within a MongoDB are referred to as "Documents" and a set of documents together is called a "collection". Let's build a collection of patients by retrieving their information for the FHIR server and creating a "Patients" collection where each document represents a separate patient.
To create a new collection we will make a new file in the /imports
sub-directory of our project. Imports are pieces of code that can be referenced by both the client or server. Create a file called Patients.js
and save it in the imports
directory. Copy and paste the following code snippit into the file:
import { Mongo } from 'meteor/mongo' export const Patients = new Mongo.Collection('patients') if (Meteor.isClient) { Meteor.subscribe('patients') } if (Meteor.isServer) { Meteor.publish('patients', function PatientsPublication() { return Patients.find({}) }) }
Now, to load the collection on both the client and the server, we need to create a reference to the collection in the main.js
files on both the client and server. Copy and add the following line of code at the beginning of both client/main.js
and server/main.js
files.
import { Patients } from '../imports/Patients.js'
Finally, we need a way to add patients to this collection. In Step 4 our patient list had a button to "Add Patient". Let's add an "event" function that will react when a user presses this button and adds the selected patient to our "Patients" collection. Open your client/main.js
file and add the following code snippit to the Template.body.events({
section so it looks like this:
'click #addPatient' : function(event) { event.preventDefault() Meteor.call('addPatient', this) },
Now, create the addPatient function in the `server/main.js` file with the rest of the meteor methods.
addPatient : function (patient) { Patients.upsert({ _id : patient._id }, patient) return },
This will add the patient to the database when you click the Add Patient button.
As you will see, this will appear to do nothing since we aren't yet doing anything with the data. So, how do we know if the patient was actually added to the collection? Well, one way to confirm is to look at the MongoDB database directly. Meteor makes this easy to do from the command line. Open a new terminal window in the main directory and type:
meteor mongo
You should see something like this:
At the Mongo prompt type:
db.patients.find({})
This command will "find" all the patients in your database. If you have successfully added patient "Hanson" to your Patients collection then you should see something like the following:
Now that we can add patients of interest to a collection, let's add the necessary components to display and manage the patient follow-up list on our webpage.
Proceed to Step 6...
Now that we have a patient collection in our database that we can use for follow-up, let's work on displaying that collection in the webpage. We will add a new section to the main.HTML file that will show the patient list. Add the following code to the HTML file in the designated location:
If you save the client/main.html
file and refresh the website you should now see something like this:
But you will notice that beyond the "Patient List" title, we are not seeing any selected patients. We should be seeing patient "Hanson" since we added that patient to the follow-up list in the previous step, and confirmed the addition of the data to the database. This is because we need to define a new "helper" in the JavaScript code that will display the database list on the webpage. To do this, copy the following code into the noted location in `client/main.js`:
patients : function () { return Patients.find({}) },
Now, when you save the file and refresh the webpage you should see something like this:
The patient follow-up list is now populated below the patient search box. Fantastic!
The is one additional button that we would like to make functional. You will see that the follow-up patient list members each has a button to remove the patient from the list. To make this button functional we need to add two components - an event listener which tells the website what to do when a user clicks the "Remove" patient button, and a function which removes that particular patient from the database.
First, let's add the button click event listener. Add the following code to the client/main.js
file.
'click #removePatient' : function (event) { event.preventDefault() Meteor.call('removePatient', this) },
Next, add the following code to the server/main.js
file. This code snippit will match any database record with the matching patient Id. In this implementation, each patient has a unique Id value.
removePatient : function (patient) { Patients.remove({ _id : patient._id }) return },
Once both of these pieces of code have been added, you should be able to search for a patient, add them to the follow-up list, and delete them from the follow-up list. In the picture below, the patient by the last name "Hanson" has been removed from the follow-up list and a patient by the last name of Morrison has been added instead.
client/main.html
file in the appropriate spot:
This will add a new "ToDo" list section to the right side of the screen, underneath the patient search box. We only want the input box to display when a patient has been selected. To do this we will add a new Session variable to hold the name of the selected patient and an event handler to tell the webpage when a patient has been selected from the Patient List. Add the following pieces of code in to the client/main.js
file:
'click .chosenPatient' : function () { Session.set('selectedPatient', this.resource.id) },
selectedPatient : function () { return Session.get('selectedPatient') },
Save the file and refresh your webpage. Now when you click on a patient in the Patient List you should see the input box to add a new task. We will get to displaying and changing the status of new tasks in the next couple of steps. The web page should now look like this:
Now we need to add the code to create a new CarePlan task when a user pushes the "Add Task" button. Similar to previous steps, we will first add an "event" handler in the client/main.js
file and then we will add code in the server/main.js
file that will send our newly created CarePlan resource to the FHIR server.
Open the client/main.js
file and add the following code snippet to the Templates.body.events({})
section:
'click #addTask' : function (event) { event.preventDefault() Meteor.call('FHIRaddCarePlan', $('#newTask').val(), Session.get('selectedPatient')) updateTaskList(Session.get('selectedPatient')) },
Next, open the server/main.js
file and add the following code to the Meteor.methods({})
section:
FHIRaddCarePlan : function (task, patientId) { let CarePlan = { "resourceType" : "CarePlan", "status" : "active", "subject" : { "reference" : "Patient/" + patientId }, "description" : task } HTTP.call('POST', "http://learnfhir.aidbox.io/fhir/CarePlan", { data: CarePlan }) return },
Now when a user types a task and selects "Add Task" the website will send that task to the server, which will then format it into a proper CarePlan resource, and then write that resource to the FHIR server.
If we type "Get Chest X-ray" into the input box and click "Add Task" nothing will happen, at least not that we can see. This is because we haven't added the code yet to display the list (Step 8). But the information should have made its way to the FHIR server. If we query the FHIR server directly, we should be able to find our CarePlan task.
Open a new browser window and type learnFHIR.aidbox.io/fhir/CarePlan
(case sensitive) into the address bar. This will query the FHIR server for all CarePlan resources. You should get a response that looks like this:
Now let's add the code to see the task list for a selected patient. We will first add the HTML code in to the client/main.html
file, and then add the JavaScript to support the HTML elements. Copy and paste the following code into the appropriate spot:
If you save and refresh the website you will not see any changes yet. That is because we need to first load the CarePlan task list from the FHIR server. Since every time we add, change, or deleta a task we will want to refresh the ToDo List, let's add a generic function we can call at any time to get an updated list of CarePlan tasks. At the bottom of your client/main.js
file, add the following code. This code will go outside and below the Template.body.events
and Template.body.helpers
sections:
function updateTaskList(patientId) { Meteor.call('FHIRgetCarePlan', patientId, function (err, res) { Session.set('patientTasks', res.entry) }) }
Next we need to add the corresponding function on our server to retrieve the CarePlan tasks from the remote FHIR server. To do this, add the following code to the server/main.js
file.
FHIRgetCarePlan : function (patientId) { let result = HTTP.call('GET', "http://learnfhir.aidbox.io/fhir/CarePlan?patient=" + patientId) return JSON.parse(result.content) },
Finally, create a "helper" in the client/main.js
file to supply the HTML with our patient ToDo list:
patientTasks : function () { return Session.get('patientTasks') },
After all this, if you save and refresh the webpage you still won't see a ToDo List. Why not? Because we have yet to call our updateTaskList()
function. We will want to load/update the displayed ToDo list every time a patient is selected from the Patient List, and so we should call the updateTaskList()
function from our chosenPatient
event handler. Edit the code in your client/main.js
file so that the 'click .chosenPatient'
function now looks like this:
'click .chosenPatient' : function () { Session.set('selectedPatient', this.resource.id) updateTaskList(this.resource.id) },
This will call the updateTaskList()
every time a patient is selected from the Patient List. Save the file and try this now. Your webpage should now look like this (if you added a Task in Step 7)
The final step will allow us to delete and change the status of ToDo List tasks.
For our final step, we will add the ability to modify an existing CarePlan task. This will be reflected not only on the webpage, but in the CarePlan resource on the FHIR server as well. Similar to what we've done in several prior steps, we will first add event handlers to the client/main.js
code, then functions in the server/main.js
that talk to the FHIR server, then a new helper in the client/main.js
along with the slight changes to the HTML to make it easier to see what the status of a task is.
Let's start by adding those new event handlers in the client/main.js
file:
'click #toggleStatus' : function (event) { event.preventDefault() Meteor.call('FHIRtoggleCarePlanStatus', this.resource) updateTaskList(Session.get('selectedPatient')) }, 'click #deleteTask' : function (event) { event.preventDefault() Meteor.call('FHIRdeleteCarePlan', this.resource) updateTaskList(Session.get('selectedPatient')) }
Then continue by adding the corresponding functions in the server/main.js
file:
FHIRtoggleCarePlanStatus : function (carePlan) { carePlan.status = carePlan.status == "active" ? "completed" : "active" HTTP.call('PUT', "http://learnfhir.aidbox.io/fhir/CarePlan/" + carePlan.id, { data : carePlan }) }, FHIRdeleteCarePlan : function (carePlan) { HTTP.call('DELETE', "http://learnfhir.aidbox.io/fhir/CarePlan/" + carePlan.id) },
With those code sections added above you should now be able to delete a ToDo List task and modify it from "active" to "completed". To make it a little more visually intuitive, lets change the color of a task depending on its status. To do this we will add a helper that will allow our HTML to query the status of a given task and set some display parameters accordingly.
For the last time, open the client/main.js
file and add the following code the the Template.body.helpers({})
section:
status : function(status) { return this.resource.status == status },
Now let's alter our existing HTML so that it changes how each ToDo List task looks depending on the CarePlan status. Locate the HTML element under the ToDo List section that begins with <li class="list-group-item">
. Edit both the class attribute of the <li>
element as well as the code within the list item so it looks like this:
Now when you complete a task the list items should look like this:


Adobe InDesign CS2
Join the growing ranks of creative professionals discovering new levels of creative freedom and productivity using Adobe® InDesign® CS2 software. Tightly integrated with the Adobe applications you use most, InDesign CS2 delivers faster production workflows and a more fluid creative environment for designing professional layouts with sophisticated graphics and typography.
Features
- Object styles
- Adobe Photoshop and Adobe PDF layer support
- InDesign snippets
- Adobe InCopy CS2 assignments
- Save backwards to InDesign CS


Hello there! I am a software developer who enjoys working with Python, C++, and Open Source Software.
My interests are back-end development, machine learning, devops, and designing creative solutions.
I have participated in Hackathons, and every Hacktoberfest since 2016.
In my spare time I play videogames, cook, and contribute to Open Source projects.


Resource Information
First Name
error
Last Name
error
Type
There is currently no resource information associated with this resource.


| # | Who | = | Penalty | * | A | B | C | D | E | F | G |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | WZYYN | 7 | 186 | + 00:02 | + 00:05 | + 00:07 | + 00:22 | + 00:27 | + 00:43 | + 01:20 | |
| 2 | 137_345_2814 | 7 | 194 | + 00:03 | + 00:05 | + 00:09 | + 00:19 | + 00:25 | + 00:59 | + 01:14 | |
| 3 | jiangly | 7 | 200 | + 00:04 | + 00:06 | + 00:11 | + 00:18 | + 00:23 | + 00:48 | + 01:30 | |
| 4 | LayCurse | 7 | 203 | + 00:03 | + 00:07 | + 00:12 | + 00:18 | + 00:22 | + 00:36 | +2 01:25 | |
| 5 | dreamoon_love_AA | 7 | 258 | + 00:02 | + 00:05 | + 00:09 | + 00:14 | + 00:22 | +3 01:58 | + 00:58 | |
| 6 | SecondThread | 7 | 266 | + 00:08 | + 00:11 | + 00:16 | + 00:32 | + 00:25 | + 00:54 | +1 01:50 | |
| 6 | risujiroh | 7 | 266 | + 00:02 | + 00:05 | + 00:09 | +2 00:51 | + 00:29 | +1 01:35 | + 00:45 | |
| 8 | cuiaoxiang | 7 | 280 | + 00:03 | + 00:06 | + 00:09 | +1 00:30 | + 00:40 | +1 01:48 | + 01:04 | |
| 9 | wakaka | 7 | 320 | + 00:04 | + 00:07 | + 00:24 | + 00:35 | + 00:41 | +1 01:52 | + 01:27 | |
| 10 | hank55663 | 7 | 362 | + 00:03 | + 00:06 | +1 00:17 | + 00:26 | +1 00:42 | +3 01:31 | +1 01:57 | |
| 11 | PinkRabbit | 6 | 115 | + 00:03 | + 00:05 | + 00:08 | + 00:17 | + 00:23 | + 00:59 | ||
| 12 | Yupiteru | 6 | 151 | + 00:03 | + 00:06 | + 00:12 | + 00:22 | + 00:36 | + 01:12 | ||
| 13 | leaf1415 | 6 | 155 | + 00:04 | + 00:07 | + 00:14 | + 00:28 | + 00:35 | + 01:07 | ||
| 14 | rdd6584 | 6 | 157 | + 00:04 | + 00:08 | + 00:12 | +1 00:34 | + 00:20 | + 01:09 | ||
| 15 | jkchen | 6 | 166 | + 00:02 | + 00:03 | +1 00:14 | +1 00:12 | + 00:23 | +3 01:02 | -3 | |
| 15 | xyr2005 | 6 | 166 | + 00:02 | + 00:04 | + 00:17 | + 00:20 | + 00:35 | +2 01:08 | ||
| 17 | alireza_kaviani | 6 | 169 | + 00:07 | + 00:11 | + 00:03 | +1 00:22 | + 00:32 | + 01:24 | -2 | |
| 18 | smiken | 6 | 172 | + 00:03 | + 00:05 | + 00:09 | +1 00:36 | + 00:14 | + 01:35 | ||
| 19 | Medeowex | 6 | 173 | + 00:03 | + 00:06 | +1 00:19 | + 00:29 | + 00:34 | + 01:12 | ||
| 20 | emthrm | 6 | 176 | + 00:04 | + 00:07 | + 00:26 | + 00:33 | + 00:39 | + 01:07 | -2 | |
| 21 | Danieldandandan | 6 | 184 | + 00:05 | + 00:07 | + 00:10 | + 00:20 | + 00:25 | +3 01:27 | ||
| 22 | Remocuz | 6 | 192 | +1 | + 00:03 | + 00:05 | + 00:10 | +2 00:21 | + 00:26 | +2 01:27 | |
| 23 | Shibuyap | 6 | 195 | + 00:03 | + 00:07 | + 00:11 | +1 00:26 | + 00:17 | +3 01:31 | ||
| 24 | RUSH_D_CAT | 6 | 200 | + 00:04 | + 00:06 | + 00:10 | + 00:25 | + 00:17 | +4 01:38 | ||
| 25 | Pro_ktmr | 6 | 203 | + 00:06 | + 00:09 | + 00:17 | + 00:29 | + 00:39 | +3 01:13 | ||
| 26 | turmax | 6 | 206 | + 00:02 | +2 00:10 | + 00:13 | +1 00:31 | + 00:42 | -3 | + 01:18 | |
| 26 | t4c0 | 6 | 206 | + 00:06 | + 00:09 | + 00:18 | + 00:27 | + 00:38 | +2 01:28 | ||
| 26 | radical108 | 6 | 206 | +1 00:06 | + 00:09 | + 00:18 | + 00:37 | + 00:26 | +1 01:30 | ||
| 29 | codingpepper | 6 | 211 | + 00:04 | + 00:09 | + 00:15 | +1 00:27 | + 00:38 | +1 01:38 | ||
| 30 | MysteryGuy2 | 6 | 219 | + 00:03 | + 00:06 | +1 00:13 | +1 00:28 | + 00:40 | +2 01:29 | ||
| 31 | demoralizer | 6 | 220 | + 00:04 | + 00:07 | + 00:16 | + 00:32 | + 00:41 | +3 01:30 | ||
| 31 | Evolylenol | 6 | 220 | + 00:05 | + 00:11 | + 00:21 | + 00:34 | + 00:47 | +1 01:32 | ||
| 33 | azukun | 6 | 233 | + 00:03 | + 00:06 | + 00:21 | +1 00:32 | + 00:54 | + 01:47 | ||
| 34 | vsriram1012 | 6 | 237 | + 00:03 | +1 00:07 | + 00:19 | + 00:40 | + 00:49 | + 01:49 | ||
| 35 | Ormlis | 6 | 241 | + 00:03 | + 00:06 | + 00:17 | +1 00:38 | + 00:46 | +1 01:51 | ||
| 36 | spidy7 | 6 | 246 | + 00:08 | + 00:13 | + 00:18 | + 00:40 | + 00:57 | + 01:50 | ||
| 37 | Spheniscine | 6 | 252 | + 00:03 | + 00:06 | + 00:59 | +1 00:49 | + 00:28 | + 01:37 | ||
| 38 | natofp | 6 | 253 | + 00:04 | + 00:06 | +1 00:20 | + 00:43 | + 01:10 | + 01:40 | ||
| 39 | I_love_Imakf | 6 | 257 | + 00:04 | +1 00:08 | + 00:13 | +2 01:00 | + 00:32 | + 01:50 | ||
| 40 | Kude | 6 | 259 | + 00:09 | +1 00:15 | + 00:24 | + 00:34 | + 00:48 | +3 01:29 | ||
| 40 | cheissmart2 | 6 | 259 | +1 : -7 | + 00:03 | + 00:09 | + 00:18 | +1 00:44 | + 00:51 | +1 01:54 | |
| 42 | juppy | 6 | 260 | + 00:05 | + 00:12 | + 00:20 | +2 00:44 | + 01:02 | + 01:37 | ||
| 43 | YoungK | 6 | 263 | + 00:07 | + 00:11 | + 00:36 | + 00:48 | + 01:01 | + 01:40 | ||
| 44 | fsshakkhor | 6 | 267 | + 00:03 | + 00:08 | +1 00:26 | +1 00:40 | + 01:05 | +1 01:35 | ||
| 45 | DANDROZAVR | 6 | 270 | + 00:04 | +1 00:09 | +2 00:27 | +1 00:34 | + 00:54 | + 01:42 | ||
| 46 | .Yushen. | 6 | 274 | + 00:02 | + 00:05 | + 00:18 | +1 00:47 | + 00:58 | +2 01:54 | ||
| 47 | hirokazu1020 | 6 | 285 | + 00:07 | +1 00:19 | + 00:26 | + 00:41 | + 00:55 | +1 01:57 | ||
| 48 | kostia244 | 6 | 292 | + 00:03 | + 00:06 | +1 00:19 | +1 01:22 | + 01:29 | + 01:13 | ||
| 49 | Young.IQ | 6 | 296 | -1 | + 00:05 | + 00:08 | + 00:18 | +2 00:57 | + 01:04 | +2 01:44 | |
| 50 | mban259 | 6 | 306 | + 00:04 | + 00:07 | +1 00:38 | + 00:58 | + 01:06 | +1 01:53 | ||
| 51 | VladProg | 6 | 312 | + 00:05 | + 00:16 | + 00:49 | + 00:57 | + 01:06 | +1 01:49 | ||
| 52 | RedStone | 6 | 326 | + 00:06 | +1 00:14 | + 00:21 | +3 00:47 | + 01:08 | +2 01:50 | ||
| 53 | terry_u16 | 6 | 347 | +3 | + 00:04 | + 00:18 | +1 00:41 | + 00:57 | + 01:18 | +2 01:59 | |
| 54 | SSRS_ | 5 | 61 | + 00:02 | + 00:04 | + 00:07 | +1 00:24 | + 00:14 | |||
| 55 | kiyoshi0205 | 5 | 65 | + 00:03 | + 00:07 | + 00:12 | + 00:25 | + 00:18 | -3 | ||
| 56 | FireCrystal | 5 | 66 | + 00:04 | + 00:06 | + 00:11 | + 00:20 | + 00:25 | |||
| 57 | kzyKT | 5 | 68 | + 00:03 | + 00:07 | + 00:11 | + 00:20 | + 00:27 | -4 | ||
| 58 | wery0 | 5 | 70 | + 00:03 | + 00:05 | + 00:09 | + 00:17 | + 00:36 | -7 | ||
| 59 | Heltion | 5 | 72 | + 00:03 | + 00:06 | + 00:10 | + 00:24 | + 00:29 | |||
| 60 | lz1vyy | 5 | 80 | + 00:03 | + 00:07 | + 00:13 | + 00:24 | + 00:33 | -10 | ||
| 61 | colgap | 5 | 82 | + 00:04 | +1 00:06 | + 00:09 | + 00:24 | + 00:29 | -5 | ||
| 61 | Zoli9 | 5 | 82 | + 00:04 | + 00:07 | + 00:11 | + 00:23 | + 00:37 | |||
| 63 | QZSRY | 5 | 84 | + 00:02 | + 00:06 | + 00:13 | + 00:30 | + 00:33 | |||
| 64 | Hoshina7 | 5 | 85 | + 00:03 | + 00:05 | + 00:10 | +2 00:31 | + 00:16 | -1 | ||
| 65 | xb0nS | 5 | 86 | + 00:02 | + 00:05 | + 00:09 | +2 00:32 | + 00:18 | |||
| 65 | Tokisaki-Kurumi | 5 | 86 | + 00:03 | + 00:05 | + 00:16 | + 00:41 | + 00:21 | |||
| 67 | Maksim1744 | 5 | 88 | + 00:03 | + 00:09 | + 00:14 | + 00:22 | + 00:40 | |||
| 68 | oleh1421 | 5 | 89 | + 00:03 | + 00:06 | + 00:08 | +3 00:28 | + 00:14 | -6 | ||
| 69 | user060804 | 5 | 91 | + 00:03 | + 00:06 | + 00:09 | + 00:20 | + 00:53 | |||
| 70 | Quartermelon | 5 | 93 | + 00:05 | + 00:08 | + 00:13 | + 00:38 | + 00:29 | |||
| 71 | BlueDiamond | 5 | 94 | + 00:03 | + 00:06 | + 00:09 | +3 00:32 | + 00:14 | -15 | ||
| 72 | marmot0814 | 5 | 96 | + 00:02 | + 00:05 | + 00:14 | +1 00:25 | + 00:40 | |||
| 72 | Celesta | 5 | 96 | + 00:06 | + 00:09 | + 00:18 | + 00:26 | + 00:37 | -4 | ||
| 72 | coco18000 | 5 | 96 | + 00:03 | + 00:07 | + 00:13 | + 00:26 | + 00:47 | -1 | ||
| 75 | LeastCommonAncestor | 5 | 99 | + 00:02 | + 00:04 | + 00:13 | + 00:20 | + 01:00 | -5 | ||
| 75 | CTP_315 | 5 | 99 | + 00:05 | + 00:10 | + 00:14 | +1 00:25 | + 00:35 | -2 | ||
| 77 | swapnil159 | 5 | 100 | + 00:03 | + 00:06 | + 00:10 | + 00:18 | +1 00:53 | |||
| 77 | vito1036 | 5 | 100 | -3 | + 00:05 | + 00:09 | + 00:15 | + 00:27 | + 00:44 | ||
| 79 | mphillotry | 5 | 101 | +1 00:04 | + 00:07 | + 00:13 | + 00:28 | + 00:39 | -1 | ||
| 80 | dendi239 | 5 | 102 | -1 | + 00:05 | + 00:07 | + 00:15 | + 00:29 | + 00:46 | ||
| 81 | jxdxhy | 5 | 107 | + 00:03 | + 00:07 | +1 00:16 | +1 00:28 | + 00:33 | -1 | ||
| 81 | dlalswp25 | 5 | 107 | + 00:01 | + 00:04 | + 00:07 | +4 00:25 | + 00:30 | -2 | ||
| 81 | titia | 5 | 107 | + 00:08 | + 00:11 | + 00:18 | + 00:41 | + 00:29 | -1 | ||
| 81 | Nickqw | 5 | 107 | + 00:03 | + 00:07 | + 00:14 | + 00:38 | + 00:45 | -2 | ||
| 85 | LJF007 | 5 | 108 | + 00:04 | + 00:08 | + 00:18 | + 00:30 | + 00:48 | -3 | ||
| 86 | Doludu123 | 5 | 109 | + 00:03 | +1 00:12 | + 00:17 | + 00:38 | + 00:29 | -1 | ||
| 86 | proggerkz | 5 | 109 | + 00:02 | + 00:05 | + 00:09 | +1 00:55 | + 00:28 | -2 | ||
| 88 | _ztyqwq | 5 | 110 | +3 | + 00:03 | + 00:07 | + 00:21 | + 00:32 | + 00:47 | ||
| 89 | carrot46 | 5 | 111 | + 00:06 | + 00:10 | + 00:18 | + 00:30 | + 00:47 | -1 | ||
| 89 | bacon_cwk | 5 | 111 | + 00:04 | + 00:10 | + 00:14 | + 00:54 | + 00:29 | |||
| 91 | tanxi | 5 | 113 | + 00:05 | + 00:09 | + 00:21 | + 00:31 | + 00:47 | |||
| 92 | cycl | 5 | 114 | + 00:09 | + 00:12 | + 00:18 | + 00:30 | + 00:45 | |||
| 92 | suiyuan1992 | 5 | 114 | + 00:05 | + 00:10 | + 00:20 | + 00:32 | + 00:47 | |||
| 92 | Pyqe | 5 | 114 | + 00:09 | + 00:15 | + 00:20 | + 00:31 | + 00:39 | |||
| 95 | Parsa84 | 5 | 115 | + 00:05 | + 00:09 | + 00:15 | + 00:27 | + 00:59 | |||
| 96 | Enkognit | 5 | 116 | + 00:02 | + 00:03 | + 00:14 | +1 00:48 | + 00:39 | |||
| 96 | xyq0220 | 5 | 116 | + 00:04 | +1 00:08 | + 00:13 | +1 00:28 | + 00:43 | |||
| 96 | jesus_coconut | 5 | 116 | + 00:03 | +1 00:07 | + 00:23 | + 00:40 | + 00:33 | |||
| 96 | stnkien | 5 | 116 | +4 | + 00:04 | + 00:07 | + 00:21 | + 00:30 | + 00:54 | ||
| 100 | mohit1O98 | 5 | 117 | + 00:06 | + 00:14 | + 00:22 | + 00:33 | + 00:42 | -1 | ||
| 100 | Eureka17 | 5 | 117 | + 00:04 | + 00:08 | + 00:15 | + 00:40 | + 00:50 | |||
| 100 | tianfuzhen | 5 | 117 | + 00:04 | + 00:08 | + 00:17 | +1 00:28 | + 00:50 | |||
| 100 | raywang4 | 5 | 117 | + 00:03 | + 00:06 | +1 00:15 | + 00:26 | +1 00:47 | |||
| 100 | Mojumbo | 5 | 117 | + 00:02 | + 00:05 | + 00:09 | +2 00:50 | + 00:31 | -2 | ||
| 105 | night_fury208 | 5 | 118 | + 00:05 | + 00:08 | + 00:14 | + 00:22 | + 01:09 | |||
| 105 | The.Last.Wizard | 5 | 118 | + 00:03 | + 00:07 | + 00:22 | + 00:38 | + 00:48 | |||
| 105 | WCG | 5 | 118 | + 00:08 | + 00:10 | + 00:15 | + 00:25 | + 01:00 | |||
| 108 | kazuki08 | 5 | 119 | + 00:07 | + 00:12 | + 00:19 | + 00:48 | + 00:33 | |||
| 109 | A_Le_K | 5 | 120 | + 00:03 | + 00:07 | + 00:19 | + 00:36 | + 00:55 | -1 | ||
| 110 | BaThUn | 5 | 121 | + 00:04 | + 00:08 | + 00:16 | + 00:38 | + 00:55 | -1 | ||
| 110 | Bench0310 | 5 | 121 | + 00:03 | +1 00:09 | + 00:23 | + 00:31 | + 00:45 | -1 | -1 | |
| 110 | EIKOU | 5 | 121 | + 00:05 | + 00:08 | + 00:20 | +1 00:49 | + 00:29 | |||
| 113 | jam1729 | 5 | 122 | + 00:03 | + 00:07 | + 00:17 | +1 00:35 | + 00:50 | -5 | ||
| 113 | Podolyanochka | 5 | 122 | + 00:07 | +1 00:11 | + 00:23 | + 00:29 | + 00:42 | -2 | ||
| 113 | L.O.V.E. | 5 | 122 | + 00:05 | + 00:10 | + 00:21 | +1 00:34 | + 00:42 | |||
| 113 | yash_daga | 5 | 122 | + 00:06 | + 00:10 | + 00:18 | + 00:53 | + 00:35 | |||
| 117 | wronganswer | 5 | 124 | + 00:06 | +1 00:08 | + 00:18 | + 00:31 | + 00:51 | -4 | ||
| 117 | ningenMe | 5 | 124 | + 00:05 | +1 00:10 | + 00:19 | + 00:36 | + 00:44 | |||
| 117 | H44 | 5 | 124 | + 00:04 | + 00:08 | + 00:16 | +1 00:38 | + 00:48 | |||
| 117 | sojisan | 5 | 124 | + 00:02 | + 00:05 | + 00:11 | +3 00:52 | + 00:24 | |||
| 121 | daiwakun | 5 | 125 | + 00:05 | + 00:09 | + 00:15 | + 00:36 | + 01:00 | |||
| 121 | __eRRor__ | 5 | 125 | + 00:04 | + 00:07 | + 00:17 | + 00:44 | + 00:53 | |||
| 121 | Cyber_Wizard | 5 | 125 | + 00:05 | + 00:07 | + 00:16 | +1 00:52 | + 00:35 | -7 | ||
| 121 | LastVirtualContester | 5 | 125 | + 00:06 | + 00:08 | + 00:20 | + 00:35 | + 00:56 | |||
| 125 | 2018liuzhiyuan | 5 | 126 | + 00:05 | + 00:10 | + 00:17 | + 00:32 | + 01:02 | -1 | ||
| 125 | spider_0859 | 5 | 126 | -1 | + 00:06 | + 00:11 | + 00:16 | + 00:54 | + 00:39 | ||
| 127 | gheorghe_armand | 5 | 127 | + 00:03 | + 00:06 | + 00:18 | +1 00:38 | + 00:52 | -1 | ||
| 128 | dum4ss | 5 | 129 | + 00:07 | + 00:14 | + 00:19 | + 00:39 | + 00:50 | |||
| 128 | newHandle0 | 5 | 129 | + 00:04 | + 00:08 | + 00:14 | +1 00:32 | + 01:01 | -1 | ||
| 130 | Emilan | 5 | 130 | + 00:07 | + 00:12 | + 00:21 | + 00:33 | + 00:57 | -1 | ||
| 131 | dysyn1314 | 5 | 131 | + 00:06 | + 00:14 | + 00:18 | +1 00:34 | + 00:49 | -3 | ||
| 131 | wssstc | 5 | 131 | + 00:06 | + 00:07 | +1 00:16 | +1 00:38 | + 00:44 | |||
| 131 | Mr_Eight | 5 | 131 | + 00:06 | + 00:10 | + 00:20 | +1 00:33 | + 00:52 | |||
| 134 | tran0826_1 | 5 | 132 | + 00:03 | + 00:05 | + 00:21 | +1 00:40 | + 00:53 | |||
| 134 | cypherop | 5 | 132 | + 00:03 | + 00:06 | + 00:22 | + 00:55 | + 00:46 | |||
| 134 | Kaitokid | 5 | 132 | + 00:08 | + 00:15 | + 00:21 | + 00:36 | + 00:52 | |||
| 137 | Gubbins | 5 | 133 | + 00:05 | + 00:10 | + 00:22 | + 00:40 | + 00:56 | |||
| 137 | gaddopur_coder | 5 | 133 | + 00:18 | + 00:10 | + 00:06 | +1 00:35 | + 00:54 | |||
| 137 | nishant403 | 5 | 133 | + 00:05 | + 00:08 | + 00:12 | +1 00:39 | + 00:59 | -1 | ||
| 137 | vikas_baghel | 5 | 133 | + 00:04 | + 00:08 | + 00:19 | + 00:33 | + 01:09 | |||
| 141 | --Someone-- | 5 | 134 | -6 | + 00:03 | + 00:05 | + 00:14 | +2 00:55 | + 00:37 | ||
| 141 | prd_xxx | 5 | 134 | + 00:07 | + 00:11 | + 00:17 | + 00:38 | + 01:01 | |||
| 143 | S2speed | 5 | 135 | + 00:04 | + 00:09 | + 00:15 | + 00:37 | + 01:10 | |||
| 143 | favre_smosp | 5 | 135 | -1 | + 00:02 | +1 00:07 | + 00:13 | + 00:36 | + 01:07 | ||
| 143 | bjtuwd15301013 | 5 | 135 | + 00:05 | + 00:08 | + 00:22 | + 00:31 | + 01:09 | |||
| 146 | G00dCOD3R | 5 | 136 | + 00:03 | + 00:08 | + 00:21 | +1 00:45 | + 00:49 | |||
| 146 | IIeJlMeHb | 5 | 136 | + 00:03 | +1 00:07 | + 00:12 | +2 00:58 | + 00:26 | |||
| 148 | Shreyas_9991 | 5 | 137 | + 00:07 | + 00:11 | + 00:21 | + 00:38 | + 01:00 | |||
| 149 | Turkey | 5 | 138 | + 00:04 | + 00:08 | + 00:22 | + 00:43 | + 01:01 | |||
| 149 | Pccc | 5 | 138 | + 00:04 | + 00:08 | + 00:17 | +1 00:41 | + 00:58 | -2 | ||
| 149 | shuyefan | 5 | 138 | + 00:05 | + 00:12 | + 00:24 | + 00:38 | + 00:59 | |||
| 149 | WTSH | 5 | 138 | + 00:06 | + 00:10 | + 00:19 | + 00:39 | + 01:04 | |||
| 149 | The-Out-Land | 5 | 138 | + 00:06 | + 00:10 | + 00:21 | + 00:40 | +1 00:51 | |||
| 149 | alimq | 5 | 138 | + 00:03 | + 00:07 | + 00:24 | +1 00:43 | + 00:51 | -1 | ||
| 155 | Gremio | 5 | 139 | + 00:06 | + 00:10 | + 00:18 | + 00:42 | + 01:03 | |||
| 155 | _Ash__ | 5 | 139 | + 00:05 | + 00:10 | + 00:16 | +1 01:10 | + 00:28 | -11 | ||
| 155 | txingml | 5 | 139 | + 00:06 | + 00:11 | + 00:21 | + 00:35 | + 01:06 | |||
| 155 | 2fat2code | 5 | 139 | + 00:04 | + 00:07 | +1 00:24 | + 00:59 | + 00:35 | |||
| 159 | kunj017 | 5 | 141 | +1 00:06 | + 00:12 | + 00:18 | + 00:40 | + 00:55 | |||
| 160 | MiricaMatei | 5 | 142 | + 00:04 | + 00:09 | + 00:15 | +2 01:06 | + 00:28 | |||
| 161 | flukehn | 5 | 143 | + 00:05 | + 00:08 | + 00:16 | + 01:05 | + 00:49 | |||
| 161 | Stelutzu | 5 | 143 | + 00:04 | + 00:10 | + 00:20 | + 00:40 | + 01:09 | |||
| 161 | GioChkhaidze | 5 | 143 | + 00:04 | + 00:08 | + 00:18 | +1 01:11 | + 00:32 | |||
| 161 | smit_mandavia | 5 | 143 | +3 : -2 | + 00:04 | +1 00:18 | + 00:24 | + 00:32 | + 00:55 | ||
| 161 | __Achilles | 5 | 143 | + 00:04 | + 00:08 | + 00:20 | + 00:44 | + 01:07 | |||
| 166 | Kaizyn | 5 | 144 | +1 00:08 | + 00:10 | +1 00:24 | + 00:47 | + 00:35 | -2 | ||
| 166 | AzusaCat | 5 | 144 | +1 : -1 | + 00:02 | + 00:05 | + 00:10 | +4 01:07 | + 00:20 | -4 | |
| 166 | DougZheng | 5 | 144 | + 00:07 | + 00:13 | + 00:20 | + 00:39 | + 01:05 | |||
| 166 | Lawali | 5 | 144 | + 00:21 | + 00:23 | + 00:26 | + 00:32 | + 00:42 | -1 | ||
| 166 | lynmisakura | 5 | 144 | + 00:04 | +1 00:08 | + 00:24 | + 00:40 | + 00:58 | -1 | ||
| 166 | fiore57 | 5 | 144 | + 00:05 | + 00:09 | + 00:17 | +1 00:47 | + 00:56 | -3 | ||
| 172 | kumaraditya1999 | 5 | 145 | -1 | + 00:03 | + 00:10 | + 00:26 | + 00:36 | + 01:10 | ||
| 172 | shikhar7s | 5 | 145 | + 00:04 | + 00:07 | + 00:12 | +1 00:27 | +2 01:05 | |||
| 172 | andr0901 | 5 | 145 | + 00:02 | + 00:04 | +1 00:11 | +3 00:40 | + 00:48 | |||
| 172 | aditya_sheth | 5 | 145 | + 00:07 | + 00:10 | + 00:20 | + 01:06 | + 00:42 | |||
| 172 | tejas10p | 5 | 145 | + 00:03 | + 00:09 | +1 00:21 | +1 00:36 | + 00:56 | |||
| 177 | _franz_ | 5 | 146 | + 00:08 | + 00:13 | + 00:21 | + 00:35 | +1 00:59 | |||
| 177 | ulyss | 5 | 146 | + 00:07 | + 00:10 | + 00:23 | + 00:40 | + 01:06 | |||
| 177 | Owen_codeisking | 5 | 146 | + 00:05 | + 00:08 | + 00:20 | +1 00:48 | + 00:55 | |||
| 177 | jiaangkw | 5 | 146 | + 00:07 | +1 00:11 | + 00:22 | + 00:35 | + 01:01 | |||
| 181 | Arg_007 | 5 | 147 | + 00:04 | + 00:09 | + 00:26 | + 00:42 | + 01:06 | -4 | ||
| 182 | applese | 5 | 148 | -1 | + 00:02 | + 00:06 | + 00:12 | +2 00:42 | + 01:06 | ||
| 182 | bgrm | 5 | 148 | + 00:04 | + 00:09 | + 00:15 | + 00:33 | + 01:27 | -2 | ||
| 182 | Dremix10 | 5 | 148 | + 00:05 | + 00:08 | + 00:19 | +1 00:41 | + 01:05 | -3 | ||
| 182 | gokul.raj | 5 | 148 | + 00:04 | + 00:09 | + 00:17 | +1 00:41 | + 01:07 | |||
| 186 | unolight | 5 | 149 | + 00:04 | + 00:07 | + 00:17 | +1 00:32 | + 01:19 | |||
| 186 | EmK | 5 | 149 | + 00:06 | +2 00:13 | + 00:21 | +1 00:36 | + 00:43 | -2 | ||
| 186 | AnnSuperstar | 5 | 149 | + 00:04 | + 00:09 | + 00:23 | + 00:39 | + 01:14 | -4 | ||
| 186 | pengin_2000 | 5 | 149 | + 00:04 | + 00:13 | + 00:19 | +1 00:37 | +1 00:56 | |||
| 190 | LunaticGe | 5 | 150 | + 00:11 | + 00:15 | + 00:23 | + 00:35 | + 01:06 | -2 | ||
| 190 | ernestlu | 5 | 150 | + 00:04 | + 00:08 | + 00:20 | +1 00:41 | + 01:07 | |||
| 190 | Tanmay_21 | 5 | 150 | + 00:09 | + 00:13 | + 00:24 | + 00:35 | + 01:09 | -1 | ||
| 190 | 603325260 | 5 | 150 | + 00:05 | +2 00:12 | + 00:18 | + 00:34 | + 01:01 | -6 | ||
| 190 | frangl | 5 | 150 | + 00:09 | + 00:12 | + 00:19 | + 00:31 | + 01:19 | -2 | ||
| 190 | iaNTU | 5 | 150 | + 00:03 | +2 00:08 | +1 00:55 | + 00:17 | +1 00:27 | |||
| 196 | pyonsu | 5 | 151 | + 00:02 | + 00:04 | + 00:15 | +2 00:46 | + 01:04 | |||
| 196 | bry_rp | 5 | 151 | + 00:09 | + 00:14 | + 00:27 | + 00:40 | + 01:01 | |||
| 196 | Khas_Profit_LLC | 5 | 151 | + 00:03 | + 00:07 | +1 00:14 | + 00:31 | + 01:26 | |||
| 196 | MrGary | 5 | 151 | +3 : -1 | + 00:04 | + 00:06 | +1 00:21 | +1 00:31 | +2 00:49 | -5 | |
| 200 | QuantumCoding | 5 | 152 | + 00:06 | + 00:11 | + 00:20 | + 00:34 | + 01:21 | |||
|
Accepted
Tried |
6298 7173 |
6698 7302 |
5493 6045 |
1906 4019 |
946 1351 |
50 136 |
23 99 |


wcps
Home
Employee Profile
Profile Update
Request For Claim
View Cliam Status
Logout
Welcome To Travel Claim
* Employee ID:
* Basic Pay:
* Place of Departure:
* Mode Of Travel:
Select an Option
Air
Train
Taxi
Bus
Bike
Others(specify)
* Travelling Documents: (Includes: PNR/Air Tickets / Travellings Bills / Others(specify)
* Employee Name:
* Reason of Travel:
* Place of Arrival:
* Total Claim Amount:


JUDEX
My contests
All contests
Problems
Sign out
My profile
Name
Author
Start
End
Lorem
Ipsumfdgfhgjklfdgfhjhkl
We'vesdfghjksdfghjkfghgjhk


Lost Password.
If you've lost your passsword, we can e-mail it to you. Just enter your username in the field below, and the password will be sent to the e-mail address we have on file for that account. For security reasons, we can't tell you if you entered your username incorrectly, do please double check it before submitting.
If you didn't supply us with a valid e-mail address when signing up, then get in touch with us and we'll ask you your secret question. Give the right answer, and we'll send you your password. If you can't answer your secret question, AND you don't remember your password, AND we don't have a valid e-mail address for you then... well... there's probably not a whole lot we can do. But you can take some small comfort in knowing that nobody else will ever get your private data. Except for the guy who happens to have the e-mail address we have on file for you.
He'll have no trouble.


module Lang.setup where
We’ve done most of the heavy-lifting, and packaged everything into a docker container. This is a platform-independent solution and can be run inside any major operating system. But first we would need to:
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
OR download and install docker binaries for your operating system here.
docker pull ixaxaar/agda:latest
To run the agda compiler with docker:
docker run -it -v /local/source/directory:/directory/inside/container ixaxaar/agda bash
whatever.agda
agda /directory/inside/container/whatever.agda
Stack is one of haskell’s package managers, apart from Cabal. Stack uses cabal internally and is easier to practically deal with. In order to do a stack-based install:
curl -sSL https://get.haskellstack.org/ | sh
cd
into it. Proceed to use stack to install agda:stack setup
stack build
Note: none of these are guaranteed to work. This way of installation might just work, or might require one to pull significant amounts of one’s own hair.
sudo apt-get install agda-mode agda-stdlib
sudo yum install Agda
sudo pacman -S agda agda-stdlib
brew install agda
Other ways to install Agda are documented in the official documentation.
That’s pretty much it. Now we go ahead and learn some basics of the language.


|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface TagChunkCodec
A TagChunkCodec
provides a means of coding chunkings as
taggings and decoding (string) taggings back to chunkings.
Each codec contains a method tagSet(Set)
to return the
complete set of tags used in the coding given a set of chunk types.
Codecs also use a variable argument method legalTags(String[])
to determine if a sequence of tags is legal.
For a known set of chunk types, the followers of a tag can be
constructed by iterating over the set of tags returned by tagSet()
and check if they're legal using legalTags()
.
To validate whether a chunking may be successfully encoded as a
tagging and then decoded to the original chunking, use the method
isEncodable(Chunking)
. To validate whether a string
tagging may be successfully decoded to a chunking and then
reencoded to the original string tagging, use isDecodable(StringTagging)
.
| Method Summary | |
|---|---|
boolean |
isDecodable(StringTagging tagging)
Returns true if the specified tagging may be decoded
as a chunking then encoded back to the original tagging accurately. |
boolean |
isEncodable(Chunking chunking)
Returns true if the specified chunking may be encoded
as a tagging then decoded back to the original chunking accurately. |
boolean |
legalTags(String... tags)
Returns true if the specified sequence of tags is a
complete legal tag sequence. |
boolean |
legalTagSubSequence(String... tags)
Returns true if the specified sequence of tags
is a legal subsequence of tags. |
Iterator<Chunk> |
nBestChunks(TagLattice<String> lattice,
int[] tokenStarts,
int[] tokenEnds,
int maxResults)
Returns an iterator over chunks extracted in order of highest probability up to the specified maximum number of results. |
Set<String> |
tagSet(Set<String> chunkTypes)
Returns the complete set of tags used by this codec for the specified set of chunk types. |
Chunking |
toChunking(StringTagging tagging)
Return the result of decoding the specified tagging into a chunking. |
StringTagging |
toStringTagging(Chunking chunking)
Return the string tagging that fully encodes the specified chunking. |
Tagging<String> |
toTagging(Chunking chunking)
Return the tagging that partially encodes the specified chunking. |
| Method Detail |
|---|
Tagging<String> toTagging(Chunking chunking)
toStringTagging(Chunking)
.
This method will typically be more efficient than toStringTagging()
, but implementations may just return the
same value, because StringTagging
extends Tagging<String>
.
This method may be implemented by delegating to
call to toStringTagging(Chunking)
, but a direct
implementation is often more efficient.
chunking
- Chunking to encode.
StringTagging toStringTagging(Chunking chunking)
chunking
- Chunking to encode.
Chunking toChunking(StringTagging tagging)
tagging
- Tagging to decode.
IllegalArgumentException
- If the tag sequence is
illegal.Set<String> tagSet(Set<String> chunkTypes)
Modifying the returned set will not affect the codec.
chunkTypes
- Set of types for chunks.
boolean legalTags(String... tags)
true
if the specified sequence of tags is a
complete legal tag sequence. The companion method legalTagSubSequence(String[])
tests if a substring of tags is
legal.
tags
- Variable length array of tags.
true
if the specified sequence of tags is
a complete legal tag sequence.boolean legalTagSubSequence(String... tags)
true
if the specified sequence of tags
is a legal subsequence of tags. See the companion
method legalTags(String[])
to test if a complete
sequence is legal.
A sequence of tags is a legal subsequence if a legal sequence may be created by adding more tags to the front and/or end of the specified sequence.
Providing an empty sequence of tags always returns true
. The result for a single input tag determines if the tag
itself is legal. For longer sequences, the tags must all be
legal and their order must be legal.
tags
- Sequence of tags to test.
true
if the sequence of tags is legal as a
subsequence of some larger sequence.boolean isEncodable(Chunking chunking)
true
if the specified chunking may be encoded
as a tagging then decoded back to the original chunking accurately.
chunking
- Chunking to test.
true
if encoding then decoding produces the
specified chunking.boolean isDecodable(StringTagging tagging)
true
if the specified tagging may be decoded
as a chunking then encoded back to the original tagging accurately.
tagging
- Tagging to test.
true
if decoding then encoding produces the
specified tagging.Iterator<Chunk> nBestChunks(TagLattice<String> lattice, int[] tokenStarts, int[] tokenEnds, int maxResults)
lattice
- Lattice from which chunks are extracted.maxResults
- Maximum number of chunks to return.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |


This shows the directory structure, with only the relevant pieces shown initially. Any files that we have more info on have a note (exposed on hover).
Built with the Project Explorer CLI.
You can specify what directories you would like to be open when a user first visits by adding them to the opened
array in base-directory-tree/src/store
.
You can add comments for the different files by adding them to the comments
object in base-directory-tree/src/store
. You will specify it using the path as the key and the comment as the value, like this:
`READMEexample`: `This is an example of how a note is made! You can write the pathname of any file and the note will appear ☺. You can delete this now.`
You can point the github logo link to your own repo by updating the github
string in base-directory-tree/src/store
.
yarn
yarn serve


AWS::Pinpoint::Segment AttributeDimension
Specifies attribute-based criteria for including or excluding endpoints from a segment.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "AttributeType" :
String
, "Values" :[ String, ... ]
}
YAML
AttributeType:
String
Values:- String
Properties
AttributeType
-
The type of segment dimension to use. Valid values are:
-
INCLUSIVE
– endpoints that have attributes matching the values are included in the segment. -
EXCLUSIVE
– endpoints that have attributes matching the values are excluded from the segment. -
CONTAINS
– endpoints that have attributes' substrings match the values are included in the segment. -
BEFORE
– endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment. -
AFTER
– endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment. -
BETWEEN
– endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment. -
ON
– endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
Required: No
Type: String
Update requires: No interruption
-
Values
-
The criteria values to use for the segment dimension. Depending on the value of the
AttributeType
property, endpoints are included or excluded from the segment if their attribute values match the criteria values.Required: No
Type: List of String
Update requires: No interruption


Here I'm going to walk you through what you need to know to make your own slider for DSLR cameras. If you don't need such a big slider, please check out my tutorial for my mini-slider.
This slider can be used with or without a motor for filming video. If you want to shoot timelapses with it, you will need to motorize it.
The main material used for building the frame and rail is aluminium, because of strenght and lightweight.
I have some experience on building DIY sliders, and i can say that you are never going to achieve that professional smoothness that you get with bought sliders, but that, spending a lot less you get a pretty good result
8mm(inner diameter)
4mm(inner diameter)
8mm(inner diameter)
4mm(inner diameter)
8mm(inner diameter)
8mm(inner diameter) 20mm(outher diameter) 8mm(thick)
10mm(long) 4mm(diameter)
40mm(long) 4mm(diameter)
50mm(long) 8mm(diameter)
145mm(long) 8mm(diameter)
86mm(long) 35.5mm(wide) 3mm(thick)
86mm(long) 29.5mm(wide) 2.4mm(thick)
600mm(long) 20mm(wide) 20mm(height) 1mm(inside thickness)
To mount the slider on a tripod, you will need at least two of these.
for fixing the tripod head to the dolly
Before we start with the Tutorial, let's see some sample footage I took with the slider
Here I give you an overview of what you will achive if you follow the tutorial. It also shows again the materials needed
You might not find all the materials I used in your Hardware Store, like the Bearings and the tripod bolt and nut. I myself bought them on Ebay, so you might want to do the same. Just search with the title I used and maybe the diameter, making sure the specs are the same. If you can't find it, just contact me.
You also might find a similar material, but not totally the same as mine, then you have to adjust all the measurments to your materials.
Alright, now it's time to cut up the aluminium plates, if you haven't done that already. You can choose another lenght for the dolly, in my case 163mm, if you take that measurment into account for the drilling.
For the drilling, I would recommend to follow my instructions and measurments, because there are more things that you have to consider so that all the bearings touch the rail. The holes for the bolts are either 4mm or 8mm (only twice in the side of the L plate), then there is the tripod mount hole (in the middle of one od the top plates), which is also 8mm
These three plates will hold the two L plates together. In between them the threaded rods that hold the bearings are going to be fixated. These bearings are going to prevent the dolly from moving around.
You will need to make two of these. They are going to hold the bearings so that the dolly can slide up and down. Because of that, you need to be as precise as possible with the drilling. After the drilling is done, you have to cut out rectangular pieces from the top face. (as shown in the drillsheet).
These are the exact measures for the drilling. All the measures are in mm The holes have either 4mm or 8mm in diameter.
Now that you have everithing ready, lets assemble the dolly. There are some things that need to be done first:
To make sure that the dolly will slide properly, you have to make sure that you get this step right, beacuse otherwie, the bearings won't be aligned or will get loose. Getting this right is a matter patience and, if you don't make sure that the distances are right, you may spend a lot more time asembling the dolly, because you might have to undo some of your work.
PRO TIP: For the thread rods, you might find it difficult to srew in the Nylo Nuts, because you only have one point to apply force. Just set two nyloc nuts at the other end of the rods, and fix your tool to the second one. Now, you have two points to apply force to.
Now that everything is prepared, let's proceed to assemble the dolly. To further expalin the graphic below, there are some photos of the dolly fully assembled.
The slider is much more easy to assemble. It consists of two rectangular tubes and two aluminium plates that hold them at 82mm of distance from eachother. They are hold together by two 4mm screws/bolts in each corner. Below you can find a drillingsheet for the tubes and the plates and a graphic of it.
Now that the dolly is asssembled, you can try out if everything works by placing it on the rail. In my case, at first the side bearings weren't tight enought, so i just pressed the four bolts together with my hands, and that fixed it.
If you want to mount the slider on a tripod, I recommend you to buy at least two Tripod Nuts (just search "1/4 BSW x5/8" Whitworth Nuts" on Ebay), drill a hole in the middle of each of the two plates that hold the rail together and glue the nut on top with two-component glue.


?DETERMINED
BY
R.
L.
WILBUR
/9Sf
lb2471S
J.
A.
Shafer,
Collector
Feb
t3
1911
Sabatia
cafycina
(Lam.)
Heller
Det.-rev.
M.
Thiv
(B)
2001
New
York
Botanical
Garden
HERBARIUM
OF
THE
UNIVERSITY
OF
MICHIGAN
THE
NEW
YORK
BOTANICAL
GARDEN
EXPLORATION
OF
CUBA
Monte
verde,
Oriente
660
Meters
Altitude
1624715
Legend -
Level of confidence that token is an accurately-transcribed word
extremely low
very low
low
undetermined
medium
high
very high


On 25 October 2019, 14 new articles were published in 7 journals.
The Predictive Performance of Risk Assessment in Real Life: An External Validation of the Mnstarr
Criminal Justice Decision Making in Social and Legal Context
Peers and Offender Decision‐making
Behavioral Criminology and Public Policy
Nudging and the Choice Architecture of Offending Decisions
The Promise of Behavioral Economics For Understanding Decision‐making in the Court
Challenging the Logics of Reformism and Humanism in Juvenile Justice Rhetoric
Mapping Attitudes Towards the Police At Micro Places
Who Undermines the Peace At the Ballot Box? the Case of Colombia
Alt-White? A Gendered Look At “Victim” Ideology and the Alt-Right


#188
Email from Larry Vander Graaf to Bill McCrea, Re: Strategic Priority Measurements - July 23, 2013
#175
A chain of email re: German Recommendation #1 - Source of Funds Declaration - December 28, 2017
#173
Email from Patrick Ennis to Daryl Tottenham, Re: $200K Cash from [Patron name] - August 17, 2016
#154
Integrated Illegal Gaming Enforcement Team RCMP and GPEB Consultative Board Meeting - 29-Nov-2004
#142
Email from John Karlovcec to Daryl Tottenham, Subject: FW: Post Media Inquiry - December 14, 2017
#131
Letter from Robby Judge to Brad Desmarais, re Compliance Examination Findings - January 23, 2015
#121
Email from John Karlovcec to Robert Grace, re CFSEU River Rock Casino Orientation - Jun 20, 2014
#118
Email from Desmarais re Info For Presentation, Prohibited BCLC Patrons Numbers - November 23, 2017
#116
Email from Daryl Tottenham to: AML, RE: CFSEU/High Risk list review - for discussion - June 4, 2014