Recent Posts Plus Plus
Recent Posts Plus Plus is a widget that can use categories and custom taxonomies to fetch recent and similar posts. Recent Posts Plus Plus can use any existing image size, and can require posts with images only. Source Zip ChangeLog Issue TrackerWP Splash Screen
WP Splash Screen creates roadblocks using a Custom Post Type, Custom Meta Boxes and a series of hooks to redirect any non-admin page to a roadblock with a countdown until the user is redirected back to their entrance page. Custom hooks have been added for theming the splash page.
Source Zip ChangeLog Issue TrackerHaving trouble with Pages? Check out the documentation at http://help.github.com/pages or contact<EMAIL_ADDRESS>and we’ll help you sort it out.


TMetaRefreshType = procedure(Sender: TObject; Delay: integer;
const URL: string) of Object;
The TMetaRefreshType type points to a method that might process the contents of a <META .Http_Eq="refresh"> tag. Delay is the time delay in seconds and URL, the html document used to refresh the display. These parameters are parsed from the Contents= attribute.
Note that the Http_Eq="refresh" Meta event is handled internally for TFrameViewer.
See also:


Better , Faster , Easier
with
INFO Bee
Info Bee is a integrated application build for jourlnalist to look for statistic insight and provides support to speed up the news creating process.
Get Start


- BoxedValueHelper - Interface in org.omg.CORBA.portable
-
- BoxLayout - Class in javax.swing
-
A layout manager that allows multiple components to be laid out either
vertically or horizontally.
- BoxLayout(Container, int) - Constructor for class javax.swing.BoxLayout
-
Creates a layout manager that will lay out components along the
given axis.
- boxRect - Variable in class javax.swing.plaf.basic.BasicProgressBarUI
-
Used to hold the location and size of the bouncing box (returned
by getBox) to be painted.
- BoxView - Class in javax.swing.text
-
A view that arranges its children into a box shape by tiling
its children along an axis.
- BoxView(Element, int) - Constructor for class javax.swing.text.BoxView
-
Constructs a BoxView
.
- BR - Static variable in class javax.swing.text.html.HTML.Tag
-
- BRAHMI - Static variable in class java.lang.Character.UnicodeBlock
-
Constant for the "Brahmi" Unicode character block.
- BRAILLE_PATTERNS - Static variable in class java.lang.Character.UnicodeBlock
-
Constant for the "Braille Patterns" Unicode character block.
- breadthFirstEnumeration() - Method in class javax.swing.tree.DefaultMutableTreeNode
-
Creates and returns an enumeration that traverses the subtree rooted at
this node in breadth-first order.
- BreakIterator - Class in java.text
-
The BreakIterator
class implements methods for finding
the location of boundaries in text.
- BreakIterator() - Constructor for class java.text.BreakIterator
-
Constructor.
- BreakIteratorProvider - Class in java.text.spi
-
An abstract class for service providers that
provide concrete implementations of the
BreakIterator
class.
- BreakIteratorProvider() - Constructor for class java.text.spi.BreakIteratorProvider
-
Sole constructor.
- breaksFlow() - Method in class javax.swing.text.html.HTML.Tag
-
Returns true
if this tag causes a
line break to the flow of data, otherwise returns
false
.
- breaksFlow() - Method in class javax.swing.text.html.parser.TagElement
-
- breakView(int, int, float, float) - Method in class javax.swing.text.GlyphView
-
Breaks this view on the given axis at the given length.
- breakView(int, int, float, float) - Method in class javax.swing.text.html.InlineView
-
Tries to break this view on the given axis.
- breakView(int, float, Shape) - Method in class javax.swing.text.ParagraphView
-
Breaks this view on the given axis at the given length.
- breakView(int, int, float, float) - Method in class javax.swing.text.View
-
Tries to break this view on the given axis.
- BRIEF - Static variable in class java.rmi.server.LogStream
-
Deprecated.
log level constant (brief logging).
- brighter() - Method in class java.awt.Color
-
Creates a new Color
that is a brighter version of this
Color
.
- BrokenBarrierException - Exception in java.util.concurrent
-
Exception thrown when a thread tries to wait upon a barrier that is
in a broken state, or which enters the broken state while the thread
is waiting.
- BrokenBarrierException() - Constructor for exception java.util.concurrent.BrokenBarrierException
-
Constructs a BrokenBarrierException with no specified detail
message.
- BrokenBarrierException(String) - Constructor for exception java.util.concurrent.BrokenBarrierException
-
Constructs a BrokenBarrierException with the specified
detail message.
- browse(URI) - Method in class java.awt.Desktop
-
Launches the default browser to display a URI
.
- BUBBLING_PHASE - Static variable in interface org.w3c.dom.events.Event
-
The current event phase is the bubbling phase.
- buf - Variable in class java.io.BufferedInputStream
-
The internal buffer array where the data is stored.
- buf - Variable in class java.io.BufferedOutputStream
-
The internal buffer where data is stored.
- buf - Variable in class java.io.ByteArrayInputStream
-
An array of bytes that was provided
by the creator of the stream.
- buf - Variable in class java.io.ByteArrayOutputStream
-
The buffer where data is stored.
- buf - Variable in class java.io.CharArrayReader
-
The character buffer.
- buf - Variable in class java.io.CharArrayWriter
-
The buffer where data is stored.
- buf - Variable in class java.io.PushbackInputStream
-
The pushback buffer.
- buf - Variable in class java.util.zip.DeflaterInputStream
-
Input buffer for reading compressed data.
- buf - Variable in class java.util.zip.DeflaterOutputStream
-
Output buffer for writing compressed data.
- buf - Variable in class java.util.zip.InflaterInputStream
-
Input buffer for decompression.
- buf - Variable in class java.util.zip.InflaterOutputStream
-
Output buffer for writing uncompressed data.
- buffer - Variable in class java.io.PipedInputStream
-
The circular buffer into which incoming data is placed.
- buffer - Variable in class java.io.StringBufferInputStream
-
Deprecated.
The string from which bytes are read.
- Buffer - Class in java.nio
-
A container for data of a specific primitive type.
- buffer - Variable in class javax.swing.text.DefaultStyledDocument
-
- BUFFER_SIZE_DEFAULT - Static variable in class javax.swing.text.DefaultStyledDocument
-
The default size of the initial content buffer.
- BufferCapabilities - Class in java.awt
-
Capabilities and properties of buffers.
- BufferCapabilities(ImageCapabilities, ImageCapabilities, BufferCapabilities.FlipContents) - Constructor for class java.awt.BufferCapabilities
-
Creates a new object for specifying buffering capabilities
- BufferCapabilities.FlipContents - Class in java.awt
-
A type-safe enumeration of the possible back buffer contents after
page-flipping
- BUFFERED_OPTION - Static variable in class javax.swing.DebugGraphics
-
Show buffered operations in a separate Frame
.
- BufferedImage - Class in java.awt.image
-
The
BufferedImage
subclass describes an
Image
with an accessible buffer of image data.
- BufferedImage(int, int, int) - Constructor for class java.awt.image.BufferedImage
-
Constructs a BufferedImage
of one of the predefined
image types.
- BufferedImage(int, int, int, IndexColorModel) - Constructor for class java.awt.image.BufferedImage
-
Constructs a BufferedImage
of one of the predefined
image types:
TYPE_BYTE_BINARY or TYPE_BYTE_INDEXED.
- BufferedImage(ColorModel, WritableRaster, boolean, Hashtable<?, ?>) - Constructor for class java.awt.image.BufferedImage
-
Constructs a new BufferedImage
with a specified
ColorModel
and Raster
.
- BufferedImageFilter - Class in java.awt.image
-
The
BufferedImageFilter
class subclasses an
ImageFilter
to provide a simple means of
using a single-source/single-destination image operator
(
BufferedImageOp
) to filter a
BufferedImage
in the Image Producer/Consumer/Observer
paradigm.
- BufferedImageFilter(BufferedImageOp) - Constructor for class java.awt.image.BufferedImageFilter
-
Constructs a BufferedImageFilter
with the
specified single-source/single-destination operator.
- BufferedImageOp - Interface in java.awt.image
-
This interface describes single-input/single-output
operations performed on BufferedImage
objects.
- BufferedInputStream - Class in java.io
-
A BufferedInputStream
adds
functionality to another input stream-namely,
the ability to buffer the input and to
support the mark
and reset
methods.
- BufferedInputStream(InputStream) - Constructor for class java.io.BufferedInputStream
-
Creates a BufferedInputStream
and saves its argument, the input stream
in
, for later use.
- BufferedInputStream(InputStream, int) - Constructor for class java.io.BufferedInputStream
-
Creates a BufferedInputStream
with the specified buffer size,
and saves its argument, the input stream
in
, for later use.
- BufferedOutputStream - Class in java.io
-
The class implements a buffered output stream.
- BufferedOutputStream(OutputStream) - Constructor for class java.io.BufferedOutputStream
-
Creates a new buffered output stream to write data to the
specified underlying output stream.
- BufferedOutputStream(OutputStream, int) - Constructor for class java.io.BufferedOutputStream
-
Creates a new buffered output stream to write data to the
specified underlying output stream with the specified buffer
size.
- BufferedReader - Class in java.io
-
Reads text from a character-input stream, buffering characters so as to
provide for the efficient reading of characters, arrays, and lines.
- BufferedReader(Reader, int) - Constructor for class java.io.BufferedReader
-
Creates a buffering character-input stream that uses an input buffer of
the specified size.
- BufferedReader(Reader) - Constructor for class java.io.BufferedReader
-
Creates a buffering character-input stream that uses a default-sized
input buffer.
- BufferedWriter - Class in java.io
-
Writes text to a character-output stream, buffering characters so as to
provide for the efficient writing of single characters, arrays, and strings.
- BufferedWriter(Writer) - Constructor for class java.io.BufferedWriter
-
Creates a buffered character-output stream that uses a default-sized
output buffer.
- BufferedWriter(Writer, int) - Constructor for class java.io.BufferedWriter
-
Creates a new buffered character-output stream that uses an output
buffer of the given size.
- BufferOverflowException - Exception in java.nio
-
Unchecked exception thrown when a relative put operation reaches
the target buffer's limit.
- BufferOverflowException() - Constructor for exception java.nio.BufferOverflowException
-
Constructs an instance of this class.
- BufferPoolMXBean - Interface in java.lang.management
-
The management interface for a buffer pool, for example a pool of
direct
or
mapped
buffers.
- BufferStrategy - Class in java.awt.image
-
The BufferStrategy
class represents the mechanism with which
to organize complex memory on a particular Canvas
or
Window
.
- BufferStrategy() - Constructor for class java.awt.image.BufferStrategy
-
- BufferUnderflowException - Exception in java.nio
-
Unchecked exception thrown when a relative get operation reaches
the source buffer's limit.
- BufferUnderflowException() - Constructor for exception java.nio.BufferUnderflowException
-
Constructs an instance of this class.
- BUGINESE - Static variable in class java.lang.Character.UnicodeBlock
-
Constant for the "Buginese" Unicode character block.
- BUHID - Static variable in class java.lang.Character.UnicodeBlock
-
Constant for the "Buhid" Unicode character block.
- build() - Method in class java.nio.file.attribute.AclEntry.Builder
-
Constructs an
AclEntry
from the components of this builder.
- build(CertPathParameters) - Method in class java.security.cert.CertPathBuilder
-
Attempts to build a certification path using the specified algorithm
parameter set.
- build() - Method in class java.util.Locale.Builder
-
Returns an instance of Locale
created from the fields set
on this builder.
- build() - Method in class javax.xml.ws.wsaddressing.W3CEndpointReferenceBuilder
-
Builds a W3CEndpointReference
from the accumulated
properties set on this W3CEndpointReferenceBuilder
instance.
- buildChooser() - Method in class javax.swing.colorchooser.AbstractColorChooserPanel
-
Builds a new chooser panel.
- bulkRegister(int) - Method in class java.util.concurrent.Phaser
-
Adds the given number of new unarrived parties to this phaser.
- bumps - Variable in class javax.swing.plaf.metal.MetalBorders.ToolBarBorder
-
- bumps - Variable in class javax.swing.plaf.metal.MetalScrollBarUI
-
- burstStringInto(Container, String, int) - Method in class javax.swing.plaf.basic.BasicOptionPaneUI
-
Recursively creates new JLabel instances to represent d
.
- BUSY - Static variable in class javax.accessibility.AccessibleState
-
Indicates the current object is busy.
- Button - Class in java.awt
-
This class creates a labeled button.
- Button() - Constructor for class java.awt.Button
-
Constructs a button with an empty string for its label.
- Button(String) - Constructor for class java.awt.Button
-
Constructs a button with the specified label.
- BUTTON - Static variable in class javax.swing.plaf.synth.Region
-
Button region.
- Button.AccessibleAWTButton - Class in java.awt
-
This class implements accessibility support for the
Button
class.
- Button.AccessibleAWTButton() - Constructor for class java.awt.Button.AccessibleAWTButton
-
- BUTTON1 - Static variable in class java.awt.event.MouseEvent
-
- BUTTON1_DOWN_MASK - Static variable in class java.awt.event.InputEvent
-
The Mouse Button1 extended modifier constant.
- BUTTON1_MASK - Static variable in class java.awt.event.InputEvent
-
The Mouse Button1 modifier constant.
- BUTTON2 - Static variable in class java.awt.event.MouseEvent
-
- BUTTON2_DOWN_MASK - Static variable in class java.awt.event.InputEvent
-
The Mouse Button2 extended modifier constant.
- BUTTON2_MASK - Static variable in class java.awt.event.InputEvent
-
The Mouse Button2 modifier constant.
- BUTTON3 - Static variable in class java.awt.event.MouseEvent
-
- BUTTON3_DOWN_MASK - Static variable in class java.awt.event.InputEvent
-
The Mouse Button3 extended modifier constant.
- BUTTON3_MASK - Static variable in class java.awt.event.InputEvent
-
The Mouse Button3 modifier constant.
- ButtonGroup - Class in javax.swing
-
This class is used to create a multiple-exclusion scope for
a set of buttons.
- ButtonGroup() - Constructor for class javax.swing.ButtonGroup
-
Creates a new ButtonGroup
.
- buttonIndex - Variable in class javax.swing.plaf.basic.BasicOptionPaneUI.ButtonActionListener
-
- buttonListener - Variable in class javax.swing.plaf.basic.BasicScrollBarUI
-
- ButtonModel - Interface in javax.swing
-
State model for buttons.
- buttons - Variable in class javax.swing.ButtonGroup
-
- ButtonUI - Class in javax.swing.plaf
-
Pluggable look and feel interface for JButton.
- ButtonUI() - Constructor for class javax.swing.plaf.ButtonUI
-
- Byte - Class in java.lang
-
The Byte
class wraps a value of primitive type byte
in an object.
- Byte(byte) - Constructor for class java.lang.Byte
-
Constructs a newly allocated Byte
object that
represents the specified byte
value.
- Byte(String) - Constructor for class java.lang.Byte
-
Constructs a newly allocated Byte
object that
represents the byte
value indicated by the
String
parameter.
- BYTE - Static variable in class javax.management.openmbean.SimpleType
-
The SimpleType
instance describing values whose
Java class name is java.lang.Byte
.
- ByteArrayInputStream - Class in java.io
-
A ByteArrayInputStream
contains
an internal buffer that contains bytes that
may be read from the stream.
- ByteArrayInputStream(byte[]) - Constructor for class java.io.ByteArrayInputStream
-
Creates a ByteArrayInputStream
so that it uses buf
as its
buffer array.
- ByteArrayInputStream(byte[], int, int) - Constructor for class java.io.ByteArrayInputStream
-
Creates ByteArrayInputStream
that uses buf
as its
buffer array.
- ByteArrayOutputStream - Class in java.io
-
This class implements an output stream in which the data is
written into a byte array.
- ByteArrayOutputStream() - Constructor for class java.io.ByteArrayOutputStream
-
Creates a new byte array output stream.
- ByteArrayOutputStream(int) - Constructor for class java.io.ByteArrayOutputStream
-
Creates a new byte array output stream, with a buffer capacity of
the specified size, in bytes.
- ByteBuffer - Class in java.nio
-
A byte buffer.
- ByteChannel - Interface in java.nio.channels
-
A channel that can read and write bytes.
- ByteHolder - Class in org.omg.CORBA
-
The Holder for Byte.
- ByteHolder() - Constructor for class org.omg.CORBA.ByteHolder
-
Constructs a new ByteHolder
object with its
value
field initialized to 0.
- ByteHolder(byte) - Constructor for class org.omg.CORBA.ByteHolder
-
Constructs a new ByteHolder
object for the given
byte
.
- byteLength - Variable in class javax.sound.midi.MidiFileFormat
-
The length of the MIDI file in bytes.
- ByteLookupTable - Class in java.awt.image
-
This class defines a lookup table object.
- ByteLookupTable(int, byte[][]) - Constructor for class java.awt.image.ByteLookupTable
-
Constructs a ByteLookupTable object from an array of byte
arrays representing a lookup table for each
band.
- ByteLookupTable(int, byte[]) - Constructor for class java.awt.image.ByteLookupTable
-
Constructs a ByteLookupTable object from an array
of bytes representing a lookup table to be applied to all
bands.
- ByteOrder - Class in java.nio
-
A typesafe enumeration for byte orders.
- byteOrder - Variable in class javax.imageio.stream.ImageInputStreamImpl
-
The byte order of the stream as an instance of the enumeration
class java.nio.ByteOrder
, where
ByteOrder.BIG_ENDIAN
indicates network byte order
and ByteOrder.LITTLE_ENDIAN
indicates the reverse
order.
- bytesConsumed() - Method in class javax.net.ssl.SSLEngineResult
-
Returns the number of bytes consumed from the input buffer.
- bytesProduced() - Method in class javax.net.ssl.SSLEngineResult
-
Returns the number of bytes written to the output buffer.
- bytesTransferred - Variable in exception java.io.InterruptedIOException
-
Reports how many bytes had been transferred as part of the I/O
operation before it was interrupted.
- bytesWidth(byte[], int, int) - Method in class java.awt.FontMetrics
-
Returns the total advance width for showing the specified array
of bytes in this Font
.
- byteValue() - Method in class java.lang.Byte
-
Returns the value of this Byte
as a
byte
.
- byteValue() - Method in class java.lang.Double
-
Returns the value of this Double
as a byte
(by
casting to a byte
).
- byteValue() - Method in class java.lang.Float
-
Returns the value of this Float
as a byte
(by
casting to a byte
).
- byteValue() - Method in class java.lang.Integer
-
Returns the value of this Integer
as a
byte
.
- byteValue() - Method in class java.lang.Long
-
Returns the value of this Long
as a
byte
.
- byteValue() - Method in class java.lang.Number
-
Returns the value of the specified number as a byte
.
- byteValue() - Method in class java.lang.Short
-
Returns the value of this Short
as a
byte
.
- byteValueExact() - Method in class java.math.BigDecimal
-
Converts this BigDecimal
to a byte
, checking
for lost information.
- BYZANTINE_MUSICAL_SYMBOLS - Static variable in class java.lang.Character.UnicodeBlock
-
Constant for the "Byzantine Musical Symbols" Unicode character block.


Who are your friends?
DEE, DEEDEE, DES, EWEN, NED, SUE, SWEN, UWE, WENDEE, WES.
What are the extra near locations? (3 steps away)
DEN, DEW, DNS, EDU, END, NES, SEE, SEW, SUN
What are the near locations? (4 steps away)
DEUS, DUDS, EWES, NEWS, NUNS, SEND, SEWN, SNUS, SUDS, SUSE, SUSS
What are the kinda near locations?(5 steps away)
DEEDS, DUDES, DUNES, NUDES, SEEDS, SEWED, SUEDE, UNWED, WEEDS
What are the kinda far locations? (6 steps away)
ED DUNN, SENSES, SWEDEN, UNSEEN, UNUSED, WEDDED, WUSSES
What are the far locations? (7 steps away)
The double double-e's are clues for the last two. The first combines a three- and four-letter word. The three- is an answer to a puzzle, but four is not.
Click to show next hint
NEWDUDS, SEEWEED, WEENEES
What are the extra far locations? (8 steps away)
USEDDUDS
What are the spoilers for going down first?
DEE, DEEDS, DEN, DES, DEUS, DEW, DENS, DNS, DUDES, DUDS, DUNES
What are the spoilers for going east first?
The middle one has only two possibilities, as does the acronym. The first one--well, it's Ed Dunn. If you got your friend, the last has only two possibilities.
Click to show next hint
EDDUNN, EDU, END, EWEN, EWES
What are the spoilers for going north first?
All of these start with NE or NU, which cuts things down. The 7-letter one combines two words.
Click to show next hint
NED, NES, NEWDUDS, NEWS, NUDES, NUNS
What are the spoilers for going south first?
One of these has SN, and there are two SW, but again knowing your friend and also the three very similar clothes clues may help compartmentalize these alphabetically, since you usually need a vowel after S.
Click to show next hint
SEE, SEEDS, SEEWEED, SEND, SENSES, SEW, SEWED, SEWN, SNUS, SUDS, SUE, SUEDE, SUN, SUSE, SUSS, SWEDEN, SWEN
What are the spoilers for going up first?
These start with UN, US and UW. The first three are UN*, and the last has U and two opposing directions.
Click to show next hint
UNSEEN, UNUSED, UNWED, USEDDUDS, UWE
What are the spoilers for going west first?
All but one begin with WE. The other is WU, and if you know that, the rest of the letters fall in.
Click to show next hint
WEDDED, WEEDS, WEENEES, WENDEE, WES, WES, WUSSES


|
Valkyrie Engine Core
|
Provides primitive typedefs. More...
Go to the source code of this file.
Typedefs | |
| typedef std::uint8_t | vlk::UByte |
| Unsigned 8-bit integer. | |
| typedef std::int8_t | vlk::Byte |
| Signed 8-bit integer. | |
| typedef std::uint16_t | vlk::UShort |
| Unsigned 16-bit integer. | |
| typedef std::int16_t | vlk::Short |
| Signed 16-bit integer. | |
| typedef std::uint32_t | vlk::UInt |
| Unsigned 32-bit integer. | |
| typedef std::int32_t | vlk::Int |
| Signed 32-bit integer. | |
| typedef std::uint64_t | vlk::ULong |
| Unsigned 64-bit integer. | |
| typedef std::int64_t | vlk::Long |
| Signed 64-bit integer. | |
| typedef std::size_t | vlk::Size |
| Platform-dependent size type. | |
| typedef float | vlk::Float |
| 32-bit floating-point number | |
| typedef double | vlk::Double |
| 64-bit floating-point number | |
Provides primitive typedefs.


publications
Publications by categories in reversed chronological order.
2019
-
[Arxiv]
Power Control in Cellular Massive MIMO with Varying User Activity: A Deep Learning Solution 2019
-
[ICIP]
Difference of Convolution for Deep Compressive Sensing In IEEE International Conference on Image Processing 2019 [Code]
-
[BMSB]
Performance Evaluation of AV1 Intra Coding Tools In IEEE International Symposium on Broadband Multimedia Systems and Broadcasting 2019
-
[BMSB]
Simplified Level Decision in Ratedistortion Optimized Quantization In IEEE International Symposium on Broadband Multimedia Systems and Broadcasting 2019
-
[BMSB]
Focal Stack based Light Field Coding for Refocusing Applications In IEEE International Symposium on Broadband Multimedia Systems and Broadcasting 2019
-
[BMSB]
A Frame Loss Concealment for Spatial Scalable HEVC using Base Layer Motion In IEEE International Symposium on Broadband Multimedia Systems and Broadcasting 2019
-
[IWAIT]
Boundary Handling For Video Based Light Field Coding With A New Hybrid Scan Order In SPIE International Workshop on Advanced Image Technology 2019
-
[IPIU]
Fast Rate Distortion Optimized Quantization Based on Transform size for HEVC In IEIE Workshop on Image Processing and Image Understanding 2019
-
[IPIU]
Rendering of all-in-focus image using focal stack from noisy light field images In IEIE Workshop on Image Processing and Image Understanding 2019
-
[IPIU]
Impact of Light field compression on Depth estimation In IEIE Workshop on Image Processing and Image Understanding 2019
-
[IPIU]
Coding Efficiency of Reference Sample Substitution in HEVC Intra Coding In IEIE Workshop on Image Processing and Image Understanding 2019
2018
-
[IWAIT]
Decomposition-based multiscale compressed sensing In IEEE International Workshop on Advanced Image Technology 2018
-
[VCIP]
Multi-Scale Deep Compressive Sensing Network In IEEE Visual Communications and Image Processing 2018 [Code]
-
[ICEIC]
Unifying Block-based and Structured Frame-based Compressive Sensing In IEEE International Conference on Electronics, Information, and Communication 2018
-
[MCSoC]
Light Field Image Coding for Efficient Refocusing In IEEE International Symposium on Embedded Multicore/Many-core Systems-on-Chip 2018
-
[BMSB]
Simplified Rate-Distortion Optimized Quantization for HEVC In IEEE International Symposium on Broadband Multimedia Systems and Broadcasting 2018
-
[ICCE-A]
Deep Learning-Based Kronecker Compressive Imaging In IEEE International Conference on Consumer Electronics - Asia 2018 [Code]
-
[IEEK]
Adaptive Dead-zone Quantization for HEVC In IEEK Summer Conference 2018
-
[IPIU]
Fast Rate Distortion Optimized Quantization Based on Transform size for HEVC In IEIE Workshop on Image Processing and Image Understanding 2018
-
[IPIU]
Frequency Location Adaptive Uniform Scalar Quantization for HEVC In IEIE Workshop on Image Processing and Image Understanding 2018
2017
-
[ITC-CSCC]
Privacy-Preserving Compressive Sensing for Still Images In International Technical Conference on Circuits/Systems, Computers and Communications 2017
-
[IEEK]
Evaluation of Deep Learning and Low Rank Methods for Image Denoising In IEEK Summer Conference 2017
-
[Arxiv]
Compressive Sensing of Color Images Using Nonlocal Higher Order Dictionary 2017
2016
-
[SPIC]
Compressive sensing reconstruction via decomposition Signal Processing: Image Communication 2016 [Code]
-
[IPIU]
Group Sparse Representation for Kronecker Compressive Imaging In IEIE Workshop on Image Processing and Image Understanding 2016 [Code]
-
[IEEK]
Block-Adaptive Subrate Allocation for Block Compressive Imaging In IEEK Summer Conference 2016
-
[SPL]
Color Image Denoising via Cross-Channel Texture Transferring IEEE Signal Processing Letters 2016
2015
-
[ICIP]
Compressive sensing of video with weighted sensing and measurement allocation In IEEE International Conference on Image Processing 2015
-
[ICIP]
Multi-scale/multi-resolution Kronecker compressive imaging In IEEE International Conference on Image Processing 2015 [Code]
-
[JIEIE]
Spatially Scalable Kronecker Compressive Sensing of Still Images IEEK Journal of The Institute of Electronics and Information Engineers 2015
2014
-
[ISCE]
Filter-aided recovery for block-based compressive sensing of images In IEEE International Symposium on Consumer Electronics 2014
-
[ICME]
Edge-preserving nonlocal weighting scheme for total variation based compressive sensing recovery In IEEE International Conference on Multimedia and Expo 2014
-
[ICIP]
Detail-preserving compressive sensing recovery based on cartoon texture image decomposition In IEEE International Conference on Image Processing 2014 [Code]
-
[ATC]
Hybrid Kronecker compressive sensing for images In International Conference on Advanced Technologies for Communications 2014
-
[SPC]
Multi-resolution kronecker compressive sensing IEIE Transaction on Smart Processing and Computing 2014
2013
-
[PCS]
Total variation reconstruction for Kronecker compressive sensing with a new regularization In IEEE Picture Coding Symposium 2013
-
[ICUIMC]
Implementation of a MIMO-OFDM System Based on the TI C64x+ DSP In IEEE International Conference on Ubiquitous Information Management and Communication 2013
2012
-
[ATC]
A performance study of LTE MIMO-OFDM systems using the extended one-ring MIMO channel model In IEEE International Conference on Advanced Technologies for Communications 2012


While at Duke, I made two documentary films: Audubon's Christmas Bird Count and Stilts.
Technologies Used: FinalCut Pro, Adobe Premiere Pro, Photoshop and Illustrator
Data Sources: Varies depending on the film - see film credits
Audubon's Christmas Bird Count
This short film about the National Audubon Society's annual Christmas Bird Count describes the count's history, present day extent, and lessons learned from more than 100 years of data.
In addition to directing, producing, shooting and editing this film, I enjoyed working with the Prelinger Archives to include found footage of historic fashions and flexing my muscles as a Foley artist to create some of the film's background sounds.
Length: ~4.5 minutes. Watch Audubon's Christmas Bird Count.
Stilts
Hurricane Irene made landfall in North Carolina on August 27, 2011. Though classified as only a category 1 hurricane, the storm washed out Highway 12 in two areas on Hatteras Island stranding more than 2500 people. Travel to coastal North Carolina to see some of these changes and hear varying local views on sea level rise and climate change.
In addition to directing, producing and editing this film, I especially enjoyed shooting it since I had never been to North Carolina's Outer Banks and the scentery was quite beautiful despite the destruction Irene had caused.
Length: ~8.5 minutes. Watch Stilts.
The brochures listed below were created while working as a Science Writer for DOE's Energy Exascale Earth System Model (E3SM) project.
Technologies Used: InDesign, Confluence, Photoshop
Data Sources: See each Technical Highlight
Image credit: Steven Smith, Pacific Northwest National Laboratory (PNNL)
List of Technical Highlight Brochures
Image credit: MALI Team (including Matt Hoffman and Stephen Price), Los Alamos National Laboratory (LANL)
The Netcdf Operators (NCO): Automatic Remapping Of Gridded Geoscience Data
Analyzing Ocean Mixing At Exascale: Lagrangian, In Situ, Global, High-Performance Particle Tracking (LIGHT)
MPAS-Albany Land Ice (MALI): A Variable-Resolution Ice Sheet Model For Earth System Modeling Using Voronoi Grids
The E3SM Diagnostics Package For Earth System Model Evaluation
Historical Estimates of Atmospheric Reactive Gases and Aerosols by the Community Emissions Data System (CEDS)
The following web articles were created for the quarterly E3SM Newsletter
Technologies Used: Confluence, Word Press, HTML5, Photoshop
Data Sources: Depends on story - see individual articles for details
Image credit: Charles Zender, UCI - see "Vertical Regridding" story below for caption
E3SM Newsletter ("Floating Points") Web Articles
Image credits: Mark Petersen, Los Alamos National Laboratory (LANL). For image context and captions, see "Simulations of the Global Ocean in E3SM" for the top image and "Evaluation of the Ocean and Sea Ice Climate of E3SM" for the bottom.
Simulations of the Global Ocean in E3SM
A Semi-Implicit Barotropic Solver for the E3SM Ocean Model
Evaluation of the Ocean and Sea Ice Climate of E3SM
Antarctic Ice Sheet Simulations
Near-Term Ocean Warming Around Antarctica Affects Long-Term Rate of Sea Level Rise
Detection and Attribution Analysis of Columbia River Basin Streamflow
A Simple Cloud-Resolving E3SM Atmosphere Model
Can We Switch Computers? An Application of E3SM Climate Reproducibility Tests
Modeling of the Precipitation Diurnal Cycle Improved
Overview of High-Res Coupled Model
Effects of Phosphorus Cycle on Amazon Carbon Sources and Sinks
New NCO Release Supports Vertical Regridding
E3SM Unified Environment v1.3.0
PIO2 + ADIOS = Performance Improvement
Biological and Environmental Research Awards Announced
The following web pages were created to explain the Energy Exascale Earth System Model (E3SM) project.
Technologies Used: Confluence, Word Press, HTML5, Photoshop
Data Sources: Varies depending on page
Image Credit: Melet et al., 2018 - see "Coastal Waves" page for figure explanation
Web Pages Created in Collaboration with Scientists
Image credit: Shaocheng Xie (Atmospheric Physics team), Lawrence Livermore National Laboratory (LLNL)
E3SM Next Generation Development for Coastal Waves
Dynamic Land-Ice Modeling - BISICLES
Atmospheric Physics Next Generation Model Development
Performance Analytics for Computational Experiments (PACE) Web Page
Land and Energy Next Generation Model Development
Visual Community Data Analysis Tools (VCDAT) Web Page
Includes magazine-length articles, newspaper clips and a short radio piece.
Technologies Used: Word, Adobe Audition
Data Sources: Varies - see stories for details
Image credit: Brian Maebius, Science Illustrator
Magazine-length Articles
Image credit: Brian Maebius, Science Illustrator
The Sunken Cities of Egypt - created while a graduate student in the University of California, Santa Cruz's Science Communication program
A Volcano's Hum - an example of a “New Scientist”-type magazine article
Newspaper and Radio Articles
Image credit: Holly Davis
Critter Cam - a Monterey County Herald science article
California Condors - another Monterey County Herald science article
The Blackout Blues - yet one more Monterey County Herald article, just for fun
Catching a Plane - a 30-second radio commentary aired on Santa Cruz's KUSP radio station. Transcript of the audio piece.


Click on one of the links below to make a REST call to the corresponding service.
Your results will be displayed in a blue text area below.
REST results can be copied to your computer's clipboard by clicking on the "Copy to clipboard" button below on the right.
To re-open the list of links click on the arrows below on the left.
{{serverHost}}
Oncolist Api
Parameter
Value
Type
Location
Description
term list
string
query
query string. Examples: "CDK2", "NM_052827", "204639_at". The detailed query syntax can be found at http://docs.mygene.info/en/latest/doc/query_service.html


Purpose
The purpose of Coop Fund is to
-
Generate resources and discussion with individuals and/or collectives who want to formalize their working practices.
-
Recognize members have individual needs and that these needs affect one's ability to participate in collective work.
-
Support proposals that struggle to get support elsewhere, either because it's a project or group that is not formally constituted, because of the political content of the proposal, or because the protocols of the funding process are exclusionary.
-
Resist the current forms of investor-owned, corporate, for-profit business models that dominate most areas of life, and bring into question the non-profit model and its over-reliance on wealthy elites.
-
Address inequitable wealth distribution and the causes of injustice and inequality in our community through solidarity and discussion.
-
Work in the field of cultural production. We don’t see this field as exceptional, or exempt from the need to develop ideas for structural change in regards to wealth distribution and democratic work practices. In fact, we know that this field is highly unregulated, exploitative and exclusionary at all levels.
-
Show solidarity with historical and contemporary anticapitalist struggles, and acknowledge how these struggles have also tried to defend against the violence of white supremacy, heterosexism, ableism, gender binaries and environmental destruction.
What Is A Cooperative?
A cooperative is an organization in which ownership and decision making are distributed democratically between all members.
The International Co-operative Alliance (ICA) defines a cooperative as, "an autonomous association of persons united voluntarily to meet their common economic, social, and cultural needs and aspirations through a jointly-owned and democratically-controlled enterprise."
Cooperatives are based on values of
Join Coop Fund
Thank you for your interest in joining Coop Fund. To become a member, complete the form below called.
Upon submitting the form, you will receive an email with information about how paying your monthly subscription via bank transfer. To use PayPal, select a monthly amount and click "Subscribe" below the form.
When payment set-up is complete, you will recieve an email with instructions for joining the Coop Fund forum on Loomio. Questions? Email<EMAIL_ADDRESS>experimental
- This is an experiment.
funds
- Money paid by members, that is kept in the Coop Fund bank account. Money paid out to members who make proposals for funds that they need.
honesty
- Transparency about how decisions are made and how things are done.
Loomio - The online decision-making platform.
member - Individuals or organizations who voluntarily accept the terms of membership, subscribe to Coop Fund, and who can apply for funds.
member contributions - The money members pay into Coop Fund.
needs - Something that is required. In the case of Coop Fund members are asked to think about what they need, and if Coop Fund could be a structure that supports part of those needs.
openness - Willingness to listen and revise.
platform - A space for individuals to conduct collaborative work.
proposal - Members make Proposals that are requests for funding. A Proposal can be for funds that will help with individual needs and or to further mutuality with others or to develop cooperation in work and life.
resources - Funds, conversation, community.
self-help - People are able to improve their circumstances through joint action which can be more powerful than individual effort.
self-responsibility - Members are accountable.
small funds - As the project grows the amount of funds grows. Because of the nature of this project, Coop Fund may not always have a large amount of money to give out.
social responsibility - Consider the needs of society
solidarity - A cooperative has a responsibility for the wellbeing of its members and other cooperatives.
voluntary and open membership - Coop Fund is a voluntary organization, open to all persons willing to accept the responsibilities of membership without gender, social, racial, political or religious discrimination.
voting - Members make their decisions based on whether a proposal is in line with the mission and purpose of Coop Fund.
workshop - Coop Fund provides education and training for members and non members.
Some of these definitions are adapted from the International Co-operative Alliance.
Questions? Email<EMAIL_ADDRESS>History and Current Format
In the beginning of 2017, as part of Authorization Sessions at Artists Space, Emma Hedditch organized an eight week Cooperative Study Discussion Course with Artists Space staff members Rachel Peddersen, Harry Burke, Colleen O’Connor and Jamie Stevens.
Greer Dworman, Tess Dworman, Michelle Coffey, Richard Birkett, and Laurel Atwell participated in some of these sessions.
Following this course Emma conducted further research into cooperative organizations in Edinburgh, with Rhubaba Gallery, and The Showroom in London.
In August 2017, Emma joined with Lydia Okrent and Elsa Brown in New York and together they started to work on the development of an online and in person cooperative funding platform, Coop Fund.
Coop Fund is inspired by the many historical and contemporary international types of Rotating Savings and Credit Associations and Solidfund, a workers cooperative in the U.K..


Class: Aws::CloudFront::Types::DistributionConfig
| Inherits: |
Struct
|
| Defined in: |
(unknown) |
Overview
A distribution Configuration.
Returned by:
- CreateDistributionRequest#distribution_config
- Aws::CloudFront::Types::Distribution#distribution_config
- GetDistributionConfigResult#distribution_config
- UpdateDistributionRequest#distribution_config
DistributionConfig
as input to a Aws::Client method, you can use a vanilla Hash
:
{
caller_reference: "string", # required
aliases: {
quantity: 1, # required
items: ["string"],
},
default_root_object: "string",
origins: { # required
quantity: 1, # required
items: [
{
id: "string", # required
domain_name: "string", # required
origin_path: "string",
custom_headers: {
quantity: 1, # required
items: [
{
header_name: "string", # required
header_value: "string", # required
},
],
},
s3_origin_config: {
origin_access_identity: "string", # required
},
custom_origin_config: {
http_port: 1, # required
https_port: 1, # required
origin_protocol_policy: "http-only", # required, accepts http-only, match-viewer, https-only
origin_ssl_protocols: {
quantity: 1, # required
items: ["SSLv3"], # required, accepts SSLv3, TLSv1, TLSv1.1, TLSv1.2
},
},
},
],
},
default_cache_behavior: { # required
target_origin_id: "string", # required
forwarded_values: { # required
query_string: false, # required
cookies: { # required
forward: "none", # required, accepts none, whitelist, all
whitelisted_names: {
quantity: 1, # required
items: ["string"],
},
},
headers: {
quantity: 1, # required
items: ["string"],
},
},
trusted_signers: { # required
enabled: false, # required
quantity: 1, # required
items: ["string"],
},
viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
min_ttl: 1, # required
allowed_methods: {
quantity: 1, # required
items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
cached_methods: {
quantity: 1, # required
items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
},
},
smooth_streaming: false,
default_ttl: 1,
max_ttl: 1,
compress: false,
},
cache_behaviors: {
quantity: 1, # required
items: [
{
path_pattern: "string", # required
target_origin_id: "string", # required
forwarded_values: { # required
query_string: false, # required
cookies: { # required
forward: "none", # required, accepts none, whitelist, all
whitelisted_names: {
quantity: 1, # required
items: ["string"],
},
},
headers: {
quantity: 1, # required
items: ["string"],
},
},
trusted_signers: { # required
enabled: false, # required
quantity: 1, # required
items: ["string"],
},
viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
min_ttl: 1, # required
allowed_methods: {
quantity: 1, # required
items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
cached_methods: {
quantity: 1, # required
items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
},
},
smooth_streaming: false,
default_ttl: 1,
max_ttl: 1,
compress: false,
},
],
},
custom_error_responses: {
quantity: 1, # required
items: [
{
error_code: 1, # required
response_page_path: "string",
response_code: "string",
error_caching_min_ttl: 1,
},
],
},
comment: "string", # required
logging: {
enabled: false, # required
include_cookies: false, # required
bucket: "string", # required
prefix: "string", # required
},
price_class: "PriceClass_100", # accepts PriceClass_100, PriceClass_200, PriceClass_All
enabled: false, # required
viewer_certificate: {
cloud_front_default_certificate: false,
iam_certificate_id: "string",
acm_certificate_arn: "string",
ssl_support_method: "sni-only", # accepts sni-only, vip
minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1
certificate: "string",
certificate_source: "cloudfront", # accepts cloudfront, iam, acm
},
restrictions: {
geo_restriction: { # required
restriction_type: "blacklist", # required, accepts blacklist, whitelist, none
quantity: 1, # required
items: ["string"],
},
},
web_acl_id: "string",
}
Instance Attribute Summary collapse
-
#aliases ⇒ Types::Aliases
A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.
-
#cache_behaviors ⇒ Types::CacheBehaviors
A complex type that contains zero or more CacheBehavior elements.
-
#caller_reference ⇒ String
A unique number that ensures the request can\'t be replayed.
-
#comment ⇒ String
Any comments you want to include about the distribution.
-
#custom_error_responses ⇒ Types::CustomErrorResponses
A complex type that contains zero or more CustomErrorResponse elements.
-
#default_cache_behavior ⇒ Types::DefaultCacheBehavior
A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don\'t match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.
-
#default_root_object ⇒ String
The object that you want CloudFront to return (for example, index.html) when an end user requests the root URL for your distribution (http://www.example.com) instead of an object in your distribution (http://www.example.com/index.html).
-
#enabled ⇒ Boolean
Whether the distribution is enabled to accept end user requests for content.
-
#logging ⇒ Types::LoggingConfig
A complex type that controls whether access logs are written for the distribution.
-
#origins ⇒ Types::Origins
A complex type that contains information about origins for this distribution.
-
#price_class ⇒ String
A complex type that contains information about price class for this distribution.
Possible values:
-
#restrictions ⇒ Types::Restrictions
A complex type that identifies ways in which you want to restrict distribution of your content.
-
#viewer_certificate ⇒ Types::ViewerCertificate
A complex type that contains information about viewer certificates for this distribution.
-
#web_acl_id ⇒ String
(Optional) If you\'re using AWS WAF to filter CloudFront requests, the Id of the AWS WAF web ACL that is associated with the distribution.
Instance Attribute Details
#aliases ⇒ Types::Aliases
A complex type that contains information about CNAMEs (alternate domain names), if any, for this distribution.
#cache_behaviors ⇒ Types::CacheBehaviors
A complex type that contains zero or more CacheBehavior elements.
#caller_reference ⇒ String
A unique number that ensures the request can\'t be replayed. If the CallerReference is new (no matter the content of the DistributionConfig object), a new distribution is created. If the CallerReference is a value you already sent in a previous request to create a distribution, and the content of the DistributionConfig is identical to the original request (ignoring white space), the response includes the same information returned to the original request. If the CallerReference is a value you already sent in a previous request to create a distribution but the content of the DistributionConfig is different from the original request, CloudFront returns a DistributionAlreadyExists error.
#comment ⇒ String
Any comments you want to include about the distribution.
#custom_error_responses ⇒ Types::CustomErrorResponses
A complex type that contains zero or more CustomErrorResponse elements.
#default_cache_behavior ⇒ Types::DefaultCacheBehavior
A complex type that describes the default cache behavior if you do not specify a CacheBehavior element or if files don\'t match any of the values of PathPattern in CacheBehavior elements.You must create exactly one default cache behavior.
#default_root_object ⇒ String
The object that you want CloudFront to return (for example, index.html) when an end user requests the root URL for your distribution (http://www.example.com) instead of an object in your distribution (http://www.example.com/index.html). Specifying a default root object avoids exposing the contents of your distribution. If you don\'t want to specify a default root object when you create a distribution, include an empty DefaultRootObject element. To delete the default root object from an existing distribution, update the distribution configuration and include an empty DefaultRootObject element. To replace the default root object, update the distribution configuration and specify the new object.
#enabled ⇒ Boolean
Whether the distribution is enabled to accept end user requests for content.
#logging ⇒ Types::LoggingConfig
A complex type that controls whether access logs are written for the distribution.
#origins ⇒ Types::Origins
A complex type that contains information about origins for this distribution.
#price_class ⇒ String
A complex type that contains information about price class for this distribution.
Possible values:
- PriceClass_100
- PriceClass_200
- PriceClass_All
#restrictions ⇒ Types::Restrictions
A complex type that identifies ways in which you want to restrict distribution of your content.
#viewer_certificate ⇒ Types::ViewerCertificate
A complex type that contains information about viewer certificates for this distribution.
#web_acl_id ⇒ String
(Optional) If you\'re using AWS WAF to filter CloudFront requests, the Id of the AWS WAF web ACL that is associated with the distribution.


THE CLIENT:
THE PRODUCT: Virtual Assist (VA) is a web-streaming tool that connects Auto Body Shops or Customers directly to an Adjuster when contesting the price for fixing a damaged vehicle.
Prior to VA, this process would have involved an adjuster going onsite to an auto body shop, which would have taken up to 4 days. Now, the entire process takes an average of 46 minutes.
To see the latest and greatest, download Virtual Assist in the Android or iOS app store!
ROLE: Product Designer (Research, UX, User Testing, UI)
PROCESS SNAPSHOT:
This is one iteration of the Agile XP design process.
- Learn about a user
- Identify a problem
- Ideate on solutions
- Test solution
- Evaluate results
- Tweak design as needed or implement UI
THE USER
Auto Body Shop Owners/Employees: Most often these are small shops where the owner is the primary user of VA. They tend to be:
- 50+ in age
- Low to moderate technology use
- The sole user of the app within their shop
THE PROBLEM
Many users put the name of their shop and shops' phone number instead of their name. This is important, because when disconnected, an Adjuster will call the shop and not know who to ask for.
This is redundant information from the previous screen! Many users would see this screen and hit ‘Next’, thinking that the page was complete only to receive an error after. Additionally, this information seems to never be altered.
There is no explanation for what the ‘Enter Code’ button does! Some users could click it because they thought it was required when it is not.
For users who accidentally got here, it took time before they realized they had to click the ‘back’ button to get to the previous screen.
ACTIONS
Taking these problems into consideration, I created a series of solutions, some of which I mocked up and tested with users using inVision prototypes. These were the end result:
By adding an input for ‘Company Name’ we’ve had nearly ALL USERS inputting their name! (First and sometimes last.)
Before, the ‘Enter Code’ seemed like a command. Working with a content strategist we changed the CTA to ‘Direct Connect’ to make the copy feel less mandatory.
We removed the redundant profile information. When asking users how they would edit their information they knew to go to ‘Profile’.
We made the ‘Claim Number’ and ‘Direct Connect’ sections into Tabs. This is because a user will do one or the other of these, and it seemed to provide the user with a greater level of affordance.
Results
We have been hearing significantly fewer complaints from our users in these areas. Additionally, our retention rate has increased significantly and Virtual Assist now handles 50% of all supplements at Allstate!
Next Steps
- Continue Testing and improving the apps
- Ensure WCAG AA accessibility standards
- Expand to secondary user cases/personas
- Speak with Adjusters to gather more information
- Create a Mobile App for Customers


Blacklisting Domain Names¶
Zone and recordset names can be blacklisted in Designate, disallowing the creation of certain names, specified by regular expressions.
The simple use case here could be “I don’t want anyone to be able to
create anything with mycompany.com.
in it!”, or maybe disallowing
subzones on a certain zone. Or simply disallowing the creation of a single
zone, like google.com.
.
If wanted to blacklist example.com.
and all of it’s subdomains, we could
make the following API calls.
POST /v2/blacklists/ HTTP/1.1
Accept: application/json
Content-Type: application/json
{
"pattern" : "^([A-Za-z0-9_\\-]+\\.)*example\\.com\\.$",
"description" : "This blacklists \*.example.com."
}
Response:
HTTP/1.1 201 CREATED
Content-Type: application/json; charset=UTF-8
X-Openstack-Request-Id: req-bfcd0723-624c-4ec2-bbd5-99e985efe8db
{
"description": "This blacklists \*.example.com.",
"links": {
"self": "http://<IP_ADDRESS>:9001/v2/blacklists/af91edb5-ede8-453f-af13-feabdd088f9c"
},
"pattern": "^([A-Za-z0-9_\\-]+\\.)*example\\.com\\.$",
"created_at": "2016-05-20 06:15:42",
"updated_at": null,
"id": "af91edb5-ede8-453f-af13-feabdd088f9c"
}
Now, if someone were to try and create foo.example.com.
,
or example.com.
they would encounter an error:
HTTP/1.1 400 BAD REQUEST
Content-Type: application/json
X-Openstack-Request-Id: req-b7be7770-ec4f-4573-b4db-70f95475f691
{
"message": "Blacklisted zone name",
"code": 400,
"type": "invalid_zone_name",
"request_id": "req-b7be7770-ec4f-4573-b4db-70f95475f691"
}
Blacklists can be deleted, just like an other resource in the API,
DELETE /v2/blacklists/<id>
.
Regular Expressions¶
The regular expressions used here can be a bit difficult to wrap your mind around at first. Try using a tool like https://www.debuggex.com/
It’s important to note that the regular expressions we enter are similar to Python regular expressions, but we need to escape certain characters when we make HTTP calls.
This means that if you wanted to debug this regex:
^([A-Za-z0-9_\\-]+\\.)*example\\.com\\.$
you’re really working with this regex:
^([A-Za-z0-9_\\-]+\.)*example\.com\.$


High Resolution Time API (Demo)
Test 1: Count until
Test 2: Count until
Run demo
API not supported
Log
Clear log


Ggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
Pzfotfitzfitzfitttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttt
Ähiäoiziozpüuzzpzpzpuzzu
Ihhpihuuhhouuuoiuhhuhuuhhuuhuouu
huguztfutfutfufuttfutz


current<% } %>">
Home
current<% } %>">
About Us
current<% } %>">
Our Specialties
current<% } %>">
Our Thinking
Our People
current<% } %>">
Careers


?6
7
8
9
10
_
v
The
Newark
copyright
reserved
botanical
Garden
Oplismenus
hirtellus
(L.)P.Beauv.
subsp.
setarius
(Lam.)Mez
ex
Ekman
firm.U-Scbo?
z
tor.78
MUS.
BOT.
BERO!..
THE
NEW
YORK
BOTANICAL
GARDEN
PLANTS
OF
CUBA
Sevilla
Estate,
near
Santiago
ĠJmI,
u?
SWa
lil/St%ALT.
Xfijto
Ft
s4t.it
Collected
by
Norman
Taylor
1906
1604390
Legend -
Level of confidence that token is an accurately-transcribed word
extremely low
very low
low
undetermined
medium
high
very high


CMSC131 (Fall 2021, Nelson's Sections 01*, 03*, FC01)
Object-Oriented Programming I
Syllabus
Introduction
This is the first programming course for Computer Science majors
with a focus on object-oriented programming. The goal of the course
is to develop skills such as program design and testing as well as
the implementation of programs using a graphical IDE. All programming
will be done in Java.
Prerequisites
Corerequisite: Math140
Coordinator
Nelson Padua-Perez, Office:
IRB 2210
Textbook
No required textbook.
We may record Zoom lab/discussion sessions and lecture presentations.
If this represents a problem for you, please contact your instructor.
Course Topics (Subject to Change)
| Intro to Computer Systems |
Variables, Operators |
| Expressions, Statements, Methods |
Java Text Input/Output |
| Conditionals |
Loops |
| Principles of Object Oriented Programming |
Basics of Program Design |
| Testing and Debugging |
Java Memory Map |
| Arrays and Java ArrayLists |
Java interfaces |
| Inheritance Overview |
Recursion |
Grading
| Programming Assignments (Projects), Exercises, Lab Work |
32% |
| Quizzes |
10% |
| Semester Exams (3), (8%, 12% and 12%) |
32% |
| Final Exam |
26% |
Grading Concerns
It is your responsibility to submit regrade requests by a
specified deadline; no regrade requests will be processed afterwards.
Deadlines to address any grading concerns will be available
at Grading Concerns.
Assignments
- Deadlines -
All assignments are due at 11:55 pm and you have until
11:55 pm of the next day to submit your work with
a 12% penalty. You will not receive any credit for
a submission after the late date, except the Good Faith Attempt credit
(additional information below).
- Submit Server -
You need to use the
submit server to submit
you work. We will not accept work submitted otherwise (e.g.,
email, etc.). You need to make sure that your assignment solution works
in the submit server, otherwise you may lose most of the credit.
- Which Assignments Gets Graded -
For programming assignments the one with public/release/secret tests
that scores the highest in the submit server after a late penalty (if any) has been applied.
We only use public/release/secret tests scores to select the
submission to grade. Other assignment requirements (e.g., style, methods you
must implement, allowed classes, etc.) are not considered. We will evaluate
those requirements on the selected submission.
- Good Faith Attempt (GFA) -
You must satisfy a minimum set of requirements (Good Faith Attempt (GFA)) for most class work (usually programming assignments), otherwise you will fail the course (automatic
grade of F). The Good Faith Attempt guarantees you have the skills necessary
for upper-level courses. A good faith attempt for an assignment is worth 0.5 of your
class grade. GFAs are not due at the end of the semester (a common misunderstanding). GFAs requirements and deadline are available at
at CMSC131 GFAs. Additional information about good faith attempts is available
at GFA Information.
- Closed Assignments -
All programming assignments in this course are
to be written individually (unless explicitly
indicated otherwise).
- No Pop Quizzes/Pop Lab Work -
There are no pop quizzes nor pop lab exercises. We will announce in advance (at least one day) if there is any work you need to submit for a grade.
Regarding Posting of Assignments' Solutions/Implementations
-
Posting of any assignment solution (even after the course is over)
in a publicly available online location (e.g., github, Chegg) is prohibited under
the Code of Academic Integrity (facilitation of academic dishonesty). Any
student responsible for publicly posting assignments' solutions will be reported
to the Office of Student Conduct and risks the sanction of an "XF" in the course.
-
Posting of your assignments in a private repository where only selected
people (e.g., potential employers) have access is OK.
Covid Related
-
The campus facilities division have put QR codes on desks throughout the campus.
A student can scan the QR code where they are sitting each class, which will "register"
their place and location at a particular time. Additional information at https://provost.umd.edu/node/4243 (Q&A 4).
TA Room/Office Hours
Office hours get extremely busy the day before an assignment deadline and getting help
is not guaranteed. Please start your assignments early so you can address any problems
during office hours.
Backups
You are responsible for creating backups of your work. Use the submit server as a backup
tool by submitting often.
Piazza
We will be using (Piazza) for class
communication. You will not be able to register to Piazza yourself.
Your instructor will register you using the email address
you have in the school system. Posting of any kind of code in Piazza is not allowed.
Class Announcements
You are responsible for checking announcements we
post in the announcements Piazza folder.
Excused Absence and Academic Accommodations
See the section titled "Attendance and Missed Assignments"
available at Course Related Policies.
Accessibility
See the section titled "Accessibility" available at
Course
Related Policies.
Academic Integrity
Please read this information carefully. We take academic integrity
matters seriously.
-
Academic dishonesty includes not only cheating, fabrication,
and plagiarism, but also includes helping other students commit acts of
academic dishonesty by allowing them to obtain copies of your work. All
submitted work must be your own. Cases of academic dishonesty
will be pursued to the fullest extent possible as stipulated by the
Office of Student Conduct.
- Situations that often lead to academic integrity violations:
- A student's friend/roommate shares an assignment's code. Once you provide
your code to another student, you are a facilitator, even if you indicate to the student "not to copy-paste" any of it. Actually we had a case in which a student CS degree was revoked for this reason.
- Students use online resources (github, Chegg, etc.) to find assignments' solutions.
The solutions are found by several students and all will be involved in an
academic case.
- Students assume we don't have tools that check for similarities among all students' submissions.
- Students get desperate and don't want a 0 in the assignment.
- Students are not aware of the expectations regarding academic integrity.
- Students assume we don't take academic integrity matters seriously.
- You should only receive assistance from instructors/TAs. We have seen cases
in which the use of tutors have led to academic integrity violations (e.g., tutors
looked for assignment's solutions online).
-
The Office of Student Conduct is responsible for handling academic integrity matters. After a report is submitted by an instructor, the case is evaluated by the office and it could result in an XF grade, degree revocation, or dismissal from the university.
-
One of the most negative consequences of academic integrity violations is the emotional burden an academic integrity case has on a student. We have seen students extremely distraught as a result of an academic integrity violation. In many cases students chances for recommendations, TA positions, and other opportunities are negatively affected.
- Please read the section titled "Academic Integrity" available at
Course Related Policies
and the information available at
Academic Integrity
Class Concerns
If you or your parents have any class concerns, feel free to contact
the instructor. If an issue arises with the instructor, report it using
the form available at https://www.cs.umd.edu/classconcern.
Miscellaneous
Copyright
All course materials are copyright UMCP, Department of Computer Science
© 2021. All rights reserved. Students are permitted to use course
materials for their own personal use only. Course materials may not be
distributed publicly or provided to others (excepting other students in
the course), in any way or format.


The Java platform includes a package of concurrency utilities. These are classes that are designed to be used as building blocks in building concurrent classes or applications. Just as the collections framework simplified the organization and manipulation of in-memory data by providing implementations of commonly used data structures, the concurrency utilities simplify the development of concurrent classes by providing implementations of building blocks commonly used in concurrent designs. The concurrency utilities include a high-performance, flexible thread pool; a framework for asynchronous execution of tasks; a host of collection classes optimized for concurrent access; synchronization utilities such as counting semaphores; atomic variables; locks; and condition variables.
Using the concurrency utilities, instead of developing components such as thread pools yourself, offers a number of advantages:
synchronized
,
volatile
, wait()
, notify()
,
and notifyAll()
) are difficult to use correctly, and
errors using these facilities can be difficult to detect and debug.
By using standardized, extensively tested concurrency building
blocks, many potential sources of threading hazards such as
deadlock, starvation, race conditions, or excessive context
switching are eliminated. The concurrency utilities were carefully
audited for deadlock, starvation, and race conditions.In short, using the concurrency utilities to implement a concurrent application can help your program be clearer, shorter, faster, more reliable, more scalable, easier to write, easier to read, and easier to maintain.
The concurrency utilities includes:
Executor
interface standardizes invocation, scheduling, execution, and
control of asynchronous tasks according to a set of execution
policies. Implementations are provided that enable tasks to be
executed within the submitting thread, in a
single background thread (as with events in Swing), in a newly
created thread, or in a
thread pool, and developers can create customized
implementations of Executor
that support arbitrary execution policies. The built-in
implementations offer configurable policies such as queue length
limits and saturation
policy that can improve the stability of applications by
preventing runaway resource use.Queue
,
BlockingQueue
and BlockingDeque
interfaces, and high-performance, concurrent implementations of
Map
, List
, and Queue
. See
the Collections Framework Guide for
more information.java.util.concurrent.atomic
package offer higher
performance than would be available by using synchronization (on
most platforms), making them useful for implementing
high-performance concurrent algorithms and conveniently
implementing counters and sequence number generators.java.util.concurrent.locks
package provides a
high-performance lock implementation with the same memory semantics
as synchronization, and it also supports specifying a timeout when
attempting to acquire a lock, multiple condition variables per
lock, nonnested ("hand-over-hand") holding of multiple locks, and
support for interrupting threads that are waiting to acquire a
lock.System.nanoTime
method enables access to a nanosecond-granularity time source for
making relative time measurements and methods that accept timeouts
(such as the
BlockingQueue.offer
,
BlockingQueue.poll
,
Lock.tryLock
,
Condition.await
, and Thread.sleep
)
can take timeout values in nanoseconds. The actual precision of the
System.nanoTime
method is platform-dependent.


-*- html -*-
NkBASE Distributed Database
@author Carlos Gonzalez Florido
@copyright 2015 Carlos Gonzalez Florido
@version 0.1.0
@title NkBASE Distributed Database
@doc NkBASE is an Erlang distributed key-value database designed to be integrated into distributed Erlang applications.


#include <markitem.h>
|
| enum | { Type = StrokeMark
} |
| |
|
| QVariant | itemChange (GraphicsItemChange change, const QVariant &value) override |
| | This is a item state change handler. More...
|
| |
◆ anonymous enum
◆ StrokeMarkItem() [1/2]
| StrokeMarkItem::StrokeMarkItem |
( |
const QPolygonF & |
path, |
|
|
QGraphicsItem * |
parent = nullptr |
|
) |
| |
|
explicit |
◆ StrokeMarkItem() [2/2]
| StrokeMarkItem::StrokeMarkItem |
( |
QGraphicsItem * |
parent = nullptr | ) |
|
|
explicit |
◆ ~StrokeMarkItem()
| StrokeMarkItem::~StrokeMarkItem |
( |
| ) |
|
◆ appendPoint()
| void StrokeMarkItem::appendPoint |
( |
const QPointF & |
p | ) |
|
◆ itemChange()
| QVariant StrokeMarkItem::itemChange |
( |
GraphicsItemChange |
change, |
|
|
const QVariant & |
value |
|
) |
| |
|
overrideprotected |
This is a item state change handler.
This handler can receive many state change of the item. You can hand these change in this function
- Parameters
-
- Returns
- Warning
- Some member functions can not be called in this handler or it will cause recursively calls
◆ length()
| double StrokeMarkItem::length |
( |
| ) |
const |
|
inline |
◆ modelIndex()
| QPersistentModelIndex StrokeMarkItem::modelIndex |
( |
| ) |
const |
|
inline |
◆ name()
| QString StrokeMarkItem::name |
( |
| ) |
const |
|
inline |
◆ paint()
| void StrokeMarkItem::paint |
( |
QPainter * |
painter, |
|
|
const QStyleOptionGraphicsItem * |
option, |
|
|
QWidget * |
widget |
|
) |
| |
◆ setItemChangeHandler()
| void StrokeMarkItem::setItemChangeHandler |
( |
const std::function< QVariant(StrokeMarkItem *mark, QGraphicsItem::GraphicsItemChange, const QVariant &)> & |
handler | ) |
|
This function is used to set a handler to handle some state change of the item from external.
Because QGraphicsItem and its subclasses don't inherit from QObject, they can't emit any signals to notify any other object. On a count of this, a call back function need to be employed manually.
- Parameters
-
| handler | This is a type of std::function<> |
◆ setName()
| void StrokeMarkItem::setName |
( |
const QString & |
name | ) |
|
|
inline |
◆ setSliceIndex()
| void StrokeMarkItem::setSliceIndex |
( |
int |
index | ) |
|
|
inline |
◆ setSliceType()
| void StrokeMarkItem::setSliceType |
( |
SliceType |
type | ) |
|
|
inline |
◆ setVisibleState()
| void StrokeMarkItem::setVisibleState |
( |
bool |
visible | ) |
|
|
inline |
◆ sliceIndex()
| int StrokeMarkItem::sliceIndex |
( |
| ) |
const |
|
inline |
◆ sliceType()
| SliceType StrokeMarkItem::sliceType |
( |
| ) |
const |
|
inline |
◆ type()
| int StrokeMarkItem::type |
( |
| ) |
const |
|
inlineoverride |
◆ visibleState()
| bool StrokeMarkItem::visibleState |
( |
| ) |
const |
|
inline |
◆ operator<<
| QDataStream& operator<< |
( |
QDataStream & |
stream, |
|
|
const StrokeMarkItem * |
item |
|
) |
| |
|
friend |
◆ operator>>
| QDataStream& operator>> |
( |
QDataStream & |
stream, |
|
|
StrokeMarkItem *& |
item |
|
) |
| |
|
friend |
◆ StrokeMarkTreeItem
The documentation for this class was generated from the following files:


Success!
Your sample Java Spring web application has been successfully setup
Your web application is up and running on middleware.sh
Next up
Clone sample code repository and start developing your application
View your application dashboard on middleware.sh


StormLib API Reference
SFileOpenArchive
bool WINAPI SFileOpenArchive( const char * szMpqName, // Archive file name DWORD dwPriority, // Archive priority DWORD dwFlags, // Open flags HANDLE * phMPQ // Pointer to result HANDLE );
Function SFileOpenArchive opens a MPQ archive. During the open operation, the archive is checked for corruptions, internal (listfile) and (attributes) are loaded, unless specified otherwise. The archive is open for read and write operations, unless MPQ_OPEN_READ_ONLY is specified.
Note that StormLib maintains list of all files within the MPQ, as long as the MPQ is open. At the moment of MPQ opening, when the MPQ contains an internal list file, that listfile is parsed and all files in the listfile are checked against the hash table. Every file name that exists within the MPQ is added to the internal name list. The name list can be fuhrter extended by calling SFileAddListFile.
| Stream provider value | Name prefix | Meaning |
|---|---|---|
| STREAM_PROVIDER_FLAT (0x0000) |
flat- | The MPQ is plain linear file. The file can have a block bitmap at the end, indicating that some file blocks may be missing. This is the default value. |
| STREAM_PROVIDER_PARTIAL (0x0010) |
part- | The MPQ is stored in partial file. Partial files were used by trial version of World of Warcraft (build 10958 - 11685). |
| STREAM_PROVIDER_MPQE (0x0020) |
mpqe- | The MPQ is encrypted (.MPQE). Encrypted MPQs are used by Starcraft II and Diablo III installers. StormLib attempts to use all known keys. If no key can be used for decrypting the MPQ, the open operation fails. |
| STREAM_PROVIDER_BLOCK4 (0x0030) |
blk4- | The MPQ divided to multiple blocks and multiple files. Size of one block is 0x4000 bytes, maximum number of blocks per file is 0x2000. Each block is followed by MD5 hash in plain ANSI text form. If the total number of blocks in the archive is greater than 0x2000, then the archive is split into multiple files. These files have decimal numeric extensions in ascending order (.MPQ.0, .MPQ.1, .MPQ.2 and so on). |
| Base provider value | Name prefix | Meaning |
|---|---|---|
| BASE_PROVIDER_FILE (0x0000) |
file: | The MPQ is in local file. This is the default value. |
| BASE_PROVIDER_MAP (0x0001) |
map: | The MPQ is in local file. Stormlib will attempt to map the file into memory. This speeds up the MPQ operations (reading, verifying), but has size and operating system limitations. |
| BASE_PROVIDER_HTTP (0x0002) |
http: | The MPQ is on a web server available via HTTP protocol. The server must support random access. Only supported in Windows. |
| Stream flag value | Meaning |
|---|---|
| STREAM_FLAG_READ_ONLY (0x00000100) |
This flag causes the file to be open read-only. This flag is automatically set for partial and encrypted MPQs, and also for all MPQs that are not open from BASE_PROVIDER_FILE. |
| STREAM_FLAG_WRITE_SHARE (0x00000200) |
This flag causes the writable MPQ being open for write share. Use with caution. If two applications write to an open MPQ simultaneously, the MPQ data get corrupted. |
| STREAM_FLAG_USE_BITMAP (0x00000400) |
This flag tells the file stream handler to respect a file bitmap. File bitmap is used by MPQs whose file blocks are downloaded on demand by the game. |
| MPQ_OPEN_NO_LISTFILE (0x00010000) |
Don't read the internal listfile. |
| MPQ_OPEN_NO_ATTRIBUTES (0x00020000) |
Don't open the "(attributes)" file. |
| MPQ_OPEN_NO_HEADER_SEARCH (0x00040000) |
Do not search the header at 0x200 byte offsets. |
| MPQ_OPEN_FORCE_MPQ_V1 (0x00080000) |
Forces the MPQ to be open as MPQ format 1.0, ignoring "wFormatVersion" variable in the header. |
| MPQ_OPEN_CHECK_SECTOR_CRC (0x00100000) |
SFileReadFile will check CRC of each file sector on any file in the archive until the archive is closed. |
| MPQ_OPEN_READ_ONLY (deprecated) |
This flag is deprecated. Use STREAM_FLAG_READ_ONLY instead. |
| MPQ_OPEN_ENCRYPTED (deprecated) |
This flag is deprecated. Use STREAM_PROVIDER_MPQE instead. |
Since StormLib version 9.00, an archive name can have a prefix specifying the type of the archive. If a prefix is specified, it has greater priority than the appropriate stream flag. The list of possible prefixes is described in the table in the Parameters section above. A short list of examples how to use name prefix is below. Note that the "//" after the name prefix is optional. Both "map:C:\file.ext" and "map://C:\file.ext" are allowed and are equal. The http: prefix only works in Windows.
"flat-file://C:\Data\expansion.MPQ"
"part-file://C:\Data\Installer UI 2 deDE.MPQE"
"blk4-http://www.site.com/MPQs/alternate.MPQ"
"map://C:\Data\world.MPQ"
"http://www.site.com/MPQs/alternate.MPQ"
The name string can also specify a master-mirror pair. The data are primarily taken from the mirror (e.g. local file), but if they are not available, they are loaded from the master (e.g. a web file). The name of the master archive must follow the name of the mirror archive, separated by an asterisk ('*'). An example how to use a master-mirror pair is below.
SFileOpenArchive("flat-file://C:\alternate.MPQ*http://www.server.com/data/mpqs/alternate.MPQ", ...);
When the function succeeds, it returns nonzero and phMPQ contains the handle of the opened archive. When the archive cannot be open, function returns false and GetLastError gives the error code.
| Available in Storm.dll | Yes |
| Ordinal number in Storm.dll 1.00 | 63 (0x03F) |
| Ordinal number in Storm.dll 1.09 | 266 (0x10A) |
Copyright (c) Ladislav Zezula 2003 - 2014


Police not pursuing charges against Browns' Myles Garrett
by EndPlayCLEVELAND (AP) - Cleveland police say they are not investigating Browns player Myles Garrett for striking a Pittsburgh Steelers quarterback in the head with a helmet.
Sgt. Jennifer Ciaccia (CHAWCH') said Friday that police hadn't received a complaint from Mason Rudolph.
And a city spokeswoman says the prosecutor can't comment because Rudolph hasn't filed a complaint.
Rudolph's agent, Tim Younger, tells media outlets that no legal options "have been removed from the table."
Rudolph called Garrett's actions "pretty cowardly."
Garrett pulled off Rudolph's helmet during a melee at the end of Thursday night's game in Cleveland and used it to strike him on the head.
Garrett is the NFL's No. 1 overall pick in 2017 and was ejected from the game. The NFL on Friday suspended Garrett indefinitely.


Temporarily site is down for maintenance. Please try again later in sometime.
For any information needed please contact our support team.
Name
*
Phone
*
Email
*
Message
*
*
mark fields are required.
Submit
Copyright © 2013 Business Diary. All rights reserved.


{% extends 'base.html' %} {% block content %}
Change the owner of this publisher? The old owner will become an editor and can then be removed if desired.


Previous: Generic Functions and Methods, Up: Objects
| • function-keywords: | ||
| • ensure-generic-function: | ||
| • allocate-instance: | ||
| • reinitialize-instance: | ||
| • shared-initialize: | ||
| • update-instance-for-different-class: | ||
| • update-instance-for-redefined-class: | ||
| • change-class: | ||
| • slot-boundp: | ||
| • slot-exists-p: | ||
| • slot-makunbound: | ||
| • slot-missing: | ||
| • slot-unbound: | ||
| • slot-value: | ||
| • method-qualifiers: | ||
| • no-applicable-method: | ||
| • no-next-method: | ||
| • remove-method: | ||
| • make-instance: | ||
| • make-instances-obsolete: | ||
| • make-load-form: | ||
| • make-load-form-saving-slots: | ||
| • with-accessors: | ||
| • with-slots: | ||
| • defclass: | ||
| • defgeneric: | ||
| • defmethod: | ||
| • find-class: | ||
| • next-method-p: | ||
| • call-method: | ||
| • call-next-method: | ||
| • compute-applicable-methods: | ||
| • define-method-combination: | ||
| • find-method: | ||
| • add-method: | ||
| • initialize-instance: | ||
| • class-name: | ||
| • (setf class-name): | ||
| • class-of: | ||
| • unbound-slot: | ||
| • unbound-slot-instance: |
Previous: Generic Functions and Methods, Up: Objects


Album example {{section}} {{ inputElement.value }}
Something {{dedicatedTextInterpolation}} short and leading
about the collection below—its contents, the creator, etc.
Make it short and sweet, but not too short so folks don’t simply skip over it entirely.


This jQuery plugin can be used as a countdown, a clock or as a random numbers.
| Language | Javascript |
| License | MIT |
| Version | 2.0.0 |
| Release date | January 22, 2017 |
| Download | zip archive |
| Source | git clone https://github.com/sizeofcat/jquery-led.git |
Setup
First you need to include the jQuery and Raphael libraries, since LED depends on them. You can download them from the jQuery website, Raphael website or link them directly from the Google CDN.

Secondly, you need to include the LED Javascript file into your page. You can do it by adding the code below to your page.

Next, you create the element container that you want to apply catLED() on.

As the last step, you trigger the catLED() function on the element you just created. In this case, we trigger the function on the div with the class led.
$('.led1').catLED({
type: 'countdown',
format: 'ddd:hh:mm:ss',
color: '#eee',
background_color '#000',
size: 16
});
Settings
| Name | Default | Description |
|---|---|---|
| type | ‘time’ | Type of the LED display, can be countdown, random, number, custom or time. |
| format | ‘hh”mm’ | Time format for the led (ex. “hh:mm:ss”). |
| value | If the LED type is number or custom, specify the desired number here. *custom value must be in quote | |
| color | ’#fff’ | Hex color of the digits. |
| background_color | ’#000’ | Hex color of the background. |
| size | 12 | LED digit size in pixels. |
| rounded | 1 | Round radius of the LED digits. |
| spacing | 1 | Spacing between the digits. |
| font_type | 1 | Type of the LED font display, between 1 and 3. |
| hour_format | 24 | Hour format, can be 12 or 24. |
| count_to | If it’s a countdown, the date to which we count to, following the yyyy:mm:dd format, for ex: 2015:12:25, default is the end of the current year. |
Demo
Countdown to the end of current year
Code:
$('.led1').catLED({
type: 'countdown',
format: 'ddd:hh:mm:ss',
hour_format: 12,
color: '#fa0',
background_color: '#fafafa',
rounded: 0,
font_type: 2,
size: 9
});
Show current time
Code:
$('.led2').catLED({
type: 'time',
format: 'hh:mm',
color: '#ed1978',
background_color: '#ccc',
size: 8,
rounded: 4,
font_type: 1
});
Countdown to Christmas (days-hours-minutes-seconds)
$('.led3').catLED({
type: 'countdown',
format: 'ddd:hh:mm:ss',
count_to: '2017:12:25',
color: '#ff0000',
background_color: '#fff',
size: 8,
font_type: 2
});
Countdown to New Year (days-hours)
$('.led4').catLED({
type: 'countdown',
format: 'ddd:hh',
color: '#0000ff',
background_color: '#888',
size: 10,
font_type: 2,
rounded: 6
});
Random numbers
$('.led5').catLED({
type: 'random',
color: '#ed1978',
background_color: '#fff',
size: 6,
rounded: 9,
font_type: 3
});
Custom Text
$('.led6').catLED({
type: 'custom',
color: '#FF0000',
background_color: '#BCBABA',
size: 10,
rounded: 2,
font_type: 4
value: 'ABCDEFG' //only ABCDEFGHIJKLMNOPQRSTUVWXYZ@
});


Drag and drop the blue waypoint markers, or grab the orange route line and drag a new via waypoint. You can also enter an address in the address text fields on the right side.
| Sample Route |
|---|
| Feature Layers | |
|---|---|
| Truck attributes | |
| Restriction zones | |
| Traffic Incidents | Speed Patterns |
| Vehicle |
|---|
| Reference time | |
|---|---|
|
|


4 July 2005
On 4 July 2005, 13 new polio cases were confirmed in Indonesia, bringing the total number of cases to 79. The new cases are from the provinces of Banten and West Java.
The recently confirmed cases in Sumatra and Central Java occurred outside the area where an emergency 'mop-up' campaign was held from 31 May to 2 June, and again on 29 June. Sumatra and Central Java will be included in the next phase of the large-scale immunization campaigns, which will start from August. A large outbreak response immunization targeting 78,000 children aged less than five years was held from 26 June around the case in Central Java.
Prior to this outbreak following an importation, Indonesia has not had a wild poliovirus case since 1995.


--- layout: documentation title: DataReadEffectType ---
The DataReadEffectType type is intended to characterize the effects of actions upon objects where some data is read, such as from a file or a pipe.
| Field Name | Type | Description |
|---|---|---|
| @effect_typeoptional | EffectTypeEnum |
The effect_type field specifies the nature of the Defined Effect instantiated in the place of the Defined_Effect element. |
| Data1..1 | DataSegmentType |
The Data field specifies the data that was read from the object by the action. |


Web application that takes user input (time) and randomly generates content for the user to waste their time on that will fill the alloted time. Makes use of Youtube API.
Unity web game with the theme of a space race. Allows users to select a country and race against each other to be the first to build a rocket. Built using an idea created in a prior PennApps. Won "best use of graphics and art".
Build a Arduino buggy used to navigate around a room to parse data to try to find the path with the shortest distance and travel in that direction. Can be controlled using a keyboard and parses data to be used by the user and the robot.
View ProjectBuilt a unix based operating system. Building a FlatFAT file system and shell while working with another group to integrate their kernel in order to build a simple operating system.
Unity web game with the theme of a space race. Allows users to select a country and race against each other to be the first to build a rocket. Built using an idea created in a prior PennApps. Won "best use of graphics and art".


I am a product designer with a strong foundation in data science & software, designing new data experiences at Unqork.


Compact Profiles, introduced in JDK 8, enable reduced memory footprint for applications that do not require the entire Java platform. The javac compiler has a -profile option, which allows the application to be compiled using one of the supported profiles.
There are three supported profiles: compact1, compact2 and compact3. These are additive layers, so that each Profile contains all of the APIs in profiles smaller than itself. The compact profiles feature is useful in small devices. It also can be used to shorten the time to download an application from an "app store." It makes for more compact deployment of Java applications that bundle the JRE. A JRE can be configured with a compact profile, reducing its footprint for deployment along with a compact profile application.


| Class | Description |
|---|---|
| OTCPayerCSAAggressive |
OTCPayerCSAAggressive displays the MPoR-related XVA Metrics Suite for the given OTC Payer Swap on a Daily
Grid using the "Aggressive" CSA Timeline of Andersen, Pykhtin, and Sokol (2017).
|
| OTCPayerCSAClassicalMinus |
OTCPayerCSAClassicalMinus displays the MPoR-related XVA Metrics Suite for the given OTC Payer Swap on a
Daily Grid using the "Classical-" CSA Timeline of Andersen, Pykhtin, and Sokol (2017).
|
| OTCPayerCSAClassicalPlus |
OTCPayerCSAClassicalPlus displays the MPoR-related XVA Metrics Suite for the given OTC Payer Swap on a
Daily Grid using the "Classical+" CSA Timeline of Andersen, Pykhtin, and Sokol (2017).
|
| OTCPayerCSAConservative |
OTCPayerCSAConservative displays the MPoR-related XVA Metrics Suite for the given OTC Payer Swap on a
Daily Grid using the "Conservative" CSA Timeline of Andersen, Pykhtin, and Sokol (2017).
|
| OTCReceiverCSAAggressive |
OTCReceiverCSAAggressive displays the MPoR-related XVA Metrics Suite for the given OTC Receiver Swap on a
Daily Grid using the "Aggressive" CSA Timeline of Andersen, Pykhtin, and Sokol (2017).
|
| OTCReceiverCSAClassicalMinus |
OTCReceiverCSAClassicalMinus displays the MPoR-related XVA Metrics Suite for the given OTC Receiver Swap
on a Daily Grid using the "Classical-" CSA Timeline of Andersen, Pykhtin, and Sokol (2017).
|
| OTCReceiverCSAClassicalPlus |
OTCReceiverCSAClassicalPlus displays the MPoR-related XVA Metrics Suite for the given OTC Receiver Swap on
a Daily Grid using the "Classical+" CSA Timeline of Andersen, Pykhtin, and Sokol (2017).
|
| OTCReceiverCSAConservative |
OTCReceiverCSAConservative displays the MPoR-related XVA Metrics Suite for the given OTC Receiver Swap on
a Daily Grid using the "Conservative" CSA Timeline of Andersen, Pykhtin, and Sokol (2017).
|


When implementing relationships in SQLAlchemy models, you will generally need
to cross-reference one model from another, ideally in a bidirectional manner.
Historically, the mechanism to do this has been the relationship.backref
keyword. However, as noted in the SQLAlchemy
documentation, this keyword should now be considered legacy
and the relationship.back_populates
migration preferred instead. There are a
couple of reasons for this. Quoting from the docs:
The
relationship.backref
keyword should be considered legacy, and use ofrelationship.back_populates
with explicitrelationship()
constructs should be preferred. Using individualrelationship()
constructs provides advantages including that both ORM mapped classes will include their attributes up front as the class is constructed, rather than as a deferred step, and configuration is more straightforward as all arguments are explicit. New PEP 484 features in SQLAlchemy 2.0 also take advantage of attributes being explicitly present in source code rather than using dynamic attribute generation.
The SQLAlchemy docs include a guide on migrating tables, (as well as a great overview on relationships in general), however, this guide assumes you are using foreign key constraints in your models and using the auto-incrementing primary key field as your reference. To be honest, you probably should be using foreign keys since without these you have no way to enforce referential integrity but say you can’t use them or don’t want to, how does one migrate? The below examples should hopefully guide you in migrating these.
One-to-Many
The one-to-many pattern is the simpler one to migrate. Consider the following example:
import uuid
import sqlalchemy as sa
from sqlalchemy import orm
BASE = orm.declarative_base()
class User(BASE):
__tablename__ = 'user'
id = sa.Column(sa.Integer, primary_key=True)
uuid = sa.Column(sa.String(36), nullable=False)
name = sa.Column(sa.String)
class Address(BASE):
__tablename__ = 'addresses'
__tableargs__ = (
sa.Index('addresses_user_uuid_idx', 'user_uuid'),
)
id = sa.Column(sa.Integer, primary_key=True)
user_uuid = sa.Column(sa.String(36), nullable=False)
user = orm.relationship(
'User',
backref='addresses',
primaryjoin='Address.user_uuid == User.uuid',
foreign_keys=user_uuid,
)
def main():
engine = sa.create_engine('sqlite://')
session = orm.sessionmaker(bind=engine)()
BASE.metadata.create_all(engine)
user = User(name='John Doe', uuid=str(uuid.uuid4()))
session.add(user)
session.commit()
address = Address(user_uuid=user.uuid)
session.add(address)
session.commit()
print('# Users')
for user in session.query(User).all():
print(f'User: name={user.name}')
print()
print('# Addresses')
for address in session.query(Address).all():
print(f'Address: user={address.user_uuid}')
print()
if __name__ == '__main__':
main()
Before looking at migrating from backref
to back_populates
, it’s worth
understanding what’s going on here. You’ll note that we have a relationship
from the Address
model back to the User
model. This has the backref
keyword set on it, allowing you to reference related addresses from instances
of User
, however it also has primaryjoin
and foreign_keys
keywords set.
These are necessary because the user_uuid
column does not have a foreign key
constraint present. You can confirm this by inspecting the schemas generated by
SQLAlchemy.
❯ python
>>> import test_o2m # name of module saved locally
>>> from sqlalchemy import schema
>>> print(schema.CreateTable(test_o2m.User.__table__))
CREATE TABLE "user" (
id INTEGER NOT NULL,
uuid VARCHAR(36) NOT NULL,
name VARCHAR,
PRIMARY KEY (id)
)
>>> print(schema.CreateTable(test_o2m.Address.__table__))
CREATE TABLE addresses (
id INTEGER NOT NULL,
user_uuid VARCHAR(36) NOT NULL,
PRIMARY KEY (id)
)
Because we don’t have a foreign key present, SQLAlchemy isn’t able to determine
the join condition. This necessitates the addition of the primaryjoin
and
foreign_keys
keywords to guide SQLAlchemy on resolving these relations.
Removing these keywords will yield an error message.
sqlalchemy.exc.NoForeignKeysError: Can't find any foreign key relationships between 'addresses' and 'user'.
The only other unusual thing here is that we’re using a field other than id
to reference things, namely a uuid
field on both models. There’s no real
reason to do this here but this was the case in the models that I had to
migrate and it makes things a little more complicated and “real-world’y”.
Now that we understand what’s going, it’s time to look at switching from
backref
to back_populates
. It turns out to be pretty simple for one-to-many
models like this.
import uuid
import sqlalchemy as sa
from sqlalchemy import orm
BASE = orm.declarative_base()
class User(BASE):
__tablename__ = 'user'
id = sa.Column(sa.Integer, primary_key=True)
uuid = sa.Column(sa.String(36), nullable=False)
name = sa.Column(sa.String)
addresses = orm.relationship(
'Address',
primaryjoin='User.uuid == Address.user_uuid',
back_populates='user',
foreign_keys='Address.user_uuid',
)
class Address(BASE):
__tablename__ = 'addresses'
__tableargs__ = (
sa.Index('addresses_user_uuid_idx', 'user_uuid'),
)
id = sa.Column(sa.Integer, primary_key=True)
user_uuid = sa.Column(sa.String(36), nullable=False)
user = orm.relationship(
'User',
primaryjoin='Address.user_uuid == User.uuid',
back_populates='addresses',
foreign_keys=user_uuid,
)
def main():
engine = sa.create_engine('sqlite://')
session = orm.sessionmaker(bind=engine)()
BASE.metadata.create_all(engine)
user = User(name='John Doe', uuid=str(uuid.uuid4()))
session.add(user)
session.commit()
address = Address(user_uuid=user.uuid)
session.add(address)
session.commit()
print('# Users')
for user in session.query(User).all():
print(f'User: name={user.name}')
print()
print('# Addresses')
for address in session.query(Address).all():
print(f'Address: user={address.user_uuid}')
print()
if __name__ == '__main__':
main()
Looking at the diff for these two files, we see the following:
diff --git test_o2m.py test_o2m.py
index 4f23221..f865045 100644
--- test_o2m.py
+++ test_o2m.py
@@ -14,6 +14,13 @@ class User(BASE):
uuid = sa.Column(sa.String(36), nullable=False)
name = sa.Column(sa.String)
+ addresses = orm.relationship(
+ 'Address',
+ primaryjoin='User.uuid == Address.user_uuid',
+ back_populates='user',
+ foreign_keys='Address.user_uuid',
+ )
+
class Address(BASE):
__tablename__ = 'addresses'
@@ -26,8 +33,8 @@ class Address(BASE):
user = orm.relationship(
'User',
- backref='addresses',
primaryjoin='Address.user_uuid == User.uuid',
+ back_populates='addresses',
foreign_keys=user_uuid,
)
So for the Address
model, we have simply replaced the backref
keyword with
back_populates
. For the User
model, we have added a new relationship. This
is mostly the inverse of the relationship on the Address
model and only the
foreign_key
argument points to the same field (a foreign field in the
Address
model case).
Overall, this isn’t a difficult migration. Migrating many-to-many models could be a little trickier though. Let’s see.
Many-to-Many
Now consider the following example:
import uuid
import sqlalchemy as sa
from sqlalchemy import orm
BASE = orm.declarative_base()
association_table = sa.Table(
'association',
BASE.metadata,
sa.Column('parent_uuid', sa.String(36), primary_key=True),
sa.Column('child_uuid', sa.String(36), primary_key=True),
)
class Parent(BASE):
__tablename__ = 'parents'
__table_args__ = (
sa.Index('parents_uuid_idx', 'uuid', unique=True),
)
id = sa.Column(sa.Integer, primary_key=True)
uuid = sa.Column(sa.String(36), nullable=False)
name = sa.Column(sa.String)
class Child(BASE):
__tablename__ = 'children'
__table_args__ = (
sa.Index('children_uuid_idx', 'uuid', unique=True),
)
id = sa.Column(sa.Integer, primary_key=True)
uuid = sa.Column(sa.String(36), nullable=False)
name = sa.Column(sa.String)
parents = orm.relationship(
'Parent',
secondary='association',
primaryjoin='Child.uuid == association.c.child_uuid',
secondaryjoin='association.c.parent_uuid == Parent.uuid',
backref='children',
)
def main():
engine = sa.create_engine('sqlite://')
session = orm.sessionmaker(bind=engine)()
BASE.metadata.create_all(engine)
parent = Parent(name='John Doe', uuid=str(uuid.uuid4()))
session.add(parent)
session.commit()
child = Child(name='Jimmy Doe', uuid=str(uuid.uuid4()))
session.add(child)
session.commit()
parent.children.append(child)
print('# Parents')
for parent in session.query(Parent).all():
children = [x.name for x in parent.children]
print(f'Parent: name={parent.name}, children={children}')
print()
print('# Children')
for child in session.query(Child).all():
parents = [x.name for x in child.parents]
print(f'Child: name={child.name}, parents={parents}')
print()
if __name__ == '__main__':
main()
Again, there are a couple of things to consider here. Firstly, since this is a
many-to-many relationship, we need a so-called join table (also known as a
association table in SQLAlchemy or a through table in Django). The
necessitates the use of the secondary
keyword to indicate the association
table. Next up, once again we do not have a foreign key constraint present
meaning we need to inform SQLAlchemy how the join should be managed. The use of
the association table means we must specify not only primaryjoin
but also
secondaryjoin
: the former describes the relationship from Child
to the
association table, while the latter describes the relationship from the
association table to Parent
. Finally, once again we’re using a uuid
field
for referencing to makes things a little more like the real world.
Now to switch from backref
to back_populates
once again.
import uuid
import sqlalchemy as sa
from sqlalchemy import orm
BASE = orm.declarative_base()
association_table = sa.Table(
'association',
BASE.metadata,
sa.Column('parent_uuid', sa.String(36), primary_key=True),
sa.Column('child_uuid', sa.String(36), primary_key=True),
)
class Parent(BASE):
__tablename__ = 'parents'
__table_args__ = (
sa.Index('parents_uuid_idx', 'uuid', unique=True),
)
id = sa.Column(sa.Integer, primary_key=True)
uuid = sa.Column(sa.String(36), nullable=False)
name = sa.Column(sa.String)
children = orm.relationship(
'Child',
secondary='association',
primaryjoin='Parent.uuid == association.c.parent_uuid',
secondaryjoin='association.c.child_uuid == Child.uuid',
back_populates='parents',
)
class Child(BASE):
__tablename__ = 'children'
__table_args__ = (
sa.Index('children_uuid_idx', 'uuid', unique=True),
)
id = sa.Column(sa.Integer, primary_key=True)
uuid = sa.Column(sa.String(36), nullable=False)
name = sa.Column(sa.String)
parents = orm.relationship(
'Parent',
secondary='association',
primaryjoin='Child.uuid == association.c.child_uuid',
secondaryjoin='association.c.parent_uuid == Parent.uuid',
back_populates='children',
)
def main():
engine = sa.create_engine('sqlite://')
session = orm.sessionmaker(bind=engine)()
BASE.metadata.create_all(engine)
parent = Parent(name='John Doe', uuid=str(uuid.uuid4()))
session.add(parent)
session.commit()
child = Child(name='Jimmy Doe', uuid=str(uuid.uuid4()))
session.add(child)
session.commit()
parent.children.append(child)
print('# Parents')
for parent in session.query(Parent).all():
children = [x.name for x in parent.children]
print(f'Parent: name={parent.name}, children={children}')
print()
print('# Children')
for child in session.query(Child).all():
parents = [x.name for x in child.parents]
print(f'Child: name={child.name}, parents={parents}')
print()
if __name__ == '__main__':
main()
Looking at the diff for these two files, we see the following:
diff --git test_m2m.py test_m2m.py
index 948942f..d1dc0d4 100644
--- test_m2m.py
+++ test_m2m.py
@@ -25,6 +25,14 @@ class Parent(BASE):
uuid = sa.Column(sa.String(36), nullable=False)
name = sa.Column(sa.String)
+ children = orm.relationship(
+ 'Child',
+ secondary='association',
+ primaryjoin='Parent.uuid == association.c.parent_uuid',
+ secondaryjoin='association.c.child_uuid == Child.uuid',
+ back_populates='parents',
+ )
+
class Child(BASE):
__tablename__ = 'children'
@@ -41,7 +49,7 @@ class Child(BASE):
secondary='association',
primaryjoin='Child.uuid == association.c.child_uuid',
secondaryjoin='association.c.parent_uuid == Parent.uuid',
- backref='children',
+ back_populates='children',
)
This is nearly identical to the changes required for migrating the one-to-many
models. Once again, we simply replace backref
with back_populates
on the
relationship that is defined. We then define a new relationship
on the
Parent
model which has an inverse of the primary and secondary joins given
for the Child
model relationship.
Summary
So that’s how you migrate from backref
to back_populates
on models without
foreign key constraints present. This likely isn’t broadly useful but hopefully
it will help someone that encounters this.
The code for this blog post can be found on GitHub.


Presentation Index
The following presentations are currently available
OSS anti-patterns
State of the Cat
Tomcat 10 and Jakarta EE


Example 4
Dynamic <textarea>
Return home
This example shows how a <textarea> can be loaded on-the-fly with
content. Here is is one of three poems loaded based on a change in a group
of radio buttons. Also note that unlike example 2 and 3 which renders the
response directly in the Action, this one actually forwards to a JSP that is
the response, and hence no Action is involved.


All the miscellaneous projects I have done. Uncategorized does not mean non-important. Including computer vision, network, server, experimental feasibility test and others
Side projects
--- title: Projects ---
Projects that I own