这里展示[世界列表]
这里展示[快速游戏]
点击[快速游戏]，直接进入号码为1234的聊天室
刷新页面即可退出（即断开socket连接)
这里展示[注册]
点击[注册]，
channel为聊天室号码(默认为1234)
刷新页面即可退出（即断开socket连接)
这里展示[登陆]
点击[登陆]，直接进入号码为1234的聊天室
channel为聊天室号码(默认为1234)
刷新页面即可退出（即断开socket连接)
Zombie World
uid为用户ID
token为用户认证成功后返回的token
* uid, token可以从登陆／注册的返回页面复制粘贴
chkNickNameDebugView
uid为用户ID
Only worked after your "join" succeed. (Cauz u need got session)
createPlayerDebugView
uid为用户ID
Only worked after your "join" succeed. (Cauz u need got session)
getUnitDebugView
Only worked after your "join" succeed. (Cauz u need got session)
getMissionListDebugView
Only worked after your "join" succeed. (Cauz u need got session)
getBagDebugView
Only worked after your "join" succeed. (Cauz u need got session)
bagSellDebugView
Only worked after your "join" succeed. (Cauz u need got session)
onArmDebugView
Only worked after your "join" succeed. (Cauz u need got session)
onUnitDebugView
Only worked after your "join" succeed. (Cauz u need got session)
getFractionDebugView
Only worked after your "join" succeed. (Cauz u need got session)
decompoCardDebugView
Only worked after your "join" succeed. (Cauz u need got session)
compoCardDebugView
Only worked after your "join" succeed. (Cauz u need got session)
decompoPetDebugView
Decompo will delete your pets and generate on fraction
compoPetDebugView
Only worked after your "join" succeed. (Cauz u need got session)
decompoEquipDebugView
Decompo will delete your equips and generate on fraction
compoEquipDebugView
Only worked after your "join" succeed. (Cauz u need got session)
transmissionDebugView
Only worked after your "join" succeed. (Cauz u need got session)
equipStrengthenDemoView
Only worked after your "join" succeed. (Cauz u need got session)
battleDemoView
Only worked after your "join" succeed. (Cauz u need got session)
battleEndDemoView
Only worked after your "join" succeed. (Cauz u need got session)
brabra
asdfasdf
| Mkvv vszrox6 ro wsvv luy yyu NSOT MYVK
|
brabra
asdfasdf


Games
Programs
A python library to get baseball stats/data
Summit Code is a development group that makes games and programs.
A high school student interested in programming and security


TraCI - Build Artifact UI, Perf Tracing and Stats
Projects
Project
Commit
Branch
Build
Description
Start Date
End Date
Status
Duration
Show Details
Details
Reports
Tests Summary
Total
Pass
Failures
Errors
New Regressions
Fixed Regression
Flaky Tests
Rest


http://www.speakers-podium.com/susangranger.
Susan Granger's review of "SEA PEOPLE" (Showtime TV Family Movie)
On Sunday night, June 20th, at 9 P.M., Showtime presents this enchanting, original, made-for-TV movie, starring Fairfield's own Hume Cronyn as a spry, old codger who's not what he appears to be. 14 year-old Amanda (Tegan Moss) is a bit of a loner who lives with her family in a small coastal town in Nova Scotia. She trains as a long-distance swimmer and dreams of swimming the English Channel, like her heroine Gertrude Ederle. When the town's main source of employment, the local cannery, closes, her father has to seek work in a town a hundred miles away. Feeling abandoned and hurt, she suddenly witnesses an elderly man (Cronyn) jumping off an inlet bridge. Attempting to save him, she dives into the bitterly cold water, only to be gruffly brushed off by the wiry man who calmly and quite competently swims to shore. Introducing himself as John MacRae, he takes the thoroughly chilled Amanda to his home to warm up and meet his wife (Joan Gregson). After visiting with the couple, Amanda becomes convinced that they are not human.  They even refer to her and her family as "land people." Could they possibly be related to the mermaids she's heard about in stories? She even quizzes a school friend (Shawn Roberts) whose grandfather was supposedly rescued by a mermaid. As their friendship deepens, the MacRaes reveal their mysterious and magical relationship to the sea. And when John becomes ill, Amanda embarks on a quest of desperate ingenuity to save him. This is an unusually charming fable, a real winner that I highly recommend for family viewing. It will be repeated on 6/29 at 7:15 P.M., 7/3 at 4:45 P.M., 7/9 at 8 A.M. & 6:15 P.M., 7/19 at 6:15 P.M. and 7/25 at 4:35 P.M.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


{% extends "layout.html" %} {% block title %}About {% endblock %} {% block content %}
This project now has a RESTful component to it. This API will essentially act as a wrapper around the third party APIs that this website gets its data from, as well as allow users to access the same data rendered in the tables via JSON.
All API endpoints use the GET
method, are free to use, and do not require a key.
/api/world/summary/
: Summary of current data for all countries./api/world/country_name/
: COVID case history for a specific country./api/world/percentages/
: What percentages of global cases, deaths, etc different countries constitute./api/us/summary/
: Summary of all current data for each U.S. state/territory./api/us/state/state_name/
: A history of COVID data for a specific state.


instagram
g+plus
pinterest
facebook
twitter
youtube
tumblr
Copyright © All rights reserved | This template is made with
by
Colorlib


Virtual DOMs usually refer to plain objects representing the actual DOMs.
The Document Object Model (DOM) is a programming interface for HTML documents.
For example, when you do this:
const $app = document.getElementById("app");
You will get the DOM for

on the page.
This DOM will have some programming interface for you to control it. For
example:
$app.innerHTML = "Hello world";
To make a plain object to represent $app
, we can write
something like this:
const vApp = { tagName: "div", attrs: { id: "app", }, };
There is no strict rule of how the virtual DOM should look like. You can
call it tagLabel
instead of tagName
, or
props
instead of attrs
. As soon as it
represents the DOM, it is a "virtual DOM".
Virtual DOM will not have any of those programming interface. This is what makes them lightweight comparing to actual DOMs.
However, keep in mind that since DOMs are the fundamental elements of the browser, most browsers must have done some serious optimisation to them. So actual DOMs might not be as slow as many people claim.
We start of by creating and going into our project directory.
$ mkdir /tmp/vdommm
$ cd /tmp/vdommm
We will then initiate the git repo, create the
.gitignore
file with
gitignorer and
initiate npm.
$ git init
$ gitignore init node
$ npm init -y
Let's do out initial commit.
$ git add -A
$ git commit -am ':tada: initial commit'
Next, install Parcel Bundler the truly zero-configuration bundler. It supports all kinds of file format out of the box. It is always my choice of bundler in live-coding talks.
$ npm install parcel-bundler
(Fun fact: you no longer need to pass --save
anymore.)
While this is installing, let's create some files in our project.
src/index.html
  <title>hello world</title>   Hello world
src/main.js
const vApp = { tagName: "div", attrs: { id: "app", }, }; console.log(vApp);
package.json
{ ... "scripts": { "dev": "parcel src/index.html", // add this script } ... }
Now you can spawn the development server by doing:
$ npm run dev
><EMAIL_ADDRESS>dev /private/tmp/vdommm
> parcel src/index.html
Server running at http://localhost:1234
Built in 959ms.
Going to http://localhost:1234 and you should see hello world on the page and the virtual DOM we defined in the console.
Most virtual DOM implementation will have this function called
createElement
function, often referred as h
.
These functions will simply return a "virtual element". So
let's implement that.
src/vdom/createElement.js
export default (tagName, opts) => { return { tagName, attrs: opts.attrs, children: opts.children, }; };
With object destructuring we can write the above like this:
src/vdom/createElement.js
export default (tagName, { attrs, children }) => { return { tagName, attrs, children, }; };
We should also allow creating elements without any options, so let's put some default values for out options.
src/vdom/createElement.js
export default (tagName, { attrs = {}, children = [] } = {}) => { return { tagName, attrs, children, }; };
Recall the virtual DOM that we created before:
src/main.js
const vApp = { tagName: "div", attrs: { id: "app", }, }; console.log(vApp);
It now can be written as:
src/main.js
import createElement from "./vdom/createElement"; const vApp = createElement("div", { attrs: { id: "app", }, }); console.log(vApp);
Go back to the browser and you should see the same virtual dom as we
defined previously. Let's add an image under the
div
sourcing from giphy:
src/main.js
import createElement from "./vdom/createElement"; const vApp = createElement("div", { attrs: { id: "app", }, children: [ createElement("img", { attrs: { src: "https://media.giphy.com/media/cuPm4p4pClZVC/giphy.gif", }, }), ], }); console.log(vApp);
Go back to the browser and you should see the updated virtual DOM.
Object literals (e.g. { a: 3 }
) automatically inherit from
Object
. This means that the object created by object
literals will have methods defined in the
Object.prototype
like hasOwnProperty
, toString
, etc.
We could make our virtual DOM a little bit "purer" by using
Object.create(null)
. This will create a truly plain object
that doesn't inherit from Object
but
null
instead.
src/vdom/createElement.js
export default (tagName, { attrs, children }) => { const vElem = Object.create(null); Object.assign(vElem, { tagName, attrs, children, }); return vElem; };
Now we got a function that generates virtual DOM for us. Next we need a
way to translate our virtual DOM to real DOM. Let's define
render (vNode)
which will take in a virtual node and return
the corresponding DOM.
src/vdom/render.js
const render = (vNode) => { // create the element // e.g.

 const $el = document.createElement(vNode.tagName); // add all attributs as specified in vNode.attrs // e.g.

 for (const [k, v] of Object.entries(vNode.attrs)) { $el.setAttribute(k, v); } // append all children as specified in vNode.children // e.g.

 for (const child of vNode.children) { $el.appendChild(render(child)); } return $el; }; export default render;
The above code should be quite self-explanatory. I am more than happy to explain more tho if there is any request for it.
In real DOM, there are 8 types of nodes. In this article, we will only look at two types:
ElementNode
, such as

and

TextNode
, plain texts
Our virtual element structure,
{ tagName, attrs, children }
, only represents the
ElementNode
in the DOM. So we need some representation for
the TextNode
as well. We will simply use
String
to represent TextNode
.
To demonstrate this, let's add some text to our current virtual DOM.
src/main.js
import createElement from "./vdom/createElement"; const vApp = createElement("div", { attrs: { id: "app", }, children: [ "Hello world", // represents TextNode createElement("img", { attrs: { src: "https://media.giphy.com/media/cuPm4p4pClZVC/giphy.gif", }, }), // represents ElementNode ], }); // represents ElementNode console.log(vApp);
As I mentioned, we are considering two types of nodes. The current
render (vNode)
only only renders ElementNode
.
So let's extend render
so that it supports rendering
of TextNode
too.
We will first rename our existing function renderElem
as it
is what it does. I will also add object destructuring to make the code
looks nicer.
src/vdom/render.js
const renderElem = ({ tagName, attrs, children }) => { // create the element // e.g.

 const $el = document.createElement(tagName); // add all attributs as specified in vNode.attrs // e.g.

 for (const [k, v] of Object.entries(attrs)) { $el.setAttribute(k, v); } // append all children as specified in vNode.children // e.g.

 for (const child of children) { $el.appendChild(render(child)); } return $el; }; export default render;
Let's redefine render (vNode)
. We just need to check
if vNode
is a String
. If it is then we can use
document.createTextNode(string)
to render the
textNode
. Otherwise, just call
renderElem(vNode)
.
src/vdom/render.js
const renderElem = ({ tagName, attrs, children }) => { // create the element // e.g.

 const $el = document.createElement(tagName); // add all attributs as specified in vNode.attrs // e.g.

 for (const [k, v] of Object.entries(attrs)) { $el.setAttribute(k, v); } // append all children as specified in vNode.children // e.g.

 for (const child of children) { $el.appendChild(render(child)); } return $el; }; const render = (vNode) => { if (typeof vNode === "string") { return document.createTextNode(vNode); } // we assume everything else to be a virtual element return renderElem(vNode); }; export default render;
Now our render (vNode)
function is capable of rendering two
types of virtual nodes:
createElement
function
vApp
!
Now let's try to render our vApp
and
console.log
it!
src/main.js
import createElement from "./vdom/createElement"; import render from "./vdom/render"; const vApp = createElement("div", { attrs: { id: "app", }, children: [ "Hello world", createElement("img", { attrs: { src: "https://media.giphy.com/media/cuPm4p4pClZVC/giphy.gif", }, }), ], }); const $app = render(vApp); console.log($app);
Go to the browser and you would see the console showing the DOM for:

 Hello world

We are now able to create our virtual DOM and render it to real DOM. Next we would need to put our real DOM on the page.
Let's first create a mounting point for our app. I will replace the
Hello world
on the src/index.html
with

.
src/index.html
  <title>hello world</title>

What we want to do now is to replace this empty div
with
our rendered $app
. This is super easy to do if we ignore
Internet Explorer and Safari. We can just use
ChildNode.replaceWith
.
Let's define mount ($node, $target)
. This function
will simply replace $target
with $node
and
return $node
.
src/vdom/mount.js
export default ($node, $target) => { $target.replaceWith($node); return $node; };
Now in our main.js simply mount our
$app
to the empty div.
src/main.js
import createElement from "./vdom/createElement"; import render from "./vdom/render"; import mount from "./vdom/mount"; const vApp = createElement("div", { attrs: { id: "app", }, children: [ "Hello world", createElement("img", { attrs: { src: "https://media.giphy.com/media/cuPm4p4pClZVC/giphy.gif", }, }), ], }); const $app = render(vApp); mount($app, document.getElementById("app"));
Our app will show on the page now and we should see a cat on the page.
Now let's make our app more interesting. We will wrap our
vApp
in a function called createVApp
. It will
then take in a count
which then the vApp
will
use it.
src/main.js
import createElement from "./vdom/createElement"; import render from "./vdom/render"; import mount from "./vdom/mount"; const createVApp = (count) => createElement("div", { attrs: { id: "app", dataCount: count, // we use the count here }, children: [ "The current count is: ", String(count), // and here createElement("img", { attrs: { src: "https://media.giphy.com/media/cuPm4p4pClZVC/giphy.gif", }, }), ], }); let count = 0; const vApp = createVApp(count); const $app = render(vApp); mount($app, document.getElementById("app"));
Then, we will setInterval
to increment the count every
second and create, render and mount our app again on the page.
src/main.js
import createElement from "./vdom/createElement"; import render from "./vdom/render"; import mount from "./vdom/mount"; const createVApp = (count) => createElement("div", { attrs: { id: "app", dataCount: count, // we use the count here }, children: [ "The current count is: ", String(count), // and here createElement("img", { attrs: { src: "https://media.giphy.com/media/cuPm4p4pClZVC/giphy.gif", }, }), ], }); let count = 0; const vApp = createVApp(count); const $app = render(vApp); let $rootEl = mount($app, document.getElementById("app")); setInterval(() => { count++; $rootEl = mount(render(createVApp(count)), $rootEl); }, 1000);
Note that I used $rootEl
to keep track of the root element.
So that mount
knows where to mount our new app.
If we go back to the browser now, we should see the count increment every second by 1 and works perfectly!
We now gain the power to declaratively create our application. The application is rendered predictably and is very very easy to reason about. If you know how things are done in the JQuery way, you will appreciate how much cleaner this approach is.
However, there are a couple of problems with re-rendering the whole application every second:
<input>
will lose their focus whenever the
application re-mount to the page. See live demo
here.
We will solve these problems in the next section.
Imagine we have a function diff (oldVTree, newVTree)
which
calculate the differences between the two virtual trees; return a
patch
function that takes in the real DOM of
oldVTree
and perform appropriate operations to the real DOM
to make the real DOM looks like the newVTree
.
If we have that diff
function, then we could just re-write
our interval to become:
src/main.js
import createElement from "./vdom/createElement"; import render from "./vdom/render"; import mount from "./vdom/mount"; import diff from "./vdom/diff"; const createVApp = (count) => createElement("div", { attrs: { id: "app", dataCount: count, // we use the count here }, children: [ "The current count is: ", String(count), // and here createElement("img", { attrs: { src: "https://media.giphy.com/media/cuPm4p4pClZVC/giphy.gif", }, }), ], }); let count = 0; let vApp = createVApp(count); const $app = render(vApp); let $rootEl = mount($app, document.getElementById("app")); setInterval(() => { count++; const vNewApp = createVApp(count); const patch = diff(vApp, vNewApp); // we might replace the whole $rootEl, // so we want the patch will return the new $rootEl $rootEl = patch($rootEl); vApp = vNewApp; }, 1000);
So let's try to implement this
diff (oldVTree, newVTree)
. Let's start with some easy
cases:
newVTree
is undefined
$node
passing into the
patch
then!
$node
with
render(newVTree)
.
$node
with render(newVTree)
.
oldVTree.tagName !== newVTree.tagName
$node
with
render(newVTree)
.
Two elements of different types will produce different trees.
src/vdom/diff.js
import render from "./render"; const diff = (oldVTree, newVTree) => { // let's assume oldVTree is not undefined! if (newVTree === undefined) { return ($node) => { $node.remove(); // the patch should return the new root node. // since there is none in this case, // we will just return undefined. return undefined; }; } if (typeof oldVTree === "string" || typeof newVTree === "string") { if (oldVTree !== newVTree) { // could be 2 cases: // 1. both trees are string and they have different values // 2. one of the trees is text node and // the other one is elem node // Either case, we will just render(newVTree)! return ($node) => { const $newNode = render(newVTree); $node.replaceWith($newNode); return $newNode; }; } else { // this means that both trees are string // and they have the same values return ($node) => $node; } } if (oldVTree.tagName !== newVTree.tagName) { // we assume that they are totally different and // will not attempt to find the differences. // simply render the newVTree and mount it. return ($node) => { const $newNode = render(newVTree); $node.replaceWith($newNode); return $newNode; }; } // (A) }; export default diff;
If the code reaches (A)
, it implies the following:
oldVTree
and newVTree
are both virtual
elements.
tagName
.attrs
and
children
.
We will implement two functions to deal with the attributes and children
separately, namely diffAttrs (oldAttrs, newAttrs)
and
diffChildren (oldVChildren, newVChildren)
, which will
return a patch separately. As we know at this point we are not going to
replace $node
, we can safely return
$node
after applying both patches.
src/vdom/diff.js
import render from "./render"; const diffAttrs = (oldAttrs, newAttrs) => { return ($node) => { return $node; }; }; const diffChildren = (oldVChildren, newVChildren) => { return ($node) => { return $node; }; }; const diff = (oldVTree, newVTree) => { // let's assume oldVTree is not undefined! if (newVTree === undefined) { return ($node) => { $node.remove(); // the patch should return the new root node. // since there is none in this case, // we will just return undefined. return undefined; }; } if (typeof oldVTree === "string" || typeof newVTree === "string") { if (oldVTree !== newVTree) { // could be 2 cases: // 1. both trees are string and they have different values // 2. one of the trees is text node and // the other one is elem node // Either case, we will just render(newVTree)! return ($node) => { const $newNode = render(newVTree); $node.replaceWith($newNode); return $newNode; }; } else { // this means that both trees are string // and they have the same values return ($node) => $node; } } if (oldVTree.tagName !== newVTree.tagName) { // we assume that they are totally different and // will not attempt to find the differences. // simply render the newVTree and mount it. return ($node) => { const $newNode = render(newVTree); $node.replaceWith($newNode); return $newNode; }; } const patchAttrs = diffAttrs(oldVTree.attrs, newVTree.attrs); const patchChildren = diffChildren(oldVTree.children, newVTree.children); return ($node) => { patchAttrs($node); patchChildren($node); return $node; }; }; export default diff;
Let's first focus on the diffAttrs
. It is actually
pretty easy. We know that we are going to set everything in
newAttrs
. After setting them, we just need to go through
all the keys in oldAttrs
and make sure they all exist in
newAttrs
too. If not, remove them.
const diffAttrs = (oldAttrs, newAttrs) => { const patches = []; // setting newAttrs for (const [k, v] of Object.entries(newAttrs)) { patches.push(($node) => { $node.setAttribute(k, v); return $node; }); } // removing attrs for (const k in oldAttrs) { if (!(k in newAttrs)) { patches.push(($node) => { $node.removeAttribute(k); return $node; }); } } return ($node) => { for (const patch of patches) { patch($node); } return $node; }; };
Notice how we create a wrapper patch and loop through the
patches
to apply them.
Children would be a little bit more complicated. We can consider three cases:
oldVChildren.length === newVChildren.length
diff(oldVChildren[i], newVChildren[i])
i
goes from 0
to
oldVChildren.length
.
oldVChildren.length > newVChildren.length
diff(oldVChildren[i], newVChildren[i])
i
goes from 0
to
oldVChildren.length
.
newVChildren[j]
will be undefined
for
j >= newVChildren.length
diff
can handle
diff(vNode, undefined)
!
oldVChildren.length < newVChildren.length
diff(oldVChildren[i], newVChildren[i])
i
goes from 0
to
oldVChildren.length
.
newVChildren.slice(oldVChildren.length)
.
To conclude, we loop through oldVChildren
regardless and we
will call diff(oldVChildren[i], newVChildren[i])
.
Then we will render the additional children (if any), and append them to
the $node
.
const diffChildren = (oldVChildren, newVChildren) => { const childPatches = []; oldVChildren.forEach((oldVChild, i) => { childPatches.push(diff(oldVChild, newVChildren[i])); }); const additionalPatches = []; for (const additionalVChild of newVChildren.slice(oldVChildren.length)) { additionalPatches.push(($node) => { $node.appendChild(render(newVChildren)); return $node; }); } return ($parent) => { // since childPatches are expecting the $child, not $parent, // we cannot just loop through them and call patch($parent) $parent.childNodes.forEach(($child, i) => { childPatches[i]($child); }); for (const patch of additionalPatches) { patch($parent); } return $parent; }; };
I think it is a little bit more elegant if we use the
zip
function.
import render from "./render"; const zip = (xs, ys) => { const zipped = []; for (let i = 0; i < Math.min(xs.length, ys.length); i++) { zipped.push([xs[i], ys[i]]); } return zipped; }; const diffChildren = (oldVChildren, newVChildren) => { const childPatches = []; oldVChildren.forEach((oldVChild, i) => { childPatches.push(diff(oldVChild, newVChildren[i])); }); const additionalPatches = []; for (const additionalVChild of newVChildren.slice(oldVChildren.length)) { additionalPatches.push(($node) => { $node.appendChild(render(additionalVChild)); return $node; }); } return ($parent) => { // since childPatches are expecting the $child, not $parent, // we cannot just loop through them and call patch($parent) for (const [patch, $child] of zip(childPatches, $parent.childNodes)) { patch($child); } for (const patch of additionalPatches) { patch($parent); } return $parent; }; };
src/vdom/diff.js
import render from "./render"; const zip = (xs, ys) => { const zipped = []; for (let i = 0; i < Math.min(xs.length, ys.length); i++) { zipped.push([xs[i], ys[i]]); } return zipped; }; const diffAttrs = (oldAttrs, newAttrs) => { const patches = []; // setting newAttrs for (const [k, v] of Object.entries(newAttrs)) { patches.push(($node) => { $node.setAttribute(k, v); return $node; }); } // removing attrs for (const k in oldAttrs) { if (!(k in newAttrs)) { patches.push(($node) => { $node.removeAttribute(k); return $node; }); } } return ($node) => { for (const patch of patches) { patch($node); } return $node; }; }; const diffChildren = (oldVChildren, newVChildren) => { const childPatches = []; oldVChildren.forEach((oldVChild, i) => { childPatches.push(diff(oldVChild, newVChildren[i])); }); const additionalPatches = []; for (const additionalVChild of newVChildren.slice(oldVChildren.length)) { additionalPatches.push(($node) => { $node.appendChild(render(additionalVChild)); return $node; }); } return ($parent) => { // since childPatches are expecting the $child, not $parent, // we cannot just loop through them and call patch($parent) for (const [patch, $child] of zip(childPatches, $parent.childNodes)) { patch($child); } for (const patch of additionalPatches) { patch($parent); } return $parent; }; }; const diff = (oldVTree, newVTree) => { // let's assume oldVTree is not undefined! if (newVTree === undefined) { return ($node) => { $node.remove(); // the patch should return the new root node. // since there is none in this case, // we will just return undefined. return undefined; }; } if (typeof oldVTree === "string" || typeof newVTree === "string") { if (oldVTree !== newVTree) { // could be 2 cases: // 1. both trees are string and they have different values // 2. one of the trees is text node and // the other one is elem node // Either case, we will just render(newVTree)! return ($node) => { const $newNode = render(newVTree); $node.replaceWith($newNode); return $newNode; }; } else { // this means that both trees are string // and they have the same values return ($node) => $node; } } if (oldVTree.tagName !== newVTree.tagName) { // we assume that they are totally different and // will not attempt to find the differences. // simply render the newVTree and mount it. return ($node) => { const $newNode = render(newVTree); $node.replaceWith($newNode); return $newNode; }; } const patchAttrs = diffAttrs(oldVTree.attrs, newVTree.attrs); const patchChildren = diffChildren(oldVTree.children, newVTree.children); return ($node) => { patchAttrs($node); patchChildren($node); return $node; }; }; export default diff;
Our current app doesn't really make full use of the power of our virtual DOM. To show how powerful our Virtual DOM is, let's make our app more complicated:
src/main.js
import createElement from "./vdom/createElement"; import render from "./vdom/render"; import mount from "./vdom/mount"; import diff from "./vdom/diff"; const createVApp = (count) => createElement("div", { attrs: { id: "app", dataCount: count, // we use the count here }, children: [ "The current count is: ", String(count), // and here ...Array.from({ length: count }, () => createElement("img", { attrs: { src: "https://media.giphy.com/media/cuPm4p4pClZVC/giphy.gif", }, }) ), ], }); let vApp = createVApp(0); const $app = render(vApp); let $rootEl = mount($app, document.getElementById("app")); setInterval(() => { const n = Math.floor(Math.random() * 10); const vNewApp = createVApp(n); const patch = diff(vApp, vNewApp); // we might replace the whole $rootEl, // so we want the patch will return the new $rootEl $rootEl = patch($rootEl); vApp = vNewApp; }, 1000);
Our app now will generate a random number n
between 0 and 9
and display n
cat photos on the page. If you go into the
dev tools, you will see how we are "intelligently" inserting
and removing
depending on n
.


PUBLIC SECTOR BANK
Address: Usha Kunj, Chiragora Main Rd, Binod Nagar, Dhanbad, Jharkhand 826001
OPEN
Hours: Monday-Saturday(10am–1:30pm, 2–4pm)
Phone: 1800 425 3800
Website: https://www.statebankofindia.co.in
PUBLIC SECTOR BANK
Address: Grand Trunk Rd, Bank More, Dhanbad, Jharkhand 826001
OPEN
Hours: Monday-Friday (10am–1:30pm, 2–4pm)
Phone: 1800 22 0229
Website: https://www.bankofindia.co.in
PRIVATE BANK
Address: Municipal Holding No 576/577 Bank More, Shastri Nagar, Dhanbad, Jharkhand 826001
OPEN
Hours: Monday-Saturday(09:30am-04:30pm)
Phone:<PHONE_NUMBER>7
Website: https://www.icicibank.com
OPEN 24hrs
Address: Sardar Patel Nagar, Dhanbad, Jharkhand 826001
Website: https://www.bankofindia.co.in
OPEN 24hrs
Address: Shop No K, 30, Housing Colony Rd, opposite Allahabad Bank, Bank More, Dhanbad, Jharkhand 826001
Phone: 1860 500 5555
Website: https://www.axisbank.com
OPEN 24hrs
Address: Divisional Railway Manager Office, Station Road In Front Of, Dhanbad, Jharkhand 826001
Website:https://www.pnb.in
Address: BANK MORE, DHANBAD,DIST DH, Dhanbad, Jharkhand 826001
OPEN
Hours: Sunday-Saturday(06:00am-10:30pm)
Website:https://www.bharatpetroleum.com
Address: Pandey Muhalla, Dhanbad, Jharkhand 826001
OPEN
Hours: Sunday-Saturday(06:30am-10pm)
Website: https://www.hindustanpetroleum.com
Address: Shastri Nagar,Dhanbad Jharkhand
OPEN 24hrs
Phone: +917281000471
Website: https://www.reliancepetroleum.com
Address: Luby Circular Rd, Kasturba Nagar, Dhanbad, Jharkhand 826001
OPEN
Hours:Monday-Saturday(10am-05pm)
Phone:<PHONE_NUMBER>
Website: https;//www.dhanbad.nic.in
Address: Station Road, Pandey Muhalla, Dhanbad, Jharkhand 826001
Hours: Monday-Saturday(10am-5pm)
OPEN
Phone: 0326 231 2401
Website:https://www.dhanbad.nic.in
Address 1:National Highway 32, Bank More, Dhanbad, Jharkhand 826001; Address 2:CMPF Colony, Dhanbad, Jharkhand 826003 ;Address 3:NH 32, near General Post Office, Kasturba Nagar, Dhanbad, Jharkhand 826001
OPEN 24hrs
Phone 1:<PHONE_NUMBER>2; Phone 2:<PHONE_NUMBER>4 ; Phone 3:<PHONE_NUMBER>7
Website: htttps://www.jhpolice.gov.in
Address: NH-32, Pandey Muhalla, Dhanbad, Jharkhand 826001
OPEN
Hours: Monday-Saturday(10am-05pm)
Website: https://www.district.ecourts.gov.in
Address: Sahadeo Niwas Sahayogi Nagar Sec-2, Sugiadih, CCWO Colony, Dhanbad, Jharkhand 828127
OPEN
Hours: Sunday-Saturday(11am-11pm)
Website: https://www.bigbazaar.com
Address:The Ozone Galleria Mall, NH-32, Sugiadih, Sahayogi Nagar Sector II, Dhanbad, Jharkhand 828127
OPEN
Hours: Sunday-Saturday(09am-11pm)
Website : https://www.oxzonegalleria.com
Address: Luby Circular Rd, Jay Prakash Nagar, Jharudih, Dhanbad, Jharkhand 826001
OPEN
Hours : Sunday-Saturday(11am-11pm)


public class ContextHandler
extends java.lang.Object
| Constructor and Description |
|---|
ContextHandler() |
| Modifier and Type | Method and Description |
|---|---|
static void |
finalizePreviousLlc(com.hp.hpl.jena.ontology.OntClass category,
com.hp.hpl.jena.rdf.model.Resource user,
com.hp.hpl.jena.rdf.model.Literal time)
Method to finalize, i.e., to set the end time of, the previous Low Level
Context instance stored in the Context Ontology Storage.
|
static void |
initialize(java.lang.String directory,
ContextOntology ont)
Method to initialize the Context Handler.
|
static java.util.List<LowLevelContext> |
retrieveConcurrentLlcAtEndTime(LowLevelContext llc)
Method to retrieve from the Context Ontology Storage the Low Level
Context instances which are concurrent at the end time of a Low Level
Context instance.
|
static java.util.List<LowLevelContext> |
retrieveConcurrentLlcAtStartTime(LowLevelContext llc)
Method to retrieve from the Context Ontology Storage the Low Level
Context instances which are concurrent at the start time of a Low Level
Context instance.
|
static java.util.List<Context> |
retrieveContextInstancesMatchingSparqlQuery(com.hp.hpl.jena.query.Query sparqlQuery)
Method to retrieve the Context instances stored in the Context Ontology
Storage which match a SPARQL query.
|
static java.util.List<Context> |
retrieveContextInstancesMatchingSparqlQuery(java.lang.String sparqlQueryString)
Method to retrieve the Context instances stored in the Context Ontology
Storage which match a SPARQL query.
|
static java.util.List<LowLevelContext> |
retrieveLlcEndingWithinWindow(com.hp.hpl.jena.rdf.model.Literal windowStart,
com.hp.hpl.jena.rdf.model.Literal windowEnd)
Method to retrieve from the Context Ontology Storage all the Low Level
Context instances which have their end time within a time window and
which do not have a contiguous Low Level Context instance.
|
static java.util.List<LowLevelContext> |
retrieveLlcStartingWithinWindow(com.hp.hpl.jena.rdf.model.Literal windowStart,
com.hp.hpl.jena.rdf.model.Literal windowEnd)
Method to retrieve from the Context Ontology Storage all the Low Level
Context instances which have their start time within a time window.
|
static NutritionContext |
retrievePreviousHlcAndStoreNew(NutritionContext newHlc) |
static PhysicalActivityContext |
retrievePreviousHlcAndStoreNew(PhysicalActivityContext newHlc)
Method to retrieve the previous instance of High Level Context which is
persisted in the Context Ontology Storage and to save the newly inferred
High Level Context instance.
|
static void |
storeNewLlc(LowLevelContext newLlc)
Method to store the newly mapped Low Level Context instance into the
Context Ontology Storage.
|
public static void initialize(java.lang.String directory, ContextOntology ont)
directory
- Path to the directory where the Context Ontology Storage is
deployed.ont
- Context Ontology which represents the Mining Minds Context
Model.public static PhysicalActivityContext retrievePreviousHlcAndStoreNew(PhysicalActivityContext newHlc)
newHlc
- Instance of High Level Context which has been newly inferred.public static NutritionContext retrievePreviousHlcAndStoreNew(NutritionContext newHlc)
public static void storeNewLlc(LowLevelContext newLlc)
newLlc
- Instance of Low Level Context which has been newly mapped and
has to be stored.public static void finalizePreviousLlc(com.hp.hpl.jena.ontology.OntClass category, com.hp.hpl.jena.rdf.model.Resource user, com.hp.hpl.jena.rdf.model.Literal time)
category
- Ontology class defining the category (e.g., location, emotion
or location) of the LLC which should be finalized.user
- Ontology individual representing the user for which the LLC
should be finalized.time
- Literal describing the end time that should be set to the
stored LLC.public static java.util.List<LowLevelContext> retrieveConcurrentLlcAtStartTime(LowLevelContext llc)
llc
- Instance of Low Level Context.public static java.util.List<LowLevelContext> retrieveConcurrentLlcAtEndTime(LowLevelContext llc)
llc
- Instance of Low Level Context.public static java.util.List<LowLevelContext> retrieveLlcStartingWithinWindow(com.hp.hpl.jena.rdf.model.Literal windowStart, com.hp.hpl.jena.rdf.model.Literal windowEnd)
windowStart
- xsd:dateTime typed Literal representing the start time of the
window.windowEnd
- xsd:dateTime typed Literal representing the end time of the
window.public static java.util.List<LowLevelContext> retrieveLlcEndingWithinWindow(com.hp.hpl.jena.rdf.model.Literal windowStart, com.hp.hpl.jena.rdf.model.Literal windowEnd)
windowStart
- xsd:dateTime typed Literal representing the start time of the
window.windowEnd
- xsd:dateTime typed Literal representing the end time of the
window.public static java.util.List<Context> retrieveContextInstancesMatchingSparqlQuery(com.hp.hpl.jena.query.Query sparqlQuery)
sparqlQuery
- SPARQL query which defines the constraints that the Context
needs to meet.public static java.util.List<Context> retrieveContextInstancesMatchingSparqlQuery(java.lang.String sparqlQueryString)
sparqlQueryString
- String encoding of the SPARQL query which defines the
constraints that the Context needs to meet.


September 28th, 2016 15:17 GMT
New Libraries: Fiber, QVM Updated Libraries: Chrono, Circular Buffer, Container, Context, Coroutine2, DLL, Functional/Forward, Interprocess, Intrusive, Lexical Cast, Log, Math, Phoenix, Regex, Test, Thread, TypeIndex, Unordered, Variant.


The MemoryManager
class provides the infrastructure to organize the set of BlockArrays
More...
#include <MemoryManager.hpp>
|
| std::pair< byte_t *, byte_t * > | insert (degree_t degree) noexcept |
| | Insert a new block of size \(2^{\lceil \log_2(degree + 1) \rceil}\). More...
|
| |
| void | remove (void *device_ptr, degree_t degree) noexcept |
| | Remove the block pointed by ptr More...
|
| |
| int | num_blockarrays () const noexcept |
| | Number of BlockArrays More...
|
| |
| void | statistics () const noexcept |
| | Various statistics about the space efficency. More...
|
| |
| std::pair< byte_t *, byte_t * > | get_blockarray_ptr (int block_index) noexcept |
| | Get the base pointer of a specific BlockArrays More...
|
| |
|
void | free_host_ptrs () noexcept |
| | Free the host memory reserved for all BlockArrays
|
| |
|
void | clear () noexcept |
| | Deallocate all host and device BlockArrays
|
| |
template<typename block_t, typename offset_t, bool DEVICE>
class hornet::MemoryManager< block_t, offset_t, DEVICE >
The MemoryManager
class provides the infrastructure to organize the set of BlockArrays
◆ insert()
| std::pair<byte_t*, byte_t*> insert |
( |
degree_t |
degree | ) |
|
|
noexcept |
Insert a new block of size \(2^{\lceil \log_2(degree + 1) \rceil}\).
If the actual BlockArrays of the correct size is full, it automatically allocates a new one.
- Parameters
-
| [in] | degree | degree of the vertex to insert |
- Returns
- Pair <
host_block_ptr
, device_block_ptr
> of the corresponding block
◆ remove()
| void remove |
( |
void * |
device_ptr, |
|
|
degree_t |
degree |
|
) |
| |
|
noexcept |
Remove the block pointed by ptr
- Parameters
-
| [in] | ptr | pointer to the block to remove |
| [in] | degree | degree of the vertex to remove |
- Warning
- the pointer must be previously inserted, otherwise an error is raised (debug mode)
◆ num_blockarrays()
| int num_blockarrays |
( |
| ) |
const |
|
noexcept |
Number of BlockArrays
- Returns
- the number of allocated BlockArrays
◆ statistics()
| void statistics |
( |
| ) |
const |
|
noexcept |
Various statistics about the space efficency.
It provides the number of BlockArrays, the total number of allocated edges, the total number of used edges, the space efficiency (used/allocated), and the number of blocks for each level
◆ get_blockarray_ptr()
| std::pair<byte_t*, byte_t*> get_blockarray_ptr |
( |
int |
block_index | ) |
|
|
noexcept |
Get the base pointer of a specific BlockArrays
- Parameters
-
| [in] | block_index | index of the BlockArrays |
- Returns
- Pair <
host_BlockArray_ptr
, device_BlockArray_ptr
> of the corresponding BlockArray
- Warning
block_index
must be \(0 \le \text{block_index} < \text{total_block_arrays} \), otherwise an error is raised (debug mode)
The documentation for this class was generated from the following file:


@(params: Map[String, Any]) @uk.gov.hmrc.hmrcemailrenderer.templates.helpers.html.template_main(params, "Your Hydrocarbon Oils return has been submitted"){
Dear Customer,
We have received the return.
This is an email to confirm the submission of the Hydrocarbon Oils return.
Thank you.
From HMRC Hydrocarbon Oils
}


--- layout: post title: While I’m in a ranting mood… date: '2008-10-06T12:49:00.001+01:00' tags: [rant] modified_time: '2008-10-06T12:49:19.093+01:00' blogger_id: tag:blogger.com,1999:blog-4015568221071268916.post-3909124439985128138 comments: true blogger_orig_url: http://serialseb.blogspot.com/2008/10/while-im-in-ranting-mood.html ---
Seen in the wild.
/// <summary>
/// This is only for Unit Test Use
/// </summary>
Code is not shown to protect the guilty, but it’s a method to set a property on an entity class.


|
KlusterKite
0.0.0
A framework to create scalable and redundant services based on awesome Akka.Net project.
|
The base class for Entity Framework Code-first migrations More...
Public Member Functions | |
| abstract IEnumerable< ResourceId > | GetMigratableResources () |
| Gets the list of cluster resources that this migrator can migrate More... | |
| abstract ResourceId | GetDefaultResourceId () |
| The default resource id to check overall migration parameters More... | |
| string | GetCurrentPoint (ResourceId resourceId) |
| Gets the current configuration migration point for specified resource More... | |
| IEnumerable< string > | Migrate (ResourceId resourceId, string pointToMigrate) |
| Performs the migration procedure More... | |
| IEnumerable< string > | GetAllPoints () |
| Gets all possible migration points defined in this assembly More... | |
Public Attributes | |
| EnResourceDependencyType | DependencyType => EnResourceDependencyType.CodeDependsOnResource |
Protected Member Functions | |
| BaseDatabaseMigrator (UniversalContextFactory contextFactory) | |
| Initializes a new instance of the BaseDatabaseMigrator<TContext> class. More... | |
Properties | |
| string | LatestPoint [get] |
| abstract string | Name [get] |
| abstract decimal | Priority [get] |
| Properties inherited from KlusterKite.NodeManager.Migrator.IMigrator | |
| string | LatestPoint [get] |
| Gets the latest known migration point identification for this assembly More... | |
| string | Name [get] |
| Gets the human-readable migrator name More... | |
| EnResourceDependencyType | DependencyType [get] |
| Gets the type of resource dependency More... | |
| decimal | Priority [get] |
| Gets the priority of execution. In case of migration, the migrators will be run in order of priority from largest to lowest More... | |
The base class for Entity Framework Code-first migrations
| TContext | The type of context |
| TContext | : | DbContext |
Definition at line 25 of file BaseDatabaseMigrator.cs.
|
protected |
Initializes a new instance of the BaseDatabaseMigrator<TContext> class.
| contextFactory | The context factory manager. |
Definition at line 39 of file BaseDatabaseMigrator.cs.
| IEnumerable<string> KlusterKite.NodeManager.Migrator.EF.BaseDatabaseMigrator< TContext >.GetAllPoints | ( | ) |
Gets all possible migration points defined in this assembly
Implements KlusterKite.NodeManager.Migrator.IMigrator.
Definition at line 113 of file BaseDatabaseMigrator.cs.
| string KlusterKite.NodeManager.Migrator.EF.BaseDatabaseMigrator< TContext >.GetCurrentPoint | ( | ResourceId | resourceId | ) |
Gets the current configuration migration point for specified resource
Implements KlusterKite.NodeManager.Migrator.IMigrator.
Definition at line 78 of file BaseDatabaseMigrator.cs.
|
pure virtual |
The default resource id to check overall migration parameters
Implemented in KlusterKite.NodeManager.ConfigurationSource.ConfigurationMigrator.
|
pure virtual |
Gets the list of cluster resources that this migrator can migrate
Implements KlusterKite.NodeManager.Migrator.IMigrator.
Implemented in KlusterKite.NodeManager.ConfigurationSource.ConfigurationMigrator.
| IEnumerable<string> KlusterKite.NodeManager.Migrator.EF.BaseDatabaseMigrator< TContext >.Migrate | ( | ResourceId | resourceId, |
| string | pointToMigrate | ||
| ) |
Performs the migration procedure
Implements KlusterKite.NodeManager.Migrator.IMigrator.
Definition at line 88 of file BaseDatabaseMigrator.cs.
| EnResourceDependencyType KlusterKite.NodeManager.Migrator.EF.BaseDatabaseMigrator< TContext >.DependencyType => EnResourceDependencyType.CodeDependsOnResource |
Definition at line 63 of file BaseDatabaseMigrator.cs.
|
get |
Definition at line 46 of file BaseDatabaseMigrator.cs.
|
get |
Definition at line 60 of file BaseDatabaseMigrator.cs.
|
get |
Definition at line 66 of file BaseDatabaseMigrator.cs.


2020-11-29 00:00:00 -0600 - Written by
First post in a blog created in https://jekyllrb.com/ and https://pages.github.com/. Finally!
I wanted to create a simple blog and not maintain some Wordpress or any other site, the hosting, patching, … I also do not want to be locked in some free/paid blog service, in case anything goes wrong.. So, a static pages with git backend seemed quite reasonable. If anything goes wrong with the service, I can easily migrate to ANY webserver, which will just serve my static web/blog.
Jekyll is a static web generator, written in https://www.ruby-lang.org/. It works, but having no extensive knowledge of ruby, only basic from using https://capistranorb.com/, it can get stressful.
https://en.wikipedia.org/wiki/Markdown is okay, but all the other stuff?
Fortunately, I have collected a few links which helped me build some basic skeleton:
_config.yml
, as the turotial does not provide any decentIn the basic first setup, it works somehow acceptable. The file and its URL is quite correct, in the format /year/month/day/name-of-the-post.html
The only thing I am missing is generating full page trees for posts. It does not generate /year/month/day/index.html for all the blogposts in one day, neither a list of all posts in a month /year/month/index.html … this will be my next task to somehow figure out.
In conclusion I am satisfied with this solution, but not overjoyed. Still a win in my book.


36+ Logo Design Yorkshire PNG. Id design logo design corporate identity service design company logo logos brand identity logo legos. The yorkshire woollen company have a strong ethos of 'shop local' and therefore source all of their products from the region.
The yorkshire woollen company have a strong ethos of 'shop local' and therefore source all of their products from the region. In addition ideas and inspiration, we also provide you with tips for designing logos in each industry. Create your logo design online for your business or project.
Corporate identity and logo design services from wsi huddersfield.
Your logo design sends a message about your brand. They wanted a clean & friendly logo that was easily recognizable and could. Designevo's free logo maker helps you create unique logos in seconds. Try our logo creator today and start your brand!


API rate limit has been reached. It will be reset in one minute.
ID.
ID: {{element._id}}
Session
Session: {{element._id.Session}}
StudyID
StudyID: {{element._id.StudyID}}
StudyInitials
StudyInitials: {{element._id.StudyInitials}}
Time Spent
Time Spent : {{element.Time}}
Event
Event: {{element._id.Event}}
Date & Time Log
Date & Time of Log : {{ element._id.day | date: 'medium':'+0130'}} (EST)
No record found.


Tuesday, November 01, 2005
I got up and went to work this morning at Kendall’s. I was late getting there as I cooked a fish for breakfast. Work went fairly well but I was sure tired when I quit at 4:30 PM. Mae had dinner ready when I got home so I ate and then took a shower. I laid down on the chee machine for a little while. Mae had picked some grapes today so she put up four bottles of juice this evening. I talked to my boys and we are going to try to go fishing at the Palisade Reservoir in Idaho on the 18th & 19th of November. Sandi called to tell us that David gave her a check for $10,000 for her share of the sell of their old home. It was due now but Sandi was afraid that she would have to take him to court in order to get her money. I am glad it has worked out for her. Randy called me and said that he could give me a treatment at 9 AM tomorrow.
Wednesday, November 02, 2005
I called Kendall and told him that I would b e there after my appointment. I went to Randy’s and he really worked me over. It was 11:30 AM before I made it to Kendall’s and I worked until 4:30 PM before I quit. I got quite a lot done although I ran short of materials and had to have Kendall go for materials twice. Mae was canning and still picking grapes when I got home. I helped her pick some grapes and helped get some grapes ready for the cooker. Mae had dinner ready and after eating I showered and got ready to go to my meeting. We met as a High Priest Group Leadership at Brother Smiths. When I got home Mae was still putting up grape juice. We watched a show on TV while we continued putting up grape juice and I also flayed the fish from Randy and my fishing trip. It was 11:30 PM when the show ended. Mae has put up 21 quarts of juice so far. I entered my journal and we cleaned up before going to bed.
Thursday, November 03, 2005
I woke at 2 AM with leg cramps. I got up and took a hot shower to relieve the pain. I was able to go back to sleep and woke just before the alarm went off at 6 AM. I let Mae sleep in while I got my breakfast. Mae had prepared my lunch last night. I went to work at Kendall’s. He added more that he wants done again. I quite at 4:30 PM but hope I can finish tomorrow. Mae had been busy all day putting up more grape juice and cleaning the house. She is feeling much better but I wish she would take it a little easier. Mae had dinner ready then I showered and cleaned up. We then watched the show “Return From Snowy River” on TV. I sure enjoy being with Mae.
Friday, November 04, 2005
I woke again during the night with leg cramps. I again worked at Kendall’s and got it finished at 2:00 PM. I was paid for the job but not what we had agreed in the first place. I really felt that my integrity was questioned. They acted like they were pleased with the work that I have done for them but he just felt like I was over charging them for the job. He had evidently had another company bid the job and I am not sure why he didn’t have them do it for them. I therefore told him that I would except there bid plus any extras that I had been asked to do. By the hour with the time I had put in the job should have paid $1,775.00 but Mr. Kendall wrote me a check for $1,425.00. I just accepted it and am glad to be through with the job. I really feel that the problem was his as I ran short of every type of material, except crown molding, that I used and had to have him go get more material.
Mae went over to Georgia’s and spent the day with Georgia as she is recovering from surgery. We are all grateful that the surgery went well and Georgia does not have cancer. Mae came home about 4 PM.
This evening we went to the show “The Work and The Glory” part two. David and his family, Scott and his family, Jeff, Gail and Marcie also went with us. It was a great movie and we all enjoyed it. We went over to Scott & Mishelle’s place and visited for a few minutes. It was a good evening..
Saturday, November 05, 2005
We slept in and then went over to the Star Café, where we met with all that went with us last night, and had breakfast. It was a good event and we enjoy being with our children and grandchildren. Mae and I stopped at the shoe shop and got my belt. We then went to Durk’s and got some supplies to put a new plug in our bathroom sink. We looked for some boots that Bob had told us was on sale but couldn’t find them. We had used Bob’s pickup this morning so we took it over to Scott so he could take some trash to the garbage.  I fixed the bathroom sink and then laid down and took a nap. I attended the Priesthood session of our Stake Conference and then came home and ate some dinner. We attended the evening Adult Session of Stake Conference. While there my legs got to hurting and were so jumpy that I was about in tears before the meeting ended.
Sunday, November 06, 2005
I slept in until 6:30 AM but Mae got up at 6 AM. We went to Stake Conference in at the Ogden Tabernacle. This will probably be the last time we will come there for our Stake Conferences as next time we will use the satellite system to have General Authority’s messages. When we got home Mae and I had some lunch and then laid down for a nap. We had just got to sleep when Bob and Grant came down to visit. Bob had invited us to eat with them but we had invited Irven and Sandy to eat with us at 5 PM. I called Cheryl to see if she had got the information of all of her family’s birthdays and other important dates. She had not and asked me to call back in a couple more weeks. It was good to talk to her. Irven and Sandy came about 20 minutes after 5. We enjoyed the evening playing games and visiting. It was after midnight before we got to bed.
Monday, November 07, 2005
As we were late going to bed last night we slept in this morning. I woke thinking about the driveway we want to put in. I called and found that it is true that the concrete ready mixes are having trouble getting enough powdered concrete and so are short on what they can produce. I checked with the U-haul companies and they can supply what we will need. Bob and I went to the city about replacing the curb and they want administration cost and a bond for us to do the job. I thought about the way they are making us put the approach in and decided that I will not change the approach but will continue to drive over the curb. Mae went with me and we purchased some forming materials. We also stopped and ordered the carport covering. It cost us an extra $300 over what we could have bought it for a month ago. Like everything else the cost are going up. I hope we are right in putting in this driveway and carport. Mae and I went to the grocery store and then stopped and got some halibut and onion rings for supper. Mae needed some information about those that were in the picture taken after Scott was blessed. We went to my 1974 journals and were able to find the information. We watched the last of a Perry Mason movie and then watched a talk from the last General Conference. I filled in my journal entry for today before we went to bed. I sure enjoy being with Mae no matter what we do. She is sure special.
Tuesday, November 08, 2005
We slept in as I didn’t sleep very well last night. Bob and I started work on the new driveway. We spent quite a while digging up the telephone line. It was buried just below the grass no more than 2 to 3 inches. We removed the gates and fence and then rented a backhoe which we removed the one pine tree, pulled up the fence post and dug out several roots from the large cottonwood tree. It was 5 pm when we quite and was to be Home Teaching at 5:30 PM at the Mitchell’s. I had Mae go to Seagull Book and get me some pictures that I used for the H. T. message for the Mitchell’s children. It went quite well. We also went Home Teaching to the Johnston’s but didn’t stay long as they had a family birthday party to go to. Mae went over to the city building and voted this evening. I didn’t as I hadn’t registered. We watched a show on TV before going to bed. **** Chelci called to inform us that she and Steve became engaged and plan on getting married March 11th. That is exciting news and we look forward to being with them on that special occasion. **** I called Roy to check with them to see if it would be ok to come to their place December 5th through the 12th. Roy said it looked ok to him and they would be looking forward to us coming.
Wednesday, November 09, 2005
I didn’t sleep well last night as I woke worried about the pouring of the concrete for the driveway. I got out early and started working on the yard. Mae went up to Jennies at 9 AM and I was to be there by 10 AM but it was 10:20 before I made it. I returned the tractor and hoped they would give me a break on the cost, but they didn’t. Jennie feels that I am doing a lot better but she says that I have mould in several areas. She gave me a foot bath to help with the mould and several Homeopathic medications to help clear the mould out. While I was gone Bob cut the pine tree up. When I got back Bob and I loaded the pine tree into the truck and took it to the dumps. I work on the driveway for a while before quitting for the day. Mae got a talk copied for me so I could give it to our home teaching families. Bob and I went home teaching to the Jackson’s at 6 PM. Mae had supper ready when I got home. I then went to the weekly High Priest Group Leadership meeting. After that meeting Steve and I went visiting to the Thompson’s and the Gram’s. It was after 9 PM before I got home. Mae has been working on organizing our storage and was still doing it when I got home. I made my journal entry and then started taking my nightly medications.
Thursday, November 10, 2005
I got up before 6 and read my scriptures. Mae got up and prepared breakfast for me then I started work by going after the bob cat. We worked less that an hour and realized that it had a flat front tire. I called the rental co. to have them fix it. Mae registered the tent trailer and ran some errorns. She went to Georgia’s to visit her for a while today. Grant came over and helped Bob and I. That really helped and especially helped Bob so he didn’t work so hard. I returned the bobcat at 5:30 PM. I was going to go to Grant’s and install some crown molding but we decided to do it tomorrow afternoon at 3:30 PM. Mae had a nice dinner ready when I quite and came in. We watched a movie on TV and enjoyed necking for a while in front of the fireplace. Mae is sure special. We now have so many pills and drops to take before we go to bed that it takes about ½ hr just for that.
Friday, November 11, 2005
I didn’t sleep as good last night but still got up and got to work about 8 AM. Bob and I spent most of the day getting the sprinkler system repaired and ready. Bob stopped and prepared dinner for us. He went over to the Maverick just so he could get me a frozen yogurt for desert. At 3:30 PM Bob and I went over to Grants where I put up crown molding in their bedroom and bathroom. I did it to repay Grant for helping us yesterday. It was 8 PM when we got home. Mae prepared a light super for us this evening. I am sure tired tonight.
Saturday, November 12, 2005
Mae let me sleep in so I didn’t get started work until almost 9 AM. Bob and I worked most of the day getting the driveway leveled out and packed down. After using the shovels and digging down some of the high places I used Mark’s Rota tiller and Bob pulled his home made harrows behind his rider lawnmower. We ended up getting it leveled and packed pretty good. I decided that we will probably not pour the cement this Fall but will bring in some gravel and just let it settle through the winter. Maybe by spring we can get cement again and save a lot of work. The one area that we are concerned about is the carport we have ordered. Do we wait to have it put up or do we move it when we put the concrete down next spring. I will have to visit with the company about it. This evening Mae had invited Brother Wayne and Sister Claudia Thompson over to play games. We played Dominoes and Marbles. It was a fun evening. Mae had been busy all day with Relief Society but she had every thing ready for them to come.
Sunday, November 13, 2005
It is good to have Sundays that you can rest from the everyday chorus. We attended the regular block meetings. After getting home Mark and I consecrated some olive oil as I have lost my oil. Brother Peterson and I went to Brother Smoky Barns and gave him a blessing as he is feeling under the weather. Sister Barns is also having problems but she didn’t seem to feel that she wanted a blessing at this time. Bob and Carroll had a nice diner ready when I got back. Mae and I took a nap after dinner and then we went up to David and Shauna’s for dinner with them and to celebrate Emily’s Birthday. Shauna’s parents were also there. We stayed and visited for a while. We stopped at Scott’s and gave them some vitamin C and some grape juice. Scott has installed a new garage door opener and he didn’t have my help. I think he was a little proud that he had done it by himself. I know that Mishelle and Kylan were proud of him. We stayed and visited a while there so it was after 10 PM when we got home. I then entered my journal and we took our medicines so that took a while.
Monday, November 14, 2005
I slept in and so was late getting going. I felt depressed this morning so that didn’t help. It was very cold outside today. I ordered heavy gravel to be brought in for the driveway. When the truck delivered the gravel it sunk some of the pieces so there will have to be more sidewalk replaced. We had an insurance agent come and explain a Medicare Advantage plan through United Health Care. It looks like it is a much better plan than Medicare B and it come out of the Medicare B payment. We signed up for it. It was to cold to work outside so I started balancing our bank statement. I was until 9:30 PM working on it but finally got it balanced. I filed in my journal entry, took medication, played some games on the computer and went to bed.
Tuesday, November 15, 2005
We slept in this morning so I didn’t get started until after 9 AM. Bob and I broke out the section of sidewalk that was damaged more because of the truck that delivered the gravel.  When we returned we went to the rental and got a Bobcat to level the gravel. We removed the broken concrete and then returned the bobcat. When we got home Bob and Carroll had a nice chicken soup meal prepared for us. I took a short nap before going back to work. Bob and I then hauled the concrete to the dumps. We stopped on the way home and bought four bails of straw to cover the new cement when we get it laid tomorrow. It was late and I was tired but Mae said that David had called and would like us to tend the children while they participated in a volleyball game. At first I thought I would just stay home and let Mae go but I repented and went with her. Before going Mae gave me a hair cut. We enjoyed tending the children and they were very good for us. We visited with David and Shauna for a while after they returned. It was almost 11 PM when we got home. We soon got ready and went to bed.
Wednesday, November 16, 2005
I was up at 6 AM to get started on the concrete work. Bob & I formed the front sidewalk and a ramp for the lawn mower shed. We went to Ogden and got 1 ½ yards of concrete at the U-Haul. They have a mixing trailer so that the concrete does not separate while traveling. When we got home with it and tried to pull onto the gravel drive I got stuck. Bryce had come over to get the phone speaker that we used when we were preparing for our mission. He stayed and helped us get the concrete unloaded and that was a real life saver. We had just enough concrete for the pour that we had formed. We returned the trailer and stopped at Home depot on the way back home and bought some visqueen to cover the sidewalk with. We finished with the concrete and put the tools away about 6 PM. Mae had some dinner ready for us. I then took a shower and went to a High Priest Group Leadership meeting. Mae had her book club going when I returned so I went upstairs and watched a Hall Mark show. I am very stiff and sore from the work today. I made my journal entry then Mae gave me a good rubdown.
Thursday, November 17, 2005
We slept in this morning and then went to the temple. We really felt the spirit of the temple there in the chapel. Mae & I were asked to be witnesses for the session and that is always an enjoyable experience. After the session we ate lunch in the cafeteria. We stopped at the grocery store for a few items before coming on home. I ground some wheat into flour so Bob can make bread for us. He offered to do this. That sounded like a pretty good deal to us. I started preparing for going on our fishing trip tomorrow. I had trouble with getting the generator to run. Mae helped me a lot in preparing for the trip tomorrow. I set up the tent trailer and Mae helped me get things packed and ready. I talked with Mike a couple of times on the phone, also once with Jeff, and David also called. They are all excited about going. We all wish that Scott could have gone with us. I filled capsules with Mannatech products this evening. It got so late that I even had Mae help me with my journal. She typed while I told her what to say.
Friday, November 18, 2005
Mike came up and had breakfast with us. He and I packed the tent trailer and went into Ogden to Coscos to buy some items for Mae and to take with us. We left from there and went to Idaho Falls where we stopped at Sport’s Man Warehouse and bought our fishing licenses and Mike bought a new real. We got something to eat and then went to Swan Valley to the Palisade reservoir camp ground. We set up the tent trailer and then went fishing. I took a fall and broke my fishing rod but didn’t realize until later that I had also broken my reel. David and Jeff came later and we took them to the trailer and then we all went back fishing. I put my reel onto an extra poll that Mike had brought. That reel really didn’t work very well. David and Mike caught the most fish but we had a good time.
Saturday, November 19, 2005
It was after 1 AM before we went back to the camp. We got ready and went to bed but I didn’t sleep very well as I was very cold. I finally got up and slept in my recliner chair and slept much better. We slept quite late this morning. We enjoyed the day, we watched a movie that David had brought, flayed the fish we caught yesterday and played some games. We had trouble with the generator and I spent some time working on it. We got it running better but still had problems with it. We again went out fishing this evening and that is when I discovered that I had broken my reel. I tried Mike’s extra reel but it didn’t work so fishing wasn’t too good for me. The boys did quite well.
Sunday, November 20, 2005
It was still 1 AM before we returned to the camp. We had to clean the fish and we also had a cup of Postum to warm us up. It was after 2 AM before we got to bed. With us getting to bed so late we didn’t get up until after 9 AM. I still slept in the recliner with my feet near the heater.  It was still blowing when we got up so David suggested that we quickly pack up and go to Idaho Falls and eat breakfast at a restraint. It was very cold with the wind blowing but we hurried and got to Idaho Falls just after noon. We were glad to get home but then Mike had to drive on to Spanish Fork. Bob had brought me some dinner down that Mae warmed up for me. We watched a show on TV that was fair but it sure showed the ways of the world about premarital sex. I filled in my journal catching it up to date before we went to bed. It was good to take a shower and clean up this evening.
Monday, November 21, 2005
We were late getting up but then I flayed two fish and took them up to Bob. He cooked breakfast and we ate with them. I went into Ogden where I got gas and checked out a house for Richard Hinton. I now need to call him and try to find out what he wants me to do. When I got home I installed brake pads on Cherry’s car. Bob and I then removed the forms from the sidewalk and cleaned up the area. After putting those things away Bob helped me cover our tent trailer. I came in the house about 5 PM and Mae was about ready for Sandi to come for dinner. Mae had made corn beef patties and a birthday cake. She had also decorated the room for Sandi’s Birthday. Sandi didn’t get here until 5:45 PM due to traffic. We ate and then played games. After that we set and visited. It has been a really good evening. I was concerned for Sandi having to drive home and it was 10:30 PM before she left. I filled in my journal and we got ready for bed. We played some games on the computer before we turned it off.
Tuesday, November 22, 2005
I was quite discouraged this morning thinking of the house I looked at in Ogden. I called Richard Hinton and told him what I had found out or observed about the house. It is really a dead horse and will take quite a bit to restore it. I am not sure that it is worth it but he wants me to continue to pursue the project and give him a more complete breakdown on cost. I think that it was the thinking of that that discouraged me the most for the decisions that we have made may lead to us living in something like that. Mae and I went up to the church house where we will hold Thanksgiving dinner to check it out. I went over to Jeff and Gail’s to get my compressor, hoses and gun but the hoses & gun were not there. I had called Mrs. Stone and told her I would put the trim around the cabinet in the washroom so I had to buy a new hose. It took me more time to set up that it did to install the trim. Mrs. Stone paid me $30.00 for doing the job. It cost me $42.00 dollars for the new hose so I didn’t come out to well. I came home but Mae was out shopping and preparing for Thanksgiving so I warmed some lunch. I got on the internet trying to find out more about the RV shuttle program but didn’t find much. I went out this evening contacting the Home Teachers under my direction to have them invite there Families to the High Priest Group Christmas party. I didn’t catch all of them. At 7 PM I went with Brother Roger’s of the Bishopric visiting. We visited Sister Dolly Southard and Brother Erron Farr. We had a good visit in both homes. It was 9 PM when I got home. I polished my cow boy boots and then filled in my journal. Mae has been working on the Christmas cards and has some mailed and most ready to mail. She is also busy with Thanksgiving.
Wednesday, November 23, 2005
Mae got up about 7 AM but I slept another ½ hour. By the time we did our regular morning routine it was 9 AM before we ate breakfast. We met the Young Woman’s president, Heidi Basinger, at the chapel where we are to hold Thanksgiving dinner at 11:30 AM. She unlocked the closet and got the volleyball standards out for us. I went shopping for material to repair the door of the sunroom and looked at curio cabinets for Mae but they run $500 to $1,000 in the stores that I checked. This evening we got the dressing made & stuffed the turkey for tomorrow. Bob sold us an electric cabinet top oven for $30.00. He had bought them for his children but they didn’t want them. We will use it tomorrow. We watched the new version of the movie “Mighty Joe Young”. We played some games on the computer before going to bed. We went to bed a little earlier as we have to get up early to get the turkey on and get ready for Thanksgiving.
Thursday, November 24, 2005 Thanksgiving Day
I got up at 4:15 AM and got the turkey in to cook at 5 AM. I tried to go back to sleep but wasn’t able to. Mae got up at 7 AM and got busy getting ready for today. I started peeling potatoes and cooked breakfast. We were busy all morning and were up to the church early. We had all our family except Shellie’s family and Brad there and all the other families were well represented. Even Terry’s family was represented as Meliah, Weston and Makayla came later in the day. Troy is back in Alaska so we missed him. We had a wonderful dinner with all we could eat and more. After dinner we held a short meeting to discuss future reunions. Most of the older children became involved in a volleyball game. I am in quite a lot of pain today. I guess it is due to the fall I took last weekend while fishing. Bryce had me lay on the floor and he gave me a massage which helped some. Everyone pitched in and help clean up. We had a lot of food to put away when we got home. Mae has really been working hard today. We watched a movie on the Hall Mark channel before entering my journal and going to bed.
Friday, November 25, 2005
We were late getting up but had some things to take care of, then both Mae and I went for a treatment at Dr. Bennett’s. We went to the Temple. We debated as to whether we should go through a session or do initiatory ordnances but when we went into the Temple we were asked if we would do sealing. We really enjoyed the experience in the Temple today. We came home and decided to get the Christmas decorations out and spent the rest of the day getting the tree up and other Christmas decorations. At 9 PM we turned a TV show on and gave up for the day. We ended up watching three good shows before we went to bed about 1 AM.
Saturday, November 26, 2005
I got up at 4:30 AM to use the bathroom and I read my scriptures before going back to bed. We woke just before 8 AM. Mae prepared breakfast while I got ready to go. I went over to a home in the ward to help a single sister and her two boys move in. it was almost 1 PM before we finished and I got home. I worked on the entrance door to the sunroom getting it installed just before Grenn and Kathleen Clark came. Grenn and I drove over to Ogden to look at the home owned by Richard Hinton in Ogden. Grenn’s opinion is the same as mine that he should get what he can out of it and get out. I guess I will figure a price on replacing the windows, siding the outside, replacing the roofing and capsulation of the asbestos ceilings. Mae had a nice dinner ready when we got back home. After eating we played some games. It was 9 PM when they left. It was a fun evening being together. It snowed enough to lay on the ground this evening. I filled in my journal entry and we got ready for bed.
Sunday, November 27, 2005
I woke early and had to use the bathroom. I had a back ache so set in my recliner and slept the rest of the night. I had set the alarm last night but forgot to turn it on. I again woke and so I read my scriptures but didn’t think about the time, relying on the alarm. It was almost 8 AM when I woke Mae. We had to hurry to make it to church so didn’t have time to eat. Meetings went well and Sacrament meeting was especially enjoyable. Bob invited us for dinner. Brother Thompson and Brother Zweifel came to our place Home Teaching as we were not at home when they came last week. I took a short nap and then we went over to Jeff and Gail’s and ate with them. After eating Jeff wanted us to see how they had decorated their room. I realized something was up when the lights were already on but the door was closed until both Mae and I were together ready to go in. I noised that there was a picture of a baby on the shelf, baby close on the bed and both Jeff and Gail were all smiles. Mae just went right to the tree they had decorated in their room and begin to admire it. It took her a few minutes that the decorations in the room was trying to announce something. Gail is pregnant and will have a baby in June. We all got excited at that news and enjoyed the time that it took for Mae to realize the announcement. We played a card game for a while. It was almost 9 PM when we got home and started getting ready to go to bed. I had to make this journal entry.
Monday, November 28, 2005
I got up at 3 AM and left with Bob & Mark for St. George at 4 AM. We tried to find a station in Salt Lake where we could get natural gas but was unable. We went on to Fillmore where we filled with natural gas. We also bought a frozen yogurt from the station across the road. We got to St. George by 9 AM and rented a large U Haul truck. We were until 5 PM loading the truck. I ended up doing most of the packing as Mark still has his cast on his one arm and Bob is not able to work very hard. When we left I told Bob that we would stop for gas and natural gas. Some how Bob lost us and we spent a lot of time waiting and trying to find each other. Mark and I finally left for home. I called Mae to let her know that we had lost Bob so that if he called she could let us know. By the time we got to Cedar City Mae called to let us know that Bob was still in St. George. I tried to call him but he let for home. We got something to eat in Cedar and then drove straight home with one stop in Payson to use the restroom and stretch our legs. We got home 11:30 PM and I was very beat. I showered and we went to bed. Mae has been busy decorating, sewing, and doing house work. She waited up for me to get home.
Tuesday, November 29, 2005
I didn’t get up until almost 9 AM. Mae had visiting teachers at 9:30 but after she left she prepared breakfast for me. Mark found a storage shed he could rent, so we took the truck over and unloaded it. Again I ended up doing most of the work. When we got home Bob had me install a furnace thermostat. After I got it installed he didn’t want that type so I removed it. I showered and cleaned up as Mae and I had an appointment to attend tithing settlement. When I got back Bob had a new thermostat so I installed it. It was after 9 Pm when I came downstairs. I entered my journal entry and then got ready and went to bed. We played a couple of games on the computer before going to bed.
Wednesday, November 30, 2005
I decided to work on the fireplace and found that a lot of heat is going up the chimney. Bob and I went looking for a better fireplace but they are quite expensive. We also stopped and took some measurements of Richard Hinton’s house in Ogden. We stopped at Home Depot and got some sheetrock, I also bought Mae a Poinsettia for Christmas. By the time we returned home it was getting late so Mae helped make some phone calls for me. We met as a High Priest Group leadership and went over plans for the social this next Saturday. Mae was watching a show on TV when I returned home so I watched the ending of it with her. I entered my journal before we went to bed. I am not feeling the best tonight.


RESEARCH DESIGN: Qualitative, Quantitative, and mixed
methods approaches
Authors
JOHN W. CRESWELL
Year
Notes
A complete PDF of a book indicating approaches to research design.
Tags
Relevance
Quotations
Boundary Objects
Concepts
Field of Study
Methodology
References


Landing Page
Special Projects
This story is part of a series of specially designed stories that represents some of the best journalism The Post has to offer. Check out the rest of the special projects here.
8/23/2018
The scene at R. Basil Rutter Field was somber as the final seconds ticked off the clock in Athens’ final game of the regular season last year.
In a 52-26 loss to rival Nelsonville-York, the 8-2 Bulldogs’ season ended with no state playoff berth and no Tri-Valley Conference Ohio division title. Bizzare, one would think, that a team with a record of 8-2 couldn’t clinch at least a lower seed in the state playoffs.
Welcome to the harsh reality of Ohio high school football.
The Ohio High School Athletic Association football computer rankings system is based off a mathematical formula that involves first- and second-level points.
Losses aren’t taken into consideration when calculating a team’s final point average at the end of the regular season. Instead, wins are taken into full consideration, but the “quality of a win” is based on what an opponent’s enrollment numbers are. It’s not fully based on what the product is on the field. It’s complicated, to say the least.
In summary, if a team isn't winning or is only winning against smaller schools, that can be detrimental for the team in the long run — especially if the team is a larger school.
Matt Starkeyc | FOR THE POST
Mikel Casteel (40) sings the fight song with the rest of his team after the Bulldogs' game against Alexander on Sept. 15, 2017. (FILE)
The system makes it easy for a team to finish with an 8-2 or 9-1 record and still miss the playoffs. It comes down to scheduling, and that’s where Athens’ problems have lied the past couple of seasons.
Athens is entering its third year in Division III, Region 11. Athens has had winning seasons for the past three years, but it has failed to qualify for the postseason each of those years.
The Bulldogs went 7-3 in 2016 and finished ninth in the playoff rankings. Despite their 8-2 record last year, the Bulldogs finished even lower at 12th in the playoff rankings, not even coming close to earning an outright bid.
So what’s ruining the Bulldogs’ postseason chances? Two things play a huge part, and they both originate from scheduling issues.
The Bulldogs only played two teams each in 2016 and 2017 that finished those seasons with winning records. In 2016, they played four teams that finished the year with three wins or less; last year, that number increased to five.
The other factor not helping the Bulldogs’ chances are the size of the schools they’re playing. In 2016, only three of their seven wins were against Division III or larger schools. Last season was the same story: only picked three wins against schools in Division III or larger.
Of the six other schools in the Tri-Valley Conference Ohio division, two are in Division IV, three are in Division V and one is in Division VI. Athens is the largest school in the conference, but it has to schedule these six schools each season in order to maintain its conference affiliation.
There are two changes to the Athens non-conference schedule this season. Instead of playing Canal Winchester and Watkins Memorial (two Division II schools), Athens will face off with Parkersburg South from West Virginia and Division IV Fairland.
The Bulldogs have a lavish mix of talent returning and are once again expected to compete for a playoff spot this season. But with their schedule, the Bulldogs will have another difficult task racking up enough points for a postseason bid — even if they win seven or more games.
Things change in Ohio year to year. It’s hard to tell whether scheduling will be a major component going forward for the Bulldogs. It ultimately depends on the depth of a region, so it can be out of the team’s control at times. If the Bulldogs continue to go 8-2 and 9-1 without making the playoffs, though, it might become time to make some scheduling changes.
Landing Page
This story is part of a series of specially designed stories that represents some of the best journalism The Post has to offer. Check out the rest of the special projects here.


To help you decide what option to select consider:
- Is this barrier resolvable through current available resources?
- How much existing resources will be needed to solve this barrier?
- Are more resources required to resolve this barrier over time?
- Does including this barrier in your work programme require reprioritising existing resources?
- Are there resources outside of government that can be used to resolve the barrier, such as trade associations, political connections of UK businesses to regulators or in-country government?
- To what extent resolving this barrier will be dependent on ministerial engagements?


Tic-Tac-Toe Game
Objectives and Rules
- The first player to get 3 of their symbols in a row, vertically, horizontally, or diagonally will win!
- If the board is full and there are no lines of 3 identical symbols, there are no winners.
- A player can click on an empty square only once and cannot change their symbol placement.
Play Tic Tac Toe .... now!


Singapore: Blockshow Asia Top 5 Takeaways on Blockchain & Crypto
by JD AloisRecently, Blockshow Asia took place in Singapore. While Crowdfund Insider was not able to attend this year’s event, organizers have forward some of the top takeaway items for this year and the following year.
Below is a selection of commentary generated by speakers at the event which (obviously) focused on blockchain/DLT and crypto industry events.
See below.
#1 China’s Digital Currency or Central Bank Digital Currency (CBDC)
China wants to be the first country to launch a digitized domestic currency.
“The Chinese government wants to push renminbi’s influence globally. They want the renminbi to be competitive with the US dollar. In order to do that they really need to push this currency to have more freedom.”
Zhao Changpeng, CEO of Binance
He expects the system to be a blockchain-based version of the renminbi that will help expand the currency’s economic influence.
#2 A Trustless Digital World
“I hope to build a better world for our new generation, but what is [the] new generation? It’s blockchain.”
Sopnendu Mohanty, Chief Fintech Officer at the Monetary Authority of Singapore
He addressed the future of the digital world. It will be faceless, presence-less, and paperless, and counterintuitive of this world is that it is trustless. The only way to build trust is through blockchain.
#3 On the State of the Decentralized Web
“These standards should be transparent and decentralized. Data ownership should be given back to the users.”
Da Hongfei, the founder of smart contract-supporting blockchain platform NEO
The NEO founder highlighted the problems deriving from monopoly, centralization abuse and single points of failure, proposing decentralization as the solution.
#4 Blockchain and Artificial Intelligence
A presentation titled “Stimulating Massive Network Effects in Decentralised AI Networks” and the merging of blockchain and AI.
“By definition, a blockchain is a distributed, decentralised, immutable ledger used to store encrypted data. On the other hand, AI is the engine or the ‘brain’ that will enable analytics and decision making from the data collected. But both AI and blockchain are in situations where they can benefit from each other and help one another.”
Ben Goertzel, SingularityNet’s CEO
#5 Bitcoin Predictions for 2020
36K or 3.6K? Boom or bust?
“Bitcoin likely to see new all-time highs in 2020. There are many Bitcoin bullish analysts that believe that the digital currency will be experiencing a price increase in 2020 as well.”
Thomas Lee, Managing Partner and Head of Research at Fundstrat Global Advisors and Bitcoin bull


-
DddmpClearVisited()
- Marks a node as not visited
-
DddmpNumberDdNodes()
- Removes nodes from unique table and number them
-
DddmpReadCode()
- Reads a 1 byte node code
-
DddmpReadInt()
- Reads a "packed integer"
-
DddmpReadNodeIndex()
- Reads the index of a node
-
DddmpSetVisited()
- Marks a node as visited
-
DddmpUnnumberDdNodes()
- Restores nodes in unique table, loosing numbering
-
DddmpVisited()
- Returns true if node is visited
-
DddmpWriteCode()
- Writes 1 byte node code
-
DddmpWriteInt()
- Writes a "packed integer"
-
DddmpWriteNodeIndex()
- Write index to node
-
Dddmp_Bin2Text()
- Converts from binary to ASCII format
-
Dddmp_Text2Bin()
- Converts from ASCII to binary format
-
Dddmp_cuddBddArrayLoad()
- Reads a dump file representing the argument BDDs.
-
Dddmp_cuddBddArrayStore()
- Writes a dump file representing the argument Array of BDDs.
-
Dddmp_cuddBddDisplayBinary()
- Display a binary dump file in a text file
-
Dddmp_cuddBddLoad()
- Reads a dump file representing the argument BDD.
-
Dddmp_cuddBddStore()
- Writes a dump file representing the argument BDD.
-
FindVarname()
- Performs binary search of a name within a sorted array
-
NumberNodeRecur()
- Number nodes recursively in post-order
-
QsortStrcmp()
- String compare for qsort
-
ReadByteBinary()
- Reads a byte from file with escaped , and
-
RemoveFromUniqueRecur()
- Removes a node from unique table
-
RestoreInUniqueRecur()
- Restores a node in unique table
-
StoreNodeRecur()
- Performs the recursive step of Dddmp_bddStore.
-
WriteByteBinary()
- Writes a byte to file filtering , and
Last updated on 1031104 18h39


Links
ryan-bradford.comgithub.com/ryan-bradford
linkedin.com/in/ryan-p-bradford
Ryan Bradford
San Francisco, CA781.816.3825
<EMAIL_ADDRESS>Code Links
VMware GitHubEpidemik GitHub
Experiences
Member of the Technical Staff III
Jan. 2021 - Pres.
VMware - Cloud Director Service San Francisco, CA- Implemented a user interface using a TypeScript Angular front-end and Java Spring APIs that reduced the time to connect a datacenter to the VMware platform by 80%
- Served as the team's build-czar, using Jenkins, Cypress, TestNg, Logz.io, Wavefront to identify critical failures, resulting in a reduction in production incidents and improved test reliability
- Used Terraform to deploy an application image to AWS Cloudfront for customer to install that will connect to our Helm managed Kubernetes server, ensuring a secure and up-to-date product
- Designed a system using Java Netty to spread long-lived connections across multiple Kubernetes pods, resulting in 1% less downtime by reducing single points of failure
- Mentored three team interns, enabling them to become productive team members and future employees
- Authored a VMware Multi-Cloud Tech Day paper, which won first place in the security group
- Created two patents, filed by VMware, related to innovations derived from our product
- Modernized how users configure their VMs by creating a Java Spring Shell configuration command line interface
UI Engineer
Jan. 2020 - Jan. 2021.
VMware Boston, MA- Contributed to an open source TypeScript Angular project to help increase developer productivity
- Developed a TypeScript Angular quick search feature to allow users to navigate around our application
- Converted our application to use CSS variables to allow for users to easily theme the webpage
- Worked to make our TypeScript Angular application fully Level AA Accessibility compliant
Software Engineering Co-Op
Jan. 2019 - June 2019
Jobcase Cambridge, MA- Implemented a Java Spring API and Hibernate managed PostgreSQL database to manage ~600 cron jobs
- Spearheaded the update of all three internal TypeScript Angular consoles to Angular 8
- Created a Scala domain specific language compiler that produces entity relationship diagrams
Research Assistant
Mar. 2018 - Jan. 2019
ReGame VR Lab Boston, MA- Worked with a team developing a wearable monitor to track pediatric patients in outpatient therapy
- Built a Node.js, Express.js API and a MySQL database to store patient information in a secure way
- Architected a React Native application for both patients and therapists to view progress
Education
Northeastern University
Sept. 2017 - Dec. 2020
Khoury College of Computer Sciences | Honors College Member Boston, MABachelor of Science in Computer Science & Economics | GPA: 3.97/4.0
Projects
Co-founder and Product Developer
Sept. 2017 - Jan. 2019
Epidemik - A crowd-sourced disease data collection service Boston, MA- Won 1st place in the Northeastern University Startup Challenge competing against 9 other startups
- Designed a API using Node.js, Express.js, MySQL that gave warnings about growing infectious trends for diseases
- Integrated with Google Maps using JavaScript to display the disease trends
- Built and published a Swift iOS Application to allow users to access our API easily
This résumé was wholly typeset with HTML/CSS — see
https://git.io/fAIUU
Technologies
- Backend: Java, Spring, Hibernate, TypeScript, Express.js, Scala, SQL
- Frontend: Angular, TypeScript, Swift, React, React Native, HTML, CSS
- Dev OPs: Kubernetes, Helm, Docker, Jenkins, Terraform, Linux, Bash


Leave EVERYTHING up to the browser and S3.
Fine Uploader can handle the S3 request signing for you. Just provide temporary credentials for your locked-down IAM user and pass them off to Fine Uploader S3. You can do this all client-side, easily and securely, using Google, Facebook, or Amazon as an identity provider, and the AWS JavaScript SDK. Need more details? Read the blog post that covers step-by-step setup for this workflow.
This demo uses only client-side code to authenticate and upload files to S3. We have not written any server-side code at all. In fact, the entire example is hosted in an S3 bucket. Try it out by choosing one of the identity providers to the right.
Note: If you simply want to avoid the signature HTTP requests for each file/chunk, and need to support legacy browsers, you can do that too, but some server-side code will be required to utilize the AWS temporary credentials calls. See the client-side signing feature page in the documentation for more details.


menu
Chat
search
refresh
more_vert
textsms
Message
发送
face
总人数
0
Seems your browser doesn't support Javascript! Websocket relies on Javascript being enabled. Please enable Javascript and reload this page!


|
|
Here is your deal from {$emailHeaderCaption}
|
Thank you for being our fan! Here is the link to the deal you claimed earlier.
Please make sure that your printer is turned on, connected to your device, has paper and is ready to print before you click the link.
Click Here To Print Your Deal.
|
|
|
|


These tracks were generated by the ENCODE Consortium. They contain information about human RNAs greater than 200 nucleotides in length that were obtained as short reads from the Illumina GAIIx platform. Data are available from biological replicates of several cell lines. In addition to profiling Poly-A+ and Poly-A- RNA from whole cells, there are also data from various subcellular compartments. In many cases, there are Cap Analysis of Gene Expression (CAGE, see the RIKEN CAGE Loc track), Small RNA-seq (less than 200 nucleotides, see the CSHL Sm RNA-seq track) and Pair-End di-TAG-RNA (PET-RNA, see the GIS RNA PET track) datasets available from the same biological replicates.
This track is a multi-view composite track that contains multiple data types (views). For each view, there are multiple subtracks that display individually on the browser. Instructions for configuring multi-view tracks are here.
To show only selected subtracks, uncheck the boxes next to the tracks that you wish to hide.
Color differences among the views are arbitrary. They provide a visual cue for distinguishing between the different cell types and compartments.
Metadata for a particular subtrack can be found by clicking the down arrow in the list of subtracks.
Additional views are available on the downloads page.
Cells were grown according to the approved ENCODE cell culture protocols.
The published cDNA sequencing protocol was used. This protocol generates directional libraries and reports the transcripts' strand of origin. Exogenous RNA spike-ins were added to each endogenous RNA isolate and carried through library construction and sequencing. The Illumina PhiX control library was also spiked-in at 1% to each completed human library just prior to cluster formation. Accompanying each RNA-seq dataset is a Protocol document available for download as a PDF. This document contains details about the RNA isolations and treatments, library construction, spike-ins as well as quality control figures for individual libraries. The spike-in sequence and the concentrations are available for download in the supplemental directory.
The libraries were sequenced on the Illumina GAIIx platform as paired-ends for 76 or 101 cycles for each read. The average depth of sequencing was ~200 million reads (100 million paired-ends). The data were mapped against hg19 using Spliced Transcript Alignment and Reconstruction (STAR) written by Alex Dobin (CSHL). More information about STAR, including the parameters used for these data, is available from the Gingeras lab.
For each experiment there are additional element data views data files available for download. These elements were assessed for reproducibility using a nonparametric irreproducible detection (IDR) rate script. The IDR values for each element are included in the files for end-users to use as a threshold. An IDR value of 0.1 means that the probability of detecting that element in a third experiment equivalent in depth to the sum of the bioreplicates is 90%. In addition, expression values for annotated genes, transcripts and exons were computed. Further explanation of these files is available for download in the supplemental directory.
FPKM (fragments per kilobase of exon per million fragments mapped) values were calculated for annotated Gencode exons and Spearman values were compared. In general, Rho values are greater than .90 between biological replicates.
This is release 3 (Sept 2012) of this track for hg19. It has no new experiments, but has additional files for many experiments. The hMNC-CB experiment has been revoked. The doubly compressed spike-ins files have been uncompressed. The hMNC-PB experiment has been replaced with improved depth. The current downloadable elements files (Transcripts, Genes and Exons) were generated using GENCODE V10, while the older datasets were generated using GENCODE V7. The "view" metadata will specify V7 or V10 for these files.
These data were generated and analyzed by the transcriptome group led by Tom Gingeras at Cold Spring Harbor Laboratories and the laboratory of Roderic Guigo at the Center for Genomic Regulation (CRG) in Barcelona.
Contact: Carrie DavisParkhomchuk D, Borodina T, Amstislavskiy V, Banaru M, Hallen L, Krobitsch S, Lehrach H, Soldatov A. Transcriptome analysis by strand-specific sequencing of complementary DNA. Nucleic Acids Res. 2009 Oct;37(18):e123.
Cheng C, Alexander R, Min R, Leng J, Yip KY, Rozowsky J, Yan KK, Dong X, Djebali S, Ruan Y et al. Understanding transcriptional regulation by integrative analysis of transcription factor binding data. Genome Res. 2012 Sep;22(9):1658-67.
Deng X, Hiatt JB, Nguyen DK, Ercan S, Sturgill D, Hillier LW, Schlesinger F, Davis CA, Reinke VJ, Gingeras TR et al. Evidence for compensatory upregulation of expressed X-linked genes in mammals, Caenorhabditis elegans and Drosophila melanogaster. Nat Genet. 2011 Oct 23;43(12):1179-85.
Derrien T, Johnson R, Bussotti G, Tanzer A, Djebali S, Tilgner H, Guernec G, Martin D, Merkel A, Knowles DG et al. The GENCODE v7 catalog of human long noncoding RNAs: Analysis of their gene structure, evolution, and expression. Genome Res. 2012 Sep;22(9):1775-89.
Dong X, Greven MC, Kundaje A, Djebali S, Brown JB, Cheng C, Gingeras TR, Gerstein M, Guigó R, Birney E et al. Modeling gene expression using chromatin features in various cellular contexts. Genome Biol. 2012 Sep 5;13(9):R53.
ENCODE Project Consortium, Bernstein BE, Birney E, Dunham I, Green ED, Gunter C, Snyder M. An integrated encyclopedia of DNA elements in the human genome. Nature. 2012 Sep 6;489(7414):57-74.
Jiang L, Schlesinger F, Davis CA, Zhang Y, Li R, Salit M, Gingeras TR, Oliver B. Synthetic spike-in standards for RNA-seq experiments. Genome Res. 2011 Sep;21(9):1543-51.
Data users may freely use ENCODE data, but may not, without prior consent, submit publications that use an unpublished ENCODE dataset until nine months following the release of the dataset. This date is listed in the Restricted Until column, above. The full data release policy for ENCODE is available here.


cvpr cvpr2013 cvpr2013-105 cvpr2013-105-reference knowledge-graph by maker-knowledge-mining
Source: pdf
Author: Fei Chen, Huimin Yu, Roland Hu, Xunxun Zeng
Abstract: In this paper we introduce a new shape-driven approach for object segmentation. Given a training set of shapes, we first use deep Boltzmann machine to learn the hierarchical architecture of shape priors. This learned hierarchical architecture is then used to model shape variations of global and local structures in an energetic form. Finally, it is applied to data-driven variational methods to perform object extraction of corrupted data based on shape probabilistic representation. Experiments demonstrate that our model can be applied to dataset of arbitrary prior shapes, and can cope with image noise and clutter, as well as partial occlusions.