{
  "Math.randomBoolean|block": "pick random true or false",
  "Math|block": "Math",
  "String.fromCharCode|block": "text from char code %code",
  "String|block": "String",
  "basic.clearScreen|block": "clear screen",
  "basic.forever|block": "forever",
  "basic.pause|block": "pause (ms) %pause",
  "basic.showLeds|block": "show leds",
  "basic.showNumber|block": "show|number %number",
  "basic.showString|block": "show|string %text",
  "basic|block": "basic",
  "control.inBackground|block": "run in background",
  "control.reset|block": "reset",
  "control|block": "control",
  "game.addScore|block": "change score by|%points",
  "game.gameOver|block": "game over",
  "game.score|block": "score",
  "game.startCountdown|block": "start countdown|(ms) %duration",
  "game|block": "game",
  "images.createBigImage|block": "create big image",
  "images.createImage|block": "create image",
  "images|block": "images",
  "input.acceleration|block": "acceleration (mg)|%NAME",
  "input.buttonIsPressed|block": "button|%NAME|is pressed",
  "input.compassHeading|block": "compass heading (°)",
  "input.lightLevel|block": "light level",
  "input.magneticForce|block": "magnetic force (µT)|%NAME",
  "input.onButtonPressed|block": "on button|%NAME|pressed",
  "input.onGesture|block": "on |%NAME",
  "input.onPinPressed|block": "on pin|%NAME|pressed",
  "input.pinIsPressed|block": "pin %NAME|is pressed",
  "input.rotation|block": "rotation (°)|%NAME",
  "input.runningTime|block": "running time (ms)",
  "input.setAccelerometerRange|block": "set accelerometer|range %range",
  "input.temperature|block": "temperature (°C)",
  "input|block": "input",
  "led.brightness|block": "brightness",
  "led.plotBarGraph|block": "plot bar graph of %value |up to %high",
  "led.plot|block": "plot|x %x|y %y",
  "led.point|block": "point|x %x|y %y",
  "led.setBrightness|block": "set brightness %value",
  "led.stopAnimation|block": "stop animation",
  "led.unplot|block": "unplot|x %x|y %y",
  "led|block": "led",
  "music.beat|block": "%fraction|beat",
  "music.changeTempoBy|block": "change tempo by (bpm)|%value",
  "music.noteFrequency|block": "%note",
  "music.playTone|block": "play|tone %note=device_note|for %duration=device_beat",
  "music.rest|block": "rest(ms)|%duration=device_beat",
  "music.ringTone|block": "ring tone (Hz)|%note=device_note",
  "music.setTempo|block": "set tempo to (bpm)|%value",
  "music.tempo|block": "tempo (bpm)",
  "music|block": "music",
  "pins.analogReadPin|block": "analog read|pin %name",
  "pins.analogSetPeriod|block": "analog set period|pin %pin|to (µs)%micros",
  "pins.analogWritePin|block": "analog write|pin %name|to %value",
  "pins.digitalReadPin|block": "digital read|pin %name",
  "pins.digitalWritePin|block": "digital write|pin %name|to %value",
  "pins.i2cReadNumber|block": "i2c read number|at address %address|of format %format=i2c_sizeof",
  "pins.i2cWriteNumber|block": "i2c write number|at address %address|with value %value|of format %format=i2c_sizeof",
  "pins.map|block": "map %value|from low %fromLow|from high %fromHigh|to low %toLow|to high %toHigh",
  "pins.onPulsed|block": "on|pin %pin|pulsed %pulse",
  "pins.pulseDuration|block": "pulse duration (µs)",
  "pins.servoSetPulse|block": "servo set pulse|pin %value|to (µs) %micros",
  "pins.servoWritePin|block": "servo write|pin %name|to %value",
  "pins.setPull|block": "set pull|pin %pin|to %pull",
  "pins|block": "pins",
  "serial.readLine|block": "serial read line",
  "serial.redirect|block": "serial redirect to|TX %tx|RX %rx|at baud rate %rate",
  "serial.writeLine|block": "serial|write line %text",
  "serial.writeNumber|block": "serial|write number %value",
  "serial.writeString|block": "serial write string %text",
  "serial.writeValue|block": "serial|write value %name|= %value",
  "serial|block": "serial"
}