Library AtomEnv
Require Import Decidable.
Require Import FSetWeak.
Require Import List.
Require Import AdditionalTactics.
Require Import ListFacts.
Require Import FSetWeakDecide.
Require Import AssocList.
Require Import Atom.
Require Import AtomSet.
Import AtomSetImpl.
Note that our library has an implicit convention for the "normal
form" of an association list. This normal form requires that a
list be built only from
This allows association lists to be written in a slightly more uniform manner when compared to using both
We have considered other alternative implementations, but the scheme described above seems to work the best in practice.
nil
(the empty list), one
(the
singleton list), and app
(concatenation). Additionally,
concatenations should be associated to the right and the list
should not contain any nil
terms, unless it is the empty list
itself.
This allows association lists to be written in a slightly more uniform manner when compared to using both
cons
and app
to
build them. The downsides are that Coq's simpl
tactic will
simplify instances of one
down to cons
and that there are
instances in which one needs to write association lists that are
not in normal form (typically, some concatenation will need to be
associated to the left). The simpl_env
and rewrite_env
tactics below are designed to minimize the impact of these
downsides.
We have considered other alternative implementations, but the scheme described above seems to work the best in practice.
Module Type ENVIRONMENT.
This section defines the following basic operations and
predicates on association lists.
Implicit arguments are declared by default for these definitions. We define some local notations to make the definition of
-
one
: Constructs an association list consisting of exactly one binding. -
map
: Maps a function over the values in an association list. -
dom
: Computes the domain of an association list, i.e., the set consisting of its keys. -
disjoint
: Binary predicate that holds when the domains of two association lists are disjoint. -
binds
: Ternary predicate that holds when a key-value pair appears somewhere in an association list. -
uniq
: Unary predicate that holds when an association list binds any given key at most once. Note thatuniq_push
is defined in terms ofone
, due to our normal form for association lists.
Implicit arguments are declared by default for these definitions. We define some local notations to make the definition of
uniq
easier to read and to be consistent with
the notations used in the rest of this library.
Section Definitions.
Variables A B C : Type.
Definition one (C : Type) (item : C) : list C := cons item nil.
Definition map (f : A -> B) (E : list (atom*A)) : list (atom*B) :=
List.map (fun b => match b with (x, a) => (x, f a) end) E.
Fixpoint dom (A : Type) (E : list (atom*A)) {struct E} : atoms :=
match E with
| nil => empty
| (x, _) :: E' => add x (dom E')
end.
Definition disjoint (E : list (atom*A)) (F : list (atom*B)) : Prop :=
Subset (inter (dom E) (dom F)) empty.
Definition binds (x : atom) (a : A) (E : list (atom*A)) : Prop :=
List.In (x, a) E.
Notation Local "x ~ a" := (one (x, a)) (at level 68).
Notation Local "x `notin` E" := (~ AtomSetImpl.In x E) (at level 69).
Inductive uniq : list (atom*A) -> Prop :=
| uniq_nil :
uniq nil
| uniq_push : forall x a E,
uniq E ->
x `notin` dom E ->
uniq ((x ~ a) ++ E).
End Definitions.
We make a local notation for
one
, and for operations and
predicate on finite sets, in order to make the statements of the
lemmas below more readable. The notations are local so that
users of this functor may choose their own notations.
Notation Local "[ i ]" := (one i).
Notation Local "x ~ T" := (one (x, T)) (at level 68).
Notation Local "E `union` F" :=
(AtomSetImpl.union E F) (at level 69, right associativity).
Notation Local "x `in` E" :=
(AtomSetImpl.In x E) (at level 69).
Notation Local "x `notin` E" :=
(~ AtomSetImpl.In x E) (at level 69).
Notation Local "E [=] F" :=
(AtomSetImpl.Equal E F) (at level 70, no associativity).
Notation Local "E [<=] F" :=
(AtomSetImpl.Subset E F) (at level 70, no associativity).
The following block of properties is used mainly for rewriting
association lists into the normal form described above. See the
simpl_env
and rewrite_env
tactics below.
Section ListProperties.
Variables X : Type.
Variables x y : X.
Variables l l1 l2 l3 : list X.
Axiom cons_app_one :
cons x l = [ x ] ++ l.
Axiom cons_app_assoc :
(cons x l1) ++ l2 = cons x (l1 ++ l2).
Axiom app_assoc :
(l1 ++ l2) ++ l3 = l1 ++ (l2 ++ l3).
Axiom app_nil_1 :
nil ++ l = l.
Axiom app_nil_2 :
l ++ nil = l.
Axiom in_one :
List.In x [ y ] <-> x = y.
Axiom in_app :
List.In x (l1 ++ l2) <-> List.In x l1 \/ List.In x l2.
End ListProperties.
Hint Rewrite cons_app_one cons_app_assoc app_assoc : rewr_list.
Hint Rewrite app_nil_1 app_nil_2 : rewr_list.
Hint Rewrite in_one in_app : rewr_list_in.
The following block of properties is an assortment of
structural properties about lists.
Section AssortedListProperties.
Variables X : Type.
Variables x y : X.
Variables l l1 l2 l3 : list X.
Axiom one_eq_app :
[ x ] ++ l1 = l2 ++ l3 ->
(exists qs, l2 = x :: qs /\ l1 = qs ++ l3) \/
(l2 = nil /\ l3 = x :: l1).
Axiom app_eq_one :
l2 ++ l3 = [ x ] ++ l1 ->
(exists qs, l2 = x :: qs /\ l1 = qs ++ l3) \/
(l2 = nil /\ l3 = x :: l1).
Axiom nil_neq_one_mid :
nil <> l1 ++ [ x ] ++ l2.
Axiom one_mid_neq_nil :
l1 ++ [ x ] ++ l2 <> nil.
End AssortedListProperties.
The following lemmas are used mainly to simplify applications of
map
and dom
to association lists. See also the simpl_env
and rewrite_env
tactics below.
Section Properties.
Variables A B : Type.
Variables f : A -> B.
Variables x : atom.
Variables b : A.
Variables E F G : list (atom*A).
Axiom map_nil :
map f nil = nil.
Axiom map_cons :
map f ((x, b) :: E) = (x, f b) :: map f E.
Axiom map_one :
map f (x ~ b) = (x ~ f b).
Axiom map_app :
map f (E ++ F) = map f E ++ map f F.
Axiom dom_nil :
(@dom A nil) = empty.
Axiom dom_cons :
dom ((x, b) :: E) [=] singleton x `union` dom E.
Axiom dom_one :
dom (x ~ b) [=] singleton x.
Axiom dom_app :
dom (E ++ F) [=] dom E `union` dom F.
Axiom dom_map :
dom (map f E) [=] dom E.
End Properties.
Hint Rewrite map_nil map_cons map_one map_app : rewr_map.
Hint Rewrite dom_nil dom_cons dom_one dom_app dom_map : rewr_dom.
The
simpl_env
tactic rewrites association lists so that they
are in the normal form described above. Similar to the simpl
tactic, we define "in *
" and "in H
" variants of the tactic.
Ltac simpl_env :=
autorewrite with rewr_list rewr_list_in rewr_map rewr_dom.
Tactic Notation "simpl_env" "in" hyp(H) :=
autorewrite with rewr_list rewr_list_in rewr_map rewr_dom in H.
Tactic Notation "simpl_env" "in" "*" :=
autorewrite with rewr_list rewr_list_in rewr_map rewr_dom in *.
The tactic
(rewrite_env E)
replaces an association list in
the conclusion of the goal with E
. Suitability for
replacement is determined by whether simpl_env
can put E
and the chosen environment in the same normal form, up to
convertibility's in Coq. We also define an "in H
" variant
that performs the replacement in a hypothesis H
.
Tactic Notation "rewrite_env" constr(E) :=
match goal with
| |- context[?x] =>
change x with E
| |- context[?x] =>
replace x with E;
[ | try reflexivity; simpl_env; reflexivity ]
end.
Tactic Notation "rewrite_env" constr(E) "in" hyp(H) :=
match type of H with
| context[?x] =>
change x with E in H
| context[?x] =>
replace x with E in H;
[ | try reflexivity; simpl_env; reflexivity ]
end.
Section BasicDisjointFacts.
Implicit Types A B C : Type.

The following lemmas are facts about
uniq
with respect to the
basic functions (one
, app
, and map
) that can be used to
build association lists.
Section UniqProperties.
Variables A B : Type.
Variables f : A -> B.
Variables x : atom.
Variables b : A.
Variables E F G : list (atom*A).
Axiom uniq_one :
uniq (x ~ b).
Axiom uniq_app_1 :
uniq (E ++ F) -> uniq E.
Axiom uniq_app_2 :
uniq (E ++ F) -> uniq F.
Axiom uniq_app_3 :
uniq (E ++ F) -> disjoint E F.
Axiom uniq_app_4 :
uniq E ->
uniq F ->
disjoint E F ->
uniq (E ++ F).

Axiom uniq_map :
uniq (map f E) <-> uniq E.
End UniqProperties.
Hint Rewrite
disjoint_one_l disjoint_one_r
disjoint_app_l disjoint_app_r
disjoint_map_l disjoint_map_r
uniq_app uniq_map
: rewr_uniq.
This tactic attempts to solve goals about
Implementation note: The second
uniq
. Given its
definition, it's likely to work only when the hypotheses in the
goal already contain all the relevant uniq
propositions.
Thus, the tactic may not be generally useful. It is useful,
however, for proving facts about uniq
such as the ones below.
Implementation note: The second
simpl_env
in the definition
is because of disjoint_one_{l,r}
. The "|| fail
" at the end
is so that in the case of failure, the error message reported to
the user is not the one from atomsetdec
.
Ltac solve_uniq :=
try trivial;
simpl_env in *;
autorewrite with rewr_uniq in *;
simpl_env in *;
intuition (
auto using uniq_nil, uniq_one ||
(rewrite -> disjoint_sym; auto) ||
(unfold disjoint in *; atomsetdec))
|| fail.
Section UniqDerived.
Variables A : Type.
Variables x y : atom.
Variables a b : A.
Variables E F G : list (atom*A).
Axiom uniq_cons :
uniq E ->
x `notin` dom E ->
uniq ((x, a) :: E).
Axiom uniq_insert_mid :
uniq (G ++ E) ->
x `notin` dom (G ++ E) ->
uniq (G ++ (x ~ a) ++ E).
Axiom uniq_remove_mid :
uniq (E ++ F ++ G) ->
uniq (E ++ G).
Axiom uniq_map_app_l : forall (f : A -> A),
uniq (F ++ E) ->
uniq (map f F ++ E).
Axiom fresh_mid_tail :
uniq (F ++ (x ~ a) ++ E) ->
x `notin` dom E.
Axiom fresh_mid_head :
uniq (F ++ (x ~ a) ++ E) ->
x `notin` dom E.
End UniqDerived.
The following lemmas are facts about
Note:
binds
with respect to the
basic functions (one
and app
) that can be used to build
association lists.
Note:
map
is treated further below.
Section BindsProperties.
Variables A : Type.
Variables x y : atom.
Variables a b : A.
Variables E F G : list (atom*A).
Axiom binds_nil :
binds x a nil <-> False.
Axiom binds_one_1 :
x = y ->
a = b ->
binds x a (y ~ b).
Axiom binds_one_2 :
binds x a (y ~ b) ->
x = y.
Axiom binds_one_3 :
binds x a (y ~ b) ->
a = b.
Axiom binds_one :
binds x a (y ~ b) <-> x = y /\ a = b.
Axiom binds_app_1 :
binds x a E ->
binds x a (E ++ F).
Axiom binds_app_2 :
binds x a F ->
binds x a (E ++ F).
Axiom binds_app_3 :
binds x a (E ++ F) ->
binds x a E \/ binds x a F.
Axiom binds_app :
binds x a (E ++ F) <-> binds x a E \/ binds x a F.
End BindsProperties.
Hint Rewrite binds_nil binds_one binds_app : rewr_binds.
Hint Rewrite binds_nil binds_one : rewr_binds_uniq.
Section MoreBindsProperties.
Variables A : Type.
Variables x y : atom.
Variables a b : A.
Variables E F G : list (atom*A).
Axiom binds_dom_contradiction: forall (E : list (atom*A)),
binds x a E ->
x `notin` dom E ->
False.
Axiom binds_app_uniq :
uniq (E ++ F) ->
(binds x a (E ++ F) <->
(binds x a E /\ x `notin` dom F) \/
(binds x a F /\ x `notin` dom E)).
End MoreBindsProperties.
Hint Rewrite binds_app_uniq using solve_uniq : rewr_binds_uniq.
The
apply_binds_dom_contradiction
tactic solves a goal by
applying the binds_dom_contradiction
lemma. The tactic
succeeds only if the the hypotheses of the lemma are immediately
satisfied.
Ltac apply_binds_dom_contradiction :=
match goal with
| H : binds ?x ?a ?E, J : ?x `notin` (dom ?E) |- _ =>
assert False by apply (@binds_dom_contradiction _ _ _ _ H J);
intuition
| H : binds ?x ?a ?E, J : ?x `in` (dom ?E) -> False |- _ =>
assert False by apply (@binds_dom_contradiction _ _ _ _ H J);
intuition
end.
The
solve_binds
tactic attempts to solve goals about binds
.
Given its definition, it's likely to work only when the
hypotheses in the goal already contain all the relevant binds
propositions. Thus, the tactic may not be generally useful. It
is useful, however, for proving facts about binds
such as the
ones below.
Ltac solve_binds :=
simpl_env in *;
autorewrite with rewr_binds in *;
intuition (auto || atomsetdec || apply_binds_dom_contradiction)
|| fail.
The tactics
Implementation notes:
analyze_binds
and analyze_binds_uniq
tactics
take as an argument a hypotheses about binds
and perform a
case analysis based on the structure of the association list.
In the case of analyze_binds_uniq
, the analysis is performed
assuming that the association list is uniq
. The lemmas
binds_app
and binds_app_uniq
are examples of such case
analysis.
Implementation notes:
- The initial calls to
simpl_env
put the relevant association lists into normal form. - In the case of
binds_app_uniq
, we assert that the association list isuniq
. This enables theautorewrite
step to succeed. - Rather than work on
H
itself, we copy it and work on the copy. Thus, in instances where the analysis leaves unsolved subgoals, it is still possible to see the original hypothesis. - The rest of the tactic breaks apart the copy of H and tries several simple means for solving the resulting subgoals.
Ltac analyze_binds H :=
simpl_env;
simpl_env in H;
match type of H with
| binds ?x ?a ?E =>
let J := fresh in
pose proof H as J;
autorewrite with rewr_binds in J;
simpl_env in J;
try (progress decompose [and or] J; clear J);
try solve [trivial | discriminate | intuition | atomsetdec]
end.
Ltac analyze_binds_uniq H :=
simpl_env;
simpl_env in H;
match type of H with
| binds ?x ?a ?E =>
match goal with
| H : uniq ?E |- _ => idtac
| _ => assert (uniq E); [ try solve_uniq | ]
end;
let J := fresh in
pose proof H as J;
autorewrite with rewr_binds_uniq in J;
simpl_env in J;
try (progress decompose [and or] J; clear J);
try solve [trivial | discriminate | intuition | atomsetdec]
end.
Section BindsDerived.
Variables A B : Type.
Variables f : A -> B.
Variables x y : atom.
Variables a b : A.
Variables E F G : list (atom*A).
Axiom binds_dec :
(forall a b : A, {a = b} + {a <> b}) ->
{binds x a E} + {~ binds x a E}.
Axiom binds_lookup_dec :
decidable (exists a, binds x a E).
Axiom binds_lookup_dec_specif :
{a : A | binds x a E} + (forall a, ~ binds x a E).
Axiom binds_map :
binds x a E ->
binds x (f a) (map f E).

Axiom binds_mid_eq :
binds x a (F ++ (x ~ b) ++ E) ->
uniq (F ++ (x ~ b) ++ E) ->
a = b.
Axiom binds_remove_mid :
binds x a (F ++ (y ~ b) ++ G) ->
x <> y ->
binds x a (F ++ G).
Axiom binds_In : forall x a (E : list (atom*A)),
binds x a E ->
x `in` dom E.
Axiom binds_unique :
binds x a E ->
binds x b E ->
uniq E ->
a = b.
Axiom fresh_app_l :
uniq (F ++ E) ->
binds x a E ->
x `notin` dom F.
Axiom fresh_app_r :
uniq (F ++ E) ->
binds x a F ->
x `notin` dom E.
End BindsDerived.
End ENVIRONMENT.
We can use our implementation of association lists (in
AssocList
) to
implement a module with the above signature. Note that the tactics
provided end in _env
, not _alist
as the implementation of
AssocList.Make
might suggest. (Tactics do not need to agree between a
module's signature and its implementaiton.)
Module AtomEnvImpl : ENVIRONMENT := AssocList.Make AtomImpl AtomSetImpl.
This page has been generated by coqdoc


Telelogic Synergy Source Control Block¶
CruiseControl.NET SCM plugin for CM Synergy.
Detection of modifications is entirely task based rather than object based, which may present problems for pre-6.3 lifecycles. Successful integration may be published through shared manual task folders and/or baselining.
Version¶
Available from version 1.0
Examples¶
Example using Defaults
1<sourcecontrol type="synergy">
2 <connection>
3 <host>myserver</host>
4 <database>\\myserver\share\mydatabase</database>
5 </connection>
6 <project>
7 <release>Product/1.0</release>
8 <projectSpecification>Product-1</projectSpecification>
9 <taskFolder>1234</taskFolder>
10 </project>
11 <changeSynergy>
12 <url>http://myserver:8060</url>
13 </changeSynergy>
14</sourcecontrol>
Full Example
1<sourcecontrol type="synergy">
2 <connection>
3 <host>myserver</host>
4 <database>\\myserver\share\mydatabase</database>
5 <!-- store values in an environmental variable-->
6 <username>%CCM_USER%</username>
7 <password>%CCM_PWD%</password>
8 <role>build_mgr</role>
9 <homeDirectory>D:\cmsynergy\%CCM_USER%</homeDirectory>
10 <clientDatabaseDirectory>D:\cmsynergy\uidb</clientDatabaseDirectory>
11 <polling>true</polling>
12 <timeout>3600</timeout>
13 </connection>
14 <project>
15 <release>Product/1.0</release>
16 <projectSpecification>Product-1</projectSpecification>
17 <taskFolder>1234</taskFolder>
18 <baseline>false</baseline>
19 <purpose>Integration Testing</purpose>
20 <template>true</template>
21 </project>
22 <changeSynergy>
23 <role>User</role>
24 <url>http://myserver:8060</url>
25 <username>%CS_USER%</username>
26 <password>%CS_PWD%</password>
27 </changeSynergy>
28</sourcecontrol>
Configuration Elements¶
| Element | Description | Type | Required | Default | Version |
| type | The type of source control block. | String - must be synergy | Yes | n/a | 1.0 |
| connection | Connection info to create a session. | Synergy Client Session | Yes | n/a | 1.0 |
| dynamicValues | The dynamic values to use for the source control block. | Dynamic Values array | No | None | 1.5 |
| issueUrlBuilder | The issue URL builder to use. | IssueUrlBuilder | No | n/a | 1.0 |
| project | The info for the integration testing project. | Synergy Project | Yes | n/a | 1.0 |
| changeSynergy | The Web Url builder to use. | IssueUrlBuilder | No | None | 1.0 |
Notes¶
info
This integration has been thoroughly tested against CM Synergy 6.3 SP4 and ChangeSynergy 4.3 SP3 Windows/Informix with the DCM option enabled. While untested, CM Synergy installations on Unix/Informix or Unix/Oracle should function properly.
Background¶
CM Synergy Concepts (http://confluence.public.thoughtworks.org//display/CC/CMSynergyConcepts) is arguably one of the best conceptual explanations of CM Synergy. Consider it a prerequisite for implementing continuous integration with CM Synergy. Robert Smith (http://confluence.public.thoughtworks.org//display/~rjmpsmith), from the CruiseControl for Java site, deserves a great deal of credit for explaining the product better than Telelogic ever has.
Methodology of integration with CCNET¶
Certain assumptions have been made about the integration of CruiseControl.NET and CM Synergy. First, it is assumed that all projects use a task based reconfigure template, rather than an object based.
* The reconfigure template for all projects is task based, not object status based. * Developers have there own projects with purpose "Insulated Development" * There's no real point to continuous integration for "Collaborative Development" purpose projects, since Synergy is not a label based system. * Build Managers test completed tasks in a project with purpose "Integration Testing" (or similar). * We could create a baseline in the integration project to push completed tasks to the developers; however, this is less than ideal. Baselines in Synergy are expensive and were intended for milestone events like completion of a feature, or a configuration used for a QA testing round. * The more efficient approach is to have a shared task folder that is included in each developer's reconfigure template/properties. * Successfully integrated tasks can be manually added to this folder. * This will push newly completed and integrated tasks to developers when they reconfigure (i.e., "update members").
p.
p.
Configuration Reuse¶
By creating separate child nodes for the <connection>, <project>, and <changeSynergy> configuration elements, it is very easy to create reusable blocks of XML. For more information on XML DTD entities and reusable configuration blocks, see JIRA issue CCNET-239 and Nithy Palanivelu's Weblog (http://peeps.dallas.focus-technologies.com/roller/page/nithy/20040128#using_the_entity_includes_in).
The Polling Feature¶
The polling feature is useful if your Synergy installation routinely goes offline (i.e., "protected mode"). Long runing builds may inadventently conflict with the routine downtime schedules. For example, polling allows your build to queue CM Synergy commands until the nightly backup completes.
Environmental Variables¶
Environmental variable support enables you to keep your sensitive build manager credentials out of the CCNET configuration file. This is especially important if the configuration file is under source control, whereby it would be readable by all CM Synergy users.
Automatically Generated¶
Documentation generated on Saturday, 30 Jun 2012 at 6:00:14 AM


$ git clone https://github.com/chaeyeunpark/ml4q_git_workshop
Chae-Yeun Park, University of Cologne
After registration, you need to add ssh keys (Generating a new SSH key).
Generate key with:
$ ssh-keygen -t ed25519 -C<EMAIL_ADDRESS>and use it for Git:
$ cat ~/.ssh/config
Host github.com
HostName github.com
IdentityFile /home/<your_id>/.ssh/id_ed25519
User git
Then please send me your Github account (email)
$ git clone git@github.com:chaeyeunpark/git_workshop_code.git
Now add a file (change {your_number} to 1, 2, 3, etc.)
$ echo '{your_number}' > {your_number}.txt
$ git add {your_number}.txt
$ git commit -m '{your_number}.txt added'
Now you have updated your local repository.
$ git remote -v # List all remote repository
$ git pull # get update from remote
$ git push # push your local update to remote
$ echo '0' > 0.txt
$ git status
On branch main
Your branch is up to date with 'origin/main'.
Untracked files:
(use "git add ..." to include in what will be committed)
0.txt
nothing added to commit but untracked files present (use "git add" to track)
You have added a file but it is not version controlled by Git.
$ git add 0.txt
$ git status
On branch main
Your branch is up to date with 'origin/main'.
Changes to be committed:
(use "git restore --staged ..." to unstage)
new file: 0.txt
Commonly, adding a feature needs lots of commits/reviews. Doing it in the main repository will annoy all users.
git checkout -b branch-{your_number} # make your local branch
git status # to see the information of your current branch
# do whatever you want
After you finish your job, you can merge it to main
# after git add and git commit
$ git checkout main # goto main
$ git merge branch-{your_number} # merge branch to your local main
$ git push # update remote
$ git log --oneline # see commit logs
$ git log --graph # see commit history as graph
$ git diff # see unstaged changes
$ git diff origin # see difference between local and remote
$ git fetch # get remote repo updates without changing local repo
$ git remote -vv # see all remotes and URLs
$ git commit --amend -m "Put your corrected message here"
# fix your last commit message
$ git rev-parse HEAD~4 # see commit hash of 4 previous commit
$ git reset --hard {commit-hash} # completely go back to commit
$ git reflog # see how the local repository has been changed
$ git merge --squash HEAD@1
$ git clone https://github.com/Qiskit/qiskit-terra.git
$ cd qiskit-terra
$ git log --oneline --merges --graph
* 92f73f72 Merge pull request #5479 from manoelmarques/algo
* 788de7bd Merge branch 'master' into algo
* 0e516804 Merge branch 'master' of /Users/manoel/projects/manoelmarques/qiskit-aqua into algo
| * ffd9e8f0 Merge pull request Qiskit/qiskit-aqua#851 from manoelmarques/refactor
| * d97f3b26 Merge pull request Qiskit/qiskit-aqua#849 from manoelmarques/provider
| * 5bde2852 Merge pull request Qiskit/qiskit-aqua#833 from Cryoris/remove-duplicate-gates
| |\
| | * 1f8f26a0 Merge branch 'master' of https://github.com/Qiskit/qiskit-aqua into remove-duplicate-gates
| | |\
| | |/
| |/|
| * | 378873cd Merge pull request Qiskit/qiskit-aqua#831 from manoelmarques/provider
$ git checkout 5bde2852 # goto 5bde2852
$ git diff origin --compact-summary
You are not a maintainer of most of repositories you use. It is still possible to contribute to the project using forks/pull request.
Go to this website and click "Fork".
Now you can see a copy of the repository in your account.
Clone that repository.
Team up and implement a function in parser.py
in a new branch.
If you finish, git commit
, git push
.
Goto pull request tab in the Github repo and click new pull request.
Follow this page and finish the pull request.


wait ... maybe im getting confused here...
When you convert burn hex to import transaction on source
it will move the entire burn tx hex into the op_return
and add a bunch of stuff...
then on KMD complete stage, maybe it stays the same size, but adds the MoMoM hash to ti, or maybe it gets bigger
so its not the opret on the burntx you need, its the createimport tx
and complete tx
Alright19-Mar-19 03:25 AM
I need to do burns myself right now
with the latest code we'll be using
can I do it on DIMXY3 or 4 without breaking everything
blackjok3r19-Mar-19 03:25 AM
I think that might be safest, just checking nk with magic values them will merge rest of code
Alright19-Mar-19 03:25 AM
just need burns, not imports
blackjok3r19-Mar-19 03:26 AM
As long as you dont try and import I think its fine... but dimxy did say it should be backwards compatible
Alright19-Mar-19 03:26 AM
did the burn OP_RETURN structure change recently?
blackjok3r19-Mar-19 03:27 AM
I think it has yes... but maybe her reused the rawproof container to add the tokens, in which case it didnt
thats what it looks like, but the code changed a fair bit
Alright19-Mar-19 03:27 AM
ok, let's get these chains up and I'll do my best to find an absolute limit
if we can't find an absolute limit, do an arbitrary safe/sensible limit
blackjok3r19-Mar-19 03:28 AM
yes. I think it should be fairly easy tow work out the maximum size create+compete import adds
Alright19-Mar-19 03:28 AM
for example a chain called LABSTHISISAREALLYFUCKINGLONGTICKERNAME could mess things up
so we may just have to limit things like thi
same goes for cc id
blackjok3r19-Mar-19 03:29 AM
um yes the name is limited to like 32 char or something, but actaul assetchain name si 64
so you use the maximum posible size
for each variable
Alright19-Mar-19 03:29 AM
what is max?
blackjok3r19-Mar-19 03:29 AM
I think its 32 hold on
Alright19-Mar-19 03:29 AM
we'll make some stupidly long tickers right now
blackjok3r19-Mar-19 03:30 AM
you dont need to its capped
Alright19-Mar-19 03:30 AM
CFEKDIMXYTHANKYOUJLANDDIMXYFORALLTHEHARDWORK
how long is that
blackjok3r19-Mar-19 03:31 AM
I just cant remeber where I saw it right now but the size of the assetchains ticker is limited to 65 chars.. but for the import/export stuff the limit is smaller
string targetSymbol = params[1].get_str();
if (targetSymbol.size() == 0 || targetSymbol.size() > 32)
throw runtime_error("targetSymbol length must be >0 and <=32");
but we also added source.... I really dont think any of this is important
we only need to know how mauhc data is added later on...
when you create burn as long as the opret is smaller than the max plus that data
it fine... if it s over just say reduce size in some way, less vins, smaller token etc(edited)
all that matter is what is burnt can me imported...
Now the burn is a single RPC
it should be stupidly easy to limit it
take a burn tx and do crerate and compelte import on it and see how much bigger it gets
and do that over a few burns to amke sure its a cosntant size
Alright19-Mar-19 03:34 AM
payouts and rawproof
blackjok3r19-Mar-19 03:34 AM
those dont matter
Alright19-Mar-19 03:35 AM
need to look at each of these
they do
blackjok3r19-Mar-19 03:35 AM
why
Alright19-Mar-19 03:35 AM
they're in the OP_RETURN
of burns
blackjok3r19-Mar-19 03:35 AM
you make the burn till the very lst step
then check the size is under limit
if it over dont release hex to user so they cant send it(edited)
Alright19-Mar-19 03:35 AM
yes but I need to figure out max size of each
of each variable in burn OP_RETURN
blackjok3r19-Mar-19 03:35 AM
you only need the total size
look i can do this myself if tyou need lol
Alright19-Mar-19 03:36 AM
how do you expect me to find out max total size without understanding the max size for each variable in it?
maybe I'm misunderstanding what I'm meant to do here >.<
blackjok3r19-Mar-19 03:36 AM
I think you are
migrate_createimporttransaction
turns a burntxc into a import
which puts the ENTIRE burn transaction
into the OP_RETURN
then migrate_completeimporttransaction
may ro may not make that a little bigger again, im not sure if its filling seroed out space, or adding more data
we need to know
exactly how much data those 2 steops add .. nothing else
Alright19-Mar-19 03:37 AM
is payouts and proof always the same exact size?
if so, you're right
blackjok3r19-Mar-19 03:38 AM
rawproof can be any size but that doesnt matter
becasue the burn tx iself can eb whatever
Alright19-Mar-19 03:38 AM
Ok, I understand
we can always check burn before broadcasting
blackjok3r19-Mar-19 03:38 AM
yes
Alright19-Mar-19 03:38 AM
we just need to understand how much more is added in the import
blackjok3r19-Mar-19 03:39 AM
yes
Alright19-Mar-19 03:39 AM
let me look for that in the code
blackjok3r19-Mar-19 03:39 AM
you can send a burn that will not be a valid import
we need to prevent that
consensus rules have limits but the RPCs are ingnoreing those limits
Alright19-Mar-19 03:40 AM
completeimporttransaction is still the very last step, yes?
this is what produces tx for target
?
blackjok3r19-Mar-19 03:40 AM
yes. it creates a tx that you send on target/
its a sign on KMD with the MoMoM hash
which is always the same size
if convert to import isnt always adding the same amount of data, then we need to figure out the maximum possible size it can add
burn tx is irrelavent in this case as long as its TOTAL size isnt too large
Alright19-Mar-19 03:46 AM
@dimxy does the full OP_RETURN of the tokencreate on source chain need to be included in completemigrate transaction?
seems this way at least, just trying to understand the flow of things here
Komodo. Contribute to KMDLabs/komodo development by creating an account on GitHub.
blackjok3r19-Mar-19 03:49 AM
seems thats adding it on the creation of burn
surley it cant add token imformation to already burnt token ?
Alright19-Mar-19 03:51 AM
@dimxy the validation on token imports uses tokens eval code, is this by design? Didn't look at the token 'c' validation, but it seems to bypass validation for IMPORT eval
1
blackjok3r19-Mar-19 03:52 AM
he added another one, I think so it has 2 eval codes
Alright19-Mar-19 04:03 AM
validation for 'c' funcid in EVAL_TOKENS is "return true" ? (edited)
blackjok3r19-Mar-19 04:12 AM
I dont think it should be used for anything
but if it is i'll change it to false
bool Eval::ImportCoin(const std::vector<uint8_t> params, const CTransaction &importTx, unsigned int nIn)


Contents
This is a design document detailing the node-freeing scheduler, HSqueeze.
Externally-mirrored instances can be moved between nodes at low cost. Therefore, it is attractive to free up nodes and power them down at times of low usage, even for small periods of time, like nights or weekends.
Currently, the best way to find out a suitable set of nodes to shut down is to use the property of our balancedness metric to move instances away from drained nodes. So, one would manually drain more and more nodes and see, if hbal could find a solution freeing up all those drained nodes.
We propose the addition of a new htool command-line tool, called hsqueeze, that aims at keeping resource usage at a constant high level by evacuating and powering down nodes, or powering up nodes and rebalancing, as appropriate. By default, only externally-mirrored instances are moved, but options are provided to additionally take DRBD instances (which can be moved without downtimes), or even all instances into consideration.
Powering down nodes that are technically healthy effectively creates a new node state: nodes on standby. To avoid further state proliferation, and as this information is only used by hsqueeze, this information is recorded in node tags. hsqueeze will assume that offline nodes having a tag with prefix htools:standby: can easily be powered on at any time.
To keep the squeezed cluster functional, a minimal amount of resources will be left available on every node. While the precise amount will be specifiable via command-line options, a sensible default is chosen, like enough resource to start an additional instance at standard allocation on each node. If the available resources fall below this limit, hsqueeze will, in fact, try to power on more nodes, till enough resources are available, or all standy nodes are online.
To avoid flapping behavior, a second, higher, amount of reserve resources can be specified, and hsqueeze will only power down nodes, if after the power down this higher amount of reserve resources is still available.
To determine which nodes can be powered down, hsqueeze basically follows the same algorithm as the manual process. It greedily goes through all non-master nodes and tries if the algorithm used by hbal would find a solution (with the appropriate move restriction) that frees up the extended set of nodes to be drained, while keeping enough resources free. Being based on the algorithm used by hbal, all restrictions respected by hbal, in particular memory reservation for N+1 redundancy, are also respected by hsqueeze. The order in which the nodes are tried is choosen by a suitable heuristics, like trying the nodes in order of increasing number of instances; the hope is that this reduces the number of instances that actually have to be moved.
If the amount of free resources has fallen below the lower limit, hsqueeze will determine the set of nodes to power up in a similar way; it will hypothetically add more and more of the standby nodes (in some suitable order) till the algorithm used by hbal will finally balance the cluster in a way that enough resources are available, or all standy nodes are online.
Once the final set of nodes to power down is determined, the instance moves are determined by the algorithm used by hbal. If requested by the -X option, the nodes freed up are drained, and the instance moves are executed in the same way as hbal does. Finally, those of the freed-up nodes that do not already have a htools:standby: tag are tagged as htools:standby:auto, all free-up nodes are marked as offline and powered down via the Ganeti Node OOB Management Framework.
Similarly, if it is determined that nodes need to be added, then first the nodes are powered up via the Ganeti Node OOB Management Framework, then they’re marked as online and finally, the cluster is balanced in the same way, as hbal would do. For the newly powered up nodes, the htools:standby:auto tag, if present, is removed, but no other tags are removed (including other htools:standby: tags).
The proposed algorithm builds on top of the already present balancing algorithm, instead of greedily packing nodes as full as possible. The reason is, that in the end, a balanced cluster is needed anyway; therefore, basing on the balancing algorithm reduces the number of instance moves. Additionally, the final configuration will also benefit from all improvements to the balancing algorithm, like taking dynamic CPU data into account.
We decided to have a separate program instead of adding an option to hbal to keep the interfaces, especially that of hbal, cleaner. It is not unlikely that, over time, additional hsqueeze-specific options might be added, specifying, e.g., which nodes to prefer for shutdown. With the approach of the htools of having a single binary showing different behaviors, having an additional program also does not introduce significant additional cost.
We decided to have a whole prefix instead of a single tag reserved for marking standby nodes (we consider all tags starting with htools:standby: as serving only this purpose). This is not only in accordance with the tag reservations for other tools, but it also allows for further extension (like specifying priorities on which nodes to power up first) without changing name spaces.


IP-Noise-perl-filters-0.1.0.tar.gz - some proof-of-concept programs written in perl (;-)).
IP-Noise-Engine-perl-0.1.5.tar.gz - a more sophisticated perl API that enables accepting, dropping and delaying packets for arbitrary delays. It comes with a simple, stateless , rule-based arbitrator, but alternative ones may be written.


Tap to minimize at the position of the icon
View source on GitHub


Will Pep Guardiola walk away from Manchester City next summer?
There are rumours that the Catalan coach will leave after the current season
by Sport.esPep Guardiola could leave Manchester City at the end of the season despite having a contract until the following summer.
That is what is circulating in Manchester, where he is currently in his fourth season following spells with Barcelona and Bayern Munich.
Guardiola's deal with City runs until 2021 and The Mirror points out that he has never broken a contract during his management career.
However, other reports suggest that he doesn't feel too comfortable where he is anymore and could consider leaving at the end of the current campaign.
Renewed in 2018
Guardiola, who still has the challenge of winning the Champions League with City, extended his deal with the club in 2018. It was a great moment, with the Premier League and League Cup won.
The doubt now is if his deal includes an escape clause that would allow him to walk away next summer. He has started to be linked with other clubs in Europe, including Juventus. City have strongly denied that rumour.
The Mirror have reported that City are working on a replacement for Guardiola regardless, aware that he will not be there forever.


Think you might have anxiety?
You are not alone.
It is normal to experience anxiety, but excessive anxiety is destructive and greatly hinders a person's ability to function.
If you answer yes to most of the items on this list, you probably have anxiety
and should seek professional help.
- Obsessive Thoughts
- Going over thoughts repetitively
- Replaying previous conversations
- Inability to set aside worry and live in the present
- Irritability
- Always feeling "on-edge"
- Racing thoughts
- Easily startled by unexpected events
- Unable to Focus
- Too overwhelmed to break down tasks step by step
- Feeling like your mind "goes blank" when needing to focus
- Second guessing yourself prevents productivity
- Tense Muscles
- Tightened shoulders
- Clenched fists
- Chest pain(see anxiety attacks)
- Insomnia
- Inability to fall or stay asleep
- Ruminating thoughts at night that keep you awake
- Cannot relax and find a comfortable position
- Fatigue
- Consistently feeling mentally drained
- Frequent napping to escape from daily stress
- Tension in your brain
- Avoidance
- Feeling the need to "escape" should something go wrong
- Indecisiveness to the point of inaction
- Fearing failure
- Fearing the worst
- Overplanning for situations that have not happened yet
- Trying to read people's minds and assuming they look down on you
- Paranoia
- Anxiety Attacks
- Sweaty palms
- Chest pain
- Hyperventilating
- Irrational Phobias
- Claustrophobia: fear of enclosed spaces
- Aerophobia: fear of flying
- Glossophobia: fear of public speaking
Disclaimer: I am not a licensed practitioner or therapist. If you or someone you know is in a mental crisis ( whether or not you or they are contemplating
suicide), call this #:
Suicide Prevention Hotline:1-800-273-TALK (8255)


Hi,
Welcome to the workshop "#workshop#" at JavaZone workshop day.
Please notice the following preparations:
#preparation#The workshop starts #starts#. Please show up at least five minutes before the workshop starts. If you don't show up on time, we might give your spot to someone else.
If you, for some reason, won't be able to attend, please cancel your reservation by clicking the following link so we can give your spot to someone else:
To see the status of your registration(s), visit the page:
If you have any questions, please contact us at<EMAIL_ADDRESS>Best regards, JavaZone


The casperjs html test runner
The wait is over
Casperjs is an awesome project. It enables us to run the headless phantomjs browser(or its Gecko slimerjs companian
Please notice this is based on the experimental FileSytem Api. currently works only with chrom
If you use this runner localy (eg: file:///) and not using a webserver you may need to enable the --allow-file-access-from-files flag when running the chrome binary. or just run this using an localserver (eg: apachs, wamp on windows, Whatever)
Setup:
You need npm (implying Node.js), casperjs and phantomjs installed for this to work
From the command line (in the project folder):
npm install grunt-cli -g
npm install
grunt watch
Please check Tests are running from the command line before trying the experimental Html test runner
Notice you need to setup the files to test in thefiles key in the casperjs task if not in the default location
refresh to run the test suite
No results recorded yet


PewDiePie slams transphobia claims after misgendering Dr Phil guest
PewDiePie has slammed claims that he’s transphobic, after misgendering a trans woman in one of his videos.
The YouTube star – real name Felix Kjellberg – reacted to clips from Dr Phil, including one featuring 19-year-old Bameron.
Describing her as a ‘Walmart Jeffree Star’, Felix, who recently claimed his videos are banned in China, used he/him pronouns while watching the clip.
The comments didn’t pass people by, with some viewers slamming the YouTuber on social media.
Speaking out in a video, Bameron also took aim at Felix, saying: ‘PewDiePie, I know you’re not out here with 100 million subscribers, with 8000 scandals, misgendering trans people.’
 Thank you for misgendering me on the biggest platform. I’m loving all the hate from your subscribers.’
Describing the YouTube star as ‘literally a rat,’ she claimed that he must have known her gender from the way she was presenting.
Advertisement Advertisement
However, addressing the claims in a video, Felix wasn’t having any of it.
Responding to criticism on Twitter as opposed to Bameron’s video, he said: ‘If I go on Twitter, this is what I see. These anime avatar kids are relentlessly calling me a transphobe on Twitter.’
The 30-year-old added: ‘I allegedly purposefully misgendered someone. It was in my Dr Phil video…This person who, to me, was so clearly a Jeffree Star wannabe or lookalike, I didn’t even think about it. She had a masculine name.
‘It’s not that weird to think they would be referred to as he. She wasn’t mentioned as “she” anywhere in the video so it’s not that weird!’
PewDiePie went on to say: ‘If [they did] I would have noticed and I would have changed it. But no, I’m a transphobe.’
He pointed out: ‘I actually support LGBT. I would never – and I could have been more careful – I would never purposefully misgender someone as a way to antagonise or troll. I wouldn’t do that, the same with sexuality.
‘That’s not okay, you shouldn’t do it either, I wouldn’t do it.’
Ending the video with some pretty brutal words, he said: ‘It’s the same s*** all over again.
Metro.co.uk has contacted reps for PewDiePie for further comment.
Got a showbiz story?
If you've got a story, video or pictures get in touch with the Metro.co.uk Entertainment team by emailing us<EMAIL_ADDRESS>calling 020 3615 2145 or by visiting our Submit Stuff page - we'd love to hear from you.


Choose my own adventure
Choose my own adventure – or is it yours? – deals with meeting processes and ideas of intimacy on the internet and in performance. By adopting codes and language of Eroticism, SM and Webcam chat sites, it attempts by a context shift, to make reactions, thoughts and feelings experiential.
The question of reciprocity has a central role. Who dominates? Who feels pleasure? Who is available and who authorizes?
The project has two sides: the web and the real site. In the website project, users are invited to design tasks and experienceable proposals for a character, which they can write down at the blog during a week. Every day an idea is chosen and the video produced and posted on the web the following day.
In the live encounters, each guest has the possibility to create a scene and to experience it in the form of a 1:1 meeting with the performer. Before each guest enters the room they will have to fill out a contract sheet in which they have to specify their wishes concerning lightening, music, clothes and ways of greeting. By entering the room the guest will encounter a video and bit by bit then witness the set up of his or her personal scene. With a drink, both guest and performer then negotiate the further procedure of the game. Cards are available to be played with. The guest decides how far to go.


{% extends 'admin/app_index.html' %} {% block content %} {{ block.super }}
Explore your raster folders to find unoptimized images. Save space and increase speed.


Our Support Team is building handy tools and integrations to help you manage your account and send your messages effectively!
What would you like see added to VidGrid?
List Assist
Update your recipient list by removing the Email Reports (Unsubscribes, Bounces, Invalid Emails, Spam Reports) that are tracked within your SendGrid account.


{% extends 'portfolio/base.html' %} {% load static %} {% block other_navs %}
We can't verify that your request is genuine. Please re-evalute what you want to do before trying again.


$(if refresh-timeout)
$(endif)
TF-Hotspot • Status
Home
Pricing
Students
Home
Apartment
Corporate
My Account
Account Status
About
Company
Team
Hotspot Locations
Contact
Blog
Students Pricing - Standard Pack
Home Package
Apartment Package
Corporate Package
Contact Us


Latrunculi
Lactrunculi (or ludus latruncolonum) is a two-player board game that was played during the Roman Empire.
Latrunculi
Share this link with a friend so they can join too.
http://tinyurl.com/game
Latrunculi
player1
player2
Share this link with a friend so they can join too.
http://tinyurl.com/game
About
Latrunculi (or ludus latrunculorum) is a two-player strategy board game that dates back over
two thousand years. Much of the game's history, along with the specifics of its rules, have
been lost over time. Like the original game, this web version of the game requires an opponent.
After creating a new game you can send the game link to a friend, or just open it in a second
window to try it out on your own.
Learn more about the history of Latrunculi here.
Rules
The original rules of latrunculi have been lost in history, so this version chooses to follow Kowalski's reconstruction of the game rules. These rules are simple:
Winner!
Error
Error desc.


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 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 necessary time needed to understand yor product vision
The outcome of this scoping session is proposal or high-level statement of work.
based on your requirements, we can provide acomplete offering or just the pieces you need.
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 visula design and workflows, solicit user feedback and work with to make sure what gets built is what is needed.
DESIGN
All engineers are fluent in the latest enterprise, mobile and web development technologies.
They collaborate with your team to write, and improve code on a daily basis, using proven practices such as test-driven development and pair programming.
DEVELOPMENT
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.
PRODUCT MANAGEMENT


exit_to_app
Robotmon Messenger
refresh
Sign in with Google
Google
Sign in with Facebook
Facebook
outlined_flag


--- layout: doco title: "MicroView Arduino Library - MicroViewSlider Class Reference" category: API description: "MicroView Arduino Library Documentation" tags: [microview, library, functions, documentation] comments: true ---
Public Member Functions | |
| MicroViewSlider (uint8_t newx, uint8_t newy, int16_t min, int16_t max) | |
| MicroViewSlider class initialisation. More... | |
| MicroViewSlider (uint8_t newx, uint8_t newy, int16_t min, int16_t max, uint8_t sty) | |
| MicroViewSlider class initialisation with style. More... | |
| void | draw () |
| Draw widget value. More... | |
| void | drawFace () |
| Draw widget face. More... | |
| Public Member Functions inherited from MicroViewWidget | |
| MicroViewWidget (uint8_t newx, uint8_t newy, int16_t min, int16_t max) | |
| MicroView widget parent class. More... | |
| uint8_t | getX () |
| Get widget x position. | |
| uint8_t | getY () |
| Get widget y position. | |
| void | setX (uint8_t newx) |
| Set widget x position. | |
| void | setY (uint8_t newy) |
| Set widget y position. | |
| int16_t | getMinValue () |
| Get minimum value. More... | |
| int16_t | getMaxValue () |
| Get maximum value. More... | |
| int16_t | getValue () |
| Get current value. More... | |
| void | setMinValue (int16_t min) |
| Set minimum value. More... | |
| void | setMaxValue (int16_t max) |
| Set maximum value. More... | |
| void | setValue (int16_t val) |
| Set current value and update widget. More... | |
| void | setValue (int16_t val, boolean doDraw) |
| Set current value with optional update. More... | |
| uint8_t | getValLen () |
| Get the print length of the value. More... | |
| uint8_t | getMaxValLen () |
| Get the maximum possible print length of the value. More... | |
| void | reDraw () |
| MicroView Widget reDraw routine. More... | |
| void | drawNumValue (int16_t value) |
| Draw a signed decimal numeric value at the current cursor location. More... | |
Additional Inherited Members | |
| Protected Attributes inherited from MicroViewWidget | |
| uint8_t | posX |
| uint8_t | posY |
| int16_t | minValue |
| int16_t | maxValue |
| int16_t | value |
| uint8_t | valLen |
| uint8_t | maxValLen |
| MicroViewSlider::MicroViewSlider | ( | uint8_t | newx, |
| uint8_t | newy, | ||
| int16_t | min, | ||
| int16_t | max | ||
| ) |
MicroViewSlider class initialisation.
Initialise the MicroViewSlider widget with default style.
| MicroViewSlider::MicroViewSlider | ( | uint8_t | newx, |
| uint8_t | newy, | ||
| int16_t | min, | ||
| int16_t | max, | ||
| uint8_t | sty | ||
| ) |
MicroViewSlider class initialisation with style.
Initialise the MicroViewSlider widget with style WIDGETSTYLE0 or WIDGETSTYLE1 or WIDGETSTYLE2 (like 0, but vertical) or WIDGETSTYLE3 (like 1, but vertical). Add WIDGETNOVALUE to the style to suppress displaying the numeric value. E.g. WIDGETSTYLE0 + WIDGETNOVALUE
|
virtual |
Draw widget value.
Convert the current value of the widget and draw the ticker representing the value.
Reimplemented from MicroViewWidget.
|
virtual |
Draw widget face.
Draw image/diagram representing the widget's face.
Reimplemented from MicroViewWidget.


This game was made in 48 hours for Aber Comp Soc's 2020 game jam by Evelyn Hugtenburg and Clark Seanor. The theme was "2020 Simulator".
Player 1: WASD to move, Q to drop a garbage bomb. Player 2: Arrow keys to move, space to drop a garbage bomb. Click inside the game box to allow it to capture your keyboard!
Your goal is to cover the other player in garbage while avoiding completely isolating yourself from them with a wall of burning garbage.


Air india
Toggle navigation
Discover
Book
Journey
Account
Profile
Transactions
Add passengers
Male
Female
Other
Age
Add Passenger
XCI
CJI
1200 Hrs
26 Hrs 3 stops
2500 Hrs
23 April 2020
IC814
Nos
Passenger name
Gender
Age
1
Sumit dighe
M
26
Book Now


{{template "head.html" .}}
{{template "navigation.html" .}} {{template "alert.html" .}}
Your email address
Go
{{template "scripts.html" .}}


Click Start to measure the response times of the click and vclick events in your browser, normalized by the mouseup/touchstart events (whichever is faster, depends on your device).
On the desktop, click and vclick should respond after about the same delay. On iOS however, vclick is signficantly faster than click because iOS puts in a 300ms+ delay for click.
jQuery mobile uses click events by default on its buttons, resulting in a slow experience in some environments like iOS. This plugin simply swaps these events with vclick events, so that you'll always get the fast response time.
Click on the button below to go to a page that does implement jquery.mobile.fastButtons and see the speed improvement.


This code test is designed to give you an opportunity to experience the technical stack that you would be working on day to day in the Innovation Lab. The below is a list of required technologies that you must use in order to complete your task.
Back-end technologies:
Front-end technologies:
How you choose to implement both services is up to you, so long as the above technologies are incorporated into the solution.
While the following list is not mandatory, you may find it helpful to start here:
Create a basic gallery to display media items.
develop
branchdevelop
branch to your own master
and add the following reviewers
e-r-w
If you have any questions, please raise a Github issue against this repository and tag e-r-w
in it. If you have any privacy concerns you may alternatively contact the innovation lab directly.
DO NOT SUBMIT A PULL-REQUEST to the upstream repository
The smart contract has been implement in Solidity for an Ethereum Blockchain. Truffle and Ganache GUI were used as developement and test blockchains.
The client has been implemented using React and Redux.
Various approaches for state management and state sharing between component were used within this project to demonstrate the different options.
state
object is used to locally store state within a component and setState
to ensure that the component, as well as child components will be re-rendered on state changes.selector.js
component with the gallery.js
component which displays the images, as well as for sharing the values of the input fields within addImage.js
.gallery.js
component. Redux could have been used to cache the data of the blockchain to reduce the number of requests to it. However, that would have added quite some complexity to keep the datasets in sync and (at a later stage) invalidate entries when items have been deleted.
For this application, directly loading the list of images from the blockchain each time the gallery component is loaded is definitely not an issue.
Also the image data, once loaded, stays anyway locally within the gallery.js
component, which sorts and renders it according to the filter settings.
If caching in larger applications is a requirement, then Drizzle [https://www.trufflesuite.com/drizzle] is definitely worth a look as most of the caching code on top of a Redux store is already provided out of the box.Beside that, a few interesting other technologies are available or emerging which might be interesting as alternatives or complementary approaches for state management. Just to name a few ...
Clone/download this repo and change into that directory. NodeJS is required. The code has been developed and tested with node v10.16.0
If Truffle is not yet available, install it either locally or global.
$ npm install truffle
$ npm install -g truffle
Within the main directory, the JavaScript-based tests for the smartcontract can be executed. As the tests require the packages truffle-assertions
and truffle-hdwallet-provider
(in that order at the moment !), they need to be installed first - which can conveniently be executing in the main directory by:
$ npm install
The easiest way to execute the tests for the smartcontract is by using the Ethereum development blockchain within Truffle. Compile the smartcontract, start the test blockchain and test environment, and execute the tests.
$ truffle compile
$ truffle develop
truffle(develop)> test
4 tests will be executed and the output should be similar to this:
Contract: Gallery
✓ deploys successfully
✓ should add an item and return an events with new number of items (104ms)
✓ should retrieve item (66ms)
✓ should throw error if getItemByIndex was called with index out of bounds
Option 1: Just leave the terminal window with the truffle console truffle(develop)>
up and running, this will provide access to the truffle development blockchain on localhost port 8545 [http://<IP_ADDRESS>:8545] by default.
Option 2: Nicer and with better (visual) access to what is going on 'behind the scenes' is provided by Ganache GUI. Get it at [https://www.trufflesuite.com/ganache], install it, start it and choose 'Quickstart'. Ganache GUI will provide a development blockchain on localhost port 7545 [http://<IP_ADDRESS>:7545] by default.
Both environments display a 12 word mnemonic which allow to create a wallet with access to the test accounts provided by Truffle or Ganache GUI. The defaults are:
Truffle
pill few wear village tower boat error taste awful panda entire limb
Ganache GUI (version 2.10)
tomorrow draft giggle design purchase daring goddess cute inquiry giant thumb journey
WARNING : NEVER use a wallet created with these mnemonics on the Ethereum mainnet with real Ether. Anybody who finds out about it (or just gives it a try) will be able to move your funds!
By now, a test blockchain should be up and running.
Option 1 (running Truffle)
truffle(develop)> migrate
Option 2 (running Ganache GUI on localhost:7545)
truffle-config.js
already contains a network configuration for this setup.
$ truffle migrate --network localhost_7545
Thereafter you should see within Ganache GUI that you have spent some parts of your (test) Ether of your first account, 4 additional blocks should be mined as well as 4 transactions visible.
If truffle-config.js
is added as a project within the Ganache GUI Contracts tab, additional details about the contract state can be displayed.
In order to use an Ethereum Blockchain based application, a wallet to hold accounts and to (directly) interact with the blockchain is required. MetaMask is currently the most popular plug-in for a standard web browser. Get MetaMask here [https://metamask.io/] and install it in a web browser (Chrome is recommended).
Open MetaMask by clicking on the orange fox icon (top right corner of the browser). Create a new wallet by choosing Import using account seed phrase
and provide the 12 word mnemonic displayed by Truffle / Ganache GUI.
Click the 'Network' drop-down on the top. If there is no pre-configured network which matches the test blockchain (Truffle: localhost:8545 / Ganache GUI localhost:7545), it has to be added by choosing [Custom RPC] within the drop-down list.
Once connected to the blockchain, clicking on the top-right icon within the MetaMask pop-up should show at least one account with 100 (test) Ether.
Open a new terminal and change into the client
directory.
Install the required dependencies and start the server
$ npm install
$ npm start
This should automatically open a new window within your (default) browser on localhost:3000
.
A few seconds later, MetaMask will ask for a confirmation to connect and to make its accounts visible to the application. Either the MetaMask pop-up shows up right away or a small number next to the MetaMask icon is displayed, indicating the number of outstanding transactions to be confirmed - in this case you need to click on the icon to bring the MetaMask pop-up forward.
Actually, at the moment there seems to be a (possible) problem with Firefox + MetaMask, so using Chrome + MetaMask is highly recommended.
On the Homepage [http://localhost:3000/] you should (just) see the header menu.
Type a URL of an image of your choice or generate a link to an image on [http://dog.random]. Add a caption and write the image url & caption to the blockchain by hitting the [add Image] button. MetaMask should pop-up again or indicate a request for a transaction confirmation by showing a '1' next to the MetaMask icon. Once the transaction is confirmed, you should see for a short time a browser pop-up.
Choose [Gallery] from the header menu and you should see the image(s). Go back to the [add Image] page to add more images.
Once a few images (actually only image URLSs) have been written to the blockchain, you can try out the filter on the Gallery page and sort the images by file extension.
Videos can be played within the small 'cards'.
On a mobile phone (or Chrome browser in mobile development mode), you should see the images stacked below each other.


Test yourself by competing in a Code Quiz. Answer questions as quick as you can within the alotted time. Incorrect answers will deduct time remaining. Time remaining at the end of the quiz will be you score. Each wrong answer will deduct your time by 15 seconds! Can you get a high score?


We completed two challenges, one using straws to catch a falling object and another building something out of newspaper and tape, making it as tall as possible and testing its ability to withstand wind. My straw contraption did not succesfully catch the falling object because the foundation was not strong enough to make it sturdy.My newspaper contraption was sturdy and able to withstand the wind, however it was not the tallest in the class. 3. Create a page describing the group design challenges, your approach, design ideas and success or failure. The page should include photos of your work and illustrate the contributions you personally made to the group challenges. The challenges we did this week were to
In the picture, my group of me, Charlie, and Hannah are building with straws


Appears that you have no nodes. You can create or add some.
Branch: {{deploy.branch}} at {{deploy.repo}}
Webhook secret (works for all deploys with this repo): {{deploy.webhookSecret}}
{{deploy.status ? deploy.status[0]?.lastDeployLog : undefined}}
Are you sure?
Are you sure?


Review
Order
Home
About Us
Sign Up
Login
SignUp
*Name
*Contact Number
*E-mail
Invalid E-mail address.
*Password
Password too short.
*Confirm Password
* Indicates a required field.


Send Bulk Email
From Email:
From Name:
Subject:
Mail Body:
See Preview
To Emails:
Submit
Mail Preview


--- layout: default parent: "team" activePage: "team" pageTitle: "team" plugins: ["circle_progress"] ---
Extremity sweetness difficult behaviour he of. On disposal of as landlord horrible. Afraid at highly months do things on at.
Marianne or husbands if at stronger ye. Considered is as middletons uncommonly. Promotion perfectly ye consisted so.
Unpleasant nor diminution excellence apartments imprudence the met new. Draw part them he an to he roof only. Music leave say doors him.
Farther related bed and passage comfort civilly. Dashwoods see frankness objection abilities the. As hastened oh produced prospect formerly up am.


NAME OF THE PROJECT
{{title}}
TEAM LEADER
{{tl.name}}
{{tl.email}}, +91 {{tl.phone}}
MEMBERS
{% for member in members %}
{{forloop.counter}}. {{member.name}}, {{member.email}}, +91 {{member.phone}}
{% endfor %}
COLLEGE
{{tl.college}}
CATEGORY
ASSOCIATION
{{category}}
{{assoc}}
{% if round == '2' or round == '3' %}
{% endif %}


Grade Breakdown
- Four Homeworks: 50 pts each
- Take Home Midterm: 100 pts
- Final Exam: 200 pts
- Optional: Final Project (200 pts)
- If both the Final Exam & Project are completed, we will take the max of the two scores, i.e. max(Final Exam, Final Project)
Collaboration Policy and Honor Code
You are free to form study groups and discuss homeworks and projects. However, you must write up homeworks and code from scratch independently without referring to any notes from the joint session. Explicitly indicate with whom (if anyone) you discussed the homework problems (and what help they provided) at the top of your homework solutions. You should not copy, refer to, or look at the solutions in preparing their answers from previous years’ homeworks. It is an honor code violation to intentionally refer to a previous year’s solutions, either official or written up by another student. Anybody violating the honor code will be referred to the Office of Judicial Affairs.
Submission Instructions
We will be using the
GradeScope online submission system. All students (non-SCPD and SCPD) should submit their assignments electronically via GradeScope. Students can typeset or scan their homeworks. We will be using the auto-grader for the programming portions of the homeworks.
To register for GradeScope,
- Create an account on GradeScope if you don’t have one already.
- Here are some helpful tips for submitting through Gradescope.
To allow students unfamiliar with Gradescope the ability to interact with it, an option test assignment titled "Homework 0" (with corresponding code) has been updated to the following locations:
Written Assignments: Homeworks should be individually written up clearly and succinctly; you may lose points if your answers are unclear or unnecessarily complicated. You are encouraged to use LaTeX to writeup your homeworks, but this is not a requirement. Explicitly indicate with whom (if anyone) you discussed the homework problems (and what help they provided) at the top of your homework solutions. Homework problems are similar to writing assignments in other courses in terms of citing sources and plagiarism. Students must cite (via URL or otherwise) sources used in preparing their homework solution.
Late Homework: All homework is due on 4:30 PM Pacific time on the due date. You have
2 late days which you can use at any time during the term without penalty. Once you run out of late days, late homework will be accepted with a 20% penalty. No assignment will be accepted more than two days after its due date. Each late homework should be clearly marked as "Late" on the first page. No late days are allowed for deadlines related to the course project or exams.
Regrade Policy: You may submit a regrade request if you believe that the course staff made an error in grading. Any regrade requests should be submitted through Gradescope within one week of receiving your grade. Please try to be as specific as possible with your regrade request. We will typically regrade the entirety of any homework for which any regrade is requested and the resulting score may be higher or lower than the original one.


1. TEMPERANCE.
Eat not to dullness; drink not to elevation.
2. SILENCE.
Speak not but what may benefit others or yourself; avoid trifling conversation.
3. ORDER.
Let all your things have their places; let each part of your business have its time.
4. RESOLUTION.

5. FRUGALITY.
Make no expense but to do good to others or yourself; i.e., waste nothing.
6. INDUSTRY.
Lose no time; be always employ'd in something useful; cut off all unnecessary actions.
7. SINCERITY.
Use no hurtful deceit; think innocently and justly, and, if you speak, speak accordingly.
8. JUSTICE.
Wrong none by doing injuries, or omitting the benefits that are your duty.
9. MODERATION.
Avoid extreams; forbear resenting injuries so much as you think they deserve.
10. CLEANLINESS.
Tolerate no uncleanliness in body, cloaths, or habitation.
11. TRANQUILITY.
Be not disturbed at trifles, or at accidents common or unavoidable.
12. CHASTITY.
Rarely use venery but for health or offspring, never to dulness, weakness, or the injury of your own or another's peace or reputation.
13. HUMILITY.
Imitate Jesus and Socrates.
My intention being to acquire the habitude of all these virtues, I judg'd it would be well not to distract my attention by attempting the whole at once, but to fix it on one of them at a time; and, when I should be master of that, then to proceed to another, and so on, till I should have gone thro' the thirteen; and, as the previous acquisi- tion of some might facilitate the acquisition of certain others, I ar- rang'd them with that view, as they stand above. Temperance first, as it tends to procure that coolness and clearness of head, which is so necessary where constant vigilance was to be kept up, and guard maintained against the unremitting attraction of ancient habits, and the force of perpetual temptations. This being acquir'd and establish'd. Silence would be more easy; and my desire being to gain knowledge at the same time that I improv'd in virtue, and considering that in conversation it was obtain'd rather by the use of the ears than of the tongue, and therefore wishing to break a habit I was getting into of prattling, punning, and joking, which only made me acceptable to trifling company, I gave Silence the second place. This and the next. Order, I expected would allow me more time for attending to my project and my studies. Resolution, once become habitual, would keep me firm in my endeavors to obtain all the subsequent virtues; Frugality and Industry freeing me from my remaining debt, and producing affluence and independence, would make more easy the practice of Sincerity and Justice, etc., etc. Conceiving then, that, agreeably to the advice of Pythagoras in his Golden Verses, daily examination would be necessary, I contrived the following method for conducting that examination.
I made a little book, in which I allotted a page for each of the virtues. I rul'd each page with red ink, so as to have seven columns, one for each day of the week, marking each column with a letter for the day. I cross'd these columns with thirteen red lines, marking the beginning of each line with the first letter of one of the virtues, on which line, and in its proper column, I might mark, by a little black spot, every fault I found upon examination to have been committed respecting that virtue upon that day.
I determined to give a week's strict attention to each of the virtues successively. Thus, in the first week, my great guard was to avoid every the least offence against Temperance, leaving the other virtues to their ordinary chance, only marking every evening the faults of the day. Thus, if in the first week I could keep my first line, marked T, clear of spots, I suppos'd the habit of that virtue so much strengthen'd, and its opposite weaken'd, that I might venture ex-tending my attention to include the next, and for the following week keep both lines clear of spots. Proceeding thus to the last, I could go thro' a course compleat in thirteen weeks, and four courses in a year. And like him who, having a garden to weed, does not attempt to eradicate all the bad herbs at once, which would exceed his reach and his strength, but works on one of the beds at a time, and, having accomplish'd the first, proceeds to a second, so I should have, 1 hoped, the encouraging pleasure of seeing on my pages the progress I made in virtue, by clearing successively my lines of their spots, till in the end, by a number of courses, I should be happy in viewing a clean book, after a thirteen weeks' daily examination.
This my little book had for its motto these lines from Addison's Cato:
"Here will I hold. If there's a power above us (And that there is, all nature cries aloud Thro' all her works), He must delight in virtue; And that which he delights in must be happy."
Another from Cicero,
"O vitae Philosophia dux! O virtutum indagatrix expultrixque viti-orum! Unus dies, bene et ex przccptis tuis actus, pcccanti immortalitatiest anteponendus."
Another from the Proverbs of Solomon, speaking of wisdom or virtue:
"Length of days is in her right hand, and in her left hand riches and honour. Her ways are ways of pleasantness, and all her paths are peace." iii. 16, 17.
And conceiving God to be the fountain of wisdom, I thought it right and necessary to solicit his assistance for obtaining it; to this end I formed the following little prayer, which was prefix'd to my tables of examination, for daily use.
"O powerful Goodness! bountiful Father! merciful Guide! Increase in me that wisdom which discovers my truest interest. Strengthen my resolutions to perform what that wisdom dictates. Accept my kind offices to thy other children as the only return in my power for thy continual favors to me."
I used also sometimes a little prayer which I took from Thomson's Poems, viz.:
"Father of light and life, thou Good Supreme! O teach me what is good; teach me Thyself! Save me from folly, vanity, and vice. From every low pursuit; and fill my soul With knowledge, conscious peace, and virtue pure; Sacred, substantial, never-fading bliss!"
The precept of Order requiring that every part of my business should have its allotted time, one page in my little book contain'd the following scheme of employment for the twenty-four hours of a natural day:
I enter'd upon the execution of this plan for self-examination, and continu'd it with occasional intermissions for some time. I was surpris'd to find myself so much fuller of faults than I had imagined; but I had the satisfaction of seeing them diminish. To avoid the trouble of renewing now and then my little book, which, by scraping out the marks on the paper of old faults to make room for new ones in a new course, became full of holes, I transferr'd my tables and precepts to the ivory leaves of a memorandum book, on which the lines were drawn with red ink, that made a durable stain, and on those lines I mark'd my faults with a black-lead pencil, which marks I could easily wipe out with a wet sponge. After a while I went thro' one course only in a year, and afterward only one in several years, till at length I omitted them entirely, being employ'd in voy-ages and business abroad, with a multiplicity of affairs that inter-fered; but I always carried my little book with me.
My scheme of Order gave me the most trouble; and I found that, tho' it might be practicable where a man's business was such as to leave him the disposition of his time, that of a journeyman printer, for instance, it was not possible to be exactly observed by a master, who must mix with the world, and often receive people of business at their own hours. Order, too, with regard to places for things, papers, etc., I found extreamly difficult to acquire. I had not been early accustomed to it, and, having an exceeding good memory, I was not so sensible of the inconvenience attending want of method. This article, therefore, cost me so much painful attention, and my faults in it vexed me so much, and I made so little progress in amendment, and had such frequent relapses, that I was almost ready to give up the attempt, and content myself with a faulty character in that respect, like the man who, in buying an ax of a smith, my neighbour, desired to have the whole of its surface as bright as the edge. The smith consented to grind it bright for him if he would turn the wheel; he turn'd, while the smith press'd the broad face of the ax hard and heavily on the stone, which made the turning of it very fatiguing. The man came every now and then from the wheel to see how the work went on, and at length would take his ax as it was, without farther grinding. "No," said the smith, "turn on, turn on; we shall have it bright by-and-by; as yet, it is only speckled." "Yes," said the man, "but I think I like a speckled ax best." And I believe this may have been the case with many, who, having, for want of some such means as I employ'd, found the difficulty of obtaining good and breaking bad habits in other points of vice and virtue, have given up the struggle, and concluded that "a speckled ax was best"; for something, that pretended to be reason, was every now and then suggesting to me that such extream nicety as I exacted of myself might be a kind of foppery in morals, which, if it were known, would make me ridiculous; that a perfect character might be attended with the inconvenience of being envied and hated; and that a benevolent man should allow a few faults in himself, to keep his friends in countenance.
In truth, I found myself incorrigible with respect to Order; and now I am grown old, and my memory bad, I feel very sensibly the want of it. But, on the whole, tho' I never arrived at the perfection I had been so ambitious of obtaining, but fell far short of it, yet I was, by the endeavour, a better and a happier man than I otherwise should have been if I had not attempted it; as those who aim at perfect writing by imitating the engraved copies, tho' they never reach the wish'd-for excellence of those copies, their hand is mended by the endeavor, and is tolerable while it continues fair and legible.
It may be well my posterity should be informed that to this little artifice, with the blessing of God, their ancestor ow'd the constant felicity of his life, down to his 79th year, in which this is written. What reverses may attend the remainder is in the hand of Providence; but, if they arrive, the reflection on past happiness enjoy'd ought to help his bearing them with more resignation. To Temperance he ascribes his long continued health, and what is still left to him of a good constitution; to Industry and Frugality, the early easiness of his circumstances and acquisition of his fortune, with all that knowledge that enabled him to be a useful citizen, and obtained for him some degree of reputation among the learned; to Sincerity and Justice, the confidence of his country, and the honorable employs it conferred upon him; and to the joint influence of the whole mass of the virtues, even in the imperfect state he was able to acquire them, all that evenness of temper, and that cheerfulness in conversation, which makes his company still sought for, and agreeable even to his younger acquaintance. I hope, therefore, that some of my descendants may follow the example and reap the benefit.
< Go Back


--- layout: page title: Rules permalink: /rules/ menu: main order: 2 ---
These rules find errors related to TypeScript features:
{% include rule_list.html ruleType="typescript" %}These rules catch common errors in JS programming or otherwise confusing constructs that are prone to producing bugs:
{% include rule_list.html ruleType="functionality" %}These rules make code maintenance easier:
{% include rule_list.html ruleType="maintainability" %}These rules enforce consistent style across your codebase:
{% include rule_list.html ruleType="style" %}


Toggle navigation
Voynich Manuscript REST API
About
Zodiac Analysis 1
API URL
Analyse
×
Warning!
The request failed - check the URL
Output


As the “Helpful Fellow” in the lobby of the Green Building states, the elevator is a little weird. Instead of its buttons having numbers, they have colors (Red, Orange, Yellow, Green, Blue, Purple, Black, Gray, White, and Brown). There is also a button that takes us directly to the Ground floor. Each colored button also has an associated symbol which is used both for color-blind accessibility and for one of the navigation puzzles.
This is the button layout:
On each floor, there is a small puzzle encoding the elevator code for the floor immediately above it.
| Floor | Code | Solution Summary |
|---|---|---|
| G | Ground | N/A |
| 1 | Red Blue Red Blue | Ground floor NPC tells you the code. |
| 2 | Blue Orange Purple Red White | Colors of flowers on floor 1 from left to right. |
| 3 | Yellow Blue Gray Green Purple Black | Colors of squares on floor 2 from back to front. |
| 4 | Brown Green Orange Blue | Cubicles with flower pots, in order from 1 to 4 |
| 5 | White Orange Red Blue | Flower pots on floor 4 form the symbols on the elevator buttons. |
| 6 | Purple Green Gray Orange | Path through the invisible maze on floor 5 passes through these colors in order. |
| R | Yellow Blue Green Red | Invisible walls form the digits 1 through 4 on different colored squares. |
The “Helpful Fellow” on the ground floor of the Green Building tells you this code when you speak to him. The code is Red Blue Red Blue.
The flowers on the back wall of Floor 1 are colored Blue Orange Purple Red White from left to right.
The colors of the squares on Floor 2 from back to front are Yellow Blue Gray Green Purple Black.
The walls on Floor 3 form a collection of square rooms in the same shape as the elevator keypad. Some of these rooms contain flower pots; one room contains one flower pot, one room contains two flower pots, one room contains three flower pots, and one room contains four flower pots. The corresponding buttons on the elevator keypad are colored Brown Green Orange Blue.
There are four square rooms on Floor 4. In each room there are a collection of flower pots which form a symbol. Each symbol matches one of the symbols on the elevator keypad. The corresponding buttons are White Orange Red Blue.
There is an invisible maze on Floor 5 which restricts our player’s movement. The only path through the maze that gets you to the other side of the room passes through the Purple Green Gray Orange tiles in order.
Screenshot with the maze turned visible:
There are four large colored tiles on Floor 6 colored blue, yellow, green, and red. Each tile has invisible walls placed on top of it in the shape of a numeral from 1 to 4. Taken in the order of their numerals, the code for the roof is Yellow Blue Green Red.
Screenshot showing the positions of the invisible walls:


|
jubilant-funicular
|
Public Attributes | |
| ILushort | Width |
| ILushort | Height |
| ILushort | OffX |
| ILushort | OffY |
| ILushort | Bpp |
| ILushort | Signature |
| ILubyte | Reserved1 [413] |
| ILubyte | Reserved2 [4] |
| ILubyte | BppInfo |
| ILubyte | Reserved3 [598] |
Definition at line 22 of file il_pix.cpp.
| ILushort PIXHEAD::Bpp |
Definition at line 28 of file il_pix.cpp.
| ILubyte PIXHEAD::BppInfo |
Definition at line 29 of file il_pxr.cpp.
| ILushort PIXHEAD::Height |
Definition at line 25 of file il_pix.cpp.
| ILushort PIXHEAD::OffX |
Definition at line 26 of file il_pix.cpp.
| ILushort PIXHEAD::OffY |
Definition at line 27 of file il_pix.cpp.
| ILubyte PIXHEAD::Reserved1[413] |
Definition at line 25 of file il_pxr.cpp.
| ILubyte PIXHEAD::Reserved2[4] |
Definition at line 28 of file il_pxr.cpp.
| ILubyte PIXHEAD::Reserved3[598] |
Definition at line 30 of file il_pxr.cpp.
| ILushort PIXHEAD::Signature |
Definition at line 24 of file il_pxr.cpp.
| ILushort PIXHEAD::Width |
Definition at line 24 of file il_pix.cpp.


nips nips2004 nips2004-92 nips2004-92-reference knowledge-graph by maker-knowledge-mining
Source: pdf
Author: Joachim Giesen, Simon Spalinger, Bernhard Schölkopf
Abstract: We describe methods for computing an implicit model of a hypersurface that is given only by a ﬁnite sampling. The methods work by mapping the sample points into a reproducing kernel Hilbert space and then determining regions in terms of hyperplanes. 1
[1] J. Carr, R. Beatson, J. Cherrie, T. Mitchell, W. Fright, B. McCallum, and T. Evans. Reconstruction and representation of 3D objects with radial basis functions. In Proc. 28th Ann. Conf. Computer Graphics and Interactive Techniques, pages 67–76. 2001.
[2] C.-C. Chang and C.-J. Lin. LIBSVM: a library for support vector machines, 2001. Software available at http://www.csie.ntu.edu.tw/˜cjlin/libsvm.
[3] O. Chapelle and B. Sch¨ lkopf. Incorporating invariances in nonlinear SVMs. In T.G. o Dietterich, S. Becker, and Z. Ghahramani, editors, Advances in Neural Information Processing Systems 14, Cambridge, MA, 2002. MIT Press.
[4] J. Giesen and M. John. Surface reconstruction based on a dynamical system. Computer Graphics Forum, 21(3):363–371, 2002.
[5] T. Lewiner, H. Lopes, A. Wilson, and G. Tavares. Efﬁcient implementation of marching cubes cases with topological guarantee. Journal of Graphics Tools, 8:1–15, 2003.
[6] S. Osher and N. Paragios. Geometric Level Set Methods. Springer, New York, 2003.
[7] M. Pauly, R. Keiser, and M. Gross. Multi-scale feature extraction on point-sampled surfaces. Computer Graphics Forum, 22(3):281–289, 2003.
[8] B. Sch¨ lkopf, J. Platt, J. Shawe-Taylor, A. J. Smola, and R. C. Williamson. Estimating o the support of a high-dimensional distribution. Neural Computation, 13:1443–1471, 2001.
[9] I. Steinwart. Sparseness of support vector machines—some asymptotically sharp bounds. In S. Thrun, L. Saul, and B. Sch¨ lkopf, editors, Advances in Neural Ino formation Processing Systems 16. MIT Press, Cambridge, MA, 2004.
[10] D. M. J. Tax and R. P. W. Duin. Support vector data description. Machine Learning, 54:45–66, 2004.
[11] V. N. Vapnik. The Nature of Statistical Learning Theory. Springer Verlag, New York, 1995.


Converts numbers to a different base or notation (e.g. decimal to hex or scientific notation to plain).


Rainbow Mansion
rainbowmansion.com
SECRET NASA THINK TANK | OG HACKER PARTIES | WHEN THE WEB WAS COOL
--- layout: page title: Spaces ---
Over the years I've been involved in starting and stewarding a number of place-based communities and self-governance projects.
What I love about these projects is the ways in which physical spaces require us engage with questions of finite resource management and navigate the interface with existing rulesets (from zoning and permitting to loans), motivating real tradeoffs in decision making that force interrogation of our values.
Thomas Franck (Fairness in International Law and Institutions, 1998) says that the conditions for fairness are most likely to be found when we have the following conditions: a sense of community, and moderate scarcity. Here we create community through the ongoing process of co-creation as peers, and (when we do it well!) we moderate the amount of scarcity through initial conditions, financial models, and participation architectures. By creating “communities of fate,” (Eugene Holland, Nomad Citizenship) we motivate critical inquiry, mutual support, active experimentation and the sharing of resources.
The physicality of place-based projects also creates a visceral, embodied experience of changing the rules: when we say "the rules are different here" that immediately translates into a lived experience.
SECRET NASA THINK TANK | OG HACKER PARTIES | WHEN THE WEB WAS COOL
The Embassy Network has been an informal collection of intentional communities since 2012, using space as a platform to experiment with new ways of organizing, making decisions and allocating resources.
A group of scientists and young space professionals realized that the domestic sphere has certain important qualities in common with research outposts and eventual settlements on other planets: small groups of people making decisions together over a shared domain. Far from being a blank slate, the seeds of future civilizations will be formed by the social norms and coordination mechanisms we develop today. If we truly want space to be a new chapter in human history, we need to get better at organizing ourselves on the original human settlement: Earth.
INTENTIONAL COMMUNITY | AUTONOMOUS SPACE | EXPERIMENTAL HOTEL | SOCIAL OBSERVATORY | RADICAL LECTURE SERIES
We were in a documentary on new economies; this is a brief clip.
This is a talk I gave in 2016 on the praxis of Open Collaborative Networks-- the nitty gritty of how they work on the inside, tools and practices to drawn on, and how this work continually informs our models of collaboration--using Embassy Network and Enspiral as case studies.


This page describes how the data to perform the analysis has been extracted. In order to easily download tweets, a Twitter Developer account is needed. Access to such an account can be applied for at Apply for access. With this account, the Twitter API can be utilized. The Twitter API only get one access to to exctract the most reason 3200 tweets from a given account (3200 tweet do not go far back for many american polticians). However, Twitter's Terms of Service do allow for datasets of tweets ID's to be distributed to third parties (not the full JSON). Tweets dating back can be extracted if one has the ID's of the tweets.
We found two sources that containing open tweet-id's related to our project, and another source that stored the full length of the tweets made by Donald Trump. The three sources are listed below:
115th U.S. Congress Tweet IdsA open dataset with 2,041,399 tweets from the Twitter accounts of members of the 115th U.S. Congress collected in the period of January 27, 2017 and January 2, 2019. The dataset consists of two files of interest - namely
116th U.S. Congress Tweet Ids
A open dataset with 2,817,747 tweets from the Twitter accounts of members of the 116th U.S. Congress collected in the period of January 27, 2019 and May 7, 2020. The dataset consists of two files of interest - namely
Trump Twitter Archive
A site dedicated to scrape every single tweet from Donald J. Trump. Here we downloaded all tweets in the periods of January 27, 2017 and January 2, 2019 and January 27, 2019 and May 7, 2020.
See more at Trump Twitter Archive .
Twitter Handle Data
Examing the Harvard Dataverse we discovered that polticians in congress can have number of profiles for instance a private profile, a profile associated with work in congress and campaign profile.
Unfortunally the data also contains a large number of random profiles.
Furthermore, the Harvard data did not list which party the account where associated with.
To combat this we found a list of congress memebers with their party association, whether they act as Senator or Represenative and, most important for the project, their twitter profile (if they have an account the vast majority has).
That meant rather than dealing with multiple accounts for the same congress member or including random multiple accounts we would only consider one account per congress member.
We used the following two different sources for the 115 and 116 congress for this.
Media Data
We have not been able to find consist sources that list publishes twitter id for all tweet the American News Media in the period January 27, 2017 to January 2, 2019 and January 27, 2019 and May 7, 2020.
However, we have manually found 16 prominent American News Media and their respective Twitter account names.
This will be ultized to check if a polticians have retweetet a tweet that was orginally posted by a media account.
As we per Twitter's Terms of Service can't distribute full length tweets we naturally can't share the data we have performed our analysis on. However, we have created a zip folder that contains all the raw data we used for analysis. Click download raw data to download the data. Furthermore we have created a Jupyter-Notebook that elaborates on how the data set can be recreated in details. The notebook also elaborates how the Twitter Handle Data was scraped from the PDF and the website. The notebook can found in our GitHub repository with name Exstract_And_Clean_data.ipynb or be viewed online by clicking the Jupyter logo below.


The interior is handsome, with comfortable seats and roomy rear quarters. While the quality of materials falls short of competitors such as the Audi A4 and the BMW 3-series, the Stinger boasts usable cargo-carrying capability and a large center console.
With as many flavors as a fro-yo shop, the C-class offers luxury and performance in a tidy package. Most models are powered by a turbo four-cylinder, performance is decent, and fuel economy is good; eco-warriors may be interested in the plug-in hybrid model.
If you think all family sedans are created equal, you’re in for a surprise with the nimble and curvy Mazda 6.
Available as both a sedan and a convertible, the bite-size A3 wraps what we love about Audis in a handsome, tidy package. Steering is precise, the ride composed, and optional Quattro all-wheel drive provides all-weather assurance.
Automotive journalists can be spoiled. Give us 600 horsepower, and we’ll invariably think that another 100 horsepower or so wouldn’t hurt.
Expect the 2020 Corolla Sedan to borrow a lot from its hatchback counterpart when it comes to the design as well.


Last updated: 2018-02-11
Code version: 4d59175
The ‘aphid’ R package for analysis with profile hidden Markov models is published by Shaun Wilkinson on 2017-06-23. Let’s practice this package to drive HMM and PHMM model and use related algorithms.
library("aphid")
states <- c("Begin", "Fair", "Loaded")
residues <- paste(1:6)
### Define transition probability matrix A
A <- matrix(c(0, 0, 0, 0.99, 0.95, 0.1, 0.01, 0.05, 0.9), nrow = 3)
dimnames(A) <- list(from = states, to = states)
### Define emission probability matrix E
E <- matrix(c(rep(1/6, 6), rep(1/10, 5), 1/2), nrow = 2, byrow = TRUE)
dimnames(E) <- list(states = states[-1], residues = residues)
### Create the HMM object
x <- structure(list(A = A, E = E), class = "HMM")
### Plot the model
plot(x, textexp = 1.5)
### Optionally add the transition probabilities as text
text(x = 0.02, y = 0.5, labels = "0.95")
text(x = 0.51, y = 0.5, labels = "0.90")
text(x = 0.5, y = 0.9, labels = "0.05")
text(x = 0.5, y = 0.1, labels = "0.10")
#### viterbi algorithm
data(casino)
### The actual path is stored in the names attribute of the sequence
actual <- c("F", "L")[match(names(casino), c("Fair", "Loaded"))]
### Find the predicted path
vit1 <- Viterbi(x, casino)
predicted <- c("F", "L")[vit1$path + 1]
### Note the path element of the output Viterbi object is an integer vector
### the addition of 1 to the path converts from C/C++ to R's indexing style
actual[1:50]###list examples fromm first roll to 50th roll
[1] "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F"
[18] "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F"
[35] "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "L" "L" "L" "L" "L"
predicted[1:50]
[1] "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F"
[18] "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F"
[35] "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "F" "L" "L"
#### forward and posterior probability
### The line shows the posterior probability that the dice was fair at each roll,
### while the grey rectangles show the actual periods for which the loaded dice
### was being used.
casino.post <- posterior(x, casino)
plot(1:300, seq(0, 1, length.out = 300), type = "n", xlab = "Roll number",
ylab = "Posterior probability of dice being fair")
starts <- which(c("L", actual) == "F" & c(actual, "F") == "L")
ends <- which(c("F", actual) == "L" & c(actual, "L") == "F") - 1
for(i in 1:6) rect(starts[i], 0, ends[i], 1, col = "grey", border = NA)
lines(1:300, casino.post[1, ])
#### drive HMM model given a sequence with its known state path
### (stored as the ‘names’ attribute of the sequence)
y <- deriveHMM(list(casino), logspace = FALSE)
plot(y, textexp = 1.5)
### Optionally add the transition probabilities as text
text(x = 0.02, y = 0.5, labels = round(y$A["Fair", "Fair"], 2))
text(x = 0.51, y = 0.5, labels = round(y$A["Loaded", "Loaded"], 2))
text(x = 0.5, y = 0.9, labels = round(y$A["Fair", "Loaded"], 2))
text(x = 0.5, y = 0.1, labels = round(y$A["Loaded", "Fair"], 2))
#### drive profile HMM model
###“path” element taking values 0 (“delete”), 1 (“match”) or 2 (“insert”)
data(globins)
globins
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
HBA_HUMAN "V" "G" "A" "-" "-" "H" "A" "G" "E" "Y"
HBB_HUMAN "V" "-" "-" "-" "-" "N" "V" "D" "E" "V"
MYG_PHYCA "V" "E" "A" "-" "-" "D" "V" "A" "G" "H"
GLB3_CHITP "V" "K" "G" "-" "-" "-" "-" "-" "-" "D"
GLB5_PETMA "V" "Y" "S" "-" "-" "T" "Y" "E" "T" "S"
LGB2_LUPLU "F" "N" "A" "-" "-" "N" "I" "P" "K" "H"
GLB1_GLYDI "I" "A" "G" "A" "D" "N" "G" "A" "G" "V"
globins.PHMM <- derivePHMM(globins, residues = "AMINO", seqweights = NULL)
plot(globins.PHMM)
path <- Viterbi(globins.PHMM, globins["GLB1_GLYDI", ])$path
c("D", "M", "I")[path + 1]
[1] "M" "M" "M" "I" "I" "M" "M" "M" "M" "M"
#### Sequence Simulation
###generate()is used to generate sequences
###train() is for optimizing model parameters using either the Baum Welch or Viterbi training algorithm
sim <- list(length = 10)
set.seed(9999)
for(i in 1:10) sim[[i]] <- generate(globins.PHMM, size = 20)
sim <- lapply(sim, function(s) s[names(s) != "D"])
globins2.PHMM <- train(globins.PHMM, sim, method = "BaumWelch",
deltaLL = 0.01, seqweights = NULL)
Iteration 1 log likelihood = -213.8818
Iteration 2 log likelihood = -188.625
Iteration 3 log likelihood = -187.6561
Iteration 4 log likelihood = -187.1078
Iteration 5 log likelihood = -186.8872
Iteration 6 log likelihood = -186.8454
Iteration 7 log likelihood = -186.8401
Convergence threshold reached after 7 EM iterations
#### Sequence Alignment
##deconstruct the original globin alignment and re-align the sequences using the original PHMM.
globins <- unalign(globins)
align(globins, model = globins.PHMM, seqweights = NULL, residues = "AMINO")
1 2 3 I I 4 5 6 7 8
HBA_HUMAN "V" "G" "A" "-" "-" "H" "A" "G" "E" "Y"
HBB_HUMAN "V" "-" "-" "-" "-" "N" "V" "D" "E" "V"
MYG_PHYCA "V" "E" "A" "-" "-" "D" "V" "A" "G" "H"
GLB3_CHITP "V" "K" "G" "-" "-" "-" "-" "-" "-" "D"
GLB5_PETMA "V" "Y" "S" "-" "-" "T" "Y" "E" "T" "S"
LGB2_LUPLU "F" "N" "A" "-" "-" "N" "I" "P" "K" "H"
GLB1_GLYDI "I" "A" "G" "A" "D" "N" "G" "A" "G" "V"
sessionInfo()
R version 3.4.2 (2017-09-28)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Sierra 10.12.1
Matrix products: default
BLAS: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib
locale:
[1] zh_CN.UTF-8/zh_CN.UTF-8/zh_CN.UTF-8/C/zh_CN.UTF-8/zh_CN.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] aphid_1.0.1
loaded via a namespace (and not attached):
[1] compiler_3.4.2 backports_1.1.2 magrittr_1.5 rprojroot_1.3-2
[5] tools_3.4.2 htmltools_0.3.6 yaml_2.1.16 Rcpp_0.12.14
[9] stringi_1.1.6 rmarkdown_1.8 knitr_1.18 git2r_0.21.0
[13] stringr_1.2.0 digest_0.6.14 openssl_0.9.9 evaluate_0.10.1
This R Markdown site was created with workflowr


Markdown I learned so far
So far, what I know about markdown. Please follow me if you’re interested.
The following code is easy, have fun =)
Here we start, the first line is, (please be noted that every code line you want it to only display, or say, not to be transcripted by markdown, is indented at least 4 spaces)
<http://scottie33.github.io>
you will get: http://scottie33.github.io
<EMAIL_ADDRESS>you will get<EMAIL_ADDRESS>When you want to throw out some text with link, e.g.,
[www.google.com](http://www.google.com)
you will get www.google.com. and more,
[www.google.com](http://www.google.com "go to google and dig something out to eat, pal")
you will get www.google.com (put your mouse on the link. oh, don’t click it, just put it there =))
Or, alternately, may you type this:
[www.github.com][] is the link we want to go to.
[www.github.com]: http://www.github.com (this line can not be indented more than 3 spaces to take effect)
www.github.com is the link we want to go to.

And “-” also has the same effect here just as ”*”.
Then we show some sentences here, one by one:
> Hi there, how have you been?
Hi there, how have you been?
> Good, good, how about *you*?
Good, good, how about you?
Title
=====
Title
Title
-----
Title
--- (a split line)
---- (a split line too)
***** (still, a split line)
****** (WTH, a split line)
- - - - - (Gsf!@$#%^Q@, a split line ... )
* * * * * * (... anyway, they are all split lines ...)
##### small title
#### medium title
### large title
## very large title
# huge title
small title
medium title
large title
very large title
huge title
Eh, finally we are about to end this, tired? alright, here’s a photo of Naomi Watts, check it out:
![I am an image](http://somewhere.jpg "I am an image")
blog comments powered by Disqus