User-facing messages may be configured in the section. At this point the only supported message is what is displayed to a user when his/her authentication fails. This presupposes that the server is using the supplied authorization servlet, of course and if another authorizatiion method is in use (e.g. REMOTE_HEADER) then this will be ignored.
Basic configuration with a customized message if authentication fails.
<config> <service name="main-server" version="1.0" address="https://go.teragrid.org/oauth"> <messages> <retryMessage>Authentication Failed! Note: Only members of active projects are able to sign in.</retryMessage> </messages> </service> </config>
This would be displayed on authorization page if an invalid login were tried. In this case it informs the user that while s/he may try again, if there is no active project associated with this login, it will continue to fail.


Davi Ortega
Space
How is time represented in this tree?
Using Betas to root the tree of Gammas
Use CheAF8 to root CheAF7 tree


My emonBase is not seeing my emonTx v3. The red LED blinks on the emonTx and the RF board on the emonBase's red LED is blinking at the same time.
This system just arrived, and is my first. The emonBase came with a pre-programmed SSD card. Both units were ordered with 433MHz RF. The Temonx is powered by an AC adapter. There are no sensors (other than the AC adapter) plugged into the emonTx.
I have verified (with a spectrum analyzer) that the emonTx is periodically sending a burst on about 433.96 MHz (because it's a short duration signal, I don't have a precise frequency).
THe RF board on the Base is identified as a 433 MHz RFM69CW by the picture and the missing capacitor.
Here are the contents of /var/log/emonhub/emonhub.log showing all messages since the last boot.
The config file has not been touched. I did verify that logging is in DEBUG mode.
Here are a couple of logs, and the Nodes page from the web server is attached as an image.
Note that I rebooted emonBase at 03:00:11 UTC.
emonhub.log
2015-06-17 14:40:33,801 INFO MainThread EmonHub Pre-Release Development Version (rc2.0?)
2015-06-17 14:40:33,802 INFO MainThread Opening hub...
2015-06-17 14:40:33,803 INFO MainThread Logging level set to DEBUG
2015-06-17 14:40:33,804 INFO MainThread Creating EmonHubJeeInterfacer 'RFM2Pi'
2015-06-17 14:40:33,807 DEBUG MainThread Opening serial port: /dev/ttyAMA0 @ 38400 bits/s
2015-06-17 14:40:35,813 WARNING MainThread Device communication error - check settings
2015-06-17 14:40:35,814 INFO MainThread Setting RFM2Pi frequency: 433 (4b)
2015-06-17 14:40:36,816 INFO MainThread Setting RFM2Pi group: 210 (210g)
2015-06-17 14:40:37,819 INFO MainThread Setting RFM2Pi quiet: 0 (0q)
2015-06-17 14:40:38,821 INFO MainThread Setting RFM2Pi baseid: 5 (5i)
2015-08-03 03:00:11,107 INFO MainThread Setting RFM2Pi calibration: 230V (1p)
2015-08-03 03:00:12,110 DEBUG MainThread Setting RFM2Pi subchannels: ['ToRFM12']
2015-08-03 03:00:12,111 DEBUG MainThread Interfacer: Subscribed to channel' : ToRFM12
2015-08-03 03:00:12,111 DEBUG MainThread Setting RFM2Pi pubchannels: ['ToEmonCMS']
2015-08-03 03:00:12,112 DEBUG MainThread Interfacer: Subscribed to channel' : ToRFM12
2015-08-03 03:00:12,116 INFO MainThread Creating EmonHubMqttInterfacer 'MQTT'
2015-08-03 03:00:12,117 INFO MainThread MQTT Init mqtt_host=<IP_ADDRESS> mqtt_port=1883
2015-08-03 03:00:12,121 DEBUG MainThread MQTT Subscribed to channel' : ToEmonCMS
2015-08-03 03:00:12,126 INFO MainThread Creating EmonHubEmoncmsHTTPInterfacer 'emoncmsorg'
2015-08-03 03:00:12,127 DEBUG MainThread emoncmsorg Subscribed to channel' : ToEmonCMS
2015-08-03 03:00:12,223 INFO MQTT Connecting to MQTT Server
2015-08-03 03:00:12,228 INFO MQTT connection status: Connection successful
2015-08-03 03:00:12,229 DEBUG MQTT CONACK => Return code: 0
2015-08-03 03:00:12,331 INFO MQTT on_subscribe
emoncms.log
2015-8-3 03:00:10 FEEDWRITER INFO Starting feedwriter process
2015-8-3 03:00:10 MQTT INFO Starting emoncms mqtt nodes process
2015-8-3 03:00:10 FEEDWRITER INFO PHPTimeSeries bytes written: 0
2015-8-3 03:00:10 FEEDWRITER INFO PHPFina bytes written: 0
2015-8-3 03:00:10 MQTT INFO subscribing to emonhub/rx/#
2015-8-3 03:00:16 MQTT INFO Reloading config
2015-8-3 03:00:22 MQTT INFO Reloading config
2015-8-3 03:00:28 MQTT INFO Reloading config
2015-8-3 03:00:34 MQTT INFO Reloading config
2015-8-3 03:00:40 MQTT INFO Reloading config
2015-8-3 03:00:46 MQTT INFO Reloading config
2015-8-3 03:00:52 MQTT INFO Reloading config
2015-8-3 03:00:58 MQTT INFO Reloading config
2015-8-3 03:01:04 MQTT INFO Reloading config
2015-8-3 03:01:10 MQTT INFO Reloading config
2015-8-3 03:01:10 FEEDWRITER INFO PHPTimeSeries bytes written: 0
2015-8-3 03:01:10 FEEDWRITER INFO PHPFina bytes written: 0
2015-8-3 03:01:16 MQTT INFO Reloading config
2015-8-3 03:01:22 MQTT INFO Reloading config
2015-8-3 03:01:28 MQTT INFO Reloading config
2015-8-3 03:01:34 MQTT INFO Reloading config
2015-8-3 03:01:40 MQTT INFO Reloading config
2015-8-3 03:01:46 MQTT INFO Reloading config
2015-8-3 03:01:52 MQTT INFO Reloading config
2015-8-3 03:01:58 MQTT INFO Reloading config
2015-8-3 03:02:04 MQTT INFO Reloading config
2015-8-3 03:02:10 MQTT INFO Reloading config...etc...
Re: Newbie needq help - New system: emonBase not seeing emonTx
The auto-baud detection is not present in the "emon-pi" emonSD card image and is pre-configured for the emonPi baud, you should also try setting the baud to either 9600 or 57600 in emonhub.conf
Paul
Re: Newbie needq help - New system: emonBase not seeing emonTx
Paul,
Thanks. Based on your input, I changed the only baud rate I saw in the config file to 57600, but still no joy. I also tried 9600.
I am including the log file contents and the configuration file below. Did I change the right thing?
----- Log File -----
2015-08-03 17:51:29,258 INFO MainThread Deleting interfacer 'RFM2Pi'
2015-08-03 17:51:29,259 INFO MainThread Creating EmonHubJeeInterfacer 'RFM2Pi'
2015-08-03 17:51:29,260 DEBUG MainThread Opening serial port: /dev/ttyAMA0 @ 57600 bits/s
2015-08-03 17:51:31,269 WARNING MainThread Device communication error - check settings
2015-08-03 17:51:31,270 INFO MainThread Setting RFM2Pi frequency: 433 (4b)
2015-08-03 17:51:32,271 INFO MainThread Setting RFM2Pi group: 210 (210g)
2015-08-03 17:51:33,273 INFO MainThread Setting RFM2Pi quiet: 0 (0q)
2015-08-03 17:51:34,275 INFO MainThread Setting RFM2Pi baseid: 5 (5i)
2015-08-03 17:51:35,277 INFO MainThread Setting RFM2Pi calibration: 230V (1p)
2015-08-03 17:51:36,279 DEBUG MainThread Setting RFM2Pi subchannels: ['ToRFM12']
2015-08-03 17:51:36,280 DEBUG MainThread Interfacer: Subscribed to channel' : ToRFM12
2015-08-03 17:51:36,280 DEBUG MainThread Setting RFM2Pi pubchannels: ['ToEmonCMS']
2015-08-03 17:51:36,281 DEBUG MainThread Interfacer: Subscribed to channel' : ToRFM12
2015-08-03 17:51:36,282 DEBUG MainThread MQTT Subscribed to channel' : ToEmonCMS
2015-08-03 17:51:36,283 DEBUG MainThread emoncmsorg Subscribed to channel' : ToEmonCMS
----- emonhub.conf ----
### This interfacer manages the RFM2Pi module
[[RFM2Pi]]
Type = EmonHubJeeInterfacer
[[[init_settings]]]
com_port = /dev/ttyAMA0
com_baud = 57600
[[[runtimesettings]]]
pubchannels = ToEmonCMS,
subchannels = ToRFM12,
# datacode = B #(default:h)
# scale = 100 #(default:1)
group = 210 #(default:210)
frequency = 433 #(default:433)
baseid = 5 #(emonPi default:5)
quiet = false #(default:true)
calibration = 230V #(UK/EU: 230V, US: 110V)
# interval = 300 #(default:0)
# nodeoffset = 32 #(default:0)
### This interfacer manages the RFM2Pi module
[[MQTT]]
Type = EmonHubMqttInterfacer
[[[init_settings]]]
mqtt_host = <IP_ADDRESS>
mqtt_port = 1883
[[[runtimesettings]]]
pubchannels = ToRFM12,
subchannels = ToEmonCMS,
basetopic = emonhub/
[[emoncmsorg]]
Type = EmonHubEmoncmsHTTPInterfacer
[[[init_settings]]]
[[[runtimesettings]]]
pubchannels = ToRFM12,
subchannels = ToEmonCMS,
url = http://emoncms.org
apikey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
senddata = 1
sendstatus = 1
#######################################################################
####################### Nodes #######################
#######################################################################
[nodes]
### List of nodes by node ID
### 'datacode' is default for node and 'datacodes' are per value data codes.
### if both are present 'datacode' is ignored in favour of 'datacodes'
### eg node 99 would expect 1 long and 4 ints, unless the "datacodes" line
### was removed, then "datacode" would make it expect any number of longs,
### likewise per value "scales" will override default node "scale", the number
### of "scales" must match the number of values or frame will be discarded.
[[5]]
nodename = emonPi
firmware = emonPi_RFM69CW_RF12Demo_DiscreteSampling.ino
hardware = emonpi
[[[rx]]]
names = power1,power2,power1_plus_power2,Vrms,T1,T2,T3,T4,T5,T6,pulseCount
datacodes = h, h, h, h, h, h, h, h, h, h, L
scales = 1,1,1,0.01,0.1,0.1,0.1,0.1,0.1,0.1,1
units = W,W,W,V,C,C,C,C,C,C,p
[[19]]
nodename = emonTH_1
firmware = emonTH_DHT22_DS18B20.ino
hardware = emonTH_(Node_ID_Switch_DIP1:OFF_DIP2:OFF)
[[[rx]]]
names = temperature, external temperature, humidity, battery
datacode = h
scales = 0.1,0.1,0.1,0.1
units = C,C,%,V
[[20]]
nodename = emonTH_2
firmware = emonTH_DHT22_DS18B20.ino
hardware = emonTH_(Node_ID_Switch_DIP1:ON_DIP2:OFF)
[[[rx]]]
names = temperature, external temperature, humidity, battery
datacode = h
scales = 0.1,0.1,0.1,0.1
units = C,C,%,V
[[21]]
nodename = emonTH_3
firmware = emonTH_DHT22_DS18B20.ino
hardware = emonTH_(Node_ID_Switch_DIP1:OFF_DIP2:ON)
[[[rx]]]
names = temperature, external temperature, humidity, battery
datacode = h
scales = 0.1,0.1,0.1,0.1
units = C,C,%,V
[[22]]
nodename = emonTH_4
firmware = V1_5_emonTH_DHT22_DS18B20.ino
hardware = emonTH_(Node_ID_Switch_DIP1:ON_DIP2:ON)
[[[rx]]]
names = temperature, external temperature, humidity, battery
datacode = h
scales = 0.1,0.1,0.1,0.1
units = C,C,%,V
[[10]]
nodename = emonTx_1
firmware =V1_6_emonTxV3_4_DiscreteSampling
hardware = emonTx_(NodeID_DIP_Switch1:OFF)
[[[rx]]]
names = power1, power2, power3, power4, Vrms, temp1, temp2, temp3, temp4, temp5, temp6, pulse #Firmware V1.6
#names = power1, power2, power3, power4, Vrms, temp #Firmware =<V1.4 (un-comment)
datacode = h
scales = 1,1,1,1,0.01,0.1,0.1, 0.1,0.1,0.1,0.1,1 #Firmware V1.6
units =W,W,W,W,V,C,C,C,C,C,C,p #FirmwareV1.6
#scales = 1,1,1,1,0.01,0.1 #Firmware =<V1.4 (un-comment)
#units =W,W,W,W,V,C #Firmware =<V1.4 (un-comment)
[[9]]
nodename = emonTx_2
firmware =V1_6_emonTxV3_4_DiscreteSampling
hardware = emonTx_(NodeID_DIP_Switch1:ON)
[[[rx]]]
names = power1, power2, power3, power4, Vrms, temp1, temp2, temp3, temp4, temp5, temp6, pulse #Firmware V1.6
#names = power1, power2, power3, power4, Vrms, temp #Firmware =<V1.4 (un-comment)
datacode = h
scales = 1,1,1,1,0.01,0.1,0.1, 0.1,0.1,0.1,0.1,1 #Firmware V1.6
units =W,W,W,W,V,C,C,C,C,C,C,p #FirmwareV1.6
#scales = 1,1,1,1,0.01,0.1 #Firmware =<V1.4 (un-comment)
#units =W,W,W,W,V,C #Firmware =<V1.4 (un-comment)
Re: Newbie needq help - New system: emonBase not seeing emonTx
2015-08-03 17:51:29,260 DEBUG MainThread Opening serial port: /dev/ttyAMA0 @ 57600 bits/s
2015-08-03 17:51:31,269 WARNING MainThread Device communication error - check settings
This error suggests a comms issue between the Pi and the RFM2Pi, baud was the obvious choice as it pops up frequently. is the board located on the Pi's gpio correctly? Does the little SMT LED illuminate at any time?
The RFM2Pi only really needs power to work, if the emontx is sending then the led should acknowledge reciept on the RFM2Pi.
If you are using a pre-configured SDcard you should'nt need to worry about the serial console, but it is worth checking the last line of /etc/inittab is commented out and "tty" is only mentioned once in the /boot/cmdline.txt.
If you have purchased the kit recently then the baud will "probably" be 38400, you could try using minicom to establish a comms link and confirm the baud.
Paul
Re: Newbie needq help - New system: emonBase not seeing emonTx
Paul, Thanks...
When I run minicom, I get garbage characters. More arrive with each blink of emonTx.
I have tried 9600, 19200, 38400 and 57600 with the same results (although the number of garbage characters varies).
The minicom command is (for 9600): minicom -b9600 -D/dev/ttyAMA0
Is it possible that everything is working and I just don't know it? I rely on the "Nodes" tab on the web page and it is saying all nodes are inactive. I have no sensors hooked up to the emonTx, but it does have an AC power supply, which should show up as ID 4, I think.
Re: Newbie needq help - New system: emonBase not seeing emonTx
"Is it possible that everything is working and I just don't know it?"
When using loglevel = DEBUG in emonHub the log will show each packets journey in and out of emonHub so the initial connection error log seems to be valid if you have a functioning device sending data and the RFM2Pi is flashing reciept.
 More arrive with each blink of emonTx." it may be that as emonHub has already taken ownership of the serial port (albeit at the wrong baud perhaps) that minicom can only piggy-back whats there and not set the baud it wants. Try stopping emonhub using sudo service emonhub stop and try minicom again, if you are not getting legible numbers in minicom emonhub will not be able to do anything with the "garbage" either. Once you have determined the baud and seen valid numbers, exit minicom set the baud in emonhub.conf and restart with sudo service emonhub start and see where that gets us.
Paul
Re: Newbie needq help - New system: emonBase not seeing emonTx
Thanks.
The log is showing no packets.
I followed your advice and stopped emonhub service. That did not lead to a change - minicom still gets only garbage - which comes in at the time the emonTx transmits and some other times. I am including the log below in case it helps. The best clue seems to to be the communications error.
I put my storage scope on the output pin from the receiver (RasPi connector pin 9). It looks like it is getting valid characters (for 1 stop-bit signaling), although I don't know what they should be. I decoded a sequence manually that started out:20 3F 20 31 37 30 20 31 37 31 20....The bit rate on that pin looks slightly off - I am estimating about 41kbps, based on the scope's measurement. I don't know if that is within the tolerance for the UART on the Pi or not.
I am also seeing data (on the scope) when the emonTx is not transmitting... just random bursts from time to time. There are other devices transmitting on this frequency - I can hear them on my service monitor, but the data bursts on the RFM2PI pin do not seem to be correlated well with them.
I'm pretty baffled.
Below is the log showing the service shutting down and coming back up:
2015-08-05 02:43:52,521 DEBUG MainThread SIGINT received.
2015-08-05 02:43:52,522 INFO MainThread Exiting hub...
2015-08-05 02:43:52,679 INFO MainThread Exit completed
2015-08-05 02:43:58,718 INFO MainThread EmonHub emonHub 'emon-pi' variant v1.0
2015-08-05 02:43:58,718 INFO MainThread Opening hub...
2015-08-05 02:43:58,719 INFO MainThread Logging level set to DEBUG
2015-08-05 02:43:58,720 INFO MainThread Creating EmonHubJeeInterfacer 'RFM2Pi'
2015-08-05 02:43:58,721 DEBUG MainThread Opening serial port: /dev/ttyAMA0 @ 38400 bits/s
2015-08-05 02:44:00,726 WARNING MainThread Device communication error - check settings
2015-08-05 02:44:00,727 INFO MainThread Setting RFM2Pi frequency: 433 (4b)
2015-08-05 02:44:01,729 INFO MainThread Setting RFM2Pi group: 210 (210g)
2015-08-05 02:44:02,731 INFO MainThread Setting RFM2Pi quiet: 0 (0q)
2015-08-05 02:44:03,733 INFO MainThread Setting RFM2Pi baseid: 5 (5i)
2015-08-05 02:44:04,736 INFO MainThread Setting RFM2Pi calibration: 230V (1p)
2015-08-05 02:44:05,738 DEBUG MainThread Setting RFM2Pi subchannels: ['ToRFM12']
2015-08-05 02:44:05,740 DEBUG MainThread Interfacer: Subscribed to channel' : ToRFM12
2015-08-05 02:44:05,741 DEBUG MainThread Setting RFM2Pi pubchannels: ['ToEmonCMS']
2015-08-05 02:44:05,742 DEBUG MainThread Interfacer: Subscribed to channel' : ToRFM12
2015-08-05 02:44:05,744 INFO MainThread Creating EmonHubMqttInterfacer 'MQTT'
2015-08-05 02:44:05,747 INFO MainThread MQTT Init mqtt_host=<IP_ADDRESS> mqtt_port=1883
2015-08-05 02:44:05,755 DEBUG MainThread MQTT Subscribed to channel' : ToEmonCMS
2015-08-05 02:44:05,763 INFO MainThread Creating EmonHubEmoncmsHTTPInterfacer 'emoncmsorg'
2015-08-05 02:44:05,765 DEBUG MainThread emoncmsorg Subscribed to channel' : ToEmonCMS
2015-08-05 02:44:05,863 INFO MQTT Connecting to MQTT Server
2015-08-05 02:44:05,867 INFO MQTT connection status: Connection successful
2015-08-05 02:44:05,868 DEBUG MQTT CONACK => Return code: 0 2015-08-05 02:44:05,971 INFO MQTT on_subscribe
Re: Newbie needq help - New system: emonBase not seeing emonTx
I'm a little baffled too at this point. The decoded sequence reads " ? 170 171 " when converted (hex to ascii) which could be a good sign as any received packets considered invalid are prefixed with space q'mark space, so a morsal of hope?
At this stage we are unsure of which party is at fault but I'm inclined to suspect the rfm2pi rather than the Pi, but if you wish to check the Pi further you could use 2 link wires to connect the serial rx and gnd of the Pi to your emonTx to read the debug serial output normally seen via the IDE and usb programmer.
I would probally try using avrdude to "read" the rfm2pi fuses (the values will not actually be shown due to the lock) the bootloader baud is independent of the sketches baud,
avrdude -v -c arduino -p ATMEGA328P -P /dev/ttyAMA0 -b 38400
If you can get a valid response from the rfm2pi to this command and not an error it will prove the Pi UART is OK and the AVR bootloader is good you can then just try uploading a new FW hex to the rfm2pi via avrdude and you should be good, fingers crossed.
Leave emonhub stopped for now, until you can use minicom to read the rfm2pi stream.
Paul
Re: Newbie needq help - New system: emonBase not seeing emonTx
Update: I purchased a new rfm2pi and installed it. Things are now working.


${filename}
The log file has errors. Please remove the errors from the file and upload again. If no errors are present, you can commit the file.
import
cancel
reload
Row
Error?
Action
${log['log']}


Association rule mining will find the frequent data items that are found together in the data set Steps: 1: Select confidence and support 2: You can see the frequently together seen data items from the table below
Association rule mining will find the frequent data items that are found together in the data set
Steps: 1: Select confidence and support 2: You can see the frequently together seen data items from the table below


| DOSE: T+ 0:00 |
25 mg |
oral |
2C-I |
(powder / crystals) |
| T+ 2:30 |
repeated |
inhaled |
Nitrous Oxide |
(gas) |
I've just finished one of the best nights of my life. Sitting here wishing it wasn't over, I'm just going to type up what I wrote down on a sheet of paper. First trip journal I ever made.
9:50pm Split a 100mg bag of 2ci with four people. Dumped 2ci on a .1 scale and it didn't register. Split into 4ths, drank in gatorade, then licked the bag clean. Dose was ~25mg.
[Erowid Note: A volume amount of one powder doesn't necessarily weigh the same as the same volume of another powder. For substances active at such a small dose, eyeballing is particularly unwise. See related article]
10:00 Slight body numbness when walking around. Could be placebo effect.
10:10 Starting to feel warm, slightly naseous stomach.
10:24 Strong feelings of onset. Already starting to see some shapes morph and changing of colors. Smoked a blunt with a few friends, naseau was making me only take small hits.
10:52 All of the sudden very cold. Can't stop shaking. Feels like I can 'feel' or touch colors and are drawn to them.
11:10 Feeling sensitive to sounds so I crept into the dark with a glow stick. My buddy syays 'tell him this is INTENSE.' Trails are very evident, very bright colors.
11:40 Music is amazing. Running around with glow sticks.
12:06 Roommate grabbing the pillow and saying 'it feels like a cold frosty cloud.' Conversation is awesome. I am very concentrated on what I am doing.
12:15 Roy is still playing with the pillow and rubbing it all over his face. 'Me and the pillow are one.'
12:20 Nitrous is amazing. Best thing I have ever felt in my life. Can only be described as a really intense and extremely long orgasm. Louder = Better (talking about music).
1:08 Still feeling great. Music is distorted and feels like it runs through my body. 'Feel the vibes.' Time seems frozen. I have never felt so awake, so alert.
1:23 Ice Cube=Great. Sounds are much more sensitive then usual. Notes can be felt like deep bass, but with higher frequencies that generally are not 'felt' but only heard.
1:46 Everyone is very concerned with the journal. Would like to help future trippers across the globe. Wish there was more information about 2ci and other psychadelics. Perhaps I will write a book, a full length novel on trips and experiences. A book where every chapter is a new drug or experience.
From this point on I didn't write anything else in the journal until the end of the trip. I recapped the night.
2-3am included a lot of raving with glow sticks. The upbeat tempo of techo music feels really great to dance to. Trails looks really great and are the centerpiece. At one point I felt like a conductor of an orchestra with the light sticks and was swinging them furiously like I was controlling the beat.
3:30-4am Beginning to come down. Completely crashed by 4:30am. Slight headache which continues through 7:16am when I am writing this now.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


{% extends 'base.html' %} {% block content %}
This websites is devoted to providing Music Tracks with different Media Type of technology & related tools, everything from new musics, new albums to new Record Mechanisms
Still Under Construction
{% endblock %}


internal-symbols - Print contents of the Soar symbol table
SYNOPSIS
internal-symbols
DESCRIPTION
This command prints information about the Soar symbol table. Such
information is typically only useful for users attempting to debug
Soar by locating memory leaks.


house php fiddles
fiddle-authenticate
fiddle-fileupload
fiddle-form
fiddle-generateJson
fiddle-loadSqlScript
fiddle-procedures
fiddle-session
fiddle-strtotime


rossbook
Update Image
About Me:
Name:
Email:
Number:
Bio:
Edit
First Name
Last Name
Email
Phone
Bio
Education Info
Likes
Add Item
Add to List
Submit


An Introduction to Node.JS
Node.js is an open-source, cross-platform runtime environment for developing server-side Web applications. It is a development platform built on top of Google's V8 JavaScript virtual machine. While JavaScript engines (including V8) are traditionally run in Web browsers to form the client side of a client/server application, the Node.js libraries are focused on building server-side applications in JavaScript.
Code built on the Node platform does not follow the traditional model of receive, process, send, wait, receive. Instead, Node processes incoming requests in a constant event stack and sends small requests one after the other without waiting for responses. This is a shift away from mainstream models that run larger, more complex processes and run several threads concurrently, with each thread waiting for its appropriate response before moving on.
What Makes Node.JS Different
There are two important things that make Node.js different to existing server-side frameworks: asynchronous events and the use of JavaScript as a programming language.
Asynchronous Events
While most of the existing server side frameworks use a synchronous architecture, Node.js use an asynchronous architecture that JavaScript can handle well. This means that the server reacts to events and send events (messages) to e.g. the database. This style of programming is very different than the synchronous style, and may be hard to use with other languages. An asynchronous style uses asynchronous IO and can scale well.
JavaScript
JavaScript is the programming language that web applications use on the client-side. By using the same language on the server-side, the developer can use their JavaScript knowledge both on the client and the server, and use the same functions if needed.
Non Blocking I/O
One of the major advantages of Node.js, according to its creator Ryan Dahl, is that it does not block input/output (I/O). Some developers are highly critical of Node.js and point out that if a single process requires a significant number of CPU cycles, the application will block and that the blocking can crash the application. Proponents of the Node.js model claim that CPU processing time is less of a concern because of the high number of small processes that Node.js code is based on.
The image below shows the core differences between blocking and non-blocking I/O
In Closing
Node.js is really good for applications that wait on I/O and need to handle a lot of concurrent connections. The npm (node package manager) is growing quickly with packages such as Bower, Grunt, Express, and many others. Even large companies such as Yahoo and Walmart are using Node.js in production. It has grown and will continue to grow in the next several months.


The martingale is a simple betting system for the roulette casino game. This page analyzes with hard numbers the martingale system and determines whether you can reliably make money at the roulette with it.
The roulette is a casino game dating back to the 17th century. A ball is rolled by the croupier into a spinning wheel and ends up into one of the 37 pockets numbered 0 to 36. Each number possesses a red or black color except the zero which is green.
A number of bets can be made as to where the ball will end up: a specific number, a small group of related numbers, an even or odd number (pair, impair), a number between 1–18 (manque), a number between 19–36 (passe), a red or black number. The martingale uses the red or black bets exclusively.
There exists a number of variations to this game but this article will focuses on the French roulette, also known as the European roulette. A popular variant is the American roulette with two zeros which makes your odds of winning lower. We will assume a minimum bet of 1 and no maximum. Some casino have minimum and maximum (eg.: minimum 3 and maximum 500).
The number zero being green introduces a house edge. There are 18 red and 18 black and one green number. When betting on a color, if the ball ends up on zero (which has 1/37 chances of occuring) neither the red or black win and the house get all those bets back.
The expected value when betting on a color is 1*18/37 + -1*19/37 = -0.027
. The house has a 2.7% edge. This means that on average a player will lose 2.7% when betting.
The martingale is one of the older and simpler technique to make money at the roulette. It works like this:
Make a bet of one on a color
if you win: you doubled your bet. Make a new bet of one on the other color.
if you lose: double your previous bet on the same color until you win.
Doubling after each loss allows the first victory to recover all previous losses. The only way to lose is to have a series of losses so long that you can no longer double the previous bet.
The martingale relies on the fact that even if the wrong color appears multiple times in a row, the winning color will almost surely end up occuring. Indeed, the odds of winning each time is almost 50% (actually it is 18/37 due to the zero).
The following table shows the odds of losing a certain amount of times in a row:
| Losses in a row | odds (%) | odds (1 in) |
|---|---|---|
| 2 | 26.37 % | 1 in 4 |
| 4 | 6.95 % | 1 in 14 |
| 6 | 1.83 % | 1 in 55 |
| 8 | 0.48% | 1 in 207 |
| 10 | 0.13 % | 1 in 784 |
| 12 | 0.03 % | 1 in 2974 |
| 14 | 0.01 % | 1 in 11279 |
For other values, you can use the calculator below :
The odds of losing times in a row is % or 1 in .
With the martingale you make a profit of one every time you win even if you had to double a previous bet due to a loss. As the following table shows, no matter how many times you lost and had to double the bet, the final profit is of one unit:
| Losses in a row | Amount spent | Amount won | Net win |
|---|---|---|---|
| 1 | –1 | +2 | =1 |
| 2 | –3 (–1 –2) | +4 | =1 |
| 3 | –7 (–1 –2 –4) | +8 | =1 |
| 4 | –15 (–1 –2 –4 –8) | +16 | =1 |
| … | … | … | =1 |
Since you only win one at a time, to gain a large amount of money, you will need to play a larger amount of time. This is the opposite of the usual way of playing games of chance where you take a lot of small losses hoping for a big win. With the martingale we have lots of small wins, hoping to avoid a large loss.
To analyze the martingale, a roulette computer simulation has been embedded in this page. It works just like a real casino roulette except we have the leisure to play as much as we want without losing any real money. The winning number and color is generated randomly by our simulated wheel as randomly as a computer number generator can. It is for all intents as random as a casino wheel should be.
To help determine if the martingale betting technique works we are going to use the Monte Carlo method. We will automatically simulate a large number of attempts to make money with the martingale and see what happens.
For each attempt we will start with a predetermined amount of money and a predetermined amount of money we want to win. We keep playing until one of two things happen:
Let’s simulate 50 attempts, starting with 100, aiming to gain 20 to achieve a total of 120. The following graph plots the result of those 50 attempts. Each dot represent an entire playing session. It is as if for each dot we had been to a casino and played until we came out a happy and richer person or a bitter loser. This graph has been generated dynamically using the embedded simulation. If you refresh the page you will get another set of results.
As you can see, when starting with 100 and trying to gain an additional 20 units, we win most, but not all of the time. An important aspect to notice is that when we win, we win a little (20) but when we lose, we lose a lot (around 50).
Here is another chart, it is set with the same initial amount (100) but this time we want to double it, ending up with 200. As the chart reveals, with these parameters we only manage to double our capital a few times and lose most of the time.
You can adjust the parameters above to run the simulator and perform your own experiments.
There are two ways to influence the likelihood of victory: after how long you stop and the initial amount of money you possess :
The martingale attempts sometimes succeed and sometimes fail. A varying amount of money is made or lost for each of those attempts, but on average how much money is made? If on average we make more money than the initial bet it would mean that we beat the house edge of the casino.
This question can be answered experimentally using the roulette simulator. By playing a large number of martingales and averaging the results it will be possible to estimate how much money is made on average.
The following test runs 100,000 martingales with the parameters defined and return the average of all the results:
When starting with and attempting to gain , the average result is 97.06788.
Be careful not to select values too large as it would slow your browser down. The resulting number will be slightly different between multiple execution due to the experimental nature of the number. A more accurate result could be obtained but it would require more computation and slow your browser down.
As you can see the average result is always slightly less than the starting amount.
On average, the money remaining after a martingale is less than at the start!
Just how likely is it to win using the martingale? As shown by the previous section, the probability of success depends on the starting amount as well as the amount of profit desired.
Let’s compute the actual odds of winning and display them using graphs. The graphs below are not obtained through simulation, these are the actual odds of winning the roulette using the martingale. Again, success is defined as gaining a predetermined amount of money while losing is defined as being unable to double a bet after a loss at some point.
The following chart displays the odds of winning at the roulette using the martingale when starting with 100. The horizontal axis represents the desired profits. The vertical axis is the probability of success.
You can modify the graph by chosing your own initial value and gains. Separate the values by a comma.
As expected there is 100% percent chances of gaining 0 additional units: by not playing at all.
The more you hope to gain the less your chances of success. The reason being that the more you play, the higher the risks of getting an unlucky strike of numbers of the wrong colors. Gaining 25 has a 62% probability of success, gaining 50 less than 50%, gaining 100 30% and gaining 200 less than 15%.
The following graph shows the odds of winning a larger amount of money. Up to 10 times the initial amount.
The probability of winning at the roulette using the martingale follows the characteristic shape of a Power law. This means that odds of winning decline exponentially with the duration of the game.
The probability of winning become negligeable when you want to win a large amount!
The only way to lose using the martingale is to have a series of failures long enough so that you can no longer afford to double the previous bet. The question is, will such a series occur?
Three facts:
Each individual attempt to win appears low-risk but you will periodically experience a long series of failures in a row. This is called a Taleb Distribution: Steady returns that appear low risk but which experiences periodical catastrophic events.
There is less than 2 percent chance of red (or green) appearing 6 times in a row. Unlikely to happen. Unlikely if you only bet once that is. If you keep playing, a series of 6 red will happen sooner or later. How many times do you have to play before it is more likely for it to happen than not? 10 times? 50 times? 100 times? The answer 38. If you watch 38 spins at a roulette, you will have 50% chances of witnessing 6 red in a row.
Psychology studies have shown that when people realize that the odds of losing 6 times in a row are low when playing a few times, they then incorrectly assume that in a long string of play the odds are also low. It’s a mistake of thinking that if a series of red/red/red/red happens then the next color is more likely to be black to compensate. This is known as the Gambler’s fallacy. It’s a quirk of how our human brain work.
Here is a table showing for various length of consecutive losses, the number of times you have to play before there is a greater than 50% chances of it happening and the minimum amount of money needed to still be able to play if it happens.
| Losses in a row | Times before > 50% | Bankroll needed |
|---|---|---|
| 3 | 5 | 15 |
| 4 | 10 | 31 |
| 5 | 20 | 63 |
| 6 | 38 | 127 |
| 7 | 74 | 255 |
| 8 | 144 | 511 |
| 9 | 279 | 1023 |
| 10 | 544 | 2047 |
As a rough rule of thumb, you have more than 50% chances of losing your money if you try to win 50% of your initial available amount. Keep playing and you’ll be certain to lose your money.
Losing a martingale has nothing to do with being an unlucky person, the casino cheating or being the victim of a hugely unlikely event. If you play long enough, it becomes extremely suprising to not lose.
The following probability chart confirms that the odds of winning increase when you have a larger amount of money available.
A larger bankroll means you can afford to double your previous bets longer. So, does this mean that if you were a millionaire you could fleece casinos by using the martingale technique at the roulette? The answer is no.
First, the amount of money you need to be able to cope with longer series of failures grows very quickly. It grows quadratically.
Simply put it means that if you want to be able to lose one more time you need twice the money. It may not seem like much but this makes the amounts of money you need quickly grow out of control. For example you only need 31 to be able to play 5 times in a row. To play 10 times in a row, you need 1023. To play 15 times in a row you need 32767. The ability to play 20 times already requires more than 1 million. The numbers after that get obscene.
The only way to be sure to win would be to have infinitely big pockets (and casinos accepting infinitely big bets).
Second, while more money increase the odds it also increases the losses when they do occur. No matter how large the initial bet is, the average return is still negative. Remember that if you lose the losses can be way higher than when you win. For example if you set to win 10% of your initial investment, you may win the 10% or you could potentially lose 100% of your money.
Third, the more money you have the more money you’ll want to win. It is naive to think: ‘I only have 100 to play with. My chances of doubling that money are low. If only I had 10000 I would be able to make 100 almost certainly!’.
While the odds of winning 100 when starting with 100000 are high, it is unlikely you’d bother playing for so little. When playing you are more likely to want to win a significant percentage of your initial bet. When you set out to win 50%, 100% or more of your initial amount, the odds of winning are bad, no matter the initial amount.
While the martingale is not a sure-fire way to make lots money at the roulette we still can use it to our advantage.
Betting on a color at the roulette has a 50% chances of being successfull (18/37 actually). Using the martingale, we can turn the roulette from 50/50 odds game into a game which gives whatever chances of success we desire. With a given starting amount and percentage of success, we can calculate how long we can play and still have the desired percentage of success.
For example if we have 100 to play with and we want 80% chances of winning, we must play until we possess 112. Anymore than that and the odds of losing would be higher. At 115 the odds are of 75% and by 150 they are lower than 50%.
You can use the success probability chart to determine how much you can play to retain a certain percentage off success.
The martingale seems attractive due to its perceived ability to prevent losses but it is an illusion. Using the martingale you will end up losing. It’s a matter of time
Since stopping early with modest gains has high chances of success it might seem like a good idea to play a little at multiple occasions, enjoying high chances of success each time. However this does not work. Even if each individual session has low odds of failure, if you keep playing sessions, one of them will sooner or later end up in a failure; wiping out previous gains in the process. Another way of understanding this is that playing a little multiple times is equivalent to playing a lot once.
Making money reliably at the roulette is possible in some curcumstances. Several group of people successfully have been able to reliably make money without outright cheating.
Finding a wheel with bias towards certain numbers, using the laws of physics and a machine to compute where the ball would end up,… Every case involved finding some kind of bias in a roulette in order to reverse the house edge in the favour of the player.
The martingale is typically described as chosing a color and keep betting on this color after each loss (while doubling the bet) until a win. In reality the color chosen each time makes no difference at all. Whether you pick red or black, the odds of winning always are 18/37. Picking black and hoping that a long series of red/red/red/… won’t occur is just as good of a strategy as picking black/red/black/… and hoping that a long series of red/black/red/… won’t happen.
Old statistician (unfunny) joke: A man says to a statistician friend, ’this morning when I parked, the licence plate of the car next to mine was ‘aaa111’, what were the odds?! The statistician respond ‘This happened to me too but the licence plate of the car next to mine was ajh214!’
When using the martingale bets other than the color could be used with: manque (between 1 and 18) or passe (between 19 and 36); even or odd. In all cases the odds are the same (18/37).
The martingale analyzed here is one of the many techniques aiming to make money at the roulette: grand martingale, Alembert, Pertoli, geometric bet, constant bet,… The human mind is highly imaginative when it comes to making money.
While each technique could be the subject of its own article, the premise remains the same : the odds are always in the favor of the house.


Robert's C/C++ Mistakes
I know there are a million lists of common programming mistakes (for almost every language) but I thought I'd do one myself. Hopefully in writing about my most common mistakes I'll quit making them or at least remember to check for them first when my code doesn't work. So . . .
1.) Forgetting a semi-colon.
I know it's the most obvious mistake in C/C++. Whether it's at the end of a class, struct, do-while loop or just a normal statement, I always seem to forget at least one semi-colon the first time I compile something.
2.) Adding a semi-colon to the end of an if statement.
I think one time I made this mistake was in my Watering Lawn project. I think I had the following (lines 100-104 in wateringlawn.cpp):
if(temp1==temp2);
{
minsprinks=0;
break;
}
which of course drove me crazy because my program was compiling and I knew I had written it right but it wasn't doing what I wanted. Weird how your eyes can travel over the same place over and over again and you just get used to the semi-colon and totally ignore it. Unconsciously you just accept that it should be there. Fortunately I figured it out without too much head banging.
3.) Putting one equal sign in an if statement.
Yes I recently commited this mistake for I think the first time ever. I was just typing too quickly and without really focusing. I realize that there may be some edge cases where you might actually want an equal sign in if statement but I can't think of any and I haven't had any so far.
4.) Not looking at the entire line.
This is especially annoying if I've spent quite a bit of time staring at the line trying to figure it out after already having spent time isolating which line it is. I had the following line and of course was getting an error. Thing is I had already fixed the quotes (double to single) for the '('. I was so focused and frustrated that the compiler was complaining about something I'd already fixed I didn't notice the ones around the A.
if(x=='(') mystack.push("A");
5.) Using double quotes when I need single quotes.
See above. Sometimes I'm just not paying attention and typing to fast.
6.) Using gcc when I'm coding in C++.
Duh.
7.) Not keep track of exactly where my pointers are pointing.
(and realizing when things are pointing at the same thing instead of different things passing C strings around etc.)
8.) Not using sizeof when using memory functions in C.
(I know you can leave it out for primitives like char and int but I should just always use it so I won't forget for the complex structures).
9.) Forgetting a break statement.
10.) Forgetting to increment a counter.
Or similarly forgetting to set the pointer to the next one while looping through a linked list.
Most of these (especially 7-10) I made while writing C PIM. Hopefully I can use these as a self checklist or something.
EDIT: 11.) Forgetting to close a file stream.
EDIT 2: 12.) Allocating the wrong amount of memory.
EDIT 3: 14.) Type problems (wrong conversions, underflow and overflow in arithmetic both integer and real).


Drink Name
Added to Menu
Perfect Espresso
June 2015
Ryanmericano
June 2015
Lila's Latte
June 2015


Class Agent
Provides functionality to enable communication between agents.
Namespace: Hyperledger.Indy.AgentApi
Assembly: Hyperledger.Indy.Sdk.dll
Syntax
public static class Agent : Object
Methods
ParseMsgAsync(Wallet, String, Byte[])
Parses an encrypted message prepared by another party.
Declaration
public static Task<ParseMsgResult> ParseMsgAsync(Wallet wallet, string recipientKey, byte[] encryptedMsg)
Parameters
| Type | Name | Description |
|---|---|---|
| Wallet | wallet | The wallet containing the keys. |
| String | recipientKey | The verification key of the recipient. |
| Byte[] | encryptedMsg | The encrypted message to parse. |
Returns
| Type | Description |
|---|---|
| Task<ParseMsgResult> | An asynchronous Task<TResult> that resolves to a ParseMsgResult containing the sender key and the parsed message content. |
Exceptions
| Type | Condition |
|---|---|
| InvalidStructureException | Thrown if the value passed to the |
| WalletValueNotFoundException | Thrown if the |
PrepAnonymousMsgAsync(String, Byte[])
Prepares an anonymous message so that it can be securely sent to a recipient.
Declaration
public static Task<byte[]> PrepAnonymousMsgAsync(string recipientKey, byte[] message)
Parameters
| Type | Name | Description |
|---|---|---|
| String | recipientKey | The verification key of the intended recipient of the message. |
| Byte[] | message | The message content to prepare. |
Returns
| Type | Description |
|---|---|
| Task<Byte[]> | An asynchronous Task<TResult> that resolves to an array of bytes containing the prepared message. |
Exceptions
| Type | Condition |
|---|---|
| InvalidStructureException | Thrown if the value passed to the |
PrepMsgAsync(Wallet, String, String, Byte[])
Prepares a message so that it can be securely sent to a recipient.
Declaration
public static Task<byte[]> PrepMsgAsync(Wallet wallet, string senderKey, string recipientKey, byte[] message)
Parameters
| Type | Name | Description |
|---|---|---|
| Wallet | wallet | The wallet containing the keys of the sender and the recipient. |
| String | senderKey | The public key of the sender. |
| String | recipientKey | The verification key of the intended recipient of the message. |
| Byte[] | message | The message content to prepare. |
Returns
| Type | Description |
|---|---|
| Task<Byte[]> | An asynchronous Task<TResult> that resolves to an array of bytes containing the prepared message. |
Exceptions
| Type | Condition |
|---|---|
| WalletValueNotFoundException | Thrown if the sender key does not exist in the |
| InvalidStructureException | Thrown if the |


Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec malesuada lorem maximus mauris. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec malesuada lorem maximus mauris.
Genomics AI is a Health-Tech company that is working on an all-in-one solution for your health goals personalized by your genes.
We leverage cutting edge research in AI, metabolomics, and genomics to bring you this unique product that improves your health and wellness. We offer a plethora of products ranging from weight loss to utilizing your brain's fullest potential, all backed by sound scientific research.
Our product is currently at its earliest stage of development. A closed beta will open up for early adopters. We will advertise aggressively when it is ready. Stay tuned for updates!
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec malesuada lorem maximus mauris. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec malesuada lorem maximus mauris.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec malesuada lorem maximus mauris. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec malesuada lorem maximus mauris.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec malesuada lorem maximus mauris. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec malesuada lorem maximus mauris.
Lorem ipsum dolor sit amet, cons ectetur adipiscing elit. Donec males uada lorem.
Lorem ipsum dolor sit amet, cons ectetur adipiscing elit. Donec males uada lorem.


What you see on the simulation page is a projection of that hypercube, sort of like shining a light on it from above and looking at the shadow. In the real world, shadows are always two-dimensional. However, in the fourth dimension we can consider the possibility of 3-dimensional shadows.
This has the benefit of looking incredibly cool. If you want to see more, here's how to use the site and play with some of the projection and display settings. First off, to get access to all of those settings click the settings icon in the top left corner of the simulation page. (If part of it is cut off, remember that it scrolls.)
This one's pretty intuitive. Click the figure and drag to rotate it in space. Sometimes it's a little confusing how it's being dragged, though, so I have a much more precise option:
Here, you can choose an exact degree angle to rotate the figure by, and on which pair of axes. For instance, if you would like to rotate it 1.5 radians counterclockwise on the xy plane, drag the xy slider to -1.5 and hit the "apply" button. You might notice that there are 6 sliders, 3 more than would be used for 3d rotations. That's because we have a new axis extending into the 4th dimension, the w-axis, which combines with the others to produce 3 extra planes for rotation.
Here, you can adjust the rotation and speed of the hypercube. The sliders are notated in radians per 60 render cycles, which should approximate radians per second, so if you want the hypercube to be rotating at 2 radians per second on the xw plane, move the xw slider to 1.5. Skipped renders means how many render cycles will be allowed to pass before the actual graph is changed. For instance, if it was set to 2, and the graph was being drawn at 60 frames per second, then the graph would only be changed 20 times per second.
This menu allows you to adjust how the projection is being displayed. By default, lines are represented by 20-sided polygon prisms, and points are represented by spheres. You can change the detail of the shapes, their thickness, their color, or enable wireframe mode.
This one is quite cool, but it's still got some bugs that I'm working out. It lets you plot your own 4-dimensional shapes and rotate them like the hypercube. To use it, just input the coordinates for 2 points and hit apply. The line connecting those points will be plotted in the simulation.
My name is Luke West, and I'm a junior at Lexington High School in Massachusetts. If you notice a bug on my site, please PLEASE raise an issue on my github repository, right here.


 Should've unplugged this weekend, you think to yourself. You look at the message: Come to the office immediately - hard to explain over text. Ugh. Must be important.
You enter the office to find it in total disarray. One of the Autopilot team members fills you in. She says,
"This morning all of Twilio Autopilot stopped working. Instead of the usual output, we only got a few cryptic lines instead, like the computer is hiding something from us. You have to help us fix it."
"Whoa," you say. "I'm unfamiliar with this system, I don't even know the possible vectors of failure. Can you give me a high-level overview?"
She fumbles around looking for something to write on, and settles for taking one of the corporate posters off the wall. You catch a glimpse of a circle around an outstretched hand as she flips it over and starts to write and talk.
"Since Autopilot is a natural language understanding project, we tried something unusual here. Where a normal machine learning algorithm uses scalars, we work directly on the words instead. Otherwise it's a fairly standard ML thing, you know, gradient descent, adding lo amounts of noise to avoid overfitting, and some linear algebra with letters. As for the implementation details..."
As you ponder these ideas, she continues to scribble words and connect lines on her poster, occasionally switching colors. She accelerates in her explanation, not noticing your lack of attention. Suddenly you focus again on what she is saying:
"...pathetic outdated bitrates, Peter got Jetty on Titan, after --"
"Okay, thanks, I think I've got what I need," you say quickly, before the diagram can get even worse somehow. What is it about ML engineers and having basically no commutativity skills? Is that a fish?
"Let's step back from all this confusion for a moment. We can't even replicate the error yet. If we can find an input that causes the same failure, maybe we can inspect it to learn more. Can you show me what the output was?" you ask.
She points you towards a nearby laptop. You see on the screen:
| An old flame (now deceased) was just Leslie's type | ||
| Creative person mixes up round-trip time with an ISO-646 predecessor, I see | ||
| Electronic filter that rejects only Swiss frequencies | ||
| Greater than great man returns in "Soul Train" (1971) | ||
| Losing after self-referential puzzle renders Mac an award, so I hear | ||
| More than one farewell interrupted by a couple of afternoon nibbles | ||
| Securely transmitted Office Space report about height | ||
| Wild animal attack sends former Twilio CTO to critical care |


Anthill Ventures, Rana Daggubati launch scale up platform for startups
The startups might receive investments to the tune of $1,00,000 upfront and up to $1 m upon programme completion
by Our BureauAnthill Ventures, which invests in startups and helps them scale up their operations, and actor-investor Rana Daggubati has launched Urban-i.
The programme will help consumer brand startups accelerate their growth. The six-month cohort would have about 5-9 startups working in the areas of personal care, fashion and accessories, food an consumer tech, and e-commerce.
The startups might receive investments to the tune of $1,00,000 upfront and up to $1 m upon programme completion.
Urban-i would act as a platform bringing together capital, consumer brands and celebrities to help the short-listed startups grow their businesses, Prasad Vanga, Founder and Chief Executive Officer of Anthill Ventures said.
Those interested can submit their applications by December 23.
“There is an explosion of consumer brand startups that are redefining consumer preferences and lifestyle. We will scout for the best of startups and guide them to scale up,” Rana Dagggubati said.
“The short-listed startups will get access to celebrity endorsements and PR interventions. They will also get a chance to work with target retailers, distributors and e-commerce companies,” he said.
Besides, they will be guided by 20 globally known mentors and business speed scalers. They will learn customer acquisition tips and go-to-market refinement services up to $5,000.


Build The Community Your Fans Will Love
Huddle re-imagines the way we build communities. You have a voice, but so does your audience. Create connections with your users as you engage in genuine discussion.
RegisterHuddle re-imagines the way we build communities. You have a voice, but so does your audience. Create connections with your users as you engage in genuine discussion.
Register


Foster's x Tylenol
Main Navigation
Home
About
Products
Advertisements
Contact
Promotion Images
Promotion Images
Promotion Images Container
Promotion Images Container2


QuickSort Sandbox
How would you like your array to be formatted before the sort??
Random
Increasing (Sorted)
Decreasing (Reverse-Sorted)
Almost Sorted
Which pivot-choosing scheme would you like to use?
Left-Most Element
Right-Most Element
Random Element
Midpoint
Median Of Three Elements
Display
Now Displaying....
UNSORTED
INTERMEDIATE STEPS
SORTED
Prev. Step
Step
%
of
%
Next Step


home
about
news
download
doc
source
systems
tests
bugs
contact
Lab-only (auth required)
Build summary
New test failures
All test failures
Long-running tests
Benchmarks
Branch: develop
Branch: master
Branch: release/2.0.1
2019-11-13
last build
{% block body %}{% endblock %}


| Package | org.juicekit.events |
| Class | public class DataMouseEvent |
| Inheritance | DataMouseEvent flash.events.MouseEvent |
| Property | Defined by | ||
|---|---|---|---|
| data : Object
Contains a reference to the event's data
Object . | DataMouseEvent | ||
| dataSprite : DataSprite
Contains a reference to the event's
dataSprite . | DataMouseEvent | ||
| sender : EventDispatcher
Contains a reference to this wrapped event's original
EventDispatcher . | DataMouseEvent |
| Method | Defined by | ||
|---|---|---|---|
|
DataMouseEvent(event:MouseEvent, data:Object = null, dataSprite:DataSprite = null)
Constructor.
| DataMouseEvent |
| Constant | Defined by | ||
|---|---|---|---|
| CLICK : String = "jkDataClick" [static]
The
DataMouseEvent.CLICK constant
defines the value of the type property of the event
object for a DataMouseEvent event. | DataMouseEvent | ||
| DOUBLE_CLICK : String = "jkDataDoubleClick" [static]
The
DataMouseEvent.DOUBLE_CLICK constant
defines the value of the type property of the event
object for a DataMouseEvent event. | DataMouseEvent | ||
| MOUSE_OUT : String = "jkDataMouseOut" [static]
The
DataMouseEvent.MOUSE_OUT constant
defines the value of the type property of the event
object for a DataMouseEvent event. | DataMouseEvent | ||
| MOUSE_OVER : String = "jkDataMouseOver" [static]
The
DataMouseEvent.MOUSE_OVER constant
defines the value of the type property of the event
object for a DataMouseEvent event. | DataMouseEvent |
| data | property |
public var data:Object
Contains a reference to the event's data Object
.
| dataSprite | property |
public var dataSprite:DataSprite
Contains a reference to the event's dataSprite
.
| sender | property |
public var sender:EventDispatcher
Contains a reference to this wrapped event's original
EventDispatcher
.
| DataMouseEvent | () | constructor |
public function DataMouseEvent(event:MouseEvent, data:Object = null, dataSprite:DataSprite = null)
Constructor.
Parametersevent:MouseEvent — References the originating MouseEvent
that this instance will wrap.
|
|
data:Object (default = null ) — Contains a reference to the related data
Object .
|
|
dataSprite:DataSprite (default = null )
|
| CLICK | constant |
public static const CLICK:String = "jkDataClick"
The DataMouseEvent.CLICK
constant
defines the value of the type
property of the event
object for a DataMouseEvent
event.
| DOUBLE_CLICK | constant |
public static const DOUBLE_CLICK:String = "jkDataDoubleClick"
The DataMouseEvent.DOUBLE_CLICK
constant
defines the value of the type
property of the event
object for a DataMouseEvent
event.
| MOUSE_OUT | constant |
public static const MOUSE_OUT:String = "jkDataMouseOut"
The DataMouseEvent.MOUSE_OUT
constant
defines the value of the type
property of the event
object for a DataMouseEvent
event.
| MOUSE_OVER | constant |
public static const MOUSE_OVER:String = "jkDataMouseOver"
The DataMouseEvent.MOUSE_OVER
constant
defines the value of the type
property of the event
object for a DataMouseEvent
event.


--- title: Window functions - a SQL versus R example author: Irene Steves date: '2020-04-17' slug: window-functions categories: [] tags: [] output: blogdown::html_page: toc: true toc_depth: 3 cover: /window.png draft: false ---
I recently drilled down into window functions in SQL, so here’s a quick example comparing some of the syntax differences between SQL and R.
We’ll start with sequence of 10 orders with an order id and amount spent ($):
library(tidyverse)
library(dbplyr) #for simulating a database
library(slider) #for sliding window functions
sample_orders <- tibble(o_id = 101:110,
spent = round(runif(10, 5, 100), digits = 2))
| o_id | spent |
|---|---|
| 101 | 80.31 |
| 102 | 5.68 |
| 103 | 13.87 |
| 104 | 64.34 |
| 105 | 45.03 |
| 106 | 12.04 |
| 107 | 81.52 |
| 108 | 32.53 |
| 109 | 20.14 |
| 110 | 18.65 |
Now let’s say we want to calculate the following:
How would we do it in SQL? in R?
The SQL code looks like this:
SELECT o_id,
spent,
sum(spent) OVER () AS sum_spent,
sum(spent) OVER (ORDER BY o_id) AS sum_spent_so_far, --assumes ROWS UNBOUNDED PRECEDING
avg(spent) OVER (ORDER BY o_id) AS avg_spent_so_far,
avg(spent) OVER (ORDER BY o_id ROWS BETWEEN 2 PRECEDING AND 2 FOLLOWING) AS moving_avg_spent,
ntile(4) OVER (ORDER BY spent) AS ntile,
percent_rank() OVER (ORDER BY spent) AS percent_rank
FROM sample_orders
ORDER BY o_id
Using the dbplyr
package, we can run this SQL query in R to inspect the result.
# set up the sample_orders tibble as a table in a database in memory
sample_orders_db <- tbl_memdb(sample_orders)
# run the query and collect the results back into R
results_db <- tbl(src_memdb(), sql(sql_query)) %>%
collect() %>%
mutate_if(is.double, round, 2) # rounding for good measure
| o_id | spent | sum_spent | sum_spent_so_far | avg_spent_so_far | moving_avg_spent | ntile | percent_rank |
|---|---|---|---|---|---|---|---|
| 101 | 80.31 | 374.11 | 80.31 | 80.31 | 33.29 | 4 | 0.89 |
| 102 | 5.68 | 374.11 | 85.99 | 43 | 41.05 | 1 | 0 |
| 103 | 13.87 | 374.11 | 99.86 | 33.29 | 41.85 | 1 | 0.22 |
| 104 | 64.34 | 374.11 | 164.2 | 41.05 | 28.19 | 3 | 0.78 |
| 105 | 45.03 | 374.11 | 209.23 | 41.85 | 43.36 | 3 | 0.67 |
| 106 | 12.04 | 374.11 | 221.27 | 36.88 | 47.09 | 1 | 0.11 |
| 107 | 81.52 | 374.11 | 302.79 | 43.26 | 38.25 | 4 | 1 |
| 108 | 32.53 | 374.11 | 335.32 | 41.92 | 32.98 | 2 | 0.56 |
| 109 | 20.14 | 374.11 | 355.46 | 39.5 | 38.21 | 2 | 0.44 |
| 110 | 18.65 | 374.11 | 374.11 | 37.41 | 23.77 | 2 | 0.33 |
I’ve colored the values based on the range of each column to better see the patterns in the numbers:
sum_spent
is the same value across all rows – this is normally condensed into a single row when summarizedsum_spent_so_far
is a cumulative sum, so it increases with time. The last value is equivalent to the total sum_spent
avg_spent_so_far
is a cumulative mean. The first value is equivalent to the spent
of the first order, and the last value is equivalent to the sum_spent
divided by the number of orders (374.11/10)moving_avg_spent
smooths out the pattern of the order spent
ntile
divides our orders into 4 groups based on the amount spentpercent_rank
is also based on amount spent but gives us percentsIn R, we write things a bit differently. I’ve used a mix of base (sum()
, cumsum()
) and dplyr
functions (cummean()
, ntile()
, percent_rank()
), and brought in slider
to calculate the moving average using purrr
-like syntax.
results_r <- sample_orders %>%
arrange(o_id) %>% # use this if order_by() is the same for all calculations
mutate(sum_spent = sum(spent),
sum_spent_so_far = cumsum(spent),
avg_spent_so_far = cummean(spent),
moving_avg_spent = slide_dbl(spent, mean,
.before = 2, .after = 2,
.complete = FALSE),
ntile = ntile(spent, 4),
percent_rank = percent_rank(spent)) %>%
mutate_if(is.double, round, 2) # rounding for good measure
It looks pretty different – does this really give us the same result? Let’s compare the resulting data frames.
I would normally use dplyr::all_equal()
but the diffdf
package gives us a more detailed report on the differences so we’ll go with that this time. (Props to Sharla’s post on comparing dataframes for pointing me to it.)
diffdf::diffdf(results_db, results_r)
## Warning in diffdf::diffdf(results_db, results_r):
## Not all Values Compared Equal
## Differences found between the objects!
##
## A summary is given below.
##
## Not all Values Compared Equal
## All rows are shown in table below
##
## =============================
## Variable No of Differences
## -----------------------------
## ntile 1
## -----------------------------
##
##
## All rows are shown in table below
##
## ========================================
## VARIABLE ..ROWNUMBER.. BASE COMPARE
## ----------------------------------------
## ntile 8 2 3
## ----------------------------------------
We see that there actually is a tiny difference in the ntile
column! In the process of working on this post, I’d stumbled into a slight difference in the way ntile()
distributes remainders across buckets in dplyr versus in a database. (Issue has been filed and already resolved in the dev version of dplyr!)
So, besides the small hiccup with ntile()
, we see that it indeed is the same!
For the sake of being extra thorough, let’s examine the syntax differences directly with the table below.
| variable | r | sql |
|---|---|---|
| sum_spent | sum(spent) | sum(spent) OVER () |
| sum_spent_so_far | cumsum(spent) | sum(spent) OVER (ORDER BY o_id) |
| avg_spent_so_far | cummean(spent) | avg(spent) OVER (ORDER BY o_id) |
| moving_avg_spent | slide_dbl(spent, mean, .before = 2, .after = 2, .complete = FALSE) | avg(spent) OVER (ORDER BY o_id ROWS BETWEEN 2 PRECEDING AND 2 FOLLOWING) |
| ntile | ntile(spent, 4) | ntile(4) OVER (ORDER BY spent) |
| percent_rank | percent_rank(spent) | percent_rank() OVER (ORDER BY spent) |
We see that R in general is a bit more concise, but SQL’s syntax is repetitive but flexible. With the two keywords OVER()
and ORDER BY
, we can do almost everything.
SQL’s flexibility shines the most in the avg_spent_so_far
versus moving_avg_spent
example. The first calculation assumes ROWS UNBOUNDED PRECEDING
as the window. To move from a cumulative mean to a moving average, we just tweak the window – the rest stays the same.
You may have noticed that the table above is actually missing R’s equivalents of OVER()
and ORDER BY
. Because they did not need to be specified for each variable separately, I was able to extract out all the ORDER BY o_id
s to a single arrange(o_id)
before the mutate()
. For the ranking functions, I expressed the ORDER BY spent
directly in the arguments. If I had needed to, I could have specified the ordering explicitly with order_by()
.
In my book, the ability to extract out common actions makes the tidyverse solution superior for this example. I imagine that with more complex windows with unique order-by’s, SQL may have a chance of winning me over.
Have an alternative solution? Feel free to share in the comments!


Welcome Admin !!
Toggle Menu
Home
Track FIR and Update
Inmate Tracking and Update
Criminals Update
Update Police Station Info.
Track Inmates in Prison
Track and Update Wanted Criminal Details
Add Inmate
Name
Suspension Date
Wage
Image Url (google drive shareable link)
Description
Submit


WITNESS LIST
State Affairs Committee
May 13, 2019 - 10:30 AM
Registering, but not testifying:
For:
Jones, Dave (Self; Clean Elections Texas)
Nobis, Tom (Self)
Against:
Luke, Charles (Self; Pastors for Texas Children)
Registering, but not testifying:
For:
Nobis, Tom (Self)
Van de Putte, Leticia (City of Del Rio)
Van de Putte, Leticia (San Antonio Chamber of Commerce)
On:
Rainosek, Nancy (DIR)
For:
Schrader, Megan (Amazon Web Services)
Registering, but not testifying:
On:
Kelly, Ed (DIR)
Registering, but not testifying:
Against:
Marshall, Cari (Self)
Registering, but not testifying:
For:
Panju, Arif (Institute for Justice)
Spilman, Annie (NFIB)
Against:
Smitherman, Ronnie (Self; Texas Building Trades Council)
Yezak, Robert (Self; IBEW (International Brotherhood of Electrical Workers))
On:
Van Winkle, Kim (Office of the Attorney General)
1
WITNESS LIST
Registering, but not testifying:
For:
Hinkle, Ron (Texas Association of Campground Owners)
For:
Bachop, Matt (Texas State Association of Fire Fighters)
Jones, Chris (CLEAT)
Reagan, David (Texas Municipal League Intergovernmental Risk Pool)
Riddle, John (Self; Texas State Association of Fire Fighters)
On:
Lee, Amy (Texas Department of Insurance, Division of Workers' Compensation)
Prejean, Brandi (City of Fort Worth)
Smith, James (San Antonio Police officers Association)
Stokes, Robert (City of San Antonio)
Registering, but not testifying:
For:
Alvarado, Aidan (Self; Laredo Fire Fighters. Association)
Beachley, Pamela (Texas Association of Counties Risk Management Pool)
Against:
Sparks, Clifford (City of Dallas)
On:
Rodriguez, Jimmy (San Antonio Police Offocers Association)
2


I've gotten high on weed several times in my life. It took me awhile to get rid of the paranoia that comes with it, but I think Iím now pretty comfortable around other people while Iím stoned - and by myself. I was taking an electrical course and living on my own for the first time. I bought a small $20 chunk off a guy in my class. Very potent. I was in a basement suite so I didnt want to make a stink (the landlady was upstairs), so I was thinking of ways I could injest it.
I boiled up some milk, and chopped up a few small chunks of the bud into finer smaller bits and threw it in. I kept it boiling for well over half an hour, thinking that it might take quite abit of heat to release the THC properly. Well it was definately not as 'smell-free' as I thought it would be. Oh well, I thought.. weed had just recently been decriminilized where I live so I didnt have to worry much. I drank the milk/weed. Didn't feel anything for half an hour, so I brought out the blades...
I broke up 2 fair sized chunks and just about burned my lungs (ive never done blades by myself before, Iím used to someone else serving me up).
 My tv was off. No music was playing. The lack of sound made me lose sense of time. I couldn't tell if I was actually moving in slow motion, or if I was just perceiving it that way. There was such an akward stillness in the air. Sooooooo slllloooooow.
I sat on the couch and turned on the tv. The transition was amazing. The very second the picture came on the screen (simpsons), I all of a sudden grasped my sense of time back. My heart (which seemed to beat very slow before) had all of a sudden seemed 'real-time' which was actually quite fast. It was very intersting how my perception of everything changed with the click of a button.
My mind was really starting to wander, something I avoided when I've been high with other people around me. Thats what I liked about doing it alone. I could explore my own ideas without the worries of looking like a burnout. I layed down on the couch.
I've always been interested in philosophy's of time+space in the universe. I started to really think about it..and the most unexplainable feeling came over me. I want you all to think for a minute of what 'Infinite' actually means. If theres any word in the english language that's extremely hard to grasp/imagine, it's that one. Try to imagine an infinite number of universes - and the GIGANTIC size of our own that reaches out billions and billions of light years, and no matter how hard you try to imagine, the concept of 'infinite' is the biggest mindfuck I've ever come across.
For about 10 minutes, as I layed there on the couch staring up at the ceiling, I actually grasped what 'infinite' actually meant. An infinite number of stars and life forms all of a sudden shot through my head. Infinite possibilities of absolutely everything. Everything existed at once, and forever.. infinately. If our own universe has a boundary, there must be others beyond it. There has to be. It was an intuitive knowing because I FELT IT. I felt like I finally understood. I kept repeating to myself softly 'so this is what infinite means'.
I fell asleep unintentionally, still in the peak of my trip.. so I actually had some really trippy dreams that night, waking up once in awhile still admiring the beauty of 'infinite'. I still do, to this day...
Ever since that trip I have shown an interest in the stars. I download Hubble Space Telescope pictures and cant help but admire the absolute vastness of space.
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.


Born in 1925 hector grew up as a farm boy in New Orleans. He grew up in during the great depression and did not have much in his life.  He was always fascinated with helping people. Growing up during the depression many people needed help, and he grew up helping others. When he got sick as a child he would visit the towns doctor often. He spent most of his free time with the doctor and learned about medicine. From this would help the doctor and become his assistant. In the 1940s he experienced many wounded soldiers and discovered his ability to heal. At the same time, he also experienced the death that came with it. He eventually becomes a doctor and wanted to help more people and decided to move to Atlanta Georgia.


Competition
The ImageNet Large Scale Visual Recognition Challenge (ILSVRC) evaluates algorithms for object detection and image classification at large scale. One high level motivation is to allow researchers to compare progress in detection across a wider variety of objects -- taking advantage of the quite expensive labeling effort. Another motivation is to measure the progress of computer vision for large scale image indexing for retrieval and annotation.For details about each challenge please refer to the corresponding page.
Workshop
Every year of the challenge there is a corresponding workshop at one of the premier computer vision conferences. The purpose of the workshop is to present the methods and results of the challenge. Challenge participants with the most successful and innovative entries are invited to present. Please visit the current challenge page for the workshop schedule and information.Citation
When reporting results of the challenges or using the datasets, please cite:-
Olga Russakovsky*, Jia Deng*, Hao Su, Jonathan Krause, Sanjeev Satheesh, Sean Ma, Zhiheng Huang, Andrej Karpathy, Aditya Khosla, Michael Bernstein, Alexander C. Berg and Li Fei-Fei. (* = equal contribution) ImageNet Large Scale Visual Recognition Challenge. IJCV, 2015.
paper |
bibtex |
paper content on arxiv |
attribute annotations
Additional references
These are some additional publications directly related to collecting the challenge dataset and evaluating the results. These papers are all discussed in the main paper above. Please refer to the individual challenge webpages for information about the most successful entries, and to the ImageNet publications page for a complete list of publications.
- J. Deng, O. Russakovsky, J. Krause, M. Bernstein, A. Berg, L. Fei-Fei. Scalable multi-label annotation. ACM conference on human factors in computing (CHI), 2014. pdf | bibtex | slides
- O. Russakovsky, J. Deng, Z. Huang, A. Berg and L. Fei-Fei, Detecting avocados to zucchinis: what have we done, and where are we going?, Proceedings of the International Conference of Computer Vision (ICCV). 2013. pdf | supplement | website | bibtex | slides | video
- H. Su, J. Deng, L. Fei-Fei. Crowdsourcing Annotations for Visual Object Detection. AAAI Human Computation Workshop, 2012. pdf
- J. Deng, W. Dong, R. Socher, L.-J. Li, K. Li and L. Fei-Fei, ImageNet: A Large-Scale Hierarchical Image Database. IEEE Computer Vision and Pattern Recognition (CVPR), 2009. pdf | BibTex


coins.opt
Class CommonSubexpElim
java.lang.Object
coins.opt.CommonSubexpElim
- Direct Known Subclasses:
- CommonSubexpElimHir
- public abstract class CommonSubexpElim
- extends java.lang.Object
Common subexpression elimination basic logic class.
|
Method Summary |
boolean |
doBBlockLocal(BBlock pBBlock)
Performs the common subexpression elimination within the given BBlock. |
boolean |
doBBlockLocal(SubpFlow pSubpFlow)
Performs the common subexpression elimination within each BBlock for the given SubpFlow. |
(package private) abstract HIR |
eliminateComplex(HIR pCompoundNode,
HIR pPrevCompoundNode,
SetRefRepr pPrevCalcSetRefRepr,
SetRefReprList pSetRefReprs,
java.util.Map pCompoundToNodeAndSetRefRepr,
java.util.Map ContainsMap)
|
(package private) abstract HIR |
eliminateSimple(HIR pCompoundNode,
HIR pVarNode,
SubpFlow pSubpFlow,
java.util.Set pModSyms,
boolean pMod)
|
(package private) abstract java.util.Set |
operandSet(java.lang.Object o)
|
(package private) abstract void |
registerUseSyms(HIR pSubtree,
java.util.Map pContainsMap,
java.lang.Object pCompound)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
flowRoot
public final FlowRoot flowRoot
symRoot
public final SymRoot symRoot
sym
public final Sym sym
fSubpFlow
public final SubpFlow fSubpFlow
fFunctionsWithoutSideEffect
protected java.util.Set fFunctionsWithoutSideEffect
fDbgLevel
protected int fDbgLevel
CommonSubexpElim
public CommonSubexpElim(FlowRoot pFlowRoot)
doBBlockLocal
public boolean doBBlockLocal(SubpFlow pSubpFlow)
- Performs the common subexpression elimination within each BBlock for the given SubpFlow. Inter-BBlock data flow is not considered (it is assumed no flow exists between BBlocks).
- Returns:
- true if the subprogram changed (optimized).
doBBlockLocal
public boolean doBBlockLocal(BBlock pBBlock)
- Performs the common subexpression elimination within the given BBlock.
- Returns:
- true if the underlying IR has changed (optimized).
operandSet
abstract java.util.Set operandSet(java.lang.Object o)
eliminateSimple
abstract HIR eliminateSimple(HIR pCompoundNode,
HIR pVarNode,
SubpFlow pSubpFlow,
java.util.Set pModSyms,
boolean pMod)
eliminateComplex
abstract HIR eliminateComplex(HIR pCompoundNode,
HIR pPrevCompoundNode,
SetRefRepr pPrevCalcSetRefRepr,
SetRefReprList pSetRefReprs,
java.util.Map pCompoundToNodeAndSetRefRepr,
java.util.Map ContainsMap)
registerUseSyms
abstract void registerUseSyms(HIR pSubtree,
java.util.Map pContainsMap,
java.lang.Object pCompound)


genes stress expression gene rice ABA response {border-style tolerance different multiple px;} stresses #ffffff;} protein high level proteins salt showed Plant plants salinity, Nonabokra SAPK, stress, higher abiotic drought, like salt-sensitive study water Figure OSBZ Pokkali, abscisic analysis group induced plant roots tolerant transcript using varieties, Roychoudhury cold dehydration induction levels low particular responses responsive salinity varieties various DREBP HKT-, Pokkali called control effect leaves px; regulatory role salt-tolerant stress-inducible treatment, {font-family Cell OSBZ, SOS-, acid better cis-acting cold, differential drought elements font-size indica present reported upstream Expression MADS RabA, Science constitutive double; endogenous maximum molecular motifs namely, physiological presence regulation resistance sequence sequences showing signaling stress. studies temperature varieties. (a)). IR- IR-, Monitoring RNA Stress TFs, border-color border-width candidate compared cultivars diverse downstream duration especially following functional genes, level, patterns profiling promoter proteins, provide regions results seedlings signals solid; stresses. time tissues transcriptional varietal {font-style {font-weight bp (b)). (like CRT/DREBP DNA LEA NAC-, NHX-, Nonabokra, RabA Reports Research SAPK TFs WRKY WRKY, accumulation bind binding bold case common concentration conserved courier; cultivar data dehydration, difference differences earlier element em; enhanced enzymes exogenous exposure exposure. factors floral function generate growth ion kinases leaf oslea pathways performed period play products pt;} recorded regarding relative revealed shoot signal silico similar species target tolerance. total transcriptome treated treatment. used variety work


Malaysians Are Writing To Their State Govts To Urge Them To Ban Child Marriage
They want their states to get with the times.
by Yap Wan XiangCover image via Utusan Online
The Malaysian Twitterverse is witnessing a movement where residents of several states are sending emails to their state governments that have refused to ban child marriage
The movement is being spearheaded by Twitter user Aizad Fahmy, whose tweet against child marriage went viral on Tuesday, 19 November.
"These are the states that refused to ban child marriage: Sarawak, Pahang, Terengganu, Perlis, Negeri Sembilan, Kedah, and Kelantan," read the tweet with an attachment of a news article.
"Get your sh*t together!"
The tweet has since garnered more than 13,000 retweets.
Aizad has asked fellow netizens to pressure their state governments by urging them to get with the times
"Guys, go and pressure your state Members of Parliament to protect our kids. Send emails, or letters to them," Aizad tweeted, urging the netizens to do the same to the Islamic Religious Department of the seven states.
"Make sure your voice is known to the seven states that disagree with this notion!"
In a follow up tweet, Aizad then shared the email ids of the seven state governments.
Following which, netizens started sharing screenshots of the lengthy emails they wrote to their state government
"I'm from Kelantan and I despise and 100% reject underage marriage," a Twitter user wrote, and attached a screenshot of her email.

Another email by a Kedah resident to their government voiced the dangers of allowing child marriage to continue.
"Allowing children to get married at a young age can trigger a bigger social problem, which is now being referred to as paedophile crime," the female netizen wrote.
"I do not want to live in a state or country that gives these criminals a chance to commit such crimes."
Residents of other states soon followed suit
A Twitter user from Negeri Sembilan tweeted to say that she was inspired by the actions of the netizens.
"You inspired me to do the same but if you don’t mind, I copied your words to send an email to the Negeri Sembilan Chief Minister!" a netizen replied to a tweet.


encephalitis al.: virus cause brain {border-style infectious Infect Recommendation associated px;} #ffffff;} Japanese acute Encephalitis clinical Dis.;():–. encephalitis. autoantibodies AES diagnosis encephalopathy include simplex viral agents etiology neurologic seen syndrome AIE causes coma common fever herpes illness neuronal patients used ./s--- CSF India cases encephalitis: infection px; viruses {font-family .%, Clinical Pradesh, Uttar autoimmune case children features font-size specific Acute India, altered double; encephalitis, important intracranial intravenous invasion onset severe single study term Autoimmune Clin HSVE PCR West Western acyclovir agent antigens border-color border-width coma, convulsions diagnostic disease early etiologic evidence example, focal inflammation known lobe meningitis nervous patient present rabies serum signs solid; temporal typhus {font-style {font-weight ./eid. Chinese Dengue IgM Nipah Scrub Treatment Trop age antibodies blood bold changes characteristic children: courier; criteria days diagnosis. dysfunction em; encephalitides fever, form malaria management manifestations occur occurs oral pathogen pleocytosis pt;} recent receptor recommended scrub tension therapy varicella variety zoster


Three friends (Nathalie, Adrian, and Nicky) and I decided to take a weekend trip and go around the sacred valley. Eddy (another friend) had reccommended a route to us, and it was amazing, even with a few bumps along the way. We took a bus from Cusco to Maras, where we rented bikes. Turns out we rented them from the wrong place, and ended up having a fair bit of trouble, one completely broke down partway into the trail and Nicky and Adrian went back to get a new bike. Nathalie and I finished the 6km uphill ride to Morray, which had three massive... whatever these are:
After we wandered around Morray for a little while we had a much nicer bike rider, roughly 10km downhill, back through Maras and into Salineras. I often don't put enough research into places I'm going, which can cause me to miss out on certain things, but at the same time it allows me to be surprised. We turned a corner, and all of a sudden we were at this:
All of this white is salt. This was definitely one of my favourite things I saw over my entire summer. In the picture on the right you can see me standing in the middle of it, and that's the "path" we continued down to get to a road. All the way at the bottom we hopped on a bus to Ollantaytambo where we spent the night. We went to a somewhat questionable restaurant and met a solo traveller, a French guy that was going to school in Chile. We went and grabbed drinks at a small bar, but went to bed early to catch more ruines the next day. We got up early and did Ollantaytambo ruines, then caught a train to Pisac (far right).
After Pisac we went back to Cusco! Pretty good for a two day trip.


Yogini Toshani is a personal South Florida yoga instructor/class. Yogini Toshani provides tranquility and stress relief for both mind and body. We provide a positive, soothing ambiance with good music and pleasant aromas. lets Begin searching for the unforgiving treasure of inner peace.
Yogini Toshani holds group classes at the end of every week both Saturday and Sunday from nine Ante Meridian till noon. Yogini Toshani is flexible throughout the week, We provide private courses for those who do not have the time on the weekend off. Yogini Toshani will always be there for you. Come Join us today and set your soul free.
Yogini Toshani is situated in Hollywood Florida. Yogini Toshani is versatile and accommodating. Don't live in the Hollywood area? Do not worry. We have several certified instructors located in south/north Miami and Fort Lauderdale. To find out more information, Give us a call today at 305.......let your soul melt in a divine sea of majestic freedom.
What is Yoga? Yoga is a system of exercises for mental and physical health. Yoga is a hindu philosophy that teaches a person to experience inner peace by controlling the body and mind.


Whatever you’ve got in mind, we’ve got inside.
Just stay tune for our latest Product. Now you can subscribe


ReRoc researches innovative cultivation techniques paired with cutting-edge greenhouse facilities that create indoor quality product while remaining true to sustainability and efficiency goals.
ReRoc partners with the best processing laboratories and cooking facilities to provide information on the finest extracted and baked cannabis products.
ReRoc aims to serve its community. Without you, we would be nothing. ReRoc is devoted to delivering the highest quality, safest, most consistent resources on the market.
Inquire about our community services


/* This file is part of Ext JS 4 Copyright (c) 2011 Sencha Inc Contact: http://www.sencha.com/contact Commercial Usage Licensees holding valid commercial licenses may use this file in accordance with the Commercial Software License Agreement provided with the Software or, alternatively, in accordance with the terms contained in a written agreement between you and Sencha. If you are unsure which license is appropriate for your use, please contact the sales department at http://www.sencha.com/contact. */ /** * @author Brian Moeskau<EMAIL_ADDRESS>* @docauthor Brian Moeskau<EMAIL_ADDRESS>* * A wrapper class for the native JavaScript Error object that adds a few useful capabilities for handling * errors in an Ext application. When you use Ext.Error to {@link #raise} an error from within any class that * uses the Ext 4 class system, the Error class can automatically add the source class and method from which * the error was raised. It also includes logic to automatically log the eroor to the console, if available, * with additional metadata about the error. In all cases, the error will always be thrown at the end so that * execution will halt. * * Ext.Error also offers a global error {@link #handle handling} method that can be overridden in order to * handle application-wide errors in a single spot. You can optionally {@link #ignore} errors altogether, * although in a real application it's usually a better idea to override the handling function and perform * logging or some other method of reporting the errors in a way that is meaningful to the application. * * At its simplest you can simply raise an error as a simple string from within any code: * * Example usage: * * Ext.Error.raise('Something bad happened!'); * * If raised from plain JavaScript code, the error will be logged to the console (if available) and the message * displayed. In most cases however you'll be raising errors from within a class, and it may often be useful to add * additional metadata about the error being raised. The {@link #raise} method can also take a config object. * In this form the `msg` attribute becomes the error description, and any other data added to the config gets * added to the error object and, if the console is available, logged to the console for inspection. * * Example usage: * * Ext.define('Ext.Foo', { * doSomething: function(option){ * if (someCondition === false) { * Ext.Error.raise({ * msg: 'You cannot do that!', * option: option, // whatever was passed into the method * 'error code': 100 // other arbitrary info * }); * } * } * }); * * If a console is available (that supports the `console.dir` function) you'll see console output like: * * An error was raised with the following data: * option: Object { foo: "bar"} * foo: "bar" * error code: 100 * msg: "You cannot do that!" * sourceClass: "Ext.Foo" * sourceMethod: "doSomething" * * uncaught exception: You cannot do that! * * As you can see, the error will report exactly where it was raised and will include as much information as the * raising code can usefully provide. * * If you want to handle all application errors globally you can simply override the static {@link #handle} method * and provide whatever handling logic you need. If the method returns true then the error is considered handled * and will not be thrown to the browser. If anything but true is returned then the error will be thrown normally. * * Example usage: * * Ext.Error.handle = function(err) { * if (err.someProperty == 'NotReallyAnError') { * // maybe log something to the application here if applicable * return true; * } * // any non-true return value (including none) will cause the error to be thrown * } * */ Ext.Error = Ext.extend(Error, { statics: { /** * @property {Boolean} ignore * Static flag that can be used to globally disable error reporting to the browser if set to true * (defaults to false). Note that if you ignore Ext errors it's likely that some other code may fail * and throw a native JavaScript error thereafter, so use with caution. In most cases it will probably * be preferable to supply a custom error {@link #handle handling} function instead. * * Example usage: * * Ext.Error.ignore = true; * * @static */ ignore: false, /** * @property {Boolean} notify * Static flag that can be used to globally control error notification to the user. Unlike * Ex.Error.ignore, this does not effect exceptions. They are still thrown. This value can be * set to false to disable the alert notification (default is true for IE6 and IE7). * * Only the first error will generate an alert. Internally this flag is set to false when the * first error occurs prior to displaying the alert. * * This flag is not used in a release build. * * Example usage: * * Ext.Error.notify = false; * * @static */ //notify: Ext.isIE6 || Ext.isIE7, /** * Raise an error that can include additional data and supports automatic console logging if available. * You can pass a string error message or an object with the `msg` attribute which will be used as the * error message. The object can contain any other name-value attributes (or objects) to be logged * along with the error. * * Note that after displaying the error message a JavaScript error will ultimately be thrown so that * execution will halt. * * Example usage: * * Ext.Error.raise('A simple string error message'); * * // or... * * Ext.define('Ext.Foo', { * doSomething: function(option){ * if (someCondition === false) { * Ext.Error.raise({ * msg: 'You cannot do that!', * option: option, // whatever was passed into the method * 'error code': 100 // other arbitrary info * }); * } * } * }); * * @param {String/Object} err The error message string, or an object containing the attribute "msg" that will be * used as the error message. Any other data included in the object will also be logged to the browser console, * if available. * @static */ raise: function(err){ err = err || {}; if (Ext.isString(err)) { err = { msg: err }; } var method = this.raise.caller; if (method) { if (method.$name) { err.sourceMethod = method.$name; } if (method.$owner) { err.sourceClass = method.$owner.$className; } } if (Ext.Error.handle(err) !== true) { var msg = Ext.Error.prototype.toString.call(err); Ext.log({ msg: msg, level: 'error', dump: err, stack: true }); throw new Ext.Error(err); } }, /** * Globally handle any Ext errors that may be raised, optionally providing custom logic to * handle different errors individually. Return true from the function to bypass throwing the * error to the browser, otherwise the error will be thrown and execution will halt. * * Example usage: * * Ext.Error.handle = function(err) { * if (err.someProperty == 'NotReallyAnError') { * // maybe log something to the application here if applicable * return true; * } * // any non-true return value (including none) will cause the error to be thrown * } * * @param {Ext.Error} err The Ext.Error object being raised. It will contain any attributes that were originally * raised with it, plus properties about the method and class from which the error originated (if raised from a * class that uses the Ext 4 class system). * @static */ handle: function(){ return Ext.Error.ignore; } }, // This is the standard property that is the name of the constructor. name: 'Ext.Error', /** * Creates new Error object. * @param {String/Object} config The error message string, or an object containing the * attribute "msg" that will be used as the error message. Any other data included in * the object will be applied to the error instance and logged to the browser console, if available. */ constructor: function(config){ if (Ext.isString(config)) { config = { msg: config }; } var me = this; Ext.apply(me, config); me.message = me.message || me.msg; // 'message' is standard ('msg' is non-standard) // note: the above does not work in old WebKit (me.message is readonly) (Safari 4) }, /** * Provides a custom string representation of the error object. This is an override of the base JavaScript * `Object.toString` method, which is useful so that when logged to the browser console, an error object will * be displayed with a useful message instead of `[object Object]`, the default `toString` result. * * The default implementation will include the error message along with the raising class and method, if available, * but this can be overridden with a custom implementation either at the prototype level (for all errors) or on * a particular error instance, if you want to provide a custom description that will show up in the console. * @return {String} The error message. If raised from within the Ext 4 class system, the error message will also * include the raising class and method names, if available. */ toString: function(){ var me = this, className = me.className ? me.className : '', methodName = me.methodName ? '.' + me.methodName + '(): ' : '', msg = me.msg || '(No description provided)'; return className + methodName + msg; } }); /* * This mechanism is used to notify the user of the first error encountered on the page. This * was previously internal to Ext.Error.raise and is a desirable feature since errors often * slip silently under the radar. It cannot live in Ext.Error.raise since there are times * where exceptions are handled in a try/catch. */ //<debug> (function () { var prevOnError, timer, errors = 0, extraordinarilyBad = /(out of stack)|(too much recursion)|(stack overflow)|(out of memory)/i, win = Ext.global; if (typeof window === 'undefined') { return; // build system or some such environment... } // This method is called to notify the user of the current error status. function notify () { var counters = Ext.log.counters, supports = Ext.supports, hasOnError = supports && supports.WindowOnError; // TODO - timing // Put log counters to the status bar (for most browsers): if (counters && (counters.error + counters.warn + counters.info + counters.log)) { var msg = [ 'Logged Errors:',counters.error, 'Warnings:',counters.warn, 'Info:',counters.info, 'Log:',counters.log].join(' '); if (errors) { msg = '*** Errors: ' + errors + ' - ' + msg; } else if (counters.error) { msg = '*** ' + msg; } win.status = msg; } // Display an alert on the first error: if (!Ext.isDefined(Ext.Error.notify)) { Ext.Error.notify = Ext.isIE6 || Ext.isIE7; // TODO - timing } if (Ext.Error.notify && (hasOnError ? errors : (counters && counters.error))) { Ext.Error.notify = false; if (timer) { win.clearInterval(timer); // ticks can queue up so stop... timer = null; } alert('Unhandled error on page: See console or log'); poll(); } } // Sets up polling loop. This is the only way to know about errors in some browsers // (Opera/Safari) and is the only way to update the status bar for warnings and other // non-errors. function poll () { timer = win.setInterval(notify, 1000); } // window.onerror sounds ideal but it prevents the built-in error dialog from doing // its (better) thing. poll(); })(); //</debug>


Coronavirus disease (COVID-19) is an infectious
Available in India
Get Details of Available Centers and Slots
Live Cases Around The Globe
Download the Android App on your System


:a man's close-fitting jacket worn in Europe especially during the Renaissance
:something consisting of two identical or similar parts: as
:a lens consisting of two components
:a handheld magnifier consisting of two lenses in a metal cylinder
:a spectrum line having two close components
:a domino with the same number of spots on each end
:a set of two identical or similar things: as
:two thrown dice with the same number of spots on the upper face
:one of nine pairs of microtubules found in cilia and flagella
:one of a pair
:one of two or more words (as guard and ward) in the same language derived by different routes of transmission from the same source


The vmm directory contains the Java source code for 3D-XplorMath-J, a program for visualizing and experimenting with a variety of mathematical objects or "exhibits." The Web site for this program can be found at http://3d-xplormath.org/j. 3D-XplorMath-J is a Java version of 3D-XplorMath, a program for Macintosh computers that has been around for several decades. See http://3d-xplormath.org.
The source code for 3D-XplorMath-J is released under a BSD license, which allows redistribution and modification with ceratin restrictions. Please see the license for full detials.
The core functionality of the program is defined in the packages vmm.core, vmm.core3D, vmm.functions, and vmm.actions. The package vmm.xm3d defines the main program and applets that serve as "wrappers" for presention of the exhbits. Several resources used by the program can be found in vmm.resources. Remaining packages, such as vmm.conformalmap and vmm.planecurve.parametric, define exhibits of various types.


| Trees | Indices | Help |
|
|---|
|
|
object --+ | Beta
Queries it.db for agent's access level
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
Inherited from |
|
|||
|
Inherited from |
|
Takes an agent, feature and/or lvl
|
Check for Agent's access based on feature. Return True or level of access if there is one. >>> a = beta.Beta('5271','P20449') >>> a.checkAgentAccess() >>> u'' |
Retrieve all agents and their level of access for a specific feature >>> a = beta.Beta('P20449') >>> a.getAllAgentsAccess() >>> [ezRow({'lvlofaccess': None, 'agent': u'5010'}), ezRow({'lvlofaccess': u'', 'agent': u'8476'})] |
Set agent's level of access
|
Set a group of agents level of access
|
| Trees | Indices | Help |
|
|---|
| Generated by Epydoc 3.0.1 on Mon Oct 8 11:15:37 2012 | http://epydoc.sourceforge.net |