Beta9
Bug Fixes
- Fixed jQuery provider. #2547
- Adds options for theme to fix #2522. Big thanks to @matholum.
- Fixed date view next/back button disabling when it shouldn't. #2595
- Fixed component disabling issue #2502
- Changed default useTwentyfourHour to undefined. Now using DateTime.parts() to check if the view date has a "dayPeriod" property #2510
- Fixed 24-hour 24/0 formatting
#2563
- Fixed none latin number selection in the minute picker
#2576
- Fixed input value to view date object reference
#2568
New
- Add fr locale via #2581
- Updated and published NuGet package.
Breaking changes
- Renamed /src/sass to /src/scss to more accurately reflect code.
Beta8
Bug Fixes
- Fixed view mode. #2583
- Fixed and simplified options merging #2578
Beta7
Bug Fixes
- Fixed options mutable. #2487
- Fixed element toggle when input is disabled #2495
- Fixed jQuery no conflict #2506
- Fixed options update #2549
New
- Added a new example for setting and getting dates.
Beta6
Bug Fixes
- viewMode is optional #2550
New
- Introduced a simple overridable function parseInput #2552
6-beta5
Bug Fixes
- Fixed clear() doesn't erase text of date. #2472
- Fixed clear button event cycle. #2516
- Fixed 2 digit formatting. #2513
- Trigger native change event on input when available - fixes #2401 via #2533
- Fixes use of SVG icons (issue #2527) via #2529
Version 6-beta4
New
- Dark mode! The picker now has dark mode when the user's preference is dark.
- Wrote a tiny service locator/di container in an effort to make plugins better
- Added a momentjs plugin
- Added DE, ES, IT, NL, RO locales thanks to @jcompagner via #2484.
toggleMeridiem
supports a comma separated list. #2399.
-
All event types now provide
viewMode
which provides
'clock' | 'calendar' | 'months' | 'years' | 'decades' depending what view
the event occurred.
#2428.
Breaking changes
- Plugins work a little differently now. Hopefully they are a bit cleaner to work with now
- Hooks have been removed. Plugins are a better way to handle this. You can look at the momentjs plugin for a
guide.
- Locale loading and authoring has changed a bit as well.
ViewUpdateEvent
no longer provides change: Unit
.
Bug fixes
- Fixed event 'hide.td' not triggered when input is empty. #2424.
- Fixed input change event trigger. #2401.
- Fixed dataset deletion issue. #2483.
- Fixed month manipulation issue #2474. 2486.
- Fixed Wrong calendar rendering when startOfTheWeek #2473.
- Fixed viewMode option not respected (#2466) thanks @jmolinap via #2494.
Version 6-beta3
New
- Allow to change parent container for the widget via #2462.
- Moved docs to gh-pages and set up a GitHub action to move compiled docs to that branch.
Bug fixes
- Issue with time picker only & fixing range example via #2463.
- Fixed issue with reading the data- attributes. #2430
- Fixed start of the week option having the incorrect heading. #2443
Version 6-alpha17
Bug fixes
- Fixed issue with calendar weeks. #2441
Version 6-alpha16
New
- Started building html migration tool
Bug fixes
- Fixed issue with daysOfWeekDisabled. #2419
- Fixed issue with reading the data- attributes. #2430
- Fixed start of the week option having the incorrect heading. #2443
Version 6-alpha15
New
- Added
localization.startOfTheWeek
. This allows setting the start of the week.
- Added
numberingSystem
to DateTimeFormatOptions
- Added
meta
property to options.
Bug fixes
- Fixed issue with 24 hour display formatting. #2414
- Fixed default input change formatting function to check for empty dates. #2411
- Fixed an issue with the unsubscribe method typing. #2411
- Fixed an issue where the picker would try to update the clock view even it wasn't enabled. #2438
- Fixed an issue using a time component would not go back to the clock view. #2431
- The picker will return to the view date and show the calendar or clock after being reopened. #2410
- Fixed clock/calendar switching to wait until the other view is ready before switching. #2421
- Fixed the options interface so all properties are optionsal. #2439
- BREAKING
localization.dayViewHeaderFormat
no longer takes a
string but instead accepts a DateTimeFormatOptions
. This will allow for more customization. #2420
Version 6-alpha14
New
- Cleaned up css a bit. Got rid of the popper arrow and aligned the picker to the start of the element.
- BREAKING
display.inputFormat
now takes a function, not an
Intl format. It has also been moved to hooks.inputFormat
By default a function will be executed
that uses Intl to format the selected date(s) based on the selected components.
- Added
hooks.inputParse
- Merged number localization Thanks @hkvstore #2408
Bug fixes
- Merged a fix for parsing issue from comparing constructor names. Thanks @faatihi #2408
- Fixed doc issue
- Fixed input value for real this time. #2387
- Fixed
keepOpen
- Fixed widget positioning with rtl #2400
Version 6-alpha1.0.13
New
- Created a new method
set(value: any, index?: number, from: string = 'date.set')
that tries to
conver the value
provided and then tries to set that value to the index
(or 0 if not
using multidate).
- Added esm output
- Exposed
Unit
and DateTimeFormatOptions
from the DateTime class.
- Renamed
togglePeriod
to toggleMeridiem
- Added
toggleMeridiem
class to AM/PM button
- Cleaned up css a bit. Got rid of the popper arrow and aligned the picker to the start of the element.
Bug fixes
- Fixed dealing with input values/changes.
- Fixed issue when calling hide if the widget hasn't been built (or shown) yet.
- Fixed meridiem issue. Thanks @hkvstore #2398
- Merged PR 2396 to fix 24 hour hour selection. #2395
- Fixed issue with time component grid. #2395
Version 6-alpha1.0.4
Bug fixes
- Fixed issue with meridiem (AM/PM) button clicks.
Version 6-alpha1.0.3
Bug fixes
- Fixed year display after selecting a decade. #2386
- Fixed issue if the input field had a value. #2387
- Fixed setting the defaultDate option with a Date object. #2391
Version 6-alpha1
General
- picker returns a
DateTime
which is an extended javascript Date
object.
- picker no longer uses jQuery, momentjs, or bootstrap
- events now have interfaces
Configuration
- renamed
tooltip
to localization
- renamed
tooltip.prevMonth
to localization.previousMonth
- renamed
tooltip.prevYear
to localization.previousYear
- renamed
tooltip.prevDecade
to localization.previousDecade
- renamed
tooltip.prevCentury
to localization.previousCentury
- moved
dayViewHeaderFormat
to localization.dayViewHeaderFormat
dayViewHeaderFormat
now takes a javascript intl
month option, e.g.
long
(default)
- moved
locale
to localization
- removed
useStrict
- removed
timeZone
- removed
format
- added
display.inputFormat
that takes DateTimeFormatOptions
;
- removed
collapse
- removed
extraFormats
- removed
widgetParent
- removed
widgetPositioning
- changed
viewMode
from 'times' | 'days'
to 'clock' |
'calendar'
- renamed
allowMultidate
and multidateSeparator
to multipleDates
and
multipleDatesSeparator
- moved the following to
restrictions
- minDate
- maxDate
- disabledDates
- enabledDates
- daysOfWeekDisabled
- disabledHours
- enabledHours
- readonly
- disabledTimeIntervals
- moved the following to
display
- sideBySide
- calendarWeeks
- viewMode
- toolbarPlacement
- buttons
- widgetPositioning
- icons
- inline
- keepOpen
- disabledTimeIntervals is now an array of
{ from: DateTime, to: DateTime }
- removed check for
dateOptions
on the element data set. jQuery hid allowing an object by looping
through the properties
- removed
keybindings
- this might come back later
- removed
readonly<
- removed
ignoreReadonly<
- removed
focusOnShow<
Styles
Tip: All new css values are in Namespace.Css.*
in the consts.ts
file
- renamed
bootstrap-datetimepicker-widget
to tempus-dominus-widget
- renamed
tempusDominus-bootstrap-datetimepicker-widget-with-calendar-weeks
to tempus-dominus-with-calendar-weeks
(
v5)
- removed
.input-group [data-toggle="datetimepicker"]
setting the cursor type to
pointer.
Date
- renamed
datepicker
to date-container
- renamed
datepicker-decades
to date-container-decades
- renamed
datepicker-years
to date-container-years
- renamed
datepicker-months
to date-container-months
- renamed
datepicker-days
to date-container-days
- renamed
prev
to previous
- renamed
data-day
to data-value
to be consistent with other views
Time
- renamed
usetwentyfour
to useTwentyfour
- renamed
timepicker
to time-container
- renamed
timepicker-hour
to time-container-hour
- renamed
timepicker-minute
to time-container-minute
- renamed
timepicker-second
to time-container-second
Saas
Saas file is now called tempus-dominus.scss
. The "build" file has been deleted as it's
no longer required.
Events
- changed
isInvalid
to isValid
and flipped the boolean (v5)
- changed event now emits
undefined
instead of false when the date is being cleared
- changed plugin.name from
datetimepicker
to tempus-dominus
- changed root data namespace from
datetimepicker
to td
Version 5
Version 5 was a rewrite of v4 taking some pending pull requests and fixes along with it. Unfortunately, I didn't
do a very good job at documenting those changes.
Version 4
The chang log from v2-v4 can be read here.
Change Log Archive
07/20/2021
07/20/2021
An archive of changes between different version of tempus dominus.
datepicker, javascript, open source, tempus dominus, eonasdan


Tell me, has this ever happened to you? You were searching on the internet and not getting get paid in crypto to search? That’s terrible! Think of the children! This is a crisis some thoughtful programmer needs to fix.
@taskmaster4450 wrote an article I saw this morning saying Steem needs a browser. Here’s the article.
https://steempeak.com/busy/@taskmaster4450/what-steem-really-needs-a-browser
A browser?
I’ve had the idea in the back of my head for a little bit that what Steem needs is a Search Engine powered by Steem. My brain child is likely a little easier of a project than a full browser and it works well with some aspects of blockchain. Take an opensource search engine and slap in some steem-engine tokens as a reward for using it on the Steem platform.
What’s good?
Well, the major media companies modify search results all the time. I see the view counter changing on my own videos and others frequently. There’s other problems too especially with how they like to silence conservative voices. They change search results. Having all of this on a blockchain means that we don’t have to trust CIA backed projects to tell us what other people are searching for.
If all the data of what you’re searching for is on a blockchain than you can review that data and see what people are actually searching for. Combine that with a token distribution plan where people who search get tokens for doing it and now you can start to incentivize people to use your search engine.
What’s bad?
 So, this thing would be great for looking up things on the internet excluding sex, which means it’s good for like 3% of internet traffic. Maybe you could get some searches to stay anonymous and the app could search on a users behalf, but then the app awards the token to itself instead of the user.
Free idea for an inspired coder
The project doesn’t seem that daunting to me.
Step 1. Open Source Search Engine
Step 2. Keychain integration
Step 2a. Steem Engine Token creation
Step 3. User searches, app or user posts the search as a custom json
Step 4. App sends them tokens for searching
Phase 2. Use the token for marketing/ad purchases on the site to give it value
A good dev could probably whip this up in a week or so as a very early alpha.
This page is synchronized from the post: ‘Re: Taskmaster: Steem could use a search engine’


Welcome! This is my online resume website. I currently am a Software Engineer II, former product manager.
Software Engineer II at www.gopuff.com. Promoted from Software Engineer in March of 2022. JavaScript engineer focused on Vue, React Native, and backend microservices supporting Gopuff's Loyalty program. Developed React Native UI features including banners, pages, custom hooks, popups, Graphql and microservice API development. Engineering Project Lead: Loyalty Reenrollment, Loyalty Benefits Onboarding, Loyalty Cancellation Survey.
Software Engineer at www.distiller.com. Wrote website features in Ruby on Rails, RSpec, JavaScript, TypeScript and Angular, including API work, Postgres database updates, bug fixes, spike story research, and Elasticsearch in an Agile environment. Distiller for Business MVP project lead.
Created and manages www.headworksbrewing.com, a brewery website based in Enumclaw, WA, with over 1100 unique visitors per month.
Product Manager for the AT&T Device Help App and www.att.com/devicehowto. Launched over 103 device tutorial sets: Apple, Samsung, LG, Huawei, Kyocera, and others, with a 98% deadline completion rate. Team analyst for website and mobile app traffic.
Department CMS (Content Management System) SME, department Tiger Team member. Implemented 130+ website builds: Lexus, INFINITI, Cadillac, GMC, Chevrolet, Ford, MINI, Buick, Nissan, Hyundai, Volkswagen, and Dealer Groups.
Created Ecommerce business and website, oversaw sales totaling over $2.4 million, gained 120+ new clients, created ad campaign that increased monthly recyclables 305%.
Languages, tools, frameworks and etc that I have used professionally.
This is a full stack, 43 hour, extensive and completed Udemy course. It features 3 styled layouts, a video background, login/logout functionality with user sessions, a fully functional blog with CRUD operations and real time blog commenting with Actioncable and Websockets.
Ruby on Rails, JavaScript, JQuery, Bootstrap 4, HTML5, Postgres
GithubSorts and displays only complete json data by List ID, and then by Item ID. Incoming JSON data is incomplete and unsorted. Also includes a Search By ID feature.
React, React Bootstrap, Heroku
Github Live ProjectA note taking app built on React for taking meeting notes and action items. It's connected to my own Rails API and PostgreSQL database. I've deployed both the React app and Rails API on Heroku.
React, Material-UI, Rails API, Postgres, Heroku
React Github API Github Live ProjectA simple mobile optimized web app I built for my friends bachelor party! In it, teams simply log in and complete a challenge when they finish one, and view the total head to head score on the top of the challenges page. Teams can also create new challenges.
Want to play? Login as<EMAIL_ADDRESS>with the password team1.
Ruby on Rails, Postgres, Materialize, Heroku
Github Live ProjectThis project was built to return all valid spellings and word combinations of an input string, sorted by Scrabble value. Try it out!
JavaScript, Node, Express.js, Heroku
Github View Live APIAn Angular 7 project, which began life as a YouTube tutorial. Originally, this project connected to the placeholder JSON at https://jsonplaceholder.typicode.com/todos. I removed the connection and added Express REST API's, MongoDB, Bootstrap and edited the CSS for stylepoints.
MongoDB, Express.js, Angular, Node.js, Bootstrap, HTML5
GithubThis simple API transforms URL's to a counted numerical short.ly URL and sets a 24 expiration on them. Try it out!
Ruby on Rails, Postgres, Heroku
Github View Live APIThis full responsive and mobile project was built with vanilla JavaScript and Bootstrap, with the goal of populating images from the external https://dog.ceo/api. On page load, the page populates with random images of different dog breeds with the dog names displaying. Users have the option of selecting from a few popular breeds in the navbar. Note: This API does not return a standard image size, thus some pictures are cutoff, due to the project requirement that the all images populate 50% of the screen.
Vanilla JavaScript, Bootstrap
Github View Live SiteA collection of older, smaller web projects, using JavaScript, the DOM, local storage, and API's.
View Live Mini ProjectsA business website in Enumclaw, WA, with over 1100 unique visitors/month. Built on the Squarespace Platform with a mobile-thinking design. Website was built and is maintained by myself.
View WebsiteHey, I'm glad you're here. If you are reading this, you are at the bottom of my portfolio website! I do enjoy outdoor and family activities, but mostly, I write code. Drop me a line, let's chat. salvatore.a.santamaria@gmail.com


The unclassified service shall comprise the following offices and positions, which shall not be included within the merit system:
The mayor, the council members, either elected or appointed.
Members of city boards. commissions and committees.
The city manager, the assistant city manager(s), the city attorney and the heads of all departments established by the city manager.
Part-time, temporary, unpaid offices and positions, and employees by contract or agreement.
The classified service shall comprise all positions not specifically included by this section in the unclassified service. All offices and positions included in the classified service shall be subject to any merit system rules and regulations which may be adopted.
(Ord. No. O-12-74, § 2; Res. No. CA-3-09, § 1, 5-4-09, eff. 7-1-09)


From the box: Several babies can play together in the Nursery Playground Swing Set. This set has a double swing, see-saw and a mini climbing frame all in a charming garden setting.


First Name
Last Name
Email
Phone Number
Restaurant Name
City
Country United States Mexico Canada
Message


{% load pipeline %}
This index.html page is a placeholder with the CSS, font and favicon. It's just waiting for you to add some content! If you need some help hit up the Skeleton documentation.


Element
| Description |
IE |
FF |
| apply-imports |
Applies a template rule from an imported style sheet |
6.0 |
1.0 |
| apply-templates |
Applies a template rule to the current element or to the
current element's child nodes |
5.0 |
1.0 |
| attribute |
Adds an attribute |
5.0 |
1.0 |
| attribute-set |
Defines a named set of attributes |
6.0 |
1.0 |
| call-template |
Calls a named template |
6.0 |
1.0 |
| choose |
Used in conjunction with <when> and <otherwise> to
express multiple conditional tests |
5.0 |
1.0 |
| comment |
Creates a comment node in the result tree |
5.0 |
1.0 |
| copy |
Creates a copy of the current node (without child nodes and
attributes) |
5.0 |
1.0 |
| copy-of |
Creates a copy of the current node (with child nodes and
attributes) |
6.0 |
1.0 |
| decimal-format |
Defines the characters and symbols to be used when
converting numbers into strings, with the format-number() function |
6.0 |
1.0 |
| element |
Creates an element node in the output document |
5.0 |
1.0 |
| fallback |
Specifies an alternate code to run if the
processor does not support an XSLT element |
6.0 |
|
| for-each |
Loops through each node in a specified node set |
5.0 |
1.0 |
| if |
Contains a template that will be applied only if a
specified condition is true |
5.0 |
1.0 |
| import |
Imports the contents of one style sheet into another. Note:
An imported style sheet has lower precedence than the importing style sheet |
6.0 |
1.0 |
| include |
Includes the contents of one style sheet into another. Note:
An included style sheet has the same precedence as the including style sheet |
6.0 |
1.0 |
| key |
Declares a named key that can be used in the style sheet with the key() function |
6.0 |
1.0 |
| message |
Writes a message to the output (used to report errors) |
6.0 |
1.0 |
| namespace-alias |
Replaces a namespace in the style sheet to a different
namespace in the output |
6.0 |
|
| number |
Determines the integer position of the current node and
formats a number |
6.0 |
1.0 |
| otherwise |
Specifies a default action for the <choose> element |
5.0 |
1.0 |
| output |
Defines the format of the output document |
6.0 |
1.0 |
| param |
Declares a local or global parameter |
6.0 |
1.0 |
| preserve-space |
Defines the elements for which white space should be
preserved |
6.0 |
1.0 |
| processing-instruction |
Writes a processing instruction to the output |
5.0 |
1.0 |
| sort |
Sorts the output |
6.0 |
1.0 |
| strip-space |
Defines the elements for which white space should be
removed |
6.0 |
1.0 |
| stylesheet |
Defines the root element of a style sheet |
5.0 |
1.0 |
| template |
Rules to apply when a specified node is matched |
5.0 |
1.0 |
| text |
Writes literal text to the output |
5.0 |
1.0 |
| transform |
Defines the root element of a style sheet |
6.0 |
1.0 |
| value-of |
Extracts the value of a selected node |
5.0 |
1.0 |
| variable |
Declares a local or global variable |
6.0 |
1.0 |
| when |
Specifies an action for the <choose> element |
5.0 |
1.0 |
| with-param |
Defines the value of a parameter to be passed into a
template |
6.0 |
1.0 |


# -*- coding: utf-8 -*-
#
# Configuration file for the Sphinx documentation builder.
#
# This file does only contain a selection of the most common options. For a
# full list see the documentation:
# http://www.sphinx-doc.org/en/master/config
# -- Path setup --------------------------------------------------------------
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#
import os
import sys
sys.path.insert(0, os.path.abspath('../../..'))
# Sort members by type
autodoc_member_order = 'groupwise'
# Ensure that the __init__ method gets documented.
[docs]def skip(app, what, name, obj, skip, options):
if name == "__init__":
return False
return skip
[docs]def setup(app):
app.connect("autodoc-skip-member", skip)
# Ignore packages
import mock, sys
MOCK_MODULES = ['serial','pylab', 'numpy', 'numpy.linalg']
for mod_name in MOCK_MODULES:
sys.modules[mod_name] = mock.Mock()
# -- Project information -----------------------------------------------------
project = 'lidar'
copyright = '2018, Marwana4850'
author = 'Marwana4850'
# The short X.Y version
version = ''
# The full version, including alpha/beta/rc tags
release = '1.0.0'
# -- General configuration ---------------------------------------------------
# If your documentation needs a minimal Sphinx version, state it here.
#
# needs_sphinx = '1.0'
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
'sphinx.ext.autodoc',
'sphinx.ext.intersphinx',
'sphinx.ext.mathjax',
'sphinx.ext.ifconfig',
'sphinx.ext.viewcode',
'sphinx.ext.githubpages',
]
# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
# The suffix(es) of source filenames.
# You can specify multiple suffix as a list of string:
#
# source_suffix = ['.rst', '.md']
source_suffix = '.rst'
# The master toctree document.
master_doc = 'index'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
language = None
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
# This pattern also affects html_static_path and html_extra_path .
exclude_patterns = []
# The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx'
# -- Options for HTML output -------------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
#
html_theme = 'alabaster'
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
#
# html_theme_options = {}
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']
# Custom sidebar templates, must be a dictionary that maps document names
# to template names.
#
# The default sidebars (for documents that don't match any pattern) are
# defined by theme itself. Builtin themes are using these templates by
# default: ``['localtoc.html', 'relations.html', 'sourcelink.html',
# 'searchbox.html']``.
#
# html_sidebars = {}
# -- Options for HTMLHelp output ---------------------------------------------
# Output file base name for HTML help builder.
htmlhelp_basename = 'lidardoc'
# -- Options for LaTeX output ------------------------------------------------
latex_elements = {
# The paper size ('letterpaper' or 'a4paper').
#
# 'papersize': 'letterpaper',
# The font size ('10pt', '11pt' or '12pt').
#
# 'pointsize': '10pt',
# Additional stuff for the LaTeX preamble.
#
# 'preamble': '',
# Latex figure (float) alignment
#
# 'figure_align': 'htbp',
}
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title,
# author, documentclass [howto, manual, or own class]).
latex_documents = [
(master_doc, 'lidar.tex', 'lidar Documentation',
'Marwana4850', 'manual'),
]
# -- Options for manual page output ------------------------------------------
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
(master_doc, 'lidar', 'lidar Documentation',
[author], 1)
]
# -- Options for Texinfo output ----------------------------------------------
# Grouping the document tree into Texinfo files. List of tuples
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
(master_doc, 'lidar', 'lidar Documentation',
author, 'lidar', 'One line description of project.',
'Miscellaneous'),
]
# -- Extension configuration -------------------------------------------------
# -- Options for intersphinx extension ---------------------------------------
# Example configuration for intersphinx: refer to the Python standard library.
intersphinx_mapping = {'https://docs.python.org/': None}


Little more about myself
Work
Nets A/S
‣ data analyst, cloud architect, software development, research
Edillion A/S
‣ Android app developer, Script writing
Gratex s.r.o.
‣ internship, Google queries, bash, JavaScript, web scraping
Alibaba Slovakia
‣ data entry, documentations
Stavona s.r.o.
‣ Google My Business/ Analytics/ AdWords, web design
Freelancing
‣ web design and programming , domain administrator
Education
IT University of Copenhagen, DK
‣ Master’s Degree in IT, Software Development
Copenhagen Business Academy, DK
‣ Bachelor Degree in Computer Science
Copenhagen Business Academy, DK
‣ Associate’s Degree (AP) in Computer Science
Technical Secondary School of Electric and Electronic Engineering, SK
‣ secondary school
Eagle High School, USA
‣ exchange year


 He died
November 15, 1938, a sufferer from cancer in a hospital in
1873
On the
Kinkade Farm. This year the Kinkade
children went to school at the
1874, April 17
Grandmother
Sarah (Spilman) Kinkade died at Peakesville.
She was buried in the
1874 or 75
Sometime
after Grandmother's death, the Kinkade Family went back to
1875, Sept.
Grandfather
Kinkade, with little Eben and Jimmy, went to
1875, April to December
P. N. Dixon,
on completing his apprenticeship at
1876, May or June
Charley
Kinkade was back in
1876, December, about Christmas
E. S.
Kinkade brought his family back to
1877 - 78
This was
the year, according to Mother Dixon, that Uncles Jimmy and Eben went to school
to Miss Ludie Lehew.
In this
year also, Rachel, Will and Mattie Kinkade attended public school in Kahoka.
In
December, 1877, Uncle Ben married Susan Wadmore, and Aunt Em married James
Wadmore - - both aided and abetted by old Squire Chappell of Williamston.
1878, Feb. 22
Aunt Cynthia
married Ed Messnier. She took Uncle
Jimmy and they went to Uncle Pat's place in
Spring of
1878, Charley Kinkade moved his family into the old
1878, May or June
E. S.
Kinkade married Rosanna Green-Lewis, widow, whose daughters Clarissa and Emma
married Tom Neal and Bill Otto. After
this second marriage, he moved with the younger children of both families, into
a house two blocks north of the Court House on
1878 - 9
E. S.
Kinkade's fourth residence in Kahoka was the old Gilbert property by the railroad. This was the little cabin where Aunt Becky
Spangler kept a little shop for so long.
1879
E. S.
Kinkade's fifth residence in Kahoka was the second floor of a frame house that
stood at the site of the present Montgomery Opera House block.
In
1880. Nov. 15. The sixth and last residence of the E. S.
Kinkade family in Kahoka was a corner house on
1880 - 90
In 1880
Rachel Kinkade married Perley Dixon, and they started housekeeping at
1870 - 82
E. S.
Kinkade, Sr., worked at his trade of stone mason most of this period. He helped put up most of the permanent
buildings at Kahoka which required stone foundation work. He and Charley Kinkade both worked on the
famous
1882, April 2nd
E. S.
Kinkade, and the remnants of his family, removed to
E. S. KINKADE, SR.
He ended
his active work as a stone mason as he grew older. But for years he acted as the agent of P. N.
Dixon, and sold tombstones all over
He also
took agencies for the "Oxien Remedies" and for the George Rupp
Company (Junk Dealers) of
Two stories
that did not find their way into "OUR BOOK" when it was produced in
1932, should be preserved for the local and family history. I will incorporate them in this little sketch
on the Kinkade Family in
NO CONDEMNATION
Uncle
Charley Kinkade told me this one:
The Sunday before Grandpa left
"There
is now therefore no condemnation to them that are in Christ Jesus."
The
following Sunday he laid over in
Uncle Eben
said he remembered a visit to a nice saloon in
The
following Sunday they were back in
"I've
had about enough CONDEMNATION!" said Grandpa. "I've heard it on three Sundays, and in
three different states. I wish somebody
would think up a new text for a new sermon the next time I go to church."
THE SANCTIFIED PREACHER
The last
yarn that E. S. Kinkade, Jr. told me about his father was Grandpa's own version
of his experience at the Holiness Meeting at Chambersburg,
The quoted
words of the Holiness Parson he repeated to me slowly so that I might take them
down for word for word.
 "Our Hump is a hump of faith!"
One night
Uncle Eben Kinkade decided to take Sarah to the Chambersburg Temple of Holiness
to hear a good sermon.  He did not
hesitate to take advantage of a Golden Opportunity to show them where they had
laid hold of a Grievous Error in Theology.
After
laying them out and bowling them over in ranks, platoons and battalions in good
old-fashioned homiletic style, he proceeded to show, beyond the shadow of a
doubt, that the doctrine of FAITH, REPENTANCE, CONFESSION, BAPTISM, AND the
GIFT of the Eternal Salvation lay far short of the gentle beauty of
Holiness. He closed his eloquent sermon
thus.
PERORATION
"Although, My Brethren! A
may [sic submitter s note this should probably have been man ] may have been
converted, God may have pardoned his sins, and by acts of obedience this man
may have been initiated into the
"Yet,
My Brethern! This man has not had the
Second Experience.
"We
will liken him unto the man that was put into a cage with the lion.  Nor had he time to look to the
right nor to the left. By and By, my
Brethren! there came along a lot of other
lions, and they began to reach into the cage for the man!

"He
had but to say . . . . "Lord!
Sanctify me! . . . .

"Sing!
. . . . Brethren"
Uncle Eben
heard Grandfather Kinkade tell this story many times. He remembered it so well that the closing
words of the preacher's sermon were seared upon his memory. And Grandpa would close the story as follows:
"And
I, says I, Come on Maw! Let's go! We're in a den of Lions!"
BEN F.
DIXON
This postscript completed 1939.
Provided by Betty Latta
Kitchen
Click here for the Short-Cut Table of Contents


Pick file
Type
JPEG
PNG
WEBP
AVIF
Quality
Resize
Use "Pick file" button or dragging to add file.
Right click "Save as" or drag to save the output.


How to translate Sumatra PDF
You can contribute translations using web-based AppTranslator service.
Translators
Current translations has been contributed by many people.
You can contribute translations using web-based AppTranslator service.
Current translations has been contributed by many people.


Willian to snub offer of new Chelsea FC contract before January – report
Willian will not sign a new deal with Chelsea FC before the January transfer window, according to reports
by Transfer AgentWillian will snub the offer of a new contract from Chelsea FC before January as he explores the possibility of a move to FC Barcelona, according to reports in Spain.
Spanish outlet Mundo Deportivo, as quoted by the Daily Star, is reporting that the Brazilian playmaker will not be signing a new contract with Chelsea FC before the mid-season transfer window.
Willian’s current deal at Chelsea FC is set to expire at the end of the season and that means that he will be free to discuss a pre-contract arrangement with foreign clubs come January.
The story says that Willian will turn down any offer of a new deal from Chelsea FC before he has seen what FC Barcelona may put on the table in the January window.
According to the same article, the Spanish club have already seen a number of bids rejected for Willian, with Chelsea FC reportedly turning down a £55m-plus offer back in 2018.
The 31-year-old has been in good form for Chelsea FC in recent weeks, having scored two goals and made three assists in 11 Premier League games so far this season.
Willian will be hoping to feature for Chelsea FC when the Blues return to Premier League action with a trip to Manchester City on Saturday night.


Macros | |
| #define | PN_TLS_OK |
| Error codes. More... | |
| #define | PN_TLS_INIT_ERR |
| Failure in initialization, unrelated to activity with the peer. | |
| #define | PN_TLS_PROTOCOL_ERR |
| Failure in the TLS protocol between peers. | |
| #define | PN_TLS_AUTHENTICATION_ERR |
| Peer authentication failure. | |
| #define | PN_TLS_STATE_ERR |
| Requested action not possible due to session state. | |
Typedefs | |
| typedef struct pn_tls_config_t | pn_tls_config_t |
| API for using TLS separate from AMQP connections. More... | |
| typedef struct pn_tls_t | pn_tls_t |
Enumerations | |
| enum | pn_tls_mode_t { PN_TLS_MODE_CLIENT , PN_TLS_MODE_SERVER } |
| Determines the type of TLS endpoint. More... | |
| enum | pn_tls_verify_mode_t { PN_TLS_VERIFY_NULL , PN_TLS_VERIFY_PEER , PN_TLS_ANONYMOUS_PEER , PN_TLS_VERIFY_PEER_NAME } |
| Determines the level of peer validation. More... | |
| enum | pn_tls_cert_subject_subfield { PN_TLS_CERT_SUBJECT_COUNTRY_NAME , PN_TLS_CERT_SUBJECT_STATE_OR_PROVINCE , PN_TLS_CERT_SUBJECT_CITY_OR_LOCALITY , PN_TLS_CERT_SUBJECT_ORGANIZATION_NAME , PN_TLS_CERT_SUBJECT_ORGANIZATION_UNIT , PN_TLS_CERT_SUBJECT_COMMON_NAME } |
| Enumeration identifying the sub fields of the subject field in the tls certificate. | |
| enum | pn_tls_hash_alg { PN_TLS_SHA1 , PN_TLS_SHA256 , PN_TLS_SHA512 , PN_TLS_MD5 } |
| Enumeration identifying hashing algorithm. | |
Functions | |
| PN_TLS_EXTERN pn_tls_config_t * | pn_tls_config (pn_tls_mode_t mode) |
| Create an TLS configuration domain. More... | |
| PN_TLS_EXTERN void | pn_tls_config_free (pn_tls_config_t *domain) |
| Release an TLS configuration domain. More... | |
| PN_TLS_EXTERN int | pn_tls_config_set_credentials (pn_tls_config_t *domain, const char *credential_1, const char *credential_2, const char *password) |
| Set the certificate that identifies the local node to the remote. More... | |
| PN_TLS_EXTERN int | pn_tls_config_set_trusted_certs (pn_tls_config_t *domain, const char *certificate_db) |
| Configure the set of trusted CA certificates used by this domain to verify peers. More... | |
| PN_TLS_EXTERN int | pn_tls_config_set_peer_authentication (pn_tls_config_t *domain, const pn_tls_verify_mode_t mode, const char *trusted_CAs) |
| Configure the level of verification used on the peer certificate. More... | |
| PN_TLS_EXTERN int | pn_tls_config_set_impl_ciphers (pn_tls_config_t *domain, const char *ciphers) |
| Configure the list of permitted ciphers. More... | |
| PN_TLS_EXTERN pn_tls_t * | pn_tls (pn_tls_config_t *domain) |
| Create a new TLS session object derived from a domain. More... | |
| PN_TLS_EXTERN int | pn_tls_start (pn_tls_t *tls) |
| Start a TLS session. More... | |
| PN_TLS_EXTERN void | pn_tls_free (pn_tls_t *tls) |
| PN_TLS_EXTERN bool | pn_tls_get_cipher (pn_tls_t *tls, const char **cipher, size_t *size) |
| Get the name of the Cipher that is currently in use. More... | |
| PN_TLS_EXTERN int | pn_tls_get_ssf (pn_tls_t *tls) |
| Get the SSF (security strength factor) of the Cipher that is currently in use. More... | |
| PN_TLS_EXTERN bool | pn_tls_get_protocol_version (pn_tls_t *tls, const char **version, size_t *size) |
| Get the name of the TLS protocol that is currently in use. More... | |
| PN_TLS_EXTERN int | pn_tls_set_peer_hostname (pn_tls_t *tls, const char *hostname) |
| Set the expected identity of the remote peer. More... | |
| PN_TLS_EXTERN int | pn_tls_get_peer_hostname (pn_tls_t *tls, char *hostname, size_t *bufsize) |
| Access the configured peer identity. More... | |
| PN_TLS_EXTERN const char * | pn_tls_get_remote_subject (pn_tls_t *tls) |
| Get the subject from the peers certificate. More... | |
| PN_TLS_EXTERN int | pn_tls_get_cert_fingerprint (pn_tls_t *tls0, char *fingerprint, size_t fingerprint_length, pn_tls_hash_alg hash_alg) |
| Get the fingerprint of the certificate. More... | |
| PN_TLS_EXTERN const char * | pn_tls_get_remote_subject_subfield (pn_tls_t *tls, pn_tls_cert_subject_subfield field) |
| Returns a char pointer that contains the value of the sub field of the subject field in the tls certificate. More... | |
| PN_TLS_EXTERN bool | pn_tls_is_encrypt_output_pending (pn_tls_t *tls) |
| PN_TLS_EXTERN bool | pn_tls_is_decrypt_output_pending (pn_tls_t *tls) |
| PN_TLS_EXTERN bool | pn_tls_is_secure (pn_tls_t *tls) |
| PN_TLS_EXTERN size_t | pn_tls_give_encrypt_output_buffers (pn_tls_t *, pn_raw_buffer_t const *, size_t count) |
| PN_TLS_EXTERN size_t | pn_tls_give_decrypt_output_buffers (pn_tls_t *, pn_raw_buffer_t const *, size_t count) |
| PN_TLS_EXTERN size_t | pn_tls_take_decrypt_output_buffers (pn_tls_t *, pn_raw_buffer_t *, size_t count) |
| PN_TLS_EXTERN size_t | pn_tls_take_encrypt_output_buffers (pn_tls_t *, pn_raw_buffer_t *, size_t count) |
| PN_TLS_EXTERN size_t | pn_tls_give_encrypt_input_buffers (pn_tls_t *, pn_raw_buffer_t const *bufs, size_t count_bufs) |
| PN_TLS_EXTERN size_t | pn_tls_give_decrypt_input_buffers (pn_tls_t *, pn_raw_buffer_t const *bufs, size_t count_bufs) |
| PN_TLS_EXTERN size_t | pn_tls_take_encrypt_input_buffers (pn_tls_t *, pn_raw_buffer_t *, size_t count) |
| PN_TLS_EXTERN size_t | pn_tls_take_decrypt_input_buffers (pn_tls_t *, pn_raw_buffer_t *, size_t count) |
| PN_TLS_EXTERN size_t | pn_tls_get_encrypt_input_buffer_capacity (pn_tls_t *) |
| PN_TLS_EXTERN size_t | pn_tls_get_decrypt_input_buffer_capacity (pn_tls_t *) |
| PN_TLS_EXTERN bool | pn_tls_need_encrypt_output_buffers (pn_tls_t *) |
| PN_TLS_EXTERN bool | pn_tls_need_decrypt_output_buffers (pn_tls_t *) |
| PN_TLS_EXTERN size_t | pn_tls_get_encrypt_output_buffer_capacity (pn_tls_t *) |
| PN_TLS_EXTERN size_t | pn_tls_get_decrypt_output_buffer_capacity (pn_tls_t *) |
| PN_TLS_EXTERN size_t | pn_tls_get_decrypt_output_buffer_count (pn_tls_t *) |
| PN_TLS_EXTERN size_t | pn_tls_get_encrypt_output_buffer_count (pn_tls_t *) |
| PN_TLS_EXTERN uint32_t | pn_tls_get_last_decrypt_output_buffer_size (pn_tls_t *) |
| PN_TLS_EXTERN uint32_t | pn_tls_get_last_encrypt_output_buffer_size (pn_tls_t *) |
| PN_TLS_EXTERN void | pn_tls_set_encrypt_input_buffer_max_capacity (pn_tls_t *, size_t s) |
| PN_TLS_EXTERN void | pn_tls_set_decrypt_input_buffer_max_capacity (pn_tls_t *, size_t s) |
| PN_TLS_EXTERN void | pn_tls_set_encrypt_output_buffer_max_capacity (pn_tls_t *, size_t s) |
| PN_TLS_EXTERN void | pn_tls_set_decrypt_output_buffer_max_capacity (pn_tls_t *, size_t s) |
| PN_TLS_EXTERN int | pn_tls_process (pn_tls_t *tls) |
| PN_TLS_EXTERN int | pn_tls_stop (pn_tls_t *tls) |
| PN_TLS_EXTERN bool | pn_tls_is_input_closed (pn_tls_t *tls) |
| PN_TLS_EXTERN void | pn_tls_close_output (pn_tls_t *tls) |
| PN_TLS_EXTERN int | pn_tls_get_session_error (pn_tls_t *tls) |
| PN_TLS_EXTERN size_t | pn_tls_get_session_error_string (pn_tls_t *tls, char *buf, size_t buf_len) |
| PN_TLS_EXTERN int | pn_tls_config_set_alpn_protocols (pn_tls_config_t *domain, const char **protocols, size_t protocol_count) |
| Provide an ordered list of application protols for RFC 7301 negotiation. More... | |
| PN_TLS_EXTERN bool | pn_tls_get_alpn_protocol (pn_tls_t *tls, const char **protocol_name, size_t *size) |
| Get the name of the negotiated application protocol. More... | |
| #define PN_TLS_OK |
Error codes.
No error
| typedef struct pn_tls_config_t pn_tls_config_t |
API for using TLS separate from AMQP connections.
This API is currently unsettled and subject to significant change and improvement.
Based heavily on the original Proton SSL API for configuring TLS over AMQP connections, this implementation separates the encryption/decryption of data from the network IO operations.
A Transport can be configured as either an "TLS client" or an "TLS server". An TLS client is the party that proactively establishes a connection to an TLS server. An TLS server is the party that accepts a connection request from a remote TLS client.
This TLS implementation defines the following objects:
The pn_tls_config_t is used to construct an TLS session (pn_tls_t). The session "adopts" its configuration from the pn_tls_config_t that was used to create it. For example, pn_tls_config_t can be configured as either a "client" or a "server". TLS sessions constructed from this domain will perform the corresponding role (either client or server).
If an TLS session is created without a pn_tls_config_t object then a default will be used (see ::pn_tls_init()).
If either an TLS server or client needs to identify itself with the remote node, it must have its TLS certificate configured (see pn_tls_config_set_credentials()).
If either an TLS server or client needs to verify the identity of the remote node, it must have its database of trusted CAs configured. By default this will be set up to use the default system database of trusted CA. But this can be changed (see pn_tls_config_set_trusted_certs()).
The level of verification required of the remote may be configured (see pn_tls_config_set_peer_authentication)
| enum pn_tls_mode_t |
| enum pn_tls_verify_mode_t |
Determines the level of peer validation.
ANONYMOUS_PEER does not require a valid certificate, and permits use of ciphers that do not provide authentication.
VERIFY_PEER will only connect to those peers that provide a valid identifying certificate signed by a trusted CA and are using an authenticated cipher.
VERIFY_PEER_NAME is like VERIFY_PEER, but also requires the peer's identity as contained in the certificate to be valid (see pn_tls_set_peer_hostname).
VERIFY_PEER_NAME is configured by default.
| PN_TLS_EXTERN pn_tls_config_t* pn_tls_config | ( | pn_tls_mode_t | mode | ) |
Create an TLS configuration domain.
This method allocates an TLS domain object. This object is used to hold the TLS configuration for one or more TLS sessions. The TLS session object (pn_tls_t) is allocated from this object.
| [in] | mode | the role, client or server, assumed by all TLS sessions created with this domain. |
| PN_TLS_EXTERN void pn_tls_config_free | ( | pn_tls_config_t * | domain | ) |
Release an TLS configuration domain.
This method frees an TLS domain object allocated by pn_tls_config.
| [in] | domain | the domain to destroy. |
| PN_TLS_EXTERN int pn_tls_config_set_credentials | ( | pn_tls_config_t * | domain, |
| const char * | credential_1, | ||
| const char * | credential_2, | ||
| const char * | password | ||
| ) |
Set the certificate that identifies the local node to the remote.
This certificate establishes the identity for the local node for all TLS sessions created from this domain. It will be sent to the remote if the remote needs to verify the identity of this node. This may be used for both TLS servers and TLS clients (if client authentication is required by the server).
| [in] | domain | the tls domain that will use this certificate. |
| [in] | credential_1 | specifier for the file/database containing the identifying certificate. For Openssl users, this is a PEM file. For Windows SChannel users, this is the PKCS#12 file or system store. |
| [in] | credential_2 | an optional key to access the identifying certificate. For Openssl users, this is an optional PEM file containing the private key used to sign the certificate. For Windows SChannel users, this is the friendly name of the self-identifying certificate if there are multiple certificates in the store. |
| [in] | password | the password used to sign the key, else NULL if key is not protected. |
| PN_TLS_EXTERN int pn_tls_config_set_trusted_certs | ( | pn_tls_config_t * | domain, |
| const char * | certificate_db | ||
| ) |
Configure the set of trusted CA certificates used by this domain to verify peers.
If the local TLS client/server needs to verify the identity of the remote, it must validate the signature of the remote's certificate. This function sets the database of trusted CAs that will be used to verify the signature of the remote's certificate.
| [in] | domain | the tls domain that will use the database. |
| [in] | certificate_db | database of trusted CAs, used to authenticate the peer. |
| PN_TLS_EXTERN int pn_tls_config_set_peer_authentication | ( | pn_tls_config_t * | domain, |
| const pn_tls_verify_mode_t | mode, | ||
| const char * | trusted_CAs | ||
| ) |
Configure the level of verification used on the peer certificate.
This method controls how the peer's certificate is validated, if at all. By default, servers do not attempt to verify their peers (PN_TLS_ANONYMOUS_PEER) but clients attempt to verify both the certificate and peer name (PN_TLS_VERIFY_PEER_NAME). Once certificates and trusted CAs are configured, peer verification can be enabled.
| [in] | domain | the tls domain to configure. |
| [in] | mode | the level of validation to apply to the peer |
| [in] | trusted_CAs | path to a database of trusted CAs that the server will advertise to the peer client if the server has been configured to verify its peer. |
| PN_TLS_EXTERN int pn_tls_config_set_impl_ciphers | ( | pn_tls_config_t * | domain, |
| const char * | ciphers | ||
| ) |
Configure the list of permitted ciphers.
| [in] | domain | the tls domain to configure. |
| [in] | ciphers | string representing the cipher list |
| PN_TLS_EXTERN pn_tls_t* pn_tls | ( | pn_tls_config_t * | domain | ) |
Create a new TLS session object derived from a domain.
| [in] | domain | the domain that configures the TLS session. |
| PN_TLS_EXTERN int pn_tls_start | ( | pn_tls_t * | tls | ) |
Start a TLS session.
This method starts the operation of a TLS session based on the object's configuration. Subsequent configuration steps will have no effect. A client TLS session will generate one or more result buffers for the clienthello handshake.
| [in] | tls | the tls session to configured. |
| PN_TLS_EXTERN bool pn_tls_get_cipher | ( | pn_tls_t * | tls, |
| const char ** | cipher, | ||
| size_t * | size | ||
| ) |
Get the name of the Cipher that is currently in use.
Gets a text description of the cipher that is currently active, or returns FALSE if TLS is not active (no cipher). Note that the cipher in use may change over time due to renegotiation or other changes to the TLS state. The cipher is not null terminated.
| [in] | tls | the tls client/server to query. |
| [out] | cipher | set to a pointer to the current cipher description or NULL if no cipher. |
| [out] | size | set to the cipher or 0 if no cipher. |
| PN_TLS_EXTERN int pn_tls_get_ssf | ( | pn_tls_t * | tls | ) |
Get the SSF (security strength factor) of the Cipher that is currently in use.
| [in] | tls | the tls client/server to query. |
| PN_TLS_EXTERN bool pn_tls_get_protocol_version | ( | pn_tls_t * | tls, |
| const char ** | version, | ||
| size_t * | size | ||
| ) |
Get the name of the TLS protocol that is currently in use.
Gets a text description of the TLS protocol that is currently active, or returns FALSE if TLS is not active. Note that the protocol may change over time due to renegotiation.
| [in] | tls | the tls client/server to query. |
| [out] | version | set to a pointer to the current protocol version or NULL if not active. |
| [out] | size | set to the length of the version or zero if not active. |
| PN_TLS_EXTERN int pn_tls_set_peer_hostname | ( | pn_tls_t * | tls, |
| const char * | hostname | ||
| ) |
Set the expected identity of the remote peer.
By default, TLS will use the hostname associated with the connection that the transport is bound to (see pn_connection_set_hostname). This method allows the caller to override that default.
The hostname is used for two purposes: 1) when set on an TLS client, it is sent to the server during the handshake (if Server Name Indication is supported), and 2) it is used to check against the identifying name provided in the peer's certificate. If the supplied name does not exactly match a SubjectAltName (type DNS name), or the CommonName entry in the peer's certificate, the peer is considered unauthenticated (potential imposter), and the TLS connection is aborted.
| [in] | tls | the tls session. |
| [in] | hostname | the expected identity of the remote. Must conform to the syntax as given in RFC1034, Section 3.5. |
| PN_TLS_EXTERN int pn_tls_get_peer_hostname | ( | pn_tls_t * | tls, |
| char * | hostname, | ||
| size_t * | bufsize | ||
| ) |
Access the configured peer identity.
Return the expected identity of the remote peer, as set by pn_tls_set_peer_hostname.
| [in] | tls | the tls session. |
| [out] | hostname | buffer to hold the null-terminated name string. If null, no string is written. |
| [in,out] | bufsize | on input set to the number of octets in hostname. On output, set to the number of octets needed to hold the value of hostname plus a null byte. Zero if no hostname set. |
| PN_TLS_EXTERN const char* pn_tls_get_remote_subject | ( | pn_tls_t * | tls | ) |
Get the subject from the peers certificate.
| [in] | tls | the tls client/server to query. |
| PN_TLS_EXTERN int pn_tls_get_cert_fingerprint | ( | pn_tls_t * | tls0, |
| char * | fingerprint, | ||
| size_t | fingerprint_length, | ||
| pn_tls_hash_alg | hash_alg | ||
| ) |
Get the fingerprint of the certificate.
The certificate fingerprint (as displayed in the Fingerprints section when looking at a certificate with say the Firefox browser) is the hexadecimal hash of the entire certificate. The fingerprint is not part of the certificate, rather it is computed from the certificate and can be used to uniquely identify a certificate.
| [in] | tls0 | the tls client/server to query |
| [in] | fingerprint | char pointer. The certificate fingerprint (in hex format) will be populated in this array. If sha1 is the digest name, the fingerprint is 41 characters long (40 + 1 '\0' character), 65 characters long for sha256 and 129 characters long for sha512 and 33 characters for md5. |
| [in] | fingerprint_length | - Must be at >= 33 for md5, >= 41 for sha1, >= 65 for sha256 and >=129 for sha512. |
| [in] | hash_alg | the hash algorithm to use. Must be of type pn_tls_hash_alg (currently supports sha1, sha256, sha512 and md5) |
| PN_TLS_EXTERN const char* pn_tls_get_remote_subject_subfield | ( | pn_tls_t * | tls, |
| pn_tls_cert_subject_subfield | field | ||
| ) |
Returns a char pointer that contains the value of the sub field of the subject field in the tls certificate.
The subject field usually contains the following sub fields - C = ISO3166 two character country code ST = state or province L = Locality; generally means city O = Organization - Company Name OU = Organization Unit - division or unit CN = CommonName
| [in] | tls0 | the tls client/server to query |
| [in] | field | The enumeration pn_tls_cert_subject_subfield representing the required sub field. |
| PN_TLS_EXTERN int pn_tls_config_set_alpn_protocols | ( | pn_tls_config_t * | domain, |
| const char ** | protocols, | ||
| size_t | protocol_count | ||
| ) |
Provide an ordered list of application protols for RFC 7301 negotiation.
List ordered in descending preference for the caller.
Each protocol name must be provided as its well known octet sequence in UTF-8, null terminated. For the client, the order is preserved in the client_hello to the server, but the server will not usually take that ordering into account.
For the server, protocol selection follows the standard mechanism in RFC 7301: the first item in the server list that matches an item in the client list is selected. No match will result in a failed TLS handshake.
ALPN processing can be turned off by setting protocols to NULL and protocol_count to zero.
| [in] | tls | the tls client/server to query. |
| [in] | protocols | the array of pointers the protocol names in the list. |
| [in] | count | the size of the protocols array. |
| PN_TLS_EXTERN bool pn_tls_get_alpn_protocol | ( | pn_tls_t * | tls, |
| const char ** | protocol_name, | ||
| size_t * | size | ||
| ) |
Get the name of the negotiated application protocol.
Gets the name of the negotiated application protocol or returns FALSE if the negotiation failed, is not yet complete, or was never requested by the client. The protocol name is not a null terminated string.
| [in] | tls | the tls client/server to query. |
| [out] | protocol_name | set to a pointer to the application protocol name or NULL if not negotiated. |
| [out] | size | set to the length of the protocol name or zero if not negotiated. |


{{ partial "head.html" . }}
{{ $.Site.Params.Description }}
Go back to our homepage to find your way.


caribou ice water bodies climate using (i.e., movements lakes crossings change migratory Northern used dates freezing study availability years {border-style changes largest Arctic px;} #ffffff;} detours steps Caribou migration performed phenology future selection data observed Additional breakup locations models values Québec area file freeze herd individuals long species average crossing migrations responses rivers step thawing trends vicinity . ± . Fig. Lake Rivière-aux-Feuilles compared fine-scale location open potential predicted range (see Biol MODIS Québec, bodies. buffer days distance individual large warming SE; ]). behaviour date distribution fall frequency frequently model px; swimming use {font-family (–) Climate Ecol Ice North Rangifer ]), annual based circumvent climatic early estimated font-size global ice-availability influence land movement northern package possible reservoirs results significant spring successive time turning (Fig. -day Accessed Canada Change Conserv GPS Nichicun Nov SSF arctic available body broad-scale conditions consequences des df = df = , different double; effects energy function habitat human increased period projections proportion random selected similar terrestrial type t = ., water, zones $$\end{document} > ./j.-...x AIC Model Movement Proportion Results Science \begin{document}$$ \documentclass[pt]{minimal} \setlength{\oddsidemargin}{-pt} \usepackage{amsbsy} \usepackage{amsfonts} \usepackage{amsmath} \usepackage{amssymb} \usepackage{mathrsfs} \usepackage{upgreek} \usepackage{wasysym} assess assessed bold border-color border-width caribou, cells conservation cover did earlier following freshwater frozen impacts included increase lake lakes, longest maps model, monitored n = parsimonious rapidly rates reindeer response segments short solid; surface travelled ungulate url: {font-style {font-weight −. ± . "pauses" (. ± .° (DOCX (Table ( ± -km Côté Ecology Global Hemisphere LINK Magnuson Miller November Oxford Parmesan Prop. P < .) Research Thawing \overline{r_S} angles animals areas article avoided changing conditions. contemporary courier; demonstrated distances em; generated higher historical interactions isolating kb) late linear locomotion m/h manuscript. metrics minimum models. natural obtained occurred of\kern.em pt;} rank recent region regions represent research rivers, suggesting surrounding telemetry timing total t = −., unfrozen version vs. winter wintering


This document is a revdoc template document 'tutorial' created by write-revdoc.
This document is part of the library workspace
@valos/revdoc
Edit me - this is the first payload chapter. Abstract and SOTD are essential
ReSpec boilerplate
.
See
ReVDoc tutorial
for instructions on how to write revdoc source documents.
See also
ReVdoc specification
and
VDoc specification
for reference documentation.


this is sample text
bower install <package>
npm install <package>
© 2019 Nirvana. Designed and Developed by Transility


Survivor of the Dotcom Wars
I like piña coladas and getting caught in the rain
You can contact me here.


What I did
- Created a full-stack web application to track and visualize customer email communications for call center agents
- Developed a Java stream application to consume from 3 Kafka topics and a Cassandra database hosted on AWS
- Implemented a Java Spring API to expose a PostgreSQL database of the aggregated Kafka and Cassandra data
- Collaborated between teams to integrate the completed product into an existing production application
- Formally presented the solution to senior business and technology executives
Responsibilities
- Coordinated with customers to gain a comprehesive understanding of the problem from a business standpoint
- Organized presentations of the finished product to multiple high ranking business and technology leaders
- Participated in Scrum stand-ups and other ceremonies
- Worked collaboratively between teams to find valuable connections between products


Browse Job profiles
Explore the job profiles to find out what a job involves and if it will suit you.
Choose a letter below to view profiles.
- Packaging technologist
- Packer
- Paint sprayer
- Painter and decorator
- Palaeontologist
- Palliative care assistant
- Paper maker
- Paper technologist
- Paralegal
- Paramedic
- Patent attorney
- Pathologist
- Patient advice and liaison service officer
- Patient transport service controller
- Pattern cutter
- Pattern grader
- Payroll administrator
- Payroll manager
- PE teacher
- Pensions administrator
- Pensions adviser
- Pensions manager
- Personal assistant
- Personal shopper
- Personal trainer
- Pest control technician
- Pet behaviour counsellor
- Pet shop assistant
- Petrol station sales assistant
- Pharmacist
- Pharmacologist
- Pharmacy assistant
- Pharmacy technician
- Phlebotomist
- Photographer
- Photographic stylist
- Photographic technician
- Physicist
- Physiotherapist
- Physiotherapy assistant
- Picture framer
- Pilates teacher
- Pipe fitter
- Planning and development surveyor
- Plasterer
- Plastics process worker
- Play therapist
- Playworker
- Plumber
- Podiatrist
- Podiatry assistant
- Police community support officer
- Police officer
- Pop musician
- Port operative
- Portage home visitor
- Post office customer service assistant
- Postman or postwoman
- Practice nurse
- Pre-press operator
- Primary care graduate mental health worker
- Primary school teacher
- Printing administrator
- Printing assistant
- Prison governor
- Prison instructor
- Prison officer
- Private investigator
- Private practice accountant
- Probation officer
- Probation services officer
- Product designer
- Production manager (manufacturing)
- Production worker (manufacturing)
- Proofreader
- Prop maker
- Prosthetist-orthotist
- Psychiatrist
- Psychologist
- Psychotherapist
- Public finance accountant
- Public relations director
- Public relations officer
- Publican
- Purchasing manager


{% extends "layout.html" %} {% block body %}
To get started, we'll have to create database, a configuration file with your configuration in it and the first user account, so you can log in and create accounts for your roommates.
{% elif step == 1 %}That should be all. You now have to restart python/this app so your settings are properly loaded, then just go to /login and log in with the credentials you just put in the form.
If there are any problems, look at the repository for help with the config.py and Roommates in general.
{% endif %}


--- layout: post title: FOODPAIRING date: '2007-11-28T22:07:33+00:00' tags: [] tumblr_url: http://backlog.robbevan.com/post/20416206/foodpairing --- FOODPAIRING


Copyright (c) 2000 Vincent Everaert
This game is played on an 8x8 empty square board.
There is a common stock of 40 stones off board.
|
| An example
The distribution of b3 to b6 or e3 is illegal because it allows no capture. Distribution to b1 is impossible because there will be a stone left to place over the edge. Capture to e6 is possible: stones are laid on c4, d5 and e6, then the two-stone stack at d5 is removed. |
|
| Distributing
The second player is about to win, so the first player may produce a stack. He cannot make a 7 stone stack at g5, because that stack could not be distributed (even if the player tried to distribute it to the west, the stones would be placed on f5, e5, d5, c5, b5, a5, and he still would have one stone left to drop...). However, he can make a stack at a5. Another possibility is to create a 3 stack at d3, stacking the stones at d5, d4 and d3. If the second player drop another at d5, he can distribute d3 to the top, and capture two stones at d5. This is not a good move, because the east-west connection is still active thru the diagonal connection at d4 and d6. |
| Some notes from the author: Threatening straightaway the opponent is not the right way to play NOTWO'S. Banking on the conjunction of different little sections may prove efficient. The extra condition on the game permits an active defense that should be taken into account. |


Our Services
Plumbing
- Replace taps
- Replace electric showers
- Unblock and install toilets, sinks
- Fitting domestic appliances(free or integrated)
- Fitting complete bathrooms
- New plumbing systems
- Install and repair, bathtubs, water heaters, showers
Handyman Jobs
- Full house and flat refurbishment
- House extensions
- Floor replanning
- Replace smoke detector batteries
- Touch up peeling or damaged paint
- Check window screens and repair as necessary
- Check siding and roofing for visible signs of problems
Electrical
- Create, maintain, repair in domestic and commercial properties
- Monitoring the condition/deterioration of components (such as cables, connectors switches, contactors, safety devices)
- Rewire faulty electrical systems, such as lighting, heating systems, and alarms


This intention generates method which delegates to the current one setting the selected parameter the default value.


Read me¶
DSE_DO_Utils¶
Decision Optimization utilities for IBM Watson Studio Local and ICPd projects.
Source (GitHub)
Documentation (GitHubPages)
This repository contains the package dse_do_utils
. This can be installed using pip.
Main classes:¶
- ScenarioManager. Reads and writes table data from and to all combinations of csv-files, Excel spreadhseet and DO scenario.
- DataManager. A DataManager is mostly a container for data and functions for pre- and post-processing. Can be subclassed and stored in a script to be able to share code between multiple notebooks. Also contains some utilities for data manipulation, like the crossjoin.
- OptimizationEngine. Also mostly a container for functions around creating an optimization model and using the docplex APIs. Can be subclassed and stored in a script to be able to share code between multiple notebooks. Also contains some functions to create dvars and export .lp files.
- ScenarioPicker. Interactively pick an existing scenario from a drop-down menu in a notebook. Typically used in visualization notebooks.
- MapManager. For creating map visualizations using Folium.
- DOModelExporter. To export DO Models in CPDv2.5.
Installation (CPDv2.5)¶
(For Cloud Pak for Data v2.5)
CPDv2.5 is very different from the previous versions and it has a significant impact on how the dse-do-utils can be installed and used.
Options:
- Install using pip in a customized environment. This applies to both Jupyter and JupyterLab.
- Install as a package in JupyterLab.
- Install as modules in Jupyter
- Install/use as modules in the DO Model Builder
Install in customized environment¶
CPDv2.5 allows for easy customization of environments. Add the following to the customization configuration:
- pip:
- dse-do-utils=<IP_ADDRESS>
This automatically downloads dse-do-utils from PyPI and installs the package.
For air-gapped systems that have no access to PyPI:
- Download the package from PyPI/Conda from an internet connected system as a wheel/zip file
- Upload the wheel/zip as a data asset
- Install package from wheel/zip
This downloads the package as a wheel/zip and puts it in the data assets
!pip download dse-do-utils -d /project_data/data_asset/
Then move the wheel/zip to the Data Assets.
See the InstallationReadMe.md
for more details on installation and usage in other cases.
Import¶
Then import the required classes from dse_do_utils
:
from dse_do_utils import ScenarioManager, DataManager
This is the basics. For many ore details on other usage, see InstallationReadMe.md
Target environments¶
To be used within:
- CPDv2.1 (version <IP_ADDRESS> is preferred. But version <IP_ADDRESS> should be backwards compatible.)
- CPDv2.5 (version <IP_ADDRESS> and up)
- WSLv1.2.3 with Python 2.7 (version <IP_ADDRESS> only)
Requirements¶
This package requires:
- dd-scenario. This package provides an interface to the DO scenarios. This package is only available within WSL and ICPd. It cannot be pip installed in other environments.
- docplex. This package interfaces with the CPLEX and CP Optimizer optimization engines.
- folium. Map visualization. Only for the MapManager.


Match Play. Double Match Point. How should Red play 11?
pips Red=155 White=155
(CorrectAnswer= 0/0, ErrorScore= 0)
The hitting play bar/22*, 24/23 wins more gammons but that is irrelevant here. We are only concerned with game winning chances.
Making the 5-pt is correct with either 24/23 or 8/7 as the fourth ace. Taking the long-term asset, particularly with three White checkers trapped behind a growing prime, is the correct strategy here.
Making the 5-pt is correct with either 24/23 or 8/7 as the fourth ace. Taking the long-term asset, particularly with three White checkers trapped behind a growing prime, is the correct strategy here.
1. Cubeful 2-ply bar/24 8/7 6/5(2) Eq.: +0.335 0.667 0.248 0.017 - 0.333 0.117 0.011 2. Cubeful 2-ply bar/23 6/5(2) Eq.: +0.328 (-0.006) 0.664 0.240 0.016 - 0.336 0.124 0.006 3. Cubeful 2-ply bar/24 11/10 6/5(2) Eq.: +0.286 (-0.049) 0.643 0.233 0.015 - 0.357 0.118 0.008 4. Cubeful 2-ply bar/22* 24/23 Eq.: +0.175 (-0.160) 0.587 0.223 0.017 - 0.413 0.119 0.005 5. Cubeful 2-ply bar/22*/21 Eq.: +0.168 (-0.167) 0.584 0.245 0.022 - 0.416 0.115 0.006


Tutorials.
There are 4 tutorials of increasing complexity currently included in this document:
The Basic Tutorial shows how to make a simple static gamebook for printing or reading on a screen.
The Advanced Tutorial adds many formatting tricks to make more interesting gamebooks, but still only very static.
The Dynamic Tutorial finally explains how to add mark-up to your gamebooks to be make dynamic HTML gamebooks that can be played in a browser (while still work well if it is printed on paper or viewed in a simple ebook reader). Finally
The Customization Tutorial shows how to override the default templates to make small or big changes to how gamebooks are rendered. The tutorials do not cover all features of gamebookformat, so also have a look at the included examples and the
Reference section below to learn about all the things the tools can do.


I'm sorry for this sorry excuse of a "frontend"
Charts
Hour Aggregated
Day
Day Aggregated
Week
Week Aggregated
Month
Month Aggregated
Year


The routines described in this section of the MPI tool information interface specification focus on the ability to list, query, and possibly set control variables exposed by the MPI implementation. These variables can typically be used by the user to fine tune properties and configuration settings of the MPI implementation. On many systems, such variables can be set using environment variables, although other configuration mechanisms may be available, such as configuration files or central configuration registries. A typical example that is available in several existing MPI implementations is the ability to specify an ``eager limit,'' i.e., an upper bound on the size of messages sent or received using an eager protocol.
An MPI implementation exports a set of N control variables through the MPI tool information interface. If N is zero, then the MPI implementation does not export any control variables, otherwise the provided control variables are indexed from 0 to N-1. This index number is used in subsequent calls to identify the individual variables.
An MPI implementation is allowed to increase the number of control variables during the execution of an MPI application when new variables become available through dynamic loading. However, MPI implementations are not allowed to change the index of a control variable or to delete a variable once it has been added to the set. When a variable becomes inactive, e.g., through dynamic unloading, accessing its value should return a corresponding error code.
Advice to users.
While the MPI tool information interface guarantees that indices or variable properties do not change
during a particular run of an MPI program, it does not provide a similar
guarantee between runs.
( End of advice to users.)
The following function can be used to query the number of control
variables, num_cvar:
| MPI_T_CVAR_GET_NUM(num_cvar) | |
| OUT num_cvar | returns number of control variables (integer) |
int MPI_T_cvar_get_num(int *num_cvar)
The function MPI_T_CVAR_GET_INFO provides access to additional information for each variable.
| MPI_T_CVAR_GET_INFO(cvar_index, name, name_len, verbosity, datatype, enumtype, desc, desc_len, bind, scope) | |
| IN cvar_index | index of the control variable to be queried, value between 0 and num_cvar-1 (integer) |
| OUT name | buffer to return the string containing the name of the control variable (string) |
| INOUT name_len | length of the string and/or buffer for name (integer) |
| OUT verbosity | verbosity level of this variable (integer) |
| OUT datatype | MPI datatype of the information stored in the control variable (handle) |
| OUT enumtype | optional descriptor for enumeration information (handle) |
| OUT desc | buffer to return the string containing a description of the control variable (string) |
| INOUT desc_len | length of the string and/or buffer for desc (integer) |
| OUT bind | type of MPI object to which this variable must be bound (integer) |
| OUT scope | scope of when changes to this variable are possible (integer) |
int MPI_T_cvar_get_info(int cvar_index, char *name, int *name_len, int *verbosity, MPI_Datatype *datatype, MPI_T_enum *enumtype, char *desc, int *desc_len, int *bind, int *scope)
After a successful call to MPI_T_CVAR_GET_INFO for a particular variable, subsequent calls to this routine that query information about the same variable must return the same information. An MPI implementation is not allowed to alter any of the returned values.
If any OUT parameter to MPI_T_CVAR_GET_INFO is a NULL pointer, the implementation will ignore the parameter and not return a value for the parameter.
The arguments name and name_len are used to return the name of the control variable as described in Section Convention for Returning Strings .
If completed successfully, the routine is required to return a name of at least length one. The name must be unique with respect to all other names for control variables used by the MPI implementation.
The argument verbosity returns the verbosity level of the variable (see Section Verbosity Levels ).
The argument datatype returns the MPI datatype that is used to represent the control variable.
If the variable is of type MPI_INT, MPI can optionally specify an enumeration for the values represented by this variable and return it in enumtype. In this case, MPI returns an enumeration identifier, which can then be used to gather more information as described in Section Datatype System . Otherwise, enumtype is set to MPI_T_ENUM_NULL. If the datatype is not MPI_INT or the argument enumtype is the null pointer, no enumeration type is returned.
The arguments desc and desc_len are used to return a description of the control variable as described in Section Convention for Returning Strings .
Returning a description is optional. If an MPI implementation does not return a description, the first character for desc must be set to the null character and desc_len must be set to one at the return of this call.
The parameter bind returns the type of the MPI object to which the variable must be bound or the value MPI_T_BIND_NO_OBJECT (see Section Binding MPI Tool Information Interface Variables to MPI Objects ).
The scope of a variable determines whether changing a variable's value is either local to the process or must be done by the user across multiple processes. The latter is further split into variables that require changes in a group of processes and those that require collective changes among all connected processes. Both cases can require all processes either to be set to consistent (but potentially different) values or to equal values on every participating process. The description provided with the variable must contain an explanation about the requirements and/or restrictions for setting the particular variable.
On successful return from MPI_T_CVAR_GET_INFO, the argument scope will be set to one of the constants listed in Table 15 .
If the name of a control variable is equivalent across connected processes, the following OUT parameters must be identical: verbosity, datatype, enumtype, bind, and scope. The returned description must be equivalent.
| Scope Constant | Description |
| MPI_T_SCOPE_CONSTANT | read-only, value is constant |
| MPI_T_SCOPE_READONLY | read-only, cannot be written, but can change |
| MPI_T_SCOPE_LOCAL | may be writeable, writing is a local operation |
| MPI_T_SCOPE_GROUP | may be writeable, must be done to a group of processes, |
| all processes in a group must be set to consistent values | |
| MPI_T_SCOPE_GROUP_EQ | may be writeable, must be done to a group of processes, |
| all processes in a group must be set to the same value | |
| MPI_T_SCOPE_ALL | may be writeable, must be done to all processes, |
| all connected processes must be set to consistent values | |
| MPI_T_SCOPE_ALL_EQ | may be writeable, must be done to all processes, |
| all connected processes must be set to the same value | |
Advice to users.
The scope of a variable only indicates if a variable might be
changeable; it is not a guarantee that it can be changed at any time.
( End of advice to users.)
| MPI_T_CVAR_GET_INDEX(name, cvar_index) | |
| IN name | name of the control variable (string) |
| OUT cvar_index | index of the control variable (integer) |
int MPI_T_cvar_get_index(const char *name, int *cvar_index)
MPI_T_CVAR_GET_INDEX is a function for retrieving the index of a control variable given a known variable name. The name parameter is provided by the caller, and cvar_index is returned by the MPI implementation. The name parameter is a string terminated with a null character.
This routine returns MPI_SUCCESS on success and returns MPI_T_ERR_INVALID_NAME if name does not match the name of any control variable provided by the implementation at the time of the call.
Rationale.
This routine is provided to enable fast retrieval of control variables by a tool,
assuming it knows the name of the variable for which it is looking.
The number of variables exposed by the implementation can change over time,
so it is not possible for the tool to simply iterate over the list of variables
once at initialization. Although using MPI implementation specific variable
names is not portable across MPI implementations, tool developers may choose to
take this route for lower overhead at runtime because the tool will not have to
iterate over the entire set of variables to find a specific one.
( End of rationale.)
Example
The following example shows how the MPI tool information interface can be used to query and to print the names of all available control variables.
#include <stdio.h> #include <stdlib.h> #include <mpi.h> int main(int argc, char *argv[]) { int i, err, num, namelen, bind, verbose, scope; int threadsupport; char name[100]; MPI_Datatype datatype; err=MPI_T_init_thread(MPI_THREAD_SINGLE,&threadsupport); if (err!=MPI_SUCCESS) return err; err=MPI_T_cvar_get_num(&num); if (err!=MPI_SUCCESS) return err; for (i=0; i<num; i++) { namelen=100; err=MPI_T_cvar_get_info(i, name, &namelen, &verbose, &datatype, NULL, NULL, NULL, /*no description */ &bind, &scope); if (err!=MPI_SUCCESS || err!=MPI_T_ERR_INVALID_INDEX) return err; printf("Var %i: %s\n", i, name); } err=MPI_T_finalize(); if (err!=MPI_SUCCESS) return 1; else return 0; }
Before reading or writing the value of a variable, a user must first allocate a handle of type MPI_T_cvar_handle for the variable by binding it to an MPI object (see also Section Binding MPI Tool Information Interface Variables to MPI Objects ).
Rationale.
Handles used in the MPI tool information interface are distinct from handles used in the remaining parts of the MPI standard because they must be usable
before MPI_INIT and after
MPI_FINALIZE. Further, accessing
handles, in particular for performance variables, can be time critical
and having a separate handle space enables optimizations.
( End of rationale.)
| MPI_T_CVAR_HANDLE_ALLOC(cvar_index, obj_handle, handle, count) | |
| IN cvar_index | index of control variable for which handle is to be allocated (index) |
| IN obj_handle | reference to a handle of the MPI object to which this variable is supposed to be bound (pointer) |
| OUT handle | allocated handle (handle) |
| OUT count | number of elements used to represent this variable (integer) |
int MPI_T_cvar_handle_alloc(int cvar_index, void *obj_handle, MPI_T_cvar_handle *handle, int *count)
This routine binds the control variable specified by the argument index to an MPI object. The object is passed in the argument obj_handle as an address to a local variable that stores the object's handle. The argument obj_handle is ignored if the MPI_T_CVAR_GET_INFO call for this control variable returned MPI_T_BIND_NO_OBJECT in the argument bind. The handle allocated to reference the variable is returned in the argument handle. Upon successful return, count contains the number of elements (of the datatype returned by a previous MPI_T_CVAR_GET_INFO call) used to represent this variable.
Advice to users.
The count can be different based on the MPI object to which the control variable was bound. For example, variables bound to communicators could have a count that matches the size of the communicator.
It is not portable to pass references to predefined MPI object handles,
such as MPI_COMM_WORLD to this routine, since their
implementation depends on the MPI library. Instead, such object handles should
be stored in a local variable and the address of this local variable
should be passed into MPI_T_CVAR_HANDLE_ALLOC.
( End of advice to users.)
The value of cvar_index should
be in the range 0 to num_cvar-1, where num_cvar is the number of available control
variables as determined from a prior call to MPI_T_CVAR_GET_NUM.
The type of the MPI object it references must be consistent with the type
returned in the bind argument in a prior call to MPI_T_CVAR_GET_INFO.
| MPI_T_CVAR_HANDLE_FREE(handle) | |
| INOUT handle | handle to be freed (handle) |
int MPI_T_cvar_handle_free(MPI_T_cvar_handle *handle)
When a handle is no longer needed, a user of the MPI tool information interface should call MPI_T_CVAR_HANDLE_FREE to free the handle and the associated resources in the MPI implementation. On a successful return, MPI sets the handle to MPI_T_CVAR_HANDLE_NULL.
| MPI_T_CVAR_READ(handle, buf) | |
| IN handle | handle to the control variable to be read (handle) |
| OUT buf | initial address of storage location for variable value (choice) |
int MPI_T_cvar_read(MPI_T_cvar_handle handle, void* buf)
This routine queries the value of a control variable identified by the argument handle and stores the result in the buffer identified by the parameter buf. The user must ensure that the buffer is of the appropriate size to hold the entire value of the control variable (based on the returned datatype and count from prior corresponding calls to MPI_T_CVAR_GET_INFO and MPI_T_CVAR_HANDLE_ALLOC, respectively).
| MPI_T_CVAR_WRITE(handle, buf) | |
| IN handle | handle to the control variable to be written (handle) |
| IN buf | initial address of storage location for variable value (choice) |
int MPI_T_cvar_write(MPI_T_cvar_handle handle, const void* buf)
This routine sets the value of the control variable identified by the argument handle to the data stored in the buffer identified by the parameter buf. The user must ensure that the buffer is of the appropriate size to hold the entire value of the control variable (based on the returned datatype and count from prior corresponding calls to MPI_T_CVAR_GET_INFO and MPI_T_CVAR_HANDLE_ALLOC, respectively).
If the variable has a global scope (as returned by a prior corresponding MPI_T_CVAR_GET_INFO call), any write call to this variable must be issued by the user in all connected (as defined in Section Releasing Connections ) MPI processes. If the variable has group scope, any write call to this variable must be issued by the user in all MPI processes in the group, which must be described by the MPI implementation in the description by the MPI_T_CVAR_GET_INFO.
In both cases, the user must ensure that the writes in all processes are consistent. If the scope is either MPI_T_SCOPE_ALL_EQ or MPI_T_SCOPE_GROUP_EQ this means that the variable in all processes must be set to the same value.
If it is not possible to change the variable at the time the call is made, the function returns either MPI_T_ERR_CVAR_SET_NOT_NOW, if there may be a later time at which the variable could be set, or MPI_T_ERR_CVAR_SET_NEVER, if the variable cannot be set for the remainder of the application's execution.
Example
The following example shows a routine that can be used to query the value with a control variable with a given index. The example assumes that the variable is intended to be bound to an MPI communicator.
int getValue_int_comm(int index, MPI_Comm comm, int *val) { int err,count; MPI_T_cvar_handle handle; /* This example assumes that the variable index */ /* can be bound to a communicator */ err=MPI_T_cvar_handle_alloc(index,&comm,&handle,&count); if (err!=MPI_SUCCESS) return err; /* The following assumes that the variable is */ /* represented by a single integer */ err=MPI_T_cvar_read(handle,val); if (err!=MPI_SUCCESS) return err; err=MPI_T_cvar_handle_free(&handle); return err; }


What will you see during
the August 21st Eclipse?
Enter your zip code to see exactly what you will experience.
Excellent, you will have a great viewing experience! Here's what you can expect to see:
A thrilling collection of weird shadows on a piece paper
Eclipse enthusiasts looking directly into the sun with binoculars
People creating high quality #content
Hopefully some tailgating and pre-noon beer drinking
Dolphins coming ashore in coordinated manner
People shooting stock photos leading up to the 2024 eclipse
Actual Shutterstock caption: "Attractive blonde woman in white cocktail dress watching the solar eclipse in amazement with sunglasses while drinking champagne"
French electronic musicians from the mid-2000s
Basically this, maybe a little different depending on where you are


Alone-Illustration Book Cover Design: Right To Remain Silent Ticket Design: Angry Monkey Festival Day Pass Ticket Design: Angry Monkey Festival Night Pass


Before defining available slots you have to login as an admin. By clicking below button you will redirected to login page of admin there you login and then you will able to define slots.


Step 1
Contract Details
Party Name
Terms
You can either enter specific term dates or opt for a period triggered by an event
Renewal Conditions
Contract Termination Conditions
Title Selection & Price
You may choose to put the same distribution fee for all the titles or a specific to each one.
Distribution fee is calculated on 100% of the Gross Receipts excluding taxes,
that is to say all non-refundable revenues actually received and retained by Licensee from its
exploitation of the Rights in connection with eacht title.
Fees
Recoupable expenses
Payment Schedules
Please choose the payment schedules most adapted to your needs.
Pay attention, percentage is always the percentage of total amount


outline
At times, style sheet authors may want to create outlines around visual objects such as buttons, active form fields, image maps, etc., to make them stand out.
Outlines differ from borders in the following ways:
Outlines do not take up space.
Outlines may be non-rectangular.
UAs often render outlines on elements in the :focus state.
The outline properties control the style of these dynamic outlines.
The stacking of the rendering of these outlines is explicitly left up to implementations to provide a better user experience per platform.
This supersedes the stacking of outlines as defined in CSS 2.1.


Home
Book Meeting
Add Stylist
My Profile
Logout
Add Stylist
Enter new stylist's personal details
to create an acount
First Name *
Last Name *
Birthdate*
Location*
Canada
Province/Territory
Alberta
British Columbia
Manitoba
New Brunswick
Newfoundland/Labrador
Northwest Territories
Nova Scotia
Nunavut
Ontario
Prince Edward Island
Quebec
Saskatchewan
Yukon
City
Salon
Email*
A one-time password will be sent to stylist's email for first log in.


--- title: Dplyr Slides author: E.O. Davis date: '2020-06-30' slug: dplyr-slides categories: - rstats - xaringan tags: [] description: 'This is the dplyr-heavy bit of my introductory course on stats and data analysis. (Part I is currently being reworked and will be uploaded when it has been redone.)' ---
The slides for this course can be found here. Please let me know if you have comments or critiques. Huge thanks to Aleeza Gerstein for making her workshop in R for data analysis and visualization freely available, and to everyone on this Twitter thread for their very helpful suggestions and advice.


Installation¶
This Jupyter kernel for FriCAS is (hopefully) the final one of a series of attempts to provide a stable and easy maintainable application. The concept is rather simple, compared to the former kernels based on CL/ZeroMQ or pexpect:
|------------------| |---------------|
| webSPAD (WS) |<---|kernel.json|--->|requests (Py) |
| Hunchentoot (HT) | |fricaskernel.py|
| FriCAS (BOOT) | |Jupyter/IPython|<--->|Browser |
| Common Lisp (CL) | |Python3 | |Notebook |
|------------------| |---------------| |QtConsole|
Hunchentoot is a (well-known) webserver for Common Lisp while webSPAD
is a program (also in CL) providing the interface between FriCAS and
Hunchentoot. In other words, FriCAS acts like a webserver responding to GET and
POST requests. On the Python side these GET and POST requests are handled by the
requests
library inside the wrapper kernel fricaskernel.py
. To put it
in a nutshell, our new kernel essentially comprises three files which we have
to install:
- Kernel spec
kernel.json
- Wrapper Kernel
fricaskernel.py
- Web service
webspad.lisp
The whole trick is to put these files into the right places.
INSTALLATION INSTRUCTIONS
Appendix
Prerequisites¶
The only supported OS at the moment is GNU/Linux - Debian/Ubuntu.
For some other OS a docker image will be provided (soon).
We require a version of FriCAS which was compiled with a Common Lisp that supports multithreading and Hunchentoot. We recommend SBCL 1.4.5 or later.
Since Python 2.7 will not be maintained past 2020, we will concentrate on Python3 (https://pythonclock.org/) only. We recommend Python 3.6 or later. For instance:
$ sudo apt update
$ sudo apt install python3.6
Pip3 is also required (recommended version 9.0.1 or later):
$ sudo apt install python3-pip
In order to load Common Lisp programs we require ASDF (v3.3 or later):
$ sudo apt install cl-asdf
The Hunchentoot webserver (v1.2.35 or later) will be installed by:
$ sudo apt install cl-hunchentoot
It is hardly worth to mention, a web-browser is required as well. We strongly recommend the latest Firefox.
Installation using pip3¶
Regardless of whether you will use a virtual environment venv, this method should work as follows (assuming the prerequisites are satisfied):
Install Jupyter
and jfricas
from PyPI
by
$ pip3 install jupyter
$ pip3 install jfricas
$ python3 -m jfricas.install_kernel
The requests
library and the kernel.json
file will be installed
automatically by jfricas.
Installation from GitHub¶
$ pip3 install jupyter
$ git clone https://github.com/fricas/jfricas.git
$ cd jfricas
$ pip3 install .
$ python3 -m jfricas.install_kernel
or, install directly from the git
repository branch:
$ pip3 install jupyter
$ pip3 install -e git+https://github.com/fricas/jfricas.git@master#egg=jfricas
$ python3 -m jfricas.install_kernel
Manual installation¶
We recall that on Debian/Ubuntu pip3
will install packages locally, that is
the default is --user
. Thus, the method which we are going to describe here
is to install into $HOME/.local/...
folders.
First, we have to install jupyter
and requests
:
$ pip3 install jupyter
$ pip3 install requests
Second, you will have to get the Git repository (assuming ‘git’ is installed):
$ git clone https://github.com/fricas/jfricas.git
Then cd
to it:
$ cd ./jfricas
and perform the following bash commands:
$ jupyter kernelspec install ./jfricas/kspec --name='jfricas' --user
$ jupyter kernelspec list
### you should see 'jfricas' now.
# Search for the Python3 user site
$ PYUSRSITE=$(python3 -m site --user-site)
# Copy kernel and webspad
$ mkdir -p -v $PYUSRSITE/jfricas
$ cp -v ./jfricas/fricaskernel.py $PYUSRSITE/jfricas
$ cp -v ./jfricas/webspad.lisp $PYUSRSITE/jfricas
That is all.
The above commands (except the jupyter installation) are more or less
the content of the install.sh
file in the root directory of the Git
repository (./install.sh
from within the Git repo).
Virtual environments¶
The venv module provides support for creating lightweight virtual environments with their own site directories, optionally isolated from system site directories. Each virtual environment has its own Python binary (which matches the version of the binary that was used to create this environment) and can have its own independent set of installed Python packages in its site directories.
The pip3
install supports venv:
Example:
sudo apt-get install python3-venv
cd /tmp
python3 -m venv jfenv
source jfenv/bin/activate
which pip3
/tmp/jfenv/bin/pip3
pip3 install ...
Running the notebook¶
To start the notebook, type (anywhere):
$ jupyter notebook
A browser window should open where you can choose NEW->FriCAS
, then
after a while (first time some Lisp programs will be compiled, do not
worry) you may enter for instance: )version
, followed by Shift-RETURN
.
To leave the notebook you can enter (save it before!)
)quit
as usual, or choose (preferred)
Close and Halt
from the menu. After that (one or the other) the TAB
can be closed.
To quit completely (leaving jupyter), press the Quit
button on the
main Jupyter window.
Attaching a console¶
During a notebook session, a console can be attached to the running kernel by the command
$ jupyter qtconsole --existing
Of course, instead of a notebook at all, one may use consoles with the kernel:
$ jupyter qtconsole --kernel=jfricas
(or 'console' for the ordinary one, instead of 'qtconsole').
The QT
console also requires:
PyQt4 >= 4.7, PyQt5, PySide >= 1.0.3 or PySide2.
Note that this is not the same as the usual start console in FriCAS,
because all traffic will go through the kernel. If you want to have a
real console in parallel to Jupyter, you can configure this in the kernel
sources (attaching xterm or a gnome-terminal).
For details we refer to the section kernel configuration
in the main
documentation jfricas_docs.
Hyperdoc, Graphics, X11¶
The X11
programs hyperdoc and graphics (draw
) will work as usual, however,
the hyperdoc pop-up window has been disabled by default (-noht
). It is
possible to operate the web service without X
at all. For details we refer
to the section kernel configuration
in the main documentation jfricas_docs.
Uninstall¶
Depending on which method you have installed the kernel it can be completely removed easily either by
$ pip3 uninstall jfricas
$ jupyter kernelspec remove jfricas
or by using the bash script uninstall.sh
:
$ ./uninstall.sh
The commands may also be performed by hand:
# Remove kernel
jupyter kernelspec remove jfricas
jupyter kernelspec list
# Search for Python user site
PYUSRSITE=$(python3 -m site --user-site)
# Remove kernel and webspad
rm -v $PYUSRSITE/jfricas/fricaskernel.py
rm -v $PYUSRSITE/jfricas/webspad.lisp
rmdir -v --ignore-fail-on-non-empty $PYUSRSITE/jfricas
APPENDIX¶
Checking requirements¶
The following sequence of commands show how to check the presence and (if) the versions of the required programs:
echo ")version" | fricas -nosman
Value = "FriCAS 1.3.5 compiled at Sun Feb 3 18:21:59 UTC 2019"
echo ")lisp (lisp-implementation-type)" | fricas -nosman
Value = "SBCL", required: SBCL
echo ")lisp (lisp-implementation-version)" | fricas -nosman
Value = "1.4.5.debian", required: >= 1.2.6
python3 --version
Python 3.6.8, required: >= 3.3,
pip3 --version
pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.6))
pip3 show requests
Name: requests
Version: 2.22.0
Summary: Python HTTP for Humans.
Home-page: http://python-requests.org
Install: pip3 install requests
pip3 freeze (should show something like ...
ipykernel==4.8.2
ipython==6.4.0
ipython-genutils==0.2.0
ipywidgets==7.2.1
jsonschema==2.6.0
jupyter==1.0.0
jupyter-client==5.2.3
jupyter-console==5.2.0
jupyter-core==4.4.0
...
otherwise install jupyter with:
pip3 install jupyter
jupyter --version
4.4.0
apt list cl-asdf
cl-asdf/bionic,bionic,now 2:3.3.1-1 all [installed,automatic]
apt list cl-hunchentoot
cl-hunchentoot/bionic,bionic,now 1.2.35-1 all [installed]
cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.2 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.2 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
References¶
App / Versions, OS |
Min. ver. |
Tested |
OS/inst |
|---|---|---|---|
1.3.2 |
1.3.5 |
Deb/Ub (make) |
|
3.5 |
3.6 |
Deb/Ub (apt) |
|
9.0 |
9.0.1 |
apt |
|
4.4 |
4.4 |
pip3 |
|
2.22.0 |
2.22.0 |
pip3 |
|
3.3 |
3.3.1 |
Deb/Ub (apt) |
|
1.2.35 |
1.2.35 |
Deb/Ub (apt) |
Notes¶
If jupyter is already in use and
$ jupyter kernelspec list
shows ifricas as available kernel, then you have to remove it by
$ jupyter kernelspec remove ifricas
because it has been registered with the same kernel name: FriCAS. Alternatively you may edit kernel.json of jfricas to use another name instead.
*) ifricas was the name of the old LISP based kernel.
Do not use )quit
in consoles if you do not want to terminate the kernel.
Use <menu>/Quit
instead (this will close the terminal window only).
- Authors
Ralf Hemmecke, Kurt Pagani
(and sundry other good-natured folks)
- Version
0.2.16 of 2019/08/19


Having a full overview of one coder guy
-
srenault - Sebastien RENAULT
Paris
Scala guy
21 repositories
91 followers
-
srenault - Sebastien RENAULT
Paris
Scala guy
21 repositories
91 followers
-
srenault - Sebastien RENAULT
Paris
Scala guy
21 repositories
91 followers
-
srenault - Sebastien RENAULT
Paris
Scala guy
21 repositories
91 followers
Popular
-
srenault - Sebastien RENAULT
Web programmer working at @Zenexity. @HTML, @CSS, @Javascript and @Scala are become my day-to-day.
-
srenault - Sebastien RENAULT
Web programmer working at @Zenexity. @HTML, @CSS, @Javascript and @Scala are become my day-to-day.


|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Object org.apache.spark.streaming.scheduler.BatchInfo
public class BatchInfo
:: DeveloperApi :: Class having information on completed batches. param: batchTime Time of the batch param: streamIdToNumRecords A map of input stream id to record number param: submissionTime Clock time of when jobs of this batch was submitted to the streaming scheduler queue param: processingStartTime Clock time of when the first job of this batch started processing param: processingEndTime Clock time of when the last job of this batch finished processing
| Constructor Summary | |
|---|---|
BatchInfo(Time batchTime,
scala.collection.immutable.Map<Object,Object> streamIdToNumRecords,
long submissionTime,
scala.Option<Object> processingStartTime,
scala.Option<Object> processingEndTime)
|
| Method Summary | |
|---|---|
Time |
batchTime()
|
long |
numRecords()
The number of recorders received by the receivers in this batch. |
scala.Option<Object> |
processingDelay()
Time taken for the all jobs of this batch to finish processing from the time they started processing. |
scala.Option<Object> |
processingEndTime()
|
scala.Option<Object> |
processingStartTime()
|
scala.Option<Object> |
schedulingDelay()
Time taken for the first job of this batch to start processing from the time this batch was submitted to the streaming scheduler. |
scala.collection.immutable.Map<Object,Object> |
streamIdToNumRecords()
|
long |
submissionTime()
|
scala.Option<Object> |
totalDelay()
Time taken for all the jobs of this batch to finish processing from the time they were submitted. |
| Methods inherited from class Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface scala.Product |
|---|
productArity, productElement, productIterator, productPrefix |
| Methods inherited from interface scala.Equals |
|---|
canEqual, equals |
| Constructor Detail |
|---|
public BatchInfo(Time batchTime, scala.collection.immutable.Map<Object,Object> streamIdToNumRecords, long submissionTime, scala.Option<Object> processingStartTime, scala.Option<Object> processingEndTime)
| Method Detail |
|---|
public Time batchTime()
public scala.collection.immutable.Map<Object,Object> streamIdToNumRecords()
public long submissionTime()
public scala.Option<Object> processingStartTime()
public scala.Option<Object> processingEndTime()
public scala.Option<Object> schedulingDelay()
processingStartTime
- submissionTime
.
public scala.Option<Object> processingDelay()
processingEndTime
- processingStartTime
.
public scala.Option<Object> totalDelay()
processingDelay
+ schedulingDelay
.
public long numRecords()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |