| 1 | /* =========================================================== | |
| 2 | * JFreeChart : a free chart library for the Java(tm) platform | |
| 3 | * =========================================================== | |
| 4 | * | |
| 5 | * (C) Copyright 2000-2009, by Object Refinery Limited and Contributors. | |
| 6 | * | |
| 7 | * Project Info: http://www.jfree.org/jfreechart/index.html | |
| 8 | * | |
| 9 | * This library is free software; you can redistribute it and/or modify it | |
| 10 | * under the terms of the GNU Lesser General Public License as published by | |
| 11 | * the Free Software Foundation; either version 2.1 of the License, or | |
| 12 | * (at your option) any later version. | |
| 13 | * | |
| 14 | * This library is distributed in the hope that it will be useful, but | |
| 15 | * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY | |
| 16 | * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public | |
| 17 | * License for more details. | |
| 18 | * | |
| 19 | * You should have received a copy of the GNU Lesser General Public | |
| 20 | * License along with this library; if not, write to the Free Software | |
| 21 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, | |
| 22 | * USA. | |
| 23 | * | |
| 24 | * [Java is a trademark or registered trademark of Sun Microsystems, Inc. | |
| 25 | * in the United States and other countries.] | |
| 26 | * | |
| 27 | * -------------------------- | |
| 28 | * XYDataImageAnnotation.java | |
| 29 | * -------------------------- | |
| 30 | * (C) Copyright 2008, 2009, by Object Refinery Limited and Contributors. | |
| 31 | * | |
| 32 | * Original Author: David Gilbert (for Object Refinery Limited); | |
| 33 | * Contributor(s): Peter Kolb (patch 2809117); | |
| 34 | * | |
| 35 | * Changes: | |
| 36 | * -------- | |
| 37 | * 17-Sep-2008 : Version 1, based on XYImageAnnotation (DG); | |
| 38 | * 10-Mar-2009 : Implemented XYAnnotationBoundsInfo (DG); | |
| 39 | * | |
| 40 | */ | |
| 41 | ||
| 42 | package org.jfree.chart.annotations; | |
| 43 | ||
| 44 | import java.awt.Graphics2D; | |
| 45 | import java.awt.Image; | |
| 46 | import java.awt.geom.Rectangle2D; | |
| 47 | import java.io.IOException; | |
| 48 | import java.io.ObjectInputStream; | |
| 49 | import java.io.ObjectOutputStream; | |
| 50 | ||
| 51 | import org.jfree.chart.axis.AxisLocation; | |
| 52 | import org.jfree.chart.axis.ValueAxis; | |
| 53 | import org.jfree.chart.plot.Plot; | |
| 54 | import org.jfree.chart.plot.PlotOrientation; | |
| 55 | import org.jfree.chart.plot.PlotRenderingInfo; | |
| 56 | import org.jfree.chart.plot.XYPlot; | |
| 57 | import org.jfree.chart.util.ObjectUtilities; | |
| 58 | import org.jfree.chart.util.PublicCloneable; | |
| 59 | import org.jfree.chart.util.RectangleEdge; | |
| 60 | import org.jfree.data.Range; | |
| 61 | ||
| 62 | /** | |
| 63 | * An annotation that allows an image to be placed within a rectangle specified | |
| 64 | * in data coordinates on an {@link XYPlot}. Note that this annotation | |
| 65 | * is not currently serializable, so don't use it if you plan on serializing | |
| 66 | * your chart(s). | |
| 67 | * | |
| 68 | * @since 1.0.11 | |
| 69 | */ | |
| 70 | public class XYDataImageAnnotation extends AbstractXYAnnotation | |
| 71 | implements Cloneable, PublicCloneable, XYAnnotationBoundsInfo { | |
| 72 | ||
| 73 | /** The image. */ | |
| 74 | private transient Image image; | |
| 75 | ||
| 76 | /** | |
| 77 | * The x-coordinate (in data space). | |
| 78 | */ | |
| 79 | private double x; | |
| 80 | ||
| 81 | /** | |
| 82 | * The y-coordinate (in data space). | |
| 83 | */ | |
| 84 | private double y; | |
| 85 | ||
| 86 | /** | |
| 87 | * The image display area width in data coordinates. | |
| 88 | */ | |
| 89 | private double w; | |
| 90 | ||
| 91 | /** | |
| 92 | * The image display area height in data coordinates. | |
| 93 | */ | |
| 94 | private double h; | |
| 95 | ||
| 96 | /** | |
| 97 | * A flag indicating whether or not the annotation should contribute to | |
| 98 | * the data range for a plot/renderer. | |
| 99 | * | |
| 100 | * @since 1.0.13 | |
| 101 | */ | |
| 102 | private boolean includeInDataBounds; | |
| 103 | ||
| 104 | /** | |
| 105 | * Creates a new annotation to be displayed within the specified rectangle. | |
| 106 | * | |
| 107 | * @param image the image (null not permitted). | |
| 108 | * @param x the x-coordinate (in data space). | |
| 109 | * @param y the y-coordinate (in data space). | |
| 110 | * @param w the image display area width. | |
| 111 | * @param h the image display area height. | |
| 112 | */ | |
| 113 | public XYDataImageAnnotation(Image image, double x, double y, double w, | |
| 114 | double h) { | |
| 115 | this(image, x, y, w, h, false); | |
| 116 | } | |
| 117 | ||
| 118 | /** | |
| 119 | * Creates a new annotation to be displayed within the specified rectangle. | |
| 120 | * | |
| 121 | * @param image the image (null not permitted). | |
| 122 | * @param x the x-coordinate (in data space). | |
| 123 | * @param y the y-coordinate (in data space). | |
| 124 | * @param w the image display area width. | |
| 125 | * @param h the image display area height. | |
| 126 | * @param includeInDataBounds a flag that controls whether or not the | |
| 127 | * annotation is included in the data bounds for the axis autoRange. | |
| 128 | * | |
| 129 | * @since 1.0.13 | |
| 130 | */ | |
| 131 | public XYDataImageAnnotation(Image image, double x, double y, double w, | |
| 132 | double h, boolean includeInDataBounds) { | |
| 133 | ||
| 134 | super(); | |
| 135 |
1
1. |
if (image == null) { |
| 136 | throw new IllegalArgumentException("Null 'image' argument."); | |
| 137 | } | |
| 138 | this.image = image; | |
| 139 | this.x = x; | |
| 140 | this.y = y; | |
| 141 | this.w = w; | |
| 142 | this.h = h; | |
| 143 | this.includeInDataBounds = includeInDataBounds; | |
| 144 | } | |
| 145 | ||
| 146 | /** | |
| 147 | * Returns the image for the annotation. | |
| 148 | * | |
| 149 | * @return The image. | |
| 150 | */ | |
| 151 | public Image getImage() { | |
| 152 |
1
1. getImage : mutated return of Object value for org/jfree/chart/annotations/XYDataImageAnnotation::getImage to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return this.image; |
| 153 | } | |
| 154 | ||
| 155 | /** | |
| 156 | * Returns the x-coordinate (in data space) for the annotation. | |
| 157 | * | |
| 158 | * @return The x-coordinate. | |
| 159 | */ | |
| 160 | public double getX() { | |
| 161 |
1
1. getX : replaced return of double value with -(x + 1) for org/jfree/chart/annotations/XYDataImageAnnotation::getX → NO_COVERAGE |
return this.x; |
| 162 | } | |
| 163 | ||
| 164 | /** | |
| 165 | * Returns the y-coordinate (in data space) for the annotation. | |
| 166 | * | |
| 167 | * @return The y-coordinate. | |
| 168 | */ | |
| 169 | public double getY() { | |
| 170 |
1
1. getY : replaced return of double value with -(x + 1) for org/jfree/chart/annotations/XYDataImageAnnotation::getY → NO_COVERAGE |
return this.y; |
| 171 | } | |
| 172 | ||
| 173 | /** | |
| 174 | * Returns the width (in data space) of the data rectangle into which the | |
| 175 | * image will be drawn. | |
| 176 | * | |
| 177 | * @return The width. | |
| 178 | */ | |
| 179 | public double getWidth() { | |
| 180 |
1
1. getWidth : replaced return of double value with -(x + 1) for org/jfree/chart/annotations/XYDataImageAnnotation::getWidth → NO_COVERAGE |
return this.w; |
| 181 | } | |
| 182 | ||
| 183 | /** | |
| 184 | * Returns the height (in data space) of the data rectangle into which the | |
| 185 | * image will be drawn. | |
| 186 | * | |
| 187 | * @return The height. | |
| 188 | */ | |
| 189 | public double getHeight() { | |
| 190 |
1
1. getHeight : replaced return of double value with -(x + 1) for org/jfree/chart/annotations/XYDataImageAnnotation::getHeight → NO_COVERAGE |
return this.h; |
| 191 | } | |
| 192 | ||
| 193 | /** | |
| 194 | * Returns the flag that controls whether or not the annotation should | |
| 195 | * contribute to the autoRange for the axis it is plotted against. | |
| 196 | * | |
| 197 | * @return A boolean. | |
| 198 | * | |
| 199 | * @since 1.0.13 | |
| 200 | */ | |
| 201 | public boolean getIncludeInDataBounds() { | |
| 202 |
1
1. getIncludeInDataBounds : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return this.includeInDataBounds; |
| 203 | } | |
| 204 | ||
| 205 | /** | |
| 206 | * Returns the x-range for the annotation. | |
| 207 | * | |
| 208 | * @return The range. | |
| 209 | * | |
| 210 | * @since 1.0.13 | |
| 211 | */ | |
| 212 | public Range getXRange() { | |
| 213 |
2
1. getXRange : Replaced double addition with subtraction → NO_COVERAGE 2. getXRange : mutated return of Object value for org/jfree/chart/annotations/XYDataImageAnnotation::getXRange to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return new Range(this.x, this.x + this.w); |
| 214 | } | |
| 215 | ||
| 216 | /** | |
| 217 | * Returns the y-range for the annotation. | |
| 218 | * | |
| 219 | * @return The range. | |
| 220 | * | |
| 221 | * @since 1.0.13 | |
| 222 | */ | |
| 223 | public Range getYRange() { | |
| 224 |
2
1. getYRange : Replaced double addition with subtraction → NO_COVERAGE 2. getYRange : mutated return of Object value for org/jfree/chart/annotations/XYDataImageAnnotation::getYRange to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return new Range(this.y, this.y + this.h); |
| 225 | } | |
| 226 | ||
| 227 | /** | |
| 228 | * Draws the annotation. This method is called by the drawing code in the | |
| 229 | * {@link XYPlot} class, you don't normally need to call this method | |
| 230 | * directly. | |
| 231 | * | |
| 232 | * @param g2 the graphics device. | |
| 233 | * @param plot the plot. | |
| 234 | * @param dataArea the data area. | |
| 235 | * @param domainAxis the domain axis. | |
| 236 | * @param rangeAxis the range axis. | |
| 237 | * @param rendererIndex the renderer index. | |
| 238 | * @param info if supplied, this info object will be populated with | |
| 239 | * entity information. | |
| 240 | */ | |
| 241 | public void draw(Graphics2D g2, XYPlot plot, Rectangle2D dataArea, | |
| 242 | ValueAxis domainAxis, ValueAxis rangeAxis, | |
| 243 | int rendererIndex, | |
| 244 | PlotRenderingInfo info) { | |
| 245 | ||
| 246 | PlotOrientation orientation = plot.getOrientation(); | |
| 247 | AxisLocation xAxisLocation = plot.getDomainAxisLocation(); | |
| 248 | AxisLocation yAxisLocation = plot.getRangeAxisLocation(); | |
| 249 | RectangleEdge xEdge = Plot.resolveDomainAxisLocation(xAxisLocation, | |
| 250 | orientation); | |
| 251 | RectangleEdge yEdge = Plot.resolveRangeAxisLocation(yAxisLocation, | |
| 252 | orientation); | |
| 253 | float j2DX0 = (float) domainAxis.valueToJava2D(this.x, dataArea, xEdge); | |
| 254 | float j2DY0 = (float) rangeAxis.valueToJava2D(this.y, dataArea, yEdge); | |
| 255 |
1
1. draw : Replaced double addition with subtraction → NO_COVERAGE |
float j2DX1 = (float) domainAxis.valueToJava2D(this.x + this.w, |
| 256 | dataArea, xEdge); | |
| 257 |
1
1. draw : Replaced double addition with subtraction → NO_COVERAGE |
float j2DY1 = (float) rangeAxis.valueToJava2D(this.y + this.h, |
| 258 | dataArea, yEdge); | |
| 259 | float xx0 = 0.0f; | |
| 260 | float yy0 = 0.0f; | |
| 261 | float xx1 = 0.0f; | |
| 262 | float yy1 = 0.0f; | |
| 263 |
1
1. draw : negated conditional → NO_COVERAGE |
if (orientation == PlotOrientation.HORIZONTAL) { |
| 264 | xx0 = j2DY0; | |
| 265 | xx1 = j2DY1; | |
| 266 | yy0 = j2DX0; | |
| 267 | yy1 = j2DX1; | |
| 268 | } | |
| 269 |
1
1. draw : negated conditional → NO_COVERAGE |
else if (orientation == PlotOrientation.VERTICAL) { |
| 270 | xx0 = j2DX0; | |
| 271 | xx1 = j2DX1; | |
| 272 | yy0 = j2DY0; | |
| 273 | yy1 = j2DY1; | |
| 274 | } | |
| 275 | // TODO: rotate the image when drawn with horizontal orientation? | |
| 276 |
2
1. draw : Replaced float subtraction with addition → NO_COVERAGE 2. draw : Replaced float subtraction with addition → NO_COVERAGE |
g2.drawImage(this.image, (int) xx0, (int) Math.min(yy0, yy1), |
| 277 | (int) (xx1 - xx0), (int) Math.abs(yy1 - yy0), null); | |
| 278 | String toolTip = getToolTipText(); | |
| 279 | String url = getURL(); | |
| 280 |
2
1. draw : negated conditional → NO_COVERAGE 2. draw : negated conditional → NO_COVERAGE |
if (toolTip != null || url != null) { |
| 281 |
3
1. draw : Replaced float subtraction with addition → NO_COVERAGE 2. draw : Replaced float subtraction with addition → NO_COVERAGE 3. draw : removed call to org/jfree/chart/annotations/XYDataImageAnnotation::addEntity → NO_COVERAGE |
addEntity(info, new Rectangle2D.Float(xx0, yy0, (xx1 - xx0), |
| 282 | (yy1 - yy0)), rendererIndex, toolTip, url); | |
| 283 | } | |
| 284 | } | |
| 285 | ||
| 286 | /** | |
| 287 | * Tests this object for equality with an arbitrary object. | |
| 288 | * | |
| 289 | * @param obj the object (null permitted). | |
| 290 | * | |
| 291 | * @return A boolean. | |
| 292 | */ | |
| 293 | public boolean equals(Object obj) { | |
| 294 |
1
1. equals : negated conditional → NO_COVERAGE |
if (obj == this) { |
| 295 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return true; |
| 296 | } | |
| 297 | // now try to reject equality... | |
| 298 |
1
1. equals : negated conditional → NO_COVERAGE |
if (!super.equals(obj)) { |
| 299 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return false; |
| 300 | } | |
| 301 |
1
1. equals : negated conditional → NO_COVERAGE |
if (!(obj instanceof XYDataImageAnnotation)) { |
| 302 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return false; |
| 303 | } | |
| 304 | XYDataImageAnnotation that = (XYDataImageAnnotation) obj; | |
| 305 |
1
1. equals : negated conditional → NO_COVERAGE |
if (this.x != that.x) { |
| 306 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return false; |
| 307 | } | |
| 308 |
1
1. equals : negated conditional → NO_COVERAGE |
if (this.y != that.y) { |
| 309 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return false; |
| 310 | } | |
| 311 |
1
1. equals : negated conditional → NO_COVERAGE |
if (this.w != that.w) { |
| 312 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return false; |
| 313 | } | |
| 314 |
1
1. equals : negated conditional → NO_COVERAGE |
if (this.h != that.h) { |
| 315 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return false; |
| 316 | } | |
| 317 |
1
1. equals : negated conditional → NO_COVERAGE |
if (this.includeInDataBounds != that.includeInDataBounds) { |
| 318 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return false; |
| 319 | } | |
| 320 |
1
1. equals : negated conditional → NO_COVERAGE |
if (!ObjectUtilities.equal(this.image, that.image)) { |
| 321 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return false; |
| 322 | } | |
| 323 | // seems to be the same... | |
| 324 |
1
1. equals : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return true; |
| 325 | } | |
| 326 | ||
| 327 | /** | |
| 328 | * Returns a hash code for this object. | |
| 329 | * | |
| 330 | * @return A hash code. | |
| 331 | */ | |
| 332 | public int hashCode() { | |
| 333 |
1
1. hashCode : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return this.image.hashCode(); |
| 334 | } | |
| 335 | ||
| 336 | /** | |
| 337 | * Returns a clone of the annotation. | |
| 338 | * | |
| 339 | * @return A clone. | |
| 340 | * | |
| 341 | * @throws CloneNotSupportedException if the annotation can't be cloned. | |
| 342 | */ | |
| 343 | public Object clone() throws CloneNotSupportedException { | |
| 344 |
1
1. clone : mutated return of Object value for org/jfree/chart/annotations/XYDataImageAnnotation::clone to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return super.clone(); |
| 345 | } | |
| 346 | ||
| 347 | /** | |
| 348 | * Provides serialization support. | |
| 349 | * | |
| 350 | * @param stream the output stream. | |
| 351 | * | |
| 352 | * @throws IOException if there is an I/O error. | |
| 353 | */ | |
| 354 | private void writeObject(ObjectOutputStream stream) throws IOException { | |
| 355 |
1
1. writeObject : removed call to java/io/ObjectOutputStream::defaultWriteObject → NO_COVERAGE |
stream.defaultWriteObject(); |
| 356 | // FIXME | |
| 357 | //SerialUtilities.writeImage(this.image, stream); | |
| 358 | } | |
| 359 | ||
| 360 | /** | |
| 361 | * Provides serialization support. | |
| 362 | * | |
| 363 | * @param stream the input stream. | |
| 364 | * | |
| 365 | * @throws IOException if there is an I/O error. | |
| 366 | * @throws ClassNotFoundException if there is a classpath problem. | |
| 367 | */ | |
| 368 | private void readObject(ObjectInputStream stream) | |
| 369 | throws IOException, ClassNotFoundException { | |
| 370 |
1
1. readObject : removed call to java/io/ObjectInputStream::defaultReadObject → NO_COVERAGE |
stream.defaultReadObject(); |
| 371 | // FIXME | |
| 372 | //this.image = SerialUtilities.readImage(stream); | |
| 373 | } | |
| 374 | ||
| 375 | } | |
Mutations | ||
| 135 |
1.1 |
|
| 152 |
1.1 |
|
| 161 |
1.1 |
|
| 170 |
1.1 |
|
| 180 |
1.1 |
|
| 190 |
1.1 |
|
| 202 |
1.1 |
|
| 213 |
1.1 2.2 |
|
| 224 |
1.1 2.2 |
|
| 255 |
1.1 |
|
| 257 |
1.1 |
|
| 263 |
1.1 |
|
| 269 |
1.1 |
|
| 276 |
1.1 2.2 |
|
| 280 |
1.1 2.2 |
|
| 281 |
1.1 2.2 3.3 |
|
| 294 |
1.1 |
|
| 295 |
1.1 |
|
| 298 |
1.1 |
|
| 299 |
1.1 |
|
| 301 |
1.1 |
|
| 302 |
1.1 |
|
| 305 |
1.1 |
|
| 306 |
1.1 |
|
| 308 |
1.1 |
|
| 309 |
1.1 |
|
| 311 |
1.1 |
|
| 312 |
1.1 |
|
| 314 |
1.1 |
|
| 315 |
1.1 |
|
| 317 |
1.1 |
|
| 318 |
1.1 |
|
| 320 |
1.1 |
|
| 321 |
1.1 |
|
| 324 |
1.1 |
|
| 333 |
1.1 |
|
| 344 |
1.1 |
|
| 355 |
1.1 |
|
| 370 |
1.1 |


The colorful restaurant and smoothie stand on Grand Avenue adds a pop of vitality to downtown Fair Haven.
Hear from Cece and MiguelIn 2015, spouses Miguel Xicohtencatl and Cecilia Serrano bought a Mexican grocery store in Fair Haven. Since then, Miguel and Cece have converted the little store into a busting restaurant, where regulars come every day to pick up lunch and families come to treat themselves to specialty Mexican smoothies and italian ice.
As you walk into the restaurant on 271 Grand Ave., you are greeted by the sounds of both Spanish and English; you take your place in line alongside the friendly customers, probably admiring the fresh fruit that fills--seriously fills--the glass display cases to your left. If you’re lucky, you’ll get to order from Miguel or Cece, who work in the restaurant as managers, chefs, and salespeople. Miguel and Cece--born and raised in Tlaxcala, Mexico, and Puebla, Mexico, respectively--are committed to preparing only the freshest foods, foods that would make their two children proud.
Watch the short documentary to hear about the history of Cositas Deliciosas, to learn how it fits into Fair Haven, and to watch Miguel prepare a Mangonada, his favorite specialty drink.
Film edited by Cyrus Duff. Admire more of Cyrus's work at specialoccasionfilms.com
Take a virtual walking tour of Fair Haven using Google Maps Street View.
Start at Cositas Deliciosas on Grand Ave., the main street of Fair Haven.
Click and drag the yellow icon to begin.
203-782-4757


Mauricio Pochettino: Kane says Spurs players consoled Argentine in his house
- Mauricio Pochettino was recently sacked at Premier League side Tottenham
- A number of players took it upon themselves to visit the sacked gaffer in his home
- Harry Kane spent up to two hours speaking with Pochettino after his dismissal
- Spurs secured their first win under new manager Mourinho in an entertaining 3-2 win over Westham
Tottenham Hotspur’s leading goalscorer Harry Kane has spoken for the first time on former manager Pochettino’s sacking as he revealed the club gagged him from revealing intricate details of the developments last week.
Pochettino was dismissed from his job on Tuesday, November 19, with the club lying in a lowly 14th in the Premier League.
He was replaced with former Manchester United and Chelsea boss Joe Mourinho hours later, and Kane has now revealed that a number of players actually made the effort to visit him at his home.
Kane was quoted by The Sun saying Pochettino’s sacking came as a shock to everyone and it was particularly hard for him since the Argentine played an integral part in his development in the last five and a half years.
Man recounts how his ex-university mate turned cab driver refused to pick him due to shame
“It was a shock for everyone, so I wanted to go and see him and we had a chat for a couple of hours and it was nice to do that before the new manager came in,” the England striker said.
Defensive midfielder Eric Dier also paid Pochettino a visit and revealed that players had to find out about his departure through the club almost like everyone else.
“We found out that night through the club and obviously it was quite emotional,” he said.
Because the 47-year old did not get the chance to bid his players goodbye, he was forced to write an emotional note on the team’s tactics board as he left the Tottenham Stadium.
Kane scored the third goal in Spurs’ 3-2 win over Westham in Jose Mourinho’s first game in charge at the London club.
The 26-year old is however aware of the fact that despite Pochettino’s emotional sacking, the players have to pick themselves up and work for the new manager.
Fans rate Ndidi better than £70m England midfielder after impressive performance against Arsenal
Spurs face Olympiacos in the Champions League on Tuesday, November 26, before welcoming Bournemouth at home in the Premier League four days later.
Earlier, Legit.ng had reported how Tottenham forward Dele Alli praised Argentine football manager Mauricio Pochettino less than 24 hours after he was sacked by the Premier League side.
Spurs chiefs took to social media on Tuesday night, November 19, to announce the departure of Mauricio Pochettino after almost six years at the club.
Abu Azeez: Meet the only Nigerian rated among top 50 beach soccer players worldwide | Legit TV


(A Step towards education)
Prerna Classes! Thanks for support.
Prerna Class! Thanks for support.
Try to scroll this section and look at the navigation list while scrolling!


We need you to help us collect data on how humans learn.
We're a group of five high school students that are studying the way different types of artificial intelligence (AI) algorithms learn, when compared to humans. This is part of a STEM research course by Project Lead The Way (PLTW) that has spanned a semester, after three years of previous engineering courses. To do this, we've created two different kinds of common AI algorithms, a neural network and a genetic algorithm, and both have been designed to complete the same task: winning a game. To compare our findings to how humans learn, we need to generate lots of data from actual people playing our simple game, that's where you come in!
How we set out to complete our project, from the game to the AI.
When creating the game which would be played by visitors to the website, and which would generate all the human player data to compare to the AI's data, we needed to make sure that it would be a genuine learning curve that each player would have to overcome, just like the AI would. In order to fulfill this and make the learning curve take under five minutes for our players convenience, we made a simple game using Java and the Lightweight Java Game Development Library (LWJGL) loaded in an Applet.
Most AI systems are fit to solve only one particular type of problem, and cannot be easily applied to different sets of inputs and outputs without having to change their architecture. However, a programming technique called Genetic Algorithms were created to fix this problem. They use the biological model of evolution to create solutions sets, “breed” them, and pick the solution set that was most adept at solving the problem. Genetic algorithms can be incredibly space-taking and computer power consuming if programmed incorrectly, but with a good program they can be incredibly efficient.
Artificial neural networks (ANN) are processing devices loosely based on the workings of brain cells. Most ANNs utilize some form of “learning rule,” which modifies the weights of connections according to the input patterns that it is presented with. This makes them very versatile, and can handle large amounts of inputs with easy to scale archetype. ANN’s are different than conventional computing because they are not sequential, they do not contain memory in the ordinary sense of the word, and the bits within the neural network are dynamically changing with each set of inputs.
Here is a collection of useful links for our project.


{{ template "header" . }}
A Voting Service Provider (VSP) maintains a pool of always-online voting wallets, and allows Decred ticket holders to use these wallets to vote their tickets in exchange for a small fee. VSPs are completely non-custodial - they never hold, manage, or have access to any user funds. Visit docs.decred.org to find out more about VSPs, tickets, and voting.
{{ template "vsp-stats" .VspStats }}


Linda Forst
MADISON-Linda Forst, age 56, of Madison, passed away on Sunday, Nov. 10, 2019, at UW Hospital and Clinics.
She was born on Jan. 7, 1963, in Madison, the daughter of James and Sandy (Burr) Stanley.
Linda graduated from UW-Madison with a bachelor's degree in education. She married Keith Forst on May 7, 2011, at Olbrich Gardens in Madison and was a member of Good Shepherd Lutheran Church.
Linda cherished her time as a kindergarten teacher at Elvehjem Elementary School for over 30 years. She enjoyed spending time with her family and coaching bowling to the youth. She was a member of the Badgerland Youth Bowlers Tour, Rolling Thunder Inc., and Madison Bowling Board. Linda also enjoyed step class, reading, and being outdoors with her dogs, Digit and Reno. She loved animals and traveling with her husband.
Linda is survived by her husband, Keith; son, Nicholas Schroeder; daughter, Karly Schroeder; father, James; and brother, Larry Stanley. She was preceded in death by mother, Sandy; and brother, Lee Stanley.
A funeral service will be held at GOOD SHEPHERD LUTHERAN CHURCH, 5701 Raymond Road, Madison, at 11 a.m. on Friday, Nov. 15, 2019, with the Rev. Sheryl Erickson presiding. Burial will be held at Roselawn Memorial Park. Visitation will be held at GUNDERSON WEST FUNERAL AND CREMATION CARE, 7435 University Ave., Middleton, from 4 p.m. until 7 p.m. on Thursday, Nov. 14, 2019, and also at the church from 10 a.m. until the time of the service on Friday.
Linda's family would like to thank the UW Health Carbone Cancer Center, the staff and nurses of floor B6/6, and the TLC for the kind and compassionate care they gave her.
Online condolences may be made at www.gundersonfh.com.
Gunderson Fitchburg
Funeral & Cremation Care
2950 Chapel Valley Road
(608) 442-5002


I am a software engineer focused on web development with over half a decade of experience in both startup and enterprise business environments building solutions where full-stack skills, creative thinking, and high attention to detail are key and fast turnaround is paramount.
However, the fact being that i am very enthusiastic about the new technologies that help web development, I really work hard in researching to explore new ways to deliver better software products and related services and familiar with many different paradigms and technologies.


Last mile deliveries are riddled with problems like flexibility & security.
Popular solutions like lockers or drones either add more vans to an already congested
traffic system, or ask for massive changes in government rules & regulations in order to be
implemented.
With more & more packages being delivered all over the world every single day, the
picture of the near future looks rather bleak due to increased traffic & lack of clear
regulations.
Our team of six was part of a three-day design hackathon at MIT Media Labs in September 2018. The
team was diverse- with people from 4 different countries and varied disciplines of engineering,
design, and urban planning.
We were one of the six winning teams at this design hackathon.
I facilitated our team's design processes, which was a little different from the traditional double
diamond.
Most of my teammates were expert engineers, and did
not have prior experience with the design process. We needed a way of working which was as effective
as the double diamond, while being comfortable for engineers or people with a more solution oriented
mindset to follow the first time round.
The process we came up with (over multiple iterations, of course!) extended the linear
solution driven method with
design research, and a bit of speculation about upcoming problems in the larger system of things.
The first step was learning as much as we could about how cities are tackling traffic congestions, current package delivery systems, and upcoming solutions which are trying to solve problems in the same space.
After talking with other participants and discussing amongst ourselves, drones came up to be the most
popular word on everyone’s mind. The roadblocks which we found drones suffer from are battery
problems, that powerful batteries are heavier and need more power to lift, which limits the distance
to which drones can travel.
How might we reduce the distance that drones have to travel in order to reach their
destination?
What if drones could hop on and off public transit vehicles?
The solution was compatible with two future states- cities banning private cars from city centers
and wanting to increase public transit usage, and with the fact that drones provided flexible
deliveries.
Did that solve the problem?
Not really, it raised more questions than it answered.
Will governments allow drones in urban areas in the near future?
This system was problematic since it was unlikely that the FAA will permit companies to deliver
packages via drones in the near future due to citizens' concerns regarding privacy and security.
Moreover, failure rates of common drone parts like bearings make it dangerous for drones with
packages to fly over populated areas.
How might we provide the same flexibility and convenience which drones would have provided
without using drones?
Replacing drones with people, and creating a gig economy based service for package deliveries was
the identified as the next best step.
This new system could also potentially help build communities,
especially during holidays and festivals, when an exponential increase in online orders could pave
the way for people to meet their neighbors and wish them good health.
But what new problems did this create?
Security in the gig economy package delivery service would be complicated, with mandatory background
checks and other measures to ensure safety of everyone involved. Additionally, trains and buses
would need to stand still at stops for a lot longer, which would be a disservice to passengers.
How might we reduce the time required for loading and unloading packages?
We realized that taking transfers between multiple modes of transportation out of the equation, and
only leveraging city wide bus networks was the perfect solution. This concept was prototyped through
a stop-motion animation and wireframes of the user facing app.
We had the opportunity to present our work to Dr. Don Norman and other judges and mentors from MIT Media Lab, UC San Diego, and a few design-led companies.


Do you want to continue?


The 1.0 release of OpenCAL
, here presented, is a
collection of four different software libraries. Under the name
OpenCAL
we identify the serial version of the library. It comes
together with two different parallel implementations based on OpenMP
and OpenCL, namely OpenCAL-OMP and OpenCAL-CL, respectively. Moreover,
OpenCAL-GL identifies a general purpose OpenGL/GLUT visualization
library. Many examples are also included into the distribution.
The library can be obtained as source code from GitHub to be compiled in your system. You can chose if compiling all the four different implementations or only some of them, and also if compling the examples. Some dependencies must be satisfied, depending on what you want to compile. Libraries can be compiled both statically (as .lib files) and as shared objects (as .so files). Eventually, you can install headers and libraries in your system and also uninstall them if no longer needed.
In the following Sections we will see all the steps needed to obtain the software and make it working on your computer.


[gecode-users] Memory usage of Space
Christian Schulte
cschulte at kth.se
Mon Aug 4 10:38:11 CEST 2014
Hi Kish,
Sorry there is not really anything that allows you to do so. You can build
Gecode with heap tracking (see configure --help) but I do not really know
whether this would help.
Cheers
Christian
--
Christian Schulte, KTH, web.it.kth.se/~cschulte/
-----Original Message-----
From: users-bounces at gecode.org [mailto:users-bounces at gecode.org] On Behalf
Of Kish Shen
Sent: Friday, August 1, 2014 10:45 PM
To: users at gecode.org
Subject: [gecode-users] Memory usage of Space
Hi,
One of our ECLiPSe user is trying out his program with our Gecode interface
(his original is written for ECLiPSe's native ic solver), and one of the
problem he has run into is that the execution seems to consume a lot of
memory (> 1.5G), and reducing the cloning apparently does not help much.
However, he can only measure the memory consumption indirectly, by looking
at the memory usage of the process, and so it is difficult to be precise.
Is there any existing way of measuring, or at least estimating, the amount
of memory used by Gecode? In this case, the search is done in ECLiPSe,
rather than using Gecode's search engines, so the creation of clones of the
Space are all done from ECLiPSe, so I assume Gecode have not got a "global"
way of tracking all the cloned Spaces. However, I should be able to do this
from ECLiPSe, but I need to be able to get the memory usage (or estimate) of
each Space -- is there any available procedure to get this?
Thanks in advance for any information/help!
Kish
_______________________________________________
Gecode users mailing list
users at gecode.org
https://www.gecode.org/mailman/listinfo/gecode-users
More information about the users
mailing list


Toggle navigation
Heifer Live
John Smith
Yesterday
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eleifend...
John Smith
Yesterday
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eleifend...
John Smith
Yesterday
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eleifend...
Read All Messages
Task 1
40% Complete
40% Complete (success)
Task 2
20% Complete
20% Complete
Task 3
60% Complete
60% Complete (warning)
Task 4
80% Complete
80% Complete (danger)
See All Tasks
New Comment
4 minutes ago
3 New Followers
12 minutes ago
Message Sent
4 minutes ago
New Task
4 minutes ago
Server Rebooted
4 minutes ago
See All Alerts
User Profile
Settings
Logout
My News Feed
Global Stats
All Metrics
Livestock Given: 6903
Countries Visited: 35
Volunteers: 12308
Lives Touched: 2342463
News Categories
Livestock
Videos
Audio
Photos
Stories
Post!
Users
Community Beneficiaries
Field Staff
Program Staff
Communications Staff
Countries
North America
Canda
United States
Mexico
Guatemala
Puerto Rico
Panama
Haiti
South America
Brazil
Uruguay
Venezuela
Chile
Europe
Spain
France
Italy
Germany
Poland
Hungary
Africa
Algeria
Mali
Niger
Chad
Zimbabwe
Asia
China
Mongolia
Kazakhstan
India
Cambodia
Thailand
Malaysia
Regional Posts
Filters:
None
Clear Filters


This text is bold
This text is strong
This text is emphasized
This text is italic
This text is small
This is subscript and superscript
The Scream by Edward Munch. Painted in 1893.
My car is blue.
My new car is silver.


GameBoy Opcode Summary
The GameBoy has instructions & registers similiar to the 8080, 8085,
& Z80 microprocessors. The internal 8-bit registers are A, B, C, D, E, F, H,
& L. Theses registers may be used in pairs for 16-bit operations as AF, BC,
DE, & HL. The two remaining 16-bit registers are the program counter (PC)
and the stack pointer (SP).
The F register holds the cpu flags. The operation of these flags is identical
to their Z80 relative. The lower four bits of this register always read zero
even if written with a one.
| Flag Register |
| 7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
| Z |
N |
H |
C |
0 |
0 |
0 |
0 |
The GameBoy CPU is based on a subset of the Z80 microprocessor. A summary of
these commands is given below.
| Mnemonic |
Symbolic Operation |
Comments |
CPU Clocks |
Flags - Z,N,H,C |
8-Bit Loads
| LD r,s |
r s |
s=r,n,(HL) |
r=4, n=8, (HL)=8 |
| LD d,r |
d r |
d=r,(HL) |
r=4, (HL)=8 |
| LD d,n |
d n |
r=8, (HL)=12 |
| LD A,(ss) |
A (ss) |
ss=BC,DE,HL,nn |
[BC,DE,HL]=8, nn=16 |
| LD (dd),A |
(dd) A |
dd=BC,DE,HL,nn |
| LD A,(C) |
A ($FF00+C) |
- |
8 |
| LD (C),A |
($FF00+C) A |
8 |
| LDD A,(HL) |
A (HL), HL HL - 1 |
8 |
| LDD (HL),A |
(HL) A, HL HL - 1 |
8 |
| LDI A,(HL) |
A (HL), HL HL + 1 |
8 |
| LDI (HL),A |
(HL) A, HL HL + 1 |
8 |
| LDH (n),A |
($FF00+n) A |
12 |
| LDH A,(n) |
A ($FF00+n) |
12 |
16-Bit Loads
| LD dd,nn |
dd nn |
dd=BC,DE,HL,SP |
12 |
- |
- |
- |
- |
| LD (nn),SP |
(nn) SP |
- |
20 |
| LD SP,HL |
SP HL |
8 |
| LD HL,(SP+e) |
HL (SP+e) |
12 |
0 |
0 |
* |
* |
| PUSH ss |
(SP-1) ssh, (SP-2) ssl, SPSP-2 |
ss=BC,DE,HL,AF |
16 |
- |
- |
- |
- |
| POP dd |
ddl (SP), ddh (SP+1), SPSP+2 |
dd=BC,DE,HL,AF |
12 |
8-Bit ALU
| ADD A,s |
A A + s |
CY is the carry flag. s=r,n,(HL) |
r=4, n=8, (HL)=8 |
* |
0 |
* |
* |
| ADC A,s |
A A + s + CY |
| SUB s |
A A - s |
* |
1 |
* |
* |
| SBC A,s |
A A - s - CY |
| AND s |
A A
s |
* |
0 |
1 |
0 |
| OR s |
A A
s |
* |
0 |
0 |
0 |
| XOR s |
A A
s |
| CP s |
A - s |
* |
1 |
* |
* |
| INC s |
s s + 1 |
s=r,(HL) |
r=4, (HL)=12 |
* |
0 |
* |
- |
| DEC s |
s s - 1 |
* |
1 |
* |
- |
16-Bit Arithmetic
| ADD HL,ss |
HL HL + ss |
ss=BC,DE,HL,SP |
8 |
- |
0 |
* |
* |
| ADD SP,e |
SP SP + e |
16 |
0 |
0 |
* |
* |
| INC ss |
ss ss + 1 |
8 |
- |
- |
- |
- |
| DEC ss |
ss ss - 1 |
8 |
Miscellaneous
| SWAP s |
|
Swap nibbles. s=r,(HL) |
r=8, (HL)=16 |
* |
0 |
0 |
0 |
| DAA |
Converts A into packed BCD. |
- |
4 |
* |
- |
0 |
* |
| CPL |
A /A |
4 |
- |
1 |
1 |
- |
| CCF |
CY /CY |
CY is the carry flag. |
4 |
- |
0 |
0 |
* |
| SCF |
CY 1 |
4 |
- |
0 |
0 |
1 |
| NOP |
No operation. |
- |
4 |
- |
- |
- |
- |
| HALT |
Halt CPU until an interrupt occurs. |
4 |
| STOP |
Halt CPU. |
4 |
| DI |
Disable Interrupts. |
4 |
| EI |
Enable Interrupts. |
4 |
Rotates & Shifts
| RLCA |
|
|
4 |
0 |
0 |
0 |
* |
| RLA |
|
| RRCA |
|
| RRA |
|
| RLC s |
|
s=A,r,(HL) |
r=8,(HL)=16 |
* |
0 |
0 |
* |
| RL s |
|
| RRC s |
|
| RR s |
|
| SLA s |
|
s=r,(HL) |
r=8, (HL)=16 |
| SRA s |
|
| SRL s |
|
Bit Opcodes
| BIT b,s |
Z /sb |
Z is zero flag. s=r,(HL) |
r=8, (HL)=12 |
* |
0 |
1 |
- |
| SET b,s |
sb 1 |
r=8, (HL)=16 |
- |
- |
- |
- |
| RES b,s |
sb
0 |
Jumps
| JP nn |
PC nn |
- |
16 |
| JP cc,nn |
If cc is true, PC nn, else
continue. |
If cc is true, 16 else 12. |
| JP (HL) |
PC HL |
4 |
| JR e |
PC PC + e |
12 |
| JR cc,e |
if cc is true, PC PC + e, else
continue. |
If cc is true, 12 else 8. |
Calls
| CALL nn |
(SP-1) PCh, (SP-2) PCl, PC nn, SPSP-2 |
- |
24 |
| CALL cc,nn |
If condition cc is false continue, else same as CALL
nn. |
If cc is true, 24 else 12. |
Restarts
| RST f |
(SP-1) PCh, (SP-2) PCl, PCh 0, PCl f, SPSP-2 |
- |
16 |
Returns
| RET |
pcl (SP), pch (SP+1), SPSP+2 |
- |
16 |
| RET cc |
If cc is true, RET else continue. |
If cc is true, 20 else 8. |
| RETI |
Return then enable interrupts. |
16 |
Terminology
| - |
Flag is not affected by this operation. |
| * |
Flag is affected according to result of operation. |
| b |
A bit number in any 8-bit register or memory
location. |
| C |
Carry flag. |
| cc |
Flag condition code: C,NC,NZ,Z |
| d |
Any 8-bit destination register or memory location. |
| dd |
Any 16-bit destination register or memory location. |
| e |
8-bit signed 2's complement displacement. |
| f |
8 special call locations in page zero. |
| H |
Half-carry flag. |
| N |
Subtraction flag. |
| NC |
Not carry flag |
| NZ |
Not zero flag. |
| n |
Any 8-bit binary number. |
| nn |
Any 16-bit binary number. |
| r |
Any 8-bit register. (A,B,C,D,E,H, or L) |
| s |
Any 8-bit source register or memory location. |
| sb |
A bit in a specific 8-bit register or memory
location. |
| ss |
Any 16-bit source register or memory location. |
| Z |
Zero Flag. |


Reading a strategy's stats is like doing an X-ray. It gives you valuable information and also prepares you for what you might expect in the future.
Here you can see the statistical data for the complete portfolio of strategies.
Let's read this through. Almost any rookie trader thinks that a good strategy never losses. That's far from true. You can see that 52.5% of the trades are winners. Only 52.5% of the trades! But that's enough to have profits in the long run. You must be cautious when someone promises 75% of winning trades or more. Those trading strategies usually work very well for some time. But then, they have huge losses. A statistical analysis would show that they manage the risk very poorly.
But the average winning percentage is not the only source of profits. You can also see that the average win is 36 pips and the average loss is 30 pips.
The max drawdown is a very important number for your psychology as a trader. In the past 10 years, this strategy went down 2024 pips once. If this happened in the past, certainly will happen in the future. If you want to gain profits trading, you must be willing to go through the bad times too.


--- layout: page title: "Stained glass" permalink: /stained-glass/ display_page_title: true main_image_path: /assets/images/466d7c3064e4a.jpg main_image_caption: "St Philip" display_image: false frontpage: true page_order_number: 3 homepage_description_markdown: >- frontpagetitle: "Stained glass" display_thumb_title: true thumb_crop: true images: - image_path: image_title: image_description: _options: layout: hidden: true main_image_path: width: 1200 height: 1200 resize_style: contain mime_type: image/jpeg image_path: width: 1200 height: 1200 resize_style: "contain" mime_type: "image/jpeg" _comments: title: Page title permalink: Be careful editing this display_page_title: Show the page title at the top of the page main_image_path: Image used to represent your page display_image: Show the featured image at the top of the page images_first: display gallery of images BEFORE the main text frontpage: Show this page on the homepage homepage_description_markdown: Text used on homepage if shown frontpagetitle: Alternative title for home page use display_thumb_title: Show image titles below images images: Add and edit images here image_description: Might only be shown in the close up of an image ---
Susan Moxley has completed large commissions in stained glass for schools and institutions as well as smaller works for private homes. Her windows are always instantly recognisable through her use of colour, line and unique symbolic imagery.
In all her windows she works closely with the client or does workshops in schools where the children are encouraged to draw their ideas. She often reproduces the children's drawings onto the glass which gives them a feeling of involvement in a lasting installation. She carries this ancient craft into the contemporary world.


The endpoint url. Usually ws://ip:9944 or wss://ip:9944
Whether to connect automatically or not.
The WsProvider connects automatically by default. if you decided otherwise, you may connect manually using this method.
Calls each of the listeners registered for a given event.
Return an array listing the events for which the emitter has registered listeners.
Whether the node is connected or not.
true if connected
Return the number of listeners listening to a given event.
Return the listeners registered for a given event.
Listens on events after having subscribed using the subscribe function.
Event
Callback
[description]
Add a one-time listener for a given event.
Remove all listeners, or those of the specified event.
Remove the listeners of a given event.
Allows subscribing to a specific event.
Subscription type
Subscription method
Parameters
Callback
Promise resolving to the dd of the subscription you can use with unsubscribe
Allows unsubscribing to subscriptions made with subscribe.
Generated using TypeDoc
The WebSocket Provider allows sending requests using WebSocket. Unlike the HttpProvider, it does support subscriptions and allows listening to events such as new blocks or balance changes.
import createApi from '@polkadot/api'; import WsProvider from '@polkadot/api-provider/ws'; const provider = new WsProvider('ws://<IP_ADDRESS>:9944'); const api = createApi(provider);


payments_tracker
Introduction
This project implements a basic Payments Tracker as a mountable Rails engine.
Requirements
- Rails 3.2
Installation
Add the following to your Gemfile:
gem 'payments_tracker', :git => 'git@github.com:ExamTime/payments_tracker.git'
Then run:
bundle install
rails g payments_tracker:install:migrations
rake db:migrate
Integration with your application
Edit your routes.rb file to mount the Payments Tracker engine. For example:
mount PaymentsTracker::Engine, :at => "payments"
Or:
scope "model_x/:id" do
mount PaymentsTracker::Engine, :at => "payments"
...
end
Terminology
Some of the terms used in this Gem:
'Payment Items'
These are the basic units of organization of items that require payment tracking e.g. a school outing
'Payment Installments' are the basic units of recording the details of an individual payment against a Payment Item.
'Payer Payments' are the interface for users to make Payment Installments against a Payment Item.
e.g. a Payer makes an installment against a Payment Item through a Payer Payment object
For a Payment Item with an amount of £10.00, a Payer may make 2 installments each of £5 through the same Payer Payment record to fulfil their part of the Payment Item.
'Admin users' are privileged users.
Your application may enforce various types of admin roles, some with higher privileges than others. You will need to enforce your own responsibilities around which users are allowed to create and manage Payment Items
Usage
Create a Payment Item and assign a group of users ('payers') to it. This creates a Payer Payment instance for each payer. Admin users then use the Payer Payment instance to make installments on behalf of the payers towards the related Payment Item.
This gem supports the following types of Payment Items:
General Payment Items
For example: a trip has been arranged for a group of users. Set the amount value (per user). The payment item will automatically close when each user in the group has paid the full amount through 1 or more installments.
Multiple Payment Items
For example: recurring purchases of school uniforms
Open Payment Items
For example: fundraising


{# TODO: This dependency should probably be moved somewhere else. Probably we should also add a common base template for all composers which includes things like this one. #} {% import 'user/layout.html' as layout with context -%}


Overview
Package
Class
Use
Tree
Deprecated
Index
Help
PREV LETTER
NEXT LETTER
FRAMES
NO FRAMES
All Classes
A
B
C
D
E
F
G
H
I
L
M
N
O
P
Q
R
S
T
U
V
W
X
O
ObservableArtefact
- Interface in
de.uni.bamberg.wiai.minf.forflow.datagenerator.model.datastructure
To be able to update the view whenever a change in the model layer occurs, we use the
Observer Pattern
to get along with it.
ObservableDistribution
- Interface in
de.uni.bamberg.wiai.minf.forflow.datagenerator.controller.datageneration.distribution
This is an observer interface for observers to observe the probability distribution subject.
ObservableFillBehaviour
- Interface in
de.uni.bamberg.wiai.minf.forflow.datagenerator.controller.datageneration.filltype
This interface allows observers to get notified when its subject, in that case
FillBehaviour
, changes state.
ObservableGenerator
- Interface in
de.uni.bamberg.wiai.minf.forflow.datagenerator.controller.datageneration.filltype
To get the possibility to register and un-register to generators we use the
Observer Pattern
.
ObservableUnit
- Interface in
de.uni.bamberg.wiai.minf.forflow.datagenerator.controller.datageneration.unit
To be able to update the weight and measurements whenever a change in the data structure happens, we use
Observer Pattern
to get the desired effect.
ObservableUnitCustom
- Interface in
de.uni.bamberg.wiai.minf.forflow.datagenerator.controller.datageneration.unit
To be able to update the weight and measurements whenever a change in the data structure happens, we use
Observer Pattern
to get the desired effect.
ObserverArtefact
- Interface in
de.uni.bamberg.wiai.minf.forflow.datagenerator.model.datastructure
To be able to update the view whenever a change in the model layer occurs, we use the
Observer Pattern
to get along with it.
ObserverDistribution
- Interface in
de.uni.bamberg.wiai.minf.forflow.datagenerator.controller.datageneration.distribution
This is an observer interface for observers to observe the probability distribution subject.
ObserverFillBehaviour
- Interface in
de.uni.bamberg.wiai.minf.forflow.datagenerator.controller.datageneration.filltype
This interface allows observers to get notified when its subject, in that case
FillBehaviour
, changes state.
ObserverGenerator
- Interface in
de.uni.bamberg.wiai.minf.forflow.datagenerator.controller.datageneration.filltype
To get the possibility to register and un-register to generators we use the
Observer Pattern
.
ObserverUnit
- Interface in
de.uni.bamberg.wiai.minf.forflow.datagenerator.controller.datageneration.unit
To be able to update the weight and measurements whenever a change in the data structure happens, we use
Observer Pattern
to get the desired effect.
ObserverUnitCustom
- Interface in
de.uni.bamberg.wiai.minf.forflow.datagenerator.controller.datageneration.unit
To be able to update the weight and measurements whenever a change in the data structure happens, we use
Observer Pattern
to get the desired effect.
ok()
- Method in class de.uni.bamberg.wiai.minf.forflow.datagenerator.view.dialog.
AddArtefactType
accepts the typed in string as a new artefact type, if and only if it passes the validation.
ok()
- Method in class de.uni.bamberg.wiai.minf.forflow.datagenerator.view.message.
ErrorMessage
this method refers to the
OK
button.
openAboutDialog()
- Method in class de.uni.bamberg.wiai.minf.forflow.datagenerator.view.
DataGeneratorActions
passes the call to open the about dialog to the application framework.
openAboutDialog()
- Method in class de.uni.bamberg.wiai.minf.forflow.datagenerator.view.
DataGeneratorView
This method causes to show the
About
dialog where general stuff and information about the implementation can be seen.
openChooseArtefactsDialog()
- Method in class de.uni.bamberg.wiai.minf.forflow.datagenerator.view.
DataGeneratorActions
offers the opportunity to select those artefacts of an EMF Ecore Model, to which test data should going to be generated.
openHelp()
- Method in class de.uni.bamberg.wiai.minf.forflow.datagenerator.view.
DataGeneratorView
tries to open the help content in your favorite browser window.
openMultiplicityDialog(Multiplicity)
- Method in class de.uni.bamberg.wiai.minf.forflow.datagenerator.controller.
ControllerBackgroundTask
fetches all attributes and build an temporarily data structure to display the current situation.
openMultiplicityValuesDialog()
- Method in class de.uni.bamberg.wiai.minf.forflow.datagenerator.view.
DataGeneratorActions
passes the call to open the multiplicity dialog to the controller layer.
openMultiplicityValuesDialog()
- Method in class de.uni.bamberg.wiai.minf.forflow.datagenerator.view.
DataGeneratorView
Facets which can have more than one value are called multiplicity many.
openNullValueDialog()
- Method in class de.uni.bamberg.wiai.minf.forflow.datagenerator.view.
DataGeneratorView
Method to specify those facets which are allowed to have null values in generated test data sets.
openNullValuesDialog(NullValues)
- Method in class de.uni.bamberg.wiai.minf.forflow.datagenerator.controller.
ControllerBackgroundTask
Creates an background thread for doing this job.
openNullValuesDialog()
- Method in class de.uni.bamberg.wiai.minf.forflow.datagenerator.view.
DataGeneratorActions
passes the call to open null value dialog to the controller layer where it is processed further in background.
Overview
Package
Class
Use
Tree
Deprecated
Index
Help
PREV LETTER
NEXT LETTER
FRAMES
NO FRAMES
All Classes
A
B
C
D
E
F
G
H
I
L
M
N
O
P
Q
R
S
T
U
V
W
X


--- layout: "default" title: "Running in Production Podcast and Interviews" description: A site where folks talk about running small and large web apps in production. Topics include tech stacks and DevOps / deployment tips. ---
I don't know about you but I enjoy hearing about how other folks and companies are successfully using the same web framework or tech stack as me to power their site and business. It really helps boost your confidence levels. Sometimes this information is hard to find with enough details to be meaningful so that's why I started this podcast and site.


用户名：
密 码：
FEATURES
We are waiting to help
EVERYBODY has something to share
While helping others, help yourself
Wherever I go, you go
Whatever you want, you can get
ChinaUSACanadaKoreaJapanRussa
China
<EMAIL_ADDRESS>778-400-5788
USA
Canada
Korea
Japan
Russia


{% extends "basic.html" %} {% block body %}
| Total Confirmed | {{Country.TotalConfirmed}} |
|---|---|
| Total Deaths | {{Country.TotalDeaths}} |
| Total Recovered | {{Country.TotalRecovered}} |
| New Cases | {{Country.NewConfirmed}} |
| New Deaths | {{Country.NewDeaths}} |
| New Recovered | {{Country.NewRecovered}} |


class: center, middle # Git and her friends --- a basic introduction ### Daniel Weindl ### CCM Coding Camp, ICB, 11.12.2017 --- # Agenda 1. Version control systems 2. Git vs. Git(hub|lab) 3. Basic usage 4. Practical considerations 5. "Advanced" features 6. Further reading --- # Versioning .center[![PhD Comics: A story told in filenames](http://phdcomics.com/comics/archive/phd052810s.gif)] --- # VCS features - versioning - branching - merging - synchronisation - unique IDs - history - ... --- # Version control systems (VCS) **centralized** - svn (https://subversion.apache.org/) - cvs .center[
] **distributed** - git (https://git-scm.com/) - mercurial (https://www.mercurial-scm.org/) .center[
] --- # Git, github, gitlab, ...? - Github (https://github.com/) - Gitlab (https://about.gitlab.com/) - Bitbucket (https://bitbucket.org/) Researchers can get a free github subscription for 2 years (renewable): https://education.github.com/ (+extra bonuses for students) --- # What git(hub|lab) provides in addition to git - Hosting - Web-gui - Issue tracking - Milestones - Access control - Pull-/merge-requests - (Simple) integrations (e.g. for CI/CD) - Code review workflow - Release management - Statistics, graphs - Wiki - ... --- # Using git Various interfaces exist: - `git` - `gitk` - `git-gui` - GitWeb - git(lab|hub) web UI - GitHub Desktop - IDE integrations - ... --- # Hands-on: Getting the slides `$ git clone https://github.com/dweindl/git-and-friends.git` ``` Cloning into 'git-and-friends'... remote: Counting objects: 3, done. remote: Compressing objects: 100% (2/2), done. remote: Total 3 (delta 0), reused 3 (delta 0), pack-reused 0 Unpacking objects: 100% (3/3), done. ``` -> Now you have a clone of the whole repository including all history and branches on your local machine --- # Creating a repository How the above repository was created: ``` $ git init Initialized empty Git repository in /home/dweindl/git-and-friends/.git/ $ git add versioning_intro.html $ git commit -m "Initial commit" [master (root-commit) 6e88cfb] Initial commit 1 file changed, 219 insertions(+) create mode 100644 versioning_intro.html $ git remote add origin git@github.com:dweindl/git-and-friends.git $ git push -u origin master Counting objects: 3, done. Delta compression using up to 4 threads. Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 2.03 KiB | 0 bytes/s, done. Total 3 (delta 0), reused 0 (delta 0) To github.com:dweindl/git-and-friends.git * [new branch] master -> master Branch master set up to track remote branch master from origin. ``` --- # Hands on: Create your own repository - Setting up git:
`$ git config --global user.name "Daniel Weindl"`
`$ git config --global user.email<EMAIL_ADDRESS>- Create a repository on github - Clone the remote repository
or initialize a local one and push to github --- # Git's data organization .center[
] - *Repository*: `.git/` - *Stage*: contains files to be committed - *Commit*: save a snapshot of the managed files
--- # Git commits - Identified by 40-character SHA-1 checksum (optionally: tag) .center[
] - Contains information about the directory tree its parent .center[
] --- # Git branching - To handle concurrent versions of your data: .center[
] - Internally: a pointer to a specific commit: .center[
] --- # Git ### What git is (for) - scalable versioning of any kind of text files - light-weight branching and merging - collaborative (parallel) editing - extendable, customizable - fun to use ### What git is not (for) - binary files - large files (see *Further reading*) --- # Hands-on: Branching and github pull-requests On https://github.com/dweindl/git-and-friends, create an issue so I can see your user name and add you as collaborator to get push access In the slide-repository: - Create a new branch
`$ git checkout -b test-yourname` - Add your name to `participants.md` - Check the status of your repository
`$ git status` - Which differences have been introduced
`$ git diff` - Commit your changed with a commit message
`$ git commit -m "Add my name" participants.md` --- # Hands-on: Branching and github pull-requests (cont.) - Push your changes to github
`$ git push -u test-yourname origin` - Create a pull request on https://github.com/dweindl/git-and-friends - Merge - Delete the merged branch - Checkout master
`$ git checkout master` - Pull the changes from the remote repository
`$ git pull origin master` - Look at the history on github or using `$ git whatchanged` *Alternatively*: Find some type in the slides, open an issue describing it, correct it and create a pull request --- # Some every day git advice - Commit early, commit often - Branch often, merge often, delete merged branches - Make small commits - Don't be afraid of git, most data can be recovered once it has been comitted - Use `.gitignore` to exclude files from showing up as untracked
(Templates: https://github.com/github/gitignore) **Collaborative work?** - Agree on a branching model (e.g., see *Further reading*) - Code in `master` branch should always be functional - Code reviews are very valuable - and so is automated testing - Use `git blame` to see who introduced a certain change - Don't change published history (`git rebase`) --- # Gitlab DOs and DONTs ## Do - Choose a licencse for public repos - Add a README file - If public, let people know how to contribute - Use commit message with '#x' 'closes #x' , 'fixes #x' to refer to issue number `x` ## Don't - Put confidential data or passwords into public repos --- # "Advanced" features to have a look at ### git - managing repository dependencies
`git submodule`, `git subtree`, `git subrepo` - git hooks for automated actions on `commit`, `pull`, ... ### github/gitlab - integrations and web hooks - Continuous integration - Continuous delivery - Test coverage e.g. Travis-CI, Shippable, AppVeyor, Coveralls, ... - Code reviews --- # Further reading (I) - `$ git help [command]` - Another introduction to git
- https://try.github.io/ - https://guides.github.com/activities/hello-world/ - http://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1004668 - Pro git book
https://git-scm.com/book/en/v2
(Source of git figures in these slides) - Git workflows - https://github.com/nvie/gitflow - https://docs.gitlab.com/ce/workflow/gitlab_flow.html - Related: Semantic versioning
https://semver.org/ - (One of many) cheatsheets https://zeroturnaround.com/rebellabs/git-commands-and-best-practices-cheat-sheet/ --- # Further reading (II) - IDE git integrations - RStudio: http://r-bio.github.io/intro-git-rstudio/ - Eclipse: http://www.vogella.com/tutorials/EclipseGit/article.html - Git extension for dealing with dependencies
https://github.com/git-commands/git-subrepo - Useful github integrations - CI https://travis-ci.org/ - CI https://app.shippable.com/ - Zenodo: DOIs for your releases
https://guides.github.com/activities/citable-code/ - Handling large files https://git-lfs.github.com/


https://unix.stackexchange.com/questions/83806/how-to-kill-ssh-session-that-was-started-with-the-f-option-run-in-background
Two main ways:
Sleep <time> #this is good for single processes. The tunnel will auto close after the process you are using closes
Master socket #gives a solid path to kill the process when you want to as opposed to ps and grep
Master Socket:
ssh -f -N -M -S <path-to-socket> -D <host>:<port> <server>
-M #put SSH into Master mode for connection sharing
-S #specifies location of a control socket
and to close it:
ssh -S <path-to-socket> -O exit <server
Sleep:
ssh -f -D <host>:<port> <server> sleep 10; vncviewer <host>:<port>
ssh will try to close the connection after sleep 10, but it will be unable to because vncviewer is using it.
Once you close vncviewer, the socket will close


A confirm dialog is a specific type of lightbox-dialog that prompts a user to confirm or reject their action.
The markup requirements are very strictly: a heading, description and two buttons.
You will permanently lose this address.
You will permanently lose this address.


--- layout: archive title: Zulip Chat Archive permalink: /stream/113489-new-members/topic/How.20does.20polymorphism.20work.20in.20Lean.3F.html ---
For example, if I want to write
lemma tN (a b : ℕ) (a > 0) : (a + b > b) := sorry lemma tQ (a b : ℚ) (a > 0) : (a + b > b) := sorry lemma tR (a b : ℝ) (a > 0) : (a + b > b) := sorry
how do I convince Lean that the 2nd +
is for ℚ and the 3rd +
is for ℝ
? Lean doesn't seem happy if I just write it like that. (Same question for >
.)
@YH This solves your error message:
lemma tN (a b : ℕ) (h : a > 0) : (a + b > b) := sorry lemma tQ (a b : ℚ) (h : a > 0) : (a + b > b) := sorry lemma tR (a b : ℝ) (h : a > 0) : (a + b > b) := sorry
The problem was with the positivity assumption
Oh, OK. Let me check it out.
Try eg:
lemma tQ (a b : ℚ) (a > 0) : true := begin -- cursor here end
You'll see that the 2nd a
in the statement is introduced as a new variable of type nat
I don't know why... it looks a bit buggy to me. But explicitly naming the hypothesis solves the issue
Yes it works, thanks.
Hypotheses before the colon need to be named, right?
I would avoid y > x
if you can. Replace it with x < y
.
I think the acceptance of (a > 0)
is a "feature" related to the parsing of ∀ x > 0
. Not sure how intentional it is.
lemma a (α : Type*) (xs : list α) (x : α) (h : x ∈ xs) : true := sorry lemma b (α : Type*) (xs : list α) (x ∈ xs) : true := sorry lemma c (α : Type*) (xs : list α) : Π x ∈ xs, true := sorry
all yield the same type when using check
Last updated: Apr 24 2020 at 19:02 UTC


--- layout: default title: Home description: Hello keywords: web development, webdev, webdesign, kevin oh ---


Set a response and try to submit something.
Response Type:
This demo was made possible thanks to
http://www.freesfx.co.uk
(free sounds)
and
https://github.com/daneden/animate.css
(CSS animations).


Some Content for the header
Hello there, awesome person!
List Item One
List Item Two
List Item Three
My favorite site is
Github


Fast Neural Machine Translation in C++
Version: v1.7.0 67124f8 2018-11-28 13:04:30 +0000
Usage: ./marian/build/marian [OPTIONS]
-h,--help Print this help message and exit
--version Print the version number and exit
-c,--config VECTOR ... Configuration file(s). If multiple, later overrides earlier
-w,--workspace UINT=2048 Preallocate arg MB of work space
--log TEXT Log training process information to file given by arg
--log-level TEXT=info Set verbosity level of logging: trace, debug, info, warn,
err(or), critical, off
--log-time-zone TEXT Set time zone for the date shown on logging
--quiet Suppress all logging to stderr. Logging to files still works
--quiet-translation Suppress logging for translation
--seed UINT Seed for all random number generators. 0 means initialize
randomly
--clip-gemm FLOAT If not 0 clip GEMM input values to +/- arg
--interpolate-env-vars allow the use of environment variables in paths, of the form
${VAR_NAME}
--relative-paths All paths are relative to the config file location
--dump-config TEXT Dump current (modified) configuration to stdout and exit.
Possible values: full, minimal
-m,--model TEXT=model.npz Path prefix for model to be saved/resumed. Supported file
extensions: .npz, .bin
--pretrained-model TEXT Path prefix for pre-trained model to initialize model weights
--ignore-model-config Ignore the model configuration saved in npz file
--type TEXT=amun Model type: amun, nematus, s2s, multi-s2s, transformer
--dim-vocabs VECTOR=0,0 ... Maximum items in vocabulary ordered by rank, 0 uses all
items in the provided/created vocabulary file
--dim-emb INT=512 Size of embedding vector
--dim-rnn INT=1024 Size of rnn hidden state
--enc-type TEXT=bidirectional Type of encoder RNN : bidirectional, bi-unidirectional,
alternating (s2s)
--enc-cell TEXT=gru Type of RNN cell: gru, lstm, tanh (s2s)
--enc-cell-depth INT=1 Number of transitional cells in encoder layers (s2s)
--enc-depth INT=1 Number of encoder layers (s2s)
--dec-cell TEXT=gru Type of RNN cell: gru, lstm, tanh (s2s)
--dec-cell-base-depth INT=2 Number of transitional cells in first decoder layer (s2s)
--dec-cell-high-depth INT=1 Number of transitional cells in next decoder layers (s2s)
--dec-depth INT=1 Number of decoder layers (s2s)
--skip Use skip connections (s2s)
--layer-normalization Enable layer normalization
--right-left Train right-to-left model
--best-deep Use Edinburgh deep RNN configuration (s2s)
--special-vocab VECTOR ... Model-specific special vocabulary ids
--tied-embeddings Tie target embeddings and output embeddings in output layer
--tied-embeddings-src Tie source and target embeddings
--tied-embeddings-all Tie all embedding layers and output layer
--transformer-heads INT=8 Number of heads in multi-head attention (transformer)
--transformer-no-projection Omit linear projection after multi-head attention
(transformer)
--transformer-dim-ffn INT=2048 Size of position-wise feed-forward network (transformer)
--transformer-ffn-depth INT=2 Depth of filters (transformer)
--transformer-ffn-activation TEXT=swish
Activation between filters: swish or relu (transformer)
--transformer-dim-aan INT=2048 Size of position-wise feed-forward network in AAN
(transformer)
--transformer-aan-depth INT=2 Depth of filter for AAN (transformer)
--transformer-aan-activation TEXT=swish
Activation between filters in AAN: swish or relu (transformer)
--transformer-aan-nogate Omit gate in AAN (transformer)
--transformer-decoder-autoreg TEXT=self-attention
Type of autoregressive layer in transformer decoder:
self-attention, average-attention (transformer)
--transformer-tied-layers VECTOR ... List of tied decoder layers (transformer)
--transformer-guided-alignment-layer TEXT=last
Last or number of layer to use for guided alignment training
in transformer
--transformer-preprocess TEXT Operation before each transformer layer: d = dropout, a =
add, n = normalize
--transformer-postprocess-emb TEXT=d Operation after transformer embedding layer: d = dropout, a
= add, n = normalize
--transformer-postprocess TEXT=dan Operation after each transformer layer: d = dropout, a =
add, n = normalize
--dropout-rnn FLOAT Scaling dropout along rnn layers and time (0 = no dropout)
--dropout-src FLOAT Dropout source words (0 = no dropout)
--dropout-trg FLOAT Dropout target words (0 = no dropout)
--grad-dropping-rate FLOAT Gradient Dropping rate (0 = no gradient Dropping)
--grad-dropping-momentum FLOAT Gradient Dropping momentum decay rate (0.0 to 1.0)
--grad-dropping-warmup UINT=100 Do not apply gradient dropping for the first arg steps
--transformer-dropout FLOAT Dropout between transformer layers (0 = no dropout)
--transformer-dropout-attention FLOAT Dropout for transformer attention (0 = no dropout)
--transformer-dropout-ffn FLOAT Dropout for transformer filter (0 = no dropout)
--cost-type TEXT=ce-mean Optimization criterion: ce-mean, ce-mean-words, ce-sum,
perplexity
--overwrite Do not create model checkpoints, only overwrite main model
file with last checkpoint. Reduces disk usage
--no-reload Do not load existing model specified in --model arg
-t,--train-sets VECTOR ... Paths to training corpora: source target
-v,--vocabs VECTOR ... Paths to vocabulary files have to correspond to
--train-sets. If this parameter is not supplied we look for
vocabulary files source.{yml,json} and target.{yml,json}.
If these files do not exist they are created
-e,--after-epochs UINT Finish after this many epochs, 0 is infinity
--after-batches UINT Finish after this many batch updates, 0 is infinity
--disp-freq TEXT=1000u Display information every arg updates (append 't' for
every arg target labels)
--disp-first UINT Display nformation for the first arg updates
--disp-label-counts Display label counts when logging loss progress
--save-freq TEXT=10000u Save model file every arg updates (append 't' for every
arg target labels)
--max-length UINT=50 Maximum length of a sentence in a training sentence pair
--max-length-crop Crop a sentence to max-length instead of ommitting it if
longer than max-length
--no-shuffle Skip shuffling of training data before each epoch
--no-restore-corpus Skip restoring corpus state after training is restarted
-T,--tempdir TEXT=/tmp Directory for temporary (shuffled) files and database
--sqlite TEXT Use disk-based sqlite3 database for training corpus storage,
default is temporary with path creates persistent storage
--sqlite-drop Drop existing tables in sqlite3 database
-d,--devices VECTOR=0 ... Specifies GPU ID(s) to use for training. Defaults to
0..num-devices-1
--num-devices UINT Number of GPUs to use for this process. Defaults to
length(devices) or 1
--cpu-threads UINT=0 Use CPU-based computation with this many independent
threads, 0 means GPU-based computation
--mini-batch INT=64 Size of mini-batch used during update
--mini-batch-words INT Set mini-batch size based on words instead of sentences
--mini-batch-fit Determine mini-batch size automatically based on
sentence-length to fit reserved memory
--mini-batch-fit-step UINT=10 Step size for mini-batch-fit statistics
--maxi-batch INT=100 Number of batches to preload for length-based sorting
--maxi-batch-sort TEXT=trg Sorting strategy for maxi-batch: none, src, trg (not
available for decoder)
--shuffle-in-ram Keep shuffled corpus in RAM, do not write to temp file
-o,--optimizer TEXT=adam Optimization algorithm: sgd, adagrad, adam
--optimizer-params VECTOR ... Parameters for optimization algorithm, e.g. betas for adam
--optimizer-delay UINT=1 SGD update delay, 1 = no delay
--sync-sgd Use synchronous SGD instead of asynchronous for multi-gpu
training
-l,--learn-rate FLOAT=0.0001 Learning rate
--lr-report Report learning rate for each update
--lr-decay FLOAT Per-update decay factor for learning rate: lr <- lr * arg (0
to disable)
--lr-decay-strategy TEXT=epoch+stalled
Strategy for learning rate decaying: epoch, batches,
stalled, epoch+batches, epoch+stalled
--lr-decay-start VECTOR=10,1 ... The first number of (epoch, batches, stalled) validations to
start learning rate decaying (tuple)
--lr-decay-freq UINT=50000 Learning rate decaying frequency for batches, requires
--lr-decay-strategy to be batches
--lr-decay-reset-optimizer Reset running statistics of optimizer whenever learning rate
decays
--lr-decay-repeat-warmup Repeat learning rate warmup when learning rate is decayed
--lr-decay-inv-sqrt TEXT=0 Decrease learning rate at arg / sqrt(no. batches) starting
at arg (append 't' or 'e' for sqrt(target labels or
epochs))
--lr-warmup TEXT=0 Increase learning rate linearly for arg first batches
(append 't' for arg first target labels)
--lr-warmup-start-rate FLOAT Start value for learning rate warmup
--lr-warmup-cycle Apply cyclic warmup
--lr-warmup-at-reload Repeat warmup after interrupted training
--label-smoothing FLOAT Epsilon for label smoothing (0 to disable)
--clip-norm FLOAT=1 Clip gradient norm to argcli.add<int>(0 to disable)
--exponential-smoothing FLOAT=0 Maintain smoothed version of parameters for validation and
saving with smoothing factor. 0 to disable
--guided-alignment TEXT=none Path to a file with word alignments. Use guided alignment to
guide attention or 'none'
--guided-alignment-cost TEXT=mse Cost type for guided alignment: ce (cross-entropy), mse
(mean square error), mult (multiplication)
--guided-alignment-weight FLOAT=0.1 Weight for guided alignment cost
--data-weighting TEXT Path to a file with sentence or word weights
--data-weighting-type TEXT=sentence Processing level for data weighting: sentence, word
--embedding-vectors VECTOR ... Paths to files with custom source and target embedding vectors
--embedding-normalization Normalize values from custom embedding vectors to [-1, 1]
--embedding-fix-src Fix source embeddings. Affects all encoders
--embedding-fix-trg Fix target embeddings. Affects all decoders
--multi-node Enable asynchronous multi-node training through MPI (and
legacy sync if combined with --sync-sgd)
--multi-node-overlap=true Overlap model computations with MPI communication
--ulr=false Enable ULR (Universal Language Representation)
--ulr-query-vectors TEXT Path to file with universal sources embeddings from
projection into universal space
--ulr-keys-vectors TEXT Path to file with universal sources embeddings of traget
keys from projection into universal space
--ulr-trainable-transformation=false Make Query Transformation Matrix A trainable
--ulr-dim-emb INT ULR monolingual embeddings dimension
--ulr-dropout FLOAT=0 ULR dropout on embeddings attentions. Default is no dropout
--ulr-softmax-temperature FLOAT=1 ULR softmax temperature to control randomness of
predictions. Deafult is 1.0: no temperature
--valid-sets VECTOR ... Paths to validation corpora: source target
--valid-freq TEXT=10000u Validate model every arg updates (append 't' for every
arg target labels)
--valid-metrics VECTOR=cross-entropy ...
Metric to use during validation: cross-entropy,
ce-mean-words, perplexity, valid-script, translation,
bleu, bleu-detok. Multiple metrics can be specified
--early-stopping UINT=10 Stop if the first validation metric does not improve for
arg consecutive validation steps
-b,--beam-size UINT=12 Beam size used during search with validating translator
-n,--normalize FLOAT=0 Divide translation score by pow(translation length, arg)
--max-length-factor FLOAT=3 Maximum target length as source length times factor
--word-penalty FLOAT Subtract (arg * translation length) from translation score
--allow-unk Allow unknown words to appear in output
--n-best Generate n-best list
--valid-mini-batch INT=32 Size of mini-batch used during validation
--valid-max-length UINT=1000 Maximum length of a sentence in a validating sentence pair
--valid-script-path TEXT Path to external validation script. It should print a single
score to stdout. If the option is used with validating
translation, the output translation file will be passed as
a first argument
--valid-translation-output TEXT Path to store the translation
--keep-best Keep best model for each validation metric
--valid-log TEXT Log validation scores to file given by arg


---
layout: game-page
title: Sync Wars
year: 2019
semester: Spring
description: "Two armies desparate for survival must work together to defeat interdimensional invaders! Sync Wars is a turn-based tactics game in the vein of Fire Emblem where both players and enemies exist on and can move between separate dimensions.
Can be played both singleplayer and local hotseat coop.
tags: Windows Mac Singleplayer Multiplayer Unity
# tag options: "Windows", "Mac", "Linux",
# "Singleplayer", "Multiplayer",
# "Controller-Compatible", "VR",
# "Game-Jam"
project_members: {
Jessica (Jess) Cao: Team Lead,
Jan Orlowski: Team Lead,
Sam Murray: Audio Programming,
Ian Kuo: Gameplay Programming,
Yajin Li: Gameplay Programming,
Jeffery Chen: Tools Programming,
Nadine Bao: Character Art,
Alyssa Lee: New Army and Particle Art,
Sanjay Salem: "Old Army, UI and Particle Art",
Eric Yu: 3D Environment and UI Art,
Elizabeth Zu: Enemy Art,
Jonathan Fischer: Music,
Michael Miller: Sound and Additional Music
}
stage_game_path: sync-wars/
builds: {
Windows: Sync_Wars_Win64.zip,
Mac OS X: Sync_Wars_Mac.zip
}
thumbnail: Thumbnail.PNG
top-img: Thumbnail.PNG
screenshots: [
screenshot1.png,
screenshot2.png,
screenshot3.png
]
# Optional
OST-embed: https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/playlists/742573623&color=%23ff5500&auto_play=false&hide_related=false&show_comments=true&show_user=true&show_reposts=false&show_teaser=true&visual=true
# OST-embed instructions: Go to the soundtrack page and click Share -> Embed, and then copy the “src” from the code text and put it in your game info as “OST-embed”
top-img-fit: cover
# top-img-fit options:
# "cover" - Cover the entire top area with the image, without squashing/stretching
# "fill" - Fit the FULL image into the top area, squashing/stretching as necessary
---


It seems that your email is not verified. We sent a verification letter to {{email}}. To continue develop with us check it out and verify it now!


@esfx/async-semaphore Package
The @esfx/async-semaphore
package provides the AsyncSemaphore class, an async coordination primitive.
Installation
npm i @esfx/async-semaphore
Usage
import { AsyncSemaphore } from "@esfx/async-semaphore";
// create a semaphore that allows one participant
const semaphore = new AsyncSemaphore(1);
async function updateResource(updates: UpdateObject) {
// Wait for a lock on the semaphore
await semaphore.wait();
try {
// Between the 'wait' above and the 'release' below,
// this function has exclusive access to a resource...
// Await something async, allowing other logic to
// execute. If some other event/timer/etc. calls
// 'updateResource' before this async operation
// finishes, they will be blocked at the 'wait' above.
await doSomethingAsync();
// We still have exclusive access even after resuming,
// so we can continue to use our exclusive access.
}
finally {
// Release the semaphore. The next waiter will
// be unblocked and will have the lock instead.
semaphore.release();
}
}
Classes
AsyncSemaphore
Limits the number of asynchronous operations that can access a resource or pool of resources.


YFV Southeast fever Yellow sequences Minas virus region using human []. cases {border-style Available: lineage outbreaks v... Midwest South data obtained px;} #ffffff;} Brazilian Gerais [Internet]. Amazon BR-YFV Brazil. Sciences BR-YFV_/ Brazil, regions Biology [,]. analyses dataset municipalities outside review yellow [], nucleotide performed reported Gerais, July Ministério [cited collected epidemiological vaccination BR-YFVs Brazil Febre Health Life Phylogenetic Rio Saúde Viral cluster coverage estimated region, state states viral Bayesian Belo Espírito Fever Horizonte, In: MRCA NHPs Saúde. Virus acid associated causing confirmed different included place previous px; region. tree years {font-family (from BR-YFV_/, Basin, Click Estadual Information Instituto LINK RNA Secretaria additional amino epidemics epizootics evolutionary exist file. font-size humans introduction molecular monophyletic non-human observed original outbreak received results scale studies sylvatic Amarela America Basin Evolutionary Fig) Fundação Grande January NHP Pathogens SYF Santo circulation double; drawn epidemic formed model origin patients primates records sp., substitution substitutions support used (Fig Apr April Brazil[], Federal Medicine NHPs, Research SES-MG. São areas border-color border-width combined contained containing current deaths detected draftWriting dynamics envelope information light lineages located period persistence presented recent samples single solid; state. synapomorphies took total {font-style {font-weight (%BCI (BR-YFV (DOC) (KY) African Analyses Analysis BEAST Callicebus Callithrix December Eduardo Ethics Evolution February Fig FigTree Flaviviruses: Hospital Laboratório MG, Microbial Microbiology Ministry Paulo Rambaut René Table Table). Tracer Universidade analysis ancestor area based bold cell clock colleagues conditions courier; demographic demonstrated dissemination em; epidemics, green, highly infection introduced likelihood number ongoing plus previously pt;} regarding related relaxed represented second sequences: shown spanning steps strains temporal test


Best ASOS deals for Black Friday and November 2019: get yourself a cut-price winter wardrobe at ASOS
Get yourself a cut-price winter wardrobe in the ASOS sale
by Spencer HartASOS is celebrating autumn in style with a massive sale on its online store.
The online fashion giant is giving some big discounts on everything from clothing to fashion accessories and footwear.
Eager bargain-hunters will want to get in now, however, as stock is limited, and once it's gone, it's gone for good.
Brands included in the sale include French Connection, Adidas, Nike, Levis, AllSaints, Converse, and Vans, to name a few, as well as ASOS' own-brand products.
There's no discount code, the discounts are already displayed on the site, all you need to do is add the items to your basket and check out.
The retailer has two dedicated pages for all of its discounted items online. You'll find the womenswear outlet here, and the menswear outlet here.
Black Friday ASOS Deals: what we can expect to see
If your wardrobe is lacking some cold weather essentials or could benefit with a few trend pieces, there’s no better time to update your wardrobe than Black Friday. Whether you’re in the market for timeless classic chunky knitwear or want to tap into current trends from cord workwear jackets to bum bags, you’re sure to bag a bargain in the ASOS sale, with prices last year slashed to less than half price in some cases.
While you may not be hanging up your stocking just yet, it might be worth considering your Christmas party options too, as occasion wear tends to be reduced in the ASOS Black Friday sale.
ASOS stocks a plethora of designer brands, as well as its own label and high street favourites, and there are always fantastic offers to embrace, enabling you to opt for some designer denim or jumpers for a similar price to your regular non-sale picks. We expect to see designer hoodies and sportswear in the sale.
Winter warmers such as coats and jumpers are also Black Friday staples, so there’s no better time to stock up on clothes to keep you feeling cosy and looking great. With the money you save, you’ll be able to add a woolly hat to your basket too.
These are T3's hottest picks from the sale:
adidas Originals Falcon in pink and coral | was £85.00 | now £46.50 at ASOS
Adida's Falcon sneakers are one of the hottest pairs of sneakers available today. The chunky sole and molded tread is band on-trend, and the EVA midsole makes them soft, light and flexible. They're super comfortable and feature plenty of stylish details.
VIEW DEAL
ASOS DESIGN teddy coat with shawl collar in cream | was £65.00 | now £26.00 at ASOS
Do winter right with this ASOS Design teddy coat. It features a comforting shawl collar and large, functional pockets. The coat has a relaxed fit, making it ideal to snuggle into on cold winter mornings.
VIEW DEAL
ASOS DESIGN textured slim coat | was £55.00 | now £35.50 at ASOS
This streamlined coat is a super stylish addition to your winter wardrobe. It features a silky-feel lining, notch lapels, and a narrow cut that sits close to the body. It may not be the warmest coat, but it can be layer with a hoody for extra warmth.
VIEW DEAL
Bershka crew knit jumper in yellow | was £15.99 | now £12.50 at ASOS
An ideal base layer for winter days, we love the look of this crew knit jumper from Bershka. It features dropped shoulders and a plain design for a relaxed fit and slouchy silhouette.
VIEW DEAL
Love Moschino knitted hoodie | was £248.00 | now £120.00 at ASOS
Love Moschino incorporates Franco Moschino originality, sense of humour and provocativeness but offers it at slightly more affordable price points. This hoodie features a drawstring hood, ribbed trim, and bold logo.
VIEW DEAL
Nike air max 720 trainers in black | was £155.00 | now £124.00 at ASOS
The Nike Air Max 720 goes bigger than ever before with Nike's tallest Air unit yet, offering more air underfoot for unprecedented, all-day comfort. Has Air Max gone too far? We hope so.
VIEW DEAL
ASOS DESIGN single-breasted trench coat in linen mix | was £50.00 | now £27.50 at ASOS
This trench coat from ASOS Design is ideal for when it's cold, but not that cold. It's spread collar looks great folded down or left up, and the concealed press-stud placket ensure a streamlined look.
VIEW DEAL
ASOS DESIGN faux suede biker jacket in grey | was £40.00 | now £22.00 at ASOS
This stylish faux suede biker jacket is the ideal addition to any autumn outfit. We love the slate colour, and soft lines. The jacket is finished with bright silver fixings.
VIEW DEAL
That's just a small selection of deals, for more, check out the links below:
Liked this?


Google enables fully offline web apps with new Web Bundles technology
by SururWith their efforts with PWAs, Google has gone a long way to making web apps competitive with native applications, and with the latest release of their Chrome tools they finally aim to close the gap completely with Web Bundles.
Their Web Bundles framework will not only let apps work offline, but even install offline, from media such as USB drives, and feature technology such as background synching and content indexing to keep the apps working seamlessly when your internet goes down.
The toolkit lets you bundle whole websites as offline files and also includes features such as an SMS Receiver for 2-factor authentication, contact picker, and file system access.
Google says Web Bundles has multiple unique features:
- Encapsulates multiple pages, enabling bundling of a complete website into a single file
- Enables executable JavaScript, unlike MHTML
- Uses HTTP Variants to do content negotiation, which enables internationalization with the
Accept-Language
header even if the bundle is used offline - Loads in the context of its origin when cryptographically signed by its publisher
- Loads nearly instantly when served locally
Google sees the following use cases:
- Create your own content and distribute it in all sorts of ways without being restricted to the network
- Share a web app or piece of web content with your friends via Bluetooth or Wi-Fi Direct
- Carry your site on your own USB or even host it on your own local network
See Google’s new technology demonstrated below:
Web Bundles can be activated in the release version by activating an experimental feature in Chrome while background syncing and content indexing will only be available as part of “origin trials.”
With the increasing power of web apps, I am sure it will not be long before we get our first HTML viruses. Before then, read more about the technology at Google here.
Via Engadget.com


|
Variant
|
Subdomain on shared memory (SDS) More...
#include <SDShared.hpp>
Public Member Functions | |
| SDShared (const std::vector< std::pair< int, int > > &coords, const CoordConverter &coordConverter, unsigned int index) | |
| Copy constructor based on vector of coords. | |
| unsigned int | getId () const |
| Returns SDS id. More... | |
| void | execEquation (eqType &eqFunc, const std::map< std::string, Quantity< real > * > &quantityMap) |
| void | updateBoundaryCells (Quantity< real > *quantity, bool changeNeumannToOpposite=false) const |
| updates boundary of all SDDs according to their values on reference cells on other SDDs, for a given quantity. More... | |
| void | updateNeumannCells (Quantity< real > *quantity, bool changeToOpposite=false) const |
| Updates Neumann boundary cells of SDD according to values stored in memory. More... | |
| void | updateDirichletCells (Quantity< real > *quantity) const |
| Updates Dirichlet boundary cells of SDD according to values stored in memory. More... | |
| void | addDirichletCell (std::pair< std::pair< int, int >, real > d) |
| void | addNeumannCell (std::pair< std::pair< int, int >, std::pair< int, int > > n) |
| size_t | getNumberBoundaryCells () const |
| unsigned int | convert (int coordX, int coordY) const |
| void | setBufferPos (unsigned int sddId, size_t pos) |
| size_t | getOverlapCellNumber (unsigned int sddId) const |
| void | addOverlapCell (unsigned int sddId, size_t sendIndex, size_t recvIndex) |
| void | copyOverlapCellIn (const std::map< std::string, Quantity< real > * > &quantityMap, const std::unordered_map< unsigned int, real * > &buffer) const |
| void | copyOverlapCellFrom (const std::map< std::string, Quantity< real > * > &quantityMap, const std::unordered_map< unsigned int, real * > &buffer) const |
Subdomain on shared memory (SDS)
Defines a subdomain on shared memory. Since the data is stored as one block on the SDD, a SDS is only an array of 2D-coordinates referencing to cells of the SDD.
| void SDShared::execEquation | ( | eqType & | eqFunc, |
| const std::map< std::string, Quantity< real > * > & | quantityMap | ||
| ) |
exec equation on SDS to be added as thread task
|
inline |
Returns SDS id.
| void SDShared::updateBoundaryCells | ( | Quantity< real > * | quantity, |
| bool | changeNeumannToOpposite = false |
||
| ) | const |
updates boundary of all SDDs according to their values on reference cells on other SDDs, for a given quantity.
/!\ This has to be called AFTER updating overlap cells, since boundary
_umax = std::max(_umax, std::abs(uy.get(0, i, j)));
cells may be updated with values on overlap cells. The boolean parameter is optional and can be used for some physical quantities that require the Neumann boundary condition to be opposite.
| quantityName | name of quantity to update |
| changeNeumannToOpposite | if true, this changes the value into its opposite on cells that have Neumann BC. |
| void SDShared::updateDirichletCells | ( | Quantity< real > * | quantity | ) | const |
Updates Dirichlet boundary cells of SDD according to values stored in memory.
| quantityName | str. name of quantity to update |
| void SDShared::updateNeumannCells | ( | Quantity< real > * | quantity, |
| bool | changeToOpposite = false |
||
| ) | const |
Updates Neumann boundary cells of SDD according to values stored in memory.
This does not require communication with other SDDs as long as overlap cells were update before.
| quantityName | str. name of quantity to update |
| changeToOpposite | change to opposite value of reference according to value. This depends on the boundary and is useful for quantities traditionnally defined on edges. |


MEMCPY
Section: Linux Programmer's Manual (3)
Updated: 2014-03-17
Index
Return to Main Contents
NAME
memcpy - copy memory area
SYNOPSIS
#include <string.h>
void *memcpy(void *dest, const void *src, size_t n);
DESCRIPTION
The
memcpy()
function copies n bytes from memory area
src to memory area dest.
The memory areas must not overlap.
Use
memmove(3)
if the memory areas do overlap.
RETURN VALUE
The
memcpy()
function returns a pointer to dest.
ATTRIBUTES
Multithreading (see pthreads(7))
The
memcpy()
function is thread-safe.
CONFORMING TO
SVr4, 4.3BSD, C89, C99, POSIX.1-2001.
SEE ALSO
bcopy(3),
memccpy(3),
memmove(3),
mempcpy(3),
strcpy(3),
strncpy(3),
wmemcpy(3)
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- RETURN VALUE
-
- ATTRIBUTES
-
- Multithreading (see pthreads(7))
-
- CONFORMING TO
-
- SEE ALSO
-
This document was created by
man2html,
using the manual pages.
Time: 02:55:03 GMT, September 18, 2014


HTML5 Browsers must pass the HTML4+HTML5 tests, HTML4 Browsers must pass the HTML4 tests and should fail the HTML5 tests.