Contents
User Guide¶
Introduction¶
Ikkuna is a framework for supervising the training of your PyTorch models. It is stupidly easy to use. It allows you to code your chosen metric once and then use it from any kind of model. It also comes with a few metrics out of the box.
The metrics which are ready to use are
- Training Accuracy
- Validation Accuracy
- Training loss
- Variance of gradients, weight updates, etc.
- p-Norm of gradients, weights, etc.
- Ratio between weight updates and weights, or other quantities
- Spectral norm of weights etc
- Histograms
- SVCCA layer saturation metric presented in my master thesis.
Installation¶
Prerequisites¶
This package requires you to have PyTorch 0.5 or newer installed. Unfortunately, the PyPI versions always lag behind, so you may have to compile PyTorch yourself. Don’t worry, it is a straightforward albeit somewhat time-consuming process.
Warning
If you install the torchvision
package after installing PyTorch from
source, it will overwrite your PyTorch installation with an older version.
So if you need it, install it from source as well or do it before
installing PyTorch. The issue has been reported here.
Installing the library¶
ikkuna
can then be installed with pip
pip install ikkuna
Alternatively, run
pip install git+https://github.com/Peltarion/ai_ikkuna.git#egg=ikkuna
or
git clone git@github.com:themightyoarfish/ikkuna.git
cd ikkuna/
python setup.py install # can use `pip install -e .` as well
to get the bleeding-edge version.
Reporting Issues¶
This project is under development and — by virtue of being a thesis project — probably unstable and bug-ridden. Therefore, expect to encounter issues. For reporting, please use the issue tracker.
Quickstart¶
Using the library is very simple. Assuming you have a PyTorch model given, like this ConvNet
class Net(torch.nn.Module):
'''Reduced AlexNet (basically just a few conv layers with relu and
max-pooling) which attempts to adapt to arbitrary input sizes, provided they are large enough to
survive the strides and conv cutoffs.
Attributes
---------
features : torch.nn.Module
Convolutional module, extracting features from the input
classifier : torch.nn.Module
Classifier with relu and dropout
H_out : int
Output height of the feature detector part
W_out : int
Output width of the feature detector part
'''
def __init__(self, input_shape, num_classes=1000):
super(Net, self).__init__()
# if channel dim not present, add 1
if len(input_shape) == 2:
input_shape.append(1)
H, W, C = input_shape
# couple o' convs, poolings, and relus
self.features = torch.nn.Sequential(
torch.nn.Conv2d(C, 64, kernel_size=5, stride=2, padding=1),
torch.nn.ReLU(inplace=True),
torch.nn.MaxPool2d(kernel_size=3, stride=2),
torch.nn.Conv2d(64, 192, kernel_size=3, padding=2),
torch.nn.ReLU(inplace=True),
torch.nn.MaxPool2d(kernel_size=3, stride=2),
torch.nn.Conv2d(192, 192, kernel_size=3, padding=1),
torch.nn.ReLU(inplace=True),
)
self.H_out = H // (2 * 2 * 2)
self.W_out = W // (2 * 2 * 2)
# linear classifier
self.classifier = torch.nn.Sequential(
torch.nn.Dropout(),
torch.nn.Linear(192 * self.H_out * self.W_out, 2048),
torch.nn.ReLU(inplace=True),
torch.nn.Dropout(),
torch.nn.Linear(2048, 2048),
torch.nn.ReLU(inplace=True),
torch.nn.Linear(2048, num_classes),
)
def forward(self, x):
x = self.features(x)
x = x.view(x.size(0), 192 * self.H_out * self.W_out)
x = self.classifier(x)
return x
For hooking this model up with the framework, you need only add three lines.
Add an
Exporter
object to the model, e.g. by passing it as a constructor parameterdef __init__(self, input_shape, exporter, num_classes=1000): # ...Inform the
Exporter
of the model:exporter.set_model(self)Inform the
Exporter
of which layers to track. You can pass it the entire model in which case it will track everything recursively, or pass it individual modules.exporter.add_modules(self) # alternatively, only track some layers exporter.add_modules(self.features)For convenience, the following also works
self.features = torch.nn.Sequential( exporter(torch.nn.Conv2d(C, 64, kernel_size=5, stride=2, padding=1)), torch.nn.ReLU(inplace=True), torch.nn.MaxPool2d(kernel_size=3, stride=2), exporter(torch.nn.Conv2d(64, 192, kernel_size=3, padding=2)), torch.nn.ReLU(inplace=True), torch.nn.MaxPool2d(kernel_size=3, stride=2), torch.nn.Conv2d(192, 192, kernel_size=3, padding=1), torch.nn.ReLU(inplace=True), )Add
Subscriber
s to the sameMessageBus
which theExporter
uses. They take certain parameters which you can look up in the documentation.# create a Subscriber which publishes the ratio between gradients # and weights (for each layer that has them) as a tensorboard scalar ratio_subscriber = RatioSubscriber(['gradients', 'weights_'], backend='tb') exporter.message_bus.register_subscriber(ratio_subscriber)
There are two optional steps
- You should call
epoch_finished()
whenever you’ve run through the training set once, at least if any of yourSubscriber
s rely on the'epoch_finished'
message or the epoch-local step counter.- You should inform the Exporter of the loss function in use by calling
set_loss()
, if any of yourSubscriber
s need access to the input labels or the final output of the network
Details¶
Ikkuna is a Publisher-Subscriber framework, which means that in this case, a
central authority publishes data from the training process and relays it to all
registered subscribers. This central authority is the
Exporter
class. Internally, it replaces some of the
Model’s methods with wrappers so it can be transparently informed of anything
interesting happening. It uses PyTorch hooks (see
torch.nn.Module.register_forward_hook()
and related methods) on the
Module
s it is tracking and the Tensor
s
inside.
Messages published from the Exporter
come in two types,
the NetworkMessage
for events which are not tied
to any specific module and ModuleMessage
for
those that are. All messages have a kind
attribute, which is the topic the message is about. For
NetworkMessage
s, the following kinds are
available:
'activations', 'layer_gradients'
}
'''Message kinds which are tied to a specific module and always carry data. These topics is just
what comes with the library, others can be added to a specific :class:`MessageBus`'''
Most of these topics do not come with any data attached, but for some, the
messages data
attribute will not be
None
, but contain Tensor
s.
For ModuleMessage
s, the following
kinds are available:
class Message(abc.ABC):
'''Base class for messages emitted from the :class:`~ikkuna.export.Exporter`.
These topics always come with data attached and it is an error to attempt
creating a ModuleMessage
without passing data.
Creating a new Subscriber¶
For adding your own metric, you must subclass
Subscriber
or the more specialised
PlotSubscriber
if the metric can be displayed
in a line plot. All you need to do is write an __init__
method and override
compute()
. Your initializer should
contain at least the following arguments:
def __init__(self, message_bus, kinds, tag=None, subsample=1, ylims=None, backend='tb'):
Their significance is:
kinds
: you’ll have to create aSubscription
object which represents the kind of connection to the Publishermessage_bus
: Theikkuna.export.messages.MessageBus
is the receiver and sender of all messages. You should pass this bus to the superclass initialiserkinds
: the kinds/topics of messages to receive. For now, refer to the source code forikkuna.export.messages
for a list of available topics.tag
: a tag can be used for filtering messages. I’m not sure what this would be useful for, but theSubscription
instance removes messages which do not have the correct tag.
For the other args, peruse the documentation of __init__()
A Subscription
object contains the
information about the topic, subsampling (maybe you want to process only every n-th
message) and tagging. Tags can be used to filter messages, but are currently
unused. A more specialised form is SynchronizedSubscription
.
This subscription takes care of synchronising topics, meaning if your Subscriber
needs several kinds of messages for each module at each time step, this class
takes care of only releasing the messages in bundles after all kinds have been
received for a module.
The Subscription
s will invoke the
Subscriber
s
compute()
method with either single
messages, if no synchronisation is used, or
MessageBundle
objects which contain the data
for one module and all desired kinds. As an example, consider the
RatioSubscriber
:
class RatioSubscriber(PlotSubscriber):
'''A :class:`~ikkuna.export.subscriber.Subscriber` which computes the average ratio between two
quantities. The dividend will be the first element of the
:attr:`~ikkuna.export.subscriber.Subscription.kinds` property, the divisor the second.
Therefore it is vital to pass the message kinds to the
:class:`~ikkuna.export.subscriber.Subscription` object in the correct order.'''
def __init__(self, kinds, message_bus=get_default_bus(), tag='default', subsample=1, ylims=None,
backend='tb', absolute=True):
'''
Parameters
----------
absolute : bool
Whether to use absolute ratio
'''
if len(kinds) != 2:
raise ValueError(f'RatioSubscriber requires 2 kinds, got {len(kinds)}.')
title = f'{kinds[0]}_{kinds[1]}_ratio'
ylabel = 'Ratio'
xlabel = 'Train step'
subscription = SynchronizedSubscription(self, kinds, tag=tag, subsample=subsample)
super().__init__([subscription],
message_bus,
{'title': title,
'ylabel': ylabel,
'ylims': ylims,
'xlabel': xlabel},
backend=backend)
if absolute:
self._metric_postprocess = torch.abs
else:
self._metric_postprocess = lambda x: x
self._add_publication(f'{kinds[0]}_{kinds[1]}_ratio', type='DATA')
def compute(self, message_bundle):
'''The ratio between the two kinds is computed as the ratio of L2-Norms of the two Tensors.
A :class:`~ikkuna.export.messages.ModuleMessage` with the identifier
``{kind1}_{kind2}_ratio`` is published.'''
module, module_name = message_bundle.key
dividend = message_bundle.data[message_bundle.kinds[0]]
divisor = message_bundle.data[message_bundle.kinds[1]]
scale1 = dividend.norm()
scale2 = divisor.norm()
ratio = (scale1 / scale2).item()
self._backend.add_data(module_name, ratio, message_bundle.global_step)
kind = f'{message_bundle.kinds[0]}_{message_bundle.kinds[1]}_ratio'
self.message_bus.publish_module_message(message_bundle.global_step,
As you can see, the Subscriber
initialiser
takes a plot_config
dictionary to pass along some information to the
visualisation backend. If your subscriber in turn publishes further messages,
you can use the _add_publication()
method to announce it to the world.
Installing the Subscriber¶
If you want your newly defined class to be accessible throughout the current
Python environment (system-wide, user, conda, virtualenv, whatever), you need to
create a new project with a setup.py
file like this
#!/usr/bin/env python
from distutils.core import setup
import setuptools
setup(name='<your package name>',
version='<version>',
description='<description>',
author='<your name',
author_email='<your email>',
packages=['<package name>'],
# ... any other args
entry_points={
'ikkuna.export.subscriber': [
'YourSubscriber = module.file:YourSubscriber',
]
})
If you then run python setup.py install
, you will be able to import
YourSubscriber
through ikkuna.export.subscriber
as if it had been
shipped with the library.


You can purchase up to {{vm.customer.dailyLimitRemaining | currency : '€ ' : 2}} today, and up to {{vm.customer.monthlyLimitRemaining | currency : '€ ' : 2}} this month.
Your account verification was rejected.
In order to purchase Bitcoin Cash, you are required to provide some personal information.


01. Write an if statement that examines two integer variables and exchanges their values if the first one is greater than the second one.
The result is printed on the JS console...


This project will develop novel connectome models to visualize and predict seizure propagation patterns in patients with drug-resistant epilepsy. Building upon seminal neuroanatomical studies in non-human primates and recent work carried out by our team, we propose a more comprehensive and veridical model of the structural wiring scheme that incorporates features of spatial proximity, microstructural similarity, and white matter connectivity. Our premise is that cortico-cortical connectivity is not fully captured by tractographic analysis of diffusion-weighted magnetic resonance imaging (MRI), the prevailing method to infer structural connections in vivo. Instead, we will build upon our recently developed approach that integrates connectivity information across several dimensions of cortical wiring (i.e., microstructural similarity, spatial proximity, advanced diffusion MRI models). The proposed wiring scheme is in closer conceptual contact to known principles of cortical organization and connectivity than conventional models. Preliminary data shown in this grant support that more comprehensive models of structural wiring markedly improve the prediction of functional dynamics and connectivity in healthy individuals. We will systematically translate these models to patients with drug-resistant focal epilepsy who underwent intracranial EEG (iEEG) implantations in addition to multimodal MRI, and visualize individualized pathways of typical and atypical functional interactions. Our new approach will lead to improved simulations of patterns of seizure spread and their visualization in a new computational platform, better surgical target definition, and ultimately improved outcomes after surgical and neuromodulatory interventions.
MICROSTRUCTURAL PROFILE COVARIANCEPrior studies in non-human primates and other species have demonstrated that microstructural similarity is the most important predictor of inter-areal connectivity (the “structural model of connectivity”). To leverage these insights for in vivo connectivity modelling, the PIs team developed and validated a new approach to derive cortico-cortical networks from similarity cortical microstructure profiles (i.e., snapshots of cellular layering in cortical areas, derived from myelin-sensitive MRI). These findings suggest that microstructural similarity may predict existing functional connections between areas and boost connectome-informed simulations. |
GEODESIC DISTANCEThis feature captures the spatial proximity between areas and serves as a proxy of intracortical horizontal connectivity between adjacent regions. In the context of seizure spread, intracortical propagation of activity has long been recognized, and is thought to be a key driver of seizure evolution but also of potential mechanisms that could relate to seizure termination and modulation. |
ADVANCED TRACTORGAPHYAdvances in diffusion MRI acquisition and modelling improve validity of tractographic reconstructions compared to “tensor” analysis of standard sequences. These include the use of multi-shell diffusion acquisitions with high angular and spatial resolutions and to harness spherical deconvolution techniques that provide a more accurate modeling of crossing fibers (present in >80% of white matter). Additional advances in tractographic algorithms, including the use of anatomically constrained tractography and fiber tracking from the cortical interface, reduce tracking uncertainty and false positives. In epilepsy neuroimaging, diffusion acquisitions have so far remained rather standard in most of the published literature, often limited to 30-60 directions, and models were generally restricted to the tensor (with only very few exceptions). Better acquisitions and biologically more meaningful models of diffusivity are expected to more accurately estimate white matter connectivity. |
This project is being developed by the Multimodal Imaging and Connectome Analysis (MICA) Lab and collaborators at the Montreal Neurological Institute. Our core developers are:
|
Oualid Benkarim, PhD Postdoctoral Researcher Visualization and Webinterface Programming email |
||
|
Casey Paquola, PhD Postdoctoral Researcher Network modeling email |
||
|
Boris Bernhardt, PhD Assistant Professor of Neurology and Neurosurgery Killam Scholar Principal investigator email |


| Package | Description |
|---|---|
| edu.cmu.sphinx.linguist.acoustic |
Provides classes that represent the acoustic model.
|
| edu.cmu.sphinx.linguist.acoustic.tiedstate |
Provides classes that represent acoustic model in terms of a set of
tied states.
|
| edu.cmu.sphinx.linguist.acoustic.trivial |
Provides classes that represent a trivial acoustic model.
|
| edu.cmu.sphinx.linguist.flat |
Provides an implementation of the
Linguist that
statically represents the search space as a flat graph, where each
word in the vocabulary has its own branch. |
| Modifier and Type | Method and Description |
|---|---|
HMMPosition |
HMM.getPosition()
Retrieves the position of this HMM.
|
static HMMPosition |
HMMPosition.lookup(String rep)
Looks up an HMMPosition based upon its representation
|
static HMMPosition |
HMMPosition.valueOf(String name)
Returns the enum constant of this type with the specified name.
|
static HMMPosition[] |
HMMPosition.values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
| Modifier and Type | Method and Description |
|---|---|
HMM |
HMMPool.getHMM(int unitID,
HMMPosition position)
Given a unit id and a position, return the HMM associated with the
unit/position.
|
HMM |
HMMPool.getHMM(Unit base,
Unit lc,
Unit rc,
HMMPosition pos)
Retrieves an HMM for a unit in context.
|
HMM |
AcousticModel.lookupNearestHMM(Unit unit,
HMMPosition position,
boolean exactMatch)
Given a unit, returns the HMM that best matches the given unit.
|
| Modifier and Type | Method and Description |
|---|---|
HMMPosition |
SenoneHMM.getPosition()
Retrieves the position of this HMM.
|
| Modifier and Type | Method and Description |
|---|---|
HMM |
LazyHmmManager.get(HMMPosition position,
Unit unit) |
HMM |
HMMManager.get(HMMPosition position,
Unit unit)
Retrieves an HMM by position and unit
|
SenoneSequence |
TiedStateAcousticModel.getCompositeSenoneSequence(Unit unit,
HMMPosition position)
Get a composite senone sequence given the unit.
|
HMM |
TiedStateAcousticModel.lookupNearestHMM(Unit unit,
HMMPosition position,
boolean exactMatch)
Given a unit, returns the HMM that best matches the given unit.
|
| Constructor and Description |
|---|
SenoneHMM(Unit unit,
SenoneSequence senoneSequence,
float[][] transitionMatrix,
HMMPosition position)
Constructs an HMM
|
| Modifier and Type | Method and Description |
|---|---|
HMM |
TrivialAcousticModel.lookupNearestHMM(Unit unit,
HMMPosition position,
boolean exactMatch)
Given a unit, returns the HMM that best matches the given unit.
|
| Modifier and Type | Method and Description |
|---|---|
HMMPosition |
UnitState.getPosition()
Gets the position for this unit
|
| Constructor and Description |
|---|
UnitState(Unit unit,
HMMPosition position)
Creates a UnitState with the given unit and HMM position.
|
Copyright © 2017. All rights reserved.


How we do it?
We provide our traders with a wide range of trading instruments, outstanding terms of trade, extensive educational program, as well as
best platforms, various types of accounts, tailored to our Clients' individual demands, proven innovative technologies, and useful
educational resources.
We have created a convenient service format, which includes the most wanted financial products and helps to gain matchless trading
experience in the international currency market and the leading markets of securities.
We hold various contests to help our Clients to expand their experience, but also to earn real cash awards.


For security reasons, you should update it to a newer version.
Google Chrome
Mozilla Firefox
Internet Explorer


{% block content %}{% endblock %}
---
{% block unsubscribe %} {% if unsubscribe_url %}
Click here
if you don't want to hear from us again.
{% endif %} {% endblock %}


English Patient Intake Form
Personal Information:
First Name:
Last Name:
Email:
Phone Number:
Date of Birth:
Age:
Height:
Weight:
Gender:
Male
Female
Do you currently have insurance?:
Occupation Status
Check your current occupational status
Full Time
Part-Time
Student
Retired
Not employed
Occupation:
Occupation Requirements:(check all that apply)
Repetitive Motions
Walking
Lifting
Kneeling
Sitting
Standing
Carrying
Other
If other, please explain:
Symptoms/Pain:
Why do you seek physical therapy?
When did your symptoms start? (Month and Year)
Was there an injury?
Yes
No
Were you referred to physical therapy?
Yes
No
If yes, who referred you to physical therapy?
Have you had prior treatement for your current symptoms?
Yes
No
If yes, when was your last visit?
Are your symptoms
Getting worse
Getting Better
Staying the Same
Which activities are limited by your symptoms?
Standing
Walking
Working
Sleeping
Lifting
Sitting
Exercise
Housework
Other
If other, please explain:
Does anything improve your symptoms?
Check the box if you have had any recent testing
MRI
CT
X-ray
Other
If other, please describe:
What are your primary complaints?
Stiffness
Muscle Spasm
Instability
Weakness
Numbness
Swelling
Pain
Poor Balance
Other
If other, please explain:
Have you ever had surgery?
Yes
No
If yes, please describe:
Current Complaints:
What is your pain level
At Worst:
At Best:
Right Now:
Please mark the location of your sxs:
Is your pain worse at a certain time of day? Yes
No
If yes, Morning
Night
As day progresses
Other
If other, explain:
What words best describe your pain?
Sharp
Throbbing
Aching
Burning
Deep
Stinging
Constant
Comes and Goes
Other
If other, please explain:
Medical/Surgical History:
(Check if you have the following conditions)
Cardipulmonary:
High Blood Pressure
Heart Disease
Smoking - How many packs/day?
<1
1
2
3
4
5
6+
History of Stroke?
High Cholesterol
Anemia
Bleeding Disorder
None
Neuromuscular/Musculoskeletal:
Severe Headaches
Cervical Spine Disorder
Lumbar Spine Disorder
Osteoporosis
Pregnant - # of weeks?
Fracture
Nerve injury
Endocrine/Other:
Diabetes
Alcohol or drug abuse
Depression
Kidney Disease
Thyroid Disease
Stomach/Bowel Disease
Mental Health
Medications: (list all)
Medication Allergies:
What would you like to accomplish with physical therapy?
How do you prefer to get physical therapy information?
Written
Verbal
Demonstration
Additional Comments:
I understand that I have the right to terminate any or all parts of my evaluation at any time and that I am responsible for notifying my evaluator of any and and all changes in my symptoms as they occur. I acknowledge that all information provided on this evaluation is accurate and completed to the best of my abilities.
-->


Given a sorted array and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order.
You may assume no duplicates in the array.
Example 1:
Input: [1,3,5,6], 5
Output: 2
Example 2:
Input: [1,3,5,6], 2
Output: 1
Example 3:
Input: [1,3,5,6], 7
Output: 4
Example 4:
Input: [1,3,5,6], 0
Output: 0
Same as simple binary search except it returns the start index when does not find a match.
/**
* @param {number[]} nums
* @param {number} target
* @return {number}
*/
var searchInsert = function(nums, target) {
let s = 0
let e = nums.length - 1
while (s <= e) {
const p = (s + e) / 2 | 0
const diff = nums[p] - target
if (diff === 0) {
return p
} else if (diff < 0) {
s = p + 1
} else {
e = p - 1
}
}
return s
};
Template generated via Leetmark.


Welcome to GeeKee CeeBee's Page: House of Mechatronics Projects & Lessons.
Contact Email<EMAIL_ADDRESS>Follow me on Youtube
__________________________________________________________________________________________________________________________________
Anti-Backlash Dual Encoder Motor Position Control
Step by step practical guide to Anti-backlash position tracking control of a DC motor + gearhead with backlash using Arduino Mega.
Dual encoder multi-loop control model for more accurate motor position control.
Write PID code from scratch (w/o using pre-written library) for backlash compensation.
Demonstrate the use of rotary encoders, rotary potentiometer, L298n motor driver, interrupt service routine, multi-loop motor control algorithm.
Disclaimer: The code and other information on this project are provided on "AS IS" basis with no warranty. Please follow best practices and assess
your own potential risks for this project.
Components List
Arduino Mega ( No Uno/Nano: Need 4 ISR pins) (Affiliate Link)
In this video, we will perform position control of a motor with gearhead that has backlash.
We will use a dual encoder approach to reduce mechanical backlash for more accurate position control.
Control Diagram
We will start with just the motor which is our system. With given voltage, Motor will start to rotate, but to measure the angle of the motor shaft we read the backend encoder of the motor.
And figure out the error in our system. To correct this error, we add a PID controller.Now to correct position error caused by the backlash, add 2nd encoder feedback to our system.
Simply add a Proportional controller to compensate for the backlash error.
This is called a dual loop control model. Where inner loop runs 5 times faster than the outer loop.
Wiring Diagram
Below is the wiring diagram for the components used in this project.
Pin 2 and 3 are used for back encoder ISR and pin 18 and 19 are used for front encoder ISR. Analog pin A0 is used for rotary potentiometer input which generates reference signal for this system.
Pin6 is the PWM pin to control the amount of voltage sent
to the motor driver. Pin7 and 8 are used to change motor direction by changing the polarity of the supply voltage with the help of
L298n h-bridge motor driver. Please check power supply rating of you motor and accordingly select a power supply for your project.
Make sure there's a common ground (not earth ground) between the motor driver, arduino and external power supply.


Resources
Below is a quick list of resources that are available to you or your family.
PTSD
https://www.ptsd.va.gov/public/treatment/therapy-med/finding-a-therapist.asp
http://www.operationwearehere.com/PTSD.html
https://www.woundedwarriorproject.org/programs/combat-stress-recovery-program
MST
https://www.mentalhealth.va.gov/msthome.asp
https://www.woundedwarriorproject.org/mst-resources
https://www.rainn.org/about-national-sexual-assault-telephone-hotline
TBI
http://www.operationwearehere.com/TBI.html
http://www.military.com/benefits/veterans-health-care/tbi-resources.html
http://www.militaryonesource.mil/footer?content_id=287825
Depression and Suicide Prevention
https://www.veteranscrisisline.net/Resources/AdditionalInformation.aspx
http://stopsoldiersuicide.org/
http://www.militaryonesource.mil/health-and-wellness/prevention-care?content_id=282355


| Born | 11.12.1992 |
|---|---|
| Zodiac sign | Saggitarius |
| City | Dnipropetrovsk |
I'm a beginner front end developer, involved in sphere of development for 3 months, but really love it. Have skills in HTML, CSS, SASS, PSD. I intend to learn JavaScript in the nearest future (it's already on my schedule). Currently work at PrivatBank, on my leisure I like to travel, learn languages and do sports.


World Wide Web (WWW) is a collection of HTML documents and HTML is what glues the web together. The web was invented in 1990 as has over 30 billion pages.
Main componets of the WWWHTML (Hypertext Markup Language) documents form the majority of the content on the web. HTML documents contain text, markup (arrangement/look), references and links. HTML documents are made of HTML elements and the tags tell the browser which element is being used.


NVAPI Reference Documentation
|
|
Release 343: September 30
|
#include <nvapi.h>
| union { ... } |
| union { ... } |
Accessing current Binary value of this setting. Must be allocated by caller with valueLength specifying buffer size, or only valueLength will be filled in.
Accessing default Binary value of this setting. Must be allocated by caller with valueLength specifying buffer size, or only valueLength will be filled in.
It is different than 0 if the currentValue is a predefined Value, 0 if the currentValue is a user value.
It is different than 0 if the PredefinedValue union contains a valid value.
32 bit setting Id
Describes where the value in CurrentValue comes from.
String name of setting.
Type of setting value.
Accessing current DWORD value of this setting.
Accessing default DWORD value of this setting.
Structure Version.
Accessing current unicode string value of this setting.
Accessing default unicode string value of this setting.


Robotic Arts Intro Fall 2017 (IA277.01)
- Instructor: Lucas Haroldsen<EMAIL_ADDRESS>- Class Site: yasunaga.work/raif17
- syllabus: syllabus.pdf
- Resources: links.html
11/28: [work session & prototyping]
Project 2 : Workday!
Today is dedicated to getting things moving. Let's get your ideas take shape.
Here is today's plan:
- Craft -- Organizing towards Finished project
- Work!
- Look at Prototypes
Reminder for the schedule
- 11/28 prototypes and studies due by the end of the class
- 12/12 Project due / presentation
- 12/15 Documentation due
Craft -- Organizing towards Finished project
Software
- How to merge or combine code
- Copy one sketch to another sketch or create new sketch
- Resolve any duplicating functions or global variables
- (Functions: void loop(), void setup()
- Variables: int, float)
- Resolve any duplicating pin use
- Delete any duplicate part that is doing the same thing
- Comment your code!
- Write out what you want your code to do
- State Change Detection
- SwitchCase
- Random_behavior
Hardware
- Wiring: Use connectors, terminals, headers to make your project easily assemble, disassemble or repair
- Enclose or not!: Make or get enclusure if you need them to securely cover electronics. Consider visual language in your project. Body of electronics has an aesthetic and it contributes to experience of your work
Adachi Tomomi
Peter Blasser
Benjamin Gaulon
useless machines
- Vacuform: You can make forms with plastic sheets you can get at the MICA store
(talk to Tim Devoe at the Fabrication Shop) - Various shape and size of enclosures
- Vacuform: You can make forms with plastic sheets you can get at the MICA store
- Get extra parts: You never know when your project breaks! Always have back up parts
- Circuit boards: Replace your breadboard circuit with more substantial perforated boards or PCB boards
- Carving PCB: first method we tried
- Manhattan style: popular style in ham radio context
- Freeform free style
- perforated board: Common electronic prototyping method. We have a bunch of them for the class
- PCB milling: proceed to next section for detail
- Powering Arduino --- extensive article here
- Power Adapter: you can use cellphone chargers or computer chargers between 9V and 12V DC and rated for more than 250mA (2.1mm plug, center pin positive)
- Battery: battery pack with 2.1mm plug can be found in the MICA store. You can use 9V battery to power arduino with 2.1mm plug or Vin pin
- Rechargeable Batteries: here or here
PCB milling
We can make our own circuit board and not have to carve it ourselves!
In the IA department, we have this Bantam Tools Desktop PCB Milling Machine
When you are making file, consider:
- engraving is going to be top or bottom of the board
- size of parts and properties
- Make sure all traces are not touching or overlapping
- All traces must be on the same side of the board
3D printing and modeling
3D printers
We have three 3D printers in house! Let me know if you have a file you want to print during the class. I can print them and go over how to use the printers.
3D modeling software
- OpenSCAD: Free code based 3D modeling software. Great if you are good at coding
Basic Tutorials - Rhinoceros 3D: Popular paid 3D modeling software that cost ~$200 for students. Installed on computers on the 4th floor computer LAB.
Tutorials at Lynda.com through your MICA portal - TINKERCAD :Free basic online 3D modeling software
- Netfabb: Free software for cleaning your 3D models
Tutorial on how to fix and repair 3D models using Netfabb or Meshlab
Contents
behavior and presence
The simple brain
Qoobo by Yukai Engineeing
Reference Flow by Rafael Lozano-Hemmer
wag by maya + rouvelle
Body
Tape Recorders by Rafael Lozano-Hemmer
My little piece of privacy by Niklas Roy
Cloaca by Wim Delvoye
AbstracTris by Benjamin Gaulon


Marathon 🏃♀
Marathon runner system for vanilla JavaScript
Marathon aims to simplify web JavaScript development thanks to separation of concern and a reducer-like single entry point. This eases the development of isolated, pure components (provided they are coded this way) and enables a basic, HTTP multi-page website to be turned into a single-page application with the use of libraries such as Swup, Barba.js, InstantClick, Turbolinks and others, with very minimal code change.
Install
yarn install @mashvp/marathon
Usage
A Marathon application is composed of one or several runners, which are isolated units of code that should handle a single feature of your application.
Runners are pure functions, which must return an object containing a register
and unregister
function.
These functions are used in place of a constructor and destructor, in order to enable and disable the runner's features as required.
Runners should not depend on each-other, and should handle an isolated state. You can implement message passing between runners using a library such as PubSub. Generally speaking, runners should never be tightly coupled.
Runners can be joined together into a root runner, forming a tree structured application.
Basic runner
A basic runner can be created with the createRunner
function.
import { createRunner } from '@mashvp/marathon';
// Runners are allowed to use external libraries
import SomeLibrary from 'some-library';
export default createRunner('MyRunner', ({ /* globals here */ }, { /* Builtins here */ }) => {
const libraryInstance = new SomeLibrary();
const register = () => {
console.log('MyRunner was registered');
libraryInstance.run();
};
const unregister = () => {
console.log('MyRunner was unregistered');
libraryInstance.stop();
};
return { register, unregister };
});
In the example above, the runner will log a message to the console when the application loads, and log another one when the application unloads. The runner also sets up an instance of an imaginary library, and starts and stops it when relevant.
Please note that the unregister
function is not required if it does not need to perform any action.
Combined runner
You can use a combined runner to join together runners which handle similar features to simplify your application structure. The createCombinedRunner
returns a runner which forwards calls to register
and unregister
to its children.
import { createCombinedRunner } from '@mashvp/marathon';
import SomeRunner from './some-runner';
import OtherRunner from './other-runner';
export default createCombinedRunner(SomeRunner, OtherRunner);
Scoped runners
Scoped runners are useful for implementing component-like features. For example, a modal system which could be found in multiple places in the website could be handled with a scoped runner. The createScopedRunner
takes in a selector or list of elements along with the definition of the runner, creates a runner for each element, and returns of combined runner of them.
<button class="alert-button" data-text="This is the alert text">Click me</button>
<button class="alert-button" data-text="This is another alert">No, click me instead!</button>
import { createScopedRunner } from '@mashvp/marathon';
const alertButton = createScopedRunner(
'AlertButton',
'.alert-button',
({ scope }, { bind }) => {
const register = () => {
const text = scope.getAttribute('data-text');
// Use the `bind` builtin to add event listeners to elements.
// The listeners will be automatically unbound when the runner is unregistered.
bind(scope, 'click', () => {
alert(text);
});
};
return { register };
}
);
Root runner
The root runner can be thought of as your application itself. It works much like a combined runner, except that it returns a runner instance which is ready to be used as is. The combineRoot
function takes in your application runners the same way createCombinedRunner
does.
You can then use the register
function on your root runner to start the application, passing in any globals as required.
import { combineRoot } from '@mashvp/marathon';
import Bowser from 'bowser';
import SomeRunner from './runners/some-runner';
import OtherRunner from './runners/other-runner';
import MobileRunners from './runners/mobile';
(() => {
const browser = Bowser.getParser(window.navigator.userAgent);
const rootRunner = combineRoot(SomeRunner, OtherRunner, MobileRunners);
const init = () => {
// Start the root runner on DOMContentLoaded, passing in browser info to the children
rootRunner.register({ browser });
};
document.addEventListener('DOMContentLoaded', init);
})();
This structure allows to easily swap in a single-page AJAX library, such as Swup, and make sure that no stray event listeners and such are still in place when transitioning between pages.
import { combineRoot } from '@mashvp/marathon';
import Swup from 'swup';
import Bowser from 'bowser';
import SomeRunner from './runners/some-runner';
import OtherRunner from './runners/other-runner';
import MobileRunners from './runners/mobile';
(() => {
const swup = new Swup(/* ... */);
const browser = Bowser.getParser(window.navigator.userAgent);
const rootRunner = combineRoot(SomeRunner, OtherRunner, MobileRunners);
const init = () => {
// Start the root runner on Swup contentReplaced, passing in browser info to the children
rootRunner.register({ browser });
};
const unload = () => {
// Stop and clear all runners before Swup page change
rootRunner.unregister();
};
swup.on('contentReplaced', init);
swup.on('willReplaceContent', unload);
})();
Builtins
Marathon provides runners with a few builtin functions, which simplify handling event listeners between register
and unregister
calls.
bind
This function works just like addEventListener
, but listeners are cleared automatically when the runner unregisters.
import { createRunner } from '@mashvp/marathon';
export default createRunner('ExampleRunner', ({ /* globals */ }, { bind }) => {
const register = () => {
const button = document.querySelector('button.example-runner');
bind(button, 'click', () => {
alert('The button was clicked');
});
};
// No `unregister` is needed here since `bind` clears the event listener automatically
return { register };
});
unbind
This function works just like removeEventListener
, but you don't need to give a reference to the original handler, since they are memorized.
Please note that unbind
will remove all event listeners of a given type on an element.
unbind(element, eventType);
unbindAll
This function will unbind all events that were bound using bind
on a given element.
unbindAll(element);
Author
👤 Mashvp
- Website: mashvp.com
- Twitter: @mashvp
- Github: @mashvp
- LinkedIn: @mashvp
Show your support
Give a ⭐ if this project helped you!


For a given function \(g(n)\), we denote by \(\Theta(g(n))\) the set of function:
\[\Theta(g(n))=\{f(n):\text{ there exist positive constants }\} c_1,c_2\text{ and }n_0\text{ such that }0\leq c_1g(n)\leq f(n)\leq c_2g(n)\text{ for all } n\geq n_0.\]
Because \(\Theta(g(n))\) is a set, we could write "\(f(n)\in\Theta(g(n))\)" to indicate that \(f(n)\) is a member of \(\Theta(g(n))\). Instead, we will usually write "\(f(n)=\Theta(g(n))\)" to express the same notion.
When we have only an asymptotic upper bound, we use O-notation. For a given function \(g(n)\), we denote by O\(g(n)\) teh set of functions:
\[O(g(n))=\{f(n): \text{ there exit positive constants } c \text{ and } n_0 \text{ such that } 0\leq f(n)\leq cg(n)\text{ for all } n\geq n_0\}.\]
We write \(f(n)=O(g(n))\) to indicate that a function \(f(n)\) is a member of the set O(\(g(n)\)). Note that \(f(n)=\Theta(g(n))\), since \(\Theta\)-notation is a stronger notion than O-notation.
\(\Omega\)-notation provides an asymptotic lower bound. For a given function \(g(n)\), we denote by \(\Omega(g(n))\) the set of functions:
\[\Omega(g(n))=\{f(n):\text{ there exist positive constants } c \text{ and } n_0 \text{ such that } 0\leq cg(n)\leq f(n)\text{ for all } n\geq n_0\}.\]


| spark.kstest {SparkR} | R Documentation |
spark.kstest
Conduct the two-sided Kolmogorov-Smirnov (KS) test for data sampled from a
continuous distribution.
By comparing the largest difference between the empirical cumulative distribution of the sample data and the theoretical distribution we can provide a test for the the null hypothesis that the sample data comes from that theoretical distribution.
Users can call summary
to obtain a summary of the test, and print.summary.KSTest
to print out a summary result.
spark.kstest(data, ...) ## S4 method for signature 'SparkDataFrame' spark.kstest( data, testCol = "test", nullHypothesis = c("norm"), distParams = c(0, 1) ) ## S4 method for signature 'KSTest' summary(object) ## S3 method for class 'summary.KSTest' print(x, ...)
data |
a SparkDataFrame of user data. |
... |
additional argument(s) passed to the method. |
testCol |
column name where the test data is from. It should be a column of double type. |
nullHypothesis |
name of the theoretical distribution tested against. Currently only
|
distParams |
parameters(s) of the distribution. For |
object |
test result object of KSTest by |
x |
summary object of KSTest returned by |
spark.kstest
returns a test result object.
summary
returns summary information of KSTest object, which is a list.
The list includes the p.value
(p-value), statistic
(test statistic
computed for the test), nullHypothesis
(the null hypothesis with its
parameters tested against) and degreesOfFreedom
(degrees of freedom of the test).
spark.kstest since 2.1.0
summary(KSTest) since 2.1.0
print.summary.KSTest since 2.1.0
## Not run:
##D data <- data.frame(test = c(0.1, 0.15, 0.2, 0.3, 0.25))
##D df <- createDataFrame(data)
##D test <- spark.kstest(df, "test", "norm", c(0, 1))
##D
##D # get a summary of the test result
##D testSummary <- summary(test)
##D testSummary
##D
##D # print out the summary in an organized way
##D print.summary.KSTest(testSummary)
## End(Not run)


Open Source Releases from SmartThings Developers
Each element in the growing SmartThings ecosystem enables you to build and integrate your IoT devices, services, and existing solutions on SmartThings Cloud.
Each element in the growing SmartThings ecosystem enables you to build and integrate your IoT devices, services, and existing solutions on SmartThings Cloud.


Animations
{{ animation }}
Scott Moss
ng-Fx
options
Easings
{{ ease }}
Speed
{{ speed }} ms
Animation: {{ card.type }}


Testing Image Carousal - using butons
This HTML page is showing image carusal with css
grid
sructure and
scrollLeft
PREV
NEXT


[gecode-users] Pruning search in optimisation problems
Jorge Marques Pelizzoni
jpeliz at icmc.usp.br
Mon Jan 14 03:58:41 CET 2008
Malcolm Ryan wrote:
> understand it, the usual approach is to iteratively find a solution
> with X = x1, then add the constraint X < x1 and repeat until no more
> solutions can be found. Is this correct?
Yes, this is one usual way, even though there variations thereof and
simply other methods. For example, you may simply take X as the first
variable for distribution, starting from lower values.
> It occurs to me that each iteration only makes the problem more
> constrained, so assignments which failed in one iteration will
> continue to fail in all subsequent iterations. Is there any standard
> way to make use of this information to prune the search?
Well, what you say is correct and there are systems (Mozart -
www.mozart-oz.org - which heavily influenced gecode) which do exactly
that. I am pretty sure gecode applies similar concepts, which are
organized around the basic notion of spaces (class Space). Suppose you
have a stage in solving you think is "reusable". Any such stage of a CSP
will be realized as a Space instance encapsulating all current basic
constraints and propagators. So what is usually done is: instead of
injecting a new distribution constraint directly into the reusable Space
S, what is usually done is (i) create a clone S' of S (that's what
Space::clone is for) and (ii) inject the new constraints into S' (or S)
and save S (or S') for later.
I am sure Gecode's optimization primitives incorporate these ideas to
avoid recomputation. However, cloning may be an expensive operation, so a
controlled amount of recomputation is sometimes desirable.
Cheers,
Jorge.
More information about the gecode-users
mailing list


CHILDRENS DIMETAPP COLD AND ALLERGY- brompheniramine maleate and phenylephrine hydrochloride tablet, chewable
Richmond Division of Wyeth LLC, a subsidiary of Pfizer Inc.
Disclaimer: Most OTC drugs are not reviewed and approved by FDA, however they may be marketed if they comply with applicable regulations and policies. FDA has not evaluated whether this product complies.
ACTIVE INGREDIENTS (IN EACH TABLET)
Brompheniramine maleate, USP 1 mg
Phenylephrine HCl, USP 2.5 mg
PURPOSES
Antihistamine
Nasal decongestant
USES
- temporarily relieves nasal congestion due to the common cold, hay fever or other upper respiratory allergies
- temporarily relieves these symptoms due to hay fever (allergic rhinitis) or other upper respiratory allergies:
- runny nose
- sneezing
- itchy, watery eyes
- itching of the nose or throat
- temporarily restores freer breathing through the nose
WARNINGS
Do not use
- to sedate a child or to make a child sleepy
- if you are now taking a prescription monoamine oxidase inhibitor (MAOI) (certain drugs for depression, psychiatric, or emotional conditions, or Parkinson's disease), or for 2 weeks after stopping the MAOI drug. If you do not know if your prescription drug contains an MAOI, ask a doctor or pharmacist before taking this product.
Ask a doctor before use if you have
- heart disease
- high blood pressure
- thyroid disease
- diabetes
- trouble urinating due to an enlarged prostate gland
- glaucoma
- a breathing problem such as emphysema, asthma or chronic bronchitis
Ask a doctor or pharmacist before use if you are
- taking any other oral nasal decongestant or stimulant
- taking sedatives or tranquilizers
When using this product
- do not use more than directed
- drowsiness may occur
- avoid alcoholic beverages
- alcohol, sedatives and tranquilizers may increase drowsiness
- be careful when driving a motor vehicle or operating machinery
- excitability may occur, especially in children
Stop use and ask a doctor if
- you get nervous, dizzy, or sleepless
- symptoms do not get better within 7 days or are accompanied by fever
If pregnant or breast feeding,
ask a health professional before use.
Keep out of reach of children.
In case of overdose, get medical help or contact a Poison Control Center right away.
DIRECTIONS
- do not take more than 6 doses in any 24-hour period
| age |
dose |
| adults and children 12 years and over |
4 tablets every 4 hours |
| children 6 to under 12 years |
2 tablets every 4 hours |
| children under 6 years |
do not use |
OTHER INFORMATION
- store at 20-25°C (68-77°F)
INACTIVE INGREDIENTS
carmine, carrageenan, croscarmellose sodium, fructose, fumaric acid, glycine, magnesium stearate, maltodextrin, mannitol, microcrystalline cellulose, modified starch, natural and artificial flavor, polyethylene oxide, silicon dioxide, sorbitol, sucralose, tribasic calcium phosphate
QUESTIONS OR COMMENTS?
call weekdays from 9 AM to 5 PM EST at 1-800-762-4675
PRODUCT PACKAGING
The product packaging shown below represents a sample of that currently in use. Additional packaging may also be available.
SEE NEW WARNING INFORMATION
Children’s Dimetapp Cold & Allergy
BROMPHENIRAMINE MALEATE (Antihistamine)
PHENYLEPHRINE HCI (Nasal Decongestant)
Relieves Nasal Symptoms
- Stuffy Nose
- Runny Nose
- Sneezing
Plus Other Symptoms
For Ages 6 Yrs. & Over
20 chewable tablets
grape flavor
For most recent product information, visit www.dimetapp.com
Wyeth Consumer Healthcare Madison, NJ 07940 USA ©2009 Wyeth
Made in Canada
TABLETS INDIVIDUALLY BLISTER SEALED. IF SEAL IS BROKEN, DO NOT USE.
Richmond Division of Wyeth LLC, a subsidiary of Pfizer Inc.


A Brief Introduction to Docker
Sep 17, 2018 23:01 · 615 words · 3 minute read
In this post we will introduce dockers a bit, just a bit of preparation for what is to come in near future on my blog.
The Origins
The foundation for Docker was laid by Solomon Hykes, as an in-house project at dotCloud. Docker was made open source in March 2013, but the hype really began around June when Docker Inc. announced the release of Docker 1.0 and the rest is history.
According to Docker, the number of applications containerized in the past years is somewhere in the vicinity of a whopping 3.5 million. Not only that, over 37 billion “dockerized” applications have been downloaded, thus far, and the number is growing by the minute.
What’s the hype about?
Containerization is not a recent technology. It’s been around for quite some time (e.g. LXC, in its rudimentary form) and yet it wasn’t doing rounds over the Internet… until the inception of Docker.
Basically, Docker makes life a whole lot simpler. It’s appeal mainly lies in its ability to provision the delivery of lightweight, portable and isolated bundle of applications without the need of running multiple OS instances on a Hypervisor. It saves a ton of resources, thus “reducing the infrastructure and maintenance costs of supporting an existing application portfolio”. Not to mention, the degree of ease which docker brings to the table helps a great deal in expediting the process of continuous integration, delivery, and deployment.
How does it work?
Docker is primarily developed for Linux and relies on its key component libcontainer, which enables direct leveraging of the virtualization facilities provisioned by the Linux kernel. Formerly, Docker relied on LXC as its default execution environment but it was dropped since the release of version 0.9.
Container
A docker container runs natively on Linux and shares the kernel of the host machine with other containers. It runs a discrete process, taking no more memory than any other executable, making it lightweight.
So basically, Docker abstracts out the kernel and runs a very lightweight containerized instance of an application on top of it. These containers, by themselves, add very little overhead and are optimized to make use of already existing information by usage of a union mount filesystem, e.g. aufs and overlay.
Image
A container is launched by running an image. An image is an executable package that includes everything needed to run an application–the code, a runtime, libraries, environment variables, and configuration files.
In other words, a container is just the running instance of an image. Images can be built using a Dockerfile.
A Dockerfile contains all the instructions required to put together an image. Once created, multiple container instances can be spawned using a single base image, which will be shared across all the containers. It is important to note that an image is read-only with a mutable layer, to which a container can write. An image once built cannot be manipulated during the course of its execution. You can find an in-depth explanation of how images and containers work in the official documentation.
Until Next Time
This has been a short introduction to Docker. In conclusion, Docker is what can be termed as a “disruptive technology” and it is here to stay. We will get down and dirty with actually creating and deploying Docker very soon. Until then, have a nice day.There you go guys, you made it to end of the post. Subscribe to my youtube channel and my mailing list below for regular updates. Follow me on twitter , drop me a mail or leave a comment here if you still have any doubts and I will try my best to help you out. Thanks
Stay tuned and see you around :)
- Hackerrank | Solution of Migratory Birds in Golang
- Hackerrank | Solution of Divisible Sum Pairs in Golang
- From The AGC to Smartphones and Beyond
- Hackerrank | Solution of Birthday Chocolate in Golang
- Hackerrank | Solution of Breaking the Records in Golang
- Hackerrank | Solution of Between Two Sets in Golang
- New Mornings New Subscribers
- They Can Smell What You are Cooking
- Hackerrank | Solution of Apple and Orange in Golang
- PUBG: A New Gaming Sensation


Colin Kaepernick’s Lawyer Claims Two Teams Are Interested
by Darrelle LincolnIt looks like things are coming together for Colin Kaepernick after the initial backlash regarding how his workout went down.
Appearing on “The Adam Carolla Show” Tuesday, Mark Geragos, who is the lawyer for Colin Kaepernick, revealed that a couple of teams are actually showing interest in the free agent quarterback.
Geragos said he thinks that something will happen on this “within the next 10 days.”
“There are two teams that I think are in the hunt. One who is legitimately in need of a quarterback who had a very poor showing on Sunday and has got an owner that I don’t think gives a s***.”
 However, Panthers owner David Tepper stated on Monday that the team isn’t interested in signing a veteran QB, and that includes Kaepernick.
Another team might be the Pittsburgh Steelers, as much of the focus has been on the helmet fight incident, QB Mason Rudolph had a terrible outing on Sunday against the Cleveland Browns.
Any team willing to sign Kaepernick has to know it will come with a tremendous amount of coverage and distraction, but if they feel he can help the team, then it may be worth it.


The SIGIR Workshop on eCommerce will serve as a platform for publication and discussion of Information Retrieval and NLP research & their applications in the domain of eCommerce. This workshop will bring together practitioners and researchers from academia and industry to discuss the challenges and approaches to product search and recommendation in eCommerce.
SIGIR eCom is a full day workshop taking place on Thursday, July 12, 2018 in conjunction with SIGIR 2018 in Ann Arbor, Michigan, USA.
| Paper submission deadline(Deadline extended) | May 11, 2018 (11: 59 P.M. AoE) |
| Notification of acceptance | June 1, 2018 |
| Camera Ready Version of Papers Due | June 18, 2018 |
| SIGIR eCom Full day Workshop | July 12, 2018 |
Topics of interest include, but are not limited to:
In order to promote academic research in the eCommerce domain, we plan to accept a small number of high quality dataset contributions. These submissions should be accompanied by a clear and detailed description of the dataset, some potential questions and applications that arise from it. Preliminary empirical investigations conveying any insight about the data will increase the quality of the submission.
All papers will be peer reviewed (single-blind) by the program committee and judged by their relevance to the workshop, especially to the main themes identified above, and their potential to generate discussion. All submissions must be formatted according to the latest ACM SIG proceedings template available at http://www.acm.org/publications/proceedings-template (LaTeX users use sample-sigconf.tex as a template).
Submissions must describe work that is not previously published, not accepted for publication elsewhere, and not currently under review elsewhere. All submissions must be in English. Please note that at least one of the authors of each accepted paper must register for the workshop and present the paper in-person.
Submissions to SIGIR eCom should be made at https://easychair.org/conferences/?conf=ecom18
The deadline for paper submission is May 11, 2018(11:59 P.M.AoE)


Before Change
all_snapshots: Iterable[Snapshot] = (*full_snapshots.values(), *snapshot_subsets)
if request.strip_source_roots:
all_sources_fields = (*full_snapshots.keys(), *digest_subset_requests.keys())
stripped_snapshots = await MultiGet(
Get(
SourceRootStrippedSources,
StripSourcesFieldRequest(
sources_field,
specified_files_snapshot=snapshot,
for_sources_types=request.for_sources_types,
enable_codegen=request.enable_codegen,
),
)
for sources_field, snapshot in zip(all_sources_fields, all_snapshots)
)
all_snapshots = (stripped_snapshot.snapshot for stripped_snapshot in stripped_snapshots)
result = await Get(Snapshot, MergeDigests(snapshot.digest for snapshot in all_snapshots))
return SourceFiles(result)
After Change
all_hydrated_sources, request.sources_fields_with_origins
):
sources_field, origin = sources_field_with_origin
if isinstance(sources_field, FilesSources):
all_unrooted_files.update(hydrated_sources.snapshot.files)
if not hydrated_sources.snapshot.files:
continue
specified_sources = calculate_specified_sources(
hydrated_sources.snapshot, sources_field.address, origin


Archive
Categories
About
RSS
Shivam Dixit
Security | Reliability | Engineering
Cracking Google Summer Of Code
Google Summer of Code is a program sponsored by Google to introduce students to open source programming. Students work on the projects mentored by different open source organizations. It is an incredible opportunity to learn the various tools and practices used in real world softwares. I was GSOC 2014 student under Open Web Application Security Project in my sophomore year. In this post I will shed some lights on how to start preparing for GSOC.
Storing Delicious Passwords
Most of the web applications require their users to authenticate themselves by asking them username and password. They compare the user supplied credentials with the data stored in their database and if the credentials match, the user is granted access. Sounds good! But what will happen if the database in which the website is storing your passwords gets compromised? This article covers various techniques of storing passwords in the database.
GSOC '14 WebGoatPHP Proposal
Abstract WebGoat is one of the most popular open source web applications developed by OWASP. It is a deliberately insecure web application developed using Java to provide a security awareness environment. It offers a set of challenges based on various vulnerabilities listed in OWASP. Since PHP is extremely popular in web applications and has many of the security flaws which Java doesn’t, my work is to develop a deliberately insecure PHP web application.
What Happens When You Power On Your Computer
Ever wondered what all goes inside your computer when you switch on the power button? How is an Operating System loaded ? How you are presented with an user friendly GUI screen? Through this post I will peek into the booting process of UNIX like Operating Systems and try to answer some of the questions. Some of the things discussed in this post are also valid for Windows operating system.
Custom 404 page in Apache
What is 404 error? When you fire up your web-browser and type in, say google.com/foo, your web-browser makes a request to the server for page “foo”. In return, server returns a response with a special status code indicating the status of the request. If the page foo is not found on the server, 404 status code is sent in the respone. Some other common status codes are: 200 : OK 301 : Moved Permanently 400 : Bad Request 401 : Unauthorized 403 : Forbidden 404 : Not Found 500 : Internal Server Error What is .
←
Newer Posts


It was the first day of summer, and I was just sitting around at home wishing I had something to do. Then I remembered that I had 5 hits sitting in my freezer that were a little over a week old. I considered myself to be an experienced tripper, and at the time I had done acid about 30 or so times before and had taken 3 hits of very strong acid and peaked in front of my mom without her knowing. So I figured I could handle 5 hits of week-old acid.
 Before the hits had even started to melt, I remembered that I had a whippet in my room that I had just gotten the day before and I was really interested in seeing the effects of a trip with nitrous oxide. After the hits dissolved, I got a cracker my friend let me borrow. I punctured the cartridge and filled up a big purple balloon until it seemed like it was going to pop.
I took in 3 of the biggest, deepest inhales that I could manage and held them in for about 15 or so seconds each. After the first two inhales I felt really buzzed and lightheaded. I was holding in the third hit of nitrous about ten minutes after the acid had dissolved.
I hadn't really been concentrating on anything while breathing in the whippet except sucking in and holding. But before I had started to exhale I closed my eyes and got the feeling that I was moving forward slowly. Less than a second later I seemed to be shooting through space fast enough to break the sound barrier. I didn't recognize myself as a being or something that lived and breathed oxygen. I just vaguely had the idea that I was some object in some form of existence soaring through the galaxy. This was a very extreme state of being fucked up, but it was not at all unpleasant or frightening. After about a minute of this (probably a few seconds) I didn't seem to slow down; I just sort of seemed to fall back down to earth really quickly and come back into my body and return to reality.
 Trails would hang in the air for what seemed like a good five minutes. And everything had energy waves flowing off of it. The waves were either good or bad, kind of like an aura around everything. I don't know why they were good or bad waves, they just were and it just kind of made sense.
The rest of the trip was pretty much just a VERY HARD acid trip and I was feeling effects of it well into the next day. One point of the trip that sticks out the most to me was when the walls of my room zoomed up to about a foot away from my body, then as quickly as they shrunk they went to towering over my head and then returned to normal size. I have never heard of anything like that and it was definitely the best visual I have ever seen on any hallucinogenic.
Now that I think back on the trip I realize that it was a pretty stupid thing to do considering that I was home alone during the deepest part of the trip and what trip. Not to mention, this was my first time using nitrous oxide and I had no idea what was in store for me. But I have developed much better judgement now from such times, so I consider it a valuable experience.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Web Grapher
Click one of the links below to get started. Each corresponds to a specific graph type.
Function Graph
This graphs z in terms of x and y, where x and y are within a given range. It can be pictured as defining the altitude of a piece of terrain based on location.
Examples:
Parametric Curve
In this graph, x, y, and z are all defined independently with respect to t, which can vary between a user-defined minimum and maximum value. The corresponding curve is plotted.
Examples:
Parametric Surface
In this graph, x, y, and z are all defined independently with respect to s and t, which can vary between a user-defined minimum and maximum value. The corresponding surface is plotted.
Examples:
Disk/Washer Graph
This graph takes the area between two functions with y defined in terms of x, and it revolves the resulting region about the x-axis.
Examples:
Cylindrical Shell Graph
This graph takes the area between two functions with y defined in terms of x, and it revolves the resulting region about the y-axis.
Examples:
Cross Section Graph
This graph takes the area between two functions with y defined in terms of x, and it replaces each y-slice with a given shape defined in a drop-down menu such that any cross section parallel to the yz-plane is the shape chosen. The choices are circle, semicircle (with the diameter on the xy-plane), square (with either the base or the center on the xy-plane), and triangle (with the base on the xy-plane).
Examples:


.NET Extensions
Crosswalk .NET extensions are written in .NET, and have access to the standard .NET APIs. It allows exposing these APIs back to JavaScript in your Crosswalk application.
The .NET extensions system
Crosswalk for Windows can load several extensions from a given path, thus you can expose multiple .NET APIs back to your Crosswalk application. Crosswalk for Windows expects each .NET extension to be a multi-arch DLL file where several entry points are defined so communication can happen between Crosswalk and the extension. The .NET extensions are loaded in a separate process (for security and stability reasons).
There are two main classes you should know about while writing a .NET extension:
XWalkExtension
is instantiated once and used by Crosswalk to get information about the extension itself: the JavaScript API and the extension name (used as the prefix in JavaScript).XWalkExtensionInstance
may be created multiple times depending on browser context (such as iframes). Each instance is responsible of handling the messages from Crosswalk and responding back to Crosswalk.
Each .NET extension is required to ship with a bridge which is provided by Crosswalk. Simply copy it and rename it according to your .NET extension DLL name with the _bridge
suffix. For example, if your extension is called echo_extension.dll
, the bridge should be echo_extension_bridge.dll
.
Writing your .NET Extension
Download and install Visual Studio 2013 or 2015.
Download and install the Crosswalk .NET Extensions Visual Studio Template. You can alternatively search for it in Visual Studio Extensions and Updates dialog.
This template will help you to quickly create an extension in Visual Studio.
Open Visual Studio and click: File -> New Project
In the new dialog, select: “Visual C#” and scroll down to the bottom of the list where you can find the Crosswalk .NET Extensions Sample template.
Enter the name of your .NET extension, set the location and give a name to the Visual Studio solution
Click OK and you should be all set up:
Please note that by default the Windows Runtime APIs are not available but you can quickly add them by right-clicking on your project, then Add -> References and then tick Core under Windows.
In the XWalkExtension
class there are two key methods you should implement:
ExtensionName()
: This is the prefix of your extension in JavaScript and how you are expected to call the API provided by your extension. For example you can return “echo” and all your call in JavaScript will be prefixed with “echo.”ExtensionAPI()
: This is the API you’re going to expose to JavaScript. This API is read from the file XWalkExtensionApi.js. Considering the "echo" example, here is how the API file looks like:
Writing the Extension API
- Any properties (methods, objects, constants, etc.) you want to expose as the JavaScript API for your extension should be appended to the exports object inside the JavaScript API file. This has a similar role to the exports object in nodejs modules, defining the public face of the API. Any other variables not attached to exports are only scoped to this file and won't pollute the web application's global scope. In this simple
echo
example we have two methods exposed :echo
andsyncEcho
. In the JavaScript side they will be called like this:echo.echo(“test”)
andecho.syncEcho(“test”)
extension
object is set by the .NET extension framework and contains methods to communicate with the .NET side of your extension:extension.PostMessage()
andextension.internal.sendSyncMessage()
. The former is simple, it sends a message from JavaScript to .NET which will be responsible to handle it.sendSyncMessage
is similar however it is a synchronous call (and thus blocking) which means that it will not return until the .NET side gives an answer.extension.setMessageListener()
sets a function to invoke for each message returned by the .NET side of the extension. In this simple example theecho()
function takes a callback from the caller to be called when the .NET echoed our message. In that case the listener is called when .NET replied and the callback will be invoked.
Implementing XWalkExtensionInstance class
- About the constructor: You should not modify its signature for the .NET extension to be loaded. It take a parameter
dynamic native
which is going to be used to communicate back to the Crosswalk extension system. HandleMessage(String message)
is going to be called for every message initiated from JavaScript, so every calls toextension.PostMessage()
that we have from above. The message parameter contains the message passed from JavaScript.HandleSyncMessage(String message)
is equal toHandleMessage
but receives the calls from JavaScriptsendSyncMessage()
. You’re expected to set a reply to JavaScript in that function because until you do so, the JavaScript execution is blocked.- Communicating back to Javascript is done by using
PostMessageToJS
andSendSyncReply
on the native handle.PostMessageToJS
simply sends an answer to JavaScript in this simple example will be catched by the message listener in our JavaScript API (which will call the callback).SendSyncReply
should be called from withinHandleSyncMessage
and tell the .NET extension framework that you are done with your synchronous call and JavaScript execution can be resumed. The return value of your JavaScript sync call is set by theSendSyncReply
method parameter.
When you’re done, click on the Build menu and select 'Build Solution' to create your extension DLL.
Advanced JavaScript API in your .NET extension
The example in Writing your .NET Extension above is a pretty simple and trivial API in JavaScript.
It’s very common that your JavaScript API have several methods calling PostMessage
therefore in your .NET extension handleMessage
can get tricky. One way to handle this complexity is to pass through your .NET extension JSON-based messages where you can pass an ID and the message. The ID is going to be used to identify from which Javascript API the message originated and then any other attributes may be the parameters passed along. Once received in .NET handleMessage
it’s straightforward to deserialize the JSON received. Here is how it would look like on the JavaScript side:
// private method for building the message object and converting it
// to a JSON string for transfer to the .NET part of the extension
var messageToJson = function (method, message) {
var obj = {
id: '' + method,
content: message
};
return JSON.stringify(obj);
};
exports.echoAsync = function (message, callback) {
extension.PostMessage(messageToJson(“async”, message));
...
}
exports.echo2 = function (message, callback) {
extension.PostMessage(messageToJson(“echo2”, message));
...
}
On the .NET side see https://msdn.microsoft.com/en-us/library/bb412179(v=vs.110).aspx
You may also want to implement an API based on Promises. In the previous example we showed a callback mechanism but it has to be managed carefully: if callbacks are nested inside callbacks inside callbacks etc., it can lead to the so-called pyramid of doom.
Packing your extension with crosswalk-app-tools
The ability to package your .MSI installer with your .NET extension is being implemented. This section will beupdated when the ability is complete and part of the Crosswalk packaging tool.
Testing your .NET Extension using Crosswalk for Windows binary
After downloading Crosswalk for Windows and unzipping it you can easily try your extension.
If you did not use the Visual Studio template you need to do the next two steps. Starting with version 2.0 of the template the bridge will automatically be added for you.
1. Make sure you copy xwalk_extension_bridge.dll in the folder where you built your .NET extension (where the .DLL is located).
2. Rename xwalk_extension_bridge.dll
so that it looks identical as your extension DLL name with the suffix _bridge
as the only difference. Here is an example:
Inside your command line, navigate to the path where you unzipped Crosswalk and launch it using the method described in Run using Crosswalk binary directly with the following parameters:
--allow-external-extensions-for-remote-sources
(which allow external extension for localhost, you do not need to worry about that when packing with Crosswalk app tools), and--external-extensions-path=/path/to/myextensiondir/
.
 Please note that you can put multiple extensions (and their respective bridges) in the same directory, Crosswalk will load all of them.


Person of interest in case of missing New Jersey woman Stephanie Parze being questioned: Sources
by WABCFREEHOLD, New Jersey (WABC) -- Sources tell Eyewitness News a person of interest in the case of a missing New Jersey woman is being held on child pornography charges.
John Ozbilgen, 29, was arrested and charged with possession of child pornography on Friday.
Sources say Ozbligen is a person of interest in 25-year-old Stephanie Parze's disappearance.
He is currently being held while officials continue to investigate after Parze went missing.
Parze, of Freehold, was last seen around 10 p.m. Oct. 30 after she spent a night out with family to see a psychic in New Brunswick.


array stream_socket_pair ( int $domain , int $type , int $protocol )
stream_socket_pair() creates a pair of connected, indistinguishable socket streams. This function is commonly used in IPC (Inter-Process Communication).
Returns an array with the two socket resources on success, or FALSE on failure.


The NFLpromised a laser show at 9 p.m. after every night game.
Butt, that's nothing compared to what MLB (Major League Baseball) did. They gave out free scuba gear during rain delays.


Enter a raw Github URL below or change the domain to raw-github.toxme.se
Frequently asked questions
How do I use this?
View a file on github, click raw, change the domain to github-raw.toxme.se.
How much does this service cost?
It's 100% free, cloudflare eats the bandwidth cost.
Can I view statistics?
Yup! They just so happen to be right over here.
What about caching?
We tell cloudflare to cache files as long as they aren't modified on githubs side, telling browsers to cache for 30 minutes.
Do you modify data at all?
For sanity reasons we have cloudflare minify js/css/html, every other feature is disabled.
Do you block Tor users/display security warnings?
We have all of cloudflares security options as low as possible.
Can I use this on my production site?
Sure, no promises though, because if you haven't noticed yet this is free.
What do you do on the server side?

How much does this cost to run?
A whole $5 a month for a VPS running nginx. Fancy, I know.
Where is the source?
Right here , this site is hosting itself.
Can I host my personal webpage on this?
 The URL might be a bit odd though.
What does the inline Javscript on this page do?
Asynchronously load the css if possible, as that feature isn't part of the html standard.


Jarvis Help
Home Page
Introduction
Getting Started
Frequently Asked Questions
Troubleshooting
Index
Look up topics easily
More Information
Jarvis Issues
Wiki and Development


--- layout: archive title: Zulip Chat Archive permalink: /stream/113488-general/topic/mathlib.20notes.html ---
One practice I miss from GHC is the use of named "notes", as described here and also blogged about here. GHC has around 2000 of these notes.
I'd like to adopt this in mathlib. For example, in category theory we have a convention of declaring universe variables in a particular order; this needs to happen in every file and -- see Note [universe order in category theory]
would be a convenient way to document each occurrence.
Since we currently have none of these notes, maybe it would be good to establish a conventional format, so that they're easy to search for.
That seems useful!
So in GHC these notes are at the bottom of source files?
I think this is a good idea. I suggest that it should be easy to grep for the "definition" of the note, and for the references to the note.
In particular, it might be good to have a slight syntactical difference. Maybe just NoteDef [universe order ...]
vs Note [universe order...]
Also, there shouldn't be line breaks in Note.*]
The notes go can go near the top or end of a file, or near wherever they are most relevant, but never in the middle of a declaration
Another way to be able to search for the "definition" of the note is to standardize on, say, /- Note [foo]
appearing at the start of a line
although that doesn't help if you want to search on github, since it doesn't support regular expression search
I like --see [universe order]
and /- Note [universe order]
, so remove the word "note" from the reference.
Do we need any tool support?
I hope we don't need tool support, but if we had a conversion to hyperlinked HTML, for example, it would be nice to be able to hyperlink the notes also
which might influence the choice of syntax, e.g., Floris's suggestion might not be easily recognizable as a note reference
Hmm, looking at the markdown parser I use for parsing doc_strings,
It supports the pandoc footnote syntax, which seems to support a kind of citation mechanism according to this
However i haven't seen the parser exercised in the above way. [^fn1]
Anyhow consistency with doc_strings might be nice to consider.
[^fn1]: Its worth noting that this is an extension to the markdown specification, as such...
Added my first note
Do we already have a way to convert markdown doc strings to html files?
I don't think so
Will look into it for lumpy, initial stuff is done, but lacks syntax highlighting single line code blocks like foo → bar
need work, latex in comments, linking, needs more work.
Last updated: Apr 24 2020 at 19:02 UTC


Coming Soon......!!!
Awsome Most Secured and Fully Featured Todo Appliaction Construction is going on.


2018 Version of the FRB/US Model
Overview of the Changes to the FRB/US Model
Simplification in modeling energy and the supply-side
Petroleum imports (EMP)
Business Potential Output (XGPOT and XBT)
Simplification of Business Investment
Simplification of the government sector
Federal Government Budget
State and Local Government Expenditures
Federal Government Expenditures
Government Transfer Payments
Personal Income Tax and Non-Tax Receipts
Corporate Income Tax
Miscellaneous simplifications and changes
Imports excluding Petroleum (EMO and PMO)
Household Permanent Income Components
Desired level of consumption (QEC)
PICNIA: Inflation rate, personal consumption expenditures
Corporate profits (YNICPN)
Consumption of fixed capital (JCCAN)
Simplification of aggregation in the model
Elimination of compounded annualized rates


Every process runs with a certain priority, called the nice level. A high
priority process will get more CPU time than those with lower priorities,
and thus appear to run faster. Changing the nice level only really makes
sense for CPU-intensive processes, as most programs spend almost all of
their time waiting for something (such as user input) and thus will not
benefit or suffer if their priority changes.


Welcome to monkey2, a new, open source, user friendly, multi target programming language by Mark Sibly.
Please post any bug reports or feature requests to the monkey2 github repository: https://github.com/blitz-research/monkey2.
For monkey2 discussion and programming help, feel free to drop by the monkey2 forums: http://monkeycoder.co.nz/forums.
Monkey2 is a crowd funded project. If you like what you see, please consider contributing to development either via paypal donation or by becoming a Patreon supporter.

On Macos, it's a little bit trickier but not much. First, you will need to install xcode from the App Store. Once that's done, go into a shell and enter 'xcode-select --install' to install the 'xcode command line tools'. Note that if you are already using Blitzmax or Monkey1 on a Mac, you may not have to do anything.
On Linux, you will need the standard set of development tools and libs such as g++, mesa-gl, a ton of X stuff etc. Sorry I can't be more specific here, but past attempts to produce a definitive list of 'what you need to code in linux' have proved fruitless - it changes from distro to distro and version to version.
Once you're ready to go, try clicking on the 'hello-world.monkey2' file in the 'Files' browser to the right, and then selecting 'Build and Run' from the 'Build' menu.
This will bring up a little 'Build Settings' dialog. Just click OK to use the defaults and build and run the app. If everything is working properly, a simple 'Hello World' window should appear.
Note that the build settings dialog will only appear automatically the first time you build an app for each target. After that, you can manually activate it by selecting 'Build Settings' from the 'Build' menu - not that it does a lot right now!
There are a few more examples in the 'bananas' directory on the right - more coming!
To build emscripten apps, you will first need to install emscripten:
http://kripken.github.io/emscripten-site.
(On MacOS, you may also need to modify your bin/env_macos.txt file to let monkey2 know where emscripten has been installed).
Once emscripten is installed, you will then need to 'rebuild modules' for the emscripten target. This involves selecting 'Rebuild modules' from the 'Build' menu in Ted2, and then selecting 'Emscripten'. This will take a while, as monkey2 needs to rebuild ALL source code used behind the scenes.
Once done, you should be able to build emscripten apps. However, to also actually run them you will need to install the 'mserver' package:
http://www.monkey-x.com/mak/devtools/mserver-v86c.zip.
(On Macos and Linux, you may also need to change file permissions to 'execute').
This needs to be unzipped into your monkey2 'devtools' directory. MServer is actually a mini 'http' server, and is necessary because emscripten apps can't be run directly from the filesystem - they must always be run from a server.
Now, select the 'Emscripten' target from the 'Build Targets' menu and you should be able to build and run emscripten apps.
To build android apps, you will first need to install Android Studio:
https://developer.android.com/studio/index.html.
Once installed, make sure everything's working properly and that you can build and deploy android apps from inside Android studio. The best way to do this is by building and deploying one of the simple 'template' apps in android studio.
Next, install the Android NDK (native development kit) via the SDK Manager->SDK Tools section.
Once android studio and the NDK are installed, you will then need to rebuild modules for android. Once this is done, you should (finally!) be able to build android apps.
Android apps are produced in the form of android studio projects, and can be found in the '.products' directory next to your monkey2 source file.
Note that monkey2 only currently builds for 'armv7' hardware.
Monkey2 iOS apps cannot currently be run on the simulator, so the first thing you will need is a real iOS device plus the necessary 'code signing skills' to be able to actually deploy to it.
Apart from that, all you need to build for iOS is the latest version of xcode. Once you have xcode installed, you will to 'rebuild modules' for iOS after which you should be able to build iOS apps.
iOS apps are produced in the form of xcode projects, and can be found in the '.products' directory next to your monkey2 source file.
Note that monkey2 only currently builds for 'armv7' hardware.
Monkey2 is a crowd funded project. If you like what you see, please consider contributing to development either via paypal donation or by becoming a Patreon supporter.
Finally, a big shout out to everyone who has contributed to Monkey2 to date, including...


Your search too, try finding your city's weather anywhere, at anytime
Our world is special, we should give it
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Aliquid, suscipit, rerum quos facilis repellat architecto commodi officia atque nemo facere eum non illo voluptatem quae delectus odit vel itaque amet.
consectetur adipisicing elit. Aliquid, suscipit, rerum quos facilis repellat architecto commodi officia atque nemo facere eum non illo voluptatem quae delectus odit vel itaque amet.
facere eum non illo voluptatem quae delectus odit vel itaque amet.
Lorem ipsum dolor sit amet consectetur adipisicing elit. Pariatur praesentium sunt provident sed ipsum ea consectetur facilis qui neque voluptates ipsam aut ducimus perferendis
Weather is the state of the atmosphere, describing for example the degree to which it is hot or cold, wet or dry, calm or stormy, clear or cloudy.[1] Most weather phenomena occur in the lowest level of the atmosphere, the troposphere,[2][3] just below the stratosphere. Weather refers to day-to-day temperature and precipitation activity, whereas climate is the term for the averaging of atmospheric conditions over longer periods of time.[4] When used without qualification, "weather" is generally understood to mean the weather of Earth.
Change will not come if we wait for some other person or some other time. We are the ones we've been waiting for. We are the change that we seek.
We humans have always been wanting to know everything, we here decided to make a weather forecast so that you dont need to worry about it raining on your day.


puts "Hello, World!"
Zen in the art of writing plain text
with AsciiDoc.
| Use Asciidoctor for the best AsciiDoc experience.[1] Then about it! |
item 1
item 2
puts "Hello, World!"
| Name | Language |
|---|---|
MRI |
C |
JRuby |
Java |
Opal |
JavaScript |
Rubinius |
Ruby |


--- layout: default ---
This portal is the central resource for all Stellar Loyalty Development. You will find here documentation and guides that will help developers build stunning loyalty applications built on top of the Stellar Loyalty infrastructure.
Stellar Loyalty provides tools to get developers build applications rapidly. We provide platform-specific SDKs that will seamlessly connect to our web services.


Once we are confident in our hypothesis, we can export this code into backtesting. One way to accomodate this model into backtest is to create a scheduled event which uses our model to predict the expected return. If we predict the price will go up, we long SPY, else, we short it.
def Initialize(self) -> None: #1. Required: Five years of backtest history self.SetStartDate(2016, 1, 1) #2. Required: Alpha Streams Models: self.SetBrokerageModel(BrokerageName.AlphaStreams) #3. Required: Significant AUM Capacity self.SetCash(1000000) #4. Required: Benchmark to SPY self.SetBenchmark("SPY") self.asset = "SPY" # Add Equity ------------------------------------------------ self.AddEquity(self.asset, Resolution.Minute) # Initialize the LSTM model self.BuildModel() # Set Scheduled Event Method For Our Model self.Schedule.On(self.DateRules.EveryDay(), self.TimeRules.BeforeMarketClose("SPY", 5), self.EveryDayBeforeMarketClose) # Set Scheduled Event Method For Our Model Retraining every month self.Schedule.On(self.DateRules.MonthStart(), self.TimeRules.At(0, 0), self.BuildModel)
We'll also need to create a function to train and update our model from time to time.
def BuildModel(self) -> None: qb = self ### Preparing Data # Get historical data history = qb.History(qb.Securities.Keys, 252*2, Resolution.Daily) # Select the close column and then call the unstack method. close = history['close'].unstack(level=0) # Scale data onto [0,1] self.scaler = MinMaxScaler(feature_range = (0, 1)) # Transform our data df = pd.DataFrame(self.scaler.fit_transform(close), index=close.index) # Feature engineer the data for input. input_ = df.iloc[1:] # Shift the data for 1-step backward as training output result. output = df.shift(-1).iloc[:-1] # Build feauture and label sets (using number of steps 60, and feature rank 1) features_set = [] labels = [] for i in range(60, input_.shape[0]): features_set.append(input_.iloc[i-60:i].values.reshape(-1, 1)) labels.append(output.iloc[i]) features_set, labels = np.array(features_set), np.array(labels) features_set = np.reshape(features_set, (features_set.shape[0], features_set.shape[1], 1)) ### Build Model # Build a Sequential keras model self.model = Sequential() # Add our first LSTM layer - 50 nodes self.model.add(LSTM(units = 50, return_sequences=True, input_shape=(features_set.shape[1], 1))) # Add Dropout layer to avoid overfitting self.model.add(Dropout(0.2)) # Add additional layers self.model.add(LSTM(units=50, return_sequences=True)) self.model.add(Dropout(0.2)) self.model.add(LSTM(units=50)) self.model.add(Dropout(0.2)) self.model.add(Dense(units = 5)) self.model.add(Dense(units = 1)) # Compile the model. We use Adam as optimizer for adpative step size and MSE as loss function since it is continuous data. self.model.compile(optimizer = 'adam', loss = 'mean_squared_error', metrics=['mae', 'acc']) # Set early stopping callback method callback = EarlyStopping(monitor='loss', patience=3, restore_best_weights=True) # Fit the model to our data, running 20 training epochs self.model.fit(features_set, labels, epochs = 20, batch_size = 1000, callbacks=[callback])
Now we export our model into the scheduled event method. We will switch qb
with self
and replace methods with their QCAlgorithm
counterparts as needed. In this example, this is not an issue because all the methods we used in research also exist in QCAlgorithm
.
def EveryDayBeforeMarketClose(self) -> None: qb = self # Fetch history on our universe history = qb.History(qb.Securities.Keys, 60, Resolution.Daily) if history.empty: return # Make all of them into a single time index. close = history.close.unstack(level=0) # Scale our data df = pd.DataFrame(self.scaler.transform(close), index=close.index) # Feature engineer the data for input input_ = [] input_.append(df.values.reshape(-1, 1)) input_ = np.array(input_) input_ = np.reshape(input_, (input_.shape[0], input_.shape[1], 1)) # Prediction prediction = self.model.predict(input_) # Revert the scaling into price prediction = self.scaler.inverse_transform(prediction) # ============================== if prediction > qb.Securities[self.asset].Price: self.SetHoldings(self.asset, 1.) else: self.SetHoldings(self.asset, -1.)


Internal time represents time as a single integer, in terms of an implementation-dependent unit called an internal time unit. Relative time is measured as a number of these units. Absolute time is relative to an arbitrary time base.
The next figure shows defined names related to internal time.
get-internal-real-time internal-time-units-per-second get-internal-run-time
Figure 25-7. Defined names involving time in Internal Time.


-
Duckipedia
-
Duckipedia is a serious Wikipedia reader.
It provide useful functionalities listed bellow:- quick language switch
- search completion
- section jump
- history [can be remove]
- lightness control
- page mode [Expand | Shrink]
- home page selection
- https request


| Low |
Heart beat faliure
Hear Beat are Missing Created 14.07.2014 |
Trigger if number results are : Greater that or equal to 1 Every 7 minutes | View Edit |
| High |
Curator Snapshot failed
Created 22.07.2014 |
Trigger if number results are : Greater that or equal to 1 Every 3 minutes | View Edit |
| Medium |
Alerts Emails Sent Treshold Reached
Created 11.08.2014 |
Trigger if number results are : Greater than 100 Every 9 minutes | View Edit |
| High |
Curator Snapshot failed
Created 22.07.2014 |
Trigger if number results are : Greater that or equal to 1 Every 3 minutes | View Edit |
| Low |
Hear Beat are Missing
HeaCreated 14.07.2014 |
Trigger if number results are : Greater that or equal to 1 Every 7 minutes | View Edit |
| Medium |
Alerts Emails Sent Treshold Reached
Created 11.08.2014 |
Trigger if number results are : Greater than 100 Every 9 minutes | View Edit |
| Priority | Status Type | Updated Time |
|---|---|---|
| Medium | Download threshold Alert | 12.06.2015 08:10:31 |
| Medium | Bandwidth Throttling Applied | 12.07.2015 10:10:1 |
| Critical | Bandwidth Throttling Applied | 11.07.2015 10:10:1 |
| Medium | Bandwidth Throttling Applied | 13.07.2015 10:10:1 |
| Critical | Bandwidth Throttling Applied | 14.07.2015 10:10:1 |
| Medium | Bandwidth Throttling Applied | 15.07.2015 10:10:1 |
| Medium | Bandwidth Throttling Applied | 17.07.2015 10:10:1 |
| Medium | Bandwidth Throttling Applied | 14.07.2015 10:16:36 |
| Medium | Bandwidth Throttling Applied | 18.07.2015 10:10:1 |


{% extends "base_generic.html" %} {% block content %}
Welcome to BBC Class, a website developed by Martin Mambo!
The Class has the following record counts:
Welcome to BBC Class, a website developed by Martin Mambo!
The Class has the following record counts:


Yesterday we launched the Aurelia Release Candidate. Today we're taking the first step towards our vision for developer community and productivity.
The HUB is a place where Aurelia developers will come to learn, research, interact and gain access to all they need to be successful while building applications on the Aurelia platform.
The Backstory
Some months ago, we started with our initial Docs implementation, written with Aurelia. We wanted to dogfood the framework publicly and get a humble start towards realizing our HUB vision. Since then we've been through a number of design phases and received a lot of feedback from the community, particularly around documentation. We've taken that into account and launched a new version of the docs, re-labeled as the Aurelia HUB Beta.
The Update
The new HUB is built using the Aurelia RC and the Aurelia CLI. In fact, we've been dogfooding the CLI ourselves for a number of weeks and we like the experience. It's enabled our Chief Design Officer to be more involved in the development process itself, which has resulted in a much improved UX.
The new HUB addresses several core issues in our long-term plan:
- It restructures the UX so that we can grow the HUB beyond merely documentation and into a much richer, collaborative environment.
- It re-architects the codebase for growth and further componentizes documentation and various navigation/shell structures.
The new HUB also addresses several community requests:
- Full text search of all articles and APIs!
- New article groupings to keep related articles together and enable us to author new tutorials and richer content.
- New article navigation which exposes articles, article groups and article sections, improving exploration of content and simplifying deep linking.
- A clean new look designed to improve readability.
- Persona home pages designed to guide new visitors to the content they need.
- A new "Edit" button on each article empowering our community to help improve the content by taking you directly to Github and setting up the PR for you.
- Additional API details, expressing optional parameters and return descriptions.
The Future
While this release is a beta, and mostly deals with improving the docs, it's also a major stepping stone for us towards something we've had in our minds to do for a long time. There are still glitches and we've got a lot of work to do yet...but we've got some amazing plans and things are moving forward nicely. We can't share all the details just yet, but there are a couple obvious things you should expect to see showing up in the not-too-distant-future:
- A HUB home screen that aggregates news and other meaningful information for our community.
- A Plugins area where you can search, browse and learn about official and community plugins to Aurelia.
We hope you enjoy the new HUB and that it makes using and reading the docs more pleasant. Please bear with us as we work out a few of the remaining issues. We thought we should get it out to you earlier rather than later. If you haven't already, please subscribe to our newsletter and this blog so we can keep you informed as we move ahead with Aurelia and the HUB.
Thank you!
PS - There's still one more day left this week for news...


Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: libnatpmp
Upstream-Contact: Thomas Bernard
Source: http://miniupnp.free.fr/files/
Files: *
Copyright: (c) 2007-2011, Thomas BERNARD
License: BSD-3-clause
Files: debian/*
Copyright: (c) 2010, Thomas Goirand
(c) 2016, Mattia Rizzolo
License: BSD-3-clause
License: BSD-3-clause
All rights reserved.
.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
.
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
* The name of the author may not be used to endorse or promote
products derived from this software without specific prior
written permission.
.


Test
Card Title
I am a very simple card. I am good at containing small bits of information. I am convenient because I require little markup to use effectively.
Parallax
Parallax is an effect where the background content or image in this case, is moved at a different speed than the foreground content while scrolling.


Before Change
// For each order of ngram, calculate the no. of ngram matches and
// keep track of no. of ngram in references.
ref_ngrams = Counter(everygrams(reference, min_len, max_len))
hyp_ngrams = Counter(everygrams(hypothesis, min_len, max_len))
overlap_ngrams = ref_ngrams & hyp_ngrams
tp = sum(overlap_ngrams.values()) // True positives.
tpfp = sum(hyp_ngrams.values()) // True positives + False positives.
tpfn = sum(ref_ngrams.values()) // True positives + False negatives.
// While defined as the minimum of precision and recall, we can
// reduce the number of division operations by one by instead finding
// the maximum of the denominators for the precision and recall
// formulae, since the numerators are the same:
// precision = tp / tpfp
// recall = tp / tpfn
// min(precision, recall) == tp / max(tpfp, tpfn)
return tp / max(tpfp, tpfn)
def corpus_gleu(references, hypotheses, min_len=1, max_len=4):
After Change
if not references or isinstance(references[0], string_types):
references = [references]
return corpus_gleu(
[references],
[hypothesis],
min_len=min_len,
max_len=max_len
)
def corpus_gleu(list_of_references, hypotheses, min_len=1, max_len=4):
Calculate a single corpus-level GLEU score (aka. system-level GLEU) for all


```js demo function throttle(func, ms) {
let isThrottled = false, savedArgs, savedThis;
function wrapper() {
if (isThrottled) { // (2)
savedArgs = arguments;
savedThis = this;
return;
}
func.apply(this, arguments); // (1)
isThrottled = true;
setTimeout(function() {
isThrottled = false; // (3)
if (savedArgs) {
wrapper.apply(savedThis, savedArgs);
savedArgs = savedThis = null;
}
}, ms);
}
return wrapper; } ```
A call to throttle(func, ms)
returns wrapper
.
wrapper
just runs func
and sets the cooldown state (isThrottled = true
).savedArgs/savedThis
. Please note that both the context and the arguments are equally important and should be memorized. We need them simultaneously to reproduce the call.ms
milliseconds pass, setTimeout
triggers. The cooldown state is removed (isThrottled = false
) and, if we had ignored calls, wrapper
is executed with the last memorized arguments and context.The 3rd step runs not func
, but wrapper
, because we not only need to execute func
, but once again enter the cooldown state and setup the timeout to reset it.