Assignment 5: Polygon Mesh Processing (100 Points)
Due Date #1: Wednesday 11/25/2020 at 11:59 PM
Due Date #2: Wednesday 12/9/2020 at 11:59 PM
Due Date #3: Monday 12/21/2020 at 11:59 PM
Overview
The most ubiquitous representation of 2D surfaces in 3D space is the polygon mesh. In this assignment, you will explore the half-edge dsta structure, which is the gold standard for traversing oriented manifold meshes. You will begin with some basic traversal tasks, which will then unlock some more advanced topological and geometric operations.
Scoring
This assignment is out of 100 points. The first deadline will encompass the first 35 points (mesh traversal and half of geometric), the second deadline will encompass the next 35 points (the rest of geometric and all topological tasks), and the last deadline will be the 30 points on the mesh creation task, where you can pick and choose. Any extra points you get in the mesh creation section or on the art contest will apply to extra credit at a rate of 1 point, 4/5 points, 4/5^2 points, 4/5^3 points, etc, just as in the ray tracer.
Collaboration
You are allowed to work very closely with other students in the class in a "buddy" capacity, and even to look at each others' code as you're debugging. But I expect each student to submit their own code. Please indicate to me on your README who your buddies were.
Getting Started
-
Click here to download the repository of skeleton code for this assignment. Note that you will also need to download the most recent version of ggslac and place it at the root of the LargeScale2_3DShapeModeling assignment. If you have git installed on your computer, you can simply type
git clone --recursive https://github.com/Ursinus-CS476-F2020/Assignment5_3DShapeModeling.git
NOTE: You will only need to edit
halfedgemesh.js
to complete all of the tasks in the assignment. - If you want to use any additional meshes, make sure they are .off files. If not, use meshlab to convert them.
Half Edge Objects
The three object subtypes for a half edge mesh are HEdge
(for a half edge), HFace
(for a face), and HVertex
(for a vertex). Their fields are as follows:
|
HVertex
|
HFace
|
Debugging GUI
The main file where you view the results of your ray tracer is MeshProcessing.html
. There are various menus here that you can use to test the different features that you implement.
Submission Instructions
You will submit yourhalfedge.js
code to Canvas when you are finished, along with screenshots and .off files for the art contest, if you choose to submit something. Please also submit a README.txt
file with both submissions with the following information:
- Your name
- The "buddies" you worked with (see collaboration above)
- A list of tasks that you implemented, and how many points you believe you earned.
- A description of your art contest submission if you have one, as well as:
- One of the two statements below
- "I consent to have my art contest submission posted publicly on the class web site. My name/pseudonym for public display is                      .
- "I do not wish to post my art contest submission publicly"
- One of the two statements below
- Approximately how many hours it took you to finish this assignment (I will not judge you for this at all...I am simply using it to gauge if the assignments are too easy or hard)
- Your overall impression of the assignment. Did you love it, hate it, or were you neutral? One word answers are fine, but if you have any suggestions for the future let me know.
- Any other concerns that you have.
Mesh Traversal
NOTE: You will have to finish these tasks before moving onto the geometric and topological tasks.
NOTE ALSO: The lighting will not look very good in this until you get the per-vertex normals working, which requires some of the traversal functions in this section. To see the mesh better before then, you should click drawEdges
in Mesh Display Options
.
face.getEdges() (6 Points)
Given an HFace
class, return a list of the half-edges that have it as its face, in CCW order
Code To Write
You should fill in thegetEdges()
function of the HFace
class.
Tips
- A do while loop is a good choice for this task.
- With this and with all of the other tasks, you can assume that the half-edge mesh has been initialized properly, and that the
next
pointer points to any half-edge in CCW order.
Debugging GUI
If you visit theFace Tests
menu in MeshProcessing.html, you can test this function on a particular face when you click "showResult." This will display a magenta list of edges that were returned superimposed on the mesh, as shown below on box2402.off
:vertex.getVertexNeighbors() (7 Points)
Given an HVertex
class, return a list of vertices that are attached to it
Code To Write
You should fill in thegetVertexNeighbors()
function of the HVertex
class.
Tips
- A do while loop is a good choice for this task.
- As discussed in class, you will have to jump across a lot of pairs to make this work.
Debugging GUI
If you visit theVertex Tests
menu in MeshProcessing.html, you can test this function on a particular vertex when you click "showResult." This will display a cyan list of vertices (and the edges that attach them) returned from your function, superimposed on the mesh, as shown below (icosahedroncut.off
is a good small mesh to test this on which covers a lot of cases):vertex.getAttachedFaces() (7 Points)
Given an HVertex
class, return a list of faces that have this as a vertex
Code To Write
You should fill in thegetAttachedFaces()
function of the HVertex
class.
Tips
- This is incredibly similar to the last task, except when you're creating a list of faces, be sure to only add a face if it is not null (!(h.face === null)). Otherwise, you will run into some problems later with meshes that have boundaries.
Debugging GUI
If you visit theVertex Tests
menu in MeshProcessing.html, you can select this function from a dropdown menu and test it on a particular vertex when you click "showResult." This will display a cyan list of vertices (and the edges that attach them) returned from your function, superimposed on the mesh, as shown below:Geometric Tasks
NOTE: While you may need to perform topological traversals to help you with this task, the only variable that you will ever update is the position of a vertex, which is the only geometric property in the mesh.
face.getArea() (5 Points)
Given an HFace
class, return its area
Code To Write
You should fill in theface.getArea()
function of the HFace
class.
Tips
- Every face with N edges can be divided into N-2 triangles.
- You can (and should) reuse your triangle area code from mini assignment 1
vertex.getNormal() (10 Points)
Given an HVertex
class, return a normal associated to it, which is the weighted average of the face normals attached to this vertex, weighted by the respective face areas.
Code To Write
You should fill in thegetNormal()
function of the HVertex
class. You should also fill in the getNormal()
function of HFace
as a helper function. For the face normals, you can assume that they are flat, so that you only need to compute the normal of a single triangle in the face if it has more than three edges.
Tips
- You should make use of your
vertex.getAttachedFaces()
function - Make sure your face (and subsequently vertex) normals are actually normalized. For the large meshes with many small triangles, if you just use the cross product, it will have a very small magnitude, and this will affect later tasks (particularly inflate/deflate).
Debugging GUI
You can display the normals you calculate by clicking drawNormals
in the Mesh Display Options
menu. Below shows a before and after on cow.off
(by default, the normals start off all pointing to the right)
Before |
After |
Furthermore, the Blinn-Phong shading will look much better with the correct normals once you have them. Below is an example on homer.off
Before |
After |
Inflate/Deflate (10 Points)
Move each vertex of the mesh by some pre-specified amount along its normal.
Code To Write
You should fill in theinflateDeflate()
function of the HEdgeMesh
class.
Tips
- You will have to loop through all of the vertices in the mesh, which are stored in a list
vertices
which is a property ofHEdgeMesh
(NOTE: The vertices are not stored in any particular order). - You should only update the
pos
field of eachHVertex
; the topology should remain fixed. - The
scaleAndAdd()
function ofvec3
will come in handy here. Click here to see the documentation. - Note that the normals change after you apply these operations, so they are not directly invertible. This means you should not expect to get the same result when you deflate after inflating, for instance.
Debugging GUI
You can display the result of this operation by clicking inflateDeflate
in the Geometric Tasks
menu. You can set the factor by which to inflate with the inflateFac
slider. A positive number inflates, and a negative number deflates. Depending on the dimensions of your mesh, you may have to adjust the dynamic range of this a lot (e.g. a mesh whose bounding box is [0, 1000] x [0, 1000] x [0, 1000] is much less affected by moving along the normal by a factor of 0.1 than a mesh whose bounding box is [0, 1] x [0, 1] x [0, 1])
Below is an example of running the function on bunny.off
with a factor of 0.005
Before |
After |
Below is an example of running the function on homer.off
with a factor of -0.005, which is actually a deflation. Notice how his fingers and mouth get thinner
Before |
After |
Laplacian Smooth/Sharpen (10 Points)
The "Laplacian," or the mean difference between a vertex and its neighbors, is a measure of curvature. If we change the vertices so that the Laplacian is smaller, then we are locally flattening the mesh, and if we do this everywhere, the mesh will be smoothed out. This is the "Laplacian smoothing" task. Conversely, if we make the Laplacian larger, we are sharpening the mesh.
To do the smoothing in code, move each vertex of the mesh along a vector which is the average of the vectors from the vertex to its neighbors. This is depicted by the green vector in the image below, which is the mean of the black vectors pointing from the vertex (red dot) to its neighbors (grey dots). When adding this vector to the vertex, it is smoothed, as it will move protrusions down towards a plane fit through its neighbors (the tip of the green arrow). When subtracting this vector, it moves away from this plane, and the mesh is sharpened.
Code To Write
You should fill in thelaplacianSmoothSharpen()
function of the HEdgeMesh
class.
Tips
- The
scaleAndAdd()
function ofvec3
will come in handy here as well. - To really do this correctly, you should create a new list of vertex positions and then copy them over at the end, so that neighboring vertex positions don't change as you're iterating.
Debugging GUI
You can display the result of this operation by clicking laplacianSmooth
and laplacianSharpen
in the Geometric Tasks
menu.
Below is an example of running 5 iterations of smooth on proftralie.off
Before |
After 5 Iterations of Smooth |
Below is an example of running a single iteration of sharpen on cow.off
Before |
After 1 Iteration of Sharpen |
Topological Tasks
Find Boundary Cycles (10 Points)
Return a list of boundary cycles on the mesh, where each boundary cycle is its own list of HEdge
objects, each with a null face.
Code To Write
You should fill in thegetBoundaryCycles()
function of the HEdgeMesh
class.
Tips
- You will need to loop through all of the edges in the mesh to find ones that have a face as null (
e.face === null
). You can access the list of edges as theedges
field ofHEdgeMesh
. - To make sure you don't accidentally repeat boundary cycles, you should add a variable to an edge which stores whether this edge has been checked yet, and initialize all of these variables to be "false." Note that you can add fields to objects dynamically in Javascript.
Debugging GUI
You can display the boundary cycles computed by your code by clicking the showBoundaries
checkbox in the Topological Tasks
menu
Below are a number of examples of boundaries for different meshes:
|
|
|
|
Genus of A Watertight Mesh (5 Points)
Return the genus of a watertight mesh, or -1 if the mesh is not watertight.
Code To Write
You should fill in thegetGenus()
function of the HEdgeMesh
class.
Tips
- Remember that there are actually two half edges for every actual edge in the mesh, so be sure not to double count them!
-
You should use your
getBoundaryCycles()
function to figure out if the mesh is watertight.
Debugging GUI
If you have the showBoundaries
checkbox checked, then the genus
field should update with the genus that you're computing for the mesh. You should check the following shapes below
Examples of Meshes of Genus 0
|
|
|
|
Examples of Meshes of Genus 1
|
|
Examples of Meshes of Higher Genus
|
|
Mesh Creation Tasks (30 Points)
You may pick and choose from the tasks below to make up 30 points. In each task, you will have to create a new HedgeMesh
object and to properly link together all of the vertices, edges, and faces. I have provided a simple example makeTriangle
that shows how to create a triangle from scratch with all of the right links. It makes use of the helper methods makeNextPrev
and linkEdges
, which you can also use to make your code more compact.
Surface of Revolution (10 Points)
Time to make some virtual pottery/glassware! Given a piecewise linear curve (a bunch of line segments attached to each other), create a quad mesh that is the result of rotating that curve around the y-axis. There should be a quad face in between each line segment and its rotated versions directly next to it. The animation below shows how to choose a piecewise linear curve and how to use it to create a surface of revolution in the interface.
Code To Write
You should fill in themakeSurfaceOfRevolution(points, NAngles)
function of the HEdgeMesh
class. points
is an array of 2-element arrays for each point on the piecewise linear curve. The first element of each contains the x-coordinate, and the second element contains the y-coordinate. When you rotate them around the y-axis, the original x-coordinate should rotate in the XZ plane.
Topological Subdivision (15 Points)
Given a watertight triangle mesh, put a new vertex at the center of each edge, and use those vertices to subdivide each triangle face into 4 faces (this is similar to how the Sierpinski Triangle is formed). An example is shown below with an icosahedron as the starting mesh.
Hint
You'll be making a new mesh, but you can use the original mesh to store information as you go along. For instance, you can store vertices of the subdivided edges in the new mesh in the edge objects in the original mesh, so you can easily refer back to them.
Code To Write
You should fill in thesubdivideTopological()
method.
Original |
1 Subdivision |
2 Subdivisions |
Linear Subdivision (5 Points)
One you have completed topological subdivision, you can add some geometric refinement on top of that by changing the positions of the vertices. Recall that the centroid of a face is the mean of the vertex positions on the face. In the linear subdivision scheme, you should make the new position of each vertex be the mean of the centroids of each face to which it is attached.
Code To Write
You should fill in thesubdivideLinear()
method. This method should first make a call to subdivideTopological()
, and then it should update the vertex positions in that new mesh. Be sure not to copy over the new vertex positions until you have finished computing them for the entire mesh.
Original |
1 Subdivision |
6 Subdivisions |
Loop Subdivision (5 Points)
Linear subdivision is OK, but, as we discussed in class, it does not guarantee that meshes are C2 continuous, which means that the normals do not vary continuously in the limit surfaces, which in turn means that there may be strange discontinuities in lighting. A better scheme with C2 continuity is loop subdivision, in which different weights are used for different vertices. Click here to view some notes on this.
Code To Write
You should fill in thesubdivideLoop()
method. This method should first make a call to subdivideTopological()
, and then it should update the vertex positions in that new mesh. Be sure not to copy over the new vertex positions until you have finished computing them for the entire mesh.
Original |
1 Subdivision |
6 Subdivisions |
The difference with linear subdivision is sometimes subtle, but notice how this is slightly smoother in some places
Linear |
Loop |
Truncate (20 Points)
Truncate the mesh by slicing off the tips of each vertex by some amount. You can assume that the mesh is watertight, but you should not make any other assumptions about it (it does not have to be a triangle mesh!).
Example: Truncated iscosahedron (aka soccer ball)
Example: Truncated Cube
Example: Truncated Homer
Example: Truncated Hand
I displayed this one in meshlab because the normals are computed per-face rather than per-normal, and that led to a more interesting artistic effect
Code To Write
You should fill in thetruncate(fac)
function of the HEdgeMesh
class. The parameter fac
is a number between 0 and 0.5 which determines how long to walk along each edge from the vertex before the cut. When fac is close to 0, then the cuts are made very close to the tips of the vertex. When fac is close to 0.5, then the cut is made close to halfway through the edge.
Art Contest Submission (5 Points)
Do some interesting combination of your techniques above, and save the result as an .off file using the saveOffFile
button in the menu. You should submit your .off files, along with screenshots. Feel free to submit multiple .off files, including interesting bugs!


Exactly Sized Fastener¶
Using the parts made in Component Parts, we’ll create a
Fastener
that utilises the Fastener Build Cycle.
Tip
Evaluation, selection, and application are fundamental concepts for using fasteners as more than just floating objects, read Fastener Build Cycle to learn more.
Fastener¶
For this example, we’ll create a WoodScrew
and Anchor
that are
perfectly sized.
from cqparts_fasteners.fasteners import Fastener
from cqparts_fasteners.utils import VectorEvaluator, Selector, Applicator
from cqparts.constraint import Fixed, Coincident
class EasyInstallFastener(Fastener):
# The origin of the evaluation is to be the target center for the anchor.
Evaluator = VectorEvaluator
class Selector(Selector):
def get_components(self):
anchor = Anchor(
height=10,
)
# --- Define the screw's dimensions
# Get distance from anchor's center to screwhead's base
# (we'll call that the "anchor's slack")
v_rel_center = anchor.mate_center.local_coords.origin
v_rel_screwhead = anchor.mate_screwhead.local_coords.origin
anchor_slack = abs(v_rel_screwhead - v_rel_center)
# The slack is along the evaluation vector, which is the same
# as the woodscrew's axis of rotation.
# Find the screw's neck length
# This will be the length of all but the last evaluator effect,
# minus the anchor's slack.
effect_length = abs(self.evaluator.eval[-1].start_point - self.evaluator.eval[0].start_point)
neck_length = effect_length - anchor_slack
# Get thread's length : 80% of maximum
thread_maxlength = abs(self.evaluator.eval[-1].end_point - self.evaluator.eval[-1].start_point)
thread_length = thread_maxlength * 0.8
# Create screw
screw = WoodScrew(
neck_length=neck_length,
length=neck_length + thread_length,
)
return {
'anchor': anchor,
'screw': screw,
}
def get_constraints(self):
last_part = self.evaluator.eval[-1].part
return [
Coincident(
self.components['screw'].mate_threadstart,
Mate(last_part, self.evaluator.eval[-1].start_coordsys - last_part.world_coords),
),
Coincident(
self.components['anchor'].mate_screwhead,
self.components['screw'].mate_origin,
),
]
class Applicator(Applicator):
def apply_alterations(self):
screw = self.selector.components['screw']
anchor = self.selector.components['anchor']
screw_cutter = screw.make_cutter() # cutter in local coords
anchor_cutter = anchor.make_cutter()
# screw : cut from all effected parts
for effect in self.evaluator.eval:
screw_coordsys = screw.world_coords - effect.part.world_coords
effect.part.local_obj = effect.part.local_obj.cut(screw_coordsys + screw_cutter)
# anchor : all but last piece
for effect in self.evaluator.eval[:-1]:
anchor_coordsys = anchor.world_coords - effect.part.world_coords
effect.part.local_obj = effect.part.local_obj.cut(anchor_coordsys + anchor_cutter)
Using the Fastener¶
Now that we’ve created a Fastener
that will pick, place, and alter
the part geometry it interfaces with, let’s try it out!
First let’s make some parts to join together
class ConnectedPlanks(cqparts.Assembly):
fastener_class = EasyInstallFastener
def make_components(self):
# Wood panels
p1 = WoodPanel(
length=40, width=30,
_render={'alpha': 0.5}
)
p2 = WoodPanel(
length=40, width=30,
_render={'alpha': 0.5}
)
# Fastener
fastener = self.fastener_class(parts=[p1, p2])
return {
'panel1': p1,
'panel2': p2,
'fastener': fastener,
}
def make_constraints(self):
# Pull out component references
p1 = self.components['panel1']
p2 = self.components['panel2']
fastener = self.components['fastener']
return [
# Assembly's origin on panel1
Fixed(p1.mate_origin),
# Join panel at the corner
Coincident(
p2.mate_end,
p1.get_mate_edge(p2.thickness),
),
# Fastener assembly in the middle of a
Coincident(
fastener.mate_origin, # mate_origin's -Z axis is used for evaluation
p2.mate_end + CoordSystem(
origin=(0, 0, 25), # 25mm above panel1 surface
xDir=(0, -1, 0) # rotate so anchor faces inside
),
),
]
And to see what we’ve made:
>>> connected_exact = ConnectedPlanks()
>>> print(connected_exact.tree_str(name='connected'))
connected
├─ fastener
│ ├○ anchor
│ └○ screw
├○ panel1
└○ panel2
>>> display(connected_exact)


{% load static %}
Results
Voting Day
Number of seats won by each party:
Party Names
{% for i in PartyName %}
{{i}}
{% endfor %}
Number of Seats Won
{% for i in Party_seats %}
{{i}}
{% endfor %}
Members of the HOR
{% for k in Candlist %}
{{k}}
{% endfor %}


--- layout: post title: "REST lessons learned" description: "This post provides an overview of some lessons I learned while bulding non-trivial REST APIs." date: 2013-04-29 12.04 UTC tags: [Software Design, Services, REST, Article Series] --- {% include JB/setup %}
{{ page.description }}
Last year I spent a good deal of the year designing and implementing a handful of non-trivial REST APIs for a customer of mine. During that process, I learned some small lessons about the design of RESTful systems that I haven't seen described elsewhere, and I want to share these lessons with you.
In order to learn the concepts and philosphy behind REST, I think that REST in Practice is a great resource (pun intended), but when it comes to practical guidance, I find the RESTful Web Services Cookbook invaluable. It's full of useful and concrete tips and tricks for building RESTful APIs, but I don't remember reading about the following lessons, that I had to learn the hard way.
There's so much hype and misrepresentation about REST that I have to point out that when I'm talking about REST, I mean full-on, level 3 REST, with resources, verbs, hypermedia controls and the works.
Each of these lessons deserves a small article of its own, but here's an overview:
I hope you find these tips useful.


Delicious Drinkies
Here's a short list of some of my favorite drinks. Click on an image to see the drinks' contents and location where you can find them (fyi almost all of them are from Sonic).
Home
Delicious Drinkies
Yummy Foods
DYI Foods
About me


As the name suggests, this library aims to facilitate the calculations of several metrics using a multi-dimensional confusion matrix.
Provides a set of feature, not only to obtain matrix such as accuracy, precision and f1Score, but also matrix normalization, cloning, numberOfPredictions, etc.
This library was inspired on scikit-learn confusion-matrix written for python. Our goal is to create the same concept for the javascript world.
Run the following command:
npm install confusion-matrix-stats
You just need to create a new Confusion Matrix
instance:
const confusionMatrix = new ConfusionMatrix({
labels: ["Happiness", "Sadness", "Disgust"],
matrix: [[50, 2, 3],
[8, 50 ,5],
[2, 5 ,50]]
});
And then, call the function to obtain the desired metric:
// Calculates the accuracy value for the all matrix.
const accuracy = confusionMatrix.accuracy();
For each metric calculation, is possible to define a different configurations in order to fine tune the calculation formula:
// Calculates the f1Score, only for "sadness" class, using the Macro average method.
const labelAccuracy = confusionMatrix.f1Score({ label: "Sadness", average: AverageMethod.Macro});
You have in here examples for different languages/frameworks.
You can the library documentation here.
Please, give us your feedback here! Also, participate in this project using<EMAIL_ADDRESS>email contact.
Thank you!
Generated using TypeDoc


--- layout: default nav: attributes > ic-target ---
ic-target
- The Target AttributeThe ic-target
attribute tells Intercooler the response from a request should be used to replace
a different element than the current one. This is commonly used with action attributes, for example to make
a button replace a div in the UI.
The value of the ic-target
attribute should be a valid CSS/JQuery selector.
ic-target
has no effect on dependencies..
Here is a simple button that updates a div on click:

0 Clicks
 <button ic-post-to="/update" ic-target="#target">Update Div</button>
Note that the response to the button click is the content to swap in for the div, not the button.
Here is an example of an input that posts its input to the server to validate it, replacing the enclosing div (using standard Boostrap error classes.)

 Enter Email: <input type="text" class="form-control" name="email" ic-post-to="/verify_email" ic-target="#emailDiv">


Toggle navigation
UIUC Sports Forum
ARC
CRCE
Armory
Recreation
Working Hours
Gyms
CRCE Website
ARC Website
Soccer
Basketball
Squash
Atheletic (Track)
Volleyball
Table Tennis
Multi Purpose Halls
CRCE Soccer
CRCE Basketball
CRCE Squash
CRCE Track
CRCE Volleyball
CRCE Table Tennis
CRCE Multipurpose Halls


Every path element is drawn at the same time with a small delay at the start. This is currently the default animation.
Each line is drawn asynchronously. They all start and finish at the same time, hence the name `async`.
Each path element is drawn one after the other. This animation gives the best impression of live drawing.


CSE521
Trends
Triggers
Sign Up
Login
Welcome
×
Message:
This alert box could indicate a neutral informative change or action
xxx xx, xxxx
Today
#
Thing
Property
Comparator
Value
Targets
Message
Actions
Add a Trigger
Cancel
Save
Email:
Password:
Confirm password:
Email:
Password:
Type:
Select a type
SMS
Email
Address:


--- layout: post title: "@Disclosedtech: Edsurge, Speakaboos, and Homer" date: 2017-01-27 12:35:00 +0000 tags: image: https://s3.amazonaws.com/hackedu/2017-01-27-pigeon.jpg imagecredits: https://www.flickr.com/photos/hamsters/3635376928 ---
"Speakaboos Acquires Homer to Inspire Kids to Love and Learn to Read," Edsurge wrote on January 20, 2017. This article fails to disclose that Speakaboos, Homer, and Edsurge share an investor: Deborah Quazzo.
For more information about this disclosure alert, read this blog post.


--- layout: post status: publish published: true title: XSD Groups author: display_name: Tomas Restrepo login: tomasr email<EMAIL_ADDRESS>url: http://winterdom.com/ author_login: tomasr author_email<EMAIL_ADDRESS>author_url: http://winterdom.com/ wordpress_id: 385 wordpress_url: http://winterdom.com/2003/06/xsdgroups date: '2003-06-22 08:58:52 +0000' date_gmt: '2003-06-22 08:58:52 +0000' categories: - XML tags: [] comments: [] ---
While doing a couple of "fixes" on some schemas this past
week, I rediscovered XSD named groups. For some reason, it made me inexplicably happy.
Granted, I won't take to the extreme Don does,
though; I still rely heavily on named complexTypes :)


As a young man I was fascinated by hallucinogenic drugs, as were many of my peers. My earliest exposure to the topic was through the writings of 'beat' authors such as Allen Ginsberg (The Yage Letters) who I was reading at age 14. By the age of sixteen most of my friends were interested in LSD and only used plant source hallucinogens as a last resort. I differed in that such plants always held a singular attraction for me. My first psychedelic experience was with morning glory seeds and I often returned to them, even though LSD or other synthetic drugs were readily available in my circle of friends. The following is an account of one of my experiences with morning glory seeds.
I set aside a Saturday for the 'trip'; a weekend when my parents would be out of town. My 'sitter' was my girlfriend, who came prepared for the day with a homework assignment and other things to occupy her time. I consumed the seeds (chewing) on an empty stomach early in the morning. Within an hour I felt the familiar effects and lay down to ride out the nausea.  A lot happened that day; visions of copulating dragons covering the ceiling among other interesting visuals. One particular CEV is of more importance and prompted me to write this.
Due to a medical condition I had been forced to walk on crutches for approximately 3 years, from the age of 3 through 6. I had a total mental block to those years, remembering nothing from the day I 'heard the news' from a doctor (I remembered my mother crying) until approximately two weeks after I stopped using the crutches. I had started school as a 'crippled boy.' and remembered literally not one single event from my first 1 1/2 years of school. In retrospect, I realize that I was probably a little 'fixated' on this as an adolescent.
At the peak of the experience I was a little overwhelmed by the dragons, and decided to close my eyes. I found myself in an immense grey room, watching a conveyer belt speed by. On the belt were boxes with open tops. I sensed that they contained something important. I started to run and caught up with a box. Looking into the box I found it contained a scene from my childhood, acted out like a little play inside this box. I watched myself at five years old 'acting out' against another child who taunted me about my crutches. Each box contained another scene; some dramatic like the first, others very mundane. I spent a long time looking at these boxes, until I was too tired to run in my dream.
At the end of a very long day as the effects diminished, my girlfriend told me I had spent most of it with my eyes closed, groaning and tossing as if having a bad dream. She had followed my instructions perfectly; 'Don't bother me unless I appear to be doing something self destructive.'
I am now 54 years old and haven't used any intoxicating substance in over 20 years. I submit this as an example of the positive impact psychedelics can sometimes have. I spent a little time during the following year 'integrating' those new memories into my concept of self, and then pretty much moved on. Without that morning glory experience, I might very well still be trying to remember part of my childhood.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


{% extends "base-documentation.html" %} {% block documentation %}
Liftpass makes managing prices of virtual goods and rewards for IAP easier. Get started by installing the server, and jumpy into our getting started guide to start managing your prices and rewards.
Fundamentally Liftpass manages prices of virtual goods and the rewards for in-app purchases. In conjunction with the SDK, Liftpass enables developers to iterate on those prices and target specific users with customized prices based on their progress in the application.
At the moment the SDK requests a new set of prices the Liftpass server figures out based on the analytics recorded about the user which set of prices the user should receive.


{% include common/meta.html %} {% include common/libraries.html %}
Check out what we are doing in Salem to minister to those in need
Purchase clothing that makes a difference. Proceeds go to feeding, clothing, and transitioning homeless.
{% endfor %}{{quote.text}}
{{quote.verse}}
Our online contribution system is available here
BBSM
PO Box 13864
Salem OR, 97309


Purpose:
Imagine you have a couple free hours after work and you want to meet up with an old friend for snacks and maybe a few drinks. But where?
Any urban dweller knows that even traveling small distances through the bustling city can feel like it takes forever. That's why I created Middle Ground - a program that finds a restaurant closest to the midpoint between two addresses.
Best Practices:
As Middle Ground is still in a work in progress, there are a few best practices to keep in mind while using the program. Since the program returns a restaurant within 500 meters of the midpoint between two addresses, it is best suited for use in densely populated urban areas where it would be rare not to have a dining establishment within that distance of any address.
Middle Ground works best in densely populated areas, such as Philadelphia or New York and their surrounding suburbs. Locations in different cities separated by a long stretch of highway may not have a rest stop near the midpoint, though this issue has been partially resolved by automatically increasing the radius of the midpoint to 5000 meters if there is no establishment within 500 meters.
It is also critical that users are careful to type in the correct address before pressing Enter. There is not currently an option to edit the address if entered incorrectly and instead the program must be restarted. However, there are plans to add that function to Middle Ground in the near future.


October 26th
October 26th Notes
Lecture/Lab
- Video of guy and daughters speaking different languages. Polygot family.
- Guy ran from San Fransico to New York, 3,067 miles, 72 miles a day in 6 weeks with one day of rest. From city hall steps to city hall steps. Limits of human preformance.
Paul: SocketStress demonstation
- Use Python scapy
- Chooses a random port for source
- Destination port and IP are specified
- Sends packet, if it gets a response, then sends a reply with a flag of A (for ACK) and a window of 0
- When it times out the counter incriments
- Specifies x number of threads (50) and has them run
- iptables, makes it drop legit ACK packets
- If you ever get into python, check out scapy, good for packet sniffing
- Modify packets on the fly, need sudo permission
- Can effect routers/nodes in the network inbetween
- Need to specify ip address of target (webserver or computer), and the port they run on
- Use a port scanner (nmap) to find port of target. Also ARP for MAC addresses, ect.
- Have to use a full SYN request, so it knows your MAC address, etc.
- Can use wireshark to view packets as they pass through
- Uses up memory till it crashes
- Couldn't stop it, lol


Carz command usage can be completely disabled in the config to allow for full immersion of role-play by using signs for every Carz function. This includes: buying a car, upgrading a car, and refueling your car. Ideally you could have a different building for each of these purposes.
If Carz is linked to an Economy plugin, the cost of the purchase will be displayed at the bottom of the sign.
You are able to override the default cost by entering a number at the bottom (forth line) of the sign, which will be the new cost of the purchase.
A Car Purchase will give the ability for the player to own a car, the type of Car to purchase will be specified on the third line.
For a more immersive experience, various shops could sell certain types of cars which offer different features.
A Car's default speed can be increased through the ability of an upgrade. Each Car type will have a maximum upgrade speed, that when reached will prevent further upgrades.
A Car's fuel will need to be refilled regularly so it doesn't run out while driving. This can be achieved by using a Refuelling the car, which will set the amount of fuel to the Car's max capacity.
If Economy is enabled, you can configure the cost to adjust to the amount of fuel remaining. i.e. if there is 1/2 of fuel remaining in the car, the cost will be 1/2 of the original.
View all the available cars to purchase using a GUI. A summary of information will be displayed when hovering over an entry. To request a purchase simply click an entry.
If Economy is enabled, you will see the economy cost in the details.


“Anāsannavarā etā,
niccameva vijānatā;
Gāmā araññamāgamma,
tato gehaṁ upāvisi;
Tato uṭṭhāya pakkāmi,
anāmantetvā posiyo”ti.
… Posiyo thero ….

I went from the village to the wilderness;
from there I entered a house.
Though I was there to be fed,
I got up and left without taking leave.


A good thing about Trump: He’s keeping all his campaign promises.
A bad thing about Trump: He’s keeping all his campaign promises.


404 - Page not found Sorry, we can’t find that page that you’re looking for. You can try again by going back to the homepage.


Source code for delphin_6_automation.database_interactions.general_interactions
__author__ = "Christian Kongsgaard"
__license__ = "MIT"
__version__ = "0.0.1"
# -------------------------------------------------------------------------------------------------------------------- #
# IMPORTS
# Modules:
# RiBuild Modules:
from delphin_6_automation.database_interactions.db_templates import delphin_entry as delphin_db
from delphin_6_automation.file_parsing import delphin_parser
from delphin_6_automation.database_interactions.db_templates import result_raw_entry as result_db
from delphin_6_automation.database_interactions import delphin_interactions as delphin_interact
from delphin_6_automation.database_interactions import material_interactions
from delphin_6_automation.database_interactions import weather_interactions
# -------------------------------------------------------------------------------------------------------------------- #
# MATERIAL INTERACTIONS
[docs]def download_raw_result(result_id: str, download_path: str) -> bool:
"""
Downloads a result entry from the database.rst.
:param result_id: Database entry id
:param download_path: Path where the result should be written
:return: True
"""
result_obj = result_db.Result.objects(id=result_id).first()
delphin_parser.write_log_files(result_obj, download_path)
delphin_interact.download_result_files(result_obj, download_path)
return True
[docs]def queue_priorities(priority: str)-> int:
"""
Generate a queue priority number.
:param priority: High, medium or low priority
:return: Priority number
"""
priority_list = [obj.queue_priority
for obj in delphin_db.Delphin.objects.order_by('queue_priority')]
min_priority = min(priority_list)
max_priority = max(priority_list)
span = max_priority - min_priority
if priority == 'high':
priority_number = int(max_priority)
elif priority == 'medium':
priority_number = int(span * 0.5 + min_priority)
elif priority == 'low':
priority_number = int(span * 0.25 + min_priority)
else:
raise ValueError('priority has to be: high, medium or low. Value given was: ' + str(priority))
return priority_number
[docs]def add_to_simulation_queue(delphin_file: str, priority: str)-> str:
"""
Uploads and adds a Delphin project file to the simulation queue.
:param delphin_file: Delphin 6 project file path
:param priority: High, medium or low priority
:return: Database entry id
"""
priority_number = queue_priorities(priority)
simulation_id = delphin_interact.upload_delphin_to_database(delphin_file, priority_number)
return simulation_id
[docs]def is_simulation_finished(sim_id: str) -> bool:
"""
Checks if a Delphin project entry is simulated or not.
:param sim_id: Database entry to check
:return: True if it is simulated otherwise returns False.
"""
object_ = delphin_db.Delphin.objects(id=sim_id).first()
if object_.simulated:
return True
else:
return False
[docs]def list_finished_simulations() -> list:
"""
Returns a list with Delphin entry ID's for simulated entries.
:return: List
"""
finished_list = [document.id
for document in delphin_db.Delphin.objects()
if document.simulated]
return finished_list
[docs]def download_full_project_from_database(document_id: str, folder: str) -> bool:
"""
Downloads a Delphin project file from the database.rst with all of its materials and weather.
:param document_id: Database entry id
:param folder: Path where the files should be written.
:return: True
"""
delphin_interact.download_delphin_entry(document_id, folder)
material_interactions.download_materials(document_id, folder)
weather_interactions.download_weather(document_id, folder)
return True


SMD (SOT-23-5) Adjustable Voltage Regulator 1.2 A - VS5AB
Summary
Name: SMD (SOT-23-5) Adjustable Voltage Regulator 1.2 A
ID: VREG-SO235-X-ADJU-AB
Hex ID: VS5AB
WebPage: https://github.com/oomlout/oomlout-OOMP/wiki/VREG-SO235-X-ADJU-AB
Short URL: http://oom.lt/VS5AB
Revision History: https://github.com/oomlout/oomlout-OOMP/blob/master/parts/VREG-SO235-X-ADJU-AB/
| Type |
Size |
Color |
Description |
Index |
VREG Voltage Regulator |
SO235 SMD (SOT-23-5) |
X
|
ADJU Adjustable |
AB 1.2 A |
Images
About
This part is awaiting a description.
Specifications
| Info |
Value |
| Type |
Voltage Regulator |
| Size |
SMD (SOT-23-5) |
| Description |
Adjustable |
| Index |
1.2 A |
Extra Details
Spotted a mistake, want to add more? Let us know<EMAIL_ADDRESS>All images and resources are licensed [CC BY-SA] unless otherwise stated (ie. the datasheets)


Student at Girls Who Code Summer Immersion Program
Description:
Language Used: Scratch
Paddle ball is a game in which a ball bounces around a window, and the player moves a paddle back and forth across the screen to try and keep the ball up in the air.
Description:
Each turn, a player repeatedly rolls a die until either a 1 is rolled or the player holds and scores the sum of the rolls (i.e. the turn total). At any time during a player's turn, the player is faced with two options:
Roll: If the player rolls a 1, the player scores nothing for this turn, and it becomes the next player's turn. If the player rolls a number 2 - 6, the number on the die is added to the player's turn total, and the player's turn continues.
Hold: The player turn total is added to the player's overall score, and it becomes the next player's turn.
Language Used: Scratch
Description:
Include a clear user interface.
Allow users to create a playlist.
Allow users to play or stop the playlist entirely.
Allow users to choose between at least 3 different songs.
Language Used: Scratch
Description:
You can get a similar effect if you look at each pixel’s RGB, or red green blue, values. RGB values work like light.
If you add all the values together, you get a number that correlates to how “light” the color is. Lighter colors get colorized yellow. Medium/light colors get coded as light blue. Medium/dark colors are red and very dark colors get coded as dark blue.Language Used: Python
Description:
Description:
Description:


Hexo 2016-04-29 Thanks for using kw-doc which is based on Hexo and its template from its own documentation.


--- title: Dog Paintings published: true description:
Meet Cookie and Pepper.
These are my family's dogs. We rescued them from the shelter back in 2013. Because they are rescues, we don't really know what breed they are. The shelter said they were both black lab mixes of some sort. When we first got them, many people thought Cookie was momma and Pepper was her baby (Pepper was much slimmer back then), but they are not related. We got both of them simply because they were in the same pen. They have been great companions ever since, bringing us many smiles and laughs.
Quarantine has forced me to explore different activities to engage my mind, take up my time, and make me happy. I bought a couple canvases off of Amazon so I could make painting one of these activities. I do not really have a need for paintings in my house and I don't particularly enjoy usless trinkets lying around, so I knew I was going to be painting gifts for other people. Mother's day allowed me to get a couple canvases off my hands, but I was stumped after that.
Maybe it was a FaceTime call where my family held up Cookie and Pepper for me to see, or a video my sister sent of them being goofballs, but something planted the idea in my head to paint portraits of my dogs, for my dogs. Now I am not an art student, and in no way do I identify myself as an artistic person. However, I am a stubborn, hard-working, perfectionist, so once I got this portrait idea in my head I could not let it go.
I picked 2 pictures I thought I could make a painting out of:
| Pepper's picture | Cookie's picture |
|---|---|
I sketched on the canveses first, going through a whole eraser until I got them the way I wanted, then took forever trying to paint black dogs and not just black blobs.
In the end, I was pleasantly surprised with the way my paintings turned out, so much so that I wanted to share them. Guess it goes to show that if you put your mind to something you really can make it happen.
| Pepper's painting | Cookie's painting |
|---|---|
I think I might make painting a new hobby now. It is very relaxing and when you're done, you feel accomplished. There is something about creating something with your own brain and hands that is extremly satisfying. Though if I am going to continue to paint I will need to find new muses. Maybe I will paint my pet ball python next?? If you have any suggestions let me know. I'll also have to figure out what to do with my paintings.
Anyways, if there's anything you can take from this post, besides your daily dose of dog cuteness, of course, maybe it is that you can do that activity that you thought was outside of your abilities. If you think it will be fun, go for it! Maybe you will discover a hidden talent. Regardless you will have fun and really that is all that matters. Make some quarantine memories, explore new depths of your soul, maybe, go paint some dogs.


Phone Scam
Home
Favourite
Check
Contact
Sign in
Home
Favourite
Check
Case Study
(current)
Contact
Sign in
Real Case Study
Crime Alert – Phone Deceptions
Copyright by
Hong Kong Police Force


The sketch club was created for sketch artists of all kinds. We may be rough around the edges, but no first sketch is without flaws. Let's draw together, collaborate together, and build our sketch community.


An implementation of various learning algorithms based on Gradient Descent for dealing with regression tasks. The variants of gradient descent algorithm are : Mini-Batch Gradient Descent (MBGD), which is an optimization to use training data partially to reduce the computation load. Stochastic Gradient Descent (SGD), which is an optimization to use a random data in learning to reduce the computation load drastically. Stochastic Average Gradient (SAG), which is a SGD-based algorithm to minimize stochastic step to average. Momentum Gradient Descent (MGD), which is an optimization to speed-up gradient descent learning. Accelerated Gradient Descent (AGD), which is an optimization to accelerate gradient descent learning. Adagrad, which is a gradient-descent-based algorithm that accumulate previous cost to do adaptive learning. Adadelta, which is a gradient-descent-based algorithm that use hessian approximation to do adaptive learning. RMSprop, which is a gradient-descent-based algorithm that combine Adagrad and Adadelta adaptive learning ability. Adam, which is a gradient-descent-based algorithm that mean and variance moment to do adaptive learning. Stochastic Variance Reduce Gradient (SVRG), which is an optimization SGD-based algorithm to accelerates the process toward converging by reducing the gradient. Semi Stochastic Gradient Descent (SSGD),which is a SGD-based algorithm that combine GD and SGD to accelerates the process toward converging by choosing one of the gradients at a time. Stochastic Recursive Gradient Algorithm (SARAH), which is an optimization algorithm similarly SVRG to accelerates the process toward converging by accumulated stochastic information. Stochastic Recursive Gradient Algorithm+ (SARAHPlus), which is a SARAH practical variant algorithm to accelerates the process toward converging provides a possibility of earlier termination.
| Version: | 3.0 |
| Published: | 2018-01-25 |
| Author: | Galih Praja Wijaya, Dendi Handian, Imam Fachmi Nasrulloh, Lala Septem Riza, Rani Megasari, Enjun Junaeti |
| Maintainer: | Lala Septem Riza <lala.s.riza at upi.edu> |
| License: | GPL-2 | GPL-3 | file LICENSE [expanded from: GPL (≥ 2) | file LICENSE] |
| URL: | https://github.com/drizzersilverberg/gradDescentR |
| NeedsCompilation: | no |
| In views: | MachineLearning |
| CRAN checks: | gradDescent results |
| Reference manual: | gradDescent.pdf |
| Package source: | gradDescent_3.0.tar.gz |
| Windows binaries: | r-devel: gradDescent_3.0.zip, r-release: gradDescent_3.0.zip, r-oldrel: gradDescent_3.0.zip |
| OS X binaries: | r-release: gradDescent_3.0.tgz, r-oldrel: gradDescent_3.0.tgz |
| Old sources: | gradDescent archive |
Please use the canonical form https://CRAN.R-project.org/package=gradDescent to link to this page.


HP 1,800
He was a british project that escaped from the war.And went with usa and hid in a warehouse and was a vigalanty
HP 800
She was a fbi himuside agent than one day she had ben in a graveyard something pulled her down to the ground and when she got back up she was stake


Web Standards - and why are they important?
- There are two important main institutes for standardization : World Wide Web Consortium (W3C) and Ecma International.
- Ecma International specifies EcmaScript (for browser it's called JavaScript).
- W3C specifies HTTP, HTML, CSS, XML, Ajax and "Web Components" and much more.
HTML Elements
I am located in a standard HTML element
Now we can also use
Hi there, since my element name includes a dash, you know that I am not one of HTML's standard elements.
Sensors API is here!
let sensor = new Gyroscope sensor.start();Modularized Web App Design
Using HTML standards make's it easy to share and re-use code between web pages, hybrid apps, dev teams, applications and companies.
Let's have a look at a (little) more advanced examples:
- https://scania.github.io/corporate-ui/ux-process/demo.html
- https://scania.github.io/corporate-ui/template/html-copy-paste/html-copy-paste.html
- https://scania.github.io/corporate-ui/presentation/web-standards/web-standards.html
JavaScript Engines and Polyfills
- Chrome and FireFox are using V8
- Internet Explorer is using Chakra
- Safari is using...
Polyfills are JavaScript functionallity to extend a browser to understand standards that wasn't built in to the browser when shipped.
Polyfills are naturally demanding a lot from the JavaScript engine, trying making it act like a browser that it's not.
The basic piece of advise: If your application itself is demanding a lot from the JavaScript Engine, be extra carefull using Polyfills. If your application are a singe page application spun out of control, you might want to re-design the application before using any Polyfills.


Empty aria-label
test
To determine if an empty aria-label
attribute is announced to assistive technologies, or affects the accessible name.
Example 01: empty aria-label
attribute
Code
<button aria-label="">Test one</button>
Results
- All browser / screen reader combinations currently ignore empty
aria-label
attributes. - An empty
aria-label
is not defined in the Chrome Accessibility Tree.


{% load i18n %}
{% trans 'Say to the caller' %}:
{% trans 'Please provide your full name.' %}
{{ case.field_staff.staff_id }}
{{ case.field_staff.name }}
{% trans "Give the caller three attempts to provide correct name as seen above." %}


Bordeaux dismiss Sankhare
by BeSoccerBordeaux confirmed the agreement reached with the midfielder Younousse Sankhare to terminate his contract. The footballer has therefore left the French club.
Younousse Sankhare has ended his ordeal at Bordeaux. The player has been separated from the team since September and he had still not made his competitive debut for the French side.
As a result of being isolated from the rest of the team, Bordeaux have decided to end the contract linking the club and the Senegalese player.
Featured links
- BREAKING NEWS: Mourinho replaces Pochettino at Tottenham
- The latest football transfers news and rumours
- Wales, golf, Madrid... in that order
- Luis Enrique returns to Spain national team
The African midfielder is now free to negotiate a contract with any team who are interested in his services.
Villarreal and Leganes are some of those clubs who tried to sign him this summer. It remains to be seen, now the player is free, whether any teams present an offer for the player.


Downloading S4
The current stable version is 0.6.0-incubating. You can verify your download by following these procedures and using these keys.
0.6.0 release
Focus on configurability and performance.
- Release notes
- Source release: s4-0.6.0-incubating-src.zip (asc, md5)
0.5.0 release
Complete refactoring aiming at a cleaner API and codebase, and introducing new tools for easing development and deployment
- Release notes
- Source release: s4-0.5.0-incubating-src.zip (asc, md5)
- Binary release: s4-0.5.0-incubating-bin.zip (asc, md5)
Older version
There is no 0.4.x release
Older version can be downloaded through github. See instructions here.


This namespace handles the Notification API.
- Source:
Members
-
<static> audio
-
Current audio file.
- Source:
Methods
-
<static> hasPermission() → {Boolean}
-
Check permission.
- Source:
Returns:
True if we have the permission- Type
- Boolean
-
<static> hasSupport() → {Boolean}
-
Checks if browser has support for notifications and add on chrome to the default api.
- Source:
Returns:
True if the browser has support.- Type
- Boolean
-
<static> init()
-
Register notification on incoming messages.
- Source:
-
<static> muteSound(external)
-
Mute sound.
Parameters:
Name Type Description external
boolean True if triggered from external tab. Default: false. - Source:
-
<static> notify(title, msg, d, force, soundFile, loop)
-
Shows a pop up notification and optional play sound.
Parameters:
Name Type Description title
Title msg
Message d
Duration force
Should message also shown, if tab is visible? soundFile
Playing given sound file loop
Loop sound file? - Source:
-
<static> playSound(soundFile, loop, force)
-
Plays the given file.
Parameters:
Name Type Description soundFile
string File relative to the sound directory loop
boolean True for loop force
boolean Play even if a tab is visible. Default: false. - Source:
-
<static> prepareRequest()
-
Ask user on first incoming message if we should inform him about new messages.
- Source:
-
<static> requestPermission()
-
Request notification permission.
- Source:
-
<static> stopSound()
-
Stop/remove current sound.
- Source:
-
<static> unmuteSound(external)
-
Unmute sound.
Parameters:
Name Type Description external
boolean True if triggered from external tab. Default: false. - Source:


Table Name: tabAssessment Plan
| Sr | Fieldname | Type | Label | Options |
|---|---|---|---|---|
| 1 | assessment_name |
Data | Assessment Name | |
| 2 | student_group |
Link | Student Group | Student Group |
| 3 | course |
Link | Course | Course |
| 4 | column_break_2 |
Column Break | ||
| 5 | assessment_group |
Link | Assessment Group | Assessment Group |
| 6 | maximum_assessment_score |
Float | Maximum Assessment Score | |
| 7 | grading_scale |
Link | Grading Scale | Grading Scale |
| 8 | section_break_5 |
Section Break | Schedule | |
| 9 | schedule_date |
Date | Schedule Date | |
| 10 | room |
Link | Room | Room |
| 11 | examiner |
Link | Examiner | Instructor |
| 12 | examiner_name |
Data | Examiner Name | |
| 13 | column_break_4 |
Column Break | ||
| 14 | from_time |
Time | From Time | |
| 15 | to_time |
Time | To Time | |
| 16 | supervisor |
Link | Supervisor | Instructor |
| 17 | supervisor_name |
Data | Supervisor Name | |
| 18 | section_break_20 |
Section Break | ||
| 19 | assessment_criteria |
Table | Assessment Criteria | Assessment Plan Criteria |
| 20 | amended_from |
Link | Amended From | Assessment Plan |
Inherits from frappe.model.document.Document
No docs
validate_assessment_criteria (self)
No docs
No docs
Validates overlap for Student Group, Instructor, Room


Using @supports not (transform: rotateX(45deg) )
In browsers that don't support a value of rotateX(45deg)
for the transform
property, the image below will be skewed 30 degrees along the x-axis instead.


Extendable
trait Extendable (View source)
Make a class dynamically extendable.
Properties
| static protected array | $extensions |
Methods
static bool
hasExtension(string $methodName)
Has this class been extended with a given method?
static
extend(string $methodName, callable $callable)
Add a method to the class.
static $object
mixin(object $object)
Mix in all the public methods of an object.
mixed
execDynamicClosure(Closure $closure, array $args)
Execute a static call with the correct class scope.
static mixed
execStaticCallable(Closure $closure, array $args)
Execute a static call with the correct class scope.
mixed
__call(string $methodName, array $args)
Magic Method for dynamic method names.
static mixed
__callStatic(string $methodName, array $args)
Magic Method for dynamic names of static methods.
Details
at line 36
static bool
hasExtension(string $methodName)
Has this class been extended with a given method?
at line 47
static
extend(string $methodName, callable $callable)
Add a method to the class.
at line 59
static $object
mixin(object $object)
Mix in all the public methods of an object.
at line 80
mixed
execDynamicClosure(Closure $closure, array $args)
Execute a static call with the correct class scope.
at line 95
static mixed
execStaticCallable(Closure $closure, array $args)
Execute a static call with the correct class scope.
at line 110
mixed
__call(string $methodName, array $args)
Magic Method for dynamic method names.
at line 134
static mixed
__callStatic(string $methodName, array $args)
Magic Method for dynamic names of static methods.


Hello, my name is Dongmin So and I joined the freecodecamp community in order to build my programming skills and ultimately develop a mobile game application that is recognized globally.
I am a Canadian student at the University of Waterloo, and have minor coding experiences with the languages scheme, python, C and javascript. Please take a look at some of the websites I have developed below and feel free give me any advice I can make on further improving my portfolio design.


Try out our Premium Member services: Virtual Legal Assistant, Query Alert Service and an ad-free experience. Free for one month and pay only if you like it.
IN THE HIGH COURT OF JHARKHAND AT RANCHI A. B. A. No. 522 of 2014 Jalaluddin Khan ...... ... Petitioner Versus The State of Jharkhand ..... ... Opposite Party -------- CORAM : HON'BLE MR. JUSTICE H. C. MISHRA ------ For the Petitioner : Mr. Mahesh Tewari, Advocate For the State : A.P.P. ------ 8/ 06.01.2015
Heard learned counsel for the petitioner and learned counsel for the State.
The petitioner is apprehending his arrest in connection with Jeraikela P.S. Case No. 8 of 2013 corresponding to G.R. No. 379 of 2013, for the alleged offences under Sections 379, 411 of the Indian Penal Code, Sections 4, 21 of the Mines Mineral Development (Regulation) Act and Section 37 of the Air Pollution Act.
Police case was instituted on the basis of the FIR filed by the Block Development Officer, Manoharpur, but so far as this petitioner is concerned, it is apparent from the FIR that offence is made out only under the MMDR Act and Air Pollution Act.
Learned counsel for the petitioner has submitted that the petitioner has been falsely implicated in this case and for the offence under these Acts, the prosecution has to be launched on the basis of complaint. Learned counsel has accordingly prayed for anticipatory bail.
Learned counsel for the State has opposed the prayer. In the facts of this case, I am inclined to grant anticipatory bail to petitioner, Jalaluddin Khan. Accordingly, it is directed that in the event of his surrender / arrest, the petitioner, named above, shall be released on bail, on furnishing bail bond of Rs. 10,000/- (ten thousand), with two sureties of the like amount each, to the satisfaction of Sri M.K. Sharma, learned Judicial Magistrate 1st Class, Porahat at Chaibasa, or his successor, in connection with Jeraikela P.S. Case No. 8 of 2013 corresponding to G.R. No. 379 of 2013, subject to conditions as laid down under Section 438(2) of the Code of Criminal Procedure.
( H. C. Mishra, J.) R.Kr.


LFE Programming Rules and Conventions
9 Common Mistakes
- Writing functions which span many pages (see Chapter 7, "Don't write very long functions").
- Writing functions with deeply nested if's receive's, case's etc (see
Chapter 7,
"Don't write deeply nested code"). - Writing badly typed functions (see Chapter 6, "Use tagged return values").
- Function names which do not reflect what the functions do (see Chapter 7, "Function names").
- Variable names which are meaningless (see Chapter 7, "Variable names").
- Using processes when they are not needed (see Chapter 5, "Assign exactly one parallel process to each true concurrent activity in the system").
- Badly chosen data structures (Bad representations).
- Bad comments or no comments at all (always document arguments and return value).
- Unindented code.
- Using put/get (see Chapter 6, "Use the process dictionary with extreme care").
- No control of the message queues (see Chapter 5, "Flush unknown messages" and "Time-outs" in the same chapter).


Data
Symbol
Color
Plot Style
Experiment
Undo & Redo
Language
Data
Reset
Add
Remove
Change
Symbol
Circle
Triangle
Icon
Square
Color
Blue
Purple
Plot Style
Scatter
Bar Chart
Experiment
Experiment A
Experiment B
Undo & Redo
Undo
Redo
Unwind
Rewind
Language
English
French


Examples¶
Here is a list of examples using pypresence:
Basic Rich Presence:
from pypresence import Presence
import time
client_id = '64567352374564' # Fake ID, put your real one here
RPC = Presence(client_id) # Initialize the client class
RPC.connect() # Start the handshake loop
print(RPC.update(state="Lookie Lookie", details="A test of qwertyquerty's Python Discord RPC wrapper, pypresence!")) # Set the presence
while True: # The presence will stay on as long as the program is running
time.sleep(15) # Can only update rich presence every 15 seconds
Rich Presence to show CPU usage:
import psutil
from pypresence import Presence
import time
client_id = '64567352374564' # Fake ID, put your real one here
RPC = Presence(client_id,pipe=0) # Initialize the client class
RPC.connect() # Start the handshake loop
while True: # The presence will stay on as long as the program is running
cpu_per = round(psutil.cpu_percent(),1) # Get CPU Usage
mem = psutil.virtual_memory()
mem_per = round(psutil.virtual_memory().percent,1)
print(RPC.update(details="RAM: "+str(mem_per)+"%", state="CPU: "+str(cpu_per)+"%")) # Set the presence
time.sleep(15) # Can only update rich presence every 15 seconds
Rich Presence to loop through quotes:
from pypresence import Presence
import time
import random
client_id = '64567352374564' # Put your Client ID here, this is a fake ID
RPC = Presence(client_id) # Initialize the Presence class
RPC.connect() # Start the handshake loop
quotes = [
"If you can dream it, you can achieve it.",
"Either write something worth reading or do something worth writing.",
"You become what you believe.",
"Fall seven times and stand up eight.",
"The best revenge is massive success.",
"Eighty percent of success is showing up.",
"Life is what happens to you while you’re busy making other plans.",
"Strive not to be a success, but rather to be of value.",
"The best time to plant a tree was 20 years ago. The second best time is now.",
"Everything you’ve ever wanted is on the other side of fear."
] # The quotes to choose from
while True: # The presence will stay on as long as the program is running
RPC.update(details="Famous Quote:", state=random.choice(quotes)) #Set the presence, picking a random quote
time.sleep(60) #Wait a wee bit
Furthermore, the following is a list of repositories which use pypresence


PBOC sets Yuan reference rate at 7.0217
by Omkar GodboleThe People's Bank of China (PBOC) has set the Yuan reference rate at 7.0217, beating the expected fix of 7.0209 and up from Wednesday's fix of 7.0118.
The People's Bank of China (PBOC) has set the Yuan reference rate at 7.0217, beating the expected fix of 7.0209 and up from Wednesday's fix of 7.0118.


Configure claim types map¶
There is an old history about claim types and the reason why some times authorization does not work as we expected. We recommend you to read this awesome blog post about it before to continue reading.
The problem is basically that Microsoft has their owns claim type names for RoleClaimType (http://schemas.microsoft.com/ws/2008/06/identity/claims/role) and NameClaimType (http://schemas.microsoft.com/ws/2008/06/identity/claims/name) and of course their own JWT validation library which does not follow the more modern standard OpenID Connect claim types.
> In samples/WebApp you’ll find an example of how to configure the mappings.
Configure the AuthorizationFallback¶
To configure the authorization fallback, in the method AddBalea
you have a parameter for the fallback:
In the ConfigureServices method of Startup.cs, register the Balea services:
services
.AddBalea(options =>
{
options.UnauthorizedFallback = (context) =>
{
context.Response.StatusCode = StatusCodes.Status403Forbidden;
return Task.CompletedTask;
};
})
.AddConfigurationStore(Configuration);
The UnauthorizedFallback
is a RequestDelegate so you can configure the behavior when user is not authorized.
Out-of-the-box Balea provides a AuthorizationFallbackAction
class that defines common fallback actions to be used when user is not authorized:
Redirect result to MVC action:
public static RequestDelegate RedirectToAction(string controllerName, string actionName)Redirect result:
public static RequestDelegate RedirectTo(string uri)Forbidden status response:
public static RequestDelegate Forbidden
We can modify the code like this:
services
.AddBalea(options =>
{
options.UnauthorizedFallback = AuthorizationFallbackAction.Forbidden;
})
.AddConfigurationStore(Configuration);


My name's Logan Weber, and I study computer science as a Master's student at UW. I do research with PLSE and SAMPL. My research interests are at the intersection of programming languages and systems.
Currently, I'm working on two projects: Relay, a functional intermediate representation for machine learning applications, and MicroTVM, an effort to bring deep learning to bare-metal devices. Both of these projects are a part of the TVM project.
Q: Why does your picture look like Spongebob in that one episode where he was in Sandy's tree dome and he wasn't allowed to drink water?
A: dude idk


--- layout: post title: ! 'Rails 1.2 RC1: New in Action Pack' categories: - releases author: josh published: true date: 2006-11-26 16:32:00.000000000 +00:00 ---
With all respect to the reporter from the Edge, here are a few tasty bits from ActionPack in Rails 1.2 (CHANGELOG). (compiled by Geoffrey Grosenbach).
You can now access nested attributes in RJS:
page['foo']['style']['color'] = 'red' # => $('foo').style.color = 'red';
Forms now use blocks instead of end_form_tag
(notes from DHH):
<% form_tag(products_url) do %>
<%= text_field :product, :title %>
<%= submit_tag "Save" %>
<% end -%>
And how many blogs have you visited that say “Last updated 60 days ago”? Years and months have been added to distance_of_time_in_words
, so you’ll see “2 months ago” or maybe even “5 years ago” now.
Uncaught exceptions raised anywhere in your application will cause RAILS_ROOT/public/500.html
to be read and shown instead of just the static “Application error (Rails).” So make it look nice if you aren’t using it already!
There is a new head(options = {})
method for responses that have no body.
head :status => 404 # return an empty response with a 404 status
head :location => person_path(@person), :status => 201
You can declare specific file extensions exempt from layouts. Bring on the CSS, PDF, and graphic generating plugins!
ActionController::Base.exempt_from_layout 'rpdf'
RESTful resources automatically get a params[:format]
option that can force a content type. If :format is specified and matches a declared extension, that mime type will be used in preference to the “Accept” header. This means you can link to the same action from different extensions and use that fact to determine output (cheat sheet).
class WeblogController < ActionController::Base
def index
@posts = Post.find :all
respond_to do |format|
format.html
format.xml { render :xml => @posts.to_xml }
format.rss { render :action => "feed.rxml" }
end
end
You can also register your own custom MIME types. These will be automatically incorporated into controllers so you can use them in respond_to
blocks and as file :format
extensions.
Mime::Type.register(string, symbol, synonyms = [])
Mime::Type.register("image/gif", :gif)
Finally, ActionController.filter_parameter_logging
makes it easy to remove passwords, credit card numbers, and other sensitive information from being logged when a request is handled.
filter_parameter_logging 'password' # Don't log fields that match 'password'
Routing has been significantly rewritten for speed and consistency. One of the benefits is that you can use named routes and RESTful routes in your mailer templates.
class MyMailer < ActionMailer::Base
include ActionController::UrlWriter
default_url_options[:host] = 'my_site.com'
assert_response
now supports additional symbolic status codes.
assert_response :success # You know this one
assert_response :ok
assert_response :not_found
assert_response :forbidden
Added the rulin’ assert_select
for CSS selector-based testing (cheat sheet). Use this instead of assert_tag
from now on.
assert_select "a[href=http://assert_select_rules.com]", @item.url, "Should have a link"
assert_select "div#products", nil, "Should show a products div on the page"
You’ll see warnings when you run your test suite. Here are a few that have been replaced with better syntax:
image_tag
calls


1 day ago
We meet at MCD Partners (mcdpartners.com) in New York City (138 W 25 St, between 6 and 7 Av), typically on the third Wednesday of the month.
1 day ago
This event will take place at Appboy's NYC office where we will welcome two members of the Etsy mobile team to discuss the company’s transition to providing individual apps for buyers and sellers. Many popular staples like Facebook and Foursquare have switched from the do-it-all Swiss Army knife approach to singular specialized offerings. When done right, this app constellation model can create simple and clean user experiences, or alternatively, can confuse users when they lose functionality. We’re excited to learn what went into Etsy’s decision and the results they’ve seen so far.


{% extends "_base.html" %} {% block main %} This form shows you how to implement CSRF with htmx, using the hx-headers attribute. Number: Check if odd
This form shows you how to implement CSRF with htmx, using the hx-headers attribute.
hx-headers
Awaiting interaction...


Four rockets fired from Syria toward Israel
Four rockets fired toward Golan Heights intercepted by Iron Dome. No injuries reported, no rockets exploded in Israeli territory.
by Elad BenariA siren was sounded on Tuesday morning, just before 5:00 a.m., in the Golan Heights area. Residents reported hearing explosions.
The IDF confirmed that four launches were identified from Syria towards Israeli territory which were intercepted by the Israeli air defense systems.
No hits on Israeli communities were identified. There were no reports of injuries.
There are no special instructions for the communities in the Galilee and the Golan and residents are advised to continue with their regular routine.
At the same time, media outlets in Syria reported explosions that were heard in the Damascus airport area.


Money play. How should Red play 66? After your play are you taking White's double?
pips Red=173 White=119
(CorrectAnswer= 0/0, ErrorScore= 0)
Thanks to Simon Woodhead for the trial version of his new version of bglog which creates the diagrams on this site. Note the highlights on the red checkers and the turn indicator (bottom right). There are other new features which I haven't yet used.
There is only one play which lets Red take White's impending double and that is 22/16(2), 13/7(2).
This play keeps the pressure on White's blots, doesn't kill any checkers and keeps a measure of connectivity with the checker stranded on the 24-pt. The play loses a higher percentage of gammons than other plays but crucially the play also wins 33% of the time. All other plays are just too passive to let Red accept the cube.
It takes bravery to take positions such as this but that is what winning backgammon is all about.
There is only one play which lets Red take White's impending double and that is 22/16(2), 13/7(2).
This play keeps the pressure on White's blots, doesn't kill any checkers and keeps a measure of connectivity with the checker stranded on the 24-pt. The play loses a higher percentage of gammons than other plays but crucially the play also wins 33% of the time. All other plays are just too passive to let Red accept the cube.
It takes bravery to take positions such as this but that is what winning backgammon is all about.
1. Cubeful 2-ply 22/16(2) 13/7(2) Eq.: -0.961 0.337 0.064 0.002 - 0.663 0.327 0.009 2. Cubeful 2-ply 24/18 13/7(2) 9/3 Eq.: -1.000 (-0.039) 0.283 0.041 0.001 - 0.717 0.200 0.007 3. Cubeful 2-ply 13/7(2) 9/3 8/2 Eq.: -1.000 (-0.039) 0.266 0.042 0.001 - 0.734 0.183 0.007 4. Cubeful 2-ply 13/7(4) Eq.: -1.000 (-0.039) 0.273 0.039 0.001 - 0.727 0.200 0.008 5. Cubeful 2-ply 13/7(3) 9/3 Eq.: -1.000 (-0.039) 0.259 0.035 0.001 - 0.741 0.236 0.010


Halloween Jump Scare As Asteroid Whizzes Past Earth In Near Miss
According to NASA Near-Earth Objects or NEOs, are all comets and asteroids on orbital trajectories that come astronomically close to our planet, in a majority of cases harmlessly zipping past Earth without threatening impact
A space rock identified as C0PPEV1 was spotted in the early morning hours of 31 October by the Catalina Sky Survey, based in Arizona, and soon after by New Mexico's Magdalena Ridge Observatory and Arizona's Mt. Lemmon Steward Observatory, writes CNET.
Data from these early observations showed the asteroid coming closer to the surface of our planet than any other close approach in NASA's database of known near-Earth objects.
Simulations showed the asteroid passing above southern Africa within 3,852 miles (6,200 km) at the moment of closest approach, around 7:45 a.m. PT.
Just to give one an idea of how close this is, many telecommunications satellites orbit at an altitude of 22,236 miles (35,786 km).
The late October asteroid posed no actual threat, as it passed by Earth at a speed of nearly 27,000 miles per hour (43,452 kph) and was likely only between 2 and 7 meters in diameter, which is considered too small to do major damage even upon impact.
The fast sighting is evidence of how astronomers are getting increasingly better at spotting incoming asteroids.
Near-Earth Objects, or NEOs, are classified by NASA as comets and asteroids that travel on an orbital trajectory bringing them astronomically close to our planet.
In most cases, NEOs zoom past Earth without mishap.
However, the NASA space agency keeps an eye on NEOs that are perceived as big enough to warrant interest.
“Some asteroids and comets follow orbital paths that take them much closer to the Sun and therefore Earth – than usual. If a comet or asteroids approach brings it to within 1.3 astronomical units of the Sun, we call it a near-Earth object,” says NASA.


--- layout: archive title: Zulip Chat Archive permalink: /stream/113488-general/topic/Projection.20after.20mk-structure.html ---
Say I've got a function mk_struct
which takes some arguments and produces something of type struct
. The function mk_struct
needn't be the struct.mk
constructor---maybe it takes some arguments, proves some stuff about them, and then packages it all up by calling the constructor struct.mk
(the point is that the arguments of mk_struct
can be totally different).
Now say struct
has a projection struct.foo
. There is a single unambiguous way to construct a function mk_struct.foo
, which forgets all of the components of whatever mk_struct
outputs except for foo
. I'd like to programmatically obtain the type of this function mk_struct.foo
.
Actually, I've essentially done this, but it was incredibly stupid: I directly built everything over expr.xxx
's and manually wrote code to unify the arguments of the projection and the output-type of mk_struct
, and in the end it wasn't robust enough to deal with universe parameters.
But I'm sure this was all crazy---I'm sure I can exploit lean's facilities (at the very least unify
) to do the resolution which I need. Perhaps I'm looking for a suped-up tactic.mk_app
that can unroll the quantifiers from the argument I want to apply? What's the canonical way to go about expr
fiddling like this?
I'm confused why this is different from struct.foo ∘ mk_struct
. Can't you just figure out the type of this?
@Mario Carneiro Thanks for taking a look. Here's a concrete example:
structure struct (n : ℤ) := (foo : ℕ) def mk_struct (m : ℕ) : struct m := ⟨m, 2 * m⟩ #check struct.foo ∘ mk_struct #check λ m, (mk_struct m).foo
The second-to-bottom line fails to typecheck, since mk_struct
takes a (possibly a few) potentially random arguments. I'd really like to be able to compose to essentially do what the last line does, without having to know the arguments of mk_struct
in advance.
do you know the arguments of struct.foo
?
this function in tactic/alias.lean
seems similar:
meta def mk_iff_mp_app (iffmp : name) : expr → (nat → expr) → tactic expr | (expr.pi n bi e t) f := expr.lam n bi e <$> mk_iff_mp_app t (λ n, f (n+1) (expr.var n)) | `(%%a ↔ %%b) f := pure $ @expr.const tt iffmp [] a b (f 0) | _ f := fail "Target theorem must have the form `Π x y z, a ↔ b`"
it constructs the term \lam x y z, iff.mp (f x y z)
Last updated: Apr 24 2020 at 19:02 UTC


Several scenarios where the PATH can be useful
1: Can you alter the PATH variable?
2: A program is running with higher privs and executing a program without the full path. If you can place a file of the same name in a part of the path you have write access to, you can win!
Whenever I call a program – like cat – bash will look for the above directories for it. Let’s make a file called cat with the following contents inside and make exec:
echo "/bin/sh" > cat
chmod +x cat
Now, let’s change our PATH variable to “.”. This will make bash look at the “.” (current) directory every time it needs to run a program.
Can you imagine what would happen if we execute the msgmike program again? As you can recall, msgmike executes the cat command to view the contents of a file (/home/mike/msg.txt). Now that we have changed the PATH variable, though, it will look for the cat program inside the current directory. As we have created an executable file called cat – which pops a shell – our cat file will be executed, and we should normally get a shell as mike. Let’s see! As you can see, we have successfully logged in as mike! The real challenge doesn’t stop here, though.


{% extends "base.html" %} {% block body_classes %}simple-content{% endblock %} {% block base_content %}
The server encountered an unexpected condition which prevented it from fulfilling the request.
Return to the homepage.


---
layout: default
title: Home
---
{% assign tmp = "/" | append: site.baseurl %}
{% if page.url == tmp or page.url == "/" %}
About Hui Wu
I am a senior research scientist and a manager at the Distributed MLOps group @ IBM Research.
I am passionate about developing new AI applications that drive real-world impact, particulary around Edge AI use cases.
My current interest includes vision and language, neural-symbolic learning, computer vision for fashion and more
recently, distributed MLOps.
I joined IBM Research since 2015, and worked in the computer vision and multimedia group at
IBM Research AI (2015-2020), and
MIT-IBM Watson AI Lab (2020-2021).
Prior to joining IBM, I received my PhD in Computer Science from UNC Charlotte,
with a thesis focus on machine learning
techniques applied to image set analysis problems.
Contact me: wuhu AT us.ibm.com
Updates
-
Mar. 2021: Two papers accepted at CVPR 2021!
-
Dec. 2020: Paper "NASTransfer: Analyzing Architecture Transferability in Large Scale Neural Architecture Search" accepted at AAAI 2021.
-
Jun. 2020: We are hosting Fashion IQ challenge at the third workshop on Computer Vision for Fashion, Art and Design
at CVPR 2020. Please see the article at CVPR Daily.
-
Sep. 2019: Drill-down: Interactive Retrieval of Complex Scenes using Natural Language Queries accepted at NeurIPS 2019.
-
Jul. 2019: We are hosting Fashion IQ challenge at ICCV 2019.
-
May. 2019: I am co-chairing the second workshop on Computer Vision for Fashion, Art and Design
at ICCV 2019.
I am also co-chairing Linguistics Meets Image and Video Retrieval Workshop
at ICCV 2019.
- Apr. 2019: Our demo on interactive fashion retrieval accepted at CVPR 2019 demo track.
- Sep. 2018: Dialog Based Interactive Image Retrieval accepted at NeurIPS 2018.
-
Sep. 2018: I was co-chairing the first workshop on Computer Vision for Fashion, Art and Design
at ECCV 2018.
-
Jan. 2018: Worked with fashion designers from Fashion Institute of Technology on exploring computer vision to enhance fashion design process. [Summary Video]
[Women's Wear Daily]
[Town & Country]
Selected Projects
{% include postlist.html %}
{% else %}
{% include postlist.html %}
{% endif %}


Equivalent to choosing the Object command from the Insert menu, and then selecting an object type and choosing the OK button. Creates an embedded object whose source data is supplied by another application. Also starts an application of the appropriate class for the specified object type.
Syntax
INSERT.OBJECT(object_class, file_name, link_logical, display_icon_logical, icon_file, icon_number, icon_label)
INSERT.OBJECT?(object_class, file_name, link_logical, display_icon_logical, icon_file, icon_number, icon_label)
Object_class is a text string containing the classname for the object you want to create.
Object_class is the classname corresponding to the Object Type selection in the Insert Object dialog box.
For more information about object classnames, consult the documentation for your source application to see how it supports object linking and embedding (OLE).
File_name is a text string specifying the file from which to create an OLE object.
Link_logical is a logical value indicating whether the new object based on file_name should be linked to file_name. If it is not linked, the object is created as a copy or the file. Link_logical is ignored if file_name is not specified. If link_logical is FALSE or omitted, then no link is established.
Display_icon_logical is a logical value corresponding to the Display as Icon checkbox. If it is FALSE or omitted, then the regular picture for the object is displayed. If it is TRUE, then the icon icon_number found in icon_file is displayed with the label icon_label. If display_icon_logical is not TRUE, then icon_file, icon_number, and icon_label are ignored.
Icon_file is the name of the file where the icon to display is located.
Icon_number is the number of the icon within icon_file that should be used.
Icon_label is a text string indicating a label to display beneath the icon. If the parameter is an empty string ("") or is omitted, no label is displayed.
Remarks
If INSERT.OBJECT starts another application, your macro pauses. Your macro resumes when you return to Microsoft Excel.
Although you will not normally use Microsoft Excel class names in a Microsoft Excel macro, you may need them in macros written for other applications. Microsoft Excel uses classnames "Excel.Sheet.5" and "Excel.Chart.5".
Related Function
EDIT.OBJECT Edits an object
Return to index


--- title: MockServer UI layout: page pageOrder: 3 section: 'General' subsection: true sitemap: priority: 0.7 changefreq: 'monthly' lastmod: 2019-11-10T08:00:00+01:00 ---
MockServer has a UI that can be used to view the internal state within MockServer, including:
The UI is available for all versions of MockServer except the deployable WAR
The UI can be opened in any browser using the URL
http(s)://<host>:<port>/mockserver/dashboardFor example if MockServer is running on localhost on port 1080 use http://localhost:1080/mockserver/dashboard
The UI can be opened by using the openUI() function on the MockServerClient or ClientAndServer.
The UI is launched using the default browser which the JVM determines from the operating system.
The openUI() method pauses for 1 second after launching the browser to allow the UI to launch and start collecting logs, this ensures that the log are visible in the UI even if MockServer is shutdown quickly by a test shutdown function, such as After, AfterClass, AfterAll, etc. The pause period can be configured using the method openUI(TimeUnit timeUnit, long pause).
To simplify debugging request matching when multiple instances of MockServer are created if the logLevel is set to DEBUG and the launchUIForLogLevelDebug configuration property is enabled (default: false) the ClientAndServer constructor or static factor methods will launch the UI so that it is possible to see all logs events for every instance of MockServer.
The logs section list all the logs events recorded by MockServer, including errors, request matching, exception creation, deletion, etc, as shown below:
To simplify the process of understand how each request is handled and which expectation have or have not been matched all logs events for a single request are grouped together.
In addition, to simplify the process or understand why a given expectation has or has not been matched a because section is shown for any EXPECTATION_NOT_MATCHED this can be expanded to show the full details of which properties did or did not match.
When logLevel is set to DEBUG:
The active expectations section shows all active expectations in the order they are applied, taking into account all factors such as when the expectation was created, its priority, its timeToLive and its times
The received request section shows all request received in the order were received.
The list includes request that are matched against an expectation, requests that are proxied and request that are not proxied or matched against any expectation.
The proxied requests section shows request that have been proxied the corresponding response returned.


I am 16 year old African American boy born in Nigeria to two wonderful parents, Adeyemi and Folake. I have an older sister named Favour(18) as well as a younger one named Faith(13) making me the middle child .We moved to the United States when i was about one and since then we have lived in Arizona. I am very thankful for the sacrfices they have made so that i may grow up here, because of them I am very fluent in Math, English, Science and can hold my own in History. They raised me to be as open minded and kind as the situation allows. Thanks to these learned traits I am generally very calm and attentive. I have a passion for sport although I dont have a passion for watching them. The thrill of fighting for a team or for a cause has driven me to try my hand at many sports (football, basketball, soccer, baseball, rugby, and lacross), and I must say that each sport has its own unique thrill. I have volunterred for a total of over 100 hours since my freshman year, some of it with Saint Mary's Food BAnk and some with my high schools Key Club. I love the though of helping other it is one of the many things that drive me to be so aproachable and respectable.


Flying fish Importance
Barbados
Barbados is known as "the land of the flying fish", and the fish is one of the national symbols of the country. Once abundant, it migrated between the warm, coral-filled Atlantic Ocean surrounding the island of Barbados and the plankton-rich outflows of the Orinoco River in Venezuela.
Just after the completion of the Bridgetown Harbor / Deep Water Harbor in Bridgetown, Barbados saw an increase of ship visits, linking the island to the world. The overall health of the coral reefs surrounding Barbados suffered due to ship-based pollution. Additionally, Barbadian overfishing pushed them closer to the Orinoco delta, no longer returning to Barbados in large numbers. Today, the flying fish only migrate as far north as Tobago, around 120 nmi (220 km; 140 mi) southwest of Barbados. Despite the change, flying fish remain a coveted delicacy.
Many aspects of Barbadian culture center around the flying fish: it is depicted on coins, as sculptures in fountains, in artwork, and as part of the official logo of the Barbados Tourism Authority. Additionally, the Barbadian coat of arms features a pelican and dolphin fish on either side of the shield, but the dolphin resembles a flying fish. Furthermore, actual artistic renditions and holograms of the flying fish are also present within the Barbadian passport.
Maritime disputes
In recent times, flying fish have also been gaining in popularity in other islands, fueling several maritime disputes. In 2006, the council of the United Nations Convention on the Law of the Sea fixed the maritime boundaries between Barbados and Trinidad and Tobago over the flying fish dispute, which gradually raised tensions between the neighbours. The ruling stated both countries must preserve stocks for the future. Barbadian fishers still follow the flying fish southward. Flying fish remain an important part of Barbados' main national dish.
Fishery and cuisine
Flying fish are commercially fished in Japan, Vietnam, and China by gillnetting, and in Indonesia and India by dipnetting.[11] Often in Japanese cuisine, the fish is preserved by drying. The roe of Cheilopogon agoo, or Japanese flying fish, is used to make some types of sushi, and is known as tobiko. It is also a staple in the diet of the Tao people of Orchid Island, Taiwan. Flying fish is part of the national dish of Barbados, cou-cou and flying fish.
In the Solomon Islands, the fish are caught while they are flying, using nets held from outrigger canoes. They are attracted to the light of torches. Fishing is done only when no moonlight is available.


HDFC beats estimates for September quarter: should you buy, sell or hold?
Experts are of the view that the long-term potential of HDFC is intact. The stock is a must for investors looking at companies that can deliver growth without compromising safety.
Most global firms have maintained their buy rating on HDFC Ltd after standalone net profit of India’s largest mortgage lender rose 60.5 percent year-on-year (YoY) for the quarter ended September.
The company reported a profit of Rs 2,467.08 crore in the same quarter in 2018.
HSBC has the most aggressive target price of Rs 2,700 on HDFC, which translates to a rise of over 23 percent from November 4’s closing price of Rs 2,181.
Experts are of the view that the long-term potential of HDFC is still intact. The stock is a must for investors looking at companies that can deliver growth without compromising on safety.
“We remain confident of HDFC’s business model and its ability to grow amid tough times; however, we will keep a close eye on the margin and asset-quality trends,” Emkay Global said in a report.
“We roll forward our estimates to FY22 and reiterate Buy with a revised TP of Rs2,466 (Rs2,421 earlier), corresponding to ~2.4x FY22E standalone P/B,” it said.
Here’s how global brokerages reacted post-HDFC Q2 results:
Credit Suisse: Outperform| Target raised to Rs 2,500 from Rs 2,280
Credit Suisse maintained its outperform rating on HDFC Ltd after the September quarter results but raised its target price to Rs 2,500 from Rs 2,280.
Valuations were fairly attractive at current levels as the stock was trading at 1.7x FY21e core P/B. The growth was likely to remain stable, it said while remaining cautious on corporate growth.
The global investment bank slashed its FY20-21e EPS by 3-1 percent on higher opex.
Morgan Stanley: Overweight| Target Rs 2,600
Morgan Stanley maintained its overweight rating on HDFC Ltd, with a target of Rs 2,600.
The global investment bank was positive on the strong underlying NII growth and individual AUM growth. Fees & securitisation income were lower than estimated.
Corporate NPLs increased, which was largely expected. The company used one-off capital gains to strengthen provision coverage.
Citigroup: Buy| Target Rs 2,570
Citigroup maintained its buy rating on HDFC Ltd, with a target price of Rs 2,570.
The Q2 profit was higher than estimates on account of lower tax. The Tier-1 ratio remained strong at 18.1 percent.
The quarter benefitted from part stake sale and dividend income from HDFC Bank. It was favorably positioned, compared to its peers, given its strong franchise.
Disclaimer: The views and investment tips expressed by investment experts on moneycontrol.com are his own and not that of the website or its management. Moneycontrol.com advises users to check with certified experts before taking any investment decisions.
Special Thursday Expiry on 10th 7th Nov
Early Closure to The Great Diwali Discount. Last Chance to get Moneycontrol PRO for a year @ Rs. 289/- only
Coupon code: DIWALI