from dataclasses import dataclass
from typing import List
import numpy as np
from sklearn.metrics import (
roc_auc_score,
mean_squared_error,
mean_absolute_error,
accuracy_score,
log_loss,
balanced_accuracy_score,
mean_squared_log_error,
)
import torch
[docs]def UnsupervisedLoss(y_pred, embedded_x, obf_vars, eps=1e-9):
"""
Implements unsupervised loss function.
This differs from orginal paper as it's scaled to be batch size independent
and number of features reconstructed independent (by taking the mean)
Parameters
----------
y_pred : torch.Tensor or np.array
Reconstructed prediction (with embeddings)
embedded_x : torch.Tensor
Original input embedded by network
obf_vars : torch.Tensor
Binary mask for obfuscated variables.
1 means the variable was obfuscated so reconstruction is based on this.
eps : float
A small floating point to avoid ZeroDivisionError
This can happen in degenerated case when a feature has only one value
Returns
-------
loss : torch float
Unsupervised loss, average value over batch samples.
"""
errors = y_pred - embedded_x
reconstruction_errors = torch.mul(errors, obf_vars) ** 2
batch_means = torch.mean(embedded_x, dim=0)
batch_means[batch_means == 0] = 1
batch_stds = torch.std(embedded_x, dim=0) ** 2
batch_stds[batch_stds == 0] = batch_means[batch_stds == 0]
features_loss = torch.matmul(reconstruction_errors, 1 / batch_stds)
# compute the number of obfuscated variables to reconstruct
nb_reconstructed_variables = torch.sum(obf_vars, dim=1)
# take the mean of the reconstructed variable errors
features_loss = features_loss / (nb_reconstructed_variables + eps)
# here we take the mean per batch, contrary to the paper
loss = torch.mean(features_loss)
return loss
[docs]def UnsupervisedLossNumpy(y_pred, embedded_x, obf_vars, eps=1e-9):
errors = y_pred - embedded_x
reconstruction_errors = np.multiply(errors, obf_vars) ** 2
batch_means = np.mean(embedded_x, axis=0)
batch_means = np.where(batch_means == 0, 1, batch_means)
batch_stds = np.std(embedded_x, axis=0, ddof=1) ** 2
batch_stds = np.where(batch_stds == 0, batch_means, batch_stds)
features_loss = np.matmul(reconstruction_errors, 1 / batch_stds)
# compute the number of obfuscated variables to reconstruct
nb_reconstructed_variables = np.sum(obf_vars, axis=1)
# take the mean of the reconstructed variable errors
features_loss = features_loss / (nb_reconstructed_variables + eps)
# here we take the mean per batch, contrary to the paper
loss = np.mean(features_loss)
return loss
[docs]@dataclass
class UnsupMetricContainer:
"""Container holding a list of metrics.
Parameters
----------
y_pred : torch.Tensor or np.array
Reconstructed prediction (with embeddings)
embedded_x : torch.Tensor
Original input embedded by network
obf_vars : torch.Tensor
Binary mask for obfuscated variables.
1 means the variables was obfuscated so reconstruction is based on this.
"""
metric_names: List[str]
prefix: str = ""
def __post_init__(self):
self.metrics = Metric.get_metrics_by_names(self.metric_names)
self.names = [self.prefix + name for name in self.metric_names]
def __call__(self, y_pred, embedded_x, obf_vars):
"""Compute all metrics and store into a dict.
Parameters
----------
y_true : np.ndarray
Target matrix or vector
y_pred : np.ndarray
Score matrix or vector
Returns
-------
dict
Dict of metrics ({metric_name: metric_value}).
"""
logs = {}
for metric in self.metrics:
res = metric(y_pred, embedded_x, obf_vars)
logs[self.prefix + metric._name] = res
return logs
[docs]@dataclass
class MetricContainer:
"""Container holding a list of metrics.
Parameters
----------
metric_names : list of str
List of metric names.
prefix : str
Prefix of metric names.
"""
metric_names: List[str]
prefix: str = ""
def __post_init__(self):
self.metrics = Metric.get_metrics_by_names(self.metric_names)
self.names = [self.prefix + name for name in self.metric_names]
def __call__(self, y_true, y_pred):
"""Compute all metrics and store into a dict.
Parameters
----------
y_true : np.ndarray
Target matrix or vector
y_pred : np.ndarray
Score matrix or vector
Returns
-------
dict
Dict of metrics ({metric_name: metric_value}).
"""
logs = {}
for metric in self.metrics:
if isinstance(y_pred, list):
res = np.mean(
[metric(y_true[:, i], y_pred[i]) for i in range(len(y_pred))]
)
else:
res = metric(y_true, y_pred)
logs[self.prefix + metric._name] = res
return logs
[docs]class Metric:
def __call__(self, y_true, y_pred):
raise NotImplementedError("Custom Metrics must implement this function")
[docs] @classmethod
def get_metrics_by_names(cls, names):
"""Get list of metric classes.
Parameters
----------
cls : Metric
Metric class.
names : list
List of metric names.
Returns
-------
metrics : list
List of metric classes.
"""
available_metrics = cls.__subclasses__()
available_names = [metric()._name for metric in available_metrics]
metrics = []
for name in names:
assert (
name in available_names
), f"{name} is not available, choose in {available_names}"
idx = available_names.index(name)
metric = available_metrics[idx]()
metrics.append(metric)
return metrics
[docs]class AUC(Metric):
"""
AUC.
"""
def __init__(self):
self._name = "auc"
self._maximize = True
def __call__(self, y_true, y_score):
"""
Compute AUC of predictions.
Parameters
----------
y_true : np.ndarray
Target matrix or vector
y_score : np.ndarray
Score matrix or vector
Returns
-------
float
AUC of predictions vs targets.
"""
return roc_auc_score(y_true, y_score[:, 1])
[docs]class Accuracy(Metric):
"""
Accuracy.
"""
def __init__(self):
self._name = "accuracy"
self._maximize = True
def __call__(self, y_true, y_score):
"""
Compute Accuracy of predictions.
Parameters
----------
y_true: np.ndarray
Target matrix or vector
y_score: np.ndarray
Score matrix or vector
Returns
-------
float
Accuracy of predictions vs targets.
"""
y_pred = np.argmax(y_score, axis=1)
return accuracy_score(y_true, y_pred)
[docs]class BalancedAccuracy(Metric):
"""
Balanced Accuracy.
"""
def __init__(self):
self._name = "balanced_accuracy"
self._maximize = True
def __call__(self, y_true, y_score):
"""
Compute Accuracy of predictions.
Parameters
----------
y_true : np.ndarray
Target matrix or vector
y_score : np.ndarray
Score matrix or vector
Returns
-------
float
Accuracy of predictions vs targets.
"""
y_pred = np.argmax(y_score, axis=1)
return balanced_accuracy_score(y_true, y_pred)
[docs]class LogLoss(Metric):
"""
LogLoss.
"""
def __init__(self):
self._name = "logloss"
self._maximize = False
def __call__(self, y_true, y_score):
"""
Compute LogLoss of predictions.
Parameters
----------
y_true : np.ndarray
Target matrix or vector
y_score : np.ndarray
Score matrix or vector
Returns
-------
float
LogLoss of predictions vs targets.
"""
return log_loss(y_true, y_score)
[docs]class MAE(Metric):
"""
Mean Absolute Error.
"""
def __init__(self):
self._name = "mae"
self._maximize = False
def __call__(self, y_true, y_score):
"""
Compute MAE (Mean Absolute Error) of predictions.
Parameters
----------
y_true : np.ndarray
Target matrix or vector
y_score : np.ndarray
Score matrix or vector
Returns
-------
float
MAE of predictions vs targets.
"""
return mean_absolute_error(y_true, y_score)
[docs]class MSE(Metric):
"""
Mean Squared Error.
"""
def __init__(self):
self._name = "mse"
self._maximize = False
def __call__(self, y_true, y_score):
"""
Compute MSE (Mean Squared Error) of predictions.
Parameters
----------
y_true : np.ndarray
Target matrix or vector
y_score : np.ndarray
Score matrix or vector
Returns
-------
float
MSE of predictions vs targets.
"""
return mean_squared_error(y_true, y_score)
[docs]class RMSLE(Metric):
"""
Root Mean squared logarithmic error regression loss.
Scikit-implementation:
https://scikit-learn.org/stable/modules/generated/sklearn.metrics.mean_squared_log_error.html
Note: In order to avoid error, negative predictions are clipped to 0.
This means that you should clip negative predictions manually after calling predict.
"""
def __init__(self):
self._name = "rmsle"
self._maximize = False
def __call__(self, y_true, y_score):
"""
Compute RMSLE of predictions.
Parameters
----------
y_true : np.ndarray
Target matrix or vector
y_score : np.ndarray
Score matrix or vector
Returns
-------
float
RMSLE of predictions vs targets.
"""
y_score = np.clip(y_score, a_min=0, a_max=None)
return np.sqrt(mean_squared_log_error(y_true, y_score))
[docs]class UnsupervisedMetric(Metric):
"""
Unsupervised metric
"""
def __init__(self):
self._name = "unsup_loss"
self._maximize = False
def __call__(self, y_pred, embedded_x, obf_vars):
"""
Compute MSE (Mean Squared Error) of predictions.
Parameters
----------
y_pred : torch.Tensor or np.array
Reconstructed prediction (with embeddings)
embedded_x : torch.Tensor
Original input embedded by network
obf_vars : torch.Tensor
Binary mask for obfuscated variables.
1 means the variables was obfuscated so reconstruction is based on this.
Returns
-------
float
MSE of predictions vs targets.
"""
loss = UnsupervisedLoss(y_pred, embedded_x, obf_vars)
return loss.item()
[docs]class UnsupervisedNumpyMetric(Metric):
"""
Unsupervised metric
"""
def __init__(self):
self._name = "unsup_loss_numpy"
self._maximize = False
def __call__(self, y_pred, embedded_x, obf_vars):
"""
Compute MSE (Mean Squared Error) of predictions.
Parameters
----------
y_pred : torch.Tensor or np.array
Reconstructed prediction (with embeddings)
embedded_x : torch.Tensor
Original input embedded by network
obf_vars : torch.Tensor
Binary mask for obfuscated variables.
1 means the variables was obfuscated so reconstruction is based on this.
Returns
-------
float
MSE of predictions vs targets.
"""
return UnsupervisedLossNumpy(
y_pred,
embedded_x,
obf_vars
)
[docs]class RMSE(Metric):
"""
Root Mean Squared Error.
"""
def __init__(self):
self._name = "rmse"
self._maximize = False
def __call__(self, y_true, y_score):
"""
Compute RMSE (Root Mean Squared Error) of predictions.
Parameters
----------
y_true : np.ndarray
Target matrix or vector
y_score : np.ndarray
Score matrix or vector
Returns
-------
float
RMSE of predictions vs targets.
"""
return np.sqrt(mean_squared_error(y_true, y_score))
[docs]def check_metrics(metrics):
"""Check if custom metrics are provided.
Parameters
----------
metrics : list of str or classes
List with built-in metrics (str) or custom metrics (classes).
Returns
-------
val_metrics : list of str
List of metric names.
"""
val_metrics = []
for metric in metrics:
if isinstance(metric, str):
val_metrics.append(metric)
elif issubclass(metric, Metric):
val_metrics.append(metric()._name)
else:
raise TypeError("You need to provide a valid metric format")
return val_metrics


Canadian wholesale trade rises 1% in September, boosted by machinery
by The Canadian PressOTTAWA -- Statistics Canada says wholesale trade rose 1.0 per cent to $65.1 billion in September, boosted by gains in the machinery, equipment and supplies subsector.
The move higher reversed a drop of 1.2 per cent in August.
Economists on average had expected an increase of 0.3 per cent, according to financial markets data firm Refinitiv.
Statistics Canada says the machinery, equipment and supplies subsector reported the largest increase in dollar terms in September as sales rose 4.4 per cent to $13.9 billion.
Sales in the personal and household goods subsector rose 1.0 per cent to $9.6 billion in September.
Wholesale sales increased 0.9 per cent in volume terms.


This trick fails since Linux 2.4.25 / 2.6.0.)
$ /lib/ld-linux.so.2 ~/id
uid=1001(edd) gid=1001(edd) groups=1001(edd),1002(wheel)
mount -o remount,suid,exec,dev /<mount>
http://www.win.tue.nl/~aeb/linux/hh/hh-14.html
Under later kernels, this was made more difficult, but not fixed.
% /lib/ld-linux.so.2 /zip/hello
/zip/hello: error while loading shared libraries: /zip/hello: failed to map segment from shared object: Operation not permitted
% ./fixelf /zip/hello
% /lib/ld-linux.so.2 /zip/hello
Hello!
% cat /proc/version
Linux version 2.6.19
The tiny utility fixelf removes the PF_X flag from the ELF program headers:
/* fixelf.c */
...
Elf32_Ehdr *eh;
Elf32_Phdr *ph;
...
eh = (Elf32_Ehdr *) program;
...
for (i=0; i<eh->e_phnum; i++) {
ph = (Elf32_Phdr *)(program + eh->e_phoff + i*eh->e_phentsize);
ph->p_flags &= ~PF_X;
}
...
Today (2.6.21) this still works.


Before Change
// input lengths; otherwise, this could be done outside the loop
keep = np.random.rand(lengths[i] - 1) >= dropout_prob
// ith example: [x0, x1, ..., eos, pad, ..., pad]
assert x[lengths[i] - 1, i] == self.dictionary.eos()
words = x[:lengths[i], i].tolist()
// TODO: speed up the following loop
// drop words from the input according to keep
After Change
// input lengths; otherwise, this could be done outside the loop
// We want to drop whole words based on word_idx grouping
num_words = max(word_idx[:, i]) + 1
// ith example: [x0, x1, ..., eos, pad, ..., pad]
// We should only generate keep probs for non-EOS tokens. Thus if the
// input sentence ends in EOS, the last word idx is not included in
// the dropout mask generation and we append True to always keep EOS.
// Otherwise, just generate the dropout mask for all word idx
// positions.
has_eos = x[lengths[i] - 1, i] == self.dictionary.eos()
if has_eos: // has eos?
keep = np.random.rand(num_words - 1) >= dropout_prob
keep = np.append(keep, [True]) // keep EOS symbol
else:
keep = np.random.rand(num_words) >= dropout_prob
words = x[:lengths[i], i].tolist()
// TODO: speed up the following loop
// drop words from the input according to keep


Meet Information
USA Track & Field (USATF) is the national governing body of track and field in America. Many world and national class athletes have cultivated their skills on the Junior Olympic circuit prior to entering college or professional ranks. All athletes must first register to become a member of USATF before competing in any USATF sanctioned meets. The USATF membership card is the official form athletes are required to have if they plan to compete on the Junior Olympic circuit. Parents and coaches may also purchase a membership card. These cards will serve as the athletes, coaches and parents pass for getting in all USATF youth sanctioned meets. It is a one time per year $20 fee for athletes and $30 for adults (2018). See the Coaching staff for registration forms.
WHAT IS AGE GROUP TRACK?
Age group track and field competition is based on the athlete's age in the current calendar year. The following are the age group divisions for 2018 eligibility: 8 and Under (born in 2006 or after)
9-10 (born in 2004-05)
11-12 (born in 2002-03)
13-14 (born in 2000-01)
15-16 (born in 1998-99)
17-18 (born in 1996-97)
*Athletes born in 1995 who DO NOT turn 19 years old on or before Aug 2nd are still eligible to compete on the Summer Junior Olympic circuit.
WHEN ARE THE MEETS AND HOW DO I ENTER THEM?
Meets usually occur weekly on Saturday or Sunday. Information will be given on Tuesdays concerning the meets during the season. PPTC coaching staff will determine what events your athlete will compete in and the administration team will enter them.
WILL PPTC HELP ME GET TO THESE MEETS?
For the most part, parents must secure transportation to the meets. However, if an athlete needs transportation, please contact a member of the coaching staff or administration team, WELL IN ADVANCE, to make arrangements.
2018 Schedule


We are independent therapeutic massage parlor operated in our local community of St. John's, Nefoundland. We have been in business
for the last 10 years with utmost prestige. We employ only the most renowned, licensed therapist to provide safe and beneficial massage which
guarantees your satisfaction and well-being. Give us a call at<PHONE_NUMBER> for more information about our services and more.


{{> head}}
{{> nav}}
If your app needs to communicate with the Dashboard you should store the handshake value in your own
.env
,
config
or other environment settings that are
not stored in git.
Handshake token
Congratulations graphQL has been set up, visit it here: {{config.graphql.host}}/{{user.apitoken}}/playground, or check its status here.
You can reconfigure it below if needed.
{{else}}You need to set GraphQL up, you can check out the repository from here https://github.com/mplusmuseum/mplusmuseum-graphql, follow the instructions found there to get things up and running. Once you have it running enter the host URL in the form below.
{{#ifEqual NODE_ENV 'development'}} This will probably be something like
http://localhost:4000
{{else}} This will be your domain URL that you've exposed as your graphQL server, you should
not include the
/graphql
path, we will add that. For example...
Yes:
https://somedomain.com
No:
https://somedomain.com/graphql
. {{/ifEqual}}
Congratulations ElasticSearch has been set up
You can reconfigure it below if needed.
{{/if}}Congratulations the Spelunker has been set up
You can reconfigure it below if needed.
{{/if}}These are your current TMS setups.
{{#each config.tms}}
Please use the form below to register a new TMS system.
{{!---We are currently using Cloudinary to host images (they are ultimately stored on S3), you will need to set up a free cloudinary account and add your credentials here.
You can optionally use Intercom to enable "admin" and "staff" dashboard users to communicate with you via the Intercom chat widget. You will need to create an Intercom account to get a valid Intercom App Id. Add that here and the widget will display in the bottom right corner for admin and staff users.
{{#if config.intercom.appId}}Congratulations Intercom has been set up
You can reconfigure it below if needed.
{{/if}}


Support
Contact us at<EMAIL_ADDRESS>if your question is not answered here.
FAQ
What is a dPack vault?
A dPack vault is a collection of files that can be efficiently distributed to other peers on the dWeb network.
How do I create a dPack vault?
You can use the dBrowser, the official dPack command line CLI, or the dWeb's dFTP desktop app.
Can I self host dHosting?
Yes. The software that powers dHosting, dHost, is open source and easy to deploy.
You may also find dPack HTTP is a good choice.


This tutorial will show you how Shiny can also be used to build handy apps which can be used in research and teaching. As an example, we will be building a simple app which will help us calculate the visual angle of a stimulus. I’d recommend you complete the earlier Shiny tutorials (Creating your first app and Data collection) as we’ll be building on that knowledge here.
This tutorial will also introduce reactivity, which refers to how the app will react to the user’s input, and shinydashboard, a package which lets us build much more visually pleasing and user-friendly Shiny apps.
Tutorial Slides (.pptx format)
Try the simple Visual Angle app. You’ll have something very similar built by the end of this tutorial.
First of all, we’ll need to install the necessary packages (especially shinydashboard
), create our shiny project, and check everything runs okay…
shinydashboard
This tutorial uses shinydashboard
. If you’ve not already done so, install the latest version of shinydashboard
with:
install.packages("shinydashboard")
Create a new Shiny Web Application project, and name it something like, “Visual-Angle-Calculator”. For a reminder of how to do this, have a look at the Creating your First App tutorial.
As in the first tutorial, this will display the code for the default demo app. Delete all of the default code, and replace it with the following (or download the scaffolding file below):
library(shiny)
library(shinydashboard)
library(tidyverse)
# function for calculating visual angle
get_va <- function(size, distance, approx=F){
if (approx) {
rad <- atan(size/distance)
} else {
rad <- 2*atan(size/(2*distance))
}
rad*(180/pi) # radians to angle
}
# function for converting to consistent units (mm)
to_mm <- function(val, units){
recode(
units,
"mm"=as.double(val),
"cm"=as.double(val)*10,
"inches"=as.double(val)*25.4
)
}
ui <- dashboardPage(
skin = "purple",
dashboardHeader(),
dashboardSidebar(),
dashboardBody()
)
server <- function(input, output) {
}
shinyApp(ui = ui, server = server)
Click on Run App in the top right corner of the source pane, or enter shiny::runApp()
in the console. You’ll notice that so far we just have an empty app.
The shinydashboard
UI consists of three main parts, given as arguments to the dashboardPage()
function:
the header, dashboardHeader()
the sidebar, dashboardSidebar()
the main body, dashboardBody()
We’ll start by choosing a skin for the app. In the dashboardPage()
function, change skin = "purple"
to a colour of your choice. To see all the available skin colours, see the shinydashboard documentation. Run the app to see how this affects the app’s appearance.
Next we’ll choose a title for the app. In the dashboardHeader()
function, enter title = "My App Title"
. Run the app to see how this affects the app’s appearance. Your title may be too long to display, in which case, see here.
By now your App should look something like this:
The next step is to build the body for our tabs.
The content for different tabs is created using the tabItems()
function. Each tab is then described using the tabItem()
function, embedded inside tabItems()
.
Change the dashboardBody()
function to include the tabItems
function, and describe the stimulus features tab like so:
dashboardBody(
tabItems(
tabItem(
tabName = "stim-features",
fluidRow(
# the tab's content will go in here
)
)
)
)
Note that the tabItem()
function “knows” which tab you are referring to because of the tabName
argument, so make sure this matches the tab name you gave the stimulus features tab (above).
New tabs are created by giving additional tabItem()
functions as arguments to tabItems()
.
A distinctive feature of shinydashboard
is boxes
. These are a really easy way of organising your content in Shiny Apps. We can create a box using the box()
argument, and putting it inside the fluidRow()
function for the stimulus features tab.
Replace the section of your code that reads, # the tab's content will go in here
, with the following:
box(
width = 6, # an integer between 1 and 12, where 1 is 1/12 of the possible width
title = "Stimulus Size",
numericInput("size", "Size", value=3.2, min=0.01, step=0.01, width="100%")
)
Your App’s Stimulus Features tab should now look something like this:
Have another look at the example app. Let’s include the drop-down menu that lets you select the measurement units for your Stimulus Size. Make sure to give “cm”, “mm”, and “inches” as options. Set the inputId
argument to something like "size_units"
. For a refresher, see selectInput()
from the last tutorial.
selectInput("size_units", "Units", c("cm", "mm", "inches"))
Let’s add the next box on the Stimulus Features tab, which will be used to input the distance of the stimulus from the participant. After the bracket which closes the box()
function for our stimulus size box, add a comma (and new line for neatness), and create another box()
.
Most of the arguments can then be copied over, but make sure to change the title
, and the inputId
and label
arguments for the user input.
box(
width = 6, # an integer between 1 and 12, where 1 is 1/12 of the possible width
title = "Stimulus Distance",
numericInput("distance", "Distance", value=3.2, min=0.01, step=0.01, width="100%"),
selectInput("distance_units", "Units", c("cm", "mm", "inches"))
)
Now that we have our basic UI built, we want to calculate our reactive values, and then render the output in our app’s results tab. Anything calculated after the app first initialises needs to be calculated in the server. These values are reactive in the sense that they react to the user’s input. Reactivity is the most confusing thing about shiny, but also the coolest.
Since the user could have theoretically given their stimulus’ size in mm, but its distance in inches, the first step is to put these in consistent units. Thankfully, we have a handy to_mm()
function, which takes two arguments: a numeric value, and its current units (“mm”, “cm”, “inches”). The function returns a single numeric value, which is the same value but in mm.
As an example:
to_mm(29, "inches")
## [1] 736.6
How Reactive Values work:
Reactive values are essentially functions, which provide the current reactive value as output when evaluated (e.g. myValue()
).
The user’s input is handily stored in a list object called input
. Specific values can be extracted with input$inputID
.
Reactive values are assigned in the form myValue <- reactive({ 2 * input$userNumber })
.
To get our stimulus size and distance values, we can add something like this to our server, referencing the user’s values with the inputIDs we added in our UI:
stim_size <- reactive({
to_mm(input$size, input$size_units)
})
stim_distance <- reactive({
to_mm(input$distance, input$distance_units)
})
We can now use these reactive values to calculate another reactive value, the visual angle of the stimulus:
visual_angle <- reactive({
get_va(stim_size(), stim_distance())
})
Now we have the visual angle calculated, we just need to show it to the user. To do this, there are a number of “render” functions, which allow us to render UI features reactively. For example, renderPlot()
lets us show the user a reactively-rendered graph. These render functions work similarly to the reactive()
function.
As we just want to show the user the output, we’re going to render an infoBox (similar to a valueBox), with the renderInfoBox()
function.
output$results_box <- renderInfoBox({
infoBox(
"Visual Angle", paste0(visual_angle(), " degrees"),
icon=icon("eye"), color="purple"
)
})
If you run the app now, you’ll notice that we get a whole lot of nothing on the results tab. This is because we’ve rendered the info box with our results, but we still need to say where we want to put it. Put a comma after the last tabItem, and add the following code.
tabItem(
tabName = "results",
fluidRow(
infoBoxOutput("results_box"),
tags$style("#results_box {width:100%;}")
)
)
Note: The tags$style()
function is an example of inline css in our code. In this example we’re styling our info box to have a width of 100%
They might seem confusing, but shiny and shinydashboard are great ways to create interactive apps to help solve common problems (or demonstrate difficult ideas) in Science, which require your users to have minimal or no coding experience in R. Shinydashboard in particular makes it easy to build a professional-looking and intuitive UI. Your shiny apps can work great as standalone applications, or can be built into your packages to provide a friendlier face to your users.
This is something I planned on covering but didn’t have enough time to include. Often I find that I want to build several very similar UI features. Rather than just copy and pasting the code, it’s possible to build the elements iteratively. This can make your code much easier to read and debug. One way of doing this is with a lapply()
loop:
lapply(1:15, function(i){
box(
width = 6,
title = paste("Box Number", i, sep=" "),
paste("Box ", i, "'s content will go here...", sep="")
)
})


Office365 Web Sample
Load ID
Load Messages with API
Load Contacts with API
Load Messages with REST
Load Contacts with REST
Load Contacts with REST (no jQuery)
Clear
Logout
Microsoft(Live) Account
Messages:
Contacts:


| Opcode/Instruction | Op /En | 64/32 bit Mode Support | CPUID Feature Flag | Description |
|---|---|---|---|---|
|
EVEX.NDS.128.66.0F3A.W0 50 /r ib VRANGEPS xmm1 {k1}{z}, xmm2, xmm3/m128/m32bcst, imm8 |
FV | V/V | AVX512VL AVX512DQ | Calculate four RANGE operation output value from 4 pairs of single-precision floating-point values in xmm2 and xmm3/m128/m32bcst, store the results to xmm1 under the writemask k1. Imm8 specifies the comparison and sign of the range operation. |
|
EVEX.NDS.256.66.0F3A.W0 50 /r ib VRANGEPS ymm1 {k1}{z}, ymm2, ymm3/m256/m32bcst, imm8 |
FV | V/V | AVX512VL AVX512DQ | Calculate eight RANGE operation output value from 8 pairs of single-precision floating-point values in ymm2 and ymm3/m256/m32bcst, store the results to ymm1 under the writemask k1. Imm8 specifies the comparison and sign of the range operation. |
|
EVEX.NDS.512.66.0F3A.W0 50 /r ib VRANGEPS zmm1 {k1}{z}, zmm2, zmm3/m512/m32bcst{sae}, imm8 |
FV | V/V | AVX512DQ | Calculate 16 RANGE operation output value from 16 pairs of single-precision floating-point values in zmm2 and zmm3/m512/m32bcst, store the results to zmm1 under the writemask k1. Imm8 specifies the comparison and sign of the range operation. |
| Op/En | Operand 1 | Operand 2 | Operand 3 | Operand 4 |
| FV | ModRM:reg (w) | EVEX.vvvv (r) | ModRM:r/m (r) | Imm8 |
Description
This instruction calculates 4/8/16 range operation outputs from two sets of packed input single-precision FP values in the first source operand (the second operand) and the second source operand (the third operand). The range outputs are written to the destination operand (the first operand) under the writemask k1.
Bits7:4 of imm8 byte must be zero. The range operation output is performed in two parts, each configured by a two-bit control field within imm8[3:0]:
The encodings of Imm8[1:0] and Imm8[3:2] are shown in Figure 5-27.
When one or more of the input value is a NAN, the comparison operation may signal invalid exception (IE). Details with one of more input value is NAN is listed in Table 5-12. If the comparison raises an IE, the sign select control (Imm8[3:2]) has no effect to the range operation output, this is indicated also in Table 5-12.
When both input values are zeros of opposite signs, the comparison operation of MIN/MAX in the range compare operation is slightly different from the conceptually similar FP MIN/MAX operation that are found in the instructions VMAXPD/VMINPD. The details of MIN/MAX/MIN_ABS/MAX_ABS operation for VRANGEPD/PS/SD/SS for magni-tude-0, opposite-signed input cases are listed in Table 5-13.
Additionally, non-zero, equal-magnitude with opposite-sign input values perform MIN_ABS or MAX_ABS compar-ison operation with result listed in Table 5-14.
Operation
RangeSP(SRC1[31:0], SRC2[31:0], CmpOpCtl[1:0], SignSelCtl[1:0])
{
// Check if SNAN and report IE, see also Table 5-12
IF (SRC1=SNAN) THEN RETURN (QNAN(SRC1), set IE);
IF (SRC2=SNAN) THEN RETURN (QNAN(SRC2), set IE);
Src1.exp (cid:197) SRC1[30:23];
Src1.fraction (cid:197) SRC1[22:0];
IF ((Src1.exp = 0 ) and (Src1.fraction != 0 )) THEN// Src1 is a denormal number
IF DAZ THEN Src1.fraction (cid:197) 0;
ELSE IF (SRC2 <> QNAN) Set DE; FI;
FI;
Src2.exp (cid:197) SRC2[30:23];
Src2.fraction (cid:197) SRC2[22:0];
IF ((Src2.exp = 0 ) and (Src2.fraction != 0 )) THEN// Src2 is a denormal number
IF DAZ THEN Src2.fraction (cid:197) 0;
ELSE IF (SRC1 <> QNAN) Set DE; FI;
FI;
IF
(SRC2 = QNAN) THEN{TMP[31:0] (cid:197) SRC1[31:0]}
ELSE IF(SRC1 = QNAN) THEN{TMP[31:0] (cid:197) SRC2[31:0]}
ELSE IF (Both SRC1, SRC2 are magnitude-0 and opposite-signed) TMP[31:0] (cid:197) from Table 5-13
ELSE IF (Both SRC1, SRC2 are magnitude-equal and opposite-signed and CmpOpCtl[1:0] > 01) TMP[31:0] (cid:197) from Table 5-14
ELSE
Case(CmpOpCtl[1:0])
00: TMP[31:0] (cid:197) (SRC1[31:0] ≤ SRC2[31:0]) ? SRC1[31:0] : SRC2[31:0];
01: TMP[31:0] (cid:197) (SRC1[31:0] ≤ SRC2[31:0]) ? SRC2[31:0] : SRC1[31:0];
10: TMP[31:0] (cid:197) (ABS(SRC1[31:0]) ≤ ABS(SRC2[31:0])) ? SRC1[31:0] : SRC2[31:0];
11: TMP[31:0] (cid:197) (ABS(SRC1[31:0]) ≤ ABS(SRC2[31:0])) ? SRC2[31:0] : SRC1[31:0];
ESAC;
FI;
Case(SignSelCtl[1:0])
00: dest (cid:197) (SRC1[31] << 31) OR (TMP[30:0]);// Preserve Src1 sign bit
01: dest (cid:197) TMP[31:0];// Preserve sign of compare result
10: dest (cid:197) (0 << 31) OR (TMP[30:0]);// Zero out sign bit
11: dest (cid:197) (1 << 31) OR (TMP[30:0]);// Set the sign bit
ESAC;
RETURN dest[31:0];
}
CmpOpCtl[1:0]= imm8[1:0]; SignSelCtl[1:0]=imm8[3:2];
VRANGEPS
(KL, VL) = (4, 128), (8, 256), (16, 512)
FOR j (cid:197) 0 TO KL-1
i (cid:197) j * 32
IF k1[j] OR *no writemask* THEN
IF (EVEX.b == 1) AND (SRC2 *is memory*)
THEN DEST[i+31:i] (cid:197) RangeSP (SRC1[i+31:i], SRC2[31:0], CmpOpCtl[1:0], SignSelCtl[1:0]);
ELSE DEST[i+31:i] (cid:197) RangeSP (SRC1[i+31:i], SRC2[i+31:i], DAZ, CmpOpCtl[1:0], SignSelCtl[1:0]);
FI;
ELSE
IF *merging-masking*
; merging-masking
THEN *DEST[i+31:i] remains unchanged*
ELSE
; zeroing-masking
DEST[i+31:i] = 0
FI;
FI;
ENDFOR;
DEST[MAX_VL-1:VL] (cid:197) 0
The following example describes a common usage of this instruction for checking that the input operand is bounded between ±150.
VRANGEPS zmm_dst, zmm_src, zmm_150, 02h;
Where: zmm_dst is the destination operand. zmm_src is the input operand to compare against ±150. zmm_150 is the reference operand, contains the value of 150. IMM=02(imm8[1:0]=’10) selects the Min Absolute value operation with selection of src1.sign.
In case |zmm_src| < 150, then its value will be written into zmm_dst. Otherwise, the value stored in zmm_dst will get the value of 150 (received on zmm_150). However, the sign control (imm8[3:2]=’00) instructs to select the sign of SRC1 received from zmm_src. So, even in the case of |zmm_src| ≥ 150, the selected sign of SRC1 is kept. Thus, if zmm_src < -150, the result of VRANGEPS will be the minimal value of -150 while if zmm_src > +150, the result of VRANGE will be the maximal value of +150.
Intel C/C++ Compiler Intrinsic Equivalent
VRANGEPS __m512 _mm512_range_ps ( __m512 a, __m512 b, int imm); VRANGEPS __m512 _mm512_range_round_ps ( __m512 a, __m512 b, int imm, int sae); VRANGEPS __m512 _mm512_mask_range_ps (__m512 s, __mmask16 k, __m512 a, __m512 b, int imm); VRANGEPS __m512 _mm512_mask_range_round_ps (__m512 s, __mmask16 k, __m512 a, __m512 b, int imm, int sae); VRANGEPS __m512 _mm512_maskz_range_ps ( __mmask16 k, __m512 a, __m512 b, int imm); VRANGEPS __m512 _mm512_maskz_range_round_ps ( __mmask16 k, __m512 a, __m512 b, int imm, int sae); VRANGEPS __m256 _mm256_range_ps ( __m256 a, __m256 b, int imm); VRANGEPS __m256 _mm256_mask_range_ps (__m256 s, __mmask8 k, __m256 a, __m256 b, int imm); VRANGEPS __m256 _mm256_maskz_range_ps ( __mmask8 k, __m256 a, __m256 b, int imm); VRANGEPS __m128 _mm_range_ps ( __m128 a, __m128 b, int imm); VRANGEPS __m128 _mm_mask_range_ps (__m128 s, __mmask8 k, __m128 a, __m128 b, int imm); VRANGEPS __m128 _mm_maskz_range_ps ( __mmask8 k, __m128 a, __m128 b, int imm);
SIMD Floating-Point Exceptions
Invalid, Denormal
Other Exceptions
See Exceptions Type E2.


WITNESS LIST Health & Human Services Committee April 9, 1997-8:00A SB 29 For: Groomer, Cindy (Cty. & Dist. Clks. Asn.), Amarillo Rhoads, Mary (Wichita Cty. Fam. Ct.), Wichita Falls Against: Green, Bob (Texas Fathers Alliance), Austin On: Baldwin, Howard (self), Austin Registering, but not testifying: For: Wolbrueck, Bonnie (Cty. & Dist. Clks. Asn.), Georgetown On: Key, Alicia (Office of Atty. General), Austin Sampson, John J. (self), Austin SB 55 On: Baker, Dennis E. (Texas Dept. of Health), Austin Steeg, Susan (Texas Dept. of Health), Austin SB 84 For: Dubois, Jo Ann (Texas Health Care Assn.), Port Arthur Against: Copeland, Christopher (Tx. Assn. Lic. Facil.), Wichita Falls Crank, Timothy (Normandy Terrace S.E.), San Antonio Foster, Mark (Tx. Assn. Lic. Facil.), Austin Hanna, Cynthia (Tx. Assn. Lic. Facil.), Hondo Hunter, Tom (Tx. Assn. Lic. Facil.), Austin Portwood, Benjamin (Park Plaza Nurs. Home), Mart Roberts, Beverly (Tx. Assn. Lic. Facil.), San Antonio Wade, John (Tx. Bd. Nurs. Hm. Adm.), San Marcos On: Kennedy, Ramona (Tx. Bd. Nurs. Hm. Adm.), Flower Mound Lane, Bobby (Texas Dept. of Health), Austin Smith, Catherine (Azalia Trail Nurs. Home), Grand Saline Thorpe, Lindsay (Chartwell Group), Dallas Zukowski, Jim (Texas Dept. of Health), Austin Registering, but not testifying: For: Carter, Candice (Amer. Assn. Retir. Per.), Austin Clayton, Nan (Amer. Assn. Retir. Per.), Austin Graves, Tim (Texas Health Care Assn.), Austin Holtermann, John (Tx. Silver-Haired Leg.), San Marcos Kramer, Ken (Amer. Assn. Retir. Per.), Austin Against: Andrews, Myrtle (Tx. Assn. Lic. Facil.), Natalia Seesengood, Earl (Grayson Sq. Hlth. Cent.), Floresville Stokes, Pam (Tx. Assn. Nurs. Facil.), Sterling City SB 361 For: Butler, Chris (Texas Acupuncture Assn.), Austin Newbold, Dee Ann (Texas Acupuncture Assn.), Austin Shepard, Steve (Texas Acupuncture Assn.), Austin Weitz, Tim (Texas Acupuncture Assn.), Austin Written materials submitted: For: Berger, Ed (Seton Healthcare Netwk.), Austin SB 877 For: Findley, John (Texas Dental Assn.), Aubrey Vaclav, Michael (Texas Dental Assn.), Amarillo Von Dehlen, Tim (Dental Lab. Assn.), Austin On: Clendenney, Mei Ling (State Bd. Dent. Examin.), Austin Colbert, Paul (Tx. Dental Hygen. Assn.), Houston Hill, Jeffry (State Bd. Dent. Examin.), San Marcos Pavelka, Miro (self), Richardson Starr, Kent (self), Waco SB 938 For: Bresette, Patrick (Cent. Pub. Pol. Prior.), Austin Florez, Veronica (self), Austin On: Bresette, Patrick (Cent. Pub. Pol. Prior.), Austin Registering, but not testifying: On: Montgomery, Michael (Texas Dept. of Health), Austin Winfree, Mary Alice (Texas Dept. of Health), Austin Wolfe, Valerie (Texas Dept. of Health), Austin SB 1067 For: Austin, David (self), Austin Beardall, William (Tx. Appleseed Adv. Fund), Austin Benitez, Ismael (self), Austin Dunkelberg, Anne (Cent. Pub. Pol. Prior.), Austin Fleshman, Karen (Tx. Immig./Refug. Coal.), Austin Hernandez, Leslie (Natl. Assn. Social Wkr.), Austin Kauffman, Al (Mex.-Amer. Legal Defen.), San Antonio On: Lyons, Catriona (Tx. Dept. Human Svcs.), Austin Registering, but not testifying: For: Allison, Jim (Tx. Assn. County Judge.), Austin Heiligenstein, Anne (Tx. Conf. Cath. Health), Austin Lattimer, David (Assn. Hms./Svcs. Aging), Austin McGiffert, Lisa (Consumers Union), Austin Riddering, Hannah (Tx. Natl. Organ. Women), Austin Rodriguez, Jose (Tx. Appleseed Adv. Fund), Austin Rodriguez, Margot (self), Austin SB 1163 For: Holley, Linda Janet (Texas Medical Assn.), San Antonio Magruder, Mary Jo (Plan. Coun. Dev. Disab.), Austin Rush, Carl (Family Health Foundat.), San Antonio Sweetland, Pam (Cook Child. Med. Center), Fort Worth Wallace, Mark (Child. Hosp. Assn. Tx.), Houston Warren, Robert (Texas Children's Hosp.), Houston Wayne, Richard (Santa Rosa Child. Hosp.), San Antonio Registering, but not testifying: For: Beardall, William (Tx. Appleseed Adv. Fund), Austin Bell, Ira (Texas Medical Assn.), Austin Brady, Denise (The Arc of Texas), Austin Cernoch, Jennifer (Tx. Respite Resor. Net.), San Antonio Devall, Christine (Ment. Hlth. Assn. Texas), Austin Dunkelberg, Anne (Cent. Pub. Pol. Prior.), Austin Epstein, Nancy (Disab. Policy Consorti.), Austin Haas, John (San Antonio Hosp. Coun.), San Antonio Heiligenstein, Anne (Tx. Conf. Cath. Hlth.), Austin Hernandez, Leslie (Natl. Assn. Soc. Wkrs.), Austin Markland, Barrett (Advocacy, Inc.), Austin McGiffert, Lisa (Consumers Union), Austin Parchman, Michael (Texas Medical Assn.), El Paso Price, Cliff (Texas Pediatric Society), Austin Richey, Don (Guadalupe Valley Hosp.), Seguin On: Baumgartner, Eric (Texas Dept. of Health), Austin Henderson, Marina (Hlth. Hum. Svcs. Comm.), Austin Hudson, Lynne (Texas Dept. of Health), Austin Moore, Frank (self), San Antonio Penfield, Susan (Texas Dept. of Health), Austin Written materials submitted: For: Sperry, Bryan (Child. Hosp. Assn. Tx.), Austin SB 1164 For: Graves, Tim (Texas Health Care Assn.), Austin Holley, Linda Janet (Texas Medical Assn.), San Antonio Magruder, Mary Jo (Plan. Coun. Dev. Disab.), Austin Wallace, Mark (Child. Hosp. Assn. Tx.), Houston Warren, Robert (Texas Children's Hosp.), Houston Wayne, Richard (Santa Rosa Child. Hosp.), San Antonio Registering, but not testifying: For: Beardall, William (Tx. Appleseed Adv. Fund), Austin Bell, Ira (Texas Medical Assn.), Austin Berger, Ed (Seton Healthcare Netwk.), Austin Cernoch, Jennifer (Tx. Respite Resou. Net.), San Antonio Devall, Christine (Ment. Hlth. Assn. Tx.), Austin Dunkelberg, Anne (Cent. Pub. Pol. Prior.), Austin Epstein, Nancy (Disab. Policy Consorti,), Austin Ferris, Beth (Tx. Adv. Nurs. Hm. Res.), Austin Haas, John (San Antonio Hosp. Coun.), San Antonio Heiligenstein, Anne (Tx. Conf. Cath. Hlth.), Austin Hernandez, Leslie (Natl. Assn. Social Wkr.), Austin Holtermann, John (Tx. Silver-Haired Leg.), San Marcos Markland, Barrett (Advocacy, Inc.), Austin McGiffert, Lisa (Comsumers Union), Austin Parchman, Michael (Texas Medical Assn.), El Paso Price, Cliff (Texas Pediatric Society), Austin Smelser, Glenda (Tx. Adv. Nurs. Hm. Res.), Grand Prarie Smelser, Tommy (Tx. Adv. Nurs. Hm. Res.), Grand Prarie Speights, Sara (Tx. Assn. Home Care), Austin On: Baumgartner, Eric (Texas Dept. of Health), Austin Henderson, Marina (Hlth. Hum. Svcs. Comm.), Austin Hudson, Lynne (Texas Dept. of Health), Austin Penfield, Susan (Texas Dept. of Health), Austin Written materials submitted: For: Sperry, Bryan (Child. Hosp. Assn. Tx.), Austin SB 1165 For: Holley, Linda (Texas Medical Assn.), San Antonio Wallace, Mark (Child. Hosp. Assn. Tx.), Houston Warren, Robert (Texas Children's Hosp.), Houston Wayne, Richard (Santa Rosa Child. Hosp.), San Antonio On: Magruder, Mary Jo (Plan. Coun. Dev. Disab.), Austin Registering, but not testifying: For: Bell, Ira (Texas Medical Assn.), El Paso Berger, Ed (Seton Healthcare Netwk.), Austin Brady, Denise (The Arc of Texas), Austin Dunkelberg, Anne (Cent. Pub. Pol. Prior.), Austin Haas, John (San Antonio Hosp. Coun.), San Antonio Heiligenstein, Anne (Tx. Conf. Cath. Hlth.), Austin Hernandez, Leslie (Natl. Assn. Social Wkr.), Austin McGiffert, Lisa (Consumers Union), Austin Parchman, Michael (Texas Medical Assn.), El Paso Price, Cliff (Texas Pediatric Society), Austin On: Baumgartner, Eric (Texas Dept. of Health), Austin Henderson, Marina (Hlth. Hum. Svcs. Comm.), Austin Hudson, Lynne (Texas Dept. of Health), Austin McKinney, Mike (Hlth. Hum. Svcs. Comm.), Austin Penfield, Susan (Texas Dept. of Health), Austin Written materials submitted: For: Horton, Colleen (Adv. Special-Needs Kids), Austin Sperry, Bryan (Child. Hosp. Assn. Tx.), Austin SB 1234 Registering, but not testifying: On: Beechinor, Julia R. (Texas Dept. of Health), Austin SB 1262 For: Bresette, Patrick (Cent. Pub. Pol. Prior.), Austin On: Hall, Patricia (Texas Workforce Comm.), Austin Registering, but not testifying: For: Rush, Carl (Family Health Found.), San Antonio SB 1263 For: Bresette, Patrick (Cent. Pub. Pol. Prior.), Austin On: Hall, Patricia (Texas Workforce Comm.), Austin Registering, but not testifying: On: Moore, Frank J. (self), San Antonio SB 1400 On: Lovoi, Annette (Comptroller Pub. Accts.), Austin Registering, but not testifying: For: Ferris, Beth (Tx. Adv. Nurs. Hm. Res.), Austin Smelser, Glenda (Tx. Adv. Nurs. Hm. Res.), Grand Prarie Smelser, Tommy (Tx. Adv. Nurs. Hm. Res.), Grand Prarie SB 1475 For: Wynn, Ester (Tx. Lic. Childcare Asn.), Houston On: Alexander, Cindy (Comptroller Pub. Accts.), Austin Eells, Karen (Dept. Prot. Reg. Svcs.), Austin Registering, but not testifying: For: Bloom, Ed (Tx. Assn. Ed. Yng. Ch.), Austin Redwine, LaVerne A. (Child Care Prov. Assn.), Austin Robertson, Loretta R. (Found. for Tx. Children), Austin SB 1490 For: Bloom, Ed (Tx. Assn. Ed. Yng. Ch.), Austin Bresette, Patrick (Cent. Pub. Pol. Prior.), Austin Watson, Jeannette (Tx. Child Care Wkg. Gr.), Austin On: Brantley, Charlotte (Texas Workforce Cmsn.), Austin Registering, but not testifying: For: Redwine, LaVerne A. (Child Care Prov. Assn.), Austin Robertson, Loretta R. (Foud. for Tx. Children), Austin Simpson, Dee (Fed. Municipal Employ.), Austin On: Alexander, Cindy (Comptroller Pub. Accts.), Austin SB 1494 For: Levy, Rick (Texas AFL-CIO), Austin Registering, but not testifying: For: Beardall, William (Tx. Appleseed Adv. Fund), Austin Bresette, Patrick (Cent. Pub. Pol. Prior.), Austin Simpson, Dee (Fed. Municipal Employ.), Austin On: Hall, Patricia (Texas Workforce Comm.), Austin SB 1574 For: Parchman, Michael (Texas Medical Assoc.), El Paso Registering, but not testifying: For: DaSilva, Joe A. (Texas Hospital Assoc.), Austin Holley, Linda (Texas Medical Assoc.), San Antonio On: McKinney, Michael (Hlth. Hum. Svcs. Comm.), Austin SB 1763 For: Perry, Keith (Sears Meth. Retir. Sys.), Abilene Registering, but not testifying: For: Carter, Candice (Amer. Assn. Retir. Per.), Austin Clayton, Nan (Amer. Assn. Retir. Per.), Austin Hayes, Aaryce (Advocacy, Inc.), Austin Kramer, Ken (Amer. Assn. Retir. Per.), Austin SB 1764 On: Suehs, Tom (Tx. Health Care Assn.), Austin Thorpe, Lindsay (Chartwell Group), Dallas Registering, but not testifying: For: Clayton, Nan (Amer. Assn. Ret. Pers.), Austin Ferris, Beth (Tx. Adv. Nurs. Hm. Res.), Austin Kramer, Ken (Amer. Assn. Ret. Pers.), Austin Latimer, David (Homes & Svcs. for Aging), Austin Smelser, Glenda (Tx. Adv. Nurs. Hm. Res.), Grand Prairie Smelser, Tommy (Tx. Adv. Nurs. Hm. Res.), Grand Prairie Written materials submitted: For: Hayes, Aaryce (Advocacy, Inc.), Austin SB 1765 For: Deutscher, Gene (Acudetox Pilot Program), Fort Worth Turley, Gloria (Nat'l. Acu. Detox. Asn.), Waco Warton, Lory M. (Acudetox Technicians), Sweetwater Against: Butler, Chris (Texas Acupuncutre Assn.), Austin Newbord, Dee Ann (Texas Acupuncture Assn.), Austin Shepard, Steven B. (Texas Acupuncture Assn.), Austin Weitz, Tim (Texas Acupuncture Assn.), Austin Registering, but not testifying: For: Cooley, Laura (Nat'l. Acu. Detox. Asn.), Austin Dunkelberg, Anne (Cent. Pub. Pol. Prior.), Austin Vanderburg, Kern F. (Resolve Program), Austin SB 1824 For: Kleinworth, Tom (Baylor College of Med.), Houston Melantzon, Lorenzo A. (Thomason General Hosp.), El Paso Rodriguez, Jose (El Paso County), El Paso On: Hilgers, David (El Paso Hospital Dist.), Austin Smith, David R. (Texas Tech University), Lubbock Registering, but not testifying: For: McGiffert, Lisa (Consumers Union), Austin On: Crowson, James L. (Texas Tech University), Lubbock Rummel, Leah (Tx. Dept. of Insurance), Austin SCR 19 Registering, but not testifying: For: Benitez, Ismael (self), Austin Dunkelberg, Anne (Cent. Pub. Pol. Prior.), Austin Fleshman, Karen (Tx. Immigr. Refug. Cln.), Austin Kauffman, Al (Mex.-Amer. Leg. Def.), San Antonio Riddering, Hannah (Tx. Nat'l. Org. Women), Austin Rodriguez, Margot (self), Austin On: Lyons, Caitriona (Tx. Dept. Human Svcs.), Austin


Ozzy Osbourne Puts $25,000 Reward For Informing About Stolen Randy Rhoads’ ‘Irreplaceable’ Guitar
Rhoads learned to play guitar at Musonia, which is now run by his brother, Kelle Rhoads.
by IANSGrammy-winning singer and songwriter Ozzy Osbourne has offered a $25,000 reward for the return of his late friend Randy Rhoads’ stolen guitars.
The 71-year-old rocker took to social media to offer the reward for information leading to an arrest in the case and the return of the items, which were stolen from the Musonia School of Music in North Hollywood, California last month (November 2019), reports aceshowbiz.com.
Sharing photographs of the stolen instruments on Instagram, the Black Sabbath rocker wrote: “As many of you have heard, the Musonia School of Music in N. Hollywood, CA (the school where Randy Rhoads famously taught guitar) was viciously robbed on Thanksgiving night.”
“Musonia was run by Randy’s late mother, Delores, and after his death 37 years ago, the school became something of a pilgrimage to his fans from all over the world. It is a place where the Rhoads Family happily opened their hearts to share the life of Randy.”
“As you can imagine, the items that were stolen, including Randy’s first electric guitar, are irreplaceable to the Rhoads Family.”
Osbourne then shared he was personally “heartbroken” over the thefts and the damage caused at the school by the trespassing thieves.
Rhoads learned to play guitar at Musonia, which is now run by his brother, Kelle Rhoads. The school also doubles up as the Randy Rhoads Museum.
The young star was killed in 1982, at the age of 25, when the small plane in which he was a passenger crashed after clipping Osbourne’s tour bus in Leesburg, Florida. Two others died during the tragic incident.


In a new post sighted, Shatta Wale posed with Efia Odo, looking straight into her eyes and described her as “Miracle”.
Efia Odo replied to the post and wrote: “Bad man, 2020”.
See screenshot below:
Many fans of the two celebrities read meanings into it and hinted that maybe next year 2020 is when the two controversial people would walk down the aisle.
Read some comments below:
joyce_vahard: “Charles marry her already la.”
sweet in 2020: _heisbaby: “2020,Ghana b3hu miracle ???? 3b3fa weni so, kyes3 wahy3 spectacle .”
scoto_de_unruly_baron: “@efia_odo if u know u know.”
kwamakye: “King and the queen.”
don_shulace_degeneral: “By all means .”
fairpblondy: “All Love When You Roll Up….. @shattawalenima SM:”
ahwedie.abena: “love is here” Shatta also called the post a “prophecy”
bra.shatta.311: “Prophecy.”
Well, 2020 is just at the corner and we can’t wait to see what these two people are planning to do.


|
cppreference.com > FAQ
Frequently Asked QuestionsCan I get a copy of this site?We do provide a downloadable archived version of cppreference.com. If you're interested in getting archived versions of websites in general, you might want to check out utilities like GNU's wget (Windows version here). In addition, James Heany has compiled a PDF version of the site (as of October 2007) that is available for download. There is a C++ Reference PDF and a STL Reference PDF available for download. Also, James Brown has generously shared a set of Perl scripts that convert the content on this site to compiled help (CHM) format. His archive includes a CHM of the site (as of March 2008), Perl scripts, and instructions. Can I [mirror/translate/put up my own version of/etc.] this site?Sure, that would be great! All that we would ask is that you include a link back to this site so that people know where to get the most up-to-date content.Who is this site meant for?There are no "Introduction to Programming" tutorials here. This site is meant to be used by more-or-less experienced C++ programmers, who have a good idea of what they want to do and simply need to look up the syntax. If you're interested in learning C or C++, try one of these sites:Does this site contain a complete and definitive list of everything I can do with C++?Few things in life are absolute. Many C++ compilers have added or missing functionality. If you don't find what you are looking for here, don't assume that it doesn't exist. Do a search on Google for it.Some of the examples on this site don't work on my system. What's going on?Most of the code on this site was compiled under Linux (Red Hat, Debian, or Ubuntu) with the GNU Compiler Collection. Since this site is merely a reference for the Standard C and C++ specification, not every compiler will support every function listed here. For example,
You've got an error in this site.If you find any errors in this reference, please feel free to contact us -- feedback and code examples are always welcome.What's up with this site?Think of it as a community service, for geeks. |


Ocean [aw11], ocean, in The Outer Sea
Last updated Turn #136
Ocean [aw11], ocean, in The Outer Sea
------------------------------------------------------------------------
17: The Savvy Aardvark [ha5r], ship, 2 hulls, 1 rowing port, 6 sails,
17: 22% damaged, arrived from Ocean [aw12], owner:
17: Phantasm [n4b], Imperial Empire, duke, with two workers,
17: eight sailors
18: The Savvy Aardvark [ha5r], ship, 2 hulls, 1 rowing port, 6 sails,
18: 22% damaged, departed for Ocean [aw10].
Routes leaving Ocean:
North, to Ocean [av11], 6 days
East, to Ocean [aw12], 6 days
South, plain, to Open Pampas [ax11], Mandoria, 2 days
West, to Ocean [aw10], 6 days


A library to change the locale at runtime. It changes the underlying $locale
object, so changing the locale will change the formatting of all elements that use $locale
This angular module makes it possible to programmatically change the current locale.
Install it via npm or bower
$ npm install angular-dynamic-locale $ bower install angular-dynamic-locale
To use, simply include it as a dependency in your app and you're done!
angular.module('myApp', ['tmh.dynamicLocale'])
Pick a locale
Selected locale id: {{model.selectedLocale}}
Current locale id: {{$locale.id}}
A big number: {{1234567890 | number}}
The Epoch was on: {{0 | date}}
One million of the local currency: {{1000000 | currency}}


Set properties of the axis
Get or set classes for the whole plot
Get or set the maximum value
If set, the value will not be updated with the addition of new data.
Set the number format of the plot
Plot the current state on the svg
Add a value to be plotted
Set the width of the plot
Generated using TypeDoc
A comparison plotter


The repository name. In git the repository is always the name of the remote. So if you have specified a repository name in your Git configuration. You need to specify the exact same name here, otherwise no integration will be performed. We do the merge based on this.
No trailing slash on repository name.
Remember to specify this when working with NAMED repositories in Git


March was an exciting Month for Puppeteer Sharp. CI Server is up an running. Version 0.3 was released, implementing IDisposable, many Puppeteer features (such as User dat dir support) and also fixing many process leaks. We also released v.0.3.1, adding .NET Framework support.
[Read More]
Killing boilerplates in ASP.NET - Volume 1
We all hate boilerplates, right? That bunch of code that you copy over and over again. Boilerplates are not a complex piece of code but code so simple that we don’t take time to think about it. In this post, I will cover how to reduce some boilerplates we use...
[Read More]
Implementing PageSession in ASP.NET Webforms
Maintaining the state of a large page can be quite a challenge. Let’s say you were asked to implement a page with four tabs, each with two GridViews. Each Gridview would be editable and you would have one save button which would execute all database actions.
[Read More]
Puppeteer Sharp Monthly Report - March 2018
Puppeteer Sharp v0.1 released!
I’m super excited to announce that the first usable version of Puppeteer Sharp is ready to download from Nuget. The first milestone on the roadmap is completed.
[Read More]
Implementing a BasePage in your ASP.NET Webforms Project
I started to prepare two posts, one about Page Sessions and the other one about reducing QueryString, ViewState and Session boilerplate. But I realized that both solutions were implemented on a BasePage. So I felt that I first needed to write about the importance of implementing a BasePage in a...
[Read More]


--- layout: post title: I bought a Drifter date: 2004-05-25 00:00:00 ---
I bought a Drifter (delicious chewy chocolatey goodness for anyone who's not encountered it - just add a can of Dr Pepper for instant breakfast) the other day, and noticed one of the old "text in to win" promotions advertised on the side of the packet.
What caught my eye was that the promotion didn't even mention text messaging until you got to the small print - i.e. this stuff has reached the lovely point where it can be taken for granted that it uses texting. That struck me as a good thing, just as it was a good thing when people stopped being all proud that they had a web site (or fax machine, or telegraph) and started thinking about what they could usefully do with the darn thing...


--- layout: page title: Plurals (by ending and gender) bodyClass: plurals excerpt: How noun plural is affected by the word ending and gender --- {% include valkyrieNotice.html %}
Please, note: plural forms occurring less than 1% are mentioned in statistics but they are actually omitted from table listings.
{% for pluralEntry in site.data.stats.plural.byEndingAndGenus %} {% assign transformsCount = pluralEntry[0] %} {% assign rules = pluralEntry[1] %}| Ending | Gender | Plural transforms |
| -{{ rule.ending }} | {{ rule.genus }} |
{% for transformFrequency in rule.transformFrequencies %}
{{ transformFrequency.transform }} ({{ transformFrequency.percentage}}%) {% endfor %} |


UKCloud Limited (“UKC”) and Virtual Infrastructure Group Limited (“VIG”) (together “the Companies”) – in Compulsory Liquidation
On 25 October 2022, the Companies were placed into Liquidation with the Official Receiver appointed as Liquidator and J Robinson and A M Hudson simultaneously appointed as Special Managers to manage the liquidation process on behalf of the Official Receiver.
Further information regarding the Liquidations can be found here: https://www.gov.uk/government/news/virtual-infrastructure-group-limited-and-ukcloud-limited-information-for-creditors-and-interested-parties
Contact details:
For any general queries relating to the Liquidations please email<EMAIL_ADDRESS>For customer related queries please email<EMAIL_ADDRESS>For supplier related queries please email<EMAIL_ADDRESS>Portal user access
For all customers in the UKCloud Portal there is a concept of companies, business accounts and services, which allows for different levels of segregation.
When a customer starts using the UKCloud Portal, we create the initial administrator username that enables access prior to any customer data or systems being provisioned on our platforms.
Security of our services is paramount and we provide the facilities to enable customers to manage user access; this is also because we have no means of verifying the identity, roles and access rights of an individual user.
Administrator responsibilities
Customers need to allocate administrators who are responsible for:
Adding and deleting new user accounts
Maintaining the appropriate permissions and access for users
Activating and locking individual user accounts where required
Ensuring that only appropriate users are listed as administrators
To avoid a situation where all administrators are unable to access services, UKCloud recommends that each customer assigns multiple administrators.
UKCloud Support
There are a number of Access Management activities which UKCloud can assist with. These are:
Enabling access to multiple business accounts for individual users. This can be provided through a Service Request raised by a user from the business account for which access will be enabled.
VPN set up on a secondary edge gateway. Customers are able to configure and manage an edge gateway VPN on their primary edge gateway; however where a secondary edge gateway is used, UKCloud will assist in establishing the VPN and administering VPN accounts and passwords. Customers can also choose to install and self-manage an alternative VPN product.
Password reset and account unlock for an administrator. In this scenario the administrator will need to provide details from their memorable word. UKCloud Support will send credentials to the telephone number registered to the administrator's user account.
Provide a listing of user account permissions. We recognise that customers may want to undertake an audit of the permissions of Portal users. Permissions for each user are visible under Contacts and we can also provide an extract of these.
Password reset
We recommend that you change your password at least every 90 days. You can change your password at any time from the user account menu in the Portal. For more information, see How to reset your UKCloud Portal password or memorable word.
If you forget your password, you can request a password reset link on the Portal log in page. This link will be sent to your password reset email address. By default, your password reset email address is the same as the email address you use to log in to the Portal. If you're not able to access the email account used for your login email address, you must make sure to set your password reset email address to a different email account that you can access so that you can receive password reset emails. For information about how to set your password reset email address, see How to set your password reset email address.
Feedback
If you find a problem with this article, click Improve this Doc to make the change yourself or raise an issue in GitHub. If you have an idea for how we could improve any of our services, send an email to feedback@ukcloud.com.


| Created: | 1/27/2021 3:41:56 PM |
| Modified: | 1/27/2021 3:41:56 PM |
| Project: | |
| Advanced: |
| Attribute |
|
Public bigint spa_number_id |
|
Details:
|
|
Public varchar(255) spa_number_spa_number |
|
Details:
|
|
Public varchar(255) spa_number_home_type |
|
Details:
|
|
Public timestamp with time zone(0) created_at |
|
Details:
|
|
Public bigint created_by_user_id |
|
Details:
|
|
Public varchar(255) created_by_user_sub |
|
Details:
|
|
Public varchar(255) created_by_user_first_name |
|
Details:
|
|
Public varchar(255) created_by_user_last_name |
|
Details:
|
|
Public varchar(255) created_by_user_email |
|
Details:
|
|
Public timestamp with time zone(0) updated_at |
|
Details:
|
|
Public bigint updated_by_user_id |
|
Details:
|
|
Public varchar(255) updated_by_user_sub |
|
Details:
|
|
Public varchar(255) updated_by_user_first_name |
|
Details:
|
|
Public varchar(255) updated_by_user_last_name |
|
Details:
|
|
Public varchar(255) updated_by_user_email |
|
Details:
|
|
Public timestamp with time zone(0) start_date |
|
Details:
|
|
Public timestamp with time zone(0) end_date |
|
Details:
|
|
Public bigserial ods_id |
|
Details:
|
|
Public jsonb ods_meta |
|
Details:
|
|
Public varchar(255) ods_created_by |
|
Details:
|
|
Public timestamp with time zone(0) ods_created_at |
|
Details:
|
|
Public varchar(255) created_by_user_oid |
|
Details:
|
|
Public varchar(255) updated_by_user_oid |
|
Details:
|
| Operation | ||
|
Public spa_numbers_pkey( ods_id: bigserial, |
||
|
Details:
<<PK>>
|
| Tag | Value |
| Owner | public |
|
Details:
|
| Property | Value |
| isFinalSpecialization: | 0 |


Caleb X. Berger / c-x-berger
Topics covered in CS 193 SSH 101:
scp
scp
review| From | To | Command |
|---|---|---|
| Local | Remote | scp file user@remote:~/dest/dir |
| Remote | Local | scp user@remote:~/source/file ~/local/copy.txt |
You can recursively copy entire directories with the -r
flag
Topics covered here:
man ssh-keygen
will tell you there are four key types
You know, like a liar.
Practically, three work for most hosts:
ecdsa
rsa
ed25519
dsa
has systemic flaws that can leak the private key - yikes!
RSA will work on everything, but requires big keys
Ed25519 is the favorite child - short keys, doesn't have DSA's issues... but it's new enough that some Purdue machines don't support it
Like RHEL 6 machines in the ECN.
Hail Purdue.
Map a port on one machine to another
Make remote services available at local addresses, or vice versa
Honestly? Usually, to bypass a firewall.
ssh -L 123:localhost:456<EMAIL_ADDRESS>routes traffic bound for localhost:123
to
example.org:456
via example.org
Traffic can also pass through the remote to an even
further host: -L 8000:example.com:443 example.org
You probably want to add -fNT
to be "nicer"
ssh -fNT -L localport:destination:port user@viahost
Many hosts read e.g. the HTTP Host
header
and either block or act very strangely when they see an
unexpected value
We will see a way around this later
ssh -R 123:localhost:456<EMAIL_ADDRESS>sends traffic from example.org:123
to localhost:456
Ask a remote to forward traffic to you (or through you, anyway)
ssh -fNT -R srcport:destination:destport user@srchost
We saw that some services freak out when tunneled to
SOCKS is a way of forwarding that's actually meant to be a proxy. As such, the application (e.g. your browser) has to support it
ssh -D 1337 -fCNT<EMAIL_ADDRESS>Sign SSH keys with some given "master key"
A host can authorize any keys signed by some root certificate for authentication, and clients may choose to trust host keys signed by some root.
Useful within organizations to reduce friction with new keys/hosts
This will later sign our host and user keys
ssh-keygen -t ed25519 -f example-ca -C "Comment"
Keep example-ca
well-secured!
example-ca.pub
should go to wherever
you intend to trust signed keys.
Just be sure to set keysize on RSA keys.
ssh-keygen -s example-ca \
-n your,usernames \
-V +52w \
-I logging-name \
key.pub
example-ca.pub
on the hostsshd_config
, add a line
TrustedUserCAKeys /path/to/example-ca.pub
example-ca
is
allowed for the user(s) in that key's principals list.
In our example, that would be your,usernames
-h
in there.
ssh-keygen -h -s example-ca \
-n host.example.com \
-V +52w \
-I host.name-key \
keyfile.pub
Add HostCertificate /path/to/keyfile-cert.pub
to sshd_config
@cert-authority *.purdue.edu ssh-ed25519 ...
Add @cert-authority some,hosts XXX
to
known_hosts
where XXX
is the
contents of example-ca.pub
Speed up SSH by only logging in once
Specifically, after first login TCP/IP connection is kept open for a set time after exit.
And "all" we have to to is edit ~/.ssh/config
Example multiplexing configuration:
Host *.cs.purdue.edu
# user@host:port
ControlPath ~/.ssh/controls/%r@%h:%p
# use master connection iff available
ControlMaster auto
# keep master connection alive for 10 minutes after last session ends
ControlPersist 10m
Options like -L
, -R
will add a new forward, but it won't close until the master closes as well
We also can't change forwarded ports on the fly
To cancel a forward on a master connection, use ssh -O cancel -L ... user@host
Special key sequences that instruct SSH to do particular things "mid-flight"
These are used during a session to alter that session.
Some are client-side only, not dependent on host
Press, in order, one at a time, Enter, ~, ?
Examples:
~.
kills that session and all multiplexed sessions~C
is really interesting (the "SSH command-line") but is unavailable on multiplexed~V
/~v
increases/decreases SSS's verbosityThese slides are on GitHub at https://github.com/c-x-berger/ssh-201
The slide deck is also served as a GitHub pages site.


GRUB-MKLAYOUT(1) User Commands GRUB-MKLAYOUT(1) NAME grub-mklayout - generate a GRUB keyboard layout file SYNOPSIS grub-mklayout [OPTIONS] DESCRIPTION -i, --input set input filename. Default is STDIN -o, --output set output filename. Default is STDOUT -h, --help display this message and exit. -V, --version print version information and exit. -v, --verbose print verbose messages. REPORTING BUGS Report bugs to<EMAIL_ADDRESS>SEE ALSO grub-mkconfig(8) The full documentation for grub-mklayout is maintained as a Texinfo man‐ ual. If the info and grub-mklayout programs are properly installed at your site, the command info grub-mklayout should give you access to the complete manual. grub-mklayout (GRUB) 1.99-27.1crunchMayg2013 GRUB-MKLAYOUT(1)


Hello i was hopeing someone could help me with a problem i am haveing with my new video card i had installed, Since i put this new card in and try starting NWN up all the logo's and bioware stuff pops up, but when i get to the multiplayer new game selection screen it's all black.
I looked inside my directory folder and noticed in the "nwn config" file it was still labeled as my older video card, i tried retyping in the information of my new card but still the same problem, i know its not my new card seeing it's a huge improvement from my old card, oh and toolset works also with this new card.. Can someone offer some wisdom on this please?
My apologie's if something like this was posted before i did not take the time to view older post's.
You'll have a better response in the general nwn forums for tech support.
Click Here
Thank you i'm sorry i was in a hurry to find some result's, and didn't realize where i was posting
Wasn't meant as a slap on the wrist, it was more of a "shine the flashlight at the spot that can help" reply.
I had a similiar problem to this when I upgraded to a new graphics card my problem sorted it self out when connected it to the power supply it had an additional socket that i never noticed my old card just plugged in and didnt need any extra power. Toolset would work fine but when i started the game just darkness. _________________ Beware the beast of Caerbannogh


Processes a set of XML documents using a stylesheet written in DVSL (Declarative Velocity Style Language).
This is useful for building views of XML based documentation, or for generating code, etc. Conceptually, this task performs the same function as the <style> task included with the Ant distribution but using a stylesheet with DVSL syntax instead of XSLT.
As DVSL has a tight binding with Java objects, access is provided to the "Toolbox" which loads properties and objects which are then exposed to the stylesheet in a transparent manner.
Since DVSL utilizes Velocity for rendering its output, access is provided to allow configuring the Velocity runtime environment from within this task.
It is possible to refine the set of files that are being processed. This can be done with the includes, includesfile, excludes, excludesfile and defaultexcludes attributes. With the includes or includesfile attribute you specify the files you want to have included by using patterns. The exclude or excludesfile attribute is used to specify the files you want to have excluded. This is also done with patterns. And finally with the defaultexcludes attribute, you can specify whether you want to use default exclusions or not. See the section on directory based tasks, on how the inclusion/exclusion of files works, and how to write patterns.
This task forms an implicit FileSet and supports all
attributes of <fileset>
(dir
becomes basedir
)
as well as the nested <include>
, <exclude>
and <patternset>
elements.
DVSL supports the use of a <tool> element which is used to pass values to the DVSL toolbox configuration.
All Velocity messages are routed through Ant's logging system but will only be output if their level exceeds that of Ant's current logging level. By default, this means Velocity informational messages are suppressed while warning and error messages are output. The following table shows the mapping between Ant logging options and the corresponding levels of Velocity messages which are output.
| Ant Logging Option | Velocity Messages Output |
-quiet |
errors |
no option |
errors, warnings |
-verbose |
errors, warnings, informational |
-debug |
errors, warnings, informational, debug |
If the logfile
attribute is specified to this task,
all Velocity messages are written to the specified log file without
regard to any logging option specified to Ant.
| Attribute | Description | Required |
| basedir | where to find the source XML file, default is the project's basedir. | No |
| destdir | directory in which to store the results. | Yes, unless in and out have been specified. |
| extension | desired file extension to be used for the targets. If not specified, the default is ".html". | No |
| style | name of the stylesheet to use - given either relative to the project's basedir or as an absolute path | Yes |
| classpath | classpath to use when loading toolbox and velocity configuration classes. | No |
| classpathref | the classpath to use, given as reference to a path defined elsewhere. | No |
| force | Recreate target files, even if they are newer than their corresponding source files or the stylesheet. | No |
| includes | comma separated list of patterns of files that must be included. All files are included when omitted. | No |
| includesfile | the name of a file. Each line of this file is taken to be an include pattern | No |
| excludes | comma separated list of patterns of files that must be excluded. No files (except default excludes) are excluded when omitted. | No |
| excludesfile | the name of a file. Each line of this file is taken to be an exclude pattern | No |
| defaultexcludes | indicates whether default excludes should be used or not ("yes"/"no"). Default excludes are used when omitted. | No |
| in | specifies a single XML document to be styled. Should be used with the out attribute. | No |
| out | specifies the output name for the styled result from the in attribute. | No |
| outputencoding | encoding to be used for output files. If not specified, the default is UTF-8. | No |
| logfile | log file for Velocity messages. The default is to log through Ant's logging system but limit output based on Ant's logging level. Specifying this attribute causes all Velocity messages to be sent to the specified file instead. | No |
| toolboxfile | specifies the toolbox properties file name. | No |
| velocityconfigclass | specifies a class to load which sets Velocity properties.
The class must implement the java.util.Map interface. |
No |
| validatingparser | specifies that the parser for the input XML should
validate. Boolean valued, default is false |
No |
Classpath to use when loading toolbox and velocity configuration classes. This is defined using a path-like structure.
Set a toolbox property. Properties specified with this nested element
override those defined in a properties file specified by the
toolboxfile
attribute.
| Attribute | Description | Required |
| name | Name of the toolbox property | Yes |
| value | Value of the toolbox property. | Yes |
Velconfig is used to set a Velocity configuration property. Properties
specified with this nested element override those defined in a class loaded
via the velocityconfigclass
attribute.
| Attribute | Description | Required |
| name | Name of the Velocity configuration property | Yes |
| value | Value of the Velocity configuration property. | Yes |
DVSL as of v0.43, supports applications making application specific values available via the $context API. (Please see DVSL User Guide.) When using Ant and DVSL, the following values are accessable :
$context.getAppValue('infilename')
$context.getAppValue('outfilename')
This task as with any other task not shipped with Ant must be defined
in the build file using a <taskdef>
declaration. For
example, the following declaration associates a task named <dvsl>
with the class org.apache.dvsl.DVSLTask
. In addition,
the required jars for DVSL support are specified in classpath using a
FileSet.
<taskdef name="dvsl" classname="org.apache.dvsl.DVSLTask"> <classpath> <fileset dir="${lib.dir}"> <include name="velocity-dvsl-*.jar" /> <include name="velocity-dep-*.jar" /> <include name="dom4j-*.jar" /> </fileset> </classpath> </taskdef>
Simple case running a transformation on all files in a directory:
<dvsl basedir="doc" destdir="build/doc" extension=".html" style="style/apache.dvsl" />
Using parameters to set Toolbox and Velocity properties:
<dvsl basedir="doc" destdir="build/doc" extension=".html" style="style/apache.xsl" classpath="."> <tool name="toolbox.string.mystring" value="Some arbitrary text" /> <tool name="toolbox.tool.footool" value="Footool" /> <velconfig name="runtime.log" value="${basedir}/dvsl.log" /> </dvsl>


Click here to see a minimally configured tooltip. By default tooltips are triggered by clicking and they will show the contents of the title attribute of the element being clicked.
You can configure tooltips to set their preferred positions as well when they will appear. This tooltipis configured to preferably appear in the top middle, but won't appear there if there isn't enough space.
This tooltip's content is loaded by Ajax on hover and this one's loaded by Ajax too, but on click.
Even images can have tooltips. Click on the image below to show a tooltip.


Navigation
Home
(current)
About the Authors
Contact
String Generator
Let's Generate a String!
Pick a number!
+


|
LinkedList Pile
version 0.0.1
LinkedList pile.
|
A double-linked list. More...
#include <linkedlist.h>
Public Member Functions | |
| LinkedList () | |
| constructor | |
| virtual | ~LinkedList () |
| destructor | |
| int | lNextCount () |
| Finds out the number of elements that follow this one in the list. | |
| LinkedList * | lExtract (LinkedList *first_item) |
| Extracts this instance from the list and ties the list. | |
| LinkedList * | lPrevious () |
| Get previous item. | |
| LinkedList * | lNext () |
| Get next item. | |
Static Public Member Functions | |
| static LinkedList * | lPushFront (LinkedList *first_item, LinkedList *new_item) |
| Inserts the item in the list as the first item. | |
| static LinkedList * | lPushBack (LinkedList *first_item, LinkedList *new_item) |
| Inserts the item in the list as the first item. | |
| static LinkedList * | preppend (LinkedList *first_item, LinkedList *new_item) |
| Inserts the item in the list as the first item. | |
| static LinkedList * | append (LinkedList *first_item, LinkedList *new_item) |
| Inserts the item in the list as the first item. | |
| static LinkedList * | lPopFront (LinkedList *first_item) |
| Removes the first item. More... | |
| static LinkedList * | lPopBack (LinkedList *first_item) |
| Removes the last item. More... | |
| static int | lCount (LinkedList *first_item) |
| Finds out the number of elements in the list. | |
| static LinkedList * | lClear (LinkedList *first_item) |
| Deletes all elements in the list. More... | |
| static LinkedList * | lItem (LinkedList *first_item, int index) |
| Get the item at a particular index. More... | |
| static LinkedList * | lFirst (LinkedList *first_item) |
| Get the first item. | |
| static LinkedList * | lLast (LinkedList *first_item) |
| Get the last item. More... | |
A double-linked list.
Detailed description.
|
static |
Deletes all elements in the list.
| first_item | Pointer to header item for the list. |
|
static |
Get the item at a particular index.
| first_item | Pointer to header item for the list. |
| index | the item to retreive |
|
static |
Get the last item.
| first_item | Pointer to header item for the list. |
|
static |
Removes the last item.
| first_item | Pointer to header item for the list. |
|
static |
Removes the first item.
| first_item | Pointer to header item for the list. |


Harmonia is a music theory app and web-based learning management system. It combines musical score notation with a patented real-time music analysis engine and automatically grades student work to provide instant, pedagogical feedback.
Global Official WebsiteHarmonia
Each block comes with custom Front Matter that can easily be edited in Forestry's UI.
The Design Blocks can be used without Forestry but to harness the power of Blocks we recommend using Forestry. Once the site is imported you can immediately create new sites and make them fully customizable. 👇
Harmonia


RaspberryWallet
Your address:
Recipient address:
Amount:
Send
Current balance:
...
Transaction in progress
Waiting to receive confirmation for payment...


Below are answers to some frequently asked questions.
We're a group of West Ada School District parents, teachers, and staff who want to get back in the classroom full-time, in-person, K-12 by March 1. The site was created by David Binetti, a parent in the West Ada School District.
Teachers are receiving the Moderna vaccine, which is 92.1% effective 14 days after the first dose. With February 13th as the date all teachers are expected to have completed priority access to the vaccine, Monday, March 1 is the most practical date that provides the full 14-day period for 92% efficacy.
The Return to Daily In-Person Instruction committee recommendended the start of the fourth quarter so staff would have the opportunity to receive the second dose of the vaccine which, in combination with scheduling concerns, resulted in the April 13 start date. And while the second dose does increase protection from 92% to 94%, delaying full-time in-person K-12 for another 45 days when we are already at 90%+ safety doesn't reflect the urgency of students who continue to fall behind. The recommendations are just that: recommendations. The Board gets to decide based on the tradeoffs; this site was created to help give them the confidence to decide that the perfect shouldn't be the enenmy of the good.
Yes, of course returning to school risks an outbreak — but the only way to avoid that risk is to never go back to school. There is nothing magical about waiting longer that will make things better; it simply means that our kids will fall further and further behind.
If you join us we'll add you to the private list of supporters which we report on as an aggregate total. Then, you'll also get the opportunity to make your name public, which we'll report directly along with any (respectful) comments you'd like to share. Finally, we'll present these reports to the West Ada School Board so that they can see the breadth of parental and teacher support to get kids all in, Full Time, In Person, K-12
This is entirely self-funded. It isn't a business, and we're not even asking for donations. We just want the kids all in school, and that's worth more to us than the few dollars it takes to run this website.
If the teachers and staff are vaccinated then we're protecting the vulnerable population in the classroom already; there's no need to make high-school students delay any more than middle school (or K-5).
The current plan was devised for a pre-vaccine world. Now it's time to adjust to the teacher-vaccination world, and that means getting the Kids All In, Full-Time, In-Person, K-12 by March 1.
If the teachers and staff are vaccinated then we're protecting the vulnerable population in the classroom already. And while we can and must adjust to changing conditions, we shouldn't make our children fall further behind for what might happen in the future.
If the teachers and staff are vaccinated then we're protecting the vulnerable population in the classroom already. However, we can still maintain social distance even in full-time instruction by simply employing the World Health Organization guideline of 1 meter distance rather than the CDC guideline. While six-feet is clearly better than 1-meter, it's not at all obvious how much better -- and our children are suffering for three extra feet whose benefit is inconclusive at best.
Of course! We're listening to the medical experts, and the mental-health experts, and the academic experts, and the drug abuse experts, and the suicide prevention experts, and the cognitive development experts and every other expert we can. We want all those opinions so we can make a balanced decision; focusing only on one issue — or even worse only on one side of one issue — means you decide on incomplete information, often leading to the wrong decision.
Please let us know at<EMAIL_ADDRESS>so that we can add it to the FAQ!


Also known as additive manufacturing, is a method of creating a three dimensional object layer-by-layer using a computer created design.
Advantages
Disadvantages
Design a Knight chess piece:
Download and put into Illustrator, trace, and export to a .svg
Offset dist about 2mm. Make sure to close of the shape also.
Can create a midline (to revolve around), select the base sketch as the profile and revolve around the z-axis, angle - 360
Create sketch on the front plane, insert the .svg file of the knight's head, extrude symmetrically ~4mm
I needed to edit the thickness of the chess piece to 5mm. Press'E' to extrude, Extrude > Directions >Symmetric > Distance > 5mm Operation >Join
Go to Tools > Make > 3D print
Oops!
Initially the print was 1hr 25mins, I changed the profile from Fine -0.1mm to Normal - 0.15 mm.
Click 'Slice' at the bottom right, and save to the SD card as a Gcode. Then just insesrt into the Ultimaker bottom left SD card reader and click print and choose your file.
Tbh I had no idea about 3d printing, but by asking around, and trial and error, it was a fun process. One thing i didnot expect was the supports were actually quite tedious to remove. One thing no note is that I could modify future prints so that it will use less support as possible.
How to export to a gcode from the slicer, and also to operate the machine.
A heated bed allows a user to control the temperature of the printing process and the cooling phase.
It takes about 45mins - 1hr to print.
We have to remove the supports using pliers, and using needle file for round corners.
Then I went home to continue filing and sanding using sandpaper.
I tried to use scissors to remove the unwanted supports, and sandpaper.
This process was quite tedious as it requires time and effort.
Done!


We have successfully implemented the seeds from wallets like Agama, Magnum, Guarda and Pungo to the latest version of Chameleon. Do you want to become one of the beta testers for Chameleon? Send us a DM.
@KomodoPlatform @Magnum_Wallet @GuardaWallet @Pungoio


Some of my favorite foods are:
Some of my best friends are:
Some of the images for my favorite food are shown below,


The SWISH chat services allows you to chat with users that are looking at the same file as you are. SWISH displays an avatar for each user with whom you share an open file. This group of users defines your dynamic chat room.
The chat facility runs on top of the web socket interface. Currently, chat messages are simply broadcasted. They are not remembered by the server.
What you are seeing are the first steps to allow users of SWISH to communicate. There are many facilities we have in mind, such as:


Vice Hierarch Casca:
Your will and strength are impressive. You are indeed well qualified. Return to the Hierarch.


Rendering Parameters
Wireframe
Polygon
Polygon with Edges
Normal
Reflection
Refraction
Mesh Pose and Camera Position
Cube Euler Y:
Keys A and D (Orbit)
TeaPot Euler Y:
Keys ArrowLeft and ArrowRight


Learn what makes a website.
Our goal for this project is to build an interactive, web-based version of Quidditch, a fictional sport invented by author J.K. Rowling for her fantasy book series Harry Potter.
At the end of this activity, you will have built something similar to this:
This activity will allow you to combine all the skills you have learned so far:
quidditch-cup
.index.html
in your folder quidditch-cup
.<!DOCTYPE html>

<title>Quidditch-Cup

<sytle>
</style>

Quidditch Cup

quidditch-cup
. Click into it and right-click on the index.html
and open with Chrome (or whatever browser you have).Quidditch Cup
on an otherwise blank screen.Let’s create some sub-folders to organize our project. Keeping your code and assets organized ensures that
imgs
, in your quidditch-cup
project directory.
sounds
, in your quidditch-cup
project directory.
div
elements that will have the photos as backgrounds.div
elements into your code.<!DOCTYPE html>

photo
so that we can add the same CSS to all photos if we want.photo-1
as so on. This allows us to add CSS to individual div
s without affecting the other div
s.<!DOCTYPE html>

head
section of your file, include style
tags<!DOCTYPE html>

...

grid
.<!DOCTYPE html>

...

body
has been divided into 3 equal columns. Since there are 6 div
tags inside of body
, this makes body
a 3 by 2 grid of div
s.div
s in our body
that have no height and no background images.div
s so that they aren’t flat.div
s using the selector .photo
since all of the div
s have that class.<!DOCTYPE html>

...

div
s have a height of 250px
.<!DOCTYPE html>

...

div
s have height, add the photos as background images.background-image
, link to the photos you saved earlier.<!DOCTYPE html>

...

.photo
selector in the CSS in order to change how the background looks.background-size
property to the .photo
selector with the value cover
<!DOCTYPE html>

...

background-position
with value 50% 50%
<!DOCTYPE html>

...

background-position
being 50% 50%
for that photo, I’ll use the same selector I used to set the background-image (.photo-1
) to change just that photo’s background-position
.<!DOCTYPE html>

...

background-size
, background-position
, etc.) to gain an understanding of what they mean and how to use them.If you were able to see all photos and they look like you want them to, your knowledge of HTML and CSS is ready for our in-class session! Here is all the code from the example above:
<!DOCTYPE html>

If you’d like to spice up your friend-o-gram a bit, consider adding some of the following:
Keep in mind that while there are no grades for this program, your projects will speak to the work you can do should you choose to use them as a part of your resume.


| Callback URL: | {{callback_url|escape}} |
| Created time (UTC): | {{created_time|date:"Y-m-d\TH:i:s\Z"}} |
| Last modified time (UTC): | {{last_modified|date:"Y-m-d\TH:i:s\Z"}} |
| Expiration time (UTC): | {{expiration_time|date:"Y-m-d\TH:i:s\Z"}} |
| State: | {{subscription_state}} |
| Confirmation failures: | {{confirm_failures}} |
| Delivery to domain: | {% if delivery_blocked %} BLOCKED {% else %} OK {% endif %} |
| Delivery short-term: | {{delivery_errors|floatformat:"-2"}}% errors |
| Next/Last attempt time (UTC): | {{event.last_modified|date:"Y-m-d\TH:i:s\Z"}} |
| Totally failed: | {{event.totally_failed}} |
| Retry attempts: | {{event.retry_attempts}} |
| Content type: | {{event.content_type|escape}} |
Payload, possibly truncated:
{{event.payload_trunc|escape}}{% endfor %} {% endif %}


Pmw.HistoryText() - text widget with a course-grained form of history
A history text is a scrolled text widget with added functionality to maintain a history of each screen and allow editing of prior screens. Here, screen refers to the entire contents of the text widget. This widget does not support a fine-grained history of every change made to the text.
Together with a few buttons and a scrolled text to display the results, a history text can be used as the query-entry part of a simple interactive text-based database query system. When the user enters and executes a query, the query (the entire contents of the text widget) is added to the history list. The user may view previous queries and either execute them again or modify them and execute the new query. If a previously executed query is modified, the user may undo or redo all changes made to the query before the query is executed.
addhistory()
. The default is 1.
addhistory()
. The default is 1.
next()
and prev()
methods. The default is None.
If None, a label component is not created. The default is None.
Otherwise, the size of the megawidget is determined by the width and height of the text component, along with the size and/or existence of the other components, such as the label, the scrollbars and the scrollmargin option. All these affect the overall size of the megawidget. The default is 0.
If compressany is true, a new entry will be added to the history list only if the currently displayed entry has changed.
If compresstail is true, a new entry will be added to the history list only if the currently displayed entry has changed or if it is not the last entry in the history list.
addhistory()
. The second item is the edited text (if the user
has modified the entry but addhistory()
has not yet been called
on the text). The third item specifies whether the entry should
currently display the original or modified text.
undo()
.
class Demo: def __init__(self, parent): # Create and pack the PanedWidget to hold the query and result # windows. # !! panedwidget should automatically size to requested size panedWidget = Pmw.PanedWidget(parent, orient = 'vertical', hull_height = 400, hull_width = 550) panedWidget.add('query', min = 0.05, size = 0.2) panedWidget.add('buttons', min = 0.1, max = 0.1) panedWidget.add('results', min = 0.05) panedWidget.pack(fill = 'both', expand = 1) # Create and pack the HistoryText. self.historyText = Pmw.HistoryText(panedWidget.pane('query'), text_wrap = 'none', text_width = 60, text_height = 10, historycommand = self.statechange, ) self.historyText.pack(fill = 'both', expand = 1) self.historyText.component('text').focus() buttonList = ( [20, None], ['Clear', self.clear], ['Undo', self.historyText.undo], ['Redo', self.historyText.redo], [20, None], ['Prev', self.historyText.prev], ['Next', self.historyText.next], [30, None], ['Execute', Pmw.busycallback(self.executeQuery)], ) self.buttonDict = {} buttonFrame = panedWidget.pane('buttons') for text, cmd in buttonList: if type(text) == type(69): frame = Tkinter.Frame(buttonFrame, width = text) frame.pack(side = 'left') else: button = Tkinter.Button(buttonFrame, text = text, command = cmd) button.pack(side = 'left') self.buttonDict[text] = button for text in ('Prev', 'Next'): self.buttonDict[text].configure(state = 'disabled') self.results = Pmw.ScrolledText(panedWidget.pane('results'), text_wrap = 'none') self.results.pack(fill = 'both', expand = 1) def statechange(self, prevstate, nextstate): self.buttonDict['Prev'].configure(state = prevstate) self.buttonDict['Next'].configure(state = nextstate) def clear(self): self.historyText.delete('1.0', 'end') def addnewlines(self, text): if len(text) == 1: text = text + '\n' if text[-1] != '\n': text = text + '\n' if text[-2] != '\n': text = text + '\n' return text def executeQuery(self): sql = self.historyText.get() self.results.insert('end', 'Query:\n' + self.addnewlines(sql)) self.results.see('end') self.results.update_idletasks() self.historyText.addhistory() results = 'Results:\nfoo' if len(results) > 0: self.results.insert('end', self.addnewlines(results)) self.results.see('end')
Pmw 1.2 -
5 Aug 2003
- Home
Manual page last reviewed: 20 May 2002


[services help]
Service URL:
InRule Rule Services Start Page
Welcome to InRule Rule Services!
InRule Rule Services is a reference architecture for providing WCF REST services for rule execution. This solution contains the following projects:
RuleServices
- Rule Execution Services operations include: ApplyRules (Get), ExecuteRuleSet (Get), ExecuteRuleSet (Post)
HTMLTestUI
- Simple html test page. Construct Rule Service request xml and execute request from JavaScript.
ASPMVCTestUI
- Demonstrates calling Rule Services via ASP MVC using a Service Reference.
Testing Rule Services in Visual Studio 2012
Save test rule application to irCatalog:
Perform a Complete local install of InRule including irCatalog (see InRule Installation Guide)
Launch irAuthor (
Start --> All Programs --> InRule --> irAuthor
)
Open sample rule application (Download Location/Rule Service/RuleServices45/InRule.RuleServices.SampleRuleApps/
MortgageCalculator.ruleapp
)
Save rule application to irCatalog (
File --> Save As --> Save to Catalog --> Click 'OK'
)
Steps for testing:
Launch Visual Studio 2012
Open RuleServices Solution (Download Location/Rule Service/RuleServices45/
RulesServices.sln
)
Run the RuleServices solution - (InRule.RuleServices.HtmlTestUI should be set as StartUp Project)
The following projects will start: RuleServcies, HTMLTestUI, ASPMVCTestUI
StartPage (default.html) will launch in browser
Test Rule Services by clicking on either the
HTMLTestUI
or
ASPMVCTestUI
Optional: Test Rule Services from another client (direct in browser, fiddler, etc.)
Debug - set project to debug as StartUp Project or Attach to Process
Notes:
InRule.RuleServices.csproj is configured to start at http://localhost:50001/InRule.RuleServices/RuleExecutionService.svc/
InRule.HtmlTestUI.csproj is configured to start at http://localhost:50003/
InRule.ASPMVCTestUI.csproj is configured to start at http://localhost:50002/
For SOAP - uncomment SOAP behavior section Web.config, minor service interface and caller changes
Deploying Rule Services to IIS
Steps for deploying:
XCopy the InRule.RuleServices dll and supporting InRule dlls (found in InRule.RuleServices\bin) to the designated virtual web directory.
Change base address in services web.config and CatalogUri to relevant catalog service


---
layout: home-default
---
{% include banner.html %}
{% include projects.html %}
{% include resources.html %}
{% include technology.html %}
{% include tools.html %}
{% include values.html %}
{% include results.html %}
{% include competence.html %}
{% include aboutus.html %}
{% include gallery.html %}
{% include carousel.html %}
{% include clutch.html %}
{% include form.html %}


--- layout: post title: "The most retentive thing I've done" date: 2007-10-16 comments: false categories: - Uncategorized ---


Khalid Ismail
I design and code user interface
I build & design user interface from planning, coding to deployment to products
Over the years i build things for the web, i enjoy what i do
Project
What I've build the past days
contact
So what's next
Get in touch
You got something for me, my inbox is always open, Whether for a potential project or just to say hi, I'll try my best to answer your email!