Class: Aws::PI::Types::DimensionGroup
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
|
Class Chain:
self,
Struct
|
|
|
Instance Chain:
self,
::Aws::Structure ,
Struct
|
|
| Inherits: |
Struct
|
| Defined in: | gems/aws-sdk-pi/lib/aws-sdk-pi/types.rb |
Overview
A logical grouping of Performance Insights metrics for a related
subject area. For example, the db.sql
dimension group consists of
the following dimensions:
db.sql.id
- The hash of a running SQL statement, generated by Performance Insights.db.sql.db_id
- Either the SQL ID generated by the database engine, or a value generated by Performance Insights that begins withpi-
.db.sql.statement
- The full text of the SQL statement that is running, for example,SELECT * FROM employees
.db.sql_tokenized.id
- The hash of the SQL digest generated by Performance Insights.
Constant Summary
-
SENSITIVE =
# File 'gems/aws-sdk-pi/lib/aws-sdk-pi/types.rb', line 629[]
Instance Attribute Summary
-
#dimensions ⇒ Array<String>
rw
A list of specific dimensions from a dimension group.
-
#group ⇒ String
rw
The name of the dimension group.
-
#limit ⇒ Integer
rw
The maximum number of items to fetch for this dimension group.
Instance Method Summary
::Aws::Structure
- Included
| #to_hash | Alias for Structure#to_h. |
Instance Attribute Details
#dimensions ⇒ Array
<String
> (rw)
A list of specific dimensions from a dimension group. If this parameter is not present, then it signifies that all of the dimensions in the group were requested, or are present in the response.
Valid values for elements in the Dimensions
array are:
db.application.name
- The name of the application that is connected to the database. Valid values are as follows:- Aurora PostgreSQL
- Amazon RDS PostgreSQL
- Amazon DocumentDB
db.host.id
- The host ID of the connected client (all engines).db.host.name
- The host name of the connected client (all engines).db.name
- The name of the database to which the client is connected. Valid values are as follows:- Aurora PostgreSQL
- Amazon RDS PostgreSQL
- Aurora MySQL
- Amazon RDS MySQL
- Amazon RDS MariaDB
- Amazon DocumentDB
db.query.id
- The query ID generated by Performance Insights (only Amazon DocumentDB).db.query.db_id
- The query ID generated by the database (only Amazon DocumentDB).db.query.statement
- The text of the query that is being run (only Amazon DocumentDB).db.query.tokenized_id
db.query.tokenized.id
- The query digest ID generated by Performance Insights (only Amazon DocumentDB).db.query.tokenized.db_id
- The query digest ID generated by Performance Insights (only Amazon DocumentDB).db.query.tokenized.statement
- The text of the query digest (only Amazon DocumentDB).db.session_type.name
- The type of the current session (only Amazon DocumentDB).db.sql.id
- The hash of the full, non-tokenized SQL statement generated by Performance Insights (all engines except Amazon DocumentDB).db.sql.db_id
- Either the SQL ID generated by the database engine, or a value generated by Performance Insights that begins withpi-
(all engines except Amazon DocumentDB).db.sql.statement
- The full text of the SQL statement that is running, as inSELECT * FROM employees
(all engines except Amazon DocumentDB)db.sql.tokenized_id
db.sql_tokenized.id
- The hash of the SQL digest generated by Performance Insights (all engines except Amazon DocumentDB). In the console,db.sql_tokenized.id
is called the Support ID because Amazon Web Services Support can look at this data to help you troubleshoot database issues.db.sql_tokenized.db_id
- Either the native database ID used to refer to the SQL statement, or a synthetic ID such aspi-2372568224
that Performance Insights generates if the native database ID isn't available (all engines except Amazon DocumentDB).db.sql_tokenized.statement
- The text of the SQL digest, as inSELECT * FROM employees WHERE employee_id = ?
(all engines except Amazon DocumentDB)db.user.id
- The ID of the user logged in to the database (all engines except Amazon DocumentDB).db.user.name
- The name of the user logged in to the database (all engines except Amazon DocumentDB).db.wait_event.name
- The event for which the backend is waiting (all engines except Amazon DocumentDB).db.wait_event.type
- The type of event for which the backend is waiting (all engines except Amazon DocumentDB).db.wait_event_type.name
- The name of the event type for which the backend is waiting (all engines except Amazon DocumentDB).db.wait_state.name
- The event for which the backend is waiting (only Amazon DocumentDB).
#group ⇒ String
(rw)
The name of the dimension group. Valid values are as follows:
db
- The name of the database to which the client is connected. The following values are permitted:- Aurora PostgreSQL
- Amazon RDS PostgreSQL
- Aurora MySQL
- Amazon RDS MySQL
- Amazon RDS MariaDB
- Amazon DocumentDB
db.application
- The name of the application that is connected to the database. The following values are permitted:- Aurora PostgreSQL
- Amazon RDS PostgreSQL
- Amazon DocumentDB
db.host
- The host name of the connected client (all engines).db.query
- The query that is currently running (only Amazon DocumentDB).db.query_tokenized
- The digest query (only Amazon DocumentDB).db.session_type
- The type of the current session (only Aurora PostgreSQL and RDS PostgreSQL).db.sql
- The text of the SQL statement that is currently running (all engines except Amazon DocumentDB).db.sql_tokenized
- The SQL digest (all engines except Amazon DocumentDB).db.user
- The user logged in to the database (all engines except Amazon DocumentDB).db.wait_event
- The event for which the database backend is waiting (all engines except Amazon DocumentDB).db.wait_event_type
- The type of event for which the database backend is waiting (all engines except Amazon DocumentDB).db.wait_state
- The event for which the database backend is waiting (only Amazon DocumentDB).
# File 'gems/aws-sdk-pi/lib/aws-sdk-pi/types.rb', line 625
class DimensionGroup < Struct.new( :group, :dimensions, :limit) SENSITIVE = [] include Aws::Structure end
#limit ⇒ Integer
(rw)
The maximum number of items to fetch for this dimension group.
# File 'gems/aws-sdk-pi/lib/aws-sdk-pi/types.rb', line 625
class DimensionGroup < Struct.new( :group, :dimensions, :limit) SENSITIVE = [] include Aws::Structure end


--- layout: default title: PROJECTS ---
Design, Build and Testing of various features for autonomous for construction site
Implemented Path Planning and SLAM on UVC robot
Implemented visual interial odometry and path-planning for UAV.
Design, Build and Testing of AMR for warehouse management
Here, I worked on moveit & MTC projects like Pick, Place, Pouring task for multi-manipulator system using MoveIt Task Constructor(MTC).
See my presentation on multi-arm task planning using MTC here.
Path planning to fly two drones in a synchronized manner, maintaining same altitude and attitude., for Smart India Hackerthon 2019.
Simulating swarm behaviour of flocking and foraging in V-REP and Argos simulator
Github linkQ-learning based controlled for ARdrone, simulated in gazebo using ROS
Github linkImplemented slam on automated guided vehicle (AGV) by sensor fusion of data from 2D lidar and 3D camera.
Implemented 2D slam on turtlebot3 using of data from 2D lidar(RplidarA2).
RatSLAM is the visual slam for monocular camera which uses the network similar to rat brain for mapping surrounding
Vision-based control and trajectory planning of robotic manipulator(Uarm swift pro) using point-cloud data(from realsense d435).
Path planning to fly two drones in a synchronized manner, maintaining same altitude and attitude., for Smart India Hackerthon 2019.
Build a CNN based model for satellite image classification of 9 categories, challenge was to train model model using mere 14 images. We got the overall accuracy of 71.85%.
Github linkCreate ROS based surveilling robot, which has features like face-detection, live stream, audio command and feedback.
Developed an EOG based typing system that uses a virtual keyboard to assist individuals with motor neuron diseases to communicate. Eye saccades were tracked by acquiring signals from muscles surrounding the eye, conditioned using cleverly designed analog circuits.
Github link
- Built a Prusa i3 3D Printer and 3D Printed Robotic Arm under Vistaar Program of CFI, IIT Madras.
- Studied state of the art 3D printing processes.
- Worked on Photogrammetry (generating 3D models using a set of 2D images of an object).
- The project was showcased during the CFI Open House 2017, at IIT Madras.
Built Automated Toilet Cleaning Robot which cleans the floor of a toilet and picks the tissue papers and cleans the toilet seat. It is fully Autonomous and informs when a task is complete. Ranked 6th in Inter IIT Tech Meet
Built an IOT based autonomous farming under Makerthon 2017, Lema Labs, IIT Madras Research Park in 36 hours. Here we collect the various live data viz. moisture, temperature, humidity, illegal entry in farm and send them to the server and remotely moniter them.
Created machine learning model for taxi trip time prediction from initial partial trajectories.
Github link


There is an overwhelming amount of information available to us on webpages and we cannot possibly parse through all this information in our lifetime. This is where web scraping comes in - we can make programs that automatically retrieve the most important information on websites for us. In this web scraping course, we will be learning the basics of web scraping using Python and retrieve information from various websites.
Installing pip. Please scroll down to your relevant operating system.
Run "pip install beautifulsoup4" in your terminal (PowerShell on Windows, Terminal on macOS and if you are using another operating system you probably know what you are doing).
HTML tags are the building blocks of every website that you see on the internet. Tags come in pairs like the
 and
 tags below. The first tag is known as the 'start tag' and the second is known as the 'end tag' and usually is the same as the start tag but with a forward slash (/) in front.
<!DOCTYPE html>
This is a paragraph

Two important things to note are that:
HTML tags are also able to have a bit more complexity to make customizing the content easier. HTML tags can be structured as such
<!DOCTYPE html>
Attributes are things that provide additional information to the browser about how the content is to be displayed. The tag above is structured as <tagname attribute = "attribute value"> In the above example the tagname img is what HTML uses to display an image, src is the attribute which is the source that the image is going to be located at, and http://www.imagewebsite/image is the value that the src attribute takes and is where the image is sourced.
BeautifulSoup is the main library we will be using to scrape webpages. In order to retrieve webpages, however, we will need to use the requests library. Let's import both of those libraries at the top of our Python file.
from bs4 import BeautifulSoup import requests
For the scope of this course, we will not delve into the details of how retrieving the webpage works. All we need to know is how we can transform a URL into a BeautifulSoup object we can parse through. First, however, let's look at the source of the webpage we will be parsing (link here). The website is very simple and is nothing like what real websites are actually like, but this serves as a very good starting point for us to start learning web scraping.
Now that we've had a look through the structure of the website, we can start creating a structural representation of our webpage's source file and store it in a variable called "soup". This varaible contains nested data structure that we can navigate through and retrieve information from.
website = requests.get('https://hackonnect.github.io/scrape1') soup = BeautifulSoup(website.content, 'html.parser') print(soup)
As you can see from the outputs of the print statement, the soup is basically a very long string containing the raw HTML of our website. The string isn't particularly readable. However, we can use soup.prettify() to generate a readable string representation of the soup.
print(soup.prettify())
We can find each element in our soup by referencing them by their HTML element name, giving us their HTML code. For example, if we want to get the title of our HTML, we can simply do:
print(soup.title)
This should yield the following output:
<title>Practice Web Scraping with Python</title>
We can also get the name of our HTML element by appending .name to the end. In this case, the following statement should print out "title":
print(soup.title.name)
Similarly, we can append .string to the end in order to get the contents of our HTML element.
print(soup.title.string)
The way we just introduced of finding HTML elements will only give you the first element that matches what we queried for. Our HTML page has multiple paragraphs, but the following will only print out the HTML code of our first paragraph:
print(soup.p)
In order to find multiple paragraphs, we have to use find_all(). This gives us a list of HTML elements that matches the criterion we search for. For the argument of find_all(), we will need to put the name of our HTML in quotation marks.
print(soup.find_all('p'))
Let's save this in a variable called paragraphs:
paragraphs = soup.find_all('p')
Remember HTML attributes? We can find the attribute of a particular HTML element by indexing the attirbute we want. For example, if we want to find the value of the class attribute of the second paragraph, we can type out the following:
print(paragraphs[1]['class'])
As you can see, we get a list of the attribute values. We can just index the first element in order to get what we want:
print(paragraphs[1]['class'][0])
Of course, for elements with multiple attribute values like the class values of the third paragraph, we should not index the list as this would mean that we may be discarding some important information.
print(paragraphs[2]['class'])
There's also a way we can find every single attribute of an element:
print(paragraphs[3].attrs)
In order to find an HTML element by its id, we can use find_all(id=''). This would give us a list of HTML elements with a specific id. However, because ids are unique, we can also simply use find(id=''). The find function, similar to how we added .title and .p to soup, returns the first element that matches the criterion inside the brackets. For everything else apart from finding the id, find_all() is usually the better choice. The following expressions will both yield the same output:
print(soup.find(id='unique')) print(soup.find_all(id='unique')[0]
This also works with custom attributes like "name":
print(soup.find_all(name='h1'))
We can also pass multiple attributes at once. The two expressions listed below are equivalent:
print(soup.find_all(name='h1', id='h1')) print(soup.find_all(attrs={'name': 'h1', 'id': 'h1'}))
Now, navigate to Exercise 1 and see if you are able to complete it.
Now let's look at another webpage for us to learn how to navigate through nested elements. Have a look here and inspect the hierarchical structure of the divs. Open up a new document and save the soup of the HTML as a soup variable:
from bs4 import BeautifulSoup import requests website = requests.get('https://hackonnect.github.io/scrape2') soup = BeautifulSoup(website.content, 'html.parser')
Let's look at a shortcut of how we can find all the divs with a class of "sibling":
print(soup.find_all('div', 'sibling'))
We simply put the name of the class after the HTML element tag name. In order to navigate the hierarchical structure of the divs better, let's save the parent div encompassing everything as a new variable called "parent".
parent = soup.div
We are able to list out all the children of this parent div using div.contents. Contents gives us everything that is inside the parent div. We can save all the contents in a variable called "children".
children = parent.contents
As you can see, we have successfully saved all the child divs in a variable. This variable has the same type as "soup" and "parent": it's still a soup. Soup is a hierarchical and recursive structure that consists of itself. To find the amount of children the parent div has, we can simply find the length of children:
print(len(children))
We get an answer of 9. However, if you navigate back to the page we are using, we can only count 4 orange divs! To get a better understanding of why this is the case, let's print out children and see what it actually contains.
print(children)
In the printed output, we can see a lot of '\n's. These are line break characters, showing us where in the HTML is there a new line. Unfortunately, they are not particularly useful to us and should be removed. As a quick exercise, try to remove all of the line breaks from children. See Exercise 2 for a solution. If you run the following code afterwards, the output should be 4:
print(len(children))
To find the parent of each child div, we can simply append .parent onto the end of the child. Here is an example of how it works:
print(children[0].parent)
Apart from navigating up and down the hierarchical structure, we can also find siblings of a particular div. Let's try using next_sibling in order to find the next sibling:
for child in children: print(child.next_sibling)
This is not what we are expecting is it? This is because .next_sibling only works on BeautifulSoup objects. Earlier on when we made the children variable, we used parent.contents to give us a list of strings of HTML elements. In order to get a generator containing BeautifulSoup objects, we need to use parent.children. Here's what we mean:
children = parent.children # Remember that we did not filter out any of the empty this time. print(children) for child in children: print(child.next_sibling)
Now this gives us our intended outcome. If we want a generator containing BeautifulSoup objects of the next siblings, we can use .next_siblings. Remember that if you use things that return generators such as .children, the result you get is NOT a list. It's a list_iterator / generator that should only be used for iteration.
for next_sibling in parent.div.next_siblings: print('I\'m another sibling!')
Have a few minutes to mess around with moving through the hierarchical and nested structure.
Now that we are equipped with the knowledge of navigating nested HTML structures, let's look at some of the HTML selectors we can use while web scraping. Once again, let's explore the structure of this website.
from bs4 import BeautifulSoup import requests website = requests.get('https://hackonnect.github.io/scrape3') soup = BeautifulSoup(website.content, 'html.parser')
Sometimes, we need to find the third, fourth, seventh or even forty-second element. To do this, we need to first know how CSS selectors work with BeautifulSoup. We can use select() in order to select HTML elements using CSS selectors. The following code does the exact same thing as soup.find_all('p'), except it uses CSS selectors. If possible, always use find_all() as it is significantly faster.
print(soup.select('p'))
Here are a few CSS selectors that you might need to know:
Selecting every p inside a div:
print(soup.select('div p'))
Selecting every p that is directly under a div:
print(soup.select('div > p'))
Finding everything with a class of example:
print(soup.select('.example'))
Finding the third p:
print(soup.select('p:nth-of-type(3)'))
Similar to how find_all() has a counterpart in find(), select() has a counterpart that only selects the first element that meets the criterion called select_one():
print(soup.select_one('p:nth-of-type(3)'))
Sometimes, different HTML elements will affect our code. Let's take a look at the last paragraph with a class of "broken". This paragraph is, quite literally, broken. If you try to extract the text by appending .string to the end of your Python statement, you'll find out that it doesn't work. Consequently, we need to remove the other stuff inside the paragraph.
If you use inspect element, you'll realise that there is a span there affecting it. We can remove the span like this:
soup.select_one('.broken').span.decompose()
Decomposing the element will remove it. If we want to keep the value in another variable after decomposing, we can do the following:
new_variable = soup.select_one('.broken').span.extract()
The code above won't work now because we have already decomposed the span. If you haven't removed the span yet, extract() can be a very useful tool.
Now, go ahead and attempt to solve Exercise 3.
1. Find the class of the last paragraph on this page (this is the same page used in the BeautifulSoup section of the course).
2. There's actually a hidden paragraph with an id of "hidden" on the same page! Find out what it says.
Exercise 2 is located within the Nested Structures section of the course. There are many different ways you can remove all the line breaks, including iterating through the soup structure and removing anything that is equivalent to '\n'. Here is a short solution with an extremely similar effect:
children = list(filter(lambda x: x != '\n', children))
Wikipedia is one of our most used websites. Whether you'd like to admit it or not, we all use Wikipedia to get information. Let's say we want to get the relative atomic mass of all known elements. Using Wikipedia and BeautifulSoup, we can easily retrieve this information. Try to do it on your own before asking for help. You might not have enough time to finish it. Have fun! Feel free to carry on working on this in your free time. Computer Science can be fun!
Hints:
Try to look for a webpage that has the all the values you need.
Use inspect element to find the correct element.
You might want to loop through something several times.


Prologue: Over the last two years, I have come to experience and appreciate the exploration of consciousness through psychedelic experimentation. During these last two years, I have familiarized myself with a variety of hallucinogenic agents. Since my first life-changing psychedelic experience – a miraculous medley of psilocybin mushrooms and dimethyltryptamine – I have revered this realm of experience. A deep intuition has led me to where I find myself at the writing of this experience report, and it is with this deep intuition that I relate to you the happenings of a most significant experience with the compound 2,5-dimethoxy-4-ethylphenethylamine (2C-E).
Experience:
This trip had been personally important to me for months prior to its happening. On this occasion, I finally had the opportunity to share my appreciation of altered states of consciousness with my girlfriend – heretofore referred to as Empathy. Empathy and I have been dating formally for several years and have been close friends for the entirety of both of our lives. If the soul exists, she is unequivocally the other half to the one we share. In addition to this, my first ego death instilled in me an inexplicable prophecy that my third ego death needed to happen with Empathy present. I waited patiently for the right combination of circumstances. The time had come.
I explained to Empathy my previous experience with 2C-E and did my best to familiarize her with it before dosing. When she was ready, I measured 15mg for Empathy and 25mg for myself. After dosing via oral administration, we sat together on her couch and talked of what was to be expected.
The come-up was near identical to my previous experience with 17mg of 2C-E. A gradual otherness crept into mind and body. My vantage point of experience began to feel increasingly separate from my body and my mind calmed the way it usually does before a storm of consciousness. Having navigated this before, I knew it was simply a matter of opening my mind to the pure experience and letting go before I was beseeched.
I spent much of the come-up catering to and staying attentive to Empathy. This being her first exposure to 2C-E, I wanted to make the trip as positive and enjoyable as possible for her. She mentioned a mild nausea and an upset stomach. I reassured her it was normal and would come to pass once we had discharged our nitrous oxide.
The shifting visual distortions I’ve found to be characteristic of the phenethylamines started approximately 45 minutes after dosing. Empathy reported no change in consciousness at this point, preoccupied with her discomforting body load. Around 90 minutes after dosing, I sensed my state of mind and the 2C-E start to synergize. In part because I knew it would help Empathy, I decided now was the opportune time to try our nitrous. Empathy and I had agreed it would be preferable for her to go first. In this way, I could sit with her through her dissociation and let her come back down before starting mine.
I watched Empathy inhale her first charger of nitrous oxide and observed her behavior dutifully. She focused on her experience while I recalled my own first experience with 2C-E and nitrous. Toward the end of her comedown, she said her body load had been erased with the anesthetic euphoria of the gas. I was very happy for her. I loaded my charger into the dispenser, discharged it, and felt the cold of the metallic container spread to my hand. I moved to the carpet and relaxed myself back against the couch. I glanced around the room, tilted my head back, and inhaled the heavy gas from the container. My own body load subsided as my world began to shift and melt more remarkably, more frequently. I am now irrevocably immersed in my trip. This first charger was but a primer, my intuition tells me. The summit is nearing.

I prepare my second charger and assume a cross-legged position. I inhale a steady, deep breath. I clear my mind and do not move until my intuition compels me. I survey the melting, moving tectonic plates of the ceiling above me and the vibrating texture of the comforting carpet. I look over to my Empathy, who has been quietly observing me from her warm, secure spot beneath her blanket.
“I’m ready,” I say, “Don’t be afraid, okay? I love you and I will always come back for you.”
“I’m not afraid,” says Empathy, “I love you too.”
I place the dispenser to my lips as I stare up at the ceiling. I close my eyes and instinctively begin to meditate as I inhale the charger into my being.  I immediately feel my body transmute into formlessness as I transcend the world of consensus reality. A luminous light appears in front of me. I feel my consciousness move forward and merge unto the luminousness. My being expands into boundlessness and can no longer differentiate itself from the profound interconnectedness of all things. I am eternity. I am pure experience.
When my physical body can no longer contain my experience, my eyes jolt open to a world full of wonder. I stand up and turn toward my Empathy.
“Empathy,” my voice utters as I manifest, “I’m enlightened.” I burst into tears of limitless happiness and unwavering compassion. “I can never go back.” Truths upon truths upon truths enter my awakened mind. Empathy begins to cry herself.
“Thank you for letting me go,” I tell Empathy as I move toward her, my body overwhelmed with the consciousness it struggles to contain.
“You’re welcome,” Empathy sobs as she opens her arms to me.
We embrace one another and lie back down on the couch. I can do nothing but stare in awe at the world around me as I gratefully hold Empathy, who is soothingly brushing my hair with her hand. I try to summon the words to elucidate these truths for Empathy so that I may guide her in her path. But she calmly silences me and reminds me that I need not.
“I wish so deeply that I could share this with you right now,” I say.
“You can’t,” says Empathy. “I’m so happy for you, but we have to do it for ourselves. Just experience it. You can tell me about it later.”
I thank her understanding with a warm embrace and surrender myself once again to my peace. For the rest of the trip, I oscillate between the most complete happiness for the experience and the most genuine compassion for those who still suffer, all the while crying and laughing and smiling and crying. I contemplate what has happened, what can be done, what is to follow. Empathy and I – now intangible halves of the same whole – fall asleep holding one another.
Epilogue:
In the time since, I have had enduring understanding, thankfulness. I hold no more attachments to the illusion of the self or of the ego. I use traditional first person and possessive language because I feel it is necessary in this telling of my story and in my interactions with people in everyday life. These utilities are purely symbolic and are meant to communicate that. While I can communicate the knowledge, I cannot communicate the wisdom.
What I would primarily like to emphasize in addition to sharing my story is that under the appropriate mindset, setting, and circumstances, psychedelics can be very meaningful tools of discovery. Truly, I mean to illustrate only the potential of an experience, not a certainty.
May peace become you.
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.


climate (.) drought growth spruce white boreal change populations provenances provenance western conditions species forest moisture Boreal {border-style precipitation sources tree (Figure mean px;} temperature #ffffff;} annual population range analysis deficits genetic test Canada Forest common survival adaptation growing regions resilience response ring site Climate Hamann, Mixedwood adaptive garden linear mortality southern Canadian Wang, origin period resistance seed showed tolerance values Temperate high normal observed reductions variation Cordillera assisted climatic data differentiation forests local migration mixed models warming water (Table Figure Hogg, Shield function height productivity px; regional results significant standard traits trees {font-family Beaulieu, Drought Ecology North Tree University approximately capacity correlations deficit differences font-size implemented management performance planting provide recovery reduced reduction second study trial using value Change Global Provenances Resistance average conditions. cores design did double; eastern experiment highest measurements package periods potential rates reforestation summer used variables warmest < (°C) Biology, Calling Management, Michaelian, Montane Picea Plains Research, based block border-color border-width calculated component damage diameter ecoregion environments, estimated extreme field grown impacts index limit means metrics month natural northeastern northern permanent planted principal rate region season shown solid; strong weather widespread width {font-style {font-weight ./gcb. ./j.-...x ./j.foreco... Adaptive Alberta, America Briffa, British Canada. Core Genetic Growth Hargreaves Height Maritime Meteorology, Montwé, Science, Spiecker, adapted age anticipated associated blocks bold caused coast coldest context continentality courier; daily declines dendrochronological detrending distribution elevation em; environmental error estimates evidence expected fitness forests. fringe generally glauca higher include indices low lower measured mitigate movement new plots predisturbance prescriptions projected projections pt;} range. recover region, resistance, resource severe site, sites station statistical tree‐ring trials years


package main
import (
"bufio"
"fmt"
"os"
"strconv"
"strings"
)
func main() {
reader := bufio.NewReader(os.Stdin)
fmt.Println("Are you ready to perform a dare? YES / NO")
dare, _ := reader.ReadString('\n')
dare = strings.TrimSpace(dare)
dare = strings.ToUpper(dare)
// fmt.Println("Value of dare is: " + dare + ".")
if dare == "NO" {
fmt.Println("Have A Wonderfull Day")
}
// if dare == "Yes\r\n" {
// fmt.Println("Choose any number and then see your dare and do it.So,Are you ready? ")
// }
if dare == "YES" {
fmt.Println("Choose any number and then see your dare and do it.So,Are you ready? ")
}
fmt.Println("GAME IS START")
fmt.Println("3 2 1 Go .....")
fmt.Println("Follow the below instruction while choosing the number:")
fmt.Println("1) Number is no start with zero.")
fmt.Println("2) Number is no start with any special character symbol like !,@,#,$...")
fmt.Println("3) Number is no start with alphabets.")
fmt.Println("Choose number:")
number, _ := reader.ReadString('\n')
number = strings.TrimSpace(number)
intNumber, _ := strconv.Atoi(number)
for counter := intNumber; counter <= intNumber; counter++ {
fmt.Println("Number choosed by you:", intNumber)
if intNumber == 0 {
break
}
}
fmt.Println("Loading ......")
fmt.Println(intNumber)
if intNumber%2 == 0 {
fmt.Println("Ahm...  Your dare is to Write a program in goLanuage which take two number from user and print the multipilcation of that two number.")
}
fmt.Println("Are you enjoy this dare?  Please share your feedback in comment box.")
}
if enjoy == "NO" {
fmt.Println("If you don`t like this dare game then please tell me how can i improve this game. Please share you idea`s with me in comment box.")
}
fmt.Println("Thank you.  YES / NO
Yes
Choose any number and then see your dare and do it.So,Are you ready?

Follow the below instruction while choosing the number:
1) Number is no start with zero.
2) Number is no start with any special character symbol like !,@,#,$...
3) Number is no start with alphabets.
Choose number:
30
Number choosed by you: 30
Loading ......
30
Ahm...
Are you enjoy this dare? Yes / No:
Yes
If you like this dare game. Please share your feedback in comment box.
Thank you. Have a Wonderful day. #stayhome #staywith #codewithme
We are making a Dare Game using Go. In game, we ask a different questions to user.
And based on user choice, we assign dare to him.
As an output, we display dare and also want the feedback from user.
1) If the user is entering the lowercase or mixed case string, it fails to match with "Yes", so I have converted the user input into uppercase and now matching with "YES" to make it correct result.
2) By default, Readstring reads a new line charcater, so to remove it I have used TrimSpaces function, present in strings package


| public | DfaState() |
| public | DfaState(int id_) |
| public inline nothrow bool | Accepting() const |
| public inline nothrow int | Id() const |
| public inline nothrow int | Next(char c) const |
| public inline nothrow void | SetAccepting() |
| public inline nothrow void | SetNext(char c, int n) |
| private bool | accepting |
| private int | id |
| private List<int> | next |


As a student,I want to be a professional ,So i have to study and work hard
I studied aircraft maintenance engineering, it's nice to learn to deal with this gigantic machine and do
maintenance work for turbine engines and jet engines, but now it's time to develop software


PACManAnalyze¶
-
class
utils.analyzer.
PACManAnalyze
¶ Bases:
object
Attributes Summary
Computed accuracy of the classifier
PACMan classification results
Methods Summary
compute_accuracy_measurements
([df, normalize])Compute the classification accuracies
load_model_results
([fname, training])plot_barh
(df[, fout])- param df
Attributes Documentation
-
computed_accuracy
¶ Computed accuracy of the classifier
-
model_results
¶ PACMan classification results
Methods Documentation
-
compute_accuracy_measurements
(df=None, normalize=False)¶ Compute the classification accuracies
Compute the standard accuracy and a custom accuracy. The standard accuracy is the number of proposals where the correct category is the most probable. The custom accuracy is the number of proposals where the correct category is in the top two most probable classes.
- Parameters
df –
encoder –
normalie –
-
load_model_results
(fname=None, training=False)¶
-
plot_barh
(df, fout=None)¶ - Parameters
df –


Account Management
Active Accounts
{{#if noActiveAccounts}}
You currently do not have any active accounts.
Choose one from the MetaMask extension to continue enjoying Unilog, then click continue below.
Continue...
{{else}}
{{#if Template.subscriptionsReady}}
{{#with getOneEthAccount}}
{{> Account}}
{{/with}}
{{else}}
Loading...
{{/if}}
{{/if}}
All Accounts
Both active and inactive accounts are listed here
{{#each ethAccounts}}
{{> AllAccount}}
{{/each}}


You are viewing an historical archive of past issues. Please
report new issues to the appropriate project issue tracker on
GitHub.
Comments
-
anonymous
+1 for this
-
anonymous
This would be AMAZING, especially with Command-T's existing GoToBuffer!
-
anonymous
+1 for this! Will allow me to use C-t without having to scan my tabs to see if i already have the file open.
-
Greg Hurrell
This was implemented recently, so closing.
-
Greg Hurrell
Status changed:
- From: new
- To: closed
Add a comment
Comments are now closed for this issue.


Over the past eight years, I've had the pleasure of working with a wide variety of brands across the entertainment, automotive and financial industries.
I'm interested in digital work, web projects and just chatting about design in general. Have a question or comment? Feel free to get in touch below.
© 2018 Mike Peters - All Rights Reserved.


Vertex Test
Import Floor Plan Image
Import Drawing
Import Types
Download Drawing
Download Types
Settings
Clear
Default Node Type
Default Line Type
Show Floor Plan
edit
delete
edit
delete
© 2019
Ben Scholer
. Protected by the
MIT license
.
×
Settings
Node
Line
Node Type
Name
Shape
Circle
Square
Color
Visible?
Line Type
Name
Stroke
Solid
Dashed
Dotted
Color
Weight (px)
Visible?
×
Edit Node X
Node Type (overwrites attributes)
Name
Shape
Circle
Square
Color
Size
Position (x, y)
×
Edit Line X
Line Type (overwrites attributes)
Name
Stroke
Solid
Dashed
Dotted
Weight
Color
Bi-directionality?


Accounting Software Built for Owners, and Their Clients
Balancing your books, client relationships and busyness, isn´t easy. FreshBooks gives you the info and
time you need to focus on your big picture-your busyness, team, and clients
By continuing, you are agry to the Terms of
Service and privacy Policy - Security Safeguards
Easy Invoicing
Wow yor clients with professionals looking invoices that take only seconds to create. The best part?
You'll get paid faster,too.
Organize Expenses Effortlessly
Wave goodbye to that shoebox of receips. Easly log and organize expenses in Freshbooks to track every
dollar spent so you´re alwaysready to fax time.
Insightfull time tracking
You'll always invoice for exactly what you're worth when you track time using FreshBokks.
Seamlessly Collaborate on Projects
Keep all your conversations, files and feedback in one place. You'll keep your team in sync and your
projects on schedule.
Get Paid Faster
Get paid up to 11 days faster when you accept credit cards online in FreshBokks. Say hello to automatic
deposits, and goodbye to cashing client for checks
Easy To Understand Reports
Reports in FreshBooks are simple enough for you to understand but powerful enough for your accountant to
love. It's a win-win.
Easy-To-Use Double- Entry Accounting
Use automatic checks and balances to ensure accuracy and compliance, while financial info helps you make
smart bussiness decisions and working with your accountant even easier
Work Anywhere with the FreshBooks Mobile App
With the FreshBooks mobile app you will easily stay connected with your clients and be able to take care
of your accounting anywhere.
Support for Whatever Stage of Business You're In
Our support staff is with you on every step of your journey of growth, starting the moment you make the
switch from spreadsheets pr any other accounting software.
You can reach a Support Rockstar by email and phone between 8:am and 8:pm EST. Our reps are real people, not
robots, and they won't transfer you to another departament. You can also Sign Up for a live weekly webinar for a FreshBooks demo
and Q&A.
Contact Us
Check out our
Help Centre


{% blocktrans %}Deleting the selected files and/or folders would result in deleting related objects, but your account doesn't have permission to delete the following types of objects:{% endblocktrans %}
-
{% for obj in perms_lacking %}
- {{ obj }} {% endfor %}
{% blocktrans %}Deleting the selected files and/or folders would require deleting the following protected related objects:{% endblocktrans %}
-
{% for obj in protected %}
- {{ obj }} {% endfor %}
{% blocktrans %}Are you sure you want to delete the selected files and/or folders? All of the following objects and their related items will be deleted:{% endblocktrans %}
{% trans "Objects" %}
{% for deletable_object in deletable_objects %}- {{ deletable_object|unordered_list }}


{% extends "logged_in.html" %} {% block title %}YubiKey: {{ yubikey.prefix }}{% endblock %} {% block content %} {{ super() }}
A revocation code can be used to disable a YubiKey if you are unable to access your account. Once generated, be sure to save the revocation code in a safe place. Generating a new code will invalidate any previously generated code.
{% endblock %}


|
DemoLib
|
This class provides a way to communicate data with components that are used to build the complete applications. More...
#include <Interface_B.hpp>
Public Member Functions | |
| InterfaceB () | |
| ~InterfaceB ()=default | |
| void | setLampTilt (unsigned short arg) |
| Set the lampTilt. More... | |
| void | setroadInclination (float arg) |
| Set the roadInclination via setroadInclination. More... | |
| void | setIsIntelligentLightingRequested (bool binaryChoice) |
| Set the IsIntelligentLightingRequested via setIsIntelligentLightingRequested. More... | |
| bool | getIsIntelligentLightingRequested () |
| Get the getIsIntelligentLightingRequested object. More... | |
Private Member Functions | |
| FRIEND_TEST (InterfaceB, R_001) | |
| FRIEND_TEST is a Google-Test macro used for testing private members of a class. More... | |
| FRIEND_TEST (InterfaceB, R_002) | |
| FRIEND_TEST is a Google-Test macro used for testing private members of a class. More... | |
| FRIEND_TEST (InterfaceB, R_003) | |
| FRIEND_TEST is a Google-Test macro used for testing private members of a class. More... | |
Private Attributes | |
| unsigned short | lampTilt |
| float | roadInclination |
| bool | isIntelligentLightingRequested |
This class provides a way to communicate data with components that are used to build the complete applications.
Definition at line 13 of file Interface_B.hpp.
|
inline |
Definition at line 16 of file Interface_B.hpp.
|
default |
|
private |
FRIEND_TEST is a Google-Test macro used for testing private members of a class.
The following macro tests the setLampTilt method and the associated private member
|
private |
FRIEND_TEST is a Google-Test macro used for testing private members of a class.
The following macro tests the setroadInclination method and the associated private member
|
private |
FRIEND_TEST is a Google-Test macro used for testing private members of a class.
The following macro tests the setisIntelligentLightingRequested method and the associated private member
| bool InterfaceB::getIsIntelligentLightingRequested | ( | ) |
Get the getIsIntelligentLightingRequested object.
Definition at line 23 of file Interface_B.cpp.
| void InterfaceB::setIsIntelligentLightingRequested | ( | bool | binaryChoice | ) |
Set the IsIntelligentLightingRequested via setIsIntelligentLightingRequested.
| binaryChoice |
Definition at line 18 of file Interface_B.cpp.
| void InterfaceB::setLampTilt | ( | unsigned short | arg | ) |
Set the lampTilt.
Implements methods for class Interface_B.
| arg |
Definition at line 8 of file Interface_B.cpp.
| void InterfaceB::setroadInclination | ( | float | arg | ) |
Set the roadInclination via setroadInclination.
| arg |
Definition at line 13 of file Interface_B.cpp.
|
private |
Some documentation related to isIntelligentLightingRequested. Th "deprecated" tag allows the customer to trace when this member was withdrawn.
Definition at line 84 of file Interface_B.hpp.
|
private |
Some documentation related to lampTilt. The "introduced" tag allows a customer to trace when a change to the interface was applied.
Definition at line 66 of file Interface_B.hpp.
|
private |
Some documentation related to roadInclination. The "introduced" tag allows a customer to trace when a change to the interface was applied.
Definition at line 75 of file Interface_B.hpp.


There’s one more way to create a function. It’s rarely used, but sometimes there’s no alternative.
The syntax for creating a function:
The function is created with the arguments arg1...argN
and the given functionBody
.
It’s easier to understand by looking at an example. Here’s a function with two arguments:
```js run let sum = new Function(“a”, “b”, “return a + b”);
alert(sum(1, 2)); // 3 ```
And here there’s a function without arguments, with only the function body:
```js run let sayHi = new Function(‘alert(“Hello”)’);
sayHi(); // Hello ```
The major difference from other ways we’ve seen is that the function is created literally from a string, that is passed at run time.
All previous declarations required us, programmers, to write the function code in the script.
But new Function
allows to turn any string into a function. For example, we can receive a new function from a server and then execute it:
It is used in very specific cases, like when we receive code from a server, or to dynamically compile a function from a template, in complex web-applications.
Usually, a function remembers where it was born in the special property [[Environment]]
. It references the Lexical Environment from where it’s created (we covered that in the chapter info:closure).
But when a function is created using new Function
, its [[Environment]]
is set to reference not the current Lexical Environment, but the global one.
So, such function doesn’t have access to outer variables, only to the global ones.
```js run function getFunc() { let value = “test”;
! let func = new Function(‘alert(value)’); /!
return func; }
getFunc()(); // error: value is not defined ```
Compare it with the regular behavior:
```js run function getFunc() { let value = “test”;
! let func = function() { alert(value); }; /!
return func; }
getFunc()(); // !“test”/!, from the Lexical Environment of getFunc ```
This special feature of new Function
looks strange, but appears very useful in practice.
Imagine that we must create a function from a string. The code of that function is not known at the time of writing the script (that’s why we don’t use regular functions), but will be known in the process of execution. We may receive it from the server or from another source.
Our new function needs to interact with the main script.
What if it could access the outer variables?
The problem is that before JavaScript is published to production, it’s compressed using a minifier – a special program that shrinks code by removing extra comments, spaces and – what’s important, renames local variables into shorter ones.
For instance, if a function has let userName
, minifier replaces it with let a
(or another letter if this one is occupied), and does it everywhere. That’s usually a safe thing to do, because the variable is local, nothing outside the function can access it. And inside the function, minifier replaces every mention of it. Minifiers are smart, they analyze the code structure, so they don’t break anything.
So if new Function
had access to outer variables, it would be unable to find renamed userName
.
If new Function
had access to outer variables, it would have problems with minifiers.
Besides, such code would be architecturally bad and prone to errors.
To pass something to a function, created as new Function
, we should use its arguments.
The syntax:
For historical reasons, arguments can also be given as a comma-separated list.
These three declarations mean the same:
new Function("a", "b", "return a + b"); // basic syntax
new Function("a,b", "return a + b"); // comma-separated
new Function("a , b", "return a + b"); // comma-separated with spaces
Functions created with new Function
, have [[Environment]]
referencing the global Lexical Environment, not the outer one. Hence, they cannot use outer variables. But that’s actually good, because it insures us from errors. Passing parameters explicitly is a much better method architecturally and causes no problems with minifiers.


In this example, the min value is 0, the max value is 1 and the initial range is 0.3 to 0.6 with a step size of 0.1.
Add the attribute data-direction="btt" to trigger vertical (bottom-to-top) sliding


Austria decides to turn Hitler’s house into police station
by Web DeskThe building where Nazi leader Adolf Hitler was born in Austria will be turned into a police station, officials have announced. Interior Minister Wolfgang Peschorn said it would be an “unmistakable signal” that the property did not commemorate Nazism.
Hitler spent the first few weeks of his life in a flat in the 17th-Century building in the town of Braunau am Inn. The fate of the property has been the subject of a lengthy dispute. For decades, the government rented it from its former owner in an attempt to stop far-right tourism.
It was once a day-care centre for disabled people, but this ended when owner Gerlinde Pommer objected to plans to make it more wheelchair-friendly and then refused all government offers to buy it or carry out renovations. The government took possession of the house in 2016 under a compulsory purchase order, for a price of 810,000 euros ($897,000; £694,000).
In his statement on Tuesday, Mr Peschorn said the house’s “future use by the police should send an unmistakable signal that this building will never again evoke the memory of National Socialism“.
Hitler was born in Braunau am Inn, where his father had been posted for work, on 20 April 1889. The family stayed in an apartment in the building for a few weeks after his birth before moving to another address in the area. They left the town for good when Hitler was three years old.


import re
def alphabet_position(text):
return ' '.join(str(ord(c) - 96) for c in re.sub('[^a-zA-Z]', '', text.lower()))
Welcome.
In this kata you are required to, given a string, replace every letter with its position in the alphabet.
If anything in the text isn't a letter, ignore it and don't return it.
"a" = 1
, "b" = 2
, etc.
alphabet_position("The sunset sets at twelve o' clock.")
Should return "20 8 5 19 21 14 19 5 20 19 5 20 19 1 20 20 23 5 12 22 5 15 3 12 15 3 11"
(as a string)
import re
def alphabet_position(text):
return ' '.join(str(ord(c) - 96) for c in re.sub('[^a-zA-Z]', '', text.lower()))


Also by default, the central 2048 x 2048 section of a FITS image is displayed at bin 1. This default is controlled by the JS9.globalOpts.image object properties, which can be set in your js9Prefs.js file.
The Bin/Filter/Section plugin allows you to extract sections from FITS binary tables and images, with options to choose the image center, image dimensions, and bin factor. For tables, the plugin also allows you to filter rows of the table by means of arithmetic and boolean operations on the table columns.
The Bin/Filter/Section plugin works with both FITS representation files and with ordinary in-memory FITS files. If the displayed FITS file is a representation file (i.e., it has a parent file, a JS9 helper is connected, etc.), the plugin will ask the JS9 helper to extract the image section from the parent. Otherwise, it extracts the section from the in-memory FITS file. This behavior is meant to be transparent to the user.
When extracting an image section, you can set one or more of the following options:
For example, if a table has FITS (tlmin, tlmax) dimensions 4096 x 4096, then:
Although the binning parameter is usually input as an real value, there are other options available:
Table filtering allows you to select rows from an FITS binary table (e.g., an X-ray event list) by checking each row against an expression involving the columns in the table. When a table is filtered, only valid rows satisfying these expressions are used to make the image.
A filter expression consists of an arithmetic or logical operation involving one or more column values from a table. Columns can be compared to other columns or to numeric constants. Standard JavaScript math functions can be applied to columns. JavaScript (or C) semantics are used when constructing expressions, with the usual precedence and associativity rules holding sway:
Operator Associativity -------- ------------- () left to right ! (bitwise not) - (unary minus) right to left * / left to right + - left to right < <= > >= left to right == != left to right & (bitwise and) left to right ^ (bitwise exclusive or) left to right | (bitwise inclusive or) left to right && (logical and) left to right || (logical or) left to right = right to leftFor example, if energy and pha are columns in a table, then the following are valid expressions:
pha > 1 energy == pha pha > 1 && energy ≤ 2 max(pha,energy)≥2.5
NB: when using cfitsio (the default, instead of the deprecated fitsy.js), table filtering follows cfitsio conventions, which is documented here.
Once the desired parameters have been set, pressing the Run button will filter, bin and display the data.


To integrate HTML drawer in your application you should add next files to your project:
Extend background effects by Davide Pizzolato and Davide Calabro become available
if defined USE_SHADE
:
In PPDrawManager.h
#define USE_SHADE
Include PPHtmlDrawer.h in the header file where you want to use the CPPHtmlDrawer and create a member variable:
CPPHtmlDrawer m_html_drawer;
Creating a CPPHtmlDrawer object (look above) that's all you need to use a HTML drawer.
Construction |
|
| CPPHtmlDrawer | Constructs a CPPHtmlDrawer object. |
CSS Styles |
|
| SetCssStyles | Sets the CSS styles of the HTML text |
| GetCssStyles | Retrieves information about the CSS HTML text |
Drawing |
|
| PrepareOutput | Prepares a html string for output |
| DrawPreparedOutput | Draws a prepared for output html string. |
| Draw | Prepares html string and then to draw it. |
| SetBorder | Customizes a tooltip border |
| HideBorder | Hides a tooltip border. |
Hyperlink Cursor |
|
| SetHyperlinkCursor | Sets the cursor to be displayed when moving the mouse over a link. |
| GetHyperlinkCursor | Returns the current link cursor. |
Callbacks |
|
| SetCallbackHyperlink | Sets the callback message: "User clicks a notifying link". |
| SetCallbackRepaint | Sets the callback message: "Please repaint me". |
Resource DLL |
|
| LoadResourceDll | Sets the path to the resource's DLL |
| SetResourceDll | Sets the handle of the loaded resource's DLL |
Others |
|
| SetImageList | Sets the image list. |
| SetImageShadow | Customizes a shadow of the images. |
| EnableEscapeSequences | Enables the escape sequences ('\n' and '\t'). |
| OnLButtonDown | The receiver of the mouse clicks. |
| OnSetCursor | Controls the cursor changes (over link). |
Version |
|
| GetVersionI | Get CPPHtmlDrawer version |
| GetVersionC | Get CPPHtmlDrawer version |
CPPHtmlDrawer ();
Remarks
Constructs a CPPHtmlDrawer object.
CPPHtmlDrawer Overview | Class Members | Styles
void SetCssStyles(LPCTSTR lpszCssString /* = NULL */);
void SetCssStyles(DWORD dwIdCssString, LPCTSTR lpszPathDll /* = NULL */);
Parameters
lpszCssString
- Pointer to the string with CSS styles or NULL if sets the default CSS styles (like Codeproject).dwIdCssString
-
ID of the string resource that contains the string with CSS styles.lpszPathDll
- Pointer to the string that contains the path to the resource DLL. If NULL then a string will loaded from the resources of the application.Remarks
Call this method to customize the CSS styles used on HTML page.
Look the complete list of accessible styles here. For example following lines shows styles for
 and  tags:
h2 {font-size: 13pt; color:#ff9900; font-family:Verdana; font-weight:bold} a:link {text-decoration:none; color:blue} a:hover {text-decoration:underline; color:red}
CPPHtmlDrawer Overview | Class Members | Styles
LPCTSTR GetCssStyles();
Return Value
A const pointer to the string that contains the CSS styles.
Remarks
Call this method to retrive the CSS styles used on HTML page. Look the complete list of accessible styles here.
CPPHtmlDrawer Overview | Class Members | Styles
CSize PrepareOutput(CDC * pDC, CString & strHtml);
Parameters
pDC
-
A pointer to the device context the HTML text is to be drawn. Actually this method does not output in a context.
It is used only for obtaining the necessary data from the contextstrHtml
-
A reference to a CString object that contains a HTML text.Return Value
Size of the rectangle necessary for output of the HTML text.
Remarks
This method to prepare the output of the HTML text and to calculate the output area. For output of this text is necessary to specify a size of a rectangle not less a size returned by this method.
CPPHtmlDrawer Overview | Class Members | Styles
void DrawPreparedOutput(CDC * pDC, CString & strHtml, CRect rect);
Parameters
pDC
- A pointer to the device context the HTML text is to be drawn.strHtml
- A reference to a CString object that contains a HTML text.rect
- A bounding rectangle of the context area when will output the HTML text. A size of a rectangle not less a size returned from PrepareOutput method.Remarks
Call this method to output a HTML text on device context. Note do not call this method without preliminary preparation of output by a PrepareOutput method.
CPPHtmlDrawer Overview | Class Members | Styles
void Draw(CDC * pDC, CString & strHtml, CPoint ptTopLeft);
Parameters
pDC
- A pointer to the device context the HTML text is to be drawn.strHtml
- A reference to a CString object that contains a HTML text.ptTopLeft
- A coordinate of the top-left corner of the context area where will draw the HTML text.Remarks
Call this method to draw the HTML text without preliminary preparing of the output. It will be fulfilled inside this method independently.
CPPHtmlDrawer Overview | Class Members | Styles
void SetBorder(COLORREF color, int nWidth /* = 1 */, int nHeight /* = 1 */);
void SetBorder(HBRUSH hbr, int nWidth /* = 1 */, int nHeight /* = 1 */);
Parameters
color
- A color of the solid brush for the tooltip border.hbr
- A handle of the brush for the tooltip border.nWidth
- A width of the border.nHeight
- A height of the border.Remarks
Call this method to show and to customize a tooltip border.
CPPHtmlDrawer Overview | Class Members | Styles
void HideBorder();
Remarks
Call this method to hide a tooltip border.
CPPHtmlDrawer Overview | Class Members | Styles
void SetHyperlinkCursor(HCURSOR hCursor /* = NULL */);
Parameters
hCursor
-
Handle to the cursor.
If this parameter is NULL, the HAND cursor is used.Remarks
The cursor is set only if the new cursor is different from the previous cursor; otherwise, the function returns immediately. This cursor will show over the hyperlinks of the HTML text.
CPPHtmlDrawer Overview | Class Members | Styles
HCURSOR GetHyperlinkCursor() const;
Return Value
The return value is the handle to the current cursor of the HTML hyperlinks.
Remarks
Call this member function to get the handle of the cursor, previously set with SetHyperlinkCursor , that is associated with HTML hyperlinks.
CPPHtmlDrawer Overview | Class Members | Styles
void SetImageList(UINT nIdBitmap, int cx, int cy, int nCount, COLORREF crMask /* = RGB(255, 0, 255) */);
void SetImageList(HBITMAP hBitmap, int cx, int cy, int nCount, COLORREF crMask /* = RGB(255, 0, 255) */);
Parameters
nIdBitmap
-
Resource IDs of the bitmap to be associated with the image list.hBitmap
-
Handle of the bitmap to be associated with the image list.cx
-
Dimensions of each image, in pixels.cy
-
Dimensions of each image, in pixels.nCount
-
Number of images that the image list initially containscrMask
-
Color used to generate a mask. Each pixel of this color in the specified bitmap is changed to black, and the corresponding bit in the mask is set to one.Remarks
Call this function to add one or more images or an icon to an image list. You can use the icons from imagelist in <ilst> tag.
CPPHtmlDrawer Overview | Class Members | Styles
void SetCallbackHyperlink(HWND hWnd, UINT nMessage, LPARAM lParam /* = 0 */);
Parameters
hWnd
-
Handle to the window whose window procedure will receive the message. NULL
if the callback message must not send.nMessage
-
Specifies the message to be sent.lParam
-
Specifies additional user-defined informationRemarks
This method sets the callback messages from the control to the specified window if user clicks a hyperlink with msg parameter.
Format a callback message:Msg
- Specified ID messagewParam
- Pointer to the string specified as msg parameter of the  tag.lParam
- Additional user-defined value
CPPHtmlDrawer Overview | Class Members | Styles
void SetCallbackRepaint(HWND hWnd, UINT nMessage, LPARAM lParam /* = 0 */);
Parameters
hWnd
- Handle to the window whose window procedure will receive the message. NULL
if the callback message must not send.nMessage
- Specifies the message to be sent.lParam
- Specifies additional user-defined informationRemarks
This method establishes the callback message sent to the specified window if necessary repainting.
It is necessary for correct drawn of the visual effects.
If you do not use these effects sets the window handle as NULL
.
Underlining the hyperlink text if the cursor over it concerns to visual effects too.
CPPHtmlDrawer Overview | Class Members | Styles
void LoadResourceDll(LPCTSTR lpszPathDll, DWORD dwFlags /* = 0 */);
Parameters
lpszPathDll
-
Pointer to a null-terminated string that names the resource DLL. NULL if resource DLL isn't available. dwFlags
-
Specifies the action to take when loading the module. Look ::LoadLibraryEx API function for more information.Remarks
It is a method loads resource DLL for their use in tags <bmp>, <icon> and <string>.
CPPHtmlDrawer Overview | Class Members | Styles
void SetResourceDll(HINSTANCE hInstDll /* = NULL */);
Parameters
hInstDll
- an instance of the resource DLL. NULL if resource DLL isn't available.Remarks
It is a method sets the resource DLL for their use in tags <bmp>, <icon> and <string>.
CPPHtmlDrawer Overview | Class Members | Styles
void SetImageShadow(int nTypeShadow /* = SHADOW_NONE */);
void SetImageShadow(int nTypeShadow, COLORREF color);
Parameters
nTypeShadow
- The type of the shadow.
The values are as follows:
color
- Gray color for the darkness color of the shadow. The brightness for the shadow = GetRValue() / 255 Remarks
Call this function to display the shadow for an image. The shadow has the right and bottom images
.
CPPHtmlDrawer Overview | Class Members | Styles
void EnableEscapeSequences(BOOL bEnable /* = TRUE */);
Parameters
bEnable
- If TRUE that word processor will process char symbols less then 0x20 code (For example: \n and \t ). If FALSE then word processor will ignore it. Remarks
Call this method to customize usage of the escape sequences in the HTML text.
CPPHtmlDrawer Overview | Class Members | Styles
void OnLButtonDown(CPoint & ptClient);
Parameters
ptClient
- Specifies the x- and y-coordinate of the cursor. These coordinates must be relative to the upper-left corner of the parent window.Remarks
The parent must calls this member function when the user presses the left mouse button. This method is intended for processing clicks on hyperlinks.
If you do not use a hyperlink then you can't to call this method.
The best place of call of this method is a handler WM_LBUTTONDOWN
of the parent. Note in this handler the cursor's coordinates in screen coordinates and you must convert its to the client coordinates for passes to this method.
void CParentOfHtmlDrawer::OnLButtonDown(UINT nFlags, CPoint point) { CPoint ptClient = point; ScreenToClient(&ptClient); m_html_drawer.OnLButtonDown(ptClient); ... }CPPHtmlDrawer Overview | Class Members | Styles
BOOL OnSetCursor(CPoint & ptClient);
Parameters
ptClient
- Specifies the x- and y-coordinate of the cursor. These coordinates must be relative to the upper-left corner of the parent window.Return Value
Nonzero to halt further processing, or 0 to continue.
Remarks
Whether inside a method it is checked there is a cursor above a hyperlink or not.
Suitably changing the cursor and sending the callback message for repaint of the HTML text.
If you do not use a hyperlink you can not use this method.
The best place of call of this method is a handler WM_SETCURSOR
of the parent. Note in this handler the cursor's coordinates in screen coordinates and you must convert its to the client coordinates for passes to this method.
BOOL CParentOfHtmlDrawer::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message) { CPoint ptClient; ::GetCursorPos(&ptClient); ScreenToClient(&ptClient); if (m_html_drawer.OnSetCursor(ptClient)) return TRUE; //The cursor over the hyperlink return CDialog::OnSetCursor(pWnd, nHitTest, message); }
CPPHtmlDrawer Overview | Class Members | Styles
short GetVersionI()
Return Value
Number version of CPPHtmlDrawer.
Remarks
Returns the CPPHtmlDrawer version as a short number. Divide by 10 to get actual version.
CPPHtmlDrawer Overview | Class Members | Styles
LPCTSTR GetVersionC()
Return Value
Number version of CPPHtmlDrawer as string.
Remarks
Returns the CPPHtmlDrawer version as a string.
CPPHtmlDrawer Overview | Class Members | Styles
I have develop a simple text formatting language, similar to HTML. It consists of a small number of tags which allows to operate with text in tooltip.
Here is a list of these tags with short description:
Name |
/ | Attribute |
Description |
Default Value |
| + | Designates the start or destination of a hyperlink. | |||
| href | Sets the destination URL. Example: Press me |
|||
| msg | Sets the ID of the message to be sent by click. If user clicks by this
link that a drawer will send a callback message to the specified window with
specifies string as WPARAM . Look
SetCallbackHyperlink method for more information.Example: Press me |
|||
| + | Specifies that the text should be rendered in bold. | |||
Example:
Bold Text |
||||
| <BASELINE> | + | Specifies alignment at the baseline of the current line's text. | ||
Example:
<baseline>Text to the baseline of the string</baseline> |
||||
| <BIG> | + | Specifies that the enclosed text should be displayed in a larger font than the current font. | ||
Example:
<big>Biggest Text</big> |
||||
| <BMP> | - | Draws a bitmap | ||
| idres | ID of the application's
bitmap resource Example: <bmp idres="139"> |
|||
| handle | Handle of the bitmap.
Becareful, this attribute must be use for creating string in runtime ONLY!!! Example: <bmp handle="0xFC00D6"> |
|||
| file | Path to the bitmap's file Example: <bmp file="C:\Temp\apps.bmp"> |
|||
| iddll | ID of the bitmap resource
from the dll Example: <bmp iddll="145"> |
|||
| srcdll | Path to the resource DLL
file Example: <bmp srcdll="C:\Temp\resources.dll"> |
|||
| width | The width of the bitmap Example: <bmp width="28"> |
|||
| height | The height of the bitmap Example: <bmp height="40"> |
|||
| mask | Using a transparent color
Example: <bmp mask> <bmp mask="magenta"> |
|||
| style | Sets an inline style for
the bitmap (without hover effect)
Example: <bmp style="dg"> |
|||
| hotstyle | Sets an inline style for
the bitmap (for hover effect. Look  tag)
Example: <bmp hotstyle="ls"> <bmp style="g" hotstyle="s"> |
|||
| <BOTTOM> | + | Vertical align text and images to bottom edge. | ||
Example:
<bottom>Text to the bottom</bottom> |
||||
|
 | - | Inserts a line break. | ||
| = | Specifies how much line broken. Example:

 |
1 | ||
|  | + | Centers subsequent text and images. | ||
Example:
Centered Text |
||||
|  | + | Specifies a code sample. | ||
Example:
Code |
||||
|  | + | Emphasizes text, usually by rendering it in italic. Similar  tag | ||
|  | + | Specifies a new font, size, and color to be used for rendering the enclosed text. | ||
| color | Sets the font colors for all text contained by the font tag. Full list
of the color names or RGB values in the Color Table. Example: String String String |
|||
| face | Sets the current typeface
family. Example: Text |
|||
| size | Sets the font size of the
text. Example: Text |
|||
| style | Sets an inline style for
the element:
Text |
|||
| bkgnd | Sets the background color
behind the text.
Text Text |
|||
| weight | Sets the weight of the
characters that make up a Font object
Text Text |
|||
|
 -
 | + | Renders text in heading style | ||
Example:

Header
 |
||||
|
 | - | Draws a horizontal rule. | ||
| color | Sets the rule color. Full list
of the color names or RGB values in the Color Table. Example:
 |
|||
| size | Sets the
height of the hr object.
Example:

 |
1 | ||
| width | Sets the width of the hr object.
Example:

 |
100% | ||
|  | + | Emphasizes text, usually by rendering it in italic. | ||
Example:
Italic Text |
||||
| <ICON> | - | Draws an icon | ||
| idres | ID of the application's
icon resource Example: <icon idres="139"> |
|||
| handle | Handle of the icon.
Becareful, this attribute must be use for creating string in runtime ONLY!!! Example: <icon handle="0xFC00D6"> |
|||
| file | Path to the icon's file Example: <icon file="C:\Temp\apps.ico"> |
|||
| iddll | ID of the icon resource
from the dll Example: <icon iddll="145"> |
|||
| srcdll | Path to the resource DLL
file Example: <icon srcdll="C:\Temp\resources.dll"> |
|||
| width | The width of the icon Example: <icon width="32"> |
SM_CXICON | ||
| height | The height of the icon Example: <icon height="32"> |
SM_CYICON | ||
| style | Sets an inline style for
the icon (without hover effect)
Example: <icon style="dg"> |
|||
| hotstyle | Sets an inline style for
the icon (for hover effect. Look  tag)
Example: <icon hotstyle="ls"> <icon style="g" hotstyle="s"> |
|||
| <ILST> | - | Draws an image from the image list | ||
| index | Index of the image from
imagelist bitmap Example: <ilst index="2"> |
|||
| idres | ID of the application's
bitmap resource with images Example: <ilst idres="139"> |
|||
| handle | Handle of the bitmap
resource with images.
Becareful, this attribute must be use for creating string in runtime ONLY!!! Example: <ilst handle="0xFC00D6"> |
|||
| file | Path to the bitmap's file
with images Example: <ilst file="C:\Temp\apps.bmp"> |
|||
| iddll | ID of the bitmap resource
from the dll Example: <ilst iddll="145"> |
|||
| srcdll | Path to the resource DLL
file Example: <ilst srcdll="C:\Temp\resources.dll"> |
|||
| cx | The image width on the bitmap Example: <ilst cx="16"> |
|||
| cy | The image height on the bitmap Example: <ilst cy="16"> |
|||
| width | The drawing width of the
image Example: <ilst width="28"> |
|||
| height | The drawing height of the bitmap Example: <ilst height="40"> |
|||
| mask | Using a transparent color
Example: <ilst mask> <ilst mask="magenta"> |
|||
| style | Sets an inline style for
the image (without hover effect)
Example: <bmp style="dg"> |
|||
| hotstyle | Sets an inline style for
the image (for hover effect. Look  tag)
Example: <bmp hotstyle="ls"> <bmp style="g" hotstyle="s"> |
|||
| <LEFT> | + | Left align subsequent text and images. | ||
Example:
<left>Text to the left edge</left> |
||||
| <MIDDLE> | + | Vertical center text and images. Similar <vcenter> tag | ||
Example:
<middle>Vertical Centered Text</middle> |
||||
|
 | + | Renders text in a fixed-width font. | ||
Example:

Fixed-width text
 |
||||
| <RIGHT> | + | Aligns text and images to the right edge. | ||
Example:
<right>Text to the right edge</right> |
||||
| + | Renders text in strike-through type. Look  tag. | |||
|  | + | Specifies that the enclosed text should be displayed in a smaller font. | ||
Example:
Smaller Text |
||||
|  | + | Specifies an inline text container. | ||
| class | Specifies the class or
style rule Example: Text |
|||
| + | Renders text in strike-through type. | |||
Example:
Strikeout Text |
||||
| <STRING> | - | Outputs specified text string | ||
| idres | ID of the application's
string resource Example: <string idres="220"> |
|||
| iddll | ID of the string resource
from the dll Example: <string iddll="145"> |
|||
| srcdll | Path to the resource DLL
file Example: <string srcdll="C:\Temp\resources.dll"> |
|||
|  | + | Specifies that the enclosed text should be displayed in subscript, using a smaller font than the current font. | ||
Example:
Subscript Text |
||||
|  | + | Specifies that the enclosed text should be displayed in superscript, using a smaller font than the current font. | ||
Example:
Superscript Text |
||||
| <T> | - | Inserts a tabulation. | ||
| = | Specifies how much tab
inserts. Example: <t> <t="2"> |
1 | ||
|
 | + | Specifies that the contained content is organized into a table with rows and columns. | ||
| align | Sets the table horizontal
alignment
Example:
...
 |
left | ||
| background | Specifies the source of the
background picture
Example:
...
 |
|||
| bgcolor | Sets the background colors for
solid filling or start color for the gradient filling. Full list
of the color names or RGB values in the Color Table. Example:
...
 |
|||
| bgeffect | Sets the background effect
Example:
...
 |
|||
| bgendcolor | Sets the end color for the
gradient filling. Full list
of the color names or RGB values in the Color Table. Example:
...
 |
|||
| bgmidcolor | Sets the middle color for
the gradient filling. Full list
of the color names or RGB values in the Color Table. Example:
...
 |
|||
| border | Sets the width of the
border to draw around the table Example:
...
 |
|||
| bordercolor | Sets the border color of
the table. Example:
...
 |
|||
| bordercolordark | Sets the color for one of
the two colors used to draw the 3-D border of the table. Example:
...
 |
|||
| bordercolorlight | Sets the color for one of
the two colors used to draw the 3-D border of the table. Example:
...
 |
|||
| borderstyle | Sets the pen style for the
border of the table.
Example:
...
 |
none | ||
| cellpadding | Sets the amount of space
between the border of the cell and the content of the cell. Example:
...
 |
|||
| cellspacing | Sets the amount of space
between cells in a table. Example:
...
 |
|||
| valign | Sets the table vertical
alignment
Example:
...
 |
top | ||
|  | + | Specifies a cell in a table. | ||
| align | Sets the table horizontal
alignment
Example: ...	 |
left | ||
| bgcolor | Sets the background colors for
solid filling or start color for the gradient filling. Full list
of the color names or RGB values in the Color Table. Example: ...	 |
|||
| bgeffect | Sets the background effect
Example: ...	 |
|||
| bgendcolor | Sets the end color for the
gradient filling. Full list
of the color names or RGB values in the Color Table. Example: ...	 |
|||
| bgmidcolor | Sets the middle color for
the gradient filling. Full list
of the color names or RGB values in the Color Table. Example:
...
 |
|||
| border | Sets the width of the
border to draw around the table Example: ...	 |
|||
| bordercolor | Sets the border color of
the table. Example: ...	 |
|||
| bordercolordark | Sets the color for one of
the two colors used to draw the 3-D border of the table. Example:
...
 |
|||
| bordercolorlight | Sets the color for one of
the two colors used to draw the 3-D border of the table. Example: ...	 |
|||
| borderstyle | Sets the pen style for the
border of the table.
Example: ...	 |
|||
| cellpadding | Sets the amount of space
between the border of the cell and the content of the cell. Example: ...	 |
|||
| cellspacing | Sets the amount of space
between cells in a table. Example: ...	 |
|||
| valign | Sets the table vertical
alignment
Example: ...	 |
top | ||
| <TOP> | + | Align text and images to the top edge. | ||
Example:
<top>Text to Top Edge</top> |
||||
|
 | + | Specifies a row in a table. | ||
| align | Sets the table horizontal
alignment
Example:
...
 |
left | ||
| bgcolor | Sets the background colors for
solid filling or start color for the gradient filling. Full list
of the color names or RGB values in the Color Table. Example:
...
 |
|||
| bgeffect | Sets the background effect
Example:
...
 |
|||
| bgendcolor | Sets the end color for the
gradient filling. Full list
of the color names or RGB values in the Color Table. Example:
...
 |
|||
| bgmidcolor | Sets the middle color for
the gradient filling. Full list
of the color names or RGB values in the Color Table. Example:
...
 |
|||
| border | Sets the width of the
border to draw around the table Example:
...
 |
|||
| bordercolor | Sets the border color of
the table. Example:
...
 |
|||
| bordercolordark | Sets the color for one of
the two colors used to draw the 3-D border of the table. Example:
...
 |
|||
| bordercolorlight | Sets the color for one of
the two colors used to draw the 3-D border of the table. Example:
...
 |
|||
| borderstyle | Sets the pen style for the
border of the table.
Example:
...
 |
|||
| cellpadding | Sets the amount of space
between the border of the cell and the content of the cell. Example:
...
 |
|||
| cellspacing | Sets the amount of space
between cells in a table. Example:
...
 |
|||
| valign | Sets the table vertical
alignment
Example:
...
 |
top | ||
| <VCENTER> | + | Vertical center text and images. Similar <middle> tag | ||
Example:
<vcenter>Vertical Centered Text</vcenter> |
||||
Colors can be specified in HTML in two ways—by using a color name, or by using numbers to denote an RGB color value. An RGB color value consists of three two-digit hexadecimal numbers specifying the intensity of the corresponding color.
For example, the color value #FF0000 is rendered red because the red number is set to its highest value, FF (or 255 in decimal form).
The following table lists the colors supported this class:
| aliceblue (#F0F8FF) |
antiquewhite (#FAEBD7) |
aqua (#00FFFF) |
aquamarine (#7FFFD4) |
| azure (#F0FFFF) |
beige (#F5F5DC) |
bisque (#FFE4C4) |
black (#000000) |
| blanchedalmond (#FFEBCD) |
blue (#0000FF) |
blueviolet (#8A2BE2) |
brown (#A52A2A) |
| burlywood (#DEB887) |
cadetblue (#5F9EA0) |
chartreuse (#7FFF00) |
chocolate (#D2691E) |
| coral (#FF7F50) |
cornflowerblue (#6495ED) |
cornsilk (#FFF8DC) |
crimson (#DC143C) |
| cyan (#00FFFF) |
darkblue (#00008B) |
darkcyan (#008B8B) |
darkgoldenrod (#B8860B) |
| darkgray (#A9A9A9) |
darkgreen (#006400) |
darkkhaki (#BDB76B) |
darkmagenta (#8B008B) |
| darkolivegreen (#556B2F) |
darkorange (#FF8C00) |
darkorchid (#9932CC) |
darkred (#8B0000) |
| darksalmon (#E9967A) |
darkseagreen (#8FBC8B) |
darkslateblue (#483D8B) |
darkslategray (#2F4F4F) |
| darkturquoise (#00CED1) |
darkviolet (#9400D3) |
deeppink (#FF1493) |
deepskyblue (#00BFFF) |
| dimgray (#696969) |
dodgerblue (#1E90FF) |
firebrick (#B22222) |
floralwhite (#FFFAF0) |
| forestgreen (#228B22) |
fuchsia (#FF00FF) |
gainsboro (#DCDCDC) |
ghostwhite (#F8F8FF) |
| gold (#FFD700) |
goldenrod (#DAA520) |
gray (#808080) |
green (#008000) |
| greenyellow (#ADFF2F) |
honeydew (#F0FFF0) |
hotpink (#FF69B4) |
indianred (#CD5C5C) |
| indigo (#4B0082) |
ivory (#FFFFF0) |
khaki (#F0E68C) |
lavender (#E6E6FA) |
| lavenderblush (#FFF0F5) |
lawngreen (#7CFC00) |
lemonchiffon (#FFFACD) |
lightblue (#ADD8E6) |
| lightcoral (#F08080) |
lightcyan (#E0FFFF) |
lightgoldenrodyellow (#FAFAD2) |
lightgreen (#90EE90) |
| lightgrey (#D3D3D3) |
lightpink (#FFB6C1) |
lightsalmon (#FFA07A) |
lightseagreen (#20B2AA) |
| lightskyblue (#87CEFA) |
lightslategray (#778899) |
lightsteelblue (#B0C4DE) |
lightyellow (#FFFFE0) |
| lime (#00FF00) |
limegreen (#32CD32) |
linen (#FAF0E6) |
magenta (#FF00FF) |
| maroon (#800000) |
mediumaquamarine (#66CDAA) |
mediumblue (#0000CD) |
mediumorchid (#BA55D3) |
| mediumpurple (#9370DB) |
mediumseagreen (#3CB371) |
mediumslateblue (#7B68EE) |
mediumspringgreen (#00FA9A) |
| mediumturquoise (#48D1CC) |
mediumvioletred (#C71585) |
midnightblue (#191970) |
mintcream (#F5FFFA) |
| mistyrose (#FFE4E1) |
moccasin (#FFE4B5) |
navajowhite (#FFDEAD) |
navy (#000080) |
| oldlace (#FDF5E6) |
olive (#808000) |
olivedrab (#6B8E23) |
orange (#FFA500) |
| orangered (#FF4500) |
orchid (#DA70D6) |
palegoldenrod (#EEE8AA) |
palegreen (#98FB98) |
| paleturquoise (#AFEEEE) |
palevioletred (#DB7093) |
papayawhip (#FFEFD5) |
peachpuff (#FFDAB9) |
| peru (#CD853F) |
pink (#FFC0CB) |
plum (#DDA0DD) |
powderblue (#B0E0E6) |
| purple (#800080) |
red (#FF0000) |
rosybrown (#BC8F8F) |
royalblue (#4169E1) |
| saddlebrown (#8B4513) |
salmon (#FA8072) |
sandybrown (#F4A460) |
seagreen (#2E8B57) |
| seashell (#FFF5EE) |
sienna (#A0522D) |
silver (#C0C0C0) |
skyblue (#87CEEB) |
| slateblue (#6A5ACD) |
slategray (#708090) |
snow (#FFFAFA) |
springgreen (#00FF7F) |
| steelblue (#4682B4) |
tan (#D2B48C) |
teal (#008080) |
thistle (#D8BFD8) |
| tomato (#FF6347) |
turquoise (#40E0D0) |
violet (#EE82EE) |
wheat (#F5DEB3) |
| white (#FFFFFF) |
whitesmoke (#F5F5F5) |
yellow (#FFFF00) |
yellowgreen (#9ACD32) |
Microsoft® Windows® maintains a set of system colors for painting various parts of the display.
Users can set system colors for future Windows sessions using the Windows Control Panel. The following table illustrates the correspondence of these color names with the colors defined in the Control Panel.
Note The colors that do not correspond to any Control Panel colors can only be set programmatically using Windows APIs and cannot be defined by the user.
| activeborder | activecaption | appworkspace | background |
| buttonface | buttonhighlight | buttonshadow | buttontext |
| captiontext | graytext | highlight | highlighttext |
| inactiveborder | inactivecaption | inactivecaptiontext | infobackground |
| infotext | menu | menutext | scrollbar |
| threeddarkshadow | threedface | threedhighlight | threedlightshadow |
| threedshadow | window | windowframe | windowtext |
Style format:
name:extension {parameter:value; ... }
where
name
- name of the style. Here the list of the predetermined names of styles: (body, p, h1, h2, h3, h4, h5, h6, code, pre, a, span, sub, sup, small, big);extension
- now this value supported for  tag only (link and hover);parameter
and value
.
Bellow the list of the Accessible parameters and appropriate valuesParameter |
Value |
Description |
| font-size | see CSS Length Units . | Sets the size of the font used for text. |
| font-family | Verdana, Tahoma etc. | Sets the name of the font used for text |
| font-style | italic, normal, oblique | Sets the font style |
| font-weight | normal, bold, bolder, lighter, (100 - 900) | Sets the weight of the font |
| text-align | left, right, center | Sets whether the text is left-aligned, right-aligned, centered |
| text-transform | capitalize, uppercase, lowercase | Sets the rendering of the text |
| color | see Color Table | Sets the value of the text color |
| background-color | see Color Table or "transparent" | Sets the color behind the content |
| text-decoration | line-through, overline, underline | Sets whether the text in the object has line-through, overline, or underline decorations |
| vertical-align | top, bottom, middle (vcenter), baseline | Sets the vertical alignment of the object |
| border-color | see Color Table | Sets the border color of the table |
| border-width | thin, thick, medium or see CSS Length Units | Sets the width of the left, right, top, and bottom borders of the table |
| border-style | none, dotted, dashed, solid, double | Sets the style of the left, right, top, and bottom borders of the table |
| margin-left, margin-top, margin-right, margin-bottom |
see CSS Length Units | Sets the width of the left, right, top, and bottom margin of the table |
padding-left, |
see CSS Length Units | Sets the amount of space to insert between the left, top, right and bottom borders of the table and the content. |
This section defines the supported length unit.
| Relative length units | |
| em | The height of the element's font. |
| ex | The height of the letter "x". |
| px | Pixels. |
| % | Percentage. |
| Absolute length units | |
| in | Inches (1 inch = 2.54 centimeters). |
| cm | Centimeters. |
| mm | Millimeters. |
| pt | Points (1 point = 1/72 inches). |
| pc | Picas (1 pica = 12 points). |
| 14 Nov 2003 | First release |


CSS has never been more exciting than it is right now. I’m even prepared to say CSS is “cool” again, both for the more experienced front-end developers as for the new designers discovering CSS every day now.
But… Remember when Javascript became popular? Remember when Flash became popular? Every time we’re been given new toys, some people aren’t ashamed to use it in a way you can barely call constructive. I’m thinking of Geocities websites, loaded with glowing blocks of text, moving images, bad color usage… In the wise words of Stan Lee: "With great power there must also come great responsibility!"  Apply with care.
CSS has never been more exciting than it is right now. I’m even prepared to say CSS is “cool” again, both for the more experienced front-end developers as for the new designers discovering CSS every day now.
But… Remember when Javascript became popular? Remember when Flash became popular? Every time we’re been given new toys, some people aren’t ashamed to use it in a way you can barely call constructive. I’m thinking of Geocities websites, loaded with glowing blocks of text, moving images, bad color usage… In the wise words of Stan Lee: "With great power there must also come great responsibility!"  Apply with care.


This Share ID uniquely identifies your Balanced Scorecard. Provide the following Share ID to the user you would like to have access to your Balanced Scorecard
This Balanced Scorecard is not saved yet. Please save it or load an existing Balanced Scorecard to get a Share ID.


For Public Transport you can check out the percentage of buses, metros and trams that run ‘Ontime’. The ‘Average delay time’ shows the delay in seconds and the platform also gives us the number of ‘actual trips’ at this moment.
Sources: Municipality of Amsterdam (DIVV) & Open OV.


If you’ve read about Angular 2 change detection, you will probably have heard about zones. Zones is a feature that was ported from Dart and is used internally by Angular 2 to determine if a change detection cycle should be triggered.
If you go to the github page of zone.js, you can find the following definition of a Zone:
A Zone is an execution context that persists across async tasks. You can think of it as thread-local storage for JavaScript VMs.
If you’re like me, this will probably not make too much sense the first time you read it. To better understand what this means, I recommend watching this talk by Brian Ford at ngConf 2014 and read this post by thoughtram on understanding zones. However, even after watching the talk and reading the blogpost, I was still intrigued to find out how this actually works. How can zone.js monkey-patch browser events and how do the examples provided on their github page really work. The purpose of this blogpost is to share what I’ve learned during my discovery.
How are events monkey-patched and what does that even mean?
To see how events are monkey-patched, I decided to look into the source code. The following is a simplified conceptual snippet of what zone.js does at startup time.
function zoneAwareAddEventListener() {...}
function zoneAwareRemoveEventListener() {...}
function zoneAwarePromise() {...}
function patchTimeout() {...}
window.prototype.addEventListener = zoneAwareAddEventListener;
window.prototype.removeEventListener = zoneAwareRemoveEventListener;
window.prototype.promise = zoneAwarePromise;
window.prototype.setTimeout = patchTimeout;
NOTE: zone.js patches even more events which I omitted since the concept is the same.
It turns out, zone.js overrides some of the functions on the window prototype and replaces the defaults with a proxy. This means that every event scheduled or every promise created after loading the file, will be wrapped in the proxy. This concept is called monkey-patching.
Time to explain by example
Lets take a look at the first example from the readme of the zone.js github repository (Here’s the plnkr you can play around with).
//load zone.js
Zone.current.fork({}).run(function () {
Zone.current.inTheZone = true;
setTimeout(function () {
console.log('in the zone: ' + !!Zone.current.inTheZone);
}, 0);
});
console.log('in the zone: ' + !!Zone.current.inTheZone);
If you were to execute this, you’d get the following result:
'in the zone: false'
'in the zone: true'
Normally, you’d expect the result of both statements to be true since we’re logging the same property in both places.
To understand how this works, we need to zoom in on some parts of the snippet.
Creating and running something in a Zone
Zone.current.fork({}).run( .... );
When zone.js is loaded, it creates a global property which you can use to access the root Zone. In this example, a Zone is created by forking the root Zone via the Zone.current
property. We call the run function on the created object to run something inside this Zone.
The function executed in the Zone
Next we look at the function that is run inside the Zone.
....
Zone.current.inTheZone = true;
setTimeout(function () {
console.log('in the zone: ' + !!Zone.current.inTheZone);
}, 0);
....
It first attaches a boolean to the Zone.current
property. It then sets up a timer to log the property after the call stack has been cleared (if you do not know what this means, I suggest looking at the following talk).
The log statement outside of the Zone
Lastly, the same statement is logged outside of the zone.
....
console.log('in the zone: ' + !!Zone.current.inTheZone);
We again point to the same Zone.current
property. How could this not log the same result if we’re pointing to the same property in both log statements?
Zone setup and teardown
Every time something is run inside a Zone or a monkey-patched event is triggered, the Zone or the proxy sets up the Zone before executing the function or callbacks. The proxy is able to setup the Zone since it holds a reference to the Zone in which it was created. During setup, the state linked to this specific Zone is restored so that even timeouts, event listener, … are executed like they were executed immediately. You could think of a Zone as being an execution context that persists across async tasks, as the definition states.
To further clarify, take a look at the next snippet. I re-arranged the code in the way it is executed and added zone setup and teardown points. Look at the comments for more information.
// load zone.js. As stated before,
// this will monkey-patch all browser events.
Zone.current.fork({}).run(function () {
// SETUP ZONE
// trigger: A call to the run function is made. This will first
// setup the zone before executing the function param.
// actions:
// - Zone.current property is set to the Zone
// in which the function is executed. In this case, it's
// the one we creating by forking the root Zone. Let's
// call it exampleZone from this point onwards.
// - Zone lifecycle hooks are called (we'll get back
// to that later).
// a boolean is attached to the Zone.current property. Due
// to the zone setup, this points to the exampleZone.
Zone.current.inTheZone = true;
// a timeout is registered. This isn't the 'default' timeout
// since these are monkey-patched. So here, we are actually
// setting up the proxy. What's important to remember is that
// this proxy will hold a reference to the Zone in which it
// was created, in this case the 'exampleZone'. This will be
// used later.
setTimeout(
...., 0);
// TEARDOWN ZONE
// trigger: The function that was to be executed
// inside the Zone has ended.
// actions:
// - Zone.current property is reset to the root Zone
// - Zone lifecycle hooks are called
});
// Log statement. The Zone.current property is currently
// pointing to the root Zone. Since this does not know an
// 'inTheZone' property, this will log false.
console.log('in the zone: ' + !!Zone.current.inTheZone);
// The stack is cleared and the timer callback is executed
// SETUP ZONE
// trigger: The monkey-patched event is fired. The proxy wrapper
// will trigger a Zone setup. Remember that the proxy
// wrapper holds a reference to the Zone in which it
// was created.
// actions:
// - Zone.current property is set to the exampleZone (the
// proxy holds a reference to the exampleZone)
// - Zone lifecycle hooks are called
function () {
// The exampleZone does contain the 'inTheZone'
// property. So this will log true.
console.log('in the zone: ' + !!Zone.current.inTheZone);
}
// TEARDOWN ZONE
// trigger: The event callback has ended and the proxy
// does a Zone teardown.
// actions:
// - Zone.current property is reset to the root Zone
// - Zone lifecycle hooks are called
Zone.js is able to setup and teardown the Zone when executing the timeout callback thanks to the monkey-patching of that event. This should clear things up a bit!
How does Angular 2 leverage zones
I took a look inside the Angular 2 source code to determine how they leverage zones. Take a look at the next snippet:
....
new NgZoneImpl({
trace: enableLongStackTrace,
onEnter: () => {
// console.log('ZONE.enter', this._nesting, this._isStable);
this._nesting++;
if (this._isStable) {
this._isStable = false;
this._onUnstable.emit(null);
}
},
onLeave: () => {
this._nesting--;
// console.log('ZONE.leave', this._nesting, this._isStable);
this._checkStable();
},
setMicrotask: (hasMicrotasks: boolean) => {
this._hasPendingMicrotasks = hasMicrotasks;
this._checkStable();
},
setMacrotask: (hasMacrotasks: boolean) =>
{ this._hasPendingMacrotasks = hasMacrotasks; },
onError: (error: NgZoneError) =>
this._onErrorEvents.emit(error)
});
....
This is from the NgZone.ts source file. Zone.js exposes lifecycle hooks. This is a listing of the events Angular 2 listens to. Since everything in Angular 2 is run in a single Zone, ngZone, Angular 2 can leverage this to determine when it should perform a Change Detection cycle based on those callbacks. This removes the need to manually call $digest
like in Angular 1.
Pretty neat right!


--- layout: page title: "Gallery" description: "all-time favorites" header-img: "img/gallery-bg.jpg" ---


--- layout: post title: "What Are L1 and L2 Loss Functions?" subtitle: "L1 vs L2 Loss Function" date: 2018-03-10 00:00:30 -0000 background: '/img/posts/06.jpg' tags: [Machine Learning, ML, AI, Deep Learning, Neural Network, Artificial Intelligence, L1 Loss Function, L2 Loss Function, Loss Function] ---
L1 and L2 are two loss functions in machine learning which are used to minimize the error.
L1 Loss function stands for Least Absolute Deviations. Also known as LAD.
L2 Loss function stands for Least Square Errors. Also known as LS.
L1 Loss Function is used to minimize the error which is the sum of the all the absolute differences between the true value and the predicted value.
L2 Loss Function is used to minimize the error which is the sum of the all the squared differences between the true value and the predicted value.
Generally, L2 Loss Function is preferred in most of the cases. But when the outliers are present in the dataset, then the L2 Loss Function does not perform well. The reason behind this bad performance is that if the dataset is having outliers, then because of the consideration of the squared differences, it leads to the much larger error. Hence, L2 Loss Function is not useful here. Prefer L1 Loss Function as it is not affected by the outliers or remove the outliers and then use L2 Loss Function.
That's it for now.


{% for i in trade.part %}
{% if loop.index == 3 %}
Machinery and Equipment
Agricultural equipment, food processing and packaging machinery, commercial
and
industrial refrigeration equipment, and commercial food service equipment.
Automotive machinery and related systems, including machine tools, material
handling equipment, welding equipment, and process control technology make up this subsector.
Equipment and machinery for generating, transmitting and distributing
electric
power as well as machinery used for oil and gas exploration and production.
Major categories include turbines, power transmission equipment, and
internal
combustion engines (except automotive gasoline and aircraft) for electric utility and industrial
applications. Also includes oil and gas field machinery.
{% endif %}
{% if loop.index in [1, 3, 5, 7, 9, 11, 13] %}


Kevin Conroy Promises Crisis' Bruce Wayne Isn't Like Batman Beyond
by Michael BernaschinaVeteran Batman voice actor Kevin Conroy, who will be making the jump to live-action in The CW's "Crisis on Infinite Earths," says his Kingdom Come-inspired take on the character won't be like Batman Beyond's older Bruce Wayne, as fans initially thought.
While both versions feature an older, grizzled Bruce Wayne, Conroy has confirmed that they explore two very different sides of the character. "In this, I explore a lot of [the] dark corners of Bruce Wayne," he told EW. "But they're different than the ones I explored on Batman Beyond."
Click the button below to start this article in quick view.
According to Conroy, playing a live-action version of the character he'd been voicing for so many years was an opportunity he "jumped at."
"There's a real loyalty among the [Batman: The Animated Series] fanbase and an interest in seeing me do it on camera as well," he said. "So I think they thought this was an opportunity to take advantage of that."
According to executive producer Marc Guggenheim, Legends of Tomorrow showrunner and animated series fan Keto Shimizu was responsible for the idea of casting Conroy after pointing out that he was the right age for the role. "We reached out to Kevin and he couldn't have been more lovely and more game for it."
"Crisis on Infinite Earths" begins Sunday, Dec. 8 on Supergirl, then continues in Batwoman on Monday, Dec. 9, and then picks up in The Flash on Tuesday, Dec. 10. After a winter hiatus, the crossover concludes on Tuesday, Jan. 14 on both Arrow and Legends of Tomorrow.
https://schema.orgBreadcrumbListListItem1Homehttps://www.cbr.com/ListItem2TVhttps://www.cbr.com/category/tv/ListItem3TV Newshttps://www.cbr.com/category/tv/news-tv/ListItem4Kevin Conroy Promises Crisis' Bruce Wayne Isn't Like Batman Beyondhttps://www.cbr.com/kevin-conroy-crisis-bruce-wayne-not-batman-beyond/


grilled rib eye steak, topped with a sauteed mushroom sauce with roasted potatoes & vegetables.
veal scaloppine sauteed & topped with prosciutto, sage & fontina cheese, & white wine sauce, served with roasted potatoes & vegetables.
chicken breast sauteed & topped with mixed mushrooms & marsala wine sauce, served with mashed potatoes & vegetables.
braised lamb shank in a vegetable, red wine & tomato sauce, served with soft polenta.
lamb chops, marinated grilled & topped with a red wine sauce with toasted potatoes & vegetables.


What will be ouput as a result of a call to the calculate method?
private int sum = 0; private int product = 0; public static final int AMOUNT = 5; public void output(){ System.out.println("The sum of the numbers from 1 to " + AMOUNT + " is " + sum); System.out.println("The product of the numbers from 1 to " + AMOUNT + " is " + product); } public void calculate(){ int sum = 0; int product = 1; for (int i = 1; i <= AMOUNT; i++){ sum = sum + i; product = product * i; } output(); }
There are no hints for this question


WITNESS LIST Finance Committee March 6, 2001 - 8:00A Texas Parks and Wildlife Department ON: McCarty, Gene (Texas Parks and Wildlife Department), Austin, TX Sanson, Andrew Executive Director (Texas Parks and Wildlife Department), Austin, TX


How many of the following expressions are syntactically correct λ expressions?
Remember that parentheses are not optional.
Parentheses must surround every application expression, but nothing else.
You could try to build a parse tree for each expression.