# record_sheet

id: httpie
git_filename: ./httpie.md
format: md
field_title: httpie
field_category: CLI
field_updated: 2020-07-05
field_updated___timezone: UTC
data:
{"title": "httpie", "category": "CLI", "weight": -3, "updated": "2020-07-05", "description": "$ http POST http://example.com name=\"John\" Host:example.com \u2014 JSON, cookies, files, auth, and other httpie examples.\n", "body": "### Introduction\n{: .-intro}\n\n[HTTPie](https://httpie.org/) is a command-line HTTP client.\n\n- [HTTPie website](https://httpie.org/) _(httpie.org)_\n- [HTTPie documentation](https://httpie.org/docs) _(httpie.org)_\n- [Try it online](https://httpie.org/run) _(httpie.org)_\n\n### Parameters\n\n```bash\n$ http POST http://example.com/posts/3 \\\n    Origin:example.com \\  # :   HTTP headers\n    name=\"John Doe\" \\     # =   string\n    q==\"search\" \\         # ==  URL parameters (?q=search)\n    age:=29 \\             # :=  for non-strings\n    list:='[1,3,4]' \\     # :=  json\n    file@file.bin \\       # @   attach file\n    token=@token.txt \\    # =@  read from file (text)\n    user:=@user.json      # :=@ read from file (json)\n```\n\n### Forms\n\n```bash\n$ http --form POST example.com \\\n    name=\"John Smith\" \\\n    cv=@document.txt\n```\n\n### Raw JSON\n\n```bash\n$ echo '{\"hello\": \"world\"}' | http POST example.com/post\n```\n\n### Options\n\n#### Printing options\n\n```bash\n-v, --verbose            # same as --print=HhBb --all\n-h, --headers            # same as --print=h\n-b, --body               # same as --print=b\n    --all                # print intermediate requests\n    --print=HhBb         # H: request headers\n                         # B: request body\n                         # h: response headers\n                         # b: response body\n    --pretty=none        # all | colors | format\n    --json | -j          # Response is serialized as a JSON object.\n```\n\n#### Authentication\n\n```bash\n    --session NAME\n-a, --auth USER:PASS\n    --auth-type basic\n    --auth-type digest\n```\n\n#### Session\n\n```bash\n    --session NAME       # store auth and cookies\n    --session-read-only NAME\n```\n\n#### Downloading\n\n```bash\n-d, --download           # like wget\n-c, --continue\n-o, --output FILE\n```\n\n#### Others\n\n```bash\n-F, --follow             # follow redirects\n    --max-redirects N    # maximum for --follow\n    --timeout SECONDS\n    --verify no          # skip SSL verification\n    --proxy http:http://foo.bar:3128\n```\n\n### References\n\n* <https://github.com/jakubroztocil/httpie>"}

field_body:
### Introduction
{: .-intro}

[HTTPie](https://httpie.org/) is a command-line HTTP client.

- [HTTPie website](https://httpie.org/) _(httpie.org)_
- [HTTPie documentation](https://httpie.org/docs) _(httpie.org)_
- [Try it online](https://httpie.org/run) _(httpie.org)_

### Parameters

```bash
$ http POST http://example.com/posts/3 \
    Origin:example.com \  # :   HTTP headers
    name="John Doe" \     # =   string
    q=="search" \         # ==  URL parameters (?q=search)
    age:=29 \             # :=  for non-strings
    list:='[1,3,4]' \     # :=  json
    file@file.bin \       # @   attach file
    token=@token.txt \    # =@  read from file (text)
    user:=@user.json      # :=@ read from file (json)
```

### Forms

```bash
$ http --form POST example.com \
    name="John Smith" \
    cv=@document.txt
```

### Raw JSON

```bash
$ echo '{"hello": "world"}' | http POST example.com/post
```

### Options

#### Printing options

```bash
-v, --verbose            # same as --print=HhBb --all
-h, --headers            # same as --print=h
-b, --body               # same as --print=b
    --all                # print intermediate requests
    --print=HhBb         # H: request headers
                         # B: request body
                         # h: response headers
                         # b: response body
    --pretty=none        # all | colors | format
    --json | -j          # Response is serialized as a JSON object.
```

#### Authentication

```bash
    --session NAME
-a, --auth USER:PASS
    --auth-type basic
    --auth-type digest
```

#### Session

```bash
    --session NAME       # store auth and cookies
    --session-read-only NAME
```

#### Downloading

```bash
-d, --download           # like wget
-c, --continue
-o, --output FILE
```

#### Others

```bash
-F, --follow             # follow redirects
    --max-redirects N    # maximum for --follow
    --timeout SECONDS
    --verify no          # skip SSL verification
    --proxy http:http://foo.bar:3128
```

### References

* <https://github.com/jakubroztocil/httpie>


id: http-status
git_filename: ./http-status.md
format: md
field_title: HTTP Status
field_category: API
data:
{"title": "HTTP Status", "category": "API", "description": "List of HTTP Status codes and links to description.\n", "body": "### Informational Responses\n\n| Code  | Name                | ?                                 |\n| ----  | ----                | -                                 |\n| `100` | Continue            | [?](https://httpstatuses.com/100) |\n| `101` | Switching Protocols | [?](https://httpstatuses.com/101) |\n{: .xp}\n\n### Success Responses\n\n| Code  | Name                        | ?                                 |\n| ----  | ----                        | -                                 |\n| `200` | OK                          | [?](https://httpstatuses.com/200) |\n| `201` | Created                     | [?](https://httpstatuses.com/201) |\n| `202` | Accepted                    | [?](https://httpstatuses.com/202) |\n| `203` | Non-Authoritive Information | [?](https://httpstatuses.com/203) |\n| `204` | No Content                  | [?](https://httpstatuses.com/204) |\n| `205` | Reset Content               | [?](https://httpstatuses.com/205) |\n| `206` | Partial Content             | [?](https://httpstatuses.com/206) |\n| `226` | IM Used                     | [?](https://httpstatuses.com/226) |\n{: .xp}\n\n### Redirection Responses\n\n| Code  | Name               | ?                                                |\n| ----  | ----               | -                                                |\n| `300` | Multiple Choices   | [?](https://httpstatuses.com/300)                |\n| `301` | Moved Permanently  | [?](https://httpstatuses.com/301)                |\n| `302` | Found              | [?](https://httpstatuses.com/302)                |\n| `303` | See Other          | [?](https://httpstatuses.com/303)                |\n| `304` | Not Modified       | [?](https://httpstatuses.com/304)                |\n| `305` | Use Proxy          | [?](https://httpstatuses.com/305)                |\n| `306` | *Switch Proxy*     | [?](https://httpstatusdogs.com/306-switch-proxy) |\n| `307` | Temporary Redirect | [?](https://httpstatuses.com/307)                |\n| `308` | Permanent Redirect | [?](https://httpstatuses.com/308)                |\n{: .xp}\n\n### Client Error Responses\n\n| Code  | Name                            | ?                                 |\n| ----  | ----                            | -                                 |\n| `400` | Bad Request                     | [?](https://httpstatuses.com/400) |\n| `401` | Unauthorized                    | [?](https://httpstatuses.com/401) |\n| `402` | Payment Required                | [?](https://httpstatuses.com/402) |\n| `403` | Forbidden                       | [?](https://httpstatuses.com/403) |\n| `404` | Not Found                       | [?](https://httpstatuses.com/404) |\n| `405` | Method Not Allowed              | [?](https://httpstatuses.com/405) |\n| `406` | Not Acceptable                  | [?](https://httpstatuses.com/406) |\n| `407` | Proxy Authentication Required   | [?](https://httpstatuses.com/407) |\n| `408` | Request Timeout                 | [?](https://httpstatuses.com/408) |\n| `409` | Conflict                        | [?](https://httpstatuses.com/409) |\n| `410` | Gone                            | [?](https://httpstatuses.com/410) |\n| `411` | Length Required                 | [?](https://httpstatuses.com/411) |\n| `412` | Precondition Failed             | [?](https://httpstatuses.com/412) |\n| `413` | Payload Too Large               | [?](https://httpstatuses.com/413) |\n| `414` | URI Too Long                    | [?](https://httpstatuses.com/414) |\n| `415` | Unsupported Media Type          | [?](https://httpstatuses.com/415) |\n| `416` | Range Not Satisfiable           | [?](https://httpstatuses.com/416) |\n| `417` | Expectation Failed              | [?](https://httpstatuses.com/417) |\n| `418` | I'm a teapot                    | [?](https://httpstatuses.com/418) |\n| `421` | Misdirected Request             | [?](https://httpstatuses.com/421) |\n| `426` | Upgrade Required                | [?](https://httpstatuses.com/426) |\n| `428` | Precondition Required           | [?](https://httpstatuses.com/428) |\n| `429` | Too Many Requests               | [?](https://httpstatuses.com/429) |\n| `431` | Request Header Fields Too Large | [?](https://httpstatuses.com/431) |\n| `451` | Unavailable For Legal Reasons   | [?](https://httpstatuses.com/451) |\n{: .xp}\n\n### Server Error Responses\n\n| Code  | Name                            | ?                                 |\n| ----  | ----                            | -                                 |\n| `500` | Internal Server Error           | [?](https://httpstatuses.com/500) |\n| `501` | Not Implemented                 | [?](https://httpstatuses.com/501) |\n| `502` | Bad Gateway                     | [?](https://httpstatuses.com/502) |\n| `503` | Service Unavailable             | [?](https://httpstatuses.com/503) |\n| `504` | Gateway Timeout                 | [?](https://httpstatuses.com/504) |\n| `505` | HTTP Version Not Supported      | [?](https://httpstatuses.com/505) |\n| `506` | Variant Also Negotiates         | [?](https://httpstatuses.com/506) |\n| `510` | Not Extended                    | [?](https://httpstatuses.com/510) |\n| `511` | Network Authentication Required | [?](https://httpstatuses.com/511) |\n{: .xp}\n\n## WebDAV Status Codes\n\nWebDAV is an extension of HTTP that allows clients to perform remote Web content authoring operations. It provides a framework for users to create, change and move documents on a server. It adds the following status codes on top of HTTP. \n\n[Read more.](https://en.wikipedia.org/wiki/WebDAV)\n\n| Code  | Name                            | ?                                                                |\n| ----  | ----                            | -                                                                |\n| `102` | Processing                      | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#102) |\n| `207` | Multi-Status                    | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#207) |\n| `208` | Already Reported                | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#208) |\n| `422` | Unprocessable Entity            | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#422) |\n| `423` | Locked                          | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#423) |\n| `424` | Failed Dependency               | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#424) |\n| `507` | Insufficient Storage            | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#507) |\n| `508` | Loop Detected                   | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#508) |\n{: .xp}\n\n## Also see\n\n * <https://en.wikipedia.org/wiki/List_of_HTTP_status_codes>\n * <https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html>\n * <https://httpstatuses.com/>"}

field_body:
### Informational Responses

| Code  | Name                | ?                                 |
| ----  | ----                | -                                 |
| `100` | Continue            | [?](https://httpstatuses.com/100) |
| `101` | Switching Protocols | [?](https://httpstatuses.com/101) |
{: .xp}

### Success Responses

| Code  | Name                        | ?                                 |
| ----  | ----                        | -                                 |
| `200` | OK                          | [?](https://httpstatuses.com/200) |
| `201` | Created                     | [?](https://httpstatuses.com/201) |
| `202` | Accepted                    | [?](https://httpstatuses.com/202) |
| `203` | Non-Authoritive Information | [?](https://httpstatuses.com/203) |
| `204` | No Content                  | [?](https://httpstatuses.com/204) |
| `205` | Reset Content               | [?](https://httpstatuses.com/205) |
| `206` | Partial Content             | [?](https://httpstatuses.com/206) |
| `226` | IM Used                     | [?](https://httpstatuses.com/226) |
{: .xp}

### Redirection Responses

| Code  | Name               | ?                                                |
| ----  | ----               | -                                                |
| `300` | Multiple Choices   | [?](https://httpstatuses.com/300)                |
| `301` | Moved Permanently  | [?](https://httpstatuses.com/301)                |
| `302` | Found              | [?](https://httpstatuses.com/302)                |
| `303` | See Other          | [?](https://httpstatuses.com/303)                |
| `304` | Not Modified       | [?](https://httpstatuses.com/304)                |
| `305` | Use Proxy          | [?](https://httpstatuses.com/305)                |
| `306` | *Switch Proxy*     | [?](https://httpstatusdogs.com/306-switch-proxy) |
| `307` | Temporary Redirect | [?](https://httpstatuses.com/307)                |
| `308` | Permanent Redirect | [?](https://httpstatuses.com/308)                |
{: .xp}

### Client Error Responses

| Code  | Name                            | ?                                 |
| ----  | ----                            | -                                 |
| `400` | Bad Request                     | [?](https://httpstatuses.com/400) |
| `401` | Unauthorized                    | [?](https://httpstatuses.com/401) |
| `402` | Payment Required                | [?](https://httpstatuses.com/402) |
| `403` | Forbidden                       | [?](https://httpstatuses.com/403) |
| `404` | Not Found                       | [?](https://httpstatuses.com/404) |
| `405` | Method Not Allowed              | [?](https://httpstatuses.com/405) |
| `406` | Not Acceptable                  | [?](https://httpstatuses.com/406) |
| `407` | Proxy Authentication Required   | [?](https://httpstatuses.com/407) |
| `408` | Request Timeout                 | [?](https://httpstatuses.com/408) |
| `409` | Conflict                        | [?](https://httpstatuses.com/409) |
| `410` | Gone                            | [?](https://httpstatuses.com/410) |
| `411` | Length Required                 | [?](https://httpstatuses.com/411) |
| `412` | Precondition Failed             | [?](https://httpstatuses.com/412) |
| `413` | Payload Too Large               | [?](https://httpstatuses.com/413) |
| `414` | URI Too Long                    | [?](https://httpstatuses.com/414) |
| `415` | Unsupported Media Type          | [?](https://httpstatuses.com/415) |
| `416` | Range Not Satisfiable           | [?](https://httpstatuses.com/416) |
| `417` | Expectation Failed              | [?](https://httpstatuses.com/417) |
| `418` | I'm a teapot                    | [?](https://httpstatuses.com/418) |
| `421` | Misdirected Request             | [?](https://httpstatuses.com/421) |
| `426` | Upgrade Required                | [?](https://httpstatuses.com/426) |
| `428` | Precondition Required           | [?](https://httpstatuses.com/428) |
| `429` | Too Many Requests               | [?](https://httpstatuses.com/429) |
| `431` | Request Header Fields Too Large | [?](https://httpstatuses.com/431) |
| `451` | Unavailable For Legal Reasons   | [?](https://httpstatuses.com/451) |
{: .xp}

### Server Error Responses

| Code  | Name                            | ?                                 |
| ----  | ----                            | -                                 |
| `500` | Internal Server Error           | [?](https://httpstatuses.com/500) |
| `501` | Not Implemented                 | [?](https://httpstatuses.com/501) |
| `502` | Bad Gateway                     | [?](https://httpstatuses.com/502) |
| `503` | Service Unavailable             | [?](https://httpstatuses.com/503) |
| `504` | Gateway Timeout                 | [?](https://httpstatuses.com/504) |
| `505` | HTTP Version Not Supported      | [?](https://httpstatuses.com/505) |
| `506` | Variant Also Negotiates         | [?](https://httpstatuses.com/506) |
| `510` | Not Extended                    | [?](https://httpstatuses.com/510) |
| `511` | Network Authentication Required | [?](https://httpstatuses.com/511) |
{: .xp}

## WebDAV Status Codes

WebDAV is an extension of HTTP that allows clients to perform remote Web content authoring operations. It provides a framework for users to create, change and move documents on a server. It adds the following status codes on top of HTTP. 

[Read more.](https://en.wikipedia.org/wiki/WebDAV)

| Code  | Name                            | ?                                                                |
| ----  | ----                            | -                                                                |
| `102` | Processing                      | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#102) |
| `207` | Multi-Status                    | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#207) |
| `208` | Already Reported                | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#208) |
| `422` | Unprocessable Entity            | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#422) |
| `423` | Locked                          | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#423) |
| `424` | Failed Dependency               | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#424) |
| `507` | Insufficient Storage            | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#507) |
| `508` | Loop Detected                   | [?](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#508) |
{: .xp}

## Also see

 * <https://en.wikipedia.org/wiki/List_of_HTTP_status_codes>
 * <https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html>
 * <https://httpstatuses.com/>


id: html
git_filename: ./html.md
format: md
field_title: HTML
field_category: HTML
data:
{"title": "HTML", "category": "HTML", "body": "### Head stuff\n\n    <link rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/favicon.ico\">\n    <link rel=\"shortcut icon\" type=\"image/png\" href=\"/favicon.png\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge,chrome=1\">\n\n### iPhone viewport\n\n    <meta name=\"viewport\" content=\"initial-scale=1.0, maximum-scale=1.0\">\n    <meta name=\"viewport\" content=\"width=device-width\">\n    <meta name=\"viewport\" content=\"width=320, initial-scale=1.0, maximum-scale=1.0, user-scalable=0\"/> <!-- full example -->\n\n### Default OpenGraph meta tags\n\n    <meta content=\"...\" name=\"description\">\n    <meta content=\"...\" property=\"og:description\">\n    <meta content=\"http://.../preview.jpg\" property=\"og:image\">\n    <meta content=\"Hello There\" property=\"og:title\">\n    <meta content=\"Hello There\" property=\"og:site_name\">\n    <meta content=\"hellothere\" property=\"fb:admins\">\n    <meta content=\"website\" property=\"og:type\">\n\n### Webfonts\n\n    <script>WebFontConfig={    },function(a,b){var c=a.createElement(b);c.src=\"//ajax.googleapis.com/ajax/libs/webfont/1/webfont.js\",c.async=1;var d=a.getElementsByTagName(b)[0];d.parentNode.insertBefore(c,d)}(document,\"script\")</script>\n\n    // {typekit{id:\"...\"}}\n    // {google:{families:['Exo:400']}}\n\n### Google Analytics\n\n    <script>location.hostname.match(/helloworld\\.com/)&&(_gaq=[[\"_setAccount\",\"UA-XXXXX-1\"],[\"_trackPageview\"]],function(a,b){var c=a.createElement(b),d=a.getElementsByTagName(b)[0];c.async=1,c.src=(\"https:\"==location.protocol?\"//ssl\":\"//www\")+\".google-analytics.com/ga.js\",d.parentNode.insertBefore(c,d)}(document,\"script\"))</script>\n\n### FB/Twitter\n\n    <div id=\"fb-root\"></div><script>fbAsyncInit=function(){FB.init({\"appId\":\"___APPIDGOESHERE___\",\"status\":true,\"cookie\":true,\"xfbml\":true})};!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.async=1;js.src='//connect.facebook.net/en_US/all.js';fjs.parentNode.insertBefore(js,fjs);}}(document,'script','facebook-jssdk');</script>\n\n    <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.async=1;js.src=\"//platform.twitter.com/widgets.js\";fjs.parentNode.insertBefore(js,fjs);}}(document,\"script\",\"twitter-wjs\");</script>\n\n### HTML5 Shiv for IE8\n\n    <!--[if lte IE 8]><script src='//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.6.1/html5shiv.js'></script><![endif]-->\n\n### H5BP HTML tag (IE8 and IE9 only)\n\n    <!--[if lte IE 8]><html class=\"ie8\"><![endif]--><!--[if IE 9]><html class=\"ie9\"><![endif]--><!--[if gt IE 9]><!-->\n    <html><!--<![endif]-->\n\n### Touch icons\n\n * apple-touch-icon-precomposed.png\n * apple-touch-icon-57x57-precomposed.png\n * apple-touch-icon-72x72-precomposed.png\n * apple-touch-icon-114x114-precomposed.png\n * apple-touch-icon-144x144-precomposed.png\n\n### Icons\n\n    <link rel=\"shortcut icon\" type=\"image/png\" href=\"favicon.png\">\n    <link href=\"apple-touch-icon-precomposed.png\" rel=\"apple-touch-icon\">\n    <link href=\"apple-touch-icon-57x57-precomposed.png\" size=\"57x57\" rel=\"apple-touch-icon\">\n    <link href=\"apple-touch-icon-72x72-precomposed.png\" size=\"72x72\" rel=\"apple-touch-icon\">\n    <link href=\"apple-touch-icon-114x114-precomposed.png\" size=\"114x114\" rel=\"apple-touch-icon\">\n    <link href=\"apple-touch-icon-144x144-precomposed.png\" size=\"144x144\" rel=\"apple-touch-icon\">\n\nOnly do this if you're not placing the site in the root!\n\n### H5BP HTML tag\n\n    <!--[if lt IE 7 ]> <html class=\"ie6\"> <![endif]-->\n    <!--[if IE 7 ]>    <html class=\"ie7\"> <![endif]-->\n    <!--[if IE 8 ]>    <html class=\"ie8\"> <![endif]-->\n    <!--[if IE 9 ]>    <html class=\"ie9\"> <![endif]-->\n    <!--[if (gt IE 9)|!(IE)]><!--> <html class=\"\"> <!--<![endif]-->\n\n### Google jQuery\n\n    <script src=\"http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js\"></script>\n\n### Unsupported message\n\n    <!--[if lt IE 8]>\n    <div class=\"unsupported-browser\">\n      <strong>\n        You are using an outdated browser.\n      </strong>\n      <span>\n        Please <a class=\"upgrade-browser\"\n        href=\"http://browsehappy.com/\">\n        upgrade your browser</a> or <a  class=\"chrome-frame\"\n        href=\"http://www.google.com/chromeframe/?redirect=true\">activate Google \n        Chrome Frame</a> to improve your experience.\n      </span>\n    </div>\n    <![endif]-->\n\n### HTML Compatibility inspector\n\n    <script src=\"http://ie.microsoft.com/testdrive/HTML5/CompatInspector/inspector.js\"></script>\n\nMore info here: [microsoft.com](http://ie.microsoft.com/testdrive/HTML5/CompatInspector/)"}

field_body:
### Head stuff

    <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico">
    <link rel="shortcut icon" type="image/png" href="/favicon.png">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

### iPhone viewport

    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0">
    <meta name="viewport" content="width=device-width">
    <meta name="viewport" content="width=320, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/> <!-- full example -->

### Default OpenGraph meta tags

    <meta content="..." name="description">
    <meta content="..." property="og:description">
    <meta content="http://.../preview.jpg" property="og:image">
    <meta content="Hello There" property="og:title">
    <meta content="Hello There" property="og:site_name">
    <meta content="hellothere" property="fb:admins">
    <meta content="website" property="og:type">

### Webfonts

    <script>WebFontConfig={    },function(a,b){var c=a.createElement(b);c.src="//ajax.googleapis.com/ajax/libs/webfont/1/webfont.js",c.async=1;var d=a.getElementsByTagName(b)[0];d.parentNode.insertBefore(c,d)}(document,"script")</script>

    // {typekit{id:"..."}}
    // {google:{families:['Exo:400']}}

### Google Analytics

    <script>location.hostname.match(/helloworld\.com/)&&(_gaq=[["_setAccount","UA-XXXXX-1"],["_trackPageview"]],function(a,b){var c=a.createElement(b),d=a.getElementsByTagName(b)[0];c.async=1,c.src=("https:"==location.protocol?"//ssl":"//www")+".google-analytics.com/ga.js",d.parentNode.insertBefore(c,d)}(document,"script"))</script>

### FB/Twitter

    <div id="fb-root"></div><script>fbAsyncInit=function(){FB.init({"appId":"___APPIDGOESHERE___","status":true,"cookie":true,"xfbml":true})};!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.async=1;js.src='//connect.facebook.net/en_US/all.js';fjs.parentNode.insertBefore(js,fjs);}}(document,'script','facebook-jssdk');</script>

    <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.async=1;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>

### HTML5 Shiv for IE8

    <!--[if lte IE 8]><script src='//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.6.1/html5shiv.js'></script><![endif]-->

### H5BP HTML tag (IE8 and IE9 only)

    <!--[if lte IE 8]><html class="ie8"><![endif]--><!--[if IE 9]><html class="ie9"><![endif]--><!--[if gt IE 9]><!-->
    <html><!--<![endif]-->

### Touch icons

 * apple-touch-icon-precomposed.png
 * apple-touch-icon-57x57-precomposed.png
 * apple-touch-icon-72x72-precomposed.png
 * apple-touch-icon-114x114-precomposed.png
 * apple-touch-icon-144x144-precomposed.png

### Icons

    <link rel="shortcut icon" type="image/png" href="favicon.png">
    <link href="apple-touch-icon-precomposed.png" rel="apple-touch-icon">
    <link href="apple-touch-icon-57x57-precomposed.png" size="57x57" rel="apple-touch-icon">
    <link href="apple-touch-icon-72x72-precomposed.png" size="72x72" rel="apple-touch-icon">
    <link href="apple-touch-icon-114x114-precomposed.png" size="114x114" rel="apple-touch-icon">
    <link href="apple-touch-icon-144x144-precomposed.png" size="144x144" rel="apple-touch-icon">

Only do this if you're not placing the site in the root!

### H5BP HTML tag

    <!--[if lt IE 7 ]> <html class="ie6"> <![endif]-->
    <!--[if IE 7 ]>    <html class="ie7"> <![endif]-->
    <!--[if IE 8 ]>    <html class="ie8"> <![endif]-->
    <!--[if IE 9 ]>    <html class="ie9"> <![endif]-->
    <!--[if (gt IE 9)|!(IE)]><!--> <html class=""> <!--<![endif]-->

### Google jQuery

    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

### Unsupported message

    <!--[if lt IE 8]>
    <div class="unsupported-browser">
      <strong>
        You are using an outdated browser.
      </strong>
      <span>
        Please <a class="upgrade-browser"
        href="http://browsehappy.com/">
        upgrade your browser</a> or <a  class="chrome-frame"
        href="http://www.google.com/chromeframe/?redirect=true">activate Google 
        Chrome Frame</a> to improve your experience.
      </span>
    </div>
    <![endif]-->

### HTML Compatibility inspector

    <script src="http://ie.microsoft.com/testdrive/HTML5/CompatInspector/inspector.js"></script>

More info here: [microsoft.com](http://ie.microsoft.com/testdrive/HTML5/CompatInspector/)


id: html-share
git_filename: ./html-share.md
format: md
field_title: Share links
field_category: HTML
field_updated: 2017-09-04
field_updated___timezone: UTC
data:
{"title": "Share links", "category": "HTML", "updated": "2017-09-04", "body": "## Share links\n{: .-one-column}\n\nFacebook:\n{:.-setup}\n\n```html\n<a href='https://www.facebook.com/sharer/sharer.php?u=URL' target='share'>\n```\n\nTwitter:\n{:.-setup}\n\n```html\n<a href='https://twitter.com/intent/tweet?text=DESCRIPTION+URL' target='share'>\n```\n\nGoogle Plus:\n{:.-setup}\n\n```html\n<a href='https://plus.google.com/share?url=URL' target='share'>\n```"}

field_body:
## Share links
{: .-one-column}

Facebook:
{:.-setup}

```html
<a href='https://www.facebook.com/sharer/sharer.php?u=URL' target='share'>
```

Twitter:
{:.-setup}

```html
<a href='https://twitter.com/intent/tweet?text=DESCRIPTION+URL' target='share'>
```

Google Plus:
{:.-setup}

```html
<a href='https://plus.google.com/share?url=URL' target='share'>
```


id: html-microformats
git_filename: ./html-microformats.md
format: md
field_title: Microformats
field_category: HTML
data:
{"title": "Microformats", "category": "HTML", "body": "### Author\n\n``` html\n<span class=\"entry-author\" itemprop=\"author\" itemscope=\"itemscope\" itemtype=\"https://schema.org/Person\">\n  <a href=\"https://AUTHORPAGE\" class=\"entry-author-link\" itemprop=\"url\" rel=\"author\">\n    <span class=\"entry-author-name\" itemprop=\"name\">AUTHORNAME</span>\n  </a>\n</span>\n```\n\n### Time\n\n``` html\n<time class=\"entry-time\" itemprop=\"datePublished\" datetime=\"2009-02-09T20:04:00+00:00\">February 9, 2009</time>\n```"}

field_body:
### Author

``` html
<span class="entry-author" itemprop="author" itemscope="itemscope" itemtype="https://schema.org/Person">
  <a href="https://AUTHORPAGE" class="entry-author-link" itemprop="url" rel="author">
    <span class="entry-author-name" itemprop="name">AUTHORNAME</span>
  </a>
</span>
```

### Time

``` html
<time class="entry-time" itemprop="datePublished" datetime="2009-02-09T20:04:00+00:00">February 9, 2009</time>
```


id: html-meta
git_filename: ./html-meta.md
format: md
field_title: HTML meta tags
field_category: HTML
field_updated: 2020-03-20
field_updated___timezone: UTC
data:
{"title": "HTML meta tags", "category": "HTML", "updated": "2020-03-20", "weight": -3, "body": "### Meta tags\n\n```html\n<meta charset='utf-8'>\n```\n\n```html\n<!-- title -->\n<title>\u00b7\u00b7\u00b7</title>\n<meta property='og:title'  content='\u00b7\u00b7\u00b7'>\n<meta name='twitter:title' content='\u00b7\u00b7\u00b7'>\n```\n{: data-line=\"2\"}\n\n```html\n<!-- url -->\n<link rel='canonical'       href='http://\u00b7\u00b7\u00b7'>\n<meta property='og:url'  content='http://\u00b7\u00b7\u00b7'>\n<meta name='twitter:url' content='http://\u00b7\u00b7\u00b7'>\n```\n{: data-line=\"2\"}\n\n```html\n<!-- description -->\n<meta name='description'         content='\u00b7\u00b7\u00b7'>\n<meta property='og:description'  content='\u00b7\u00b7\u00b7'>\n<meta name='twitter:description' content='\u00b7\u00b7\u00b7'>\n```\n{: data-line=\"2\"}\n\n```html\n<!-- image -->\n<meta property=\"og:image\"  content=\"http://\u00b7\u00b7\u00b7\">\n<meta name=\"twitter:image\" content=\"http://\u00b7\u00b7\u00b7\">\n```\n\n```html\n<!-- ua -->\n<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>\n```\n\n```html\n<!-- viewport -->\n<meta name='viewport' content='width=device-width'>\n<meta name='viewport' content='width=1024'>\n```\n\n### More opengraph\n\n```html\n<meta property='og:site_name' content='\u00b7\u00b7\u00b7'>\n<meta property='og:type' content='website'>\n```\n\n```html\n<meta property='fb:app_id' content='\u00b7\u00b7\u00b7'>\n<meta property='fb:admins' content='UID1,UID2'>\n<!-- \u00b7\u00b7\u00b7unless there's app_id -->\n```\n\n```html\n<meta property='og:audio' content='http://\u00b7\u00b7\u00b7/theme.mp3'>\n<meta property='og:video' content='http://\u00b7\u00b7\u00b7/trailer.swf'>\n```\n\nSee: [OpenGraph protocol](https://developers.facebook.com/docs/opengraphprotocol/) _(developers.facebook.com)_\n\n### Opengraph for articles\n\n- `article:published_time`\n- `article:modified_time`\n- `article:expiration_time`\n- `article:author`\n- `article:section`\n- `article:tag`\n\n### Apple-only\n\n```html\n<meta name='format-detection' content='telephone=no'>\n```\n\n## Progressive web apps\n\n### Add to homescreen\n\n```html\n<meta name='mobile-web-app-capable' content='yes'>\n<meta name='apple-mobile-web-app-capable' content='yes'>\n```\n\n```html\n<meta name='apple-mobile-web-app-status-bar-style' content='black'>\n<!-- black | black-translucent | default -->\n```\n\n### Theme color\n\n```html\n<meta name='theme-color' content='#ff00ff'>\n```\n\nAndroid-only.\nSee: [Theme color](https://developers.google.com/web/updates/2014/11/Support-for-theme-color-in-Chrome-39-for-Android)\n\n### Manifest\n\n```html\n<link rel='manifest' href='/manifest.json'>\n```\n\nAndroid-only.\nSee: [Manifest](https://developers.google.com/web/fundamentals/engage-and-retain/web-app-manifest/)\n\n### Icons\n\n```html\n<!-- Minimal -->\n<link rel='icon' type='image/png' href='favicon@32.png'>\n<link rel='icon' sizes='192x192' href='icon@192.png'>\n<link rel='apple-touch-icon' href='icon@152.png'>\n<meta name='msapplication-square310x310logo' content='icon@310.png'>\n```\n\n```html\n<!-- Apple -->\n<link rel='apple-touch-icon' href='touch-icon-iphone.png'>\n<link rel='apple-touch-icon' sizes='76x76' href='touch-icon-ipad.png'>\n<link rel='apple-touch-icon' sizes='120x120' href='touch-icon-iphone-retina.png'>\n<link rel='apple-touch-icon' sizes='152x152' href='touch-icon-ipad-retina.png'>\n```\n\n```html\n<!-- Microsoft -->\n<meta name='msapplication-square70x70logo' content='icon_smalltile.png'>\n<meta name='msapplication-square150x150logo' content='icon_mediumtile.png'>\n<meta name='msapplication-wide310x150logo' content='icon_widetile.png'>\n```\n\nChrome on Android recommends [192x192](https://developers.google.com/web/updates/2014/11/Support-for-theme-color-in-Chrome-39-for-Android).\nSee: [Icons](https://developers.google.com/web/fundamentals/design-and-ui/browser-customization/)\n\n## Reference\n{: .-one-column}\n\n * <https://dev.twitter.com/cards>\n * <https://developers.facebook.com/docs/opengraphprotocol/#types>\n{: .-also-see}"}

field_body:
### Meta tags

```html
<meta charset='utf-8'>
```

```html
<!-- title -->
<title>···</title>
<meta property='og:title'  content='···'>
<meta name='twitter:title' content='···'>
```
{: data-line="2"}

```html
<!-- url -->
<link rel='canonical'       href='http://···'>
<meta property='og:url'  content='http://···'>
<meta name='twitter:url' content='http://···'>
```
{: data-line="2"}

```html
<!-- description -->
<meta name='description'         content='···'>
<meta property='og:description'  content='···'>
<meta name='twitter:description' content='···'>
```
{: data-line="2"}

```html
<!-- image -->
<meta property="og:image"  content="http://···">
<meta name="twitter:image" content="http://···">
```

```html
<!-- ua -->
<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
```

```html
<!-- viewport -->
<meta name='viewport' content='width=device-width'>
<meta name='viewport' content='width=1024'>
```

### More opengraph

```html
<meta property='og:site_name' content='···'>
<meta property='og:type' content='website'>
```

```html
<meta property='fb:app_id' content='···'>
<meta property='fb:admins' content='UID1,UID2'>
<!-- ···unless there's app_id -->
```

```html
<meta property='og:audio' content='http://···/theme.mp3'>
<meta property='og:video' content='http://···/trailer.swf'>
```

See: [OpenGraph protocol](https://developers.facebook.com/docs/opengraphprotocol/) _(developers.facebook.com)_

### Opengraph for articles

- `article:published_time`
- `article:modified_time`
- `article:expiration_time`
- `article:author`
- `article:section`
- `article:tag`

### Apple-only

```html
<meta name='format-detection' content='telephone=no'>
```

## Progressive web apps

### Add to homescreen

```html
<meta name='mobile-web-app-capable' content='yes'>
<meta name='apple-mobile-web-app-capable' content='yes'>
```

```html
<meta name='apple-mobile-web-app-status-bar-style' content='black'>
<!-- black | black-translucent | default -->
```

### Theme color

```html
<meta name='theme-color' content='#ff00ff'>
```

Android-only.
See: [Theme color](https://developers.google.com/web/updates/2014/11/Support-for-theme-color-in-Chrome-39-for-Android)

### Manifest

```html
<link rel='manifest' href='/manifest.json'>
```

Android-only.
See: [Manifest](https://developers.google.com/web/fundamentals/engage-and-retain/web-app-manifest/)

### Icons

```html
<!-- Minimal -->
<link rel='icon' type='image/png' href='favicon@32.png'>
<link rel='icon' sizes='192x192' href='icon@192.png'>
<link rel='apple-touch-icon' href='icon@152.png'>
<meta name='msapplication-square310x310logo' content='icon@310.png'>
```

```html
<!-- Apple -->
<link rel='apple-touch-icon' href='touch-icon-iphone.png'>
<link rel='apple-touch-icon' sizes='76x76' href='touch-icon-ipad.png'>
<link rel='apple-touch-icon' sizes='120x120' href='touch-icon-iphone-retina.png'>
<link rel='apple-touch-icon' sizes='152x152' href='touch-icon-ipad-retina.png'>
```

```html
<!-- Microsoft -->
<meta name='msapplication-square70x70logo' content='icon_smalltile.png'>
<meta name='msapplication-square150x150logo' content='icon_mediumtile.png'>
<meta name='msapplication-wide310x150logo' content='icon_widetile.png'>
```

Chrome on Android recommends [192x192](https://developers.google.com/web/updates/2014/11/Support-for-theme-color-in-Chrome-39-for-Android).
See: [Icons](https://developers.google.com/web/fundamentals/design-and-ui/browser-customization/)

## Reference
{: .-one-column}

 * <https://dev.twitter.com/cards>
 * <https://developers.facebook.com/docs/opengraphprotocol/#types>
{: .-also-see}


id: html-input
git_filename: ./html-input.md
format: md
field_title: Input tag
field_category: HTML
field_updated: 2017-10-30
field_updated___timezone: UTC
data:
{"title": "Input tag", "category": "HTML", "updated": "2017-10-30", "weight": -3, "body": "### Input\n\n```html\n <input ...\n   disabled\n   required\n   checked\n```\n\n```html\n   autofocus\n```\n\n```html\n   autocomplete='off'        <!-- autocomplete -->\n   autocompletetype='cc-exp'\n   autocapitalize='off'      <!-- for mobiles -->\n   pattern='\\d*'             <!-- force numeric input in iOS -->\n```\n\n### Input types\n\n#### Text\n\n* email\n* hidden\n* **password**\n* tel\n* **text**\n* search\n{: .-four-column}\n\n#### Time\n\n* date\n* time\n{: .-four-column}\n\n#### Time (not widely supported)\n\n* month\n* week\n* datetime\n* datetime-local\n{: .-four-column}\n\n#### Etc\n\n* **file**\n* **radio**\n* **checkbox**\n{: .-four-column}\n\n#### Buttons\n\n* button\n* reset\n* submit\n* image\n{: .-four-column}\n\n#### Numeric\n\n* number\n* range\n{: .-four-column}\n\n## Examples\n\n### Dates\n\n| Type | Example |\n| --- | --- |\n| `type='date'` | <input type='date'> |\n| `type='time'` | <input type='time'> |\n\n### Datetime\n\n| Type | Example |\n| --- | --- |\n| `type='datetime'` | <input type='datetime'> |\n| `type='datetime-local'` | <input type='datetime-local'> |\n\n`datetime` and `datetime-local` fields are not widely supported.\n\n### Numbers\n\n| Type | Example |\n| --- | --- |\n| `type='number'` | <input type='number'> |\n| `type='range'` | <input type='range'> |\n\n### Text\n\n| Type | Example |\n| --- | --- |\n| `type='text'` | <input type='text'> |\n| `type='password'` | <input type='password'> |\n| `type='search'` | <input type='search'> |\n| `type='tel'` | <input type='tel'> |\n\n## Also see\n\n * <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input>"}

field_body:
### Input

```html
 <input ...
   disabled
   required
   checked
```

```html
   autofocus
```

```html
   autocomplete='off'        <!-- autocomplete -->
   autocompletetype='cc-exp'
   autocapitalize='off'      <!-- for mobiles -->
   pattern='\d*'             <!-- force numeric input in iOS -->
```

### Input types

#### Text

* email
* hidden
* **password**
* tel
* **text**
* search
{: .-four-column}

#### Time

* date
* time
{: .-four-column}

#### Time (not widely supported)

* month
* week
* datetime
* datetime-local
{: .-four-column}

#### Etc

* **file**
* **radio**
* **checkbox**
{: .-four-column}

#### Buttons

* button
* reset
* submit
* image
{: .-four-column}

#### Numeric

* number
* range
{: .-four-column}

## Examples

### Dates

| Type | Example |
| --- | --- |
| `type='date'` | <input type='date'> |
| `type='time'` | <input type='time'> |

### Datetime

| Type | Example |
| --- | --- |
| `type='datetime'` | <input type='datetime'> |
| `type='datetime-local'` | <input type='datetime-local'> |

`datetime` and `datetime-local` fields are not widely supported.

### Numbers

| Type | Example |
| --- | --- |
| `type='number'` | <input type='number'> |
| `type='range'` | <input type='range'> |

### Text

| Type | Example |
| --- | --- |
| `type='text'` | <input type='text'> |
| `type='password'` | <input type='password'> |
| `type='search'` | <input type='search'> |
| `type='tel'` | <input type='tel'> |

## Also see

 * <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input>


id: html-email
git_filename: ./html-email.md
format: md
field_title: HTML emails
field_category: HTML
field_updated: 2017-08-30
field_updated___timezone: UTC
data:
{"title": "HTML emails", "category": "HTML", "updated": "2017-08-30", "body": "### Properties to avoid\n\n| Property             | Where                   |\n| ---                  | ---                     |\n| `position`           | (Outlook, Gmail, Yahoo) |\n| `display`            | (Outlook, Gmail)        |\n| `float`              | (Outlook)               |\n| ---                  | ---                     |\n| `height`             | (Outlook)               |\n| `width` _in p/div_   | (Outlook)               |\n| `padding` _in p/div_ | (Outlook)               |\n| `background`         | (Outlook, Gmail)        |\n| `min-width`          | (Outlook)               |\n| `max-width`          | (Outlook)               |\n| ---                  | ---                     |\n| `opacity`            | (Outlook, Gmail, Yahoo) |\n| `box-shadow`         | (Outlook, Gmail, Yahoo) |\n| ---                  | ---                     |\n| `rgba()`             | (Outlook)               |\n| `data-uri`           | (all webmail)           |\n\n### Selectors to avoid\n\n| `E[attr]`                  | (Outlook, Gmail)        |\n| `E:nth-child(n)`           | (Outlook, Gmail)        |\n| `::before` _and_ `::after` | (Outlook, Yahoo, Gmail) |\n| `E F`                      | (Gmail)                 |\n| `E + F`, `E > F` _etc_     | (Outlook, Gmail)        |\n\nInline your CSS as much as possible.\n\n### Basic layout\n\n```html\n<table cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\">\n  <tr>\n    <td width=\"auto\"></td>\n    <td width=\"600\" background=\"#ffffff\">\n      \u00b7\u00b7\u00b7\n    </td>\n    <td width=\"auto\"></td>\n  </tr>\n</table>\n```\n\n### Responsive\n\n```html\n<style>\n@media only screen and (max-device-width: 480px)\n</style>\n```\n\n`<style>` is supported in the head and body by everything except Gmail. Only use them for responsive styles.\n\n## References\n{: .-one-column}\n\n- [CSS support matrix](https://www.campaignmonitor.com/css/) _campaignmonitor.com_"}

field_body:
### Properties to avoid

| Property             | Where                   |
| ---                  | ---                     |
| `position`           | (Outlook, Gmail, Yahoo) |
| `display`            | (Outlook, Gmail)        |
| `float`              | (Outlook)               |
| ---                  | ---                     |
| `height`             | (Outlook)               |
| `width` _in p/div_   | (Outlook)               |
| `padding` _in p/div_ | (Outlook)               |
| `background`         | (Outlook, Gmail)        |
| `min-width`          | (Outlook)               |
| `max-width`          | (Outlook)               |
| ---                  | ---                     |
| `opacity`            | (Outlook, Gmail, Yahoo) |
| `box-shadow`         | (Outlook, Gmail, Yahoo) |
| ---                  | ---                     |
| `rgba()`             | (Outlook)               |
| `data-uri`           | (all webmail)           |

### Selectors to avoid

| `E[attr]`                  | (Outlook, Gmail)        |
| `E:nth-child(n)`           | (Outlook, Gmail)        |
| `::before` _and_ `::after` | (Outlook, Yahoo, Gmail) |
| `E F`                      | (Gmail)                 |
| `E + F`, `E > F` _etc_     | (Outlook, Gmail)        |

Inline your CSS as much as possible.

### Basic layout

```html
<table cellpadding="0" cellspacing="0" role="presentation">
  <tr>
    <td width="auto"></td>
    <td width="600" background="#ffffff">
      ···
    </td>
    <td width="auto"></td>
  </tr>
</table>
```

### Responsive

```html
<style>
@media only screen and (max-device-width: 480px)
</style>
```

`<style>` is supported in the head and body by everything except Gmail. Only use them for responsive styles.

## References
{: .-one-column}

- [CSS support matrix](https://www.campaignmonitor.com/css/) _campaignmonitor.com_


id: homebrew
git_filename: ./homebrew.md
format: md
field_title: Homebrew
field_category: CLI
data:
{"title": "Homebrew", "weight": -3, "category": "CLI", "body": "### Commands\n\n| Command                    | Description                 |\n| ---                        | ---                         |\n| `brew install git`         | Install a package           |\n| `brew uninstall git`       | Remove/Uninstall a package  |\n| `brew upgrade git`         | Upgrade a package           |\n| ---                        | ---                         |\n| `brew unlink git`          | Unlink                      |\n| `brew link git`            | Link                        |\n| `brew switch git 2.5.0`    | Change versions             |\n| ---                        | ---                         |\n| `brew list --versions git` | See what versions you have  |\n\n### More package commands\n\n| Command                    | Description                 |\n| ---                        | ---                         |\n| `brew info git`            | List versions, caveats, etc |\n| `brew cleanup git`         | Remove old versions         |\n| `brew edit git`            | Edit this formula           |\n| `brew cat git`             | Print this formula          |\n| `brew home git`            | Open homepage               |\n| `brew search git`          | Search for formulas         |\n\n### Global commands\n\n| Command         | Description              |\n| ---             | ---                      |\n| `brew update`   | Update brew and cask     |\n| `brew upgrade`  | Upgrade all packages     |\n| `brew list`     | List installed           |\n| `brew outdated` | What's due for upgrades? |\n| `brew doctor`   | Diagnose brew issues     |\n\n### Brew Cask commands\n\n| Command                       | Description                           |\n| ---                           | ---                                   |\n| `brew install --cask firefox` | Install the Firefox browser           |\n| `brew list --cask`            | List installed applications           |\n\nCask commands are used for interacting with graphical applications.\n\n## Also see\n{: .-one-column}\n\n* [Homebrew homepage](https://brew.sh/) _brew.sh_\n* [Homebrew docs](https://docs.brew.sh) _docs.brew.sh_\n{: .-also-see}"}

field_body:
### Commands

| Command                    | Description                 |
| ---                        | ---                         |
| `brew install git`         | Install a package           |
| `brew uninstall git`       | Remove/Uninstall a package  |
| `brew upgrade git`         | Upgrade a package           |
| ---                        | ---                         |
| `brew unlink git`          | Unlink                      |
| `brew link git`            | Link                        |
| `brew switch git 2.5.0`    | Change versions             |
| ---                        | ---                         |
| `brew list --versions git` | See what versions you have  |

### More package commands

| Command                    | Description                 |
| ---                        | ---                         |
| `brew info git`            | List versions, caveats, etc |
| `brew cleanup git`         | Remove old versions         |
| `brew edit git`            | Edit this formula           |
| `brew cat git`             | Print this formula          |
| `brew home git`            | Open homepage               |
| `brew search git`          | Search for formulas         |

### Global commands

| Command         | Description              |
| ---             | ---                      |
| `brew update`   | Update brew and cask     |
| `brew upgrade`  | Upgrade all packages     |
| `brew list`     | List installed           |
| `brew outdated` | What's due for upgrades? |
| `brew doctor`   | Diagnose brew issues     |

### Brew Cask commands

| Command                       | Description                           |
| ---                           | ---                                   |
| `brew install --cask firefox` | Install the Firefox browser           |
| `brew list --cask`            | List installed applications           |

Cask commands are used for interacting with graphical applications.

## Also see
{: .-one-column}

* [Homebrew homepage](https://brew.sh/) _brew.sh_
* [Homebrew docs](https://docs.brew.sh) _docs.brew.sh_
{: .-also-see}


id: hledger
git_filename: ./hledger.md
format: md
field_title: Hledger
field_category: Ledger
data:
{"title": "Hledger", "category": "Ledger", "body": "### About\n{: .-intro}\n\n- <https://hledger.org>\n- <https://hledger.org/quickstart.html>\n\n### Reporting\n\n```\nhledger bal {query}\nhledger reg {query}\n```\n\n## Query\n\n### Queries\n\nQueries are used on all commands (`bal`, `reg`, etc). [(docs)](http://hledger.org/manual.html#queries)\n\n```\nAssets           # An account (regex)\nacct:Assets      # same\n^Assets          # Starting with Assets (eg, not 'Expenses:Assets')\n\nacctonly:A       # no subaccounts\n\namt:2000         # amount (in absolute value)\namt:<200         # amount comparison (in absolute value)\namt:<+200        # amount comparison\n                 # also: <=, >, >=\n\ndesc:REGEX      # description\ncode:REGEX      # transaction code (check number?)\ntag:REGEX\ncur:'\\$'\n\nreal:            # real posts\nreal:0           # virtual posts\n\ndepth:N          # --depth 2\nnot:...          # eg, not:status:!\n```\n\n### Filter by status/type\n\n```\nreal:1           # -R, --real, no virtuals\nstatus:!         #     --pending\nstatus:*         # -C, --cleared\nstatus:          #     --uncleared\n```\n\n### Periods\nFor dates and intervals (see above).\n\n```\ndate:2015/01/01\ndate:2015/01/01-    # -b, --begin\ndate:-2015/01/01    # -e, --end\ndate2:PERIODEXPR\n```\n\n```\n-p, --period=...\n  -p \"2009/01/01\"\n  -p \"2009/01/01 to 2009/12/31\"\n  -p \"2009/01/01to2009/12/31\"      # spaces optional\n  -p \"1/1 to 12/31\"\n  -p \"to 2009\"\n  -p \"weekly\"                      # -W, --weekly\n  -p \"weekly 2009/01/01 to 2009/12/31\"\n```\n\n### Intervals\nUsed on all commands (`bal`, `reg`, etc). Displays in multi-column mode. In `ledger-cli`, only `reg` is supported. Can also specified via `-p` (period).\n\n```\n-D, --daily\n-W, --weekly\n-M, --monthly\n-Q, --quarterly\n-Y, --yearly\n```\n\n### Smart dates\nUsed for `--period`, `--begin` and `--end` (`-p` `-b` `-e`).\n\n```\n-p 2015/01/01\n-p 2015/01\n-p 2015\n-p january\n-p jan\n-p 05/25\n```\n\n```\n-b today\n-b yesterday\n-e tomorrow\n```\n\n```\n-p this week\n-p last month\n-p this year\n```\n\n## Display formats\n\n```\n    --tree          # only in bal\n    --flat\n\n    --depth 2       # collapse those under this depth\n    --drop 1        # drop top-level accounts\n-B, --cost          # convert to default currency\n-E, --empty         # don't strip out $0 accounts\n    --date2         # use date2 when available\n```\n\n## Multi-column mode\nWhen used with intervals (like `--weekly`):\n\n```\n-T, --row-total\n-N, --no-total\n```\n\nAlso: (only in `bal`)\n\n```\n    --cumulative    # show ending balance per period\n-I, --historical    # like --cumulative but only for --begin\n-A, --average\n```\n\n\n## Accounts\n\n```\nhledger accounts [--tree]\n```\n\n## Other commands\n\n```\nhledger balancesheet       # bs\nhledger incomestatement    # is\nhledger cashflow           # cf\nhledger print\nhledger activity\nhledger stats\n```\n\n## Examples\n\n```\n# Current balance\n  hledger bal Assets\n  hledger balancesheet\n\n  hledger balancesheet Assets [--cleared --cost --empty -e tomorrow]\n  # ...discard future stuff; convert foreign currencies\n\n# Monthly changes in assets\n  hledger bal Assets Liabilities --monthly --tree --historical [--cleared --cost --empty -e tomorrow]\n\n# Weekly expenses\n  hledger bal Expenses --weekly --average --tree -b 'last month' [--cleared --cost --empty -e tomorrow]\n```\n\n## See also\n\n* <http://hledger.org/manual.html>\n* <http://ledger-cli.org/3.0/doc/ledger3.html>"}

field_body:
### About
{: .-intro}

- <https://hledger.org>
- <https://hledger.org/quickstart.html>

### Reporting

```
hledger bal {query}
hledger reg {query}
```

## Query

### Queries

Queries are used on all commands (`bal`, `reg`, etc). [(docs)](http://hledger.org/manual.html#queries)

```
Assets           # An account (regex)
acct:Assets      # same
^Assets          # Starting with Assets (eg, not 'Expenses:Assets')

acctonly:A       # no subaccounts

amt:2000         # amount (in absolute value)
amt:<200         # amount comparison (in absolute value)
amt:<+200        # amount comparison
                 # also: <=, >, >=

desc:REGEX      # description
code:REGEX      # transaction code (check number?)
tag:REGEX
cur:'\$'

real:            # real posts
real:0           # virtual posts

depth:N          # --depth 2
not:...          # eg, not:status:!
```

### Filter by status/type

```
real:1           # -R, --real, no virtuals
status:!         #     --pending
status:*         # -C, --cleared
status:          #     --uncleared
```

### Periods
For dates and intervals (see above).

```
date:2015/01/01
date:2015/01/01-    # -b, --begin
date:-2015/01/01    # -e, --end
date2:PERIODEXPR
```

```
-p, --period=...
  -p "2009/01/01"
  -p "2009/01/01 to 2009/12/31"
  -p "2009/01/01to2009/12/31"      # spaces optional
  -p "1/1 to 12/31"
  -p "to 2009"
  -p "weekly"                      # -W, --weekly
  -p "weekly 2009/01/01 to 2009/12/31"
```

### Intervals
Used on all commands (`bal`, `reg`, etc). Displays in multi-column mode. In `ledger-cli`, only `reg` is supported. Can also specified via `-p` (period).

```
-D, --daily
-W, --weekly
-M, --monthly
-Q, --quarterly
-Y, --yearly
```

### Smart dates
Used for `--period`, `--begin` and `--end` (`-p` `-b` `-e`).

```
-p 2015/01/01
-p 2015/01
-p 2015
-p january
-p jan
-p 05/25
```

```
-b today
-b yesterday
-e tomorrow
```

```
-p this week
-p last month
-p this year
```

## Display formats

```
    --tree          # only in bal
    --flat

    --depth 2       # collapse those under this depth
    --drop 1        # drop top-level accounts
-B, --cost          # convert to default currency
-E, --empty         # don't strip out $0 accounts
    --date2         # use date2 when available
```

## Multi-column mode
When used with intervals (like `--weekly`):

```
-T, --row-total
-N, --no-total
```

Also: (only in `bal`)

```
    --cumulative    # show ending balance per period
-I, --historical    # like --cumulative but only for --begin
-A, --average
```


## Accounts

```
hledger accounts [--tree]
```

## Other commands

```
hledger balancesheet       # bs
hledger incomestatement    # is
hledger cashflow           # cf
hledger print
hledger activity
hledger stats
```

## Examples

```
# Current balance
  hledger bal Assets
  hledger balancesheet

  hledger balancesheet Assets [--cleared --cost --empty -e tomorrow]
  # ...discard future stuff; convert foreign currencies

# Monthly changes in assets
  hledger bal Assets Liabilities --monthly --tree --historical [--cleared --cost --empty -e tomorrow]

# Weekly expenses
  hledger bal Expenses --weekly --average --tree -b 'last month' [--cleared --cost --empty -e tomorrow]
```

## See also

* <http://hledger.org/manual.html>
* <http://ledger-cli.org/3.0/doc/ledger3.html>


id: heroku
git_filename: ./heroku.md
format: md
field_title: Heroku
field_category: Devops
field_updated: 2017-10-11
field_updated___timezone: UTC
data:
{"title": "Heroku", "category": "Devops", "updated": "2017-10-11", "description": "A one-page reference to common Heroku-CLI commands.\n", "intro": "[Heroku](https://heroku.com/) is a web hosting platform supporting many languages, and this guide is a reference to Heroku's [command-line interface](https://heroku.com/).\n", "body": "### `create` - Create an app\n\n```bash\nheroku create sushi\n```\n\n```bash\ngit push heroku master\n```\n\nThis will create an application named `sushi`. ([docs](https://devcenter.heroku.com/articles/creating-apps))\n\n### `container` - Docker containers\n\n```bash\nheroku stack:set container -app <app>\nheroku container:push web -app <app>\nheroku container:release web -app <app>\n```\n\nContainers can be deployed using the Heroku Container Registry. ([docs](https://devcenter.heroku.com/articles/container-registry-and-runtime))\n\n### `access` - Collaboration\n\n#### Manage collaborators\n\n```bash\nheroku access                     # List\nheroku access:add me@xy.com\nheroku access:remove me@xy.com\n```\n\n#### Transfer to another owner\n\n```bash\nheroku apps:transfer new@owner.com\n```\n\n### `logs` - Show logs\n\n```bash\nheroku logs\nheroku logs -t      # --tail (stream)\nheroku logs -s app  # --source (only on app logs)\n```\n\n### `releases`\n\n```bash\nheroku releases\nheroku releases:info v25\nheroku rollback\n```\n\n### `pg` - PostgreSQL\n\n#### Start a database\n\n```bash\nheroku addons:add heroku-postgresql\n```\n\n#### Enable backups\n\n```bash\nheroku addons:add pgbackups:auto-month\n```\n\nSee: [Heroku PostgreSQL](https://devcenter.heroku.com/articles/heroku-postgresql) _(devcenter.heroku.com)_\n\n### `config` - Environment var configuration\n\n#### Listing\n\n```bash\nheroku config        # List\nheroku config -s     # List in shell format\n```\n\n#### Getting\n\n```bash\nheroku config:get KEY\n```\n\n#### Setting\n\n```bash\nheroku config:set KEY=val\nheroku config:set KEY1=val KEY2=val ...\n```\n\n```bash\nheroku config:unset KEY1\n```\n\n### `apps` - Applications\n\n```bash\nheroku apps                  # list\nheroku apps:create [NAME]\nheroku apps:destroy --app APP\nheroku apps:info\nheroku apps:open             # open in browser\nheroku apps:rename NEWNAME\n```\n\n### `maintenance`\n\n```bash\nheroku maintenance:on\n```\n\n```bash\nheroku maintenance:off\n```\n\n## Processes\n\n\n### `ps` - Managing processes\n\n```bash\nheroku ps              # list\nheroku ps:scale web=1  # spawn more dynos\n```\n\n### `restart`\n\n```bash\nheroku restart\n```\n\n### `run` - Running tasks\n\n```bash\nheroku run bash\nheroku run console                  # Rails console\nheroku run rake assets:precompile\n```\n\n## Domains\n\n### `domains` - Custom domains\n\n#### Add both!\n\n```bash\nheroku domains:add example.com\nheroku domains:add www.example.com\n```\n\n#### Removing\n\n```bash\nheroku domains:clear\nheroku domains:remove example.com\n```\n\nSee: [Custom domains](https://devcenter.heroku.com/articles/custom-domains) _(devcenter.heroku.com)_\n\n### Wildcard domains\n\n```bash\nheroku addons:add wildcard_domains\n```\n\n```bash\n*.yourdomain.com => heroku.com\n```\n\n## Other tricks\n\n### htpasswd (for PHP apps)\n\nCreate an `.htaccess` file in the webroot:\n\n```bash\nAuthUserFile /app/www/.htpasswd\nAuthType Basic\nAuthName \"Restricted Access\"\nRequire valid-user\n```\n\nCreate a `.htpasswd` file:\n\n```bash\n$ htpasswd -c .htpasswd [username]\n```\n\nSee: [gist.github.com](https://gist.github.com/3316425)\n\n## References\n\n * <https://addons.heroku.com/>\n * <https://devcenter.heroku.com/>"}

field_intro:
[Heroku](https://heroku.com/) is a web hosting platform supporting many languages, and this guide is a reference to Heroku's [command-line interface](https://heroku.com/).

field_body:
### `create` - Create an app

```bash
heroku create sushi
```

```bash
git push heroku master
```

This will create an application named `sushi`. ([docs](https://devcenter.heroku.com/articles/creating-apps))

### `container` - Docker containers

```bash
heroku stack:set container -app <app>
heroku container:push web -app <app>
heroku container:release web -app <app>
```

Containers can be deployed using the Heroku Container Registry. ([docs](https://devcenter.heroku.com/articles/container-registry-and-runtime))

### `access` - Collaboration

#### Manage collaborators

```bash
heroku access                     # List
heroku access:add me@xy.com
heroku access:remove me@xy.com
```

#### Transfer to another owner

```bash
heroku apps:transfer new@owner.com
```

### `logs` - Show logs

```bash
heroku logs
heroku logs -t      # --tail (stream)
heroku logs -s app  # --source (only on app logs)
```

### `releases`

```bash
heroku releases
heroku releases:info v25
heroku rollback
```

### `pg` - PostgreSQL

#### Start a database

```bash
heroku addons:add heroku-postgresql
```

#### Enable backups

```bash
heroku addons:add pgbackups:auto-month
```

See: [Heroku PostgreSQL](https://devcenter.heroku.com/articles/heroku-postgresql) _(devcenter.heroku.com)_

### `config` - Environment var configuration

#### Listing

```bash
heroku config        # List
heroku config -s     # List in shell format
```

#### Getting

```bash
heroku config:get KEY
```

#### Setting

```bash
heroku config:set KEY=val
heroku config:set KEY1=val KEY2=val ...
```

```bash
heroku config:unset KEY1
```

### `apps` - Applications

```bash
heroku apps                  # list
heroku apps:create [NAME]
heroku apps:destroy --app APP
heroku apps:info
heroku apps:open             # open in browser
heroku apps:rename NEWNAME
```

### `maintenance`

```bash
heroku maintenance:on
```

```bash
heroku maintenance:off
```

## Processes


### `ps` - Managing processes

```bash
heroku ps              # list
heroku ps:scale web=1  # spawn more dynos
```

### `restart`

```bash
heroku restart
```

### `run` - Running tasks

```bash
heroku run bash
heroku run console                  # Rails console
heroku run rake assets:precompile
```

## Domains

### `domains` - Custom domains

#### Add both!

```bash
heroku domains:add example.com
heroku domains:add www.example.com
```

#### Removing

```bash
heroku domains:clear
heroku domains:remove example.com
```

See: [Custom domains](https://devcenter.heroku.com/articles/custom-domains) _(devcenter.heroku.com)_

### Wildcard domains

```bash
heroku addons:add wildcard_domains
```

```bash
*.yourdomain.com => heroku.com
```

## Other tricks

### htpasswd (for PHP apps)

Create an `.htaccess` file in the webroot:

```bash
AuthUserFile /app/www/.htpasswd
AuthType Basic
AuthName "Restricted Access"
Require valid-user
```

Create a `.htpasswd` file:

```bash
$ htpasswd -c .htpasswd [username]
```

See: [gist.github.com](https://gist.github.com/3316425)

## References

 * <https://addons.heroku.com/>
 * <https://devcenter.heroku.com/>


id: harvey.js
git_filename: ./harvey.js.md
format: md
field_title: Harvey.js
field_category: JavaScript libraries
field_intro: [Harvey.js](http://harvesthq.github.io/harvey/) helps you build responsive interfaces.
data:
{"title": "Harvey.js", "category": "JavaScript libraries", "intro": "[Harvey.js](http://harvesthq.github.io/harvey/) helps you build responsive interfaces.\n", "body": "### Usage\n\n```js\nHarvey.attach('(min-width: 600px)', {\n  setup: function () {\n    // Called on first enter\n  },\n  on: function () {\n    // Called on every enter\n  },\n  off: function () {\n    // Called on every exit\n  }\n})\n```\n\n### Deprecated\n\nHarvey.js hasn't been updated in a while, as of time of writing. Consider [enquire.js](https://github.com/WickyNilliams/enquire.js) instead.\n\n### References\n\n* <http://harvesthq.github.io/harvey>"}

field_body:
### Usage

```js
Harvey.attach('(min-width: 600px)', {
  setup: function () {
    // Called on first enter
  },
  on: function () {
    // Called on every enter
  },
  off: function () {
    // Called on every exit
  }
})
```

### Deprecated

Harvey.js hasn't been updated in a while, as of time of writing. Consider [enquire.js](https://github.com/WickyNilliams/enquire.js) instead.

### References

* <http://harvesthq.github.io/harvey>


id: handlebars.js
git_filename: ./handlebars.js.md
format: md
field_title: Handlebars.js
field_category: JavaScript libraries
data:
{"title": "Handlebars.js", "category": "JavaScript libraries", "weight": -1, "body": "{% raw %}\n\n### Helpers\n\n```js\nHandlebars.registerHelper('link_to', function() {\n  return \"<a href='\" + this.url + \"'>\" + this.body + \"</a>\";\n})\n```\n\n```js\nvar context = { posts: [{url: \"/hello-world\", body: \"Hello World!\"}] }\nvar source = \"<ul>{{#posts}}<li>{{{link_to}}}</li>{{/posts}}</ul>\"\n```\n\n```js\nvar template = Handlebars.compile(source)\ntemplate(context)\n```\n\nWould render:\n\n```html\n<ul>\n  <li><a href='/hello-world'>Hello World!</a></li>\n</ul>\n```\n\n{% endraw %}"}

field_body:
{% raw %}

### Helpers

```js
Handlebars.registerHelper('link_to', function() {
  return "<a href='" + this.url + "'>" + this.body + "</a>";
})
```

```js
var context = { posts: [{url: "/hello-world", body: "Hello World!"}] }
var source = "<ul>{{#posts}}<li>{{{link_to}}}</li>{{/posts}}</ul>"
```

```js
var template = Handlebars.compile(source)
template(context)
```

Would render:

```html
<ul>
  <li><a href='/hello-world'>Hello World!</a></li>
</ul>
```

{% endraw %}


id: haml
git_filename: ./haml.md
format: md
field_title: Haml
field_category: Markup
field_prism_languages: haml
data:
{"title": "Haml", "category": "Markup", "prism_languages": ["haml"], "body": "### Doctype\n\n```haml\n!!! 5\n```\n\n### Tags\n\n```haml\n%html\n  %head\n    %title\n  %body\n    %h1 Hello World\n    %br/\n```\n\n### Classes and ID's\n\n```haml\n%p.class-example\n.no-tag-defaults-to-div\n%div#butItCanBeIncluded\n```\n\n### Inline Attributes\n\nEither hash syntax works\n\n```haml\n%meta{ name: \"viewport\", content: \"width=device-width, initial-scale=1.0\" }\n%input{ :type => \"text\", :required => true }\n```\n\n### Ruby\n\n```haml\n-# This is a comment\n-# Anything starting with a hyphen signals to Haml that Ruby is coming\n- @arr = [1, 2, 3]\n- @str = \"test\"\n-# Equal signals output\n= render partial: \"shared/header\"\n= yield\n= link_to page_url\n```"}

field_body:
### Doctype

```haml
!!! 5
```

### Tags

```haml
%html
  %head
    %title
  %body
    %h1 Hello World
    %br/
```

### Classes and ID's

```haml
%p.class-example
.no-tag-defaults-to-div
%div#butItCanBeIncluded
```

### Inline Attributes

Either hash syntax works

```haml
%meta{ name: "viewport", content: "width=device-width, initial-scale=1.0" }
%input{ :type => "text", :required => true }
```

### Ruby

```haml
-# This is a comment
-# Anything starting with a hyphen signals to Haml that Ruby is coming
- @arr = [1, 2, 3]
- @str = "test"
-# Equal signals output
= render partial: "shared/header"
= yield
= link_to page_url
```


id: gulp
git_filename: ./gulp.md
format: md
field_title: Gulp
field_category: JavaScript libraries
field_tags: Archived
data:
{"title": "Gulp", "category": "JavaScript libraries", "tags": ["Archived"], "archived": "The information on this sheet may possibly be outdated.", "body": "### Available plugins\n\n * gulp-ruby-sass\n * gulp-autoprefixer\n * gulp-minify-css\n * gulp-jshint\n * gulp-concat\n * gulp-uglify\n * gulp-imagemin\n * gulp-livereload (requires tiny-lr)\n * gulp-clean\n * gulp-cache\n * gulp-notify\n\n * gulp-header (headers in files)\n * gulp-mocha\n * gulp-stylus\n * gulp-compass\n * gulp-nodemon\n * gulp-size (displays size)\n\n### Example\n\n\n    // gulpfile.js\n    // Load plugins\n    var gulp = require('gulp'),\n        sass = require('gulp-ruby-sass'),\n        autoprefixer = require('gulp-autoprefixer'),\n        minifycss = require('gulp-minify-css'),\n        jshint = require('gulp-jshint'),\n        uglify = require('gulp-uglify'),\n        imagemin = require('gulp-imagemin'),\n        rename = require('gulp-rename'),\n        clean = require('gulp-clean'),\n        concat = require('gulp-concat'),\n        notify = require('gulp-notify'),\n        cache = require('gulp-cache'),\n        livereload = require('gulp-livereload'),\n        lr = require('tiny-lr'),\n        server = lr();\n\n    // Styles\n    gulp.task('styles', function() {\n      return gulp.src('src/styles/main.scss')\n        .pipe(sass({ style: 'expanded', }))\n        .pipe(autoprefixer('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4'))\n        .pipe(gulp.dest('dist/styles'))\n        .pipe(rename({ suffix: '.min' }))\n        .pipe(minifycss())\n        .pipe(livereload(server))\n        .pipe(gulp.dest('dist/styles'))\n        .pipe(notify({ message: 'Styles task complete' }));\n    });\n\n    // Scripts\n    gulp.task('scripts', function() {\n      return gulp.src('src/scripts/**/*.js')\n        .pipe(jshint('.jshintrc'))\n        .pipe(jshint.reporter('default'))\n        .pipe(concat('main.js'))\n        .pipe(gulp.dest('dist/scripts'))\n        .pipe(rename({ suffix: '.min' }))\n        .pipe(uglify())\n        .pipe(livereload(server))\n        .pipe(gulp.dest('dist/scripts'))\n        .pipe(notify({ message: 'Scripts task complete' }));\n    });\n\n    // Images\n    gulp.task('images', function() {\n      return gulp.src('src/images/**/*')\n        .pipe(cache(imagemin({ optimizationLevel: 3, progressive: true, interlaced: true })))\n        .pipe(livereload(server))\n        .pipe(gulp.dest('dist/images'))\n        .pipe(notify({ message: 'Images task complete' }));\n    });\n\n    // Clean\n    gulp.task('clean', function() {\n      return gulp.src(['dist/styles', 'dist/scripts', 'dist/images'], {read: false})\n        .pipe(clean());\n    });\n\n    // Default task\n    gulp.task('default', ['clean'], function() {\n        gulp.start('styles', 'scripts', 'images');\n    });\n\n    // Watch\n    gulp.task('watch', function() {\n\n      // Listen on port 35729\n      server.listen(35729, function (err) {\n        if (err) {\n          return console.log(err)\n        };\n\n        // Watch .scss files\n        gulp.watch('src/styles/**/*.scss', ['styles']);\n\n        // Watch .js files\n        gulp.watch('src/scripts/**/*.js', ['scripts']);\n\n        // Watch image files\n        gulp.watch('src/images/**/*', ['images']);\n\n      });\n\n    });\n\n### References\n\nhttps://github.com/gulpjs/gulp/blob/master/docs/getting-started.md#getting-started\n\n### Livereload\n\n    var lr = require('tiny-lr')();\n\n    function notify (lr, root) {\n      return function (event) {\n        var fname = require('path').relative(root, event.path);\n        lr.changed({ body: { files: [ fname ] }});\n      };\n    }\n\n    gulp.task('livereload', function () {\n      lr.listen(35729)\n      gulp.watch('public/**/*', notify(lr, __dirname+'/public'));\n    });\n\n    // Express\n    app.use(require('connect-livereload')())\n    <!-- livereload --><script>document.write('<script src=\"'+(location.protocol||'http:')+'//'+(location.hostname||'localhost')+':35729/livereload.js?snipver=1\"><\\/scr'+'ipt>')</script>"}

field_body:
### Available plugins

 * gulp-ruby-sass
 * gulp-autoprefixer
 * gulp-minify-css
 * gulp-jshint
 * gulp-concat
 * gulp-uglify
 * gulp-imagemin
 * gulp-livereload (requires tiny-lr)
 * gulp-clean
 * gulp-cache
 * gulp-notify

 * gulp-header (headers in files)
 * gulp-mocha
 * gulp-stylus
 * gulp-compass
 * gulp-nodemon
 * gulp-size (displays size)

### Example


    // gulpfile.js
    // Load plugins
    var gulp = require('gulp'),
        sass = require('gulp-ruby-sass'),
        autoprefixer = require('gulp-autoprefixer'),
        minifycss = require('gulp-minify-css'),
        jshint = require('gulp-jshint'),
        uglify = require('gulp-uglify'),
        imagemin = require('gulp-imagemin'),
        rename = require('gulp-rename'),
        clean = require('gulp-clean'),
        concat = require('gulp-concat'),
        notify = require('gulp-notify'),
        cache = require('gulp-cache'),
        livereload = require('gulp-livereload'),
        lr = require('tiny-lr'),
        server = lr();

    // Styles
    gulp.task('styles', function() {
      return gulp.src('src/styles/main.scss')
        .pipe(sass({ style: 'expanded', }))
        .pipe(autoprefixer('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4'))
        .pipe(gulp.dest('dist/styles'))
        .pipe(rename({ suffix: '.min' }))
        .pipe(minifycss())
        .pipe(livereload(server))
        .pipe(gulp.dest('dist/styles'))
        .pipe(notify({ message: 'Styles task complete' }));
    });

    // Scripts
    gulp.task('scripts', function() {
      return gulp.src('src/scripts/**/*.js')
        .pipe(jshint('.jshintrc'))
        .pipe(jshint.reporter('default'))
        .pipe(concat('main.js'))
        .pipe(gulp.dest('dist/scripts'))
        .pipe(rename({ suffix: '.min' }))
        .pipe(uglify())
        .pipe(livereload(server))
        .pipe(gulp.dest('dist/scripts'))
        .pipe(notify({ message: 'Scripts task complete' }));
    });

    // Images
    gulp.task('images', function() {
      return gulp.src('src/images/**/*')
        .pipe(cache(imagemin({ optimizationLevel: 3, progressive: true, interlaced: true })))
        .pipe(livereload(server))
        .pipe(gulp.dest('dist/images'))
        .pipe(notify({ message: 'Images task complete' }));
    });

    // Clean
    gulp.task('clean', function() {
      return gulp.src(['dist/styles', 'dist/scripts', 'dist/images'], {read: false})
        .pipe(clean());
    });

    // Default task
    gulp.task('default', ['clean'], function() {
        gulp.start('styles', 'scripts', 'images');
    });

    // Watch
    gulp.task('watch', function() {

      // Listen on port 35729
      server.listen(35729, function (err) {
        if (err) {
          return console.log(err)
        };

        // Watch .scss files
        gulp.watch('src/styles/**/*.scss', ['styles']);

        // Watch .js files
        gulp.watch('src/scripts/**/*.js', ['scripts']);

        // Watch image files
        gulp.watch('src/images/**/*', ['images']);

      });

    });

### References

https://github.com/gulpjs/gulp/blob/master/docs/getting-started.md#getting-started

### Livereload

    var lr = require('tiny-lr')();

    function notify (lr, root) {
      return function (event) {
        var fname = require('path').relative(root, event.path);
        lr.changed({ body: { files: [ fname ] }});
      };
    }

    gulp.task('livereload', function () {
      lr.listen(35729)
      gulp.watch('public/**/*', notify(lr, __dirname+'/public'));
    });

    // Express
    app.use(require('connect-livereload')())
    <!-- livereload --><script>document.write('<script src="'+(location.protocol||'http:')+'//'+(location.hostname||'localhost')+':35729/livereload.js?snipver=1"><\/scr'+'ipt>')</script>


id: grep
git_filename: ./grep.md
format: md
field_title: GNU grep
field_category: CLI
field_updated: 2021-08-23
field_updated___timezone: UTC
data:
{"title": "GNU grep", "category": "CLI", "updated": "2021-08-23", "body": "### Usage\n{: .-prime}\n\n```bash\ngrep <options> pattern <file...>\n```\n\n### Matching options\n\n```bash\n-e, --regexp=PATTERN\n-f, --file=FILE\n-i, --ignore-case\n-v, --invert-match\n-w, --word-regexp\n-x, --line-regexp\n```\n\n### Pattern options\n\n```bash\n-F, --fixed-strings   # list of fixed strings\n-G, --basic-regexp    # basic regular expression (default)\n-E, --extended-regexp # extended regular expression\n-P, --perl-regexp     # perl compatible regular expression\n```\n\n### Expressions\n\n#### Basic Regular Expressions (BRE)\n\nIn BRE, these characters have a special meaning unless they are escaped with a backslash:\n\n`^ $ . * [ ] \\`\n\nHowever, these characters do not have any special meaning unless they are escaped with a backslash:\n\n`? + { } | ( )`\n\t\n#### Extended Regular Expressions (ERE)\n\nERE gives all of these characters a special meaning unless they are escaped with a backslash:\n\n`^ $ . * + ? [ ] ( ) | { }`\n\n#### Perl Compatible Regular Expressions (PCRE)\n\nPCRE has even more options such as additional anchors and character classes, lookahead/lookbehind, conditional expressions, comments, and more. See the [regexp cheatsheet](/regexp).\n\n### Output Options\n\n```bash\n-c, --count           # print the count of matching lines. suppresses normal output\n    --color[=WHEN]    # applies color to the matches. WHEN is never, always, or auto\n-m, --max-count=NUM   # stop reading after max count is reached\n-o, --only-matching   # only print the matched part of a line\n-q, --quiet, --silent\n-s, --no-messages     # suppress error messages about nonexistent or unreadable files\n```\n\n### Context Options\n\n```bash\n-B NUM, --before-context=NUM  # print NUM lines before a match\n-A NUM, --after-context=NUM   # print NUM lines after a match\n-C NUM, -NUM, --context=NUM   # print NUM lines before and after a match\n```\n\n### Examples\n\n```bash\n# Case insensitive: match any line in foo.txt\n# that contains \"bar\"\ngrep -i bar foo.txt\n\n#  match any line in bar.txt that contains\n# either \"foo\" or \"oof\"\ngrep -E \"foo|oof\" bar.txt\n\n# match anything that resembles a URL in\n# foo.txt and only print out the match\ngrep -oE \"https?://((\\w+[_-]?)+\\.?)+\" foo.txt\n\n# can also be used with pipes:\n# match any line that contains \"export\" in\n# .bash_profile, pipe to another grep that\n# matches any of the first set of matches\n# containing \"PATH\"\ngrep \"export\" .bash_profile | grep \"PATH\"\n\n# follow the tail of server.log, pipe to grep\n# and print out any line that contains \"error\"\n# and include 5 lines of context\ntail -f server.log | grep -iC 5 error\n```"}

field_body:
### Usage
{: .-prime}

```bash
grep <options> pattern <file...>
```

### Matching options

```bash
-e, --regexp=PATTERN
-f, --file=FILE
-i, --ignore-case
-v, --invert-match
-w, --word-regexp
-x, --line-regexp
```

### Pattern options

```bash
-F, --fixed-strings   # list of fixed strings
-G, --basic-regexp    # basic regular expression (default)
-E, --extended-regexp # extended regular expression
-P, --perl-regexp     # perl compatible regular expression
```

### Expressions

#### Basic Regular Expressions (BRE)

In BRE, these characters have a special meaning unless they are escaped with a backslash:

`^ $ . * [ ] \`

However, these characters do not have any special meaning unless they are escaped with a backslash:

`? + { } | ( )`
	
#### Extended Regular Expressions (ERE)

ERE gives all of these characters a special meaning unless they are escaped with a backslash:

`^ $ . * + ? [ ] ( ) | { }`

#### Perl Compatible Regular Expressions (PCRE)

PCRE has even more options such as additional anchors and character classes, lookahead/lookbehind, conditional expressions, comments, and more. See the [regexp cheatsheet](/regexp).

### Output Options

```bash
-c, --count           # print the count of matching lines. suppresses normal output
    --color[=WHEN]    # applies color to the matches. WHEN is never, always, or auto
-m, --max-count=NUM   # stop reading after max count is reached
-o, --only-matching   # only print the matched part of a line
-q, --quiet, --silent
-s, --no-messages     # suppress error messages about nonexistent or unreadable files
```

### Context Options

```bash
-B NUM, --before-context=NUM  # print NUM lines before a match
-A NUM, --after-context=NUM   # print NUM lines after a match
-C NUM, -NUM, --context=NUM   # print NUM lines before and after a match
```

### Examples

```bash
# Case insensitive: match any line in foo.txt
# that contains "bar"
grep -i bar foo.txt

#  match any line in bar.txt that contains
# either "foo" or "oof"
grep -E "foo|oof" bar.txt

# match anything that resembles a URL in
# foo.txt and only print out the match
grep -oE "https?://((\w+[_-]?)+\.?)+" foo.txt

# can also be used with pipes:
# match any line that contains "export" in
# .bash_profile, pipe to another grep that
# matches any of the first set of matches
# containing "PATH"
grep "export" .bash_profile | grep "PATH"

# follow the tail of server.log, pipe to grep
# and print out any line that contains "error"
# and include 5 lines of context
tail -f server.log | grep -iC 5 error
```


id: gremlins
git_filename: ./gremlins.md
format: md
field_title: Gremlins.js
field_category: JavaScript libraries
field_updated: 2017-10-22
field_updated___timezone: UTC
data:
{"title": "Gremlins.js", "category": "JavaScript libraries", "updated": "2017-10-22", "weight": -1, "intro": "[Gremlins](https://github.com/marmelab/gremlins.js) is a JavaScript library to do \"monkey-testing\" by providing random user input (clicks, scrolls, and so on).\n", "body": "## Example\n\n### Simple example\n\n```html\n<script src='https://cdn.jsdelivr.net/npm/gremlins/dist/gremlins.js'></script>\n<script>\ngremlins.createHorde().unleash()\n</script>\n```\n\n![](https://camo.githubusercontent.com/130e101ee69d4d9b6f065df0a0404c861eb5ce18/687474703a2f2f7374617469632e6d61726d656c61622e636f6d2f746f646f2e676966?q=99)\n\n### Custom gremlins\n\n```js\ngremlins.createHorde()\n  .allGremlins()\n  .gremlin(function () {\n    document.activeElement.blur()\n  })\n```\n{: data-line=\"3,4,5\"}\n\nRuns the given function at regular intervals.\n\n### Full example\n\n```js\ngremlins.createHorde()\n  .gremlin(gremlins.species.formFiller())\n  .gremlin(gremlins.species.clicker()\n    .clickTypes(['click'])\n    .canClick(element => { \u00b7\u00b7\u00b7 })\n    .showAction((x, y) => { \u00b7\u00b7\u00b7 }))\n  .gremlin(gremlins.species.scroller())\n  .mogwai(gremlins.mogwais.alert())\n  .mogwai(gremlins.mogwais.fps())\n  .mogwai(gremlins.mogwais.gizmo().maxErrors(2))\n  .unleash()\n```\n\nBy default, all gremlins and mogwais species are added to the horde. Do it this way to customize gremlins.\n\nSee: [Specifying gremlins](https://github.com/marmelab/gremlins.js#setting-gremlins-and-mogwais-to-use-in-a-test)\n\n## Hooks\n\n### Before and after\n\n```js\ngremlins.createHorde()\n  .before(function () {\n    this.log('sync')\n    console.profile('gremlins')\n  })\n  .after(function () {\n    this.log('done')\n    console.profileEnd()\n  })\n```\n{: data-line=\"2,6\"}\n\n### Asynchronous\n\n```js\ngremlins.createHorde()\n  .before(function (done) {\n    setTimeout(() => {\n      this.log('async')\n      done()\n    }, 500)\n  })\n```\n{: data-line=\"2\"}\n\n## References\n\n- [marmelab/gremlins.js](https://github.com/marmelab/gremlins.js)"}

field_intro:
[Gremlins](https://github.com/marmelab/gremlins.js) is a JavaScript library to do "monkey-testing" by providing random user input (clicks, scrolls, and so on).

field_body:
## Example

### Simple example

```html
<script src='https://cdn.jsdelivr.net/npm/gremlins/dist/gremlins.js'></script>
<script>
gremlins.createHorde().unleash()
</script>
```

![](https://camo.githubusercontent.com/130e101ee69d4d9b6f065df0a0404c861eb5ce18/687474703a2f2f7374617469632e6d61726d656c61622e636f6d2f746f646f2e676966?q=99)

### Custom gremlins

```js
gremlins.createHorde()
  .allGremlins()
  .gremlin(function () {
    document.activeElement.blur()
  })
```
{: data-line="3,4,5"}

Runs the given function at regular intervals.

### Full example

```js
gremlins.createHorde()
  .gremlin(gremlins.species.formFiller())
  .gremlin(gremlins.species.clicker()
    .clickTypes(['click'])
    .canClick(element => { ··· })
    .showAction((x, y) => { ··· }))
  .gremlin(gremlins.species.scroller())
  .mogwai(gremlins.mogwais.alert())
  .mogwai(gremlins.mogwais.fps())
  .mogwai(gremlins.mogwais.gizmo().maxErrors(2))
  .unleash()
```

By default, all gremlins and mogwais species are added to the horde. Do it this way to customize gremlins.

See: [Specifying gremlins](https://github.com/marmelab/gremlins.js#setting-gremlins-and-mogwais-to-use-in-a-test)

## Hooks

### Before and after

```js
gremlins.createHorde()
  .before(function () {
    this.log('sync')
    console.profile('gremlins')
  })
  .after(function () {
    this.log('done')
    console.profileEnd()
  })
```
{: data-line="2,6"}

### Asynchronous

```js
gremlins.createHorde()
  .before(function (done) {
    setTimeout(() => {
      this.log('async')
      done()
    }, 500)
  })
```
{: data-line="2"}

## References

- [marmelab/gremlins.js](https://github.com/marmelab/gremlins.js)


id: graphql
git_filename: ./graphql.md
format: md
field_title: GraphQL
field_category: API
field_updated: 2019-07-07
field_updated___timezone: UTC
data:
{"title": "GraphQL", "updated": "2019-07-07", "category": "API", "body": "## Intro\n\n## Queries\n{: .-three-column}\n\n### Basic query\n\n```js\n{ status }\n```\n\n#### \u2193\n\n```js\n{ status: 'available' }\n```\n{: .-setup}\n\n### Nesting\n\n```js\n{ hero { name height } }\n```\n\n#### \u2193\n\n```js\n{ hero:\n    { name: \"Luke Skywalker\",\n      height: 1.74 } }\n```\n{: .-setup}\n\n### Lists\n\n```js\n{ friends { name } }\n```\n\n#### \u2193\n\n```js\n{ friends:\n    [ { name: \"Luke Skywalker\" },\n      { name: \"Han Solo\" },\n      { name: \"R2D2\" } ] }\n```\n{: .-setup}\n\nGraphQL queries look the same for both single items or lists of items.\n\n### Lookups\n\n```js\n{\n  hero(id: \"1000\") { id name }\n}\n```\n\n#### \u2193\n\n```js\n{ hero:\n    { id: \"1000\",\n    { name: \"Luke Skywalker\" } }\n```\n{: .-setup}\n\n### Aliases\n\n```js\n{\n  luke: hero(id: \"1000\") { name }\n  han: hero(id: \"1001\") { name }\n}\n```\n\n#### \u2193\n\n```js\n{ luke:\n    { name: \"Luke Skywalker\" },\n    han:\n    { name: \"Han Solo\" } }\n```\n{: .-setup}\n\n### Operation names and variables\n\n#### Query\n```js\nquery FindHero($id: String!) {\n  hero(id: $id) { name }\n}\n```\n\nJust to make things less ambiguous. Also, to use variables, you need an operation name.\n\n#### Variables\n\n```js\n{ id: '1000' }\n```\n\n### Mutations\n\n#### Query\n\n```js\n{ createReview($review) { id } }\n```\n\n#### Variables\n\n```js\n{ review: { stars: 5 } }\n```\n\n#### \u2193\n\n```js\n{ createReview: { id: 5291 } }\n```\n\nMutations are just fields that do something when queried.\n\n### Multiple types\n\n```js\n{\n  search(q: \"john\") {\n    id\n    ... on User { name }\n    ... on Comment { body author { name } }\n  }\n}\n```\n\nGreat for searching.\n\n\nOver HTTP\n---------\n\n#### GET\n\n```js\nfetch('http://myapi/graphql?query={ me { name } }')\n```\n\n#### POST\n\n```js\nfetch('http://myapi/graphql', {\n  body: JSON.stringify({\n    query: '...',\n    operationName: '...',\n    variables: { ... }\n  })\n})\n```\n\nSchema\n------\n{: .-three-column}\n\n### Basic schemas\n\n```js\ntype Query {\n  me: User\n  users(limit: Int): [User]\n}\n\ntype User {\n  id: ID!\n  name: String\n}\n```\n\nSee: [sogko/graphql-shorthand-notation-cheat-sheet](https://raw.githubusercontent.com/sogko/graphql-shorthand-notation-cheat-sheet/master/graphql-shorthand-notation-cheat-sheet.png)\n\n### Built in types\n\n#### Scalar types\n\n| `Int` | Integer |\n| `Float` | Float |\n| `String` | String |\n| `Boolean` | Boolean |\n| `ID` | ID |\n\n#### Type definitions\n\n| `scalar` | Scalar type |\n| `type` | Object type |\n| `interface` | Interface type |\n| `union` | Union type |\n| `enum` | Enumerable type |\n| `input` | Input object type |\n\n#### Type modifiers\n\n| `String` | Nullable string |\n| `String!` | Required string |\n| `[String]` | List of strings |\n| `[String]!` | Required list of strings |\n| `[String!]!` | Required list of required strings |\n\n### Mutations\n\n```js\ntype Mutation {\n  users(params: ListUsersInput): [User]!\n}\n```\n\n### Interfaces\n\n```js\ninterface Entity {\n  id: ID!\n}\n\ntype User implements Entity {\n  id: ID!\n  name: String\n}\n```\n\n### Enums\n\n```js\nenum DIRECTION {\n  LEFT\n  RIGHT\n}\n\ntype Root {\n  direction: DIRECTION!\n}\n```\n{: data-line=\"1,2,3,4\"}\n\n### Unions\n\n```js\ntype Artist { \u00b7\u00b7\u00b7 }\ntype Album { \u00b7\u00b7\u00b7 }\n\nunion Result = Artist | Album\n\ntype Query {\n  search(q: String): [Result]\n}\n```\n{: data-line=\"4\"}\n\nReferences\n----------\n\n- <http://graphql.org/learn/queries/>\n- <http://graphql.org/learn/serving-over-http/>"}

field_body:
## Intro

## Queries
{: .-three-column}

### Basic query

```js
{ status }
```

#### ↓

```js
{ status: 'available' }
```
{: .-setup}

### Nesting

```js
{ hero { name height } }
```

#### ↓

```js
{ hero:
    { name: "Luke Skywalker",
      height: 1.74 } }
```
{: .-setup}

### Lists

```js
{ friends { name } }
```

#### ↓

```js
{ friends:
    [ { name: "Luke Skywalker" },
      { name: "Han Solo" },
      { name: "R2D2" } ] }
```
{: .-setup}

GraphQL queries look the same for both single items or lists of items.

### Lookups

```js
{
  hero(id: "1000") { id name }
}
```

#### ↓

```js
{ hero:
    { id: "1000",
    { name: "Luke Skywalker" } }
```
{: .-setup}

### Aliases

```js
{
  luke: hero(id: "1000") { name }
  han: hero(id: "1001") { name }
}
```

#### ↓

```js
{ luke:
    { name: "Luke Skywalker" },
    han:
    { name: "Han Solo" } }
```
{: .-setup}

### Operation names and variables

#### Query
```js
query FindHero($id: String!) {
  hero(id: $id) { name }
}
```

Just to make things less ambiguous. Also, to use variables, you need an operation name.

#### Variables

```js
{ id: '1000' }
```

### Mutations

#### Query

```js
{ createReview($review) { id } }
```

#### Variables

```js
{ review: { stars: 5 } }
```

#### ↓

```js
{ createReview: { id: 5291 } }
```

Mutations are just fields that do something when queried.

### Multiple types

```js
{
  search(q: "john") {
    id
    ... on User { name }
    ... on Comment { body author { name } }
  }
}
```

Great for searching.


Over HTTP
---------

#### GET

```js
fetch('http://myapi/graphql?query={ me { name } }')
```

#### POST

```js
fetch('http://myapi/graphql', {
  body: JSON.stringify({
    query: '...',
    operationName: '...',
    variables: { ... }
  })
})
```

Schema
------
{: .-three-column}

### Basic schemas

```js
type Query {
  me: User
  users(limit: Int): [User]
}

type User {
  id: ID!
  name: String
}
```

See: [sogko/graphql-shorthand-notation-cheat-sheet](https://raw.githubusercontent.com/sogko/graphql-shorthand-notation-cheat-sheet/master/graphql-shorthand-notation-cheat-sheet.png)

### Built in types

#### Scalar types

| `Int` | Integer |
| `Float` | Float |
| `String` | String |
| `Boolean` | Boolean |
| `ID` | ID |

#### Type definitions

| `scalar` | Scalar type |
| `type` | Object type |
| `interface` | Interface type |
| `union` | Union type |
| `enum` | Enumerable type |
| `input` | Input object type |

#### Type modifiers

| `String` | Nullable string |
| `String!` | Required string |
| `[String]` | List of strings |
| `[String]!` | Required list of strings |
| `[String!]!` | Required list of required strings |

### Mutations

```js
type Mutation {
  users(params: ListUsersInput): [User]!
}
```

### Interfaces

```js
interface Entity {
  id: ID!
}

type User implements Entity {
  id: ID!
  name: String
}
```

### Enums

```js
enum DIRECTION {
  LEFT
  RIGHT
}

type Root {
  direction: DIRECTION!
}
```
{: data-line="1,2,3,4"}

### Unions

```js
type Artist { ··· }
type Album { ··· }

union Result = Artist | Album

type Query {
  search(q: String): [Result]
}
```
{: data-line="4"}

References
----------

- <http://graphql.org/learn/queries/>
- <http://graphql.org/learn/serving-over-http/>


id: google_analytics
git_filename: ./google_analytics.md
format: md
field_title: Google Analytics
field_tags: Archived
data:
{"title": "Google Analytics", "tags": ["Archived"], "archived": "This sheet describes an older version of Google Analytics (UA).", "body": "### Pageview\n\n    // Analytics.js\n    ga('create', 'UA-XXXX-Y', 'auto');\n    ga('send', 'pageview');\n\n### Track events\n\n    // ga.js\n    // [..., category, action, label, value (int), noninteraction (bool)]\n    _gaq.push(['_trackEvent', 'Videos', 'Play', 'Birthday video', true])\n    _gaq.push(['_trackEvent', 'Projects', 'Donate', 'Project name'])\n    _gaq.push(['_trackEvent', 'Accounts', 'Login'])\n\n    // Analytics.js\n    //       ,        ,  category,  action,  label,         value (int)\n    ga('send', 'event', 'button',   'click', 'nav buttons', 4);\n\n### Variables\n\n    // [..., index, name, value, scope (optional)]\n    _gaq.push(['_setCustomVar', 1, 'Logged in', 'Yes', 2]);\n\n    // Scope = 1 (visitor), 2 (session), 3 (page, default)\n\n### References\n\n- <https://developers.google.com/analytics/devguides/collection/gajs/gaTrackingCustomVariables>\n- <https://developers.google.com/analytics/devguides/collection/gajs/eventTrackerGuide>"}

field_body:
### Pageview

    // Analytics.js
    ga('create', 'UA-XXXX-Y', 'auto');
    ga('send', 'pageview');

### Track events

    // ga.js
    // [..., category, action, label, value (int), noninteraction (bool)]
    _gaq.push(['_trackEvent', 'Videos', 'Play', 'Birthday video', true])
    _gaq.push(['_trackEvent', 'Projects', 'Donate', 'Project name'])
    _gaq.push(['_trackEvent', 'Accounts', 'Login'])

    // Analytics.js
    //       ,        ,  category,  action,  label,         value (int)
    ga('send', 'event', 'button',   'click', 'nav buttons', 4);

### Variables

    // [..., index, name, value, scope (optional)]
    _gaq.push(['_setCustomVar', 1, 'Logged in', 'Yes', 2]);

    // Scope = 1 (visitor), 2 (session), 3 (page, default)

### References

- <https://developers.google.com/analytics/devguides/collection/gajs/gaTrackingCustomVariables>
- <https://developers.google.com/analytics/devguides/collection/gajs/eventTrackerGuide>


id: google-webfonts
git_filename: ./google-webfonts.md
format: md
field_title: Google Webfonts
field_intro: Short snippets on using [Google Webfonts](https://google.com/fonts) in a web page.
data:
{"title": "Google Webfonts", "intro": "Short snippets on using [Google Webfonts](https://google.com/fonts) in a web page.\n", "body": "### Link tag\n\n<!-- prettier-ignore -->\n```html\n<link href=\"http://fonts.googleapis.com/css?family=Open+Sans\" rel=\"stylesheet\" type=\"text/css\" />\n```\n\n### CSS import\n\n<!-- prettier-ignore -->\n```css\n/* One font */\n@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,700');\n\n/* Combining multiple fonts */\n@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,400italic|Montserrat:400,700'');\n```\n\nGreat for using with [Codepen.io](https://codepen.io/) or similar websites!"}

field_body:
### Link tag

<!-- prettier-ignore -->
```html
<link href="http://fonts.googleapis.com/css?family=Open+Sans" rel="stylesheet" type="text/css" />
```

### CSS import

<!-- prettier-ignore -->
```css
/* One font */
@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,700');

/* Combining multiple fonts */
@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,400italic|Montserrat:400,700'');
```

Great for using with [Codepen.io](https://codepen.io/) or similar websites!


id: goby
git_filename: ./goby.md
format: md
field_title: Goby
field_category: Ruby
field_prism_languages: ruby
field_updated: 2018-12-06
field_updated___timezone: UTC
data:
{"title": "Goby", "prism_languages": ["ruby"], "weight": -3, "updated": "2018-12-06", "category": "Ruby", "intro": "Goby's language design is based on Ruby language's, slim and shaped up. Differences in syntax between them is very small.\n", "body": "## Getting started\n\n### Hello world\n{: .-prime}\n\n#### hello.gb\n{: .-file}\n\n```ruby\nclass Greet\n  attr_accessor :audience, :head, :tail\n  \n  def initialize\n    @head = \"Hello, \"\n    @tail = \"!\"\n  end\n\n  def name\n    audience.name\n  end\n\n  def say\n    puts head + name + tail\n  end\nend\n\nmodule MyName\n  attr_reader :name\n\n  def initialize\n    @name = self.class.to_s\n  end\nend\n\nclass World\n  include MyName\nend\n\ngreet = Greet.new\ngreet.audience = World.new\ngreet.say\n```\n\nThen run:\n\n```bash\n$ goby hello.gb\n#=> Hello, World!\n```\n\n### REPL (igb)\n\n```bash\n$ goby -i\n```\n\n* `reset`: reset the VM\n* `exit`: exit REPL\n* `help`: show help\n* ctrl-c: cancel the block entered, or exit (on top level)\n\nSee [igb manual & test script](https://github.com/goby-lang/goby/blob/master/igb/manual_test.md). You can use `readline` features such as command history by arrow keys.\n\n## Variables\n{: .-three-column}\n\n### Local variable\n\n```ruby\nzip101 = \"233-7383\"\nmagic_number = 42\n```\n\nShould be \"`[a-z][a-z0-9_]+`\"(snake_case).\n\n### Instance variable\n\n```ruby\nmodule State\n  def initialize(state)\n    @state = state      # declaring an instance variable by assignment\n  end\n  def show\n    @state              # accessible from other instance methods\n  end\nend\n\nstate = State.new \"success\"\nstate.show\n#=> success\n```\n\nShould be \"`@[a-z][a-z0-9_]+`\"(snake_case).\n\n### Multiple assignment\n\n```ruby\n# array literal\na, b, c = [1, 2, 3]\n\n# array with '*'\na = [1, 2, 3]\nx, y, z = *a\n\n# array literal with '*'\na, b, c = *[1, 2, 3]\n\n# bare assignment: unsupported\na, b, c = 1, 2, 3  #=> unexpected 3 Line: 0\n```\n\n### Black hole variable\n\n```ruby\n# '_' is write-only\na, _ = [1, 2]\n```\n\n### Class variable\n\nUnsupported.\n\n### Global variable\n\nUnsupported.\n\n## Method definition\n\n### Method definition and calling\n\n```ruby\ndef foo_bar?(baz)\n  if baz == \"Hi, Goby!\"\n    true\n  else\n    false\n  end\nend\n\nfoo_bar? \"Hi, Goby!\" #=> true\n```\n\nMethod name should be \"`[a-z][a-z0-9_]+\\??`\" (snake_case). You can omit the trailing \"`()`\" only if no parameters are taken. Trailing using \"`!`\" is **unsupported**.\n\n### Order of method parameter\n\n```ruby\ndef foo(normal, default=\"value\", hash={}, ary=[], keyword:, keyword_default:\"key\", *sprat)\nend\n```\n\nIf a default value is provided to a parameter, the parameter can be omitted when calling. `()` can be omitted. The order of parameters in method definition is restricted as follows:\n\n1. **normal parameters** (like `a`)\n2. **normal parameters with default value** (like `a=1`)\n3. **optional parameters** (array or hash, like `ary=[]` or `hs={}`)\n4. **keyword parameters** (like `kwd:`) \n5. **keyword parameters with default value** (like `kwd: 1` or `ary: [1,2,3]` or `hsh: {key: \"value\"}`)\n6. **splat parameters** (like `*sp`)\n\nOr you will receive an error.\n\n### Keyword parameter (WIP)\n\n```ruby\ndef foo(process:, verb: :GET, opt:{ csp: :enabled }, ary: [1, 2, 3])\nend\n```\n\n### Returning value\n\n```ruby\nPI = 3.14\ndef area(radius)\n  radius * PI      # returns the result of evaluation\nend\n\narea 6             #=> 18.84\n```\n\n### Returning multiple value\n\n```ruby\ndef my_array\n  [1, 2, 3]\nend\n\nmy_array   #=> [1, 2, 3]\n```\n\n### Instance method\n\n```ruby\nmodule Foo\n  def bar       # defining instance method\n    puts \"bar\"\n  end\n  \n  def baz(count, email: \"goby@example.com\")\n    count.times do\n      puts email\n    end\n  end\nend\n\nfoo = Foo.new\nfoo.bar     #=> bar\nfoo.baz(3)  #\u2193\ngoby@example.com\ngoby@example.com\ngoby@example.com\n```\n\n### Singleton method #1\n\n```ruby\nstr = \"Goby\"\ndef str.foo     #1 singleton method on the object\n  self * 2\nend\n\nstr.foo\n#=> GobyGoby\n```\n\n### Singleton method #2\n\n```ruby\nmodule Foo\n  def self.bar  #2 singleton method with `self.`\n    92\n  end\nend\n```\n\n### Singleton method #3\n\n```ruby\nmodule Foo  \n  def Foo.bar   #3 singleton method with a class name (unrecommended)\n    88\n  end\nend\n```\n\n### Singleton method #4\n\n```ruby\nmodule Foo end\n\ndef Foo.bar     #4 singleton methods outside the Foo\n  9999\nend\n\nFoo.bar #=> 9999\n```\n\n### Attribute accessor method\n\n```ruby\nclass Foo\n  attr_accessor :bar, :baz\n\n  def initialize\n    @bar = 42\n    @baz = 99\n  end\nend\n\nfoo = Foo.new\n\nfoo.bar = 77\nfoo.baz = 88\n```\n\nYou can use the following shorthands to declare attribute accessor methods in classes/modules:\n\n* `attr_accessor`\n* `attr_reader`\n* `attr_writer`\n\n### Private method (to be implemented)\n\n```ruby\nclass Foo\n  def bar\n    42\n  end\n  \n  def _baz  # leading '_' means private method\n    99\n  end\nend\n```\n\n## Module/Class definition\n{: .-three-column}\n\n### Module definition and `include`\n\n```ruby\nmodule Foo\n  def foo\n    \"Foo's instance method\"\n  end\nend\n\nclass Bar\n  include Foo   # to include Foo\nend\n\nBar.new.foo     #=> Foo's instance method\n```\n\nModule names should be \"`[A-Z][A-Za-z0-9_]+`\" (UpperCamelCase). Modules cannot be inherited.\n\n### Module definition and `extend`\n\n```ruby\nmodule Foo\n  def foo\n    \"Foo's instance method will be a singleton method\"\n  end\nend\n\nclass Bar\n  extend Foo   # to extend Foo  \nend\n\nBar.foo        #=> Foo's instance method will be a singleton method\n```\n\n`extend` is to use the instance methods in the specified modules as **singleton methods** in your class or module. \n\n### Module instantiation\n\n```ruby\nmodule Foo   #module definition\n  def foo   \n    99\n  end\nend\n\nFoo.new.foo  #=> 99\n```\n\nActually, Goby's module can be even **instantiated** via \"`new`\" like \"`Foo.new`\".\n\n### Class definition and inheritance\n\n```ruby\nclass Foo       # class definition\n  def bar\n    99\n  end\nend\n\nclass Baz < Foo # inheritance\nend\n\nBaz.new.bar  #=> 99\n```\n\nClass names should be \"`[A-Z][A-Za-z0-9]+`\" (UpperCamelCase). Inheritance with \"`<`\" is supported.\n\n### Constants\n\n```ruby\nHTTP_ERROR_404 = 404\nHTTP_ERROR_404 = 500    # error\n```\n\nConstants should be \"`[A-Z][A-Za-z0-9_]+`\" (UPPER_SNAKECASE). Constants are **not reentrant** and the scope is **global**.\n\n### Redefining class/modules\n\n```ruby\nclass Foo\n  def bar\n    99\n  end\nend\n\nclass Foo\n  def bar  # redefining is possible\n    77\n  end\nend\n```\n\n### Namespaces\n\n```ruby\nclass Foo\n  module Bar\n    MAGIC = 99\n    def baz\n      99\n    end\n  end\nend\n\nFoo::Bar.new.baz     # Use '::' for namespacing\nFoo::Bar::MAGIC      # Use '::' for namespacing\n```\n\n## Load library\n\n### `require`\n\n```ruby\nrequire(\"uri\")   # to activate URL class\n\nu = URI.parse(\"http://example.com\")\nu.scheme   #=> \"http\"\n```\t\n\n### `require_relative`\n\n```ruby\nrequire_relative(\"bar\")  # loading the local bar.gb\n\nclass Foo\n  def self.bar(x)\n    Bar.foo do |ten|\n      x * ten\n    end\n  end\n\n  def self.baz\n    yield(100)\n  end\nend\n```\n\n## Literal\n{: .-three-column}\n\n### Keyword\n\n`def`, `true`, `false`, `nil`, `if`, `elsif`, `else`, `case`, `when`, `return`, `self`, `end`, `while`, `do`, `yield`, `get_block`, `next`, `class`, `module`, `break`\n\n### String literal\n\n```ruby\n\"double quote\"\n'single quote'\n```\n\nDouble and single quotation can be used.\n\n### Symbol literal\n\n```ruby\n:symbol           # equivalent to \"symbol\"\n{ symbol: \"value\" }\n```\n\nGoby's symbol (using `:`) is always `String` class.\n\n### Numeric literal\n\n```ruby\nyear   =  2018   # Integer\noffset = -42     # Integer\nPI     = 3.14    # Float\nG      = -9.8    # Float\n```\n\n### Array literal\n\n```ruby\n[1, 2, 3, \"hello\", :goby, { key: \"value\"}]\n[1, 2, [3, 4], 5, 6]\n```\n\n### Hash literal\n\n```ruby\nh = { key: \"value\", key2: \"value2\" }\nh[:key2]   #=> value2\n```\n\nHash literal's keys should always be **symbol literals**. \n\n### Range literal\n\n```ruby\n(1..10).each do |x|    # '..' represents a range\n  puts x*x\nend\n```\n\n### Boolean and `nil`\n\n```ruby\ntrue       # Boolean class\nfalse      # Boolean class\nnil        # Null class\n\n!nil  #=> true\n```\n\nAny objects except `nil` and `false` will be treated as `true` on conditionals.\n\n## Operator\n\n### Arithmetic/logical/assignment operators\n\n```ruby\n+           # unary\n**          # power\n-           # unary\n* / %       # multiplication, division, modulus\n+ -         # addition, subtraction\n!           # logical inversion\n> >= < <=   # inequality comparison\n== !=       # equality comparison, negative comparison\n&&          # logical AND\n||          # logical OR\n+= -=       # shorthand of addition/subtraction\n=           # assignment\n```\n\n*Priority of operators are TBD\n\n### Other operators\n\n```ruby\n()          # changing priority of interpretation\n[]          # array literal\n*           # multiple assignment\n..          # range\n```\n\n*Priority of operators are TBD\n\n### Delimiter\n\n```ruby\nclass Foo; end   # ';' to delimit\n\nclass Bar end    # recommended\n```\n\n### String interpolation (to be implemented)\n\n```ruby\nputs \"Error: #{error_message}\"  # double quotation is required\n```\n\n### Comment\n\n```ruby\nputs \"Goby\"    # comments\n```\n\nUse the annotations to keep the comments concise.\n\n- `TODO`\n- `FIXME`\n- `OPTIMIZE`\n- `HACK`\n- `REVIEW`\n\n### I/O\n\n* `#puts`\n\n* special constants: `ARGV`, `STDIN`, `STDOUT`, `STDERR`, `ENV` \n\n## Flow control\n{: .-three-column}\n\n### `if`, `else`, `elsif`\n\n```ruby\ndef foo(str)\n  if str.size > 10\n    puts \"too big!\"\n  elsif str.size < 3\n    puts \"too short!\"\n  else\n    puts \"moderate\"\n  end\nend\n```\n\n`then` is **not** supported.\n\n### Break\n\n```ruby\ndef foo(tail)\n  (5..tail).each do |t|\n    if t % 2 == 0 && t % 5 == 0\n      puts \"ouch!\"\n      break       # finish the block\n    else\n      puts t\n    end\n  end\n  puts \"out of the block\"\nend\n\nfoo 20\n#=> 5 6 7 8 9\n#=> ouch!\n#=> out of the block\n```\n\n### Case\n\n```ruby\ndef foo(str)\n  case str\n  when \"Elf\"\n    puts \"You might be Aragorn II!\"\n  when \"Aragorn\"\n    puts \"Long time no see, Aragorn!\"\n  when \"Frodo\", \"Sam\", \"Gandalf\"\n    puts \"One of us!\"\n  else\n    puts \"You're not yourself\"\n  end\nend\n```\n\n### While\n\n```ruby\ndecr = 10\nwhile decr do\n  if decr < 1\n    break\n  end\n  puts decr\n  decr -= 1\nend\n```\n\n`while`, conditional and a `do`/`end` block can be used for a loop.\n\n### Rescue\n\nUnder construction. Join [#605](https://github.com/goby-lang/goby/issues/605).\n\n## Block\n{: .-three-column}\n\n### Block\n\n```ruby\ndef foo(ary: [1, 2, 3])\n  ary.each do |s|      # start of the block with |block variable|\n    puts s\n  end                  # end of the block\nend\n```\n\n`{ }` cannot be used for forming a block.\n\n### `yield`\n\n```ruby\ndef foo\n  yield(10)  # executes the block given\nend\n\nfoo do |ten|\n  ten + 20\nend\n```\n\n### Block object and `call`\n\n```ruby\nb = Block.new do\n  100\nend\n\nb.call  #=> 100\n```\n\n`Block.new` can take a block and then `call`.\n\n### Passing a block\n\n```ruby\ndef baz\n  1000\nend\n\nclass Foo\n  def exec_block(block)\n\tblock.call\n  end\n\n  def baz\n    100\n  end\nend\n\nb = Block.new do\n  baz\nend\n\nf = Foo.new\nf.exec_block(b)\n```\n\n### Passing a block with block arguments\n\n```ruby\nb = Block.new do |arg, offset|\n  arg + 1000 - offset\nend\n\nb.call(49, 500) #=> 549\n```\n\n### Special `get_block` keyword\n\n```ruby\ndef bar(block)\n  # runs the block object and the block arg simultaneously\n  block.call + get_block.call\nend\n\ndef foo\n  bar(get_block) do # passes two blocks to `bar`\n    20\n  end\nend\n\nfoo do\n  10\nend\n```\n\n`get_block` is not a method but a **keyword** to retrieve a given block argument as a block object. By this, you can pass around or `call` the given block arguments as block objects. \n\n### Closure\n\n```ruby\ncount = 0          # the declaration is used\nb = Block.new do\n  count += 1       # the block looks preserving the `count`\nend\n\nclass Foo\n  def bar(blk)\n    count = 9      # (does not affect)\n    puts blk.call  # local variable is resolved to the one above\n  end\nend\n\nFoo.new.bar b  #=> 1\nFoo.new.bar b  #=> 2\nFoo.new.bar b  #=> 3\n```\n\n## Native class (Primary)\n{: .-three-column}\n\nGoby's most \"native\" classes cannot instantiate with `new` in principle. \n\n### `Object`\n\n```ruby\nBar.ancestors\n#\u00bb [Bar, Foo, Object]\nBar.singleton_class.ancestors\n#\u00bb [#<Class:Bar>, #<Class:Object>, Class, Object]\n```\n\n`Object` is actually just for creating singleton classes. See `Class`.\n\n* **`Object.methods`**: `!`, `!=`, `==`, `block_given?`, `class`, `exit`, `instance_eval`, `instance_variable_get`, `instance_variable_set`, `is_a?`, `methods`, `nil?`, `object_id`, `puts`, `raise`, `require`, `require_relative`, `send`, `singleton_class`, `sleep`, `thread`, `to_s`, `<`, `<=`, `>`, `>=`, `ancestors`, `attr_accessor`, `attr_reader`, `attr_writer`, `extend`, `include`, `name`, `new`, `superclass`\n\n* **`Object.new.methods`**: `!`, `!=`, `==`, `block_given?`, `class`, `exit`, `instance_eval`, `instance_variable_get`, `instance_variable_set`, `is_a?`, `methods`, `nil?`, `object_id`, `puts`, `raise`, `require`, `require_relative`, `send`, `singleton_class`, `sleep`, `thread`, `to_s`\n\n### `Class`\n\n```ruby\nString.ancestors      #=> [String, Object]\n```\n\n`Class` and `Object`can actually be regarded as the same and you don't need to distinguish them in almost all the cases. \n\n* **`Class.methods`**: `<`, `<=`, `>`, `>=`, `ancestors`, `attr_accessor`, `attr_reader`, `attr_writer`, `extend`, `include`, `name`, `new`, `superclass`, `!`, `!=`, `==`, `block_given?`, `class`, `exit`, `instance_eval`, `instance_variable_get`, `instance_variable_set`, `is_a?`, `methods`, `nil?`, `object_id`, `puts`, `raise`, `require`, `require_relative`, `send`, `singleton_class`, `sleep`, `thread`, `to_s`\n\n### `String`\n\n```ruby\nputs \"Hello\" + ' ' + 'world'  #=> Hello world\n```\n\nFixed to **UTF-8** with mb4 support.\n\n* **`String.methods`**: `fmt`,\n    * the rest: `Class.methods`\n* **`\"a\".methods`**:  `!=`, `*`, `+`, `<`, `<=>`, `==`, `=~`, `>`, `[]`, `[]=`, `capitalize`, `chop`, `concat`, `count`, `delete`, `downcase`, `each_byte`, `each_char`, `each_line`, `empty?`, `end_with?`, `eql?`, `fmt`, `include?`, `insert`, `length`, `ljust`, `match`, `new`, `replace`, `replace_once`, `reverse`, `rjust`, `size`, `slice`, `split`, `start_with`, `strip`, `to_a`, `to_bytes`, `to_d`, `to_f`, `to_i`, `to_s`, `upcase`,\n    * the rest: `Object.new.methods`\n\n### `Integer`\n\n```ruby\n37037 * 27      #=> 999999\n```\n\n* **`Integer.methods`**: the same as `Class.methods`\n* **`1.methods`**: `!=`, `%`, `*`, `**`, `+`, `-`, `/`, `<`, `<=`, `<=>`, `==`, `>`, `>=`, `even?`, `new`, `next`, `odd?`, `pred`, `ptr`, `times`, `to_f`, `to_float32`, `to_float64`, `to_i`, `to_int`, `to_int16`, `to_int32`, `to_int64`, `to_int8`, `to_s`, `to_uint`, `to_uint16`, `to_uint32`, `to_uint64`, `to_uint8`\n    * the rest: `Object.new.methods`\n\n### `Array`\n\n```ruby\n[1, \"2\", :card, [4, 5], { john: \"doe\" }]\n```\n\n* **`Array.methods`**: the same as `Class.methods`\n* **`[1].methods`**: `*`, `+`, `[]`, `[]=`, `any?`, `at`, `clear`, `concat`, `count`, `delete_at`, `dig`, `each`, `each_index`, `empty?`, `first`, `flatten`, `include?`, `join`, `last`, `lazy`, `length`, `map`, `new`, `pop`, `push`, `reduce`, `reverse`, `reverse_each`, `rotate`, `select`, `shift`, `to_enum`, `unshift`, `values_at`\n    * the rest: `Object.new.methods`\n\n### `Hash`\n\n```ruby\nh = { key: \"value\" }\nh = { \"key\": \"value\" }  #=> error\n\nh[\"key\"]  #=> value\nh[:key]   #=> value\n```\n\nKeys in hash literals should be **symbol literals**, while Hash index can be either string or symbol literals.\n\n* **`Hash.methods`**: the same as `Class.methods`\n* **`{ key: \"value\" }.methods`**: `[]`, `[]=`, `any?`, `clear`, `default`, `default=`, `delete`, `delete_if`, `dig`, `each`, `each_key`, `each_value`, `empty?`, `eql?`, `fetch`, `fetch_values`, `has_key?`, `has_value?`, `keys`, `length`, `map_values`, `merge`, `new`, `select`, `sorted_keys`, `to_a`, `to_json`, `to_s`, `transform_values`, `values`, `values_at`\n    * the rest: `Object.new.methods`\n\n### `Range`\n\n```ruby\n(1..10).each do |i|\n  puts i ** 2\nend\n```\n\n* **`Range.methods`**: the same as `Class.methods`\n* **`(1..10).methods`**: `!=`, `==`, `bsearch`, `each`, `first`, `include?`, `last`, `lazy`, `map`, `new`, `size`, `step`, `to_a`, `to_enum`\n    * the rest: `Object.new.methods`\n\n### `Block`\n\n```ruby\nb = Block.new do\n  100\nend\n\nb.call  #=> 100\n```\n\n* **`Block.methods`**: the same as `Class.methods`\n* **`(Block.new do end).methods`**: `call`\n    * the rest: `Object.new.methods`\n\n## Native class (secondary)\n{: .-three-column}\n\n### `Float`\n\n```ruby\n1.1 + 1.1   # => -2.2\n2.1 * -2.1  # => -4.41\n```\n\nFloat literals like `3.14` or `-273.15`. `Float` class is based on Golang's `float64` type.\n\n* **`Float.methods`**: the same as `Class.methods`\n* **`3.14.methods`**: `!=`, `%`, `*`, `**`, `+`, `-`, `/`, `<`, `<=`, `<=>`, `==`, `>`, `>=`, `new`, `ptr`, `to_d`, `to_i`\n    * the rest: `Object.new.methods`\n\n### `Decimal`\n\n```ruby\n\"3.14\".to_d            # => 3.14\n\"-0.7238943\".to_d      # => -0.7238943\n\"355/113\".to_d         \n# => 3.1415929203539823008849557522123893805309734513274336283185840\n\na = \"16.1\".to_d\nb = \"1.1\".to_d\ne = \"17.2\".to_d\na + b # => 0.1\na + b == e # => true\n\n('16.1'.to_d  + \"1.1\".to_d).to_s #=> 17.2\n('16.1'.to_f  + \"1.1\".to_f).to_s #=> 17.200000000000003\n```\n\nExperimental: the size is arbitrary and internally a fraction from Golang's `big.Rat` type. Decimal literal is TBD for now and you can get `Decimal` number via `to_d` method from `Integer`/`Float`/`String`.\n\n* **`Decimal.methods`**: the same as `Class.methods`\n* **`(1.1).to_d.methods`**: `!=`, `*`, `**`, `+`, `-`, `/`, `<`, `<=`, `<=>`, `==`, `>`, `>=`, `denominator`, `fraction`, `inverse`\n    * the rest: `Object.new.methods`\n\n### `Regexp`\n\n```ruby\na = Regexp.new(\"orl\")\na.match?(\"Hello World\")   #=> true\na.match?(\"Hello Regexp\")  #=> false\n\nb = Regexp.new(\"\ud83d\ude0f\")\nb.match?(\"\ud83e\udd21 \ud83d\ude0f \ud83d\ude10\")    #=> true\nb.match?(\"\ud83d\ude1d \ud83d\ude0d \ud83d\ude0a\")    #=> false\n\nc = Regexp.new(\"\u5c45(\u3089(?=\u308c)|\u3055(?=\u305b)|\u308b|\u308d|\u308c(?=[\u3070\u308b])|\u3088|(?=\u306a[\u3044\u304b\u304f\u3051\u305d]|\u307e[\u3057\u3059\u305b]|\u305d\u3046|\u305f|\u3066))\")\nc.match?(\"\u5c45\u3089\u308c\u308c\u3070\u3044\u3044\u306e\u306b\")  #=> true\nc.match?(\"\u5c45\u305a\u307e\u3044\u3092\u6b63\u3059\")      #=> false\n```\n\nUsing `/ /` is to be implemented.\n\n* **`Regexp.methods`**: the same as `Class.methods`\n* **`Regexp.new(\"^aa$\").methods`**: `==`, `match?`\n    * the rest: `Object.new.methods`\n\n### `MatchData`\n\n```ruby\n# numbered capture\n'abcd'.match(Regexp.new('(b.)'))\n#=> #<MatchData 0:\"bc\" 1:\"bc\">\n\n# named capture\n'abcd'.match(Regexp.new('a(?<first>b)(?<second>c)'))\n#=> #<MatchData 0:\"abc\" first:\"b\" second:\"c\">\n\n# converting to hash\n\u00bb 'abcd'.match(Regexp.new('a(?<first>b)(?<second>c)')).to_h\n#\u00bb { 0: \"abc\", first: \"b\", second: \"c\" }\n```\n\nThe number keys in the captures are actually `String` class.The key `0` is the matched string.\n\n* **`MatchData.methods`**: the same as `Class.methods`\n* **`'abcd'.match(Regexp.new('(b.)')).methods`**: `captures`, `length`, `new`, `to_a`, `to_h`\n    * the rest: `Object.new.methods`\n\n### `File`\n\n```ruby\nf = File.new(\"../test_fixtures/file_test/size.gb\")\nf.name  #=> \"../test_fixtures/file_test/size.gb\"\n```\n\n* **`File.methods`**: `basename`, `chmod`, `delete`, `exist?`, `extname`, `join`\n    * the rest: `Class.methods`\n* **`File.new.methods`**: `basename`, `chmod`, `close`, `delete`, `exist?`, `extname`, `join`, `name`\n    * the rest: `Object.new.methods`\n\n## Native class (Golang-oriented)\n{: .-three-column}\n\n### `GoMap`\n\n```ruby\nh = { foo: \"bar\" }\nm = GoMap.new(h)    # to pass values to Golang's code\nh2 = m.to_hash\nh2[:foo]   #=> \"bar\"\n```\n\n* **`GoMap.methods`**: the same as `Class.methods`\n* **`GoMap.new.methods`**: `get`, `set`, `to_hash`\n    * the rest: `Object.new.methods`\n\n### `Channel`\n\n```ruby\nc = Channel.new\n\n1001.times do |i| # i start from 0 to 1000\n  thread do\n  \tc.deliver(i)\n  end\nend\n\nr = 0\n1001.times do\n  r = r + c.receive\nend\n\nr #=> 500500\n```\n\n`Channel` class is to hold channels to work with `#thread`. See `thread`.\n\n* **`Channel.methods`**: the same as `Class.methods`\n* **`Channel.new.methods`**: `close`, `deliver`, `new`, `receive`\n    * the rest: `Object.new.methods`\n\n## Enumerator & lazy\n\nPretty new experimental library.\n\n### `LazyEnumerator`\n\n```ruby\n# creating a lazy enumerator\nenumerator = LazyEnumerator.new(ArrayEnumerator.new([1, 2, 3])) do |value|\n\t2 * value\nend\nresult = []\n\nenumerator.each do |value|\n\tresult.push(value)\nend\n\nresult   #=> [2, 4, 6]\n```\n\nA shorthand `#lazy` method is also provided in `Array` and `Range` by now. See \"Tips & tricks\" below. \n\n* **`LazyEnumerator.methods`**: the same as `Class.methods`\n* **`[1, 2].lazy`**: `each`, `first`, `has_next?`, `initialize`, `map`, `next`\n    * the rest: `Object.new.methods`\n\n### `ArrayEnumerator`\n\n```ruby\niterated_values = []\n\nenumerator = ArrayEnumerator.new([1, 2, 4])\n\nwhile enumerator.has_next? do\n\titerated_values.push(enumerator.next)\nend\n\niterated_values   #=> [1, 2, 4]\n```\n\n* **`ArrayEnumerator.methods`**: the same as `Class.methods`\n* **`ArrayEnumerator.new([1, 2, 3]).methods`**: `has_next?`, `initialize`, `next`\n    * the rest: `Object.new.methods`\n\n### `RangeEnumerator`\n\n```ruby\niterated_values = []\n\nenumerator = RangeEnumerator.new((1..4))\n\nwhile enumerator.has_next? do\n\titerated_values.push(enumerator.next)\nend\n\niterated_values   #=> [1, 2, 3, 4]\n```\n\n* **`RangeEnumerator.methods`**: the same as `Class.methods`\n* **`RangeEnumerator.new(1..2).methods`**: `has_next?`, `initialize`, `next`\n    * the rest: `Object.new.methods`\n\n## Special class\n\n### `Boolean`\n\n```ruby\ntrue.class  #=> Boolean\nfalse.class #=> Boolean\n```\n\nA special class that just to hold `true` and `false`. Cannot be instantiate.\n\n### `Null`\n\n```ruby\nnil.class   #=> Null\n```\n\nA special class that just to hold `nil`. Cannot be instantiate.\n\n### `Method`\n\n(A special dummy class that just holds methods defined by Goby code.)\n\n### `Diggable`\n\nProvides `#dig` method. Currently. `Array` and `Hash` classes' instance can be `Diggable`.\n\n```ruby\n[1, 2].dig(0, 1)  #=> TypeError: Expect target to be Diggable, got Integer\n```\n\n## Testing framework\n\n### `Spec`\n\n```ruby\nrequire \"spec\"\n\nSpec.describe Spec do\n  it \"fails and exit with code 1\" do\n\texpect(1).to eq(2)\n  end\nend\n\nSpec.run\n```\n\n* **`Spec.methods`**: `describe`, `describes`, `instance`, `run`\n    * the rest: `Object.methods`\n* **`Spec.new.methods`**: `describes`, `initialize`, `run`, `session_successful`, `session_successful=`\n    * the rest: `Hash.new.methods`\n\n## Tips & tricks\n\n### Showing methods\n\n```ruby\n\u00bb \"string\".methods\n#\u00bb [\"!=\", \"*\", \"+\", \"<\", \"<=>\", \"==\", \"=~\", \">\", \"[]\", \"[]=\", \"capitalize\", \"chop\", \"concat\", \"count\", \"delete\", \"downcase\", \"each_byte\", \"each_char\", \"each_line\", \"empty?\", \"end_with?\", \"eql?\", \"fmt\", \"include?\", \"insert\", \"length\", \"ljust\", \"match\", \"new\", \"replace\", \"replace_once\", \"reverse\", \"rjust\", \"size\", \"slice\", \"split\", \"start_with\", \"strip\", \"to_a\", \"to_bytes\", \"to_d\", \"to_f\", \"to_i\", \"to_s\", \"upcase\", \"!\", \"block_given?\", \"class\", \"exit\", \"instance_eval\", \"instance_variable_get\", \"instance_variable_set\", \"is_a?\", \"methods\", \"nil?\", \"object_id\", \"puts\", \"raise\", \"require\", \"require_relative\", \"send\", \"singleton_class\", \"sleep\", \"thread\"]\n```\n\n### Showing class\n\n```ruby\n\u00bb \"string\".class\n#\u00bb String\n```\n\n### Showing singleton class\n\n```ruby\n\u00bb \"moji\".singleton_class\n#\u00bb #<Class:#<String:842352325152>>\n\n\u00bb \"moji\".class.singleton_class\n#\u00bb #<Class:String>\n```\n\n### Showing ancestors\n\n```ruby\n\u00bb Integer.ancestors\n#\u00bb [Integer, Object]\n\n\u00bb \"moji\".class.ancestors\n#\u00bb [String, Object]\n```\n\n### Showing singleton classes' ancestors\n\n```ruby\n\u00bb \"moji\".class.singleton_class.ancestors\n#\u00bb [#<Class:String>, #<Class:Object>, Class, Object]\n```\n\n### Showing object's id\n\n```ruby\n\u00bb \"moji\".object_id\n#\u00bb 842352977920\n```\n\n### `#to_json`\n\n```ruby\nh = { a: 1, b: [1, \"2\", [4, 5, nil]]}\nh.to_json         # converts hash to JSON\n#=> {\"a\":1, \"b\":[1, \"2\", [4, 5, null]]}\n```\n\n### Customize `#to_json`\n\nOverwrite the `#to_json` in your class:\n\n```ruby\nclass JobTitle\n  def initialize(name)\n    @name = name\n  end\n\n  def to_json\n    { title: @name }.to_json\n  end\nend\n\nclass Person\n  def initialize(name, age)\n    @name = name\n    @age = age\n    @job = JobTitle.new(\"software engineer\")\n  end\n\n  def to_json\n    { name: @name, age: @age, job: @job }.to_json\n  end\nend\n\nstan = Person.new(\"Stan\", 23)\nh = { person: stan }\nh.to_json #=> {\"person\":{\"name\":\"Stan\",\"job\":{\"title\":\"software engineer\"},\"age\":23}}\n```\n\n### Lazy enumeration\n\nTo avoid N + 1 query.\n\n```ruby\nenumerator = [1, 2, 3].lazy.map do |value|\n\t2 * value\nend\nresult = []\n\nenumerator.each do |value|\n\tresult.push(value)\nend\n\nresult  #=> [2, 4, 6]\n```\t\n\nYou can call `#lazy.map` on `Array`, `Range`, or `JSON` objects. \n\n## Styling\n\n### Quick style guide\n\n* UTF-8 should be used.\n* Only two spaces `  ` should be used for one indentation.\n    * Tab cannot be used for indentation.\n* For more, follow [RuboCop's style guide](https://github.com/bbatsov/ruby-style-guide) in principle.\n\n### Document notation\n\n* `Class#instance_method` -- use `#` to represent instance methods in documents\n* `Class.class_method`\n* `Module.module_method`\n\n### Syntax highlighting\n\nReady for Vim and Sublime text. You can also use Ruby's syntax highlighting so far.\n\n## References\n\n### Official\n\n* Official site: [https://goby-lang.org/](https://goby-lang.org/)\n* Repository: [https://github.com/goby-lang/goby/](https://github.com/goby-lang/goby/)\n* DevHints: [https://devhints.io/goby](https://devhints.io/goby) (this page)\n\n### Readings for Goby developers\n\n* [Write an Interpreter in Go](https://interpreterbook.com/)\n* [Nand2Tetris II](https://www.coursera.org/learn/nand2tetris2/home/welcome)\n* [Ruby under a microscope](http://patshaughnessy.net/ruby-under-a-microscope)\n* [YARV's instruction table](http://www.atdot.net/yarv/insnstbl.html)\n\n### JP resource\n\n* [Goby: Ruby\u30e9\u30a4\u30af\u306a\u8a00\u8a9e\uff081\uff09Goby\u3092\u52d5\u304b\u3057\u3066\u307f\u308b](https://techracho.bpsinc.jp/hachi8833/2017_11_10/47787)\n* [Goby\u306e\u7d44\u307f\u8fbc\u307f\u30af\u30e9\u30b9\u306b\u30e1\u30bd\u30c3\u30c9\u3092\u8ffd\u52a0\u3059\u308b\u65b9\u6cd5](https://qiita.com/hanachin_/items/efc1c976a4f5749514ef)"}

field_intro:
Goby's language design is based on Ruby language's, slim and shaped up. Differences in syntax between them is very small.

field_body:
## Getting started

### Hello world
{: .-prime}

#### hello.gb
{: .-file}

```ruby
class Greet
  attr_accessor :audience, :head, :tail
  
  def initialize
    @head = "Hello, "
    @tail = "!"
  end

  def name
    audience.name
  end

  def say
    puts head + name + tail
  end
end

module MyName
  attr_reader :name

  def initialize
    @name = self.class.to_s
  end
end

class World
  include MyName
end

greet = Greet.new
greet.audience = World.new
greet.say
```

Then run:

```bash
$ goby hello.gb
#=> Hello, World!
```

### REPL (igb)

```bash
$ goby -i
```

* `reset`: reset the VM
* `exit`: exit REPL
* `help`: show help
* ctrl-c: cancel the block entered, or exit (on top level)

See [igb manual & test script](https://github.com/goby-lang/goby/blob/master/igb/manual_test.md). You can use `readline` features such as command history by arrow keys.

## Variables
{: .-three-column}

### Local variable

```ruby
zip101 = "233-7383"
magic_number = 42
```

Should be "`[a-z][a-z0-9_]+`"(snake_case).

### Instance variable

```ruby
module State
  def initialize(state)
    @state = state      # declaring an instance variable by assignment
  end
  def show
    @state              # accessible from other instance methods
  end
end

state = State.new "success"
state.show
#=> success
```

Should be "`@[a-z][a-z0-9_]+`"(snake_case).

### Multiple assignment

```ruby
# array literal
a, b, c = [1, 2, 3]

# array with '*'
a = [1, 2, 3]
x, y, z = *a

# array literal with '*'
a, b, c = *[1, 2, 3]

# bare assignment: unsupported
a, b, c = 1, 2, 3  #=> unexpected 3 Line: 0
```

### Black hole variable

```ruby
# '_' is write-only
a, _ = [1, 2]
```

### Class variable

Unsupported.

### Global variable

Unsupported.

## Method definition

### Method definition and calling

```ruby
def foo_bar?(baz)
  if baz == "Hi, Goby!"
    true
  else
    false
  end
end

foo_bar? "Hi, Goby!" #=> true
```

Method name should be "`[a-z][a-z0-9_]+\??`" (snake_case). You can omit the trailing "`()`" only if no parameters are taken. Trailing using "`!`" is **unsupported**.

### Order of method parameter

```ruby
def foo(normal, default="value", hash={}, ary=[], keyword:, keyword_default:"key", *sprat)
end
```

If a default value is provided to a parameter, the parameter can be omitted when calling. `()` can be omitted. The order of parameters in method definition is restricted as follows:

1. **normal parameters** (like `a`)
2. **normal parameters with default value** (like `a=1`)
3. **optional parameters** (array or hash, like `ary=[]` or `hs={}`)
4. **keyword parameters** (like `kwd:`) 
5. **keyword parameters with default value** (like `kwd: 1` or `ary: [1,2,3]` or `hsh: {key: "value"}`)
6. **splat parameters** (like `*sp`)

Or you will receive an error.

### Keyword parameter (WIP)

```ruby
def foo(process:, verb: :GET, opt:{ csp: :enabled }, ary: [1, 2, 3])
end
```

### Returning value

```ruby
PI = 3.14
def area(radius)
  radius * PI      # returns the result of evaluation
end

area 6             #=> 18.84
```

### Returning multiple value

```ruby
def my_array
  [1, 2, 3]
end

my_array   #=> [1, 2, 3]
```

### Instance method

```ruby
module Foo
  def bar       # defining instance method
    puts "bar"
  end
  
  def baz(count, email: "goby@example.com")
    count.times do
      puts email
    end
  end
end

foo = Foo.new
foo.bar     #=> bar
foo.baz(3)  #↓
goby@example.com
goby@example.com
goby@example.com
```

### Singleton method #1

```ruby
str = "Goby"
def str.foo     #1 singleton method on the object
  self * 2
end

str.foo
#=> GobyGoby
```

### Singleton method #2

```ruby
module Foo
  def self.bar  #2 singleton method with `self.`
    92
  end
end
```

### Singleton method #3

```ruby
module Foo  
  def Foo.bar   #3 singleton method with a class name (unrecommended)
    88
  end
end
```

### Singleton method #4

```ruby
module Foo end

def Foo.bar     #4 singleton methods outside the Foo
  9999
end

Foo.bar #=> 9999
```

### Attribute accessor method

```ruby
class Foo
  attr_accessor :bar, :baz

  def initialize
    @bar = 42
    @baz = 99
  end
end

foo = Foo.new

foo.bar = 77
foo.baz = 88
```

You can use the following shorthands to declare attribute accessor methods in classes/modules:

* `attr_accessor`
* `attr_reader`
* `attr_writer`

### Private method (to be implemented)

```ruby
class Foo
  def bar
    42
  end
  
  def _baz  # leading '_' means private method
    99
  end
end
```

## Module/Class definition
{: .-three-column}

### Module definition and `include`

```ruby
module Foo
  def foo
    "Foo's instance method"
  end
end

class Bar
  include Foo   # to include Foo
end

Bar.new.foo     #=> Foo's instance method
```

Module names should be "`[A-Z][A-Za-z0-9_]+`" (UpperCamelCase). Modules cannot be inherited.

### Module definition and `extend`

```ruby
module Foo
  def foo
    "Foo's instance method will be a singleton method"
  end
end

class Bar
  extend Foo   # to extend Foo  
end

Bar.foo        #=> Foo's instance method will be a singleton method
```

`extend` is to use the instance methods in the specified modules as **singleton methods** in your class or module. 

### Module instantiation

```ruby
module Foo   #module definition
  def foo   
    99
  end
end

Foo.new.foo  #=> 99
```

Actually, Goby's module can be even **instantiated** via "`new`" like "`Foo.new`".

### Class definition and inheritance

```ruby
class Foo       # class definition
  def bar
    99
  end
end

class Baz < Foo # inheritance
end

Baz.new.bar  #=> 99
```

Class names should be "`[A-Z][A-Za-z0-9]+`" (UpperCamelCase). Inheritance with "`<`" is supported.

### Constants

```ruby
HTTP_ERROR_404 = 404
HTTP_ERROR_404 = 500    # error
```

Constants should be "`[A-Z][A-Za-z0-9_]+`" (UPPER_SNAKECASE). Constants are **not reentrant** and the scope is **global**.

### Redefining class/modules

```ruby
class Foo
  def bar
    99
  end
end

class Foo
  def bar  # redefining is possible
    77
  end
end
```

### Namespaces

```ruby
class Foo
  module Bar
    MAGIC = 99
    def baz
      99
    end
  end
end

Foo::Bar.new.baz     # Use '::' for namespacing
Foo::Bar::MAGIC      # Use '::' for namespacing
```

## Load library

### `require`

```ruby
require("uri")   # to activate URL class

u = URI.parse("http://example.com")
u.scheme   #=> "http"
```	

### `require_relative`

```ruby
require_relative("bar")  # loading the local bar.gb

class Foo
  def self.bar(x)
    Bar.foo do |ten|
      x * ten
    end
  end

  def self.baz
    yield(100)
  end
end
```

## Literal
{: .-three-column}

### Keyword

`def`, `true`, `false`, `nil`, `if`, `elsif`, `else`, `case`, `when`, `return`, `self`, `end`, `while`, `do`, `yield`, `get_block`, `next`, `class`, `module`, `break`

### String literal

```ruby
"double quote"
'single quote'
```

Double and single quotation can be used.

### Symbol literal

```ruby
:symbol           # equivalent to "symbol"
{ symbol: "value" }
```

Goby's symbol (using `:`) is always `String` class.

### Numeric literal

```ruby
year   =  2018   # Integer
offset = -42     # Integer
PI     = 3.14    # Float
G      = -9.8    # Float
```

### Array literal

```ruby
[1, 2, 3, "hello", :goby, { key: "value"}]
[1, 2, [3, 4], 5, 6]
```

### Hash literal

```ruby
h = { key: "value", key2: "value2" }
h[:key2]   #=> value2
```

Hash literal's keys should always be **symbol literals**. 

### Range literal

```ruby
(1..10).each do |x|    # '..' represents a range
  puts x*x
end
```

### Boolean and `nil`

```ruby
true       # Boolean class
false      # Boolean class
nil        # Null class

!nil  #=> true
```

Any objects except `nil` and `false` will be treated as `true` on conditionals.

## Operator

### Arithmetic/logical/assignment operators

```ruby
+           # unary
**          # power
-           # unary
* / %       # multiplication, division, modulus
+ -         # addition, subtraction
!           # logical inversion
> >= < <=   # inequality comparison
== !=       # equality comparison, negative comparison
&&          # logical AND
||          # logical OR
+= -=       # shorthand of addition/subtraction
=           # assignment
```

*Priority of operators are TBD

### Other operators

```ruby
()          # changing priority of interpretation
[]          # array literal
*           # multiple assignment
..          # range
```

*Priority of operators are TBD

### Delimiter

```ruby
class Foo; end   # ';' to delimit

class Bar end    # recommended
```

### String interpolation (to be implemented)

```ruby
puts "Error: #{error_message}"  # double quotation is required
```

### Comment

```ruby
puts "Goby"    # comments
```

Use the annotations to keep the comments concise.

- `TODO`
- `FIXME`
- `OPTIMIZE`
- `HACK`
- `REVIEW`

### I/O

* `#puts`

* special constants: `ARGV`, `STDIN`, `STDOUT`, `STDERR`, `ENV` 

## Flow control
{: .-three-column}

### `if`, `else`, `elsif`

```ruby
def foo(str)
  if str.size > 10
    puts "too big!"
  elsif str.size < 3
    puts "too short!"
  else
    puts "moderate"
  end
end
```

`then` is **not** supported.

### Break

```ruby
def foo(tail)
  (5..tail).each do |t|
    if t % 2 == 0 && t % 5 == 0
      puts "ouch!"
      break       # finish the block
    else
      puts t
    end
  end
  puts "out of the block"
end

foo 20
#=> 5 6 7 8 9
#=> ouch!
#=> out of the block
```

### Case

```ruby
def foo(str)
  case str
  when "Elf"
    puts "You might be Aragorn II!"
  when "Aragorn"
    puts "Long time no see, Aragorn!"
  when "Frodo", "Sam", "Gandalf"
    puts "One of us!"
  else
    puts "You're not yourself"
  end
end
```

### While

```ruby
decr = 10
while decr do
  if decr < 1
    break
  end
  puts decr
  decr -= 1
end
```

`while`, conditional and a `do`/`end` block can be used for a loop.

### Rescue

Under construction. Join [#605](https://github.com/goby-lang/goby/issues/605).

## Block
{: .-three-column}

### Block

```ruby
def foo(ary: [1, 2, 3])
  ary.each do |s|      # start of the block with |block variable|
    puts s
  end                  # end of the block
end
```

`{ }` cannot be used for forming a block.

### `yield`

```ruby
def foo
  yield(10)  # executes the block given
end

foo do |ten|
  ten + 20
end
```

### Block object and `call`

```ruby
b = Block.new do
  100
end

b.call  #=> 100
```

`Block.new` can take a block and then `call`.

### Passing a block

```ruby
def baz
  1000
end

class Foo
  def exec_block(block)
	block.call
  end

  def baz
    100
  end
end

b = Block.new do
  baz
end

f = Foo.new
f.exec_block(b)
```

### Passing a block with block arguments

```ruby
b = Block.new do |arg, offset|
  arg + 1000 - offset
end

b.call(49, 500) #=> 549
```

### Special `get_block` keyword

```ruby
def bar(block)
  # runs the block object and the block arg simultaneously
  block.call + get_block.call
end

def foo
  bar(get_block) do # passes two blocks to `bar`
    20
  end
end

foo do
  10
end
```

`get_block` is not a method but a **keyword** to retrieve a given block argument as a block object. By this, you can pass around or `call` the given block arguments as block objects. 

### Closure

```ruby
count = 0          # the declaration is used
b = Block.new do
  count += 1       # the block looks preserving the `count`
end

class Foo
  def bar(blk)
    count = 9      # (does not affect)
    puts blk.call  # local variable is resolved to the one above
  end
end

Foo.new.bar b  #=> 1
Foo.new.bar b  #=> 2
Foo.new.bar b  #=> 3
```

## Native class (Primary)
{: .-three-column}

Goby's most "native" classes cannot instantiate with `new` in principle. 

### `Object`

```ruby
Bar.ancestors
#» [Bar, Foo, Object]
Bar.singleton_class.ancestors
#» [#<Class:Bar>, #<Class:Object>, Class, Object]
```

`Object` is actually just for creating singleton classes. See `Class`.

* **`Object.methods`**: `!`, `!=`, `==`, `block_given?`, `class`, `exit`, `instance_eval`, `instance_variable_get`, `instance_variable_set`, `is_a?`, `methods`, `nil?`, `object_id`, `puts`, `raise`, `require`, `require_relative`, `send`, `singleton_class`, `sleep`, `thread`, `to_s`, `<`, `<=`, `>`, `>=`, `ancestors`, `attr_accessor`, `attr_reader`, `attr_writer`, `extend`, `include`, `name`, `new`, `superclass`

* **`Object.new.methods`**: `!`, `!=`, `==`, `block_given?`, `class`, `exit`, `instance_eval`, `instance_variable_get`, `instance_variable_set`, `is_a?`, `methods`, `nil?`, `object_id`, `puts`, `raise`, `require`, `require_relative`, `send`, `singleton_class`, `sleep`, `thread`, `to_s`

### `Class`

```ruby
String.ancestors      #=> [String, Object]
```

`Class` and `Object`can actually be regarded as the same and you don't need to distinguish them in almost all the cases. 

* **`Class.methods`**: `<`, `<=`, `>`, `>=`, `ancestors`, `attr_accessor`, `attr_reader`, `attr_writer`, `extend`, `include`, `name`, `new`, `superclass`, `!`, `!=`, `==`, `block_given?`, `class`, `exit`, `instance_eval`, `instance_variable_get`, `instance_variable_set`, `is_a?`, `methods`, `nil?`, `object_id`, `puts`, `raise`, `require`, `require_relative`, `send`, `singleton_class`, `sleep`, `thread`, `to_s`

### `String`

```ruby
puts "Hello" + ' ' + 'world'  #=> Hello world
```

Fixed to **UTF-8** with mb4 support.

* **`String.methods`**: `fmt`,
    * the rest: `Class.methods`
* **`"a".methods`**:  `!=`, `*`, `+`, `<`, `<=>`, `==`, `=~`, `>`, `[]`, `[]=`, `capitalize`, `chop`, `concat`, `count`, `delete`, `downcase`, `each_byte`, `each_char`, `each_line`, `empty?`, `end_with?`, `eql?`, `fmt`, `include?`, `insert`, `length`, `ljust`, `match`, `new`, `replace`, `replace_once`, `reverse`, `rjust`, `size`, `slice`, `split`, `start_with`, `strip`, `to_a`, `to_bytes`, `to_d`, `to_f`, `to_i`, `to_s`, `upcase`,
    * the rest: `Object.new.methods`

### `Integer`

```ruby
37037 * 27      #=> 999999
```

* **`Integer.methods`**: the same as `Class.methods`
* **`1.methods`**: `!=`, `%`, `*`, `**`, `+`, `-`, `/`, `<`, `<=`, `<=>`, `==`, `>`, `>=`, `even?`, `new`, `next`, `odd?`, `pred`, `ptr`, `times`, `to_f`, `to_float32`, `to_float64`, `to_i`, `to_int`, `to_int16`, `to_int32`, `to_int64`, `to_int8`, `to_s`, `to_uint`, `to_uint16`, `to_uint32`, `to_uint64`, `to_uint8`
    * the rest: `Object.new.methods`

### `Array`

```ruby
[1, "2", :card, [4, 5], { john: "doe" }]
```

* **`Array.methods`**: the same as `Class.methods`
* **`[1].methods`**: `*`, `+`, `[]`, `[]=`, `any?`, `at`, `clear`, `concat`, `count`, `delete_at`, `dig`, `each`, `each_index`, `empty?`, `first`, `flatten`, `include?`, `join`, `last`, `lazy`, `length`, `map`, `new`, `pop`, `push`, `reduce`, `reverse`, `reverse_each`, `rotate`, `select`, `shift`, `to_enum`, `unshift`, `values_at`
    * the rest: `Object.new.methods`

### `Hash`

```ruby
h = { key: "value" }
h = { "key": "value" }  #=> error

h["key"]  #=> value
h[:key]   #=> value
```

Keys in hash literals should be **symbol literals**, while Hash index can be either string or symbol literals.

* **`Hash.methods`**: the same as `Class.methods`
* **`{ key: "value" }.methods`**: `[]`, `[]=`, `any?`, `clear`, `default`, `default=`, `delete`, `delete_if`, `dig`, `each`, `each_key`, `each_value`, `empty?`, `eql?`, `fetch`, `fetch_values`, `has_key?`, `has_value?`, `keys`, `length`, `map_values`, `merge`, `new`, `select`, `sorted_keys`, `to_a`, `to_json`, `to_s`, `transform_values`, `values`, `values_at`
    * the rest: `Object.new.methods`

### `Range`

```ruby
(1..10).each do |i|
  puts i ** 2
end
```

* **`Range.methods`**: the same as `Class.methods`
* **`(1..10).methods`**: `!=`, `==`, `bsearch`, `each`, `first`, `include?`, `last`, `lazy`, `map`, `new`, `size`, `step`, `to_a`, `to_enum`
    * the rest: `Object.new.methods`

### `Block`

```ruby
b = Block.new do
  100
end

b.call  #=> 100
```

* **`Block.methods`**: the same as `Class.methods`
* **`(Block.new do end).methods`**: `call`
    * the rest: `Object.new.methods`

## Native class (secondary)
{: .-three-column}

### `Float`

```ruby
1.1 + 1.1   # => -2.2
2.1 * -2.1  # => -4.41
```

Float literals like `3.14` or `-273.15`. `Float` class is based on Golang's `float64` type.

* **`Float.methods`**: the same as `Class.methods`
* **`3.14.methods`**: `!=`, `%`, `*`, `**`, `+`, `-`, `/`, `<`, `<=`, `<=>`, `==`, `>`, `>=`, `new`, `ptr`, `to_d`, `to_i`
    * the rest: `Object.new.methods`

### `Decimal`

```ruby
"3.14".to_d            # => 3.14
"-0.7238943".to_d      # => -0.7238943
"355/113".to_d         
# => 3.1415929203539823008849557522123893805309734513274336283185840

a = "16.1".to_d
b = "1.1".to_d
e = "17.2".to_d
a + b # => 0.1
a + b == e # => true

('16.1'.to_d  + "1.1".to_d).to_s #=> 17.2
('16.1'.to_f  + "1.1".to_f).to_s #=> 17.200000000000003
```

Experimental: the size is arbitrary and internally a fraction from Golang's `big.Rat` type. Decimal literal is TBD for now and you can get `Decimal` number via `to_d` method from `Integer`/`Float`/`String`.

* **`Decimal.methods`**: the same as `Class.methods`
* **`(1.1).to_d.methods`**: `!=`, `*`, `**`, `+`, `-`, `/`, `<`, `<=`, `<=>`, `==`, `>`, `>=`, `denominator`, `fraction`, `inverse`
    * the rest: `Object.new.methods`

### `Regexp`

```ruby
a = Regexp.new("orl")
a.match?("Hello World")   #=> true
a.match?("Hello Regexp")  #=> false

b = Regexp.new("😏")
b.match?("🤡 😏 😐")    #=> true
b.match?("😝 😍 😊")    #=> false

c = Regexp.new("居(ら(?=れ)|さ(?=せ)|る|ろ|れ(?=[ばる])|よ|(?=な[いかくけそ]|ま[しすせ]|そう|た|て))")
c.match?("居られればいいのに")  #=> true
c.match?("居ずまいを正す")      #=> false
```

Using `/ /` is to be implemented.

* **`Regexp.methods`**: the same as `Class.methods`
* **`Regexp.new("^aa$").methods`**: `==`, `match?`
    * the rest: `Object.new.methods`

### `MatchData`

```ruby
# numbered capture
'abcd'.match(Regexp.new('(b.)'))
#=> #<MatchData 0:"bc" 1:"bc">

# named capture
'abcd'.match(Regexp.new('a(?<first>b)(?<second>c)'))
#=> #<MatchData 0:"abc" first:"b" second:"c">

# converting to hash
» 'abcd'.match(Regexp.new('a(?<first>b)(?<second>c)')).to_h
#» { 0: "abc", first: "b", second: "c" }
```

The number keys in the captures are actually `String` class.The key `0` is the matched string.

* **`MatchData.methods`**: the same as `Class.methods`
* **`'abcd'.match(Regexp.new('(b.)')).methods`**: `captures`, `length`, `new`, `to_a`, `to_h`
    * the rest: `Object.new.methods`

### `File`

```ruby
f = File.new("../test_fixtures/file_test/size.gb")
f.name  #=> "../test_fixtures/file_test/size.gb"
```

* **`File.methods`**: `basename`, `chmod`, `delete`, `exist?`, `extname`, `join`
    * the rest: `Class.methods`
* **`File.new.methods`**: `basename`, `chmod`, `close`, `delete`, `exist?`, `extname`, `join`, `name`
    * the rest: `Object.new.methods`

## Native class (Golang-oriented)
{: .-three-column}

### `GoMap`

```ruby
h = { foo: "bar" }
m = GoMap.new(h)    # to pass values to Golang's code
h2 = m.to_hash
h2[:foo]   #=> "bar"
```

* **`GoMap.methods`**: the same as `Class.methods`
* **`GoMap.new.methods`**: `get`, `set`, `to_hash`
    * the rest: `Object.new.methods`

### `Channel`

```ruby
c = Channel.new

1001.times do |i| # i start from 0 to 1000
  thread do
  	c.deliver(i)
  end
end

r = 0
1001.times do
  r = r + c.receive
end

r #=> 500500
```

`Channel` class is to hold channels to work with `#thread`. See `thread`.

* **`Channel.methods`**: the same as `Class.methods`
* **`Channel.new.methods`**: `close`, `deliver`, `new`, `receive`
    * the rest: `Object.new.methods`

## Enumerator & lazy

Pretty new experimental library.

### `LazyEnumerator`

```ruby
# creating a lazy enumerator
enumerator = LazyEnumerator.new(ArrayEnumerator.new([1, 2, 3])) do |value|
	2 * value
end
result = []

enumerator.each do |value|
	result.push(value)
end

result   #=> [2, 4, 6]
```

A shorthand `#lazy` method is also provided in `Array` and `Range` by now. See "Tips & tricks" below. 

* **`LazyEnumerator.methods`**: the same as `Class.methods`
* **`[1, 2].lazy`**: `each`, `first`, `has_next?`, `initialize`, `map`, `next`
    * the rest: `Object.new.methods`

### `ArrayEnumerator`

```ruby
iterated_values = []

enumerator = ArrayEnumerator.new([1, 2, 4])

while enumerator.has_next? do
	iterated_values.push(enumerator.next)
end

iterated_values   #=> [1, 2, 4]
```

* **`ArrayEnumerator.methods`**: the same as `Class.methods`
* **`ArrayEnumerator.new([1, 2, 3]).methods`**: `has_next?`, `initialize`, `next`
    * the rest: `Object.new.methods`

### `RangeEnumerator`

```ruby
iterated_values = []

enumerator = RangeEnumerator.new((1..4))

while enumerator.has_next? do
	iterated_values.push(enumerator.next)
end

iterated_values   #=> [1, 2, 3, 4]
```

* **`RangeEnumerator.methods`**: the same as `Class.methods`
* **`RangeEnumerator.new(1..2).methods`**: `has_next?`, `initialize`, `next`
    * the rest: `Object.new.methods`

## Special class

### `Boolean`

```ruby
true.class  #=> Boolean
false.class #=> Boolean
```

A special class that just to hold `true` and `false`. Cannot be instantiate.

### `Null`

```ruby
nil.class   #=> Null
```

A special class that just to hold `nil`. Cannot be instantiate.

### `Method`

(A special dummy class that just holds methods defined by Goby code.)

### `Diggable`

Provides `#dig` method. Currently. `Array` and `Hash` classes' instance can be `Diggable`.

```ruby
[1, 2].dig(0, 1)  #=> TypeError: Expect target to be Diggable, got Integer
```

## Testing framework

### `Spec`

```ruby
require "spec"

Spec.describe Spec do
  it "fails and exit with code 1" do
	expect(1).to eq(2)
  end
end

Spec.run
```

* **`Spec.methods`**: `describe`, `describes`, `instance`, `run`
    * the rest: `Object.methods`
* **`Spec.new.methods`**: `describes`, `initialize`, `run`, `session_successful`, `session_successful=`
    * the rest: `Hash.new.methods`

## Tips & tricks

### Showing methods

```ruby
» "string".methods
#» ["!=", "*", "+", "<", "<=>", "==", "=~", ">", "[]", "[]=", "capitalize", "chop", "concat", "count", "delete", "downcase", "each_byte", "each_char", "each_line", "empty?", "end_with?", "eql?", "fmt", "include?", "insert", "length", "ljust", "match", "new", "replace", "replace_once", "reverse", "rjust", "size", "slice", "split", "start_with", "strip", "to_a", "to_bytes", "to_d", "to_f", "to_i", "to_s", "upcase", "!", "block_given?", "class", "exit", "instance_eval", "instance_variable_get", "instance_variable_set", "is_a?", "methods", "nil?", "object_id", "puts", "raise", "require", "require_relative", "send", "singleton_class", "sleep", "thread"]
```

### Showing class

```ruby
» "string".class
#» String
```

### Showing singleton class

```ruby
» "moji".singleton_class
#» #<Class:#<String:842352325152>>

» "moji".class.singleton_class
#» #<Class:String>
```

### Showing ancestors

```ruby
» Integer.ancestors
#» [Integer, Object]

» "moji".class.ancestors
#» [String, Object]
```

### Showing singleton classes' ancestors

```ruby
» "moji".class.singleton_class.ancestors
#» [#<Class:String>, #<Class:Object>, Class, Object]
```

### Showing object's id

```ruby
» "moji".object_id
#» 842352977920
```

### `#to_json`

```ruby
h = { a: 1, b: [1, "2", [4, 5, nil]]}
h.to_json         # converts hash to JSON
#=> {"a":1, "b":[1, "2", [4, 5, null]]}
```

### Customize `#to_json`

Overwrite the `#to_json` in your class:

```ruby
class JobTitle
  def initialize(name)
    @name = name
  end

  def to_json
    { title: @name }.to_json
  end
end

class Person
  def initialize(name, age)
    @name = name
    @age = age
    @job = JobTitle.new("software engineer")
  end

  def to_json
    { name: @name, age: @age, job: @job }.to_json
  end
end

stan = Person.new("Stan", 23)
h = { person: stan }
h.to_json #=> {"person":{"name":"Stan","job":{"title":"software engineer"},"age":23}}
```

### Lazy enumeration

To avoid N + 1 query.

```ruby
enumerator = [1, 2, 3].lazy.map do |value|
	2 * value
end
result = []

enumerator.each do |value|
	result.push(value)
end

result  #=> [2, 4, 6]
```	

You can call `#lazy.map` on `Array`, `Range`, or `JSON` objects. 

## Styling

### Quick style guide

* UTF-8 should be used.
* Only two spaces `  ` should be used for one indentation.
    * Tab cannot be used for indentation.
* For more, follow [RuboCop's style guide](https://github.com/bbatsov/ruby-style-guide) in principle.

### Document notation

* `Class#instance_method` -- use `#` to represent instance methods in documents
* `Class.class_method`
* `Module.module_method`

### Syntax highlighting

Ready for Vim and Sublime text. You can also use Ruby's syntax highlighting so far.

## References

### Official

* Official site: [https://goby-lang.org/](https://goby-lang.org/)
* Repository: [https://github.com/goby-lang/goby/](https://github.com/goby-lang/goby/)
* DevHints: [https://devhints.io/goby](https://devhints.io/goby) (this page)

### Readings for Goby developers

* [Write an Interpreter in Go](https://interpreterbook.com/)
* [Nand2Tetris II](https://www.coursera.org/learn/nand2tetris2/home/welcome)
* [Ruby under a microscope](http://patshaughnessy.net/ruby-under-a-microscope)
* [YARV's instruction table](http://www.atdot.net/yarv/insnstbl.html)

### JP resource

* [Goby: Rubyライクな言語（1）Gobyを動かしてみる](https://techracho.bpsinc.jp/hachi8833/2017_11_10/47787)
* [Gobyの組み込みクラスにメソッドを追加する方法](https://qiita.com/hanachin_/items/efc1c976a4f5749514ef)


id: go
git_filename: ./go.md
format: md
field_title: Go
field_category: C-like
field_tags: Featured
field_prism_languages: go, bash
field_updated: 2020-06-21
field_updated___timezone: UTC
data:
{"title": "Go", "prism_languages": ["go", "bash"], "weight": -3, "tags": ["Featured"], "category": "C-like", "updated": "2020-06-21", "body": "## Getting started\n{: .-three-column}\n\n### Introduction\n{: .-intro}\n\n- [A tour of Go](https://tour.golang.org/welcome/1) _(tour.golang.org)_\n- [Go repl](https://repl.it/languages/go) _(repl.it)_\n- [Golang wiki](https://go.dev/wiki/) _(go.dev)_\n\n### Hello world\n{: .-prime}\n\n#### hello.go\n{: .-file}\n\n```go\npackage main\n\nimport \"fmt\"\n\nfunc main() {\n  message := greetMe(\"world\")\n  fmt.Println(message)\n}\n\nfunc greetMe(name string) string {\n  return \"Hello, \" + name + \"!\"\n}\n```\n\n```bash\n$ go build\n```\n\nOr try it out in the [Go repl](https://repl.it/languages/go), or [A Tour of Go](https://tour.golang.org/welcome/1).\n\n### Variables\n\n#### Variable declaration\n\n```go\nvar msg string\nvar msg = \"Hello, world!\"\nvar msg string = \"Hello, world!\"\nvar x, y int\nvar x, y int = 1, 2\nvar x, msg = 1, \"Hello, world!\"\nmsg = \"Hello\"\n```\n\n#### Declaration list\n\n``` go\nvar (\n  x int\n  y = 20\n  z int = 30\n  d, e = 40, \"Hello\"\n  f, g string\n)\n```\n\n#### Shortcut of above (Infers type)\n\n```go\nmsg := \"Hello\"\nx, msg := 1, \"Hello\"\n```\n\n### Constants\n\n```go\nconst Phi = 1.618\nconst Size int64 = 1024\nconst x, y = 1, 2\nconst (\n  Pi = 3.14\n  E  = 2.718\n)\nconst (\n  Sunday = iota\n  Monday\n  Tuesday\n  Wednesday\n  Thursday\n  Friday\n  Saturday\n)\n```\n\nConstants can be character, string, boolean, or numeric values.\n\nSee: [Constants](https://tour.golang.org/basics/15)\n\n## Basic types\n{: .-three-column}\n\n### Strings\n\n```go\nstr := \"Hello\"\n```\n\n```go\nstr := `Multiline\nstring`\n```\n\nStrings are of type `string`.\n\n### Numbers\n\n#### Typical types\n\n```go\nnum := 3          // int\nnum := 3.         // float64\nnum := 3 + 4i     // complex128\nnum := byte('a')  // byte (alias for uint8)\n```\n\n#### Other types\n\n```go\nvar u uint = 7        // uint (unsigned)\nvar p float32 = 22.7  // 32-bit float\n```\n\n### Arrays\n\n```go\n// var numbers [5]int\nnumbers := [...]int{0, 0, 0, 0, 0}\n```\n\nArrays have a fixed size.\n\n### Slices\n\n```go\nslice := []int{2, 3, 4}\n```\n\n```go\nslice := []byte(\"Hello\")\n```\n\nSlices have a dynamic size, unlike arrays.\n\n### Pointers\n\n```go\nfunc main () {\n  b := *getPointer()\n  fmt.Println(\"Value is\", b)\n}\n```\n{: data-line=\"2\"}\n\n```go\nfunc getPointer () (myPointer *int) {\n  a := 234\n  return &a\n}\n```\n{: data-line=\"3\"}\n\n```go\na := new(int)\n*a = 234\n```\n{: data-line=\"2\"}\n\nPointers point to a memory location of a variable. Go is fully garbage-collected.\n\nSee: [Pointers](https://tour.golang.org/moretypes/1)\n\n### Type conversions\n\n```go\ni := 2\nf := float64(i)\nu := uint(i)\n```\n\nSee: [Type conversions](https://tour.golang.org/basics/13)\n\n## Flow control\n{: .-three-column}\n\n### Conditional\n\n```go\nif day == \"sunday\" || day == \"saturday\" {\n  rest()\n} else if day == \"monday\" && isTired() {\n  groan()\n} else {\n  work()\n}\n```\n{: data-line=\"1,3,5\"}\n\nSee: [If](https://tour.golang.org/flowcontrol/5)\n\n### Statements in if\n\n```go\nif _, err := doThing(); err != nil {\n  fmt.Println(\"Uh oh\")\n}\n```\n{: data-line=\"1\"}\n\nA condition in an `if` statement can be preceded with a statement before a `;`. Variables declared by the statement are only in scope until the end of the `if`.\n\nSee: [If with a short statement](https://tour.golang.org/flowcontrol/6)\n\n### Switch\n\n```go\nswitch day {\n  case \"sunday\":\n    // cases don't \"fall through\" by default!\n    fallthrough\n\n  case \"saturday\":\n    rest()\n\n  default:\n    work()\n}\n```\n\nSee: [Switch](https://github.com/golang/go/wiki/Switch)\n\n### For loop\n\n```go\nfor count := 0; count <= 10; count++ {\n  fmt.Println(\"My counter is at\", count)\n}\n```\n\nSee: [For loops](https://tour.golang.org/flowcontrol/1)\n\n### For-Range loop\n\n```go\nentry := []string{\"Jack\",\"John\",\"Jones\"}\nfor i, val := range entry {\n  fmt.Printf(\"At position %d, the character %s is present\\n\", i, val)\n}\n```\n\nSee: [For-Range loops](https://gobyexample.com/range)\n\n### While loop\n\n```go\nn := 0\nx := 42\nfor n != x {\n  n := guess()\n}\n```\n\nSee: [Go's \"while\"](https://tour.golang.org/flowcontrol/3)\n\n## Functions\n{: .-three-column}\n\n### Lambdas\n\n```go\nmyfunc := func() bool {\n  return x > 10000\n}\n```\n{: data-line=\"1\"}\n\nFunctions are first class objects.\n\n### Multiple return types\n\n```go\na, b := getMessage()\n```\n\n```go\nfunc getMessage() (a string, b string) {\n  return \"Hello\", \"World\"\n}\n```\n{: data-line=\"2\"}\n\n\n### Named return values\n\n```go\nfunc split(sum int) (x, y int) {\n  x = sum * 4 / 9\n  y = sum - x\n  return\n}\n```\n{: data-line=\"4\"}\n\nBy defining the return value names in the signature, a `return` (no args) will return variables with those names.\n\nSee: [Named return values](https://tour.golang.org/basics/7)\n\n## Packages\n{: .-three-column}\n\n### Importing\n\n```go\nimport \"fmt\"\nimport \"math/rand\"\n```\n\n```go\nimport (\n  \"fmt\"        // gives fmt.Println\n  \"math/rand\"  // gives rand.Intn\n)\n```\n\nBoth are the same.\n\nSee: [Importing](https://tour.golang.org/basics/1)\n\n### Aliases\n\n```go\nimport r \"math/rand\"\n```\n{: data-line=\"1\"}\n\n```go\nr.Intn()\n```\n\n### Exporting names\n\n```go\nfunc Hello () {\n  \u00b7\u00b7\u00b7\n}\n```\n\nExported names begin with capital letters.\n\nSee: [Exported names](https://tour.golang.org/basics/3)\n\n### Packages\n\n```go\npackage hello\n```\n\nEvery package file has to start with `package`.\n\n## Concurrency\n{: .-three-column}\n\n### Goroutines\n\n```go\nfunc main() {\n  // A \"channel\"\n  ch := make(chan string)\n\n  // Start concurrent routines\n  go push(\"Moe\", ch)\n  go push(\"Larry\", ch)\n  go push(\"Curly\", ch)\n\n  // Read 3 results\n  // (Since our goroutines are concurrent,\n  // the order isn't guaranteed!)\n  fmt.Println(<-ch, <-ch, <-ch)\n}\n```\n{: data-line=\"3,6,7,8,13\"}\n\n```go\nfunc push(name string, ch chan string) {\n  msg := \"Hey, \" + name\n  ch <- msg\n}\n```\n{: data-line=\"3\"}\n\nChannels are concurrency-safe communication objects, used in goroutines.\n\nSee: [Goroutines](https://tour.golang.org/concurrency/1), [Channels](https://tour.golang.org/concurrency/2)\n\n### Buffered channels\n\n```go\nch := make(chan int, 2)\nch <- 1\nch <- 2\nch <- 3\n// fatal error:\n// all goroutines are asleep - deadlock!\n```\n{: data-line=\"1\"}\n\nBuffered channels limit the amount of messages it can keep.\n\nSee: [Buffered channels](https://tour.golang.org/concurrency/3)\n\n### Closing channels\n\n#### Closes a channel\n\n```go\nch <- 1\nch <- 2\nch <- 3\nclose(ch)\n```\n{: data-line=\"4\"}\n\n#### Iterates across a channel until its closed\n\n```go\nfor i := range ch {\n  \u00b7\u00b7\u00b7\n}\n```\n{: data-line=\"1\"}\n\n#### Closed if `ok == false`\n\n```go\nv, ok := <- ch\n```\n\nSee: [Range and close](https://tour.golang.org/concurrency/4)\n\n### WaitGroup\n\n```go\nimport \"sync\"\n\nfunc main() {\n  var wg sync.WaitGroup\n  \n  for _, item := range itemList {\n    // Increment WaitGroup Counter\n    wg.Add(1)\n    go doOperation(&wg, item)\n  }\n  // Wait for goroutines to finish\n  wg.Wait()\n  \n}\n```\n{: data-line=\"1,4,8,12\"}\n\n```go\nfunc doOperation(wg *sync.WaitGroup, item string) {\n  defer wg.Done()\n  // do operation on item\n  // ...\n}\n```\n{: data-line=\"2\"}\n\nA WaitGroup waits for a collection of goroutines to finish. The main goroutine calls Add to set the number of goroutines to wait for. The goroutine calls `wg.Done()` when it finishes.\nSee: [WaitGroup](https://golang.org/pkg/sync/#WaitGroup)\n\n\n## Error control\n\n### Defer\n\n```go\nfunc main() {\n  defer fmt.Println(\"Done\")\n  fmt.Println(\"Working...\")\n}\n```\n{: data-line=\"2\"}\n\nDefers running a function until the surrounding function returns.\nThe arguments are evaluated immediately, but the function call is not ran until later.\n\nSee: [Defer, panic and recover](https://blog.golang.org/defer-panic-and-recover)\n\n### Deferring functions\n\n```go\nfunc main() {\n  defer func() {\n    fmt.Println(\"Done\")\n  }()\n  fmt.Println(\"Working...\")\n}\n```\n{: data-line=\"2,3,4\"}\n\nLambdas are better suited for defer blocks.\n\n```go\nfunc main() {\n  var d = int64(0)\n  defer func(d *int64) {\n    fmt.Printf(\"& %v Unix Sec\\n\", *d)\n  }(&d)\n  fmt.Print(\"Done \")\n  d = time.Now().Unix()\n}\n```\n{: data-line=\"3,4,5\"}\nThe defer func uses current value of d, unless we use a pointer to get final value at end of main.\n\n## Structs\n{: .-three-column}\n\n### Defining\n\n```go\ntype Vertex struct {\n  X int\n  Y int\n}\n```\n{: data-line=\"1,2,3,4\"}\n\n```go\nfunc main() {\n  v := Vertex{1, 2}\n  v.X = 4\n  fmt.Println(v.X, v.Y)\n}\n```\n\nSee: [Structs](https://tour.golang.org/moretypes/2)\n\n### Literals\n\n```go\nv := Vertex{X: 1, Y: 2}\n```\n\n```go\n// Field names can be omitted\nv := Vertex{1, 2}\n```\n\n```go\n// Y is implicit\nv := Vertex{X: 1}\n```\n\nYou can also put field names.\n\n### Pointers to structs\n\n```go\nv := &Vertex{1, 2}\nv.X = 2\n```\n\nDoing `v.X` is the same as doing `(*v).X`, when `v` is a pointer.\n\n## Methods\n\n### Receivers\n\n```go\ntype Vertex struct {\n  X, Y float64\n}\n```\n\n```go\nfunc (v Vertex) Abs() float64 {\n  return math.Sqrt(v.X * v.X + v.Y * v.Y)\n}\n```\n{: data-line=\"1\"}\n\n```go\nv := Vertex{1, 2}\nv.Abs()\n```\n\nThere are no classes, but you can define functions with _receivers_.\n\nSee: [Methods](https://tour.golang.org/methods/1)\n\n### Mutation\n\n```go\nfunc (v *Vertex) Scale(f float64) {\n  v.X = v.X * f\n  v.Y = v.Y * f\n}\n```\n{: data-line=\"1\"}\n\n```go\nv := Vertex{6, 12}\nv.Scale(0.5)\n// `v` is updated\n```\n\nBy defining your receiver as a pointer (`*Vertex`), you can do mutations.\n\nSee: [Pointer receivers](https://tour.golang.org/methods/4)\n\n## Interfaces\n\n### A basic interface\n\n```go\ntype Shape interface {\n  Area() float64\n  Perimeter() float64\n}\n```\n\n### Struct\n\n```go\ntype Rectangle struct {\n  Length, Width float64\n}\n```\n\nStruct `Rectangle` implicitly implements interface `Shape` by implementing all of its methods.\n\n### Methods\n\n```go\nfunc (r Rectangle) Area() float64 {\n  return r.Length * r.Width\n}\n\nfunc (r Rectangle) Perimeter() float64 {\n  return 2 * (r.Length + r.Width)\n}\n```\n\nThe methods defined in `Shape` are implemented in `Rectangle`.\n\n### Interface example\n\n```go\nfunc main() {\n  var r Shape = Rectangle{Length: 3, Width: 4}\n  fmt.Printf(\"Type of r: %T, Area: %v, Perimeter: %v.\", r, r.Area(), r.Perimeter())\n}\n```\n\n## References\n\n### Official resources\n{: .-intro}\n\n- [A tour of Go](https://tour.golang.org/welcome/1) _(tour.golang.org)_\n- [Golang wiki](https://github.com/golang/go/wiki/) _(github.com)_\n- [Effective Go](https://golang.org/doc/effective_go.html) _(golang.org)_\n\n### Other links\n{: .-intro}\n\n- [Go by Example](https://gobyexample.com/) _(gobyexample.com)_\n- [Awesome Go](https://awesome-go.com/) _(awesome-go.com)_\n- [JustForFunc Youtube](https://www.youtube.com/channel/UC_BzFbxG2za3bp5NRRRXJSw) _(youtube.com)_\n- [Style Guide](https://github.com/golang/go/wiki/CodeReviewComments) _(github.com)_"}

field_body:
## Getting started
{: .-three-column}

### Introduction
{: .-intro}

- [A tour of Go](https://tour.golang.org/welcome/1) _(tour.golang.org)_
- [Go repl](https://repl.it/languages/go) _(repl.it)_
- [Golang wiki](https://go.dev/wiki/) _(go.dev)_

### Hello world
{: .-prime}

#### hello.go
{: .-file}

```go
package main

import "fmt"

func main() {
  message := greetMe("world")
  fmt.Println(message)
}

func greetMe(name string) string {
  return "Hello, " + name + "!"
}
```

```bash
$ go build
```

Or try it out in the [Go repl](https://repl.it/languages/go), or [A Tour of Go](https://tour.golang.org/welcome/1).

### Variables

#### Variable declaration

```go
var msg string
var msg = "Hello, world!"
var msg string = "Hello, world!"
var x, y int
var x, y int = 1, 2
var x, msg = 1, "Hello, world!"
msg = "Hello"
```

#### Declaration list

``` go
var (
  x int
  y = 20
  z int = 30
  d, e = 40, "Hello"
  f, g string
)
```

#### Shortcut of above (Infers type)

```go
msg := "Hello"
x, msg := 1, "Hello"
```

### Constants

```go
const Phi = 1.618
const Size int64 = 1024
const x, y = 1, 2
const (
  Pi = 3.14
  E  = 2.718
)
const (
  Sunday = iota
  Monday
  Tuesday
  Wednesday
  Thursday
  Friday
  Saturday
)
```

Constants can be character, string, boolean, or numeric values.

See: [Constants](https://tour.golang.org/basics/15)

## Basic types
{: .-three-column}

### Strings

```go
str := "Hello"
```

```go
str := `Multiline
string`
```

Strings are of type `string`.

### Numbers

#### Typical types

```go
num := 3          // int
num := 3.         // float64
num := 3 + 4i     // complex128
num := byte('a')  // byte (alias for uint8)
```

#### Other types

```go
var u uint = 7        // uint (unsigned)
var p float32 = 22.7  // 32-bit float
```

### Arrays

```go
// var numbers [5]int
numbers := [...]int{0, 0, 0, 0, 0}
```

Arrays have a fixed size.

### Slices

```go
slice := []int{2, 3, 4}
```

```go
slice := []byte("Hello")
```

Slices have a dynamic size, unlike arrays.

### Pointers

```go
func main () {
  b := *getPointer()
  fmt.Println("Value is", b)
}
```
{: data-line="2"}

```go
func getPointer () (myPointer *int) {
  a := 234
  return &a
}
```
{: data-line="3"}

```go
a := new(int)
*a = 234
```
{: data-line="2"}

Pointers point to a memory location of a variable. Go is fully garbage-collected.

See: [Pointers](https://tour.golang.org/moretypes/1)

### Type conversions

```go
i := 2
f := float64(i)
u := uint(i)
```

See: [Type conversions](https://tour.golang.org/basics/13)

## Flow control
{: .-three-column}

### Conditional

```go
if day == "sunday" || day == "saturday" {
  rest()
} else if day == "monday" && isTired() {
  groan()
} else {
  work()
}
```
{: data-line="1,3,5"}

See: [If](https://tour.golang.org/flowcontrol/5)

### Statements in if

```go
if _, err := doThing(); err != nil {
  fmt.Println("Uh oh")
}
```
{: data-line="1"}

A condition in an `if` statement can be preceded with a statement before a `;`. Variables declared by the statement are only in scope until the end of the `if`.

See: [If with a short statement](https://tour.golang.org/flowcontrol/6)

### Switch

```go
switch day {
  case "sunday":
    // cases don't "fall through" by default!
    fallthrough

  case "saturday":
    rest()

  default:
    work()
}
```

See: [Switch](https://github.com/golang/go/wiki/Switch)

### For loop

```go
for count := 0; count <= 10; count++ {
  fmt.Println("My counter is at", count)
}
```

See: [For loops](https://tour.golang.org/flowcontrol/1)

### For-Range loop

```go
entry := []string{"Jack","John","Jones"}
for i, val := range entry {
  fmt.Printf("At position %d, the character %s is present\n", i, val)
}
```

See: [For-Range loops](https://gobyexample.com/range)

### While loop

```go
n := 0
x := 42
for n != x {
  n := guess()
}
```

See: [Go's "while"](https://tour.golang.org/flowcontrol/3)

## Functions
{: .-three-column}

### Lambdas

```go
myfunc := func() bool {
  return x > 10000
}
```
{: data-line="1"}

Functions are first class objects.

### Multiple return types

```go
a, b := getMessage()
```

```go
func getMessage() (a string, b string) {
  return "Hello", "World"
}
```
{: data-line="2"}


### Named return values

```go
func split(sum int) (x, y int) {
  x = sum * 4 / 9
  y = sum - x
  return
}
```
{: data-line="4"}

By defining the return value names in the signature, a `return` (no args) will return variables with those names.

See: [Named return values](https://tour.golang.org/basics/7)

## Packages
{: .-three-column}

### Importing

```go
import "fmt"
import "math/rand"
```

```go
import (
  "fmt"        // gives fmt.Println
  "math/rand"  // gives rand.Intn
)
```

Both are the same.

See: [Importing](https://tour.golang.org/basics/1)

### Aliases

```go
import r "math/rand"
```
{: data-line="1"}

```go
r.Intn()
```

### Exporting names

```go
func Hello () {
  ···
}
```

Exported names begin with capital letters.

See: [Exported names](https://tour.golang.org/basics/3)

### Packages

```go
package hello
```

Every package file has to start with `package`.

## Concurrency
{: .-three-column}

### Goroutines

```go
func main() {
  // A "channel"
  ch := make(chan string)

  // Start concurrent routines
  go push("Moe", ch)
  go push("Larry", ch)
  go push("Curly", ch)

  // Read 3 results
  // (Since our goroutines are concurrent,
  // the order isn't guaranteed!)
  fmt.Println(<-ch, <-ch, <-ch)
}
```
{: data-line="3,6,7,8,13"}

```go
func push(name string, ch chan string) {
  msg := "Hey, " + name
  ch <- msg
}
```
{: data-line="3"}

Channels are concurrency-safe communication objects, used in goroutines.

See: [Goroutines](https://tour.golang.org/concurrency/1), [Channels](https://tour.golang.org/concurrency/2)

### Buffered channels

```go
ch := make(chan int, 2)
ch <- 1
ch <- 2
ch <- 3
// fatal error:
// all goroutines are asleep - deadlock!
```
{: data-line="1"}

Buffered channels limit the amount of messages it can keep.

See: [Buffered channels](https://tour.golang.org/concurrency/3)

### Closing channels

#### Closes a channel

```go
ch <- 1
ch <- 2
ch <- 3
close(ch)
```
{: data-line="4"}

#### Iterates across a channel until its closed

```go
for i := range ch {
  ···
}
```
{: data-line="1"}

#### Closed if `ok == false`

```go
v, ok := <- ch
```

See: [Range and close](https://tour.golang.org/concurrency/4)

### WaitGroup

```go
import "sync"

func main() {
  var wg sync.WaitGroup
  
  for _, item := range itemList {
    // Increment WaitGroup Counter
    wg.Add(1)
    go doOperation(&wg, item)
  }
  // Wait for goroutines to finish
  wg.Wait()
  
}
```
{: data-line="1,4,8,12"}

```go
func doOperation(wg *sync.WaitGroup, item string) {
  defer wg.Done()
  // do operation on item
  // ...
}
```
{: data-line="2"}

A WaitGroup waits for a collection of goroutines to finish. The main goroutine calls Add to set the number of goroutines to wait for. The goroutine calls `wg.Done()` when it finishes.
See: [WaitGroup](https://golang.org/pkg/sync/#WaitGroup)


## Error control

### Defer

```go
func main() {
  defer fmt.Println("Done")
  fmt.Println("Working...")
}
```
{: data-line="2"}

Defers running a function until the surrounding function returns.
The arguments are evaluated immediately, but the function call is not ran until later.

See: [Defer, panic and recover](https://blog.golang.org/defer-panic-and-recover)

### Deferring functions

```go
func main() {
  defer func() {
    fmt.Println("Done")
  }()
  fmt.Println("Working...")
}
```
{: data-line="2,3,4"}

Lambdas are better suited for defer blocks.

```go
func main() {
  var d = int64(0)
  defer func(d *int64) {
    fmt.Printf("& %v Unix Sec\n", *d)
  }(&d)
  fmt.Print("Done ")
  d = time.Now().Unix()
}
```
{: data-line="3,4,5"}
The defer func uses current value of d, unless we use a pointer to get final value at end of main.

## Structs
{: .-three-column}

### Defining

```go
type Vertex struct {
  X int
  Y int
}
```
{: data-line="1,2,3,4"}

```go
func main() {
  v := Vertex{1, 2}
  v.X = 4
  fmt.Println(v.X, v.Y)
}
```

See: [Structs](https://tour.golang.org/moretypes/2)

### Literals

```go
v := Vertex{X: 1, Y: 2}
```

```go
// Field names can be omitted
v := Vertex{1, 2}
```

```go
// Y is implicit
v := Vertex{X: 1}
```

You can also put field names.

### Pointers to structs

```go
v := &Vertex{1, 2}
v.X = 2
```

Doing `v.X` is the same as doing `(*v).X`, when `v` is a pointer.

## Methods

### Receivers

```go
type Vertex struct {
  X, Y float64
}
```

```go
func (v Vertex) Abs() float64 {
  return math.Sqrt(v.X * v.X + v.Y * v.Y)
}
```
{: data-line="1"}

```go
v := Vertex{1, 2}
v.Abs()
```

There are no classes, but you can define functions with _receivers_.

See: [Methods](https://tour.golang.org/methods/1)

### Mutation

```go
func (v *Vertex) Scale(f float64) {
  v.X = v.X * f
  v.Y = v.Y * f
}
```
{: data-line="1"}

```go
v := Vertex{6, 12}
v.Scale(0.5)
// `v` is updated
```

By defining your receiver as a pointer (`*Vertex`), you can do mutations.

See: [Pointer receivers](https://tour.golang.org/methods/4)

## Interfaces

### A basic interface

```go
type Shape interface {
  Area() float64
  Perimeter() float64
}
```

### Struct

```go
type Rectangle struct {
  Length, Width float64
}
```

Struct `Rectangle` implicitly implements interface `Shape` by implementing all of its methods.

### Methods

```go
func (r Rectangle) Area() float64 {
  return r.Length * r.Width
}

func (r Rectangle) Perimeter() float64 {
  return 2 * (r.Length + r.Width)
}
```

The methods defined in `Shape` are implemented in `Rectangle`.

### Interface example

```go
func main() {
  var r Shape = Rectangle{Length: 3, Width: 4}
  fmt.Printf("Type of r: %T, Area: %v, Perimeter: %v.", r, r.Area(), r.Perimeter())
}
```

## References

### Official resources
{: .-intro}

- [A tour of Go](https://tour.golang.org/welcome/1) _(tour.golang.org)_
- [Golang wiki](https://github.com/golang/go/wiki/) _(github.com)_
- [Effective Go](https://golang.org/doc/effective_go.html) _(golang.org)_

### Other links
{: .-intro}

- [Go by Example](https://gobyexample.com/) _(gobyexample.com)_
- [Awesome Go](https://awesome-go.com/) _(awesome-go.com)_
- [JustForFunc Youtube](https://www.youtube.com/channel/UC_BzFbxG2za3bp5NRRRXJSw) _(youtube.com)_
- [Style Guide](https://github.com/golang/go/wiki/CodeReviewComments) _(github.com)_


id: gnupg
git_filename: ./gnupg.md
format: md
field_title: GnuPG
field_category: CLI
field_intro: [GnuPG](https://gnupg.org/) is a complete and free implementation of the OpenPGP standard.
field_updated: 2017-10-22
field_updated___timezone: UTC
data:
{"title": "GnuPG", "category": "CLI", "tags": [], "updated": "2017-10-22", "weight": 0, "intro": "[GnuPG](https://gnupg.org/) is a complete and free implementation of the OpenPGP standard.\n", "body": "Basics\n---------------\n\n### Exporting keys\n\n```bash\ngpg -o key.gpg --export <KEY ID>\n```\n\n__Export key in ASCII:__\n\n```bash\ngpg -o key.asc --armor --export <KEY ID>\n```\n\n__Note:__ Omitting the `-o|--output` option will print the key to `stdout`.\n\n### Importing keys\n\n```bash\ngpg --import key.gpg\ngpg --import key.asc\n```\n\nOnly merge updates for keys already in key-ring:\n\n```bash\ngpg --import key.asc --import-options merge-only\n```\n\n### Managing your keyring\n\nGenerate a new key:\n{: .-setup}\n\n```bash\ngpg --gen-key\n# or, generate a new key with dialogs for all options\ngpg --full-gen-key\n```\n\nList public keys:\n\n```bash\ngpg -k\ngpg --list-keys\n```\n\nList secret keys:\n\n```bash\ngpg -K\ngpg --list-secret-keys\n```\n\n\n### Using a keyserver\n\nImport keys from keyserver:\n{: .-setup}\n\n```bash\ngpg --receive-keys <KEY IDS>\n```\n\nUpload keys to keyserver:\n\n```bash\ngpg --send-keys <KEY IDS>\n```\n\nRequest updates from keyserver for keys already in your keyring:\n\n```bash\ngpg --refresh-keys\n```\n\nSearch keys from keyserver:\n\n```bash\ngpg --search-keys \"<SEARCH STRING>\"\n```\n\nOverride keyserver from `~/.gnupg/gpg.conf`\n\n```bash\ngpg --keyserver <URL> ...\n```\n\n### Trusting a key\n\n```bash\ngpg --edit-key <KEY ID>\n# In the interactive prompt:\ngpg> trust\ngpg> save\n```\n\n__NOTE:__ You can use the owner's email or name (or part thereof) instead of the key ID for `--edit-key`\n\n\nEncrypting\n---------\n{: .-two-column}\n\n### Public key encryption\nThis will produce an encrypted file, `secret.txt.gpg`, that can only be decrypted by the recipient:\n\n```bash\ngpg -e -o secret.txt.gpg -r <RECIPIENT> secret.txt\n```\n\nFor `<RECIPIENT>` you can use their key ID, their email, or their name (or part thereof).\n\n```bash\ngpg -e -r <KEY ID> ...\ngpg -e -r \"Bez\" ...\ngpg -e -r \"bezalelhermoso@gmail.com\" ...\n```\n\nSpecifying multiple recipients\n\n```bash\ngpg -e -r <RECIPIENT> -r <ANOTHER RECIPIENT> ... secret.txt\n```\n\n__NOTE__: Omitting `-o|--output` will produce an encrypted file named `<ORIGINAL FILENAME>.gpg` by default.\n\n### Symmetric encryption\n\nEncrypt file using a shared key. You will be prompted for a passphrase.\n\n```bash\ngpg --symmetric secret.txt\n# or\ngpg -c secret.txt\n```\n\nDecrypting\n---------\n{: .-one-column}\n\n### Decrypting a file\n\n```bash\ngpg -d -o secret.txt secret.txt.gpg\n```\n\nIf the file is encrypted via symmetric encryption, you will be prompted for the passphrase.\n\n__NOTE__: Omitting `-o|--output` will print the unencrypted contents to `stdout`\n\nSigning & Verifying\n---------\n{: .-two-column}\n\n### Signing\n\n```bash\ngpg -o signed-file.txt.gpg -s file.txt\n```\n\nThis can be used during encryption to also sign encrypted files:\n\n```bash\ngpg -s -o secret.txt.gpg \\\n  -r <RECIPIENT> secret.txt\n```\n\n### Verifying a signature\n\n```bash\ngpg --verify file.txt.gpg\n```\n\n### Viewing content of signed file\n\n```bash\ngpg -d signed-file.txt.gpg\n```\n\nMiscellaneous\n----------\n{: .-two-column}\n\n### Components\n\nList all components:\n{: .-setup}\n\n```bash\ngpgconf --list-components\n```\n\nKill a component:\n\n```bash\ngpgconf --kill <COMPONENT> # i.e. gpgconf --kill dirmngr\n```\n\nKill all components:\n```bash\ngpgconf --kill all\n```\n\n### Parsing keyring data\n\nUse `--with-colons` to produce an output that can easily be parsed i.e. with `awk`, `grep`. Fields are colon-separated.\n\n```bash\ngpg -k --with-colons\n```\n\nField Quick Reference:\n\n| Field # | Description |\n| 1       | Record type |\n| 2       | Validity |\n| 3       | Key length in bits |\n| 4       | Public key algorithm |\n| 5       | Key ID |\n| 6       | Creation date |\n| 7       | Expiry date |\n| 8       | Certificate S/N, UID hash, trust signature info |\n| 9       | Ownertrust |\n| 10      | User ID |\n| 11      | Signature class |\n| 12      | Key capabilities |\n| 13      | Issuer fingerprint |\n| 14      | Flag field |\n| 15      | S/N of token |\n| 16      | Hash algorithm |\n| 17      | Curve name |\n| 18      | Compliance flags |\n| 19      | Last update timestamp |\n| 20      | Origin |\n\nSee [GnuPG Details](https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg.git;a=blob_plain;f=doc/DETAILS) for more details."}

field_body:
Basics
---------------

### Exporting keys

```bash
gpg -o key.gpg --export <KEY ID>
```

__Export key in ASCII:__

```bash
gpg -o key.asc --armor --export <KEY ID>
```

__Note:__ Omitting the `-o|--output` option will print the key to `stdout`.

### Importing keys

```bash
gpg --import key.gpg
gpg --import key.asc
```

Only merge updates for keys already in key-ring:

```bash
gpg --import key.asc --import-options merge-only
```

### Managing your keyring

Generate a new key:
{: .-setup}

```bash
gpg --gen-key
# or, generate a new key with dialogs for all options
gpg --full-gen-key
```

List public keys:

```bash
gpg -k
gpg --list-keys
```

List secret keys:

```bash
gpg -K
gpg --list-secret-keys
```


### Using a keyserver

Import keys from keyserver:
{: .-setup}

```bash
gpg --receive-keys <KEY IDS>
```

Upload keys to keyserver:

```bash
gpg --send-keys <KEY IDS>
```

Request updates from keyserver for keys already in your keyring:

```bash
gpg --refresh-keys
```

Search keys from keyserver:

```bash
gpg --search-keys "<SEARCH STRING>"
```

Override keyserver from `~/.gnupg/gpg.conf`

```bash
gpg --keyserver <URL> ...
```

### Trusting a key

```bash
gpg --edit-key <KEY ID>
# In the interactive prompt:
gpg> trust
gpg> save
```

__NOTE:__ You can use the owner's email or name (or part thereof) instead of the key ID for `--edit-key`


Encrypting
---------
{: .-two-column}

### Public key encryption
This will produce an encrypted file, `secret.txt.gpg`, that can only be decrypted by the recipient:

```bash
gpg -e -o secret.txt.gpg -r <RECIPIENT> secret.txt
```

For `<RECIPIENT>` you can use their key ID, their email, or their name (or part thereof).

```bash
gpg -e -r <KEY ID> ...
gpg -e -r "Bez" ...
gpg -e -r "bezalelhermoso@gmail.com" ...
```

Specifying multiple recipients

```bash
gpg -e -r <RECIPIENT> -r <ANOTHER RECIPIENT> ... secret.txt
```

__NOTE__: Omitting `-o|--output` will produce an encrypted file named `<ORIGINAL FILENAME>.gpg` by default.

### Symmetric encryption

Encrypt file using a shared key. You will be prompted for a passphrase.

```bash
gpg --symmetric secret.txt
# or
gpg -c secret.txt
```

Decrypting
---------
{: .-one-column}

### Decrypting a file

```bash
gpg -d -o secret.txt secret.txt.gpg
```

If the file is encrypted via symmetric encryption, you will be prompted for the passphrase.

__NOTE__: Omitting `-o|--output` will print the unencrypted contents to `stdout`

Signing & Verifying
---------
{: .-two-column}

### Signing

```bash
gpg -o signed-file.txt.gpg -s file.txt
```

This can be used during encryption to also sign encrypted files:

```bash
gpg -s -o secret.txt.gpg \
  -r <RECIPIENT> secret.txt
```

### Verifying a signature

```bash
gpg --verify file.txt.gpg
```

### Viewing content of signed file

```bash
gpg -d signed-file.txt.gpg
```

Miscellaneous
----------
{: .-two-column}

### Components

List all components:
{: .-setup}

```bash
gpgconf --list-components
```

Kill a component:

```bash
gpgconf --kill <COMPONENT> # i.e. gpgconf --kill dirmngr
```

Kill all components:
```bash
gpgconf --kill all
```

### Parsing keyring data

Use `--with-colons` to produce an output that can easily be parsed i.e. with `awk`, `grep`. Fields are colon-separated.

```bash
gpg -k --with-colons
```

Field Quick Reference:

| Field # | Description |
| 1       | Record type |
| 2       | Validity |
| 3       | Key length in bits |
| 4       | Public key algorithm |
| 5       | Key ID |
| 6       | Creation date |
| 7       | Expiry date |
| 8       | Certificate S/N, UID hash, trust signature info |
| 9       | Ownertrust |
| 10      | User ID |
| 11      | Signature class |
| 12      | Key capabilities |
| 13      | Issuer fingerprint |
| 14      | Flag field |
| 15      | S/N of token |
| 16      | Hash algorithm |
| 17      | Curve name |
| 18      | Compliance flags |
| 19      | Last update timestamp |
| 20      | Origin |

See [GnuPG Details](https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg.git;a=blob_plain;f=doc/DETAILS) for more details.


id: git-tricks
git_filename: ./git-tricks.md
format: md
field_title: Git tricks
field_category: Git
data:
{"title": "Git tricks", "category": "Git", "body": "### Refs\n\n    HEAD^       # 1 commit before head\n    HEAD^^      # 2 commits before head\n    HEAD~5      # 5 commits before head\n\n### Branches\n\n    # create a new branch\n      git checkout -b $branchname\n      git push origin $branchname --set-upstream\n\n    # get a remote branch\n      git fetch origin\n      git checkout --track origin/$branchname\n\n    # delete local remote-tracking branches (lol)\n      git remote prune origin\n\n    # list merged branches\n      git branch -a --merged\n\n    # delete remote branch\n      git push origin :$branchname\n      \n    # go back to previous branch\n      git checkout -\n      \n### Collaboration\n\n    # Rebase your changes on top of the remote master\n      git pull --rebase upstream master\n      \n    # Squash multiple commits into one for a cleaner git log\n    # (on the following screen change the word pick to either 'f' or 's')\n      git rebase -i $commit_ref\n\nSubmodules\n----------\n\n### Submodules\n\n    # Import .gitmodules\n      git submodule init\n\n    # Clone missing submodules, and checkout commits\n      git submodule update --init --recursive\n\n    # Update remote URLs in .gitmodules\n    # (Use when you changed remotes in submodules)\n      git submodule sync\n\nDiff\n----\n\n### Diff with stats\n\n    git diff --stat\n    app/a.txt    | 2 +-\n    app/b.txt    | 8 ++----\n    2 files changed, 10 insertions(+), 84 deletions(-)\n\n### Just filenames\n\n    git diff --summary\n\nLog options\n-----------\n\n### Options\n\n    --oneline\n      e11e9f9 Commit message here\n\n    --decorate\n      shows \"(origin/master)\"\n\n    --graph\n      shows graph lines\n\n    --date=relative\n      \"2 hours ago\"\n\nMisc\n----\n\n### Cherry pick\n\n    git rebase 76acada^\n\n### Misc\n\n    # get current sha1 (?)\n      git show-ref HEAD -s\n\n    # show single commit info\n      git log -1 f5a960b5\n\n    # Go back up to root directory\n      cd \"$(git rev-parse --show-top-level)\"\n\n## Short log\n\n     $ git shortlog\n     $ git shortlog HEAD~20..    # last 20 commits\n\n     James Dean (1):\n         Commit here\n         Commit there\n\n     Frank Sinatra (5):\n         Another commit\n         This other commit\n\n## Bisect\n\n    git bisect start HEAD HEAD~6\n    git bisect run npm test\n    git checkout refs/bisect/bad   # this is where it screwed up\n    git bisect reset\n\n### Manual bisection\n\n    git bisect start\n    git bisect good   # current version is good\n\n    git checkout HEAD~8\n    npm test          # see if it's good\n    git bisect bad    # current version is bad\n\n    git bisect reset  # abort\n\n### Searching\n\n    git log --grep=\"fixes things\"  # search in commit messages\n    git log -S\"window.alert\"       # search in code\n    git log -G\"foo.*\"              # search in code (regex)\n\n### GPG signing\n\n    git config set user.signingkey <GPG KEY ID>       # Sets GPG key to use for signing\n\n    git commit -m \"Implement feature Y\" --gpg-sign    # Or -S, GPG signs commit\n\n    git config set commit.gpgsign true                # Sign commits by default\n    git commit -m \"Implement feature Y\" --no-gpg-sign # Do not sign"}

field_body:
### Refs

    HEAD^       # 1 commit before head
    HEAD^^      # 2 commits before head
    HEAD~5      # 5 commits before head

### Branches

    # create a new branch
      git checkout -b $branchname
      git push origin $branchname --set-upstream

    # get a remote branch
      git fetch origin
      git checkout --track origin/$branchname

    # delete local remote-tracking branches (lol)
      git remote prune origin

    # list merged branches
      git branch -a --merged

    # delete remote branch
      git push origin :$branchname
      
    # go back to previous branch
      git checkout -
      
### Collaboration

    # Rebase your changes on top of the remote master
      git pull --rebase upstream master
      
    # Squash multiple commits into one for a cleaner git log
    # (on the following screen change the word pick to either 'f' or 's')
      git rebase -i $commit_ref

Submodules
----------

### Submodules

    # Import .gitmodules
      git submodule init

    # Clone missing submodules, and checkout commits
      git submodule update --init --recursive

    # Update remote URLs in .gitmodules
    # (Use when you changed remotes in submodules)
      git submodule sync

Diff
----

### Diff with stats

    git diff --stat
    app/a.txt    | 2 +-
    app/b.txt    | 8 ++----
    2 files changed, 10 insertions(+), 84 deletions(-)

### Just filenames

    git diff --summary

Log options
-----------

### Options

    --oneline
      e11e9f9 Commit message here

    --decorate
      shows "(origin/master)"

    --graph
      shows graph lines

    --date=relative
      "2 hours ago"

Misc
----

### Cherry pick

    git rebase 76acada^

### Misc

    # get current sha1 (?)
      git show-ref HEAD -s

    # show single commit info
      git log -1 f5a960b5

    # Go back up to root directory
      cd "$(git rev-parse --show-top-level)"

## Short log

     $ git shortlog
     $ git shortlog HEAD~20..    # last 20 commits

     James Dean (1):
         Commit here
         Commit there

     Frank Sinatra (5):
         Another commit
         This other commit

## Bisect

    git bisect start HEAD HEAD~6
    git bisect run npm test
    git checkout refs/bisect/bad   # this is where it screwed up
    git bisect reset

### Manual bisection

    git bisect start
    git bisect good   # current version is good

    git checkout HEAD~8
    npm test          # see if it's good
    git bisect bad    # current version is bad

    git bisect reset  # abort

### Searching

    git log --grep="fixes things"  # search in commit messages
    git log -S"window.alert"       # search in code
    git log -G"foo.*"              # search in code (regex)

### GPG signing

    git config set user.signingkey <GPG KEY ID>       # Sets GPG key to use for signing

    git commit -m "Implement feature Y" --gpg-sign    # Or -S, GPG signs commit

    git config set commit.gpgsign true                # Sign commits by default
    git commit -m "Implement feature Y" --no-gpg-sign # Do not sign


id: git-revisions
git_filename: ./git-revisions.md
format: md
field_title: Git revisions
field_category: Git
field_updated: 2017-10-11
field_updated___timezone: UTC
data:
{"title": "Git revisions", "category": "Git", "updated": "2017-10-11", "description": "", "intro": "A list of revision specifications you can use with `git log` and many other Git commands. Summarized from `gitrevisions(7)` man page.\n", "body": "### Example usages\n\n| _`git log`_ `master...develop`  | inspect differences in branches         |\n| _`git rebase -i`_ `HEAD~3`      | rebase last 3 commits                   |\n| _`git reset --hard`_ `HEAD@{2}` | undo last operation that changed HEAD   |\n| _`git checkout`_ `v2^{}`        | checkout the `v2` tag (not `v2` branch) |\n{: .-mute-em}\n\nThe 3rd argument in each of these commands is a `gitrevision`. These gitrevisions can be passed to many Git commands.\n\n### Common git revisions\n\n| Reference                    | Description                                     |\n| ---                          | ---                                             |\n| _`git show`_ `dae68e1`       | sha1                                            |\n| _`git show`_ `HEAD`          | reference                                       |\n| _`git show`_ `v1.0.0`        | tag                                             |\n| ---                          | ---                                             |\n| _`git show`_ `master`        | local branch                                    |\n| _`git show`_ `origin/master` | remote branch                                   |\n| ---                          | ---                                             |\n| _`git show`_ `master~2`      | 2 commits back from master                      |\n| ---                          | ---                                             |\n| _`git show`_ `master..fix`   | reachable from *fix* but not *master*           |\n| _`git show`_ `master...fix`  | reachable from *fix* and *master*, but not both |\n{: .-mute-em}\n\nThese are just the common ones, there's a lot more below! (These work in many other commands, not just `git show`.)\n\n## Reference\n\n### Commits\n\n| _`git checkout`_ `dae68e1` | sha1 |\n{: .-mute-em}\n\n### References\n\n| Example                          | Description                       |\n| ---                              | ---                               |\n| _`git checkout`_ `HEAD`          | reference                         |\n| _`git checkout`_ `master`        | branch                            |\n| _`git checkout`_ `v1.0.0`        | tag                               |\n| ---                              | ---                               |\n| _`git checkout`_ `origin/master` | aka, *refs/remotes/origin/master* |\n| _`git checkout`_ `heads/master`  | aka, *refs/heads/master*          |\n{: .-mute-em}\n\n### Searching back\n\n| Example                               | Description                              |\n| ---                                   | ---                                      |\n| _`git checkout`_ `master@{yesterday}` | also *1 day ago*, etc                    |\n| _`git checkout`_ `master@{2}`         | 2nd prior value                          |\n| _`git checkout`_ `master@{push}`      | where *master* would push to             |\n| ---                                   | ---                                      |\n| _`git checkout`_ `master^`            | parent commit                            |\n| _`git checkout`_ `master^2`           | 2nd parent, eg, what it merged           |\n| _`git checkout`_ `master~5`           | 5 parents back                           |\n| _`git checkout`_ `master^0`           | this commit; disambiguates from tags     |\n| ---                                   | ---                                      |\n| _`git checkout`_ `v0.99.8^{tag}`      | can be *commit*, *tag*, *tree*, *object* |\n| _`git checkout`_ `v0.99.8^{}`         | defaults to *{tag}*                      |\n| ---                                   | ---                                      |\n| _`git checkout`_ `\":/fix bug\"`        | searches commit messages                 |\n{: .-mute-em}\n\n### Other\n\n| `HEAD:README` | ...          |\n| `0:README`    | (0 to 3) ... |\n\n## Ranges\n\n### Ranges\n\n| _`git log`_ `master`       | reachable parents from master                   |\n| _`git log`_ `^master`      | exclude reachable parents from master           |\n| _`git log`_ `master..fix`  | reachable from *fix* but not *master*           |\n| _`git log`_ `master...fix` | reachable from *fix* and *master*, but not both |\n| _`git log`_ `HEAD^@`       | parents of *HEAD*                               |\n| _`git log`_ `HEAD^!`       | *HEAD*, then excluding parents's ancestors      |\n| _`git log`_ `HEAD^{:/fix}` | search previous *HEAD*s matching criteria       |\n{: .-mute-em}\n\n### Ranges illustration\n\n```nohighlight\nA \u2500\u252c\u2500 E \u2500\u2500 F \u2500\u2500 G   master\n   \u2502\n   \u2514\u2500 B \u2500\u2500 C \u2500\u2500 D   fix\n```\n{: .-box-chars.-setup}\n\n| _`git log`_ `master..fix`  | BCD         |\n| _`git log`_ `master...fix` | BCD and EFG |\n{: .-mute-em}\n\n## References\n\n* [Git Tools - Revision Selection](https://www.kernel.org/pub/software/scm/git/docs/gitrevisions.html) _(git-scm.com)_\n* [gitrevisions(7)](https://www.kernel.org/pub/software/scm/git/docs/gitrevisions.html) _(kernel.org)_"}

field_intro:
A list of revision specifications you can use with `git log` and many other Git commands. Summarized from `gitrevisions(7)` man page.

field_body:
### Example usages

| _`git log`_ `master...develop`  | inspect differences in branches         |
| _`git rebase -i`_ `HEAD~3`      | rebase last 3 commits                   |
| _`git reset --hard`_ `HEAD@{2}` | undo last operation that changed HEAD   |
| _`git checkout`_ `v2^{}`        | checkout the `v2` tag (not `v2` branch) |
{: .-mute-em}

The 3rd argument in each of these commands is a `gitrevision`. These gitrevisions can be passed to many Git commands.

### Common git revisions

| Reference                    | Description                                     |
| ---                          | ---                                             |
| _`git show`_ `dae68e1`       | sha1                                            |
| _`git show`_ `HEAD`          | reference                                       |
| _`git show`_ `v1.0.0`        | tag                                             |
| ---                          | ---                                             |
| _`git show`_ `master`        | local branch                                    |
| _`git show`_ `origin/master` | remote branch                                   |
| ---                          | ---                                             |
| _`git show`_ `master~2`      | 2 commits back from master                      |
| ---                          | ---                                             |
| _`git show`_ `master..fix`   | reachable from *fix* but not *master*           |
| _`git show`_ `master...fix`  | reachable from *fix* and *master*, but not both |
{: .-mute-em}

These are just the common ones, there's a lot more below! (These work in many other commands, not just `git show`.)

## Reference

### Commits

| _`git checkout`_ `dae68e1` | sha1 |
{: .-mute-em}

### References

| Example                          | Description                       |
| ---                              | ---                               |
| _`git checkout`_ `HEAD`          | reference                         |
| _`git checkout`_ `master`        | branch                            |
| _`git checkout`_ `v1.0.0`        | tag                               |
| ---                              | ---                               |
| _`git checkout`_ `origin/master` | aka, *refs/remotes/origin/master* |
| _`git checkout`_ `heads/master`  | aka, *refs/heads/master*          |
{: .-mute-em}

### Searching back

| Example                               | Description                              |
| ---                                   | ---                                      |
| _`git checkout`_ `master@{yesterday}` | also *1 day ago*, etc                    |
| _`git checkout`_ `master@{2}`         | 2nd prior value                          |
| _`git checkout`_ `master@{push}`      | where *master* would push to             |
| ---                                   | ---                                      |
| _`git checkout`_ `master^`            | parent commit                            |
| _`git checkout`_ `master^2`           | 2nd parent, eg, what it merged           |
| _`git checkout`_ `master~5`           | 5 parents back                           |
| _`git checkout`_ `master^0`           | this commit; disambiguates from tags     |
| ---                                   | ---                                      |
| _`git checkout`_ `v0.99.8^{tag}`      | can be *commit*, *tag*, *tree*, *object* |
| _`git checkout`_ `v0.99.8^{}`         | defaults to *{tag}*                      |
| ---                                   | ---                                      |
| _`git checkout`_ `":/fix bug"`        | searches commit messages                 |
{: .-mute-em}

### Other

| `HEAD:README` | ...          |
| `0:README`    | (0 to 3) ... |

## Ranges

### Ranges

| _`git log`_ `master`       | reachable parents from master                   |
| _`git log`_ `^master`      | exclude reachable parents from master           |
| _`git log`_ `master..fix`  | reachable from *fix* but not *master*           |
| _`git log`_ `master...fix` | reachable from *fix* and *master*, but not both |
| _`git log`_ `HEAD^@`       | parents of *HEAD*                               |
| _`git log`_ `HEAD^!`       | *HEAD*, then excluding parents's ancestors      |
| _`git log`_ `HEAD^{:/fix}` | search previous *HEAD*s matching criteria       |
{: .-mute-em}

### Ranges illustration

```nohighlight
A ─┬─ E ── F ── G   master
   │
   └─ B ── C ── D   fix
```
{: .-box-chars.-setup}

| _`git log`_ `master..fix`  | BCD         |
| _`git log`_ `master...fix` | BCD and EFG |
{: .-mute-em}

## References

* [Git Tools - Revision Selection](https://www.kernel.org/pub/software/scm/git/docs/gitrevisions.html) _(git-scm.com)_
* [gitrevisions(7)](https://www.kernel.org/pub/software/scm/git/docs/gitrevisions.html) _(kernel.org)_


id: git-log
git_filename: ./git-log.md
format: md
field_title: git log
field_category: Git
data:
{"title": "git log", "category": "Git", "body": "### Revision ranges\n\n```bash\ngit log master             # branch\ngit log origin/master      # branch, remote\ngit log v1.0.0             # tag\n\ngit log master develop\n\ngit log v2.0..master       # reachable from *master* but not *v2.0*\ngit log v2.0...master      # reachable from *master* and *v2.0*, but not both\n```\n\nSee [gitrevisions](./git-revisions).\n\n### Basic filters\n\n```bash\n-n, --max-count=2\n    --skip=2\n```\n\n```bash\n    --since=\"1 week ago\"\n    --until=\"yesterday\"\n```\n\n```bash\n    --author=\"Rico\"\n    --committer=\"Rico\"\n```\n\n### Search\n\n```bash\n    --grep=\"Merge pull request\"   # in commit messages\n    -S\"console.log\"               # in code\n    -G\"foo.*\"                     # in code (regex)\n```\n\n```bash\n    --invert-grep\n    --all-match                   # AND in multi --grep\n```\n\n### Limiting\n\n```bash\n    --merges\n    --no-merges\n```\n\n```bash\n    --first-parent          # no stuff from merged branches\n```\n\n```bash\n    --branches=\"feature/*\"\n    --tags=\"v*\"\n    --remotes=\"origin\"\n```\n\n### Simplification\n\n```bash\ngit log -- app/file.rb          # only file\n    --simplify-by-decoration    # tags and branches\n```\n\n### Ordering\n\n```bash\n    --date-order\n    --author-date-order\n    --topo-order              # \"smart\" ordering\n    --reverse\n```\n\n### Formatting\n\n```bash\n    --abbrev-commit\n    --oneline\n    --graph\n```\n\n### Custom formats\n\n```bash\n    --pretty=\"format:%H\"\n```\n\nSee: [Git log format cheatsheet](./git-log-format)\n\n## Also see\n\n- [Git log format cheatsheet](./git-log-format)"}

field_body:
### Revision ranges

```bash
git log master             # branch
git log origin/master      # branch, remote
git log v1.0.0             # tag

git log master develop

git log v2.0..master       # reachable from *master* but not *v2.0*
git log v2.0...master      # reachable from *master* and *v2.0*, but not both
```

See [gitrevisions](./git-revisions).

### Basic filters

```bash
-n, --max-count=2
    --skip=2
```

```bash
    --since="1 week ago"
    --until="yesterday"
```

```bash
    --author="Rico"
    --committer="Rico"
```

### Search

```bash
    --grep="Merge pull request"   # in commit messages
    -S"console.log"               # in code
    -G"foo.*"                     # in code (regex)
```

```bash
    --invert-grep
    --all-match                   # AND in multi --grep
```

### Limiting

```bash
    --merges
    --no-merges
```

```bash
    --first-parent          # no stuff from merged branches
```

```bash
    --branches="feature/*"
    --tags="v*"
    --remotes="origin"
```

### Simplification

```bash
git log -- app/file.rb          # only file
    --simplify-by-decoration    # tags and branches
```

### Ordering

```bash
    --date-order
    --author-date-order
    --topo-order              # "smart" ordering
    --reverse
```

### Formatting

```bash
    --abbrev-commit
    --oneline
    --graph
```

### Custom formats

```bash
    --pretty="format:%H"
```

See: [Git log format cheatsheet](./git-log-format)

## Also see

- [Git log format cheatsheet](./git-log-format)


id: git-log-format
git_filename: ./git-log-format.md
format: md
field_title: Git log format string
field_category: Git
field_updated: 2017-10-18
field_updated___timezone: UTC
data:
{"title": "Git log format string", "category": "Git", "updated": "2017-10-18", "weight": -1, "keywords": ["git log --pretty=format:%H", "%H - Commit hash", "%an - Author", "%aD - Author date"], "body": "## Log format\n{: .-three-column}\n\n### Pretty format\n{: .-prime}\n\n```bash\ngit log --pretty=\"format:%H\"\n```\n\nSee the next tables on format variables.\n\n### Hash\n\n#### Commit\n\n| Variable | Description |\n| --- | --- |\n| `%H` | commit hash |\n| `%h` | (abbrev) commit hash |\n\n#### Tree\n\n| Variable | Description |\n| --- | --- |\n| `%T` | tree hash |\n| `%t` | (abbrev) tree hash |\n\n#### Parent\n\n| Variable | Description |\n| --- | --- |\n| `%P` | parent hash |\n| `%p` | (abbrev) parent hash |\n\n### Commit\n\n| Variable | Description |\n| --- | --- |\n| `%s` | commit subject |\n| `%f` | commit subject, filename style |\n| `%b` | commit body |\n| --- | --- |\n| `%d` | ref names |\n| `%e` | encoding |\n\n## Author and committer\n\n### Author\n\n#### Name\n\n| Variable | Description |\n| --- | --- |\n| `%an` | author |\n| `%aN` | author, respecting mailmap |\n\n#### Email\n\n| Variable | Description |\n| --- | --- |\n| `%ae` | author email |\n| `%aE` | author email, respecting mailmap |\n\n#### Date\n\n| Variable | Description |\n| --- | --- |\n| `%aD` | author date (rfc2882) |\n| `%ar` | author date (relative) |\n| `%at` | author date (unix timestamp) |\n| `%ai` | author date (iso8601) |\n\n### Committer\n\n#### Name\n\n| Variable | Description |\n| --- | --- |\n| `%cn` | committer name |\n| `%cN` | committer name, respecting mailmap |\n\n#### Email\n\n| Variable | Description |\n| --- | --- |\n| `%ce` | committer email |\n| `%cE` | committer email, respecting mailmap |\n\n#### Date\n\n| Variable | Description |\n| --- | --- |\n| `%cD` | committer date (rfc2822) |\n| `%cr` | committer date (relative) |\n| `%ct` | committer date (unix timestamp) |\n| `%ci` | committer date (iso8601) |\n\n## Also see\n\n- [Git log cheatsheet](./git-log)"}

field_body:
## Log format
{: .-three-column}

### Pretty format
{: .-prime}

```bash
git log --pretty="format:%H"
```

See the next tables on format variables.

### Hash

#### Commit

| Variable | Description |
| --- | --- |
| `%H` | commit hash |
| `%h` | (abbrev) commit hash |

#### Tree

| Variable | Description |
| --- | --- |
| `%T` | tree hash |
| `%t` | (abbrev) tree hash |

#### Parent

| Variable | Description |
| --- | --- |
| `%P` | parent hash |
| `%p` | (abbrev) parent hash |

### Commit

| Variable | Description |
| --- | --- |
| `%s` | commit subject |
| `%f` | commit subject, filename style |
| `%b` | commit body |
| --- | --- |
| `%d` | ref names |
| `%e` | encoding |

## Author and committer

### Author

#### Name

| Variable | Description |
| --- | --- |
| `%an` | author |
| `%aN` | author, respecting mailmap |

#### Email

| Variable | Description |
| --- | --- |
| `%ae` | author email |
| `%aE` | author email, respecting mailmap |

#### Date

| Variable | Description |
| --- | --- |
| `%aD` | author date (rfc2882) |
| `%ar` | author date (relative) |
| `%at` | author date (unix timestamp) |
| `%ai` | author date (iso8601) |

### Committer

#### Name

| Variable | Description |
| --- | --- |
| `%cn` | committer name |
| `%cN` | committer name, respecting mailmap |

#### Email

| Variable | Description |
| --- | --- |
| `%ce` | committer email |
| `%cE` | committer email, respecting mailmap |

#### Date

| Variable | Description |
| --- | --- |
| `%cD` | committer date (rfc2822) |
| `%cr` | committer date (relative) |
| `%ct` | committer date (unix timestamp) |
| `%ci` | committer date (iso8601) |

## Also see

- [Git log cheatsheet](./git-log)


id: git-extras
git_filename: ./git-extras.md
format: md
field_title: Git extras
field_category: Git
field_intro: Quick reference to some utilities in the [git-extras](https://github.com/tj/git-extras) utilities.
data:
{"title": "Git extras", "category": "Git", "intro": "Quick reference to some utilities in the [git-extras](https://github.com/tj/git-extras) utilities.\n", "body": "## References\n\n### Git-flow\n\n```sh\n$ git feature myfeature\n  switched to branch 'feature/rofl'\n\n$ ...\n$ git checkout develop\n$ git feature finish myfeature\n  merging 'feature/rofl' into develop\n  deleted branch 'feature/rofl'\n```\n\nAlso `git-bug` and `git-refactor`.\n\n### Branches\n\n```sh\n$ git delete-merged-branches\n  # hint: do `git remote prune origin` after\n\n$ git create-branch development\n$ git delete-branch development\n\n$ git fresh-branch gh-pages\n```\n\n### Inspecting\n\n```sh\n$ git summary   # repo age, commits, active days, etc\n$ git impact    # impact graph\n$ git effort    # commits per file\n```\n\n### Github\n\n```sh\n$ git fork strongloop/express\n# sync your fork with the original repository:\n$ git remote add upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git\n$ git fetch upstream; git merge upstream/master\n```\n\n### Tags\n\n```sh\n$ git release v1.0.0           # commit, tag, push-tags\n$ git delete-tag v1.0.0\n```\n\n### Conveniences\n\n```sh\n$ git ignore \"*.log\"\n```\n\n### Locking\n\nAssumes that changes will not be committed.\n\n```sh\n$ git lock config/database.yml\n$ git unlock config/database.yml\n```\n\n### Etc\n\n```sh\n$ git obliterate secret.yml   # remove all references to it\n```\n\n### References\n\n- https://github.com/visionmedia/git-extras"}

field_body:
## References

### Git-flow

```sh
$ git feature myfeature
  switched to branch 'feature/rofl'

$ ...
$ git checkout develop
$ git feature finish myfeature
  merging 'feature/rofl' into develop
  deleted branch 'feature/rofl'
```

Also `git-bug` and `git-refactor`.

### Branches

```sh
$ git delete-merged-branches
  # hint: do `git remote prune origin` after

$ git create-branch development
$ git delete-branch development

$ git fresh-branch gh-pages
```

### Inspecting

```sh
$ git summary   # repo age, commits, active days, etc
$ git impact    # impact graph
$ git effort    # commits per file
```

### Github

```sh
$ git fork strongloop/express
# sync your fork with the original repository:
$ git remote add upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git
$ git fetch upstream; git merge upstream/master
```

### Tags

```sh
$ git release v1.0.0           # commit, tag, push-tags
$ git delete-tag v1.0.0
```

### Conveniences

```sh
$ git ignore "*.log"
```

### Locking

Assumes that changes will not be committed.

```sh
$ git lock config/database.yml
$ git unlock config/database.yml
```

### Etc

```sh
$ git obliterate secret.yml   # remove all references to it
```

### References

- https://github.com/visionmedia/git-extras


id: git-branch
git_filename: ./git-branch.md
format: md
field_title: Git branches
field_category: Git
field_updated: 2020-02-13
field_updated___timezone: UTC
data:
{"title": "Git branches", "category": "Git", "updated": "2020-02-13", "body": "## Working with branches\n{: .-three-column}\n\n### Creating\n\n```bash\ngit checkout -b $branchname\ngit push origin $branchname --set-upstream\n```\n\nCreates a new branch locally then pushes it.\n\n### Getting from remote\n\n```bash\ngit fetch origin\ngit checkout --track origin/$branchname\n```\n\nGets a branch in a remote.\n\n### Delete local remote-tracking branches\n\n```bash\ngit remote prune origin\n```\n\nDeletes `origin/*` branches in your local copy. Doesn't affect the remote.\n\n### List existing branches\n\n```bash\ngit branch --list\n```\n\nExisting branches are listed. Current branch will be highlighted with an asterisk.\n\n### List merged branches\n\n```bash\ngit branch -a --merged\n```\n\nList outdated branches that have been merged into the current one.\n\n### Delete a local branch\n\n```bash\ngit branch -d $branchname\n```\n\nDeletes the branch only if the changes have been pushed and merged with remote.\n\n### Delete branch forcefully\n\n```bash\ngit branch -D $branchname\n```\n\n```bash\ngit branch -d $branchname\n```\n\n> Note: You can also use the -D flag which is synonymous with --delete --force instead of -d. This will delete the branch regardless of its merge status.\n> Delete a branch irrespective of its merged status.\n\n### Delete remote branch\n\n```bash\ngit push origin --delete :$branchname\n```\n\nWorks for tags, too!\n\n### Get current sha1\n\n```bash\ngit show-ref HEAD -s\n```\n### Reset branch and remove all changes\n\n```bash\ngit reset --hard\n```\n\n### Undo commits to a specific commit\n\n```bash\ngit reset --hard $commit_id\n\n# Now push safely to your branch\ngit push --force-with-lease\n\n# Or push brutally to your branch\ngit push --force\n```"}

field_body:
## Working with branches
{: .-three-column}

### Creating

```bash
git checkout -b $branchname
git push origin $branchname --set-upstream
```

Creates a new branch locally then pushes it.

### Getting from remote

```bash
git fetch origin
git checkout --track origin/$branchname
```

Gets a branch in a remote.

### Delete local remote-tracking branches

```bash
git remote prune origin
```

Deletes `origin/*` branches in your local copy. Doesn't affect the remote.

### List existing branches

```bash
git branch --list
```

Existing branches are listed. Current branch will be highlighted with an asterisk.

### List merged branches

```bash
git branch -a --merged
```

List outdated branches that have been merged into the current one.

### Delete a local branch

```bash
git branch -d $branchname
```

Deletes the branch only if the changes have been pushed and merged with remote.

### Delete branch forcefully

```bash
git branch -D $branchname
```

```bash
git branch -d $branchname
```

> Note: You can also use the -D flag which is synonymous with --delete --force instead of -d. This will delete the branch regardless of its merge status.
> Delete a branch irrespective of its merged status.

### Delete remote branch

```bash
git push origin --delete :$branchname
```

Works for tags, too!

### Get current sha1

```bash
git show-ref HEAD -s
```
### Reset branch and remove all changes

```bash
git reset --hard
```

### Undo commits to a specific commit

```bash
git reset --hard $commit_id

# Now push safely to your branch
git push --force-with-lease

# Or push brutally to your branch
git push --force
```


id: gh-pages
git_filename: ./gh-pages.md
format: md
field_title: GitHub pages
field_category: Jekyll
data:
{"title": "GitHub pages", "category": "Jekyll", "body": "## Custom domains\n\n### Custom domains\n\n```sh\n$ echo \"foobar.com\" > CNAME\n$ git commit && git push\n```\n\nCreate a `CNAME` file with your domain on it.\n\nSee: [Setting up a custom domain](https://help.github.com/articles/quick-start-setting-up-a-custom-domain/) _(github.com)_\n\n### Set up your domain\n\nSubdomain (like www):\n{: .-setup}\n\n     CNAME => username.github.io\n\nApex domains:\n{: .-setup}\n\n     ALIAS => username.github.io\n\nApex domains (alternative):\n{: .-setup}\n\n    A => 192.30.252.153\n    A => 192.30.252.154\n\n## References\n{: .-one-column}\n\n- <https://pages.github.com>"}

field_body:
## Custom domains

### Custom domains

```sh
$ echo "foobar.com" > CNAME
$ git commit && git push
```

Create a `CNAME` file with your domain on it.

See: [Setting up a custom domain](https://help.github.com/articles/quick-start-setting-up-a-custom-domain/) _(github.com)_

### Set up your domain

Subdomain (like www):
{: .-setup}

     CNAME => username.github.io

Apex domains:
{: .-setup}

     ALIAS => username.github.io

Apex domains (alternative):
{: .-setup}

    A => 192.30.252.153
    A => 192.30.252.154

## References
{: .-one-column}

- <https://pages.github.com>


id: frequency-separation-retouching
git_filename: ./frequency-separation-retouching.md
format: md
field_title: Frequency separation retouching
field_category: Others
data:
{"title": "Frequency separation retouching", "category": "Others", "body": "### Frequency separation retouching in Photoshop\n\nDuplicate the layer twice. Perform these in each layer:\n{: .-setup}\n\n#### Lower layer\n\n- Apply **Gaussian Blur**\n\n#### Upper layer\n\n- Set layer mask to **Linear light**\n- Image \u2192 **Apply Image**\n  - Layer: _(select the lower layer)_\n  - Blending mode: `Subtract`\n  - Scale: `2`\n  - Offset: `128`\n\n### Reference\n\n- <https://phlearn.com/amazing-power-frequency-separation-retouching-photoshop>\n{: .-also-see}"}

field_body:
### Frequency separation retouching in Photoshop

Duplicate the layer twice. Perform these in each layer:
{: .-setup}

#### Lower layer

- Apply **Gaussian Blur**

#### Upper layer

- Set layer mask to **Linear light**
- Image → **Apply Image**
  - Layer: _(select the lower layer)_
  - Blending mode: `Subtract`
  - Scale: `2`
  - Offset: `128`

### Reference

- <https://phlearn.com/amazing-power-frequency-separation-retouching-photoshop>
{: .-also-see}


id: freenode
git_filename: ./freenode.md
format: md
field_title: Freenode
field_tags: WIP
data:
{"title": "Freenode", "tags": ["WIP"], "body": "### IRC server\n\n```\nirc.freenode.net\n```\n\n### NickServ commands\n\n```\n/msg nickserv identify [nick] <password>\n/msg nickserv info <nick>\n```\n\n### Add a nick\n\n```\n/nick newnick\n/msg nickserv identify <oldnick> <password>\n/msg nickserv group\n```"}

field_body:
### IRC server

```
irc.freenode.net
```

### NickServ commands

```
/msg nickserv identify [nick] <password>
/msg nickserv info <nick>
```

### Add a nick

```
/nick newnick
/msg nickserv identify <oldnick> <password>
/msg nickserv group
```


id: flynn
git_filename: ./flynn.md
format: md
field_title: Flynn
field_category: Devops
data:
{"title": "Flynn", "category": "Devops", "body": "### General workflow\n\n* Start a flynn cluster (on amazon or vagrant)\n* `flynn cluster add` to add that cluster\n* `flynn create NAME` in your app\n* `git push flynn master` to deploy\n\n### Creating a cluster (AWS)\n\n```bash\nflynn install  # (provisions AWS EC2 stuff)\nflynn key add  # (adds your pubkey to AWS)\n```\n\n#### What it does\n\n* This creates `XXXX.flynnhub.com`\n* Dashboard in `dashboard.XXXX.flynnhub.com`\n* Use `flynn -a dashboard env get LOGIN_TOKEN` to get login token\n* Apps live in `APP.XXXX.flynnhub.com`\n\n### Using a flynn cluster\n\nManaged in `~/.flynnrc`:\n{: .-setup}\n\n```bash\nflynn cluster\nflynn cluster add [-g githost] [-p pin] NAME URL KEY\nflynn cluster remove NAME\nflynn cluster default NAME # use this current\n```\n\n### Setting up a new app\n\n```bash\ncd ~/project\nflynn create example # adds the `flynn` remote\nflynn route # prints http routes\ngit push flynn master\n```\n\n## Commands\n\n### Environment vars\n\n```bash\nflynn env\nflynn env set FOO=bar BAZ=foobar\nflynn env unset FOO\n```\n\n### Scale\n\n```bash\nflynn ps\nflynn scale web=3\n```\n\n### Logs\n\n```bash\nflynn log\nflynn log flynn-d55c7a...\n```\n\n### Running commands\n\n```bash\nflynn run rake db:migrate\n```\n\n### Manage routes\n\n```bash\nflynn route\nflynn route add http example.com\n# then make a CNAME from example.com to myapp.xxxx.flynnhub.com\n```\n\n### More\n\n```bash\nflynn ps\nflynn kill <job>\n\nflynn meta\nflynn meta set foo=baz\n```\n\n## Also see\n\n- [Flynn website](https://flynn.io/) _(flynn.io)_"}

field_body:
### General workflow

* Start a flynn cluster (on amazon or vagrant)
* `flynn cluster add` to add that cluster
* `flynn create NAME` in your app
* `git push flynn master` to deploy

### Creating a cluster (AWS)

```bash
flynn install  # (provisions AWS EC2 stuff)
flynn key add  # (adds your pubkey to AWS)
```

#### What it does

* This creates `XXXX.flynnhub.com`
* Dashboard in `dashboard.XXXX.flynnhub.com`
* Use `flynn -a dashboard env get LOGIN_TOKEN` to get login token
* Apps live in `APP.XXXX.flynnhub.com`

### Using a flynn cluster

Managed in `~/.flynnrc`:
{: .-setup}

```bash
flynn cluster
flynn cluster add [-g githost] [-p pin] NAME URL KEY
flynn cluster remove NAME
flynn cluster default NAME # use this current
```

### Setting up a new app

```bash
cd ~/project
flynn create example # adds the `flynn` remote
flynn route # prints http routes
git push flynn master
```

## Commands

### Environment vars

```bash
flynn env
flynn env set FOO=bar BAZ=foobar
flynn env unset FOO
```

### Scale

```bash
flynn ps
flynn scale web=3
```

### Logs

```bash
flynn log
flynn log flynn-d55c7a...
```

### Running commands

```bash
flynn run rake db:migrate
```

### Manage routes

```bash
flynn route
flynn route add http example.com
# then make a CNAME from example.com to myapp.xxxx.flynnhub.com
```

### More

```bash
flynn ps
flynn kill <job>

flynn meta
flynn meta set foo=baz
```

## Also see

- [Flynn website](https://flynn.io/) _(flynn.io)_


id: flux
git_filename: ./flux.md
format: md
field_title: Flux architecture
field_category: React
data:
{"title": "Flux architecture", "category": "React", "body": "## About\n\n### About\n{: .-intro}\n\nFlux is an architecture for building client-side web applications.\n\n* [In-Depth Overview](https://facebook.github.io/flux/docs/in-depth-overview/) _(facebook.github.io)_\n\n### Architecture\n\n* __Dispatchers__ receive *actions* that get dispatched to its listeners.\n\n* __Stores__ are objects that store data, usually changed from a dispatcher listener.\n\n* __Views__ are React components that listen to Store changes, or emit *actions* to the dispatcher.\n\n----\n\n## Dispatcher\n\n### Pub-sub\n[A dispatcher][dispatcher] emits events (`.dispatch()`) to its listeners (`.register(fn)`).\n\n```js\nvar Dispatcher = require('flux').Dispatcher;\n\nd = new Dispatcher();\n\n// send\nd.dispatch({ action: 'edit', ... };\n\n// receive\ntoken = d.register(function (payload) {\n  payload.action === 'edit'\n})\n```\n\n### Ensuring proper order\n\nWith multiple listeners, you can ensure one is fired after another using `.waitFor()`.\n\n```js\ntoken1 = d.register(...);\n\ntoken2 = d.register(function (payload) {\n\n  // ensure receiver 1 is fired before this\n  d.waitFor([ token1 ]);\n  \n  // process here\n})\n```\n\n### Subclassing\n\n[Object.assign](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign) is the preferred way to subclass Dispatcher (think `$.extend`).<br>\nYou can also make *action creators*, which are shortcuts for `dispatch()`.\n\n```js\nvar Dispatcher = require('flux').Dispatcher;\nvar assign = require('object-assign');\n\nvar AppDispatcher = assign({}, Dispatcher.prototype, {\n\n  // action creator\n  handleViewAction(action) {\n    this.dispatch({\n      source: 'VIEW_ACTION',\n      action: action\n    })\n  } \n\n})\n```\n\n----\n\n## Stores\n\n### Plain objects\nStores are just like objects.\n\n```js\nvar TodoStore = { list: [] };\n```\n\n### Events\nSometimes they're eventemitters, too. Usually it's used to emit `change` events for views to pick up.\n\n```js\nvar TodoStore = assign({}, EventEmitter.prototype, {\n  ...\n});\n\nTodoStore.emit('change');\nTodoStore.on('change', function () { ... });\n```\n\n### Model logic\nLogic can sometimes belong in stores.\n\n```js\n{\n  isAllActive() {\n    return this.list.every(item => item.active);\n  }\n}\n```\n\n\n----\n\n## Stores and dispatchers\n\n### Instantiate\nMake a Dispatcher and Stores.\n\n```js\nd = new Dispatcher();\nTabStore = { tab: 'home' };\n```\n\n### Updating data\nDispatch events to alter the store.\n\n```js\nd.dispatch({ action: 'tab.change', tab: 'timeline' });\n\nd.register(function (data) {\n  if (data.action === 'tab.change') {\n    TabStore.tab = data.tab;\n  }\n});\n```\n\n----\n\n## With Views\n\n### Listen to dispatchers\nViews (React Components) can listen to Dispatchers.\n\n```js\nvar TodoApp = React.createClass({\n\n  componentDidMount() {\n    this.token = AppDispatcher.register((payload) => {\n      switch (payload.action) {\n        case 'tab.change':\n          this.render();\n          // ...\n      }\n    });\n  },\n  \n  componentDidUnmount() {\n    AppDispatcher.unregister(this.token);\n  }\n  \n});\n```\n\n### Listen to Stores\nOr to Stores's `change` events.\n\n```js\n{\n  componentDidMount() {\n    TodoStore.on('change', this.onChange);\n  },\n  \n  componentDidUnmount() {\n    TodoState.removeListener('change', this.onChange);\n  },\n  \n  onChange(data) {\n    // ...\n  }\n}\n```\n\n----\n\n### Also see\n\n* [Dispatcher API][dispatcher]\n* [React cheatsheet](react.html)\n* [Dispatcher.js source](https://github.com/facebook/flux/blob/master/src/Dispatcher.js)\n* [Flux-todomvc explanation](https://github.com/facebook/flux/tree/master/examples/flux-todomvc)\n\n[dispatcher]: http://facebook.github.io/flux/docs/dispatcher.html"}

field_body:
## About

### About
{: .-intro}

Flux is an architecture for building client-side web applications.

* [In-Depth Overview](https://facebook.github.io/flux/docs/in-depth-overview/) _(facebook.github.io)_

### Architecture

* __Dispatchers__ receive *actions* that get dispatched to its listeners.

* __Stores__ are objects that store data, usually changed from a dispatcher listener.

* __Views__ are React components that listen to Store changes, or emit *actions* to the dispatcher.

----

## Dispatcher

### Pub-sub
[A dispatcher][dispatcher] emits events (`.dispatch()`) to its listeners (`.register(fn)`).

```js
var Dispatcher = require('flux').Dispatcher;

d = new Dispatcher();

// send
d.dispatch({ action: 'edit', ... };

// receive
token = d.register(function (payload) {
  payload.action === 'edit'
})
```

### Ensuring proper order

With multiple listeners, you can ensure one is fired after another using `.waitFor()`.

```js
token1 = d.register(...);

token2 = d.register(function (payload) {

  // ensure receiver 1 is fired before this
  d.waitFor([ token1 ]);
  
  // process here
})
```

### Subclassing

[Object.assign](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign) is the preferred way to subclass Dispatcher (think `$.extend`).<br>
You can also make *action creators*, which are shortcuts for `dispatch()`.

```js
var Dispatcher = require('flux').Dispatcher;
var assign = require('object-assign');

var AppDispatcher = assign({}, Dispatcher.prototype, {

  // action creator
  handleViewAction(action) {
    this.dispatch({
      source: 'VIEW_ACTION',
      action: action
    })
  } 

})
```

----

## Stores

### Plain objects
Stores are just like objects.

```js
var TodoStore = { list: [] };
```

### Events
Sometimes they're eventemitters, too. Usually it's used to emit `change` events for views to pick up.

```js
var TodoStore = assign({}, EventEmitter.prototype, {
  ...
});

TodoStore.emit('change');
TodoStore.on('change', function () { ... });
```

### Model logic
Logic can sometimes belong in stores.

```js
{
  isAllActive() {
    return this.list.every(item => item.active);
  }
}
```


----

## Stores and dispatchers

### Instantiate
Make a Dispatcher and Stores.

```js
d = new Dispatcher();
TabStore = { tab: 'home' };
```

### Updating data
Dispatch events to alter the store.

```js
d.dispatch({ action: 'tab.change', tab: 'timeline' });

d.register(function (data) {
  if (data.action === 'tab.change') {
    TabStore.tab = data.tab;
  }
});
```

----

## With Views

### Listen to dispatchers
Views (React Components) can listen to Dispatchers.

```js
var TodoApp = React.createClass({

  componentDidMount() {
    this.token = AppDispatcher.register((payload) => {
      switch (payload.action) {
        case 'tab.change':
          this.render();
          // ...
      }
    });
  },
  
  componentDidUnmount() {
    AppDispatcher.unregister(this.token);
  }
  
});
```

### Listen to Stores
Or to Stores's `change` events.

```js
{
  componentDidMount() {
    TodoStore.on('change', this.onChange);
  },
  
  componentDidUnmount() {
    TodoState.removeListener('change', this.onChange);
  },
  
  onChange(data) {
    // ...
  }
}
```

----

### Also see

* [Dispatcher API][dispatcher]
* [React cheatsheet](react.html)
* [Dispatcher.js source](https://github.com/facebook/flux/blob/master/src/Dispatcher.js)
* [Flux-todomvc explanation](https://github.com/facebook/flux/tree/master/examples/flux-todomvc)

[dispatcher]: http://facebook.github.io/flux/docs/dispatcher.html


id: flow
git_filename: ./flow.md
format: md
field_title: Flow
field_category: JavaScript libraries
field_tags: Featurable
field_updated: 2020-07-05
field_updated___timezone: UTC
data:
{"title": "Flow", "category": "JavaScript libraries", "updated": "2020-07-05", "weight": -3, "tags": ["Featurable"], "body": "## Getting started\n{: .-three-column}\n\n### Simple example\n{: .-prime}\n\n```js\n/* @flow */\nfunction square (n: number) {\n  return n * n\n}\n\nconst four = square(2)\n```\n{: data-line=\"1,2\"}\n\nMost of what you need to do is to simply add annotations to function arguments!\n\nSee: [flow.org docs](https://flow.org/en/docs/)\n\n### Type inference\n\n```js\nfunction square (n: number) {\n  const result = n * n\n}\n```\n{: data-line=\"2\"}\n\n`result` is inferred to be a number because `number * number` will result in a number. There's no need to give it annotations.\n\n### Type aliases\n\n```js\ntype Person = {\n  name: string,\n  age: number,\n  isAdmin: boolean,\n  likes: Array<string>\n}\n```\n{: data-line=\"1,2,3,4,5,6\"}\n\n```js\nfunction greet(user: Person) {\n  console.log('hello', user.name)\n}\n```\n{: data-line=\"1\"}\n\n```js\ngreet({ name: 'Miles Davis', \u00b7\u00b7\u00b7 })\n```\n\nThis is the typical way to define the shape of complex objects.\n\n### Variables\n\n```js\nconst count: number = 200\n```\n\nYou typically don't need to do this, function args are often enough.\n\nSee: [Variable types](https://flow.org/en/docs/types/variables/)\n\n### Importing and exporting\n\n```js\nimport type { Person } from './types'\n```\n\n```js\nexport type Person = {\n  \u00b7\u00b7\u00b7\n}\n```\n\nSee: [Module types](https://flow.org/en/docs/types/modules)\n\n### Union types\n\n```js\ntype Action = number | string\n```\n\n```js\ntype Direction = 'left' | 'right'\n```\n\nSee: [Unions](https://flow.org/en/docs/types/unions/)\n\n## Optionals\n\n### Maybe types\n\n```js\ntype Album = {\n  name: ?string\n}\n```\n{: data-line=\"2\"}\n\n```js\nconst a: Album = { }                 // \u2717 Error\nconst a: Album = { name: 'Blue' }    // \u2713 OK\nconst a: Album = { name: null }      // \u2713 OK\nconst a: Album = { name: undefined } // \u2713 OK\n```\n\nThis makes `name` either a string or null.\n\nSee: [Maybe types](https://flow.org/en/docs/types/primitives/#toc-maybe-types)\n\n### Optional properties\n\n```js\ntype Album = {\n  name?: string\n}\n```\n{: data-line=\"2\"}\n\n```js\nconst a: Album = { } // \u2713 OK\na.name = 'Blue'      // \u2713 OK\na.name = null        // \u2717 Error\na.name = undefined   // \u2713 OK\n```\n\nThis makes an `Album` valid even if `name` is not part of the keys. This is different from \"maybe\" types.\n\nSee: [Optional properties](https://flow.org/en/docs/types/primitives/#toc-optional-object-properties)\n\n## Objects\n{: .-three-column}\n\n### Width subtyping\n\n```js\ntype Artist = {\n  name: string,\n  label: string\n}\n```\n\n```js\nconst a: Artist = {\n  name: 'Miguel Migs',\n  label: 'Naked Music',\n  genre: 'House' // \u2713 OK\n}\n```\n{: data-line=\"6\"}\n\nA type with more properties is \"wider\" and is a subtype of a \"narrower\" type.\n\nSee: [Width subtyping](https://flow.org/en/docs/lang/width-subtyping/)\n\n### Exact object types\n\n```js\ntype Artist = {|\n  name: string,\n  label: string\n|}\n```\n{: data-line=\"1,4\"}\n\n```js\nconst a: Artist = {\n  name: 'Miguel Migs',\n  label: 'Naked Music',\n  genre: 'House' // \u2717 Error\n}\n```\n{: data-line=\"4\"}\n\nExact object types prevent extra properties from being added to an object.\n\nSee: [Exact object types](https://flow.org/en/docs/types/objects/#toc-exact-object-types)\n\n### Dynamic keys\n\n```js\ntype Items = {\n  [key: string]: Item\n}\n```\n{: data-line=\"2\"}\n\nSee: [Dynamic object keys](https://flow.org/en/docs/types/objects/#toc-objects-as-maps)\n\n## Advanced features\n\n### Primitives\n\n| Type            | Description                  |\n| ---             | ---                          |\n| `any`           |                              |\n| `boolean`       |                              |\n| `mixed`         |                              |\n| `number`        |                              |\n| `string`        |                              |\n| `void`          | undefined                    |\n| `null`          | null (but not undefined)     |\n| ---             | ---                          |\n| `{a: Number}`   | Object with a shape          |\n| `[any, number]` | Tuples (fixed-length arrays) |\n| ---             | ---                          |\n| `Array<T>`      |                              |\n| `Class<T>`      |                              |\n| `Function`      |                              |\n| `Object`        |                              |\n| ---             | ---                          |\n| `?number`       | Maybe (number, void, null)   |\n| `a | b`         | Union types                  |\n\n### Enums\n\n```js\ntype Suit = \"Diamonds\" | \"Clubs\" | \"Hearts\" | \"Spades\"\n\nconst countries = {\n  US: \"United States\",\n  IT: \"Italy\",\n  FR: \"France\"\n}\n\ntype Country = $Keys<typeof countries>\n```\n\nSee: [Enums](https://flow.org/en/docs/types/utilities/#toc-keys)\n\n### Type aliases\n\n```js\ntype Tree = {\n  foo: string,\n  bar: number,\n  qux: (foo: string, bar: number) => boolean\n}\n\ntype Generic<T> = {\n  foo: T\n}\n```\n\nSee: [Type aliases](https://flow.org/en/docs/types/aliases/)\n\n### Generic classes\n\n```js\nclass GenericClass<T> {\n  x: T\n  constructor (x: T) { ... }\n}\n\nvar n: GenericClass<number> = new GenericClass(0)\n```\n\nSee: [Generic classes](https://flow.org/en/docs/types/generics/#toc-classes-with-generics)\n\n### Interfaces\n\n```js\ninterface Jsonable {\n  toJSON(): string\n}\n\nclass Foo {\n  toJSON() { return '{}' }\n}\n\n(new Foo: Jsonable)\n```\n\nSee: [Interfaces](https://flow.org/en/docs/types/interfaces/)\n\n### Functions\n\n```js\nconst callback: () => void = function () {}\n```\n\n```js\nfunction filter<T> (\n  list: Array<T>,\n  callback: (item: T) => boolean\n): Array<T> {\n  \u00b7\u00b7\u00b7\n}\n```\n\nSee: [Functions](https://flow.org/en/docs/types/functions/)\n\n### Imports\n\n```js\nimport type { Person } from '../person'\nimport typeof Config from '../config'\n```\n\n```js\nexport type Person = { id: string }\n```\n\n### Comment syntax\n\n```js\n/*::\n  export type Foo = { ... }\n*/\n\nfunction add(n /*: number */) { ... }\n```\n\n### React\n\n```js\ntype Props = {\n  bar: number,\n}\n\ntype State = {\n  open: boolean,\n}\n\nclass Foo extends React.Component<Props, State> {\n  // Component code\n}\n```\n\n## Examples\n\n### Examples\n\n```js\nvar myNumbers: Array<number> = [42]\nfunction foo(): any { return 42 }\nvar b: boolean = false\nvar b: ?boolean = false  /* maybe */\nvar b: string | boolean = false\n\nvar a: Class<MyClass> = MyClass\nvar b: MyClass = new a()\n```\n\n### Function signature\n\n```js\ntype Callback = (?Error, string) => any\n\nfunction fetch (callback: Callback) {\n  \u00b7\u00b7\u00b7\n}\n```\n\n## References\n\n- [Flow website](https://www.saltycrane.com/flow-type-cheat-sheet/latest/) _(flow.org)_\n- [Getting started with Flow](https://flow.org/en/docs/getting-started/) _(flow.org)_\n- [Flow type cheatsheet](https://www.saltycrane.com/flow-type-cheat-sheet/latest/) _(saltycrane.com)_"}

field_body:
## Getting started
{: .-three-column}

### Simple example
{: .-prime}

```js
/* @flow */
function square (n: number) {
  return n * n
}

const four = square(2)
```
{: data-line="1,2"}

Most of what you need to do is to simply add annotations to function arguments!

See: [flow.org docs](https://flow.org/en/docs/)

### Type inference

```js
function square (n: number) {
  const result = n * n
}
```
{: data-line="2"}

`result` is inferred to be a number because `number * number` will result in a number. There's no need to give it annotations.

### Type aliases

```js
type Person = {
  name: string,
  age: number,
  isAdmin: boolean,
  likes: Array<string>
}
```
{: data-line="1,2,3,4,5,6"}

```js
function greet(user: Person) {
  console.log('hello', user.name)
}
```
{: data-line="1"}

```js
greet({ name: 'Miles Davis', ··· })
```

This is the typical way to define the shape of complex objects.

### Variables

```js
const count: number = 200
```

You typically don't need to do this, function args are often enough.

See: [Variable types](https://flow.org/en/docs/types/variables/)

### Importing and exporting

```js
import type { Person } from './types'
```

```js
export type Person = {
  ···
}
```

See: [Module types](https://flow.org/en/docs/types/modules)

### Union types

```js
type Action = number | string
```

```js
type Direction = 'left' | 'right'
```

See: [Unions](https://flow.org/en/docs/types/unions/)

## Optionals

### Maybe types

```js
type Album = {
  name: ?string
}
```
{: data-line="2"}

```js
const a: Album = { }                 // ✗ Error
const a: Album = { name: 'Blue' }    // ✓ OK
const a: Album = { name: null }      // ✓ OK
const a: Album = { name: undefined } // ✓ OK
```

This makes `name` either a string or null.

See: [Maybe types](https://flow.org/en/docs/types/primitives/#toc-maybe-types)

### Optional properties

```js
type Album = {
  name?: string
}
```
{: data-line="2"}

```js
const a: Album = { } // ✓ OK
a.name = 'Blue'      // ✓ OK
a.name = null        // ✗ Error
a.name = undefined   // ✓ OK
```

This makes an `Album` valid even if `name` is not part of the keys. This is different from "maybe" types.

See: [Optional properties](https://flow.org/en/docs/types/primitives/#toc-optional-object-properties)

## Objects
{: .-three-column}

### Width subtyping

```js
type Artist = {
  name: string,
  label: string
}
```

```js
const a: Artist = {
  name: 'Miguel Migs',
  label: 'Naked Music',
  genre: 'House' // ✓ OK
}
```
{: data-line="6"}

A type with more properties is "wider" and is a subtype of a "narrower" type.

See: [Width subtyping](https://flow.org/en/docs/lang/width-subtyping/)

### Exact object types

```js
type Artist = {|
  name: string,
  label: string
|}
```
{: data-line="1,4"}

```js
const a: Artist = {
  name: 'Miguel Migs',
  label: 'Naked Music',
  genre: 'House' // ✗ Error
}
```
{: data-line="4"}

Exact object types prevent extra properties from being added to an object.

See: [Exact object types](https://flow.org/en/docs/types/objects/#toc-exact-object-types)

### Dynamic keys

```js
type Items = {
  [key: string]: Item
}
```
{: data-line="2"}

See: [Dynamic object keys](https://flow.org/en/docs/types/objects/#toc-objects-as-maps)

## Advanced features

### Primitives

| Type            | Description                  |
| ---             | ---                          |
| `any`           |                              |
| `boolean`       |                              |
| `mixed`         |                              |
| `number`        |                              |
| `string`        |                              |
| `void`          | undefined                    |
| `null`          | null (but not undefined)     |
| ---             | ---                          |
| `{a: Number}`   | Object with a shape          |
| `[any, number]` | Tuples (fixed-length arrays) |
| ---             | ---                          |
| `Array<T>`      |                              |
| `Class<T>`      |                              |
| `Function`      |                              |
| `Object`        |                              |
| ---             | ---                          |
| `?number`       | Maybe (number, void, null)   |
| `a | b`         | Union types                  |

### Enums

```js
type Suit = "Diamonds" | "Clubs" | "Hearts" | "Spades"

const countries = {
  US: "United States",
  IT: "Italy",
  FR: "France"
}

type Country = $Keys<typeof countries>
```

See: [Enums](https://flow.org/en/docs/types/utilities/#toc-keys)

### Type aliases

```js
type Tree = {
  foo: string,
  bar: number,
  qux: (foo: string, bar: number) => boolean
}

type Generic<T> = {
  foo: T
}
```

See: [Type aliases](https://flow.org/en/docs/types/aliases/)

### Generic classes

```js
class GenericClass<T> {
  x: T
  constructor (x: T) { ... }
}

var n: GenericClass<number> = new GenericClass(0)
```

See: [Generic classes](https://flow.org/en/docs/types/generics/#toc-classes-with-generics)

### Interfaces

```js
interface Jsonable {
  toJSON(): string
}

class Foo {
  toJSON() { return '{}' }
}

(new Foo: Jsonable)
```

See: [Interfaces](https://flow.org/en/docs/types/interfaces/)

### Functions

```js
const callback: () => void = function () {}
```

```js
function filter<T> (
  list: Array<T>,
  callback: (item: T) => boolean
): Array<T> {
  ···
}
```

See: [Functions](https://flow.org/en/docs/types/functions/)

### Imports

```js
import type { Person } from '../person'
import typeof Config from '../config'
```

```js
export type Person = { id: string }
```

### Comment syntax

```js
/*::
  export type Foo = { ... }
*/

function add(n /*: number */) { ... }
```

### React

```js
type Props = {
  bar: number,
}

type State = {
  open: boolean,
}

class Foo extends React.Component<Props, State> {
  // Component code
}
```

## Examples

### Examples

```js
var myNumbers: Array<number> = [42]
function foo(): any { return 42 }
var b: boolean = false
var b: ?boolean = false  /* maybe */
var b: string | boolean = false

var a: Class<MyClass> = MyClass
var b: MyClass = new a()
```

### Function signature

```js
type Callback = (?Error, string) => any

function fetch (callback: Callback) {
  ···
}
```

## References

- [Flow website](https://www.saltycrane.com/flow-type-cheat-sheet/latest/) _(flow.org)_
- [Getting started with Flow](https://flow.org/en/docs/getting-started/) _(flow.org)_
- [Flow type cheatsheet](https://www.saltycrane.com/flow-type-cheat-sheet/latest/) _(saltycrane.com)_


id: flashlight
git_filename: ./flashlight.md
format: md
field_title: Flashlight
field_category: Apps
data:
{"title": "Flashlight", "category": "Apps", "body": "## Commands\n{: .-three-column}\n\n### Events and reminders\n\n* `add Dinner with Rico 5 pm tomorrow`\n* `remind Go to school at 2:30pm`\n* `remind Go to school in 15 mins`\n\n### DuckDuckGo\n\n* `!g foo`\n* `!mdn settimeout`\n\n### System\n\n* `shutdown`\n* `restart`\n* `logout`\n* `sleep`\n* `ejall`\n* `screen saver`\n\n### Emoji\n\n* `emoji grin`\n* `:rocket:`\n\n### Web search\n\n* `/react`\n\nPrefix with `/` to do a web search.\n\n### References\n\n* [Flashlight](http://flashlight.nateparrott.com/)\n* [Flashlight on GitHub](https://github.com/nate-parrott/Flashlight)\n* [Creating a plugin](https://github.com/nate-parrott/Flashlight/wiki/Creating-a-Plugin)"}

field_body:
## Commands
{: .-three-column}

### Events and reminders

* `add Dinner with Rico 5 pm tomorrow`
* `remind Go to school at 2:30pm`
* `remind Go to school in 15 mins`

### DuckDuckGo

* `!g foo`
* `!mdn settimeout`

### System

* `shutdown`
* `restart`
* `logout`
* `sleep`
* `ejall`
* `screen saver`

### Emoji

* `emoji grin`
* `:rocket:`

### Web search

* `/react`

Prefix with `/` to do a web search.

### References

* [Flashlight](http://flashlight.nateparrott.com/)
* [Flashlight on GitHub](https://github.com/nate-parrott/Flashlight)
* [Creating a plugin](https://github.com/nate-parrott/Flashlight/wiki/Creating-a-Plugin)


id: fish-shell
git_filename: ./fish-shell.md
format: md
field_title: Fish shell
field_category: CLI
field_prism_languages: fish
field_updated: 2018-01-31
field_updated___timezone: UTC
data:
{"title": "Fish shell", "category": "CLI", "prism_languages": ["fish"], "updated": "2018-01-31", "weight": -1, "body": "### Keys\n\n| Shortcut            | Description                           |\n| ---                 | ---                                   |\n| `^A \u2190`/`^E \u2192`       | Move to the line beginning/end        |\n| `Alt \u2190`/`Alt \u2192`     | Jump to the previous/next word        |\n| `\u2191`/`\u2193`             | Switch to the previous/next command   |\n| `Alt \u2191`/`Alt \u2193`     | Switch to the previous/next arguments |\n| ---                 | ---                                   |\n| `^U`                | Delete to the beginning               |\n| `^C`                | Cancel the line                       |\n| ---                 | ---                                   |\n| `Alt H`             | Show the command man page description |\n| `Alt W`             | Show the short command description    |\n| ---                 | ---                                   |\n| `Alt .`             | Repeat last argument                  |\n\n### Sample program\n\n```fish\n#!/usr/bin/env fish\n\necho 'Hello from Fish!'\n```\n\n### Comments\n\n```fish\n# my comment\n```\n\n### Printing text\n\n```fish\necho 'Hello from Fish!'\n# or\nprintf '%s\\n' 'Hello from Fish!'\n```\n\nPrint the string with a trailing `\\n`.\n\n### Reading from stdin\n\n```fish\nread my_variable\n```\n\nReads the string to a variable `my_variable`.\n\n### Loops\n\n```fish\nfor i in (seq 1 10)\n  ...\nend\n```\n\n## Variables\n\n### Defining and erasing\n\n```fish\n# Declare the global/local variable:\nset my_variable 'Hello from Fish!'\n\ni# Remove the variable:\nset --erase my_variable\n```\n\n### Slicing\n\n```fish\necho $my_variable[1..10]\necho $my_variable[2..]\necho $my_variable[..-2]\n```\n\n## Numbers\n\n### Incrementing and decrementing\n\n```fish\nset my_variable (math $my_variable + 1)\nset my_variable (math $my_variable - 1)\n```\n\n### Arithmetic\n\n```fish\necho (math 1 + 2)\n```\n\n| Operator            | Performs       |\n| ---                 | ---            |\n| `+`                 | Addition       |\n| `-`                 | Subtraction    |\n| `*`                 | Multiplication |\n| `/`                 | Division       |\n| `%`                 | Modulo         |\n| `^`                 | Exponentiation |\n\n## Strings\n\n### Matching\n\nMatch the string against a regular expression:\n\n```fish\nstring match --regex --entire 'Fish' 'Hello from Fish!'\n```\n\n| Pattern             | Matches                   |\n| ---                 | ---                       |\n| `x?`                | Zero or one `x` chars     |\n| `x*`                | Any count `x` chars       |\n| `x+`                | One or more  `x` chars    |\n| `x{n}`              | n times `x` chars         |\n| `x{n,m}`            | n to m times `x` chars    |\n| `x{n,}`             | n or more times `x` chars |\n| `[xy]`              | `x` or y char             |\n| `[^xy]`             | not `x` or y char         |\n| ---                 | ---                 |\n| `\\w`                | Word character      |\n| `\\d`                | Digit character     |\n| `\\W`                | Not word character  |\n| `\\D`                | Not digit character |\n\nPerl compatible regular expressions are described here.\n\n### Replacing\n\n```fish\n# Replaces the first match\nstring replace --regex 'Fish' 'fish' 'Hello from Fish!'\n\n# Replaces all matches\nstring replace --regex --all 'Fish' 'fish' 'Hello from Fish!'\n```\n\n## Conditionals\n\n### If/else\n\n```fish\nif test $my_variable -lt $another_variable\n  \u00b7\u00b7\u00b7\nelse if test $my_variable -eq $another_variable\n  \u00b7\u00b7\u00b7\nelse\n  \u00b7\u00b7\u00b7\nend\n```\n\n### Comparisons\n\n#### Numbers\n\n| Number operator     | Meaning                                   |\n| ---                 | ---                                       |\n| `-lt`               | [L]ess [t]han                             |\n| `-eq`               | [Eq]ual                                   |\n| `-gt`               | [G]reater [t]han                          |\n| `-le`               | [L]ess than or [e]qual to                 |\n| `-ge`               | [G]reater than or [e]qual to              |\n| `-ne`               | [N]ot [E]qual                             |\n\n#### Strings\n\n| String operator     | Meaning                                   |\n| ---                 | ---                                       |\n| `=`                 | [Eq]ual                                   |\n| `!=`                | [N]ot [E]qual                             |\n\n#### Files\n\n| File operator       | Meaning                                   |\n| ---                 | ---                                       |\n| `-f`                | [F]ile exists                             |\n| `-d`                | [D]irectory exists                        |\n| `-r`                | File or directory exists and [r]eadable   |\n| `-w`                | File or directory exists and [w]ritable   |\n| `-x`                | File or directory exists and e[x]ecutable |\n\n\n## Process communication\n\n### Writing to files\n\n```fish\n# Overwrite file\necho 'Hello from Fish!' > my_file\n\n# Append to file\necho 'Hello from Fish!' >> my_file\n```\n\n### Piping\n\n```fish\nmy_command | another_command\n```\n\nPasses the first command stdout output as an input to a second command.\n\n### Command substitution\n\n```fish\necho (math $my_variable + 1)\n```\n\nThe `(...)` expression is substituted with the output of the command inside it.\n\n\n### Process substitution\n\n```fish\necho (math $my_variable + 1 | psub)\n```\n\nThe `(... | psub)` expression is substituted with a temporary file with the command's output.\n\n## Functions\n\n### Defining and erasing\n\n```fish\n# Declare the function\nfunction my_function --description 'My description'\n  \u00b7\u00b7\u00b7\nend\n\n# Remove the function\nfunctions --erase my_function\n```\n\n## Events\n\n### Emitting\n\n```fish\nemit my_event\n```\n\nEmits an event that can be picked up by other functions.\n\n### Event handling\n\n```fish\nfunction my_hook --on-event my_event\n  \u00b7\u00b7\u00b7\nend\n```\n\nReacts to the `my_event` event.\n\n## Abbreviations\n\n### Defining and erasing\n\n```fish\n# Declare the abbreviation\nabbr --add grh \"git reset --hard HEAD\"\n```\n\n\n```fish\n# Remove the abbreviation\nabbr --erase grh\n```\n\n## Completions\n\n### Defining completions\n\n```fish\ncomplete --command mycommand --arguments 'install uninstall'\ncomplete --command mycommand --short-option 'h' --long-option 'help' --description 'Display help'\n```\n\n| Option              | Description                                          |\n| ---                 | ---                                                  |\n| `--arguments`       | Arguments to the command itself or option            |\n| `--short-option`    | Short option                                         |\n| `--long-option`     | Long option                                          |\n| `--no-files`        | Don't suggest files                                  |\n| `--force-files`     | Suggest files                                        |\n| `--condition`       | Display the hint only when a given condition is true |\n| `--description`     | Description                                          |\n\nDeclares the completion for a command.\n\n### Removing completions\n\n```fish\ncomplete --command mycommand --erase\n```\n\n## Useful built-in functions\n\n| Function                              | Description                                                   |\n| ---                                   | ---                                                           |\n| `__fish_seen_argument`                | Check whether the specified argument is used                  |\n| `__fish_seen_subcommand_from`         | Check whether the specified subcommand is used                |\n| `__fish_use_subcommand`               | Check whether any subcommand is used                          |\n| ---                                   | ---                                                           |\n| `__fish_complete_directories`         | Complete directories with the specified letters in their name |\n| `__fish_complete_suffix`              | Complete files with the specified suffix                      |\n| ---                                   | ---                                                           |\n| `__fish_complete_users`               | List all users                                                |\n| `__fish_complete_groups`              | List all user groups                                          |\n| `__fish_print_hostnames`              | List all host names                                           |\n| `__fish_complete_pids`                | List all PIDs                                                 |\n| `__fish_print_filesystems`            | List all known filesystems                                    |\n| `__fish_print_interfaces`             | List all network interfaces                                   |"}

field_body:
### Keys

| Shortcut            | Description                           |
| ---                 | ---                                   |
| `^A ←`/`^E →`       | Move to the line beginning/end        |
| `Alt ←`/`Alt →`     | Jump to the previous/next word        |
| `↑`/`↓`             | Switch to the previous/next command   |
| `Alt ↑`/`Alt ↓`     | Switch to the previous/next arguments |
| ---                 | ---                                   |
| `^U`                | Delete to the beginning               |
| `^C`                | Cancel the line                       |
| ---                 | ---                                   |
| `Alt H`             | Show the command man page description |
| `Alt W`             | Show the short command description    |
| ---                 | ---                                   |
| `Alt .`             | Repeat last argument                  |

### Sample program

```fish
#!/usr/bin/env fish

echo 'Hello from Fish!'
```

### Comments

```fish
# my comment
```

### Printing text

```fish
echo 'Hello from Fish!'
# or
printf '%s\n' 'Hello from Fish!'
```

Print the string with a trailing `\n`.

### Reading from stdin

```fish
read my_variable
```

Reads the string to a variable `my_variable`.

### Loops

```fish
for i in (seq 1 10)
  ...
end
```

## Variables

### Defining and erasing

```fish
# Declare the global/local variable:
set my_variable 'Hello from Fish!'

i# Remove the variable:
set --erase my_variable
```

### Slicing

```fish
echo $my_variable[1..10]
echo $my_variable[2..]
echo $my_variable[..-2]
```

## Numbers

### Incrementing and decrementing

```fish
set my_variable (math $my_variable + 1)
set my_variable (math $my_variable - 1)
```

### Arithmetic

```fish
echo (math 1 + 2)
```

| Operator            | Performs       |
| ---                 | ---            |
| `+`                 | Addition       |
| `-`                 | Subtraction    |
| `*`                 | Multiplication |
| `/`                 | Division       |
| `%`                 | Modulo         |
| `^`                 | Exponentiation |

## Strings

### Matching

Match the string against a regular expression:

```fish
string match --regex --entire 'Fish' 'Hello from Fish!'
```

| Pattern             | Matches                   |
| ---                 | ---                       |
| `x?`                | Zero or one `x` chars     |
| `x*`                | Any count `x` chars       |
| `x+`                | One or more  `x` chars    |
| `x{n}`              | n times `x` chars         |
| `x{n,m}`            | n to m times `x` chars    |
| `x{n,}`             | n or more times `x` chars |
| `[xy]`              | `x` or y char             |
| `[^xy]`             | not `x` or y char         |
| ---                 | ---                 |
| `\w`                | Word character      |
| `\d`                | Digit character     |
| `\W`                | Not word character  |
| `\D`                | Not digit character |

Perl compatible regular expressions are described here.

### Replacing

```fish
# Replaces the first match
string replace --regex 'Fish' 'fish' 'Hello from Fish!'

# Replaces all matches
string replace --regex --all 'Fish' 'fish' 'Hello from Fish!'
```

## Conditionals

### If/else

```fish
if test $my_variable -lt $another_variable
  ···
else if test $my_variable -eq $another_variable
  ···
else
  ···
end
```

### Comparisons

#### Numbers

| Number operator     | Meaning                                   |
| ---                 | ---                                       |
| `-lt`               | [L]ess [t]han                             |
| `-eq`               | [Eq]ual                                   |
| `-gt`               | [G]reater [t]han                          |
| `-le`               | [L]ess than or [e]qual to                 |
| `-ge`               | [G]reater than or [e]qual to              |
| `-ne`               | [N]ot [E]qual                             |

#### Strings

| String operator     | Meaning                                   |
| ---                 | ---                                       |
| `=`                 | [Eq]ual                                   |
| `!=`                | [N]ot [E]qual                             |

#### Files

| File operator       | Meaning                                   |
| ---                 | ---                                       |
| `-f`                | [F]ile exists                             |
| `-d`                | [D]irectory exists                        |
| `-r`                | File or directory exists and [r]eadable   |
| `-w`                | File or directory exists and [w]ritable   |
| `-x`                | File or directory exists and e[x]ecutable |


## Process communication

### Writing to files

```fish
# Overwrite file
echo 'Hello from Fish!' > my_file

# Append to file
echo 'Hello from Fish!' >> my_file
```

### Piping

```fish
my_command | another_command
```

Passes the first command stdout output as an input to a second command.

### Command substitution

```fish
echo (math $my_variable + 1)
```

The `(...)` expression is substituted with the output of the command inside it.


### Process substitution

```fish
echo (math $my_variable + 1 | psub)
```

The `(... | psub)` expression is substituted with a temporary file with the command's output.

## Functions

### Defining and erasing

```fish
# Declare the function
function my_function --description 'My description'
  ···
end

# Remove the function
functions --erase my_function
```

## Events

### Emitting

```fish
emit my_event
```

Emits an event that can be picked up by other functions.

### Event handling

```fish
function my_hook --on-event my_event
  ···
end
```

Reacts to the `my_event` event.

## Abbreviations

### Defining and erasing

```fish
# Declare the abbreviation
abbr --add grh "git reset --hard HEAD"
```


```fish
# Remove the abbreviation
abbr --erase grh
```

## Completions

### Defining completions

```fish
complete --command mycommand --arguments 'install uninstall'
complete --command mycommand --short-option 'h' --long-option 'help' --description 'Display help'
```

| Option              | Description                                          |
| ---                 | ---                                                  |
| `--arguments`       | Arguments to the command itself or option            |
| `--short-option`    | Short option                                         |
| `--long-option`     | Long option                                          |
| `--no-files`        | Don't suggest files                                  |
| `--force-files`     | Suggest files                                        |
| `--condition`       | Display the hint only when a given condition is true |
| `--description`     | Description                                          |

Declares the completion for a command.

### Removing completions

```fish
complete --command mycommand --erase
```

## Useful built-in functions

| Function                              | Description                                                   |
| ---                                   | ---                                                           |
| `__fish_seen_argument`                | Check whether the specified argument is used                  |
| `__fish_seen_subcommand_from`         | Check whether the specified subcommand is used                |
| `__fish_use_subcommand`               | Check whether any subcommand is used                          |
| ---                                   | ---                                                           |
| `__fish_complete_directories`         | Complete directories with the specified letters in their name |
| `__fish_complete_suffix`              | Complete files with the specified suffix                      |
| ---                                   | ---                                                           |
| `__fish_complete_users`               | List all users                                                |
| `__fish_complete_groups`              | List all user groups                                          |
| `__fish_print_hostnames`              | List all host names                                           |
| `__fish_complete_pids`                | List all PIDs                                                 |
| `__fish_print_filesystems`            | List all known filesystems                                    |
| `__fish_print_interfaces`             | List all network interfaces                                   |


id: firefox
git_filename: ./firefox.md
format: md
field_title: Firefox
field_tags: Archived
data:
{"title": "Firefox", "tags": ["Archived"], "archived": "This sheet has not been updated with newer Firefox releases.", "body": "### [Firefox 31](https://www.mozilla.org/en-US/firefox/31.0/releasenotes/) (July 2014)\n\n * CSS: variables\n\n### [Firefox 30](https://developer.mozilla.org/en-US/Firefox/Releases/30) (June 2014)\n\n * CSS: Allow `line-height` in `<input type='button'>`\n * JS: `Console.count()`\n * JS: ES6 array and generator comprehensions\n\n### Firefox 29 (April 2014)\n\n * New UI\n * CSS: Unprefixed `box-shadow`\n\n### Firefox 18 (Jan 2013)\n\n * Faster JS compiler (IonMonkey)\n * Mac retina support\n * JS: `window.devicePixelRatio`\n * JS: unprefixed `ontouchstart`\n * HTML: `<input type='number'>`\n * HTML: `<input type='color'>`\n\n### Firefox 17 (Nov 2012)\n\n * No more support for Mac OSX 10.5 and below\n * SVG `FillPaint` and `StrokePaint`\n * HTML `<iframe sandbox=...>` ([docs][iframe-sandbox])\n * Official support for Windows 8 ([link][17reqs])\n\n[iframe-sandbox]: https://developer.mozilla.org/en-US/docs/HTML/Element/iframe#attr-sandbox\n[17reqs]: http://www.mozilla.org/en-US/firefox/17.0/system-requirements/\n\n### Firefox 16 (Oct 2012)\n\n * Web app support ([docs][webapp])\n * Unprefixed CSS animations, transitions, transforms, gradients\n\n[webapp]: https://developer.mozilla.org/en-US/docs/Apps/Getting_Started\n\n### Firefox 15 (Aug 2012)\n\n * Background updates\n * SPDY v3\n * Opus audio codec\n * HTML `<audio played>` (and `<video>`)\n * HTML `<source media=...>`\n\n### Firefox 14 (Jul 2012)\n\n * Full screen support for OSX Lion\n * JS pointer lock API ([docs][lock])\n * JS display sleep API ([docs][sleep])\n\n[lock]: https://developer.mozilla.org/en-US/docs/API/Pointer_Lock_API\n[sleep]: https://bugzilla.mozilla.org/show_bug.cgi?id=697132\n\n### Firefox 13 (Jun 2012)\n\n * Smooth scrolling by default\n * SPDY on by default\n * CSS `column-fill` ([docs][cf])\n * ECMA 6 `Map` and `Set`\n * CSS `background-position` extended syntax\n * CSS `:invalid`\n * CSS turn unit (`rotate(0.5turn)`)\n\n\n[cf]: https://developer.mozilla.org/en/CSS/column-fill\n\n### Firefox 12 (Apr 2012)\n\n * CSS `text-align-last` ([docs][tal])\n\n[tal]: https://developer.mozilla.org/en/CSS/text-align-last\n\n### Firefox 11 (Mar 2012)\n\n * `element.outerHTML` ([docs][outer])\n * Dev tools: Style editor, 3D page inspector ([docs][tools])\n * Unprefixed web sockets\n * CSS `text-size-adjust` ([docs][tsa])\n\n[outer]: https://developer.mozilla.org/en-US/docs/DOM/element.outerHTML\n[tools]: https://hacks.mozilla.org/2011/12/new-developer-tools-in-firefox-11-aurora/\n[tsa]: https://developer.mozilla.org/en-US/docs/CSS/text-size-adjust\n\n### Firefox 10 (Jan 2012)\n\n * CSS 3D transforms\n * HTML `<bdi>` element\n * JS fullscreen API ([docs][fs])\n * IndexedDB APIs\n * Dev tools: CSS Style inspector\n\n[fs]: https://wiki.mozilla.org/Platform/Features/Full_Screen_APIs\n\n### Firefox 9 (Dec 2011)\n\n * Two-finger swipe in Mac OSX Lion\n * CSS `font-stretch`\n * CSS improved `text-overflow`\n * JS `navigator.doNotTrack`\n\n### Firefox 8 (Nov 2011)\n\n### Firefox 7 (Sep 2011)\n\n  * CSS `text-overflow: ellipsis`\n  * Hidden `http://` prefix in address bar\n\n### Firefox 6 (Aug 2011)\n\n  * JS `window.matchMedia`\n  * Websockets (!)\n  * JS EvetnSource / server-sent events\n\n### Firefox 5 (Jun 2011)\n\n  * CSS animations\n  * Background tab `setTimeout` and `setInterval` clamped to 1000ms\n\n### Firefox 4 (Mar 2011)\n\n  * Do Not Track (DNT) header\n  * New JS endinge (JagerMonkey)\n  * Hardware-accelerated rendering\n  * WebM video\n  * OpenType ligatures/kerning/font variants\n  * CSS transitions partial support\n  * JS audio data API\n  * JS `mozRequestAnimationFrame`\n  * HTML5 forms API\n  * `<video buffered>`\n  * HTML5 history API\n  * New HTML5 parser\n  * ...\n\n### Firefox 3.6 (Jan 2010)\n\n  * CSS gradients\n  * CSS pointer events\n  * HTML drag & drop API\n  * HTML `<script async>`\n\n### Reference\n\n * [Firefox releases](https://www.mozilla.org/en-US/firefox/releases/)"}

field_body:
### [Firefox 31](https://www.mozilla.org/en-US/firefox/31.0/releasenotes/) (July 2014)

 * CSS: variables

### [Firefox 30](https://developer.mozilla.org/en-US/Firefox/Releases/30) (June 2014)

 * CSS: Allow `line-height` in `<input type='button'>`
 * JS: `Console.count()`
 * JS: ES6 array and generator comprehensions

### Firefox 29 (April 2014)

 * New UI
 * CSS: Unprefixed `box-shadow`

### Firefox 18 (Jan 2013)

 * Faster JS compiler (IonMonkey)
 * Mac retina support
 * JS: `window.devicePixelRatio`
 * JS: unprefixed `ontouchstart`
 * HTML: `<input type='number'>`
 * HTML: `<input type='color'>`

### Firefox 17 (Nov 2012)

 * No more support for Mac OSX 10.5 and below
 * SVG `FillPaint` and `StrokePaint`
 * HTML `<iframe sandbox=...>` ([docs][iframe-sandbox])
 * Official support for Windows 8 ([link][17reqs])

[iframe-sandbox]: https://developer.mozilla.org/en-US/docs/HTML/Element/iframe#attr-sandbox
[17reqs]: http://www.mozilla.org/en-US/firefox/17.0/system-requirements/

### Firefox 16 (Oct 2012)

 * Web app support ([docs][webapp])
 * Unprefixed CSS animations, transitions, transforms, gradients

[webapp]: https://developer.mozilla.org/en-US/docs/Apps/Getting_Started

### Firefox 15 (Aug 2012)

 * Background updates
 * SPDY v3
 * Opus audio codec
 * HTML `<audio played>` (and `<video>`)
 * HTML `<source media=...>`

### Firefox 14 (Jul 2012)

 * Full screen support for OSX Lion
 * JS pointer lock API ([docs][lock])
 * JS display sleep API ([docs][sleep])

[lock]: https://developer.mozilla.org/en-US/docs/API/Pointer_Lock_API
[sleep]: https://bugzilla.mozilla.org/show_bug.cgi?id=697132

### Firefox 13 (Jun 2012)

 * Smooth scrolling by default
 * SPDY on by default
 * CSS `column-fill` ([docs][cf])
 * ECMA 6 `Map` and `Set`
 * CSS `background-position` extended syntax
 * CSS `:invalid`
 * CSS turn unit (`rotate(0.5turn)`)


[cf]: https://developer.mozilla.org/en/CSS/column-fill

### Firefox 12 (Apr 2012)

 * CSS `text-align-last` ([docs][tal])

[tal]: https://developer.mozilla.org/en/CSS/text-align-last

### Firefox 11 (Mar 2012)

 * `element.outerHTML` ([docs][outer])
 * Dev tools: Style editor, 3D page inspector ([docs][tools])
 * Unprefixed web sockets
 * CSS `text-size-adjust` ([docs][tsa])

[outer]: https://developer.mozilla.org/en-US/docs/DOM/element.outerHTML
[tools]: https://hacks.mozilla.org/2011/12/new-developer-tools-in-firefox-11-aurora/
[tsa]: https://developer.mozilla.org/en-US/docs/CSS/text-size-adjust

### Firefox 10 (Jan 2012)

 * CSS 3D transforms
 * HTML `<bdi>` element
 * JS fullscreen API ([docs][fs])
 * IndexedDB APIs
 * Dev tools: CSS Style inspector

[fs]: https://wiki.mozilla.org/Platform/Features/Full_Screen_APIs

### Firefox 9 (Dec 2011)

 * Two-finger swipe in Mac OSX Lion
 * CSS `font-stretch`
 * CSS improved `text-overflow`
 * JS `navigator.doNotTrack`

### Firefox 8 (Nov 2011)

### Firefox 7 (Sep 2011)

  * CSS `text-overflow: ellipsis`
  * Hidden `http://` prefix in address bar

### Firefox 6 (Aug 2011)

  * JS `window.matchMedia`
  * Websockets (!)
  * JS EvetnSource / server-sent events

### Firefox 5 (Jun 2011)

  * CSS animations
  * Background tab `setTimeout` and `setInterval` clamped to 1000ms

### Firefox 4 (Mar 2011)

  * Do Not Track (DNT) header
  * New JS endinge (JagerMonkey)
  * Hardware-accelerated rendering
  * WebM video
  * OpenType ligatures/kerning/font variants
  * CSS transitions partial support
  * JS audio data API
  * JS `mozRequestAnimationFrame`
  * HTML5 forms API
  * `<video buffered>`
  * HTML5 history API
  * New HTML5 parser
  * ...

### Firefox 3.6 (Jan 2010)

  * CSS gradients
  * CSS pointer events
  * HTML drag & drop API
  * HTML `<script async>`

### Reference

 * [Firefox releases](https://www.mozilla.org/en-US/firefox/releases/)


id: firebase
git_filename: ./firebase.md
format: md
field_title: Firebase
field_tags: WIP
field_prism_languages: coffeescript
data:
{"title": "Firebase", "prism_languages": ["coffeescript"], "tags": ["WIP"], "body": "### Authenticating\n\n```js\nFB = new Firebase('https://xxx.firebase.io')\nFB.auth(TOKEN, (err, result) => { \u00b7\u00b7\u00b7})\n```\n\n```js\nFB.authAnonymously(\u00b7\u00b7\u00b7)\nFB.authWithPassword(\u00b7\u00b7\u00b7)\nFB.authWithOAuthPopup(\u00b7\u00b7\u00b7)\nFB.authWithOAuthToken(\u00b7\u00b7\u00b7)\n```\n\n### Using\n\n```js\nUsers = FB.child('users')\n```\n\n```js\n// Create\nuser = Users.push(first: \"Frank\", last: \"Sinatra\")\n```\n\n```js\n// Retrieve\nuser = Users.child('alan')  // gets `users/alan`\n```\n\n```js\n// Update\nuser.set(first: \"Miles\", last: \"Davis\")\nuser.update(first: \"Miles\")\nuser.setWithPriority({ \u00b7\u00b7\u00b7 }, priority)\n```\n\n```js\n// Destroy\nuser.remove()\n```\n\n```js\n// Getting\nuser.name()  // primary id\n\nuser.once('value', (snap) => {\n  snap.name()  // primary id\n  snap.val()   // value\n}, (err) => {\n  \u00b7\u00b7\u00b7\n})\n```\n\n```js\n// traversal\nuser.parent()\n```\n\n### Querying\n\n```coffeescript\nUsers = FB.child('users')\nUsers\n  .startAt(1000)\n  .limit(50)\n  .equalTo(priority, [name])\n  .on 'child_added', (snap) -> \u00b7\u00b7\u00b7\n```\n### Lists\n\n```coffeescript\nPosts = FB.child('posts')\npost = Posts.push({ title: \"How to do things\", author: \"alan\" })\n```\n\n## References\n{: .-one-column}\n\n* <https://www.firebase.com/docs/web/api/>\n* <https://www.firebase.com/docs/web/recipes.html>"}

field_body:
### Authenticating

```js
FB = new Firebase('https://xxx.firebase.io')
FB.auth(TOKEN, (err, result) => { ···})
```

```js
FB.authAnonymously(···)
FB.authWithPassword(···)
FB.authWithOAuthPopup(···)
FB.authWithOAuthToken(···)
```

### Using

```js
Users = FB.child('users')
```

```js
// Create
user = Users.push(first: "Frank", last: "Sinatra")
```

```js
// Retrieve
user = Users.child('alan')  // gets `users/alan`
```

```js
// Update
user.set(first: "Miles", last: "Davis")
user.update(first: "Miles")
user.setWithPriority({ ··· }, priority)
```

```js
// Destroy
user.remove()
```

```js
// Getting
user.name()  // primary id

user.once('value', (snap) => {
  snap.name()  // primary id
  snap.val()   // value
}, (err) => {
  ···
})
```

```js
// traversal
user.parent()
```

### Querying

```coffeescript
Users = FB.child('users')
Users
  .startAt(1000)
  .limit(50)
  .equalTo(priority, [name])
  .on 'child_added', (snap) -> ···
```
### Lists

```coffeescript
Posts = FB.child('posts')
post = Posts.push({ title: "How to do things", author: "alan" })
```

## References
{: .-one-column}

* <https://www.firebase.com/docs/web/api/>
* <https://www.firebase.com/docs/web/recipes.html>


id: find
git_filename: ./find.md
format: md
field_title: Find
field_category: CLI
field_updated: 2019-11-17
field_updated___timezone: UTC
data:
{"title": "Find", "category": "CLI", "updated": "2019-11-17", "body": "### Usage\n{: .-prime}\n\n```bash\nfind <path> <conditions> <actions>\n```\n\n### Conditions\n\n```bash\n-name \"*.c\"\n```\n\n```bash\n-user jonathan\n-nouser\n```\n\n```bash\n-type f            # File\n-type d            # Directory\n-type l            # Symlink\n```\n\n```bash\n-depth 2           # At least 3 levels deep\n-regex PATTERN\n```\n\n```bash\n-size 8            # Exactly 8 512-bit blocks \n-size -128c        # Smaller than 128 bytes\n-size 1440k        # Exactly 1440KiB\n-size +10M         # Larger than 10MiB\n-size +2G          # Larger than 2GiB\n```\n\n```bash\n-newer   file.txt\n-newerm  file.txt        # modified newer than file.txt\n-newerX  file.txt        # [c]hange, [m]odified, [B]create\n-newerXt \"1 hour ago\"    # [t]imestamp\n```\n\n### Access time conditions\n\n```bash\n-atime 0           # Last accessed between now and 24 hours ago\n-atime +0          # Accessed more than 24 hours ago\n-atime 1           # Accessed between 24 and 48 hours ago\n-atime +1          # Accessed more than 48 hours ago\n-atime -1          # Accessed less than 24 hours ago (same a 0)\n-ctime -6h30m      # File status changed within the last 6 hours and 30 minutes\n-mtime +1w         # Last modified more than 1 week ago\n```\n\nThese conditions only work in MacOS and BSD-like systems (no GNU/Linux support).\n\n### Condition flow\n\n```bash\n\\! -name \"*.c\" # NOT named \"*.c\"\n\\( x -or y \\)\n```\n\n### Actions\n\n```bash\n-exec rm {} \\;\n-print\n-delete\n```\n\n### Examples\n\n```bash\nfind . -name '*.jpg'\nfind . -name '*.jpg' -exec rm {} \\;\n```\n\n```bash\nfind . -newerBt \"24 hours ago\"\n```\n\n```bash\nfind . -type f -mtime +29 # find files modified more than 30 days ago\nfind . -type f -newermt 2016-08-07 \\! -newermt 2016-08-08 # find in date range\n```"}

field_body:
### Usage
{: .-prime}

```bash
find <path> <conditions> <actions>
```

### Conditions

```bash
-name "*.c"
```

```bash
-user jonathan
-nouser
```

```bash
-type f            # File
-type d            # Directory
-type l            # Symlink
```

```bash
-depth 2           # At least 3 levels deep
-regex PATTERN
```

```bash
-size 8            # Exactly 8 512-bit blocks 
-size -128c        # Smaller than 128 bytes
-size 1440k        # Exactly 1440KiB
-size +10M         # Larger than 10MiB
-size +2G          # Larger than 2GiB
```

```bash
-newer   file.txt
-newerm  file.txt        # modified newer than file.txt
-newerX  file.txt        # [c]hange, [m]odified, [B]create
-newerXt "1 hour ago"    # [t]imestamp
```

### Access time conditions

```bash
-atime 0           # Last accessed between now and 24 hours ago
-atime +0          # Accessed more than 24 hours ago
-atime 1           # Accessed between 24 and 48 hours ago
-atime +1          # Accessed more than 48 hours ago
-atime -1          # Accessed less than 24 hours ago (same a 0)
-ctime -6h30m      # File status changed within the last 6 hours and 30 minutes
-mtime +1w         # Last modified more than 1 week ago
```

These conditions only work in MacOS and BSD-like systems (no GNU/Linux support).

### Condition flow

```bash
\! -name "*.c" # NOT named "*.c"
\( x -or y \)
```

### Actions

```bash
-exec rm {} \;
-print
-delete
```

### Examples

```bash
find . -name '*.jpg'
find . -name '*.jpg' -exec rm {} \;
```

```bash
find . -newerBt "24 hours ago"
```

```bash
find . -type f -mtime +29 # find files modified more than 30 days ago
find . -type f -newermt 2016-08-07 \! -newermt 2016-08-08 # find in date range
```


id: figlet
git_filename: ./figlet.md
format: md
field_title: Figlet
field_updated: 2018-06-14
field_updated___timezone: UTC
data:
{"title": "Figlet", "updated": "2018-06-14", "introduction": "[Figlet] renders text as ASCII art. Here's a list of Figlet fonts for Figlet 2.2.5.\n[Figlet]: http://www.figlet.org/\n", "body": "### Usage\n\n```bash\necho \"Hamburger\" | figlet -f cybermedium\n```\n\n```\n_  _ ____ _  _ ___  _  _ ____ ____ ____ ____ \n|__| |__| |\\/| |__] |  | |__/ | __ |___ |__/ \n|  | |  | |  | |__] |__| |  \\ |__] |___ |  \\ \n```\n{: .-figlet}\n\nRun `figlet` with `-f <font>` to use a font.\n\n### Toilet fonts\n\n```bash\necho \"Hello\" | \\\n  figlet -f smmono12 -d /usr/local/share/figlet\n```\n\nFiglet comes with support for Toilet fonts, which are in `{share}/figlet`. This is not the default font dir, so you'll have to use `-d <path>` to access it.\n\n## Rico's favorites\n\n### wideterm\n\n```\n\uff28\uff41\uff4d\uff42\uff55\uff52\uff47\uff45\uff52\n```\n{: .-figlet}\n\n### stampatello\n\n```\n,-_/,.           .                       \n' |_|/ ,-. ,-,-. |-. . . ,-. ,-. ,-. ,-. \n /| |  ,-| | | | | | | | |   | | |-' |   \n `' `' `-^ ' ' ' ^-' `-^ '   `-| `-' '   \n                              ,|         \n                              `'         \n```\n{: .-figlet}\n\n### cybermedium\n\n```\n_  _ ____ _  _ ___  _  _ ____ ____ ____ ____ \n|__| |__| |\\/| |__] |  | |__/ | __ |___ |__/ \n|  | |  | |  | |__] |__| |  \\ |__] |___ |  \\ \n```\n{: .-figlet}\n\n### cyberlarge\n\n```\n _     _ _______ _______ ______  _     _  ______  ______ _______  ______\n |_____| |_____| |  |  | |_____] |     | |_____/ |  ____ |______ |_____/\n |     | |     | |  |  | |_____] |_____| |    \\_ |_____| |______ |    \\_\n```\n{: .-figlet}\n\n### thin\n\n```\n|   |          |                             \n|---|,---.,-.-.|---..   .,---.,---.,---.,---.\n|   |,---|| | ||   ||   ||    |   ||---'|    \n`   '`---^` ' '`---'`---'`    `---|`---'`    \n                              `---'          \n```\n{: .-figlet}\n\n### smbraille\n\n```\n \u28c7\u28f8 \u2880\u28c0 \u28c0\u28c0  \u28c7\u2840 \u2840\u2880 \u2840\u28c0 \u2880\u2840 \u2880\u2840 \u2840\u28c0\n \u2807\u2838 \u2823\u283c \u2807\u2807\u2807 \u2827\u281c \u2823\u283c \u280f  \u28d1\u287a \u2823\u282d \u280f \n```\n{: .-figlet}\n\n### rectangles\n\n```\n _____           _                       \n|  |  |___ _____| |_ _ _ ___ ___ ___ ___ \n|     | .'|     | . | | |  _| . | -_|  _|\n|__|__|__,|_|_|_|___|___|_| |_  |___|_|  \n                            |___|        \n```\n{: .-figlet}\n\n### bell\n\n```\n __  __                  _                                     \n |   |    ___  , _ , _   \\ ___  ,   . .___    ___.   ___  .___ \n |___|   /   ` |' `|' `. |/   \\ |   | /   \\ .'   ` .'   ` /   \\\n |   |  |    | |   |   | |    ` |   | |   ' |    | |----' |   '\n /   /  `.__/| /   '   / `___,' `._/| /      `---| `.___, /    \n                                             \\___/             \n```\n{: .-figlet}\n\n## Figlet fonts\n\n### 3-d\n\n```\n **      **                       **                                           \n/**     /**                      /**                      *****                \n/**     /**  ******   ********** /**      **   ** ****** **///**  *****  ******\n/********** //////** //**//**//**/****** /**  /**//**//*/**  /** **///**//**//*\n/**//////**  *******  /** /** /**/**///**/**  /** /** / //******/******* /** / \n/**     /** **////**  /** /** /**/**  /**/**  /** /**    /////**/**////  /**   \n/**     /**//******** *** /** /**/****** //******/***     ***** //******/***   \n//      //  //////// ///  //  // /////    ////// ///     /////   ////// ///    \n```\n{: .-figlet}\n\n### 3x5\n\n```\n# #         #                       \n# #  ## ### ### # # ### ### ### ### \n### # # ### # # # # #   # # ##  #   \n# # ### # # ### ### #    ## ### #   \n# #                     ###         \n```\n{: .-figlet}\n\n### 5lineoblique\n\n```\n    //    / /                                                                        \n   //___ / /  ___      _   __     / __               __      ___      ___      __    \n  / ___   / //   ) ) // ) )  ) ) //   ) ) //   / / //  ) ) //   ) ) //___) ) //  ) ) \n //    / / //   / / // / /  / / //   / / //   / / //      ((___/ / //       //       \n//    / / ((___( ( // / /  / / ((___/ / ((___( ( //        //__   ((____   //        \n```\n{: .-figlet}\n\n### acrobatic\n\n```\n  o         o                                  o                                                                      \n <|>       <|>                                <|>                                                                     \n < >       < >                                / >                                                                     \n  |         |      o__ __o/  \\o__ __o__ __o   \\o__ __o      o       o   \\o__ __o     o__ __o/    o__  __o   \\o__ __o  \n  o__/_ _\\__o     /v     |    |     |     |>   |     v\\    <|>     <|>   |     |>   /v     |    /v      |>   |     |> \n  |         |    />     / \\  / \\   / \\   / \\  / \\     <\\   < >     < >  / \\   < >  />     / \\  />      //   / \\   < > \n <o>       <o>   \\      \\o/  \\o/   \\o/   \\o/  \\o/      /    |       |   \\o/        \\      \\o/  \\o    o/     \\o/       \n  |         |     o      |    |     |     |    |      o     o       o    |          o      |    v\\  /v __o   |        \n / \\       / \\    <\\__  / \\  / \\   / \\   / \\  / \\  __/>     <\\__ __/>   / \\         <\\__  < >    <\\/> __/>  / \\       \n                                                                                           |                          \n                                                                                   o__     o                          \n                                                                                   <\\__ __/>                          \n```\n{: .-figlet}\n\n### alligator\n\n```\n      :::    :::    :::      :::   :::  ::::::::: :::    ::::::::::::  :::::::: ::::::::::::::::::: \n     :+:    :+:  :+: :+:   :+:+: :+:+: :+:    :+::+:    :+::+:    :+::+:    :+::+:       :+:    :+: \n    +:+    +:+ +:+   +:+ +:+ +:+:+ +:++:+    +:++:+    +:++:+    +:++:+       +:+       +:+    +:+  \n   +#++:++#+++#++:++#++:+#+  +:+  +#++#++:++#+ +#+    +:++#++:++#: :#:       +#++:++#  +#++:++#:    \n  +#+    +#++#+     +#++#+       +#++#+    +#++#+    +#++#+    +#++#+   +#+#+#+       +#+    +#+    \n #+#    #+##+#     #+##+#       #+##+#    #+##+#    #+##+#    #+##+#    #+##+#       #+#    #+#     \n###    ######     ######       ############  ######## ###    ### ######## #############    ###      \n```\n{: .-figlet}\n\n### alligator2\n\n```\n:::    :::    :::    ::::    :::: ::::::::: :::    ::::::::::::  :::::::: :::::::::::::::::::  \n:+:    :+:  :+: :+:  +:+:+: :+:+:+:+:    :+::+:    :+::+:    :+::+:    :+::+:       :+:    :+: \n+:+    +:+ +:+   +:+ +:+ +:+:+ +:++:+    +:++:+    +:++:+    +:++:+       +:+       +:+    +:+ \n+#++:++#+++#++:++#++:+#+  +:+  +#++#++:++#+ +#+    +:++#++:++#: :#:       +#++:++#  +#++:++#:  \n+#+    +#++#+     +#++#+       +#++#+    +#++#+    +#++#+    +#++#+   +#+#+#+       +#+    +#+ \n#+#    #+##+#     #+##+#       #+##+#    #+##+#    #+##+#    #+##+#    #+##+#       #+#    #+# \n###    ######     ######       ############  ######## ###    ### ######## #############    ### \n```\n{: .-figlet}\n\n### alphabet\n\n```\nH  H           b                         \nH  H           b                         \nHHHH  aa mmmm  bbb  u  u rrr ggg eee rrr \nH  H a a m m m b  b u  u r   g g e e r   \nH  H aaa m m m bbb   uuu r   ggg ee  r   \n                               g         \n                             ggg         \n```\n{: .-figlet}\n\n### avatar\n\n```\n _     ____  _      ____  _     ____  _____ _____ ____ \n/ \\ /|/  _ \\/ \\__/|/  _ \\/ \\ /\\/  __\\/  __//  __//  __\\\n| |_||| / \\|| |\\/||| | //| | |||  \\/|| |  _|  \\  |  \\/|\n| | ||| |-||| |  ||| |_\\\\| \\_/||    /| |_//|  /_ |    /\n\\_/ \\|\\_/ \\|\\_/  \\|\\____/\\____/\\_/\\_\\\\____\\\\____\\\\_/\\_\\\n```\n{: .-figlet}\n\n### banner\n\n```\n#     #                                                         \n#     #   ##   #    # #####  #    # #####   ####  ###### #####  \n#     #  #  #  ##  ## #    # #    # #    # #    # #      #    # \n####### #    # # ## # #####  #    # #    # #      #####  #    # \n#     # ###### #    # #    # #    # #####  #  ### #      #####  \n#     # #    # #    # #    # #    # #   #  #    # #      #   #  \n#     # #    # #    # #####   ####  #    #  ####  ###### #    # \n```\n{: .-figlet}\n\n### banner3-D\n\n```\n'##::::'##::::'###::::'##::::'##:'########::'##::::'##:'########:::'######:::'########:'########::\n ##:::: ##:::'## ##::: ###::'###: ##.... ##: ##:::: ##: ##.... ##:'##... ##:: ##.....:: ##.... ##:\n ##:::: ##::'##:. ##:: ####'####: ##:::: ##: ##:::: ##: ##:::: ##: ##:::..::: ##::::::: ##:::: ##:\n #########:'##:::. ##: ## ### ##: ########:: ##:::: ##: ########:: ##::'####: ######::: ########::\n ##.... ##: #########: ##. #: ##: ##.... ##: ##:::: ##: ##.. ##::: ##::: ##:: ##...:::: ##.. ##:::\n ##:::: ##: ##.... ##: ##:.:: ##: ##:::: ##: ##:::: ##: ##::. ##:: ##::: ##:: ##::::::: ##::. ##::\n ##:::: ##: ##:::: ##: ##:::: ##: ########::. #######:: ##:::. ##:. ######::: ########: ##:::. ##:\n..:::::..::..:::::..::..:::::..::........::::.......:::..:::::..:::......::::........::..:::::..::\n```\n{: .-figlet}\n\n### banner3\n\n```\n##     ##    ###    ##     ## ########  ##     ## ########   ######   ######## ########  \n##     ##   ## ##   ###   ### ##     ## ##     ## ##     ## ##    ##  ##       ##     ## \n##     ##  ##   ##  #### #### ##     ## ##     ## ##     ## ##        ##       ##     ## \n######### ##     ## ## ### ## ########  ##     ## ########  ##   #### ######   ########  \n##     ## ######### ##     ## ##     ## ##     ## ##   ##   ##    ##  ##       ##   ##   \n##     ## ##     ## ##     ## ##     ## ##     ## ##    ##  ##    ##  ##       ##    ##  \n##     ## ##     ## ##     ## ########   #######  ##     ##  ######   ######## ##     ## \n```\n{: .-figlet}\n\n### banner4\n\n```\n.##.....##....###....##.....##.########..##.....##.########...######...########.########.\n.##.....##...##.##...###...###.##.....##.##.....##.##.....##.##....##..##.......##.....##\n.##.....##..##...##..####.####.##.....##.##.....##.##.....##.##........##.......##.....##\n.#########.##.....##.##.###.##.########..##.....##.########..##...####.######...########.\n.##.....##.#########.##.....##.##.....##.##.....##.##...##...##....##..##.......##...##..\n.##.....##.##.....##.##.....##.##.....##.##.....##.##....##..##....##..##.......##....##.\n.##.....##.##.....##.##.....##.########...#######..##.....##..######...########.##.....##\n```\n{: .-figlet}\n\n### barbwire\n\n```\n><<     ><<                       ><<                                               \n><<     ><<                       ><<                                               \n><<     ><<   ><<    ><<< ><< ><< ><<      ><<  ><<>< ><<<   ><<      ><<    >< ><<<\n><<<<<< ><< ><<  ><<  ><<  ><  ><<><< ><<  ><<  ><< ><<    ><<  ><< ><   ><<  ><<   \n><<     ><<><<   ><<  ><<  ><  ><<><<   ><<><<  ><< ><<   ><<   ><<><<<<< ><< ><<   \n><<     ><<><<   ><<  ><<  ><  ><<><<   ><<><<  ><< ><<    ><<  ><<><         ><<   \n><<     ><<  ><< ><<<><<<  ><  ><<><< ><<    ><<><<><<<        ><<   ><<<<   ><<<   \n                                                            ><<                     \n```\n{: .-figlet}\n\n### basic\n\n```\ndb   db  .d8b.  .88b  d88. d8888b. db    db d8888b.  d888b  d88888b d8888b. \n88   88 d8' `8b 88'YbdP`88 88  `8D 88    88 88  `8D 88' Y8b 88'     88  `8D \n88ooo88 88ooo88 88  88  88 88oooY' 88    88 88oobY' 88      88ooooo 88oobY' \n88~~~88 88~~~88 88  88  88 88~~~b. 88    88 88`8b   88  ooo 88~~~~~ 88`8b   \n88   88 88   88 88  88  88 88   8D 88b  d88 88 `88. 88. ~8~ 88.     88 `88. \nYP   YP YP   YP YP  YP  YP Y8888P' ~Y8888P' 88   YD  Y888P  Y88888P 88   YD \n```\n{: .-figlet}\n\n### bell\n\n```\n __  __                  _                                     \n |   |    ___  , _ , _   \\ ___  ,   . .___    ___.   ___  .___ \n |___|   /   ` |' `|' `. |/   \\ |   | /   \\ .'   ` .'   ` /   \\\n |   |  |    | |   |   | |    ` |   | |   ' |    | |----' |   '\n /   /  `.__/| /   '   / `___,' `._/| /      `---| `.___, /    \n                                             \\___/             \n```\n{: .-figlet}\n\n### big\n\n```\n _    _                 _                               \n| |  | |               | |                              \n| |__| | __ _ _ __ ___ | |__  _   _ _ __ __ _  ___ _ __ \n|  __  |/ _` | '_ ` _ \\| '_ \\| | | | '__/ _` |/ _ \\ '__|\n| |  | | (_| | | | | | | |_) | |_| | | | (_| |  __/ |   \n|_|  |_|\\__,_|_| |_| |_|_.__/ \\__,_|_|  \\__, |\\___|_|   \n                                         __/ |          \n                                        |___/           \n```\n{: .-figlet}\n\n### bigchief\n\n```\n_____________________________________________________________\n    _     _                                                  \n    /    /                 /                                 \n---/___ /-----__---_--_---/__----------)__----__----__---)__-\n  /    /    /   ) / /  ) /   ) /   /  /   ) /   ) /___) /   )\n_/____/____(___(_/_/__/_(___/_(___(__/_____(___/_(___ _/_____\n                                              /              \n                                          (_ /               \n```\n{: .-figlet}\n\n### binary\n\n```\n01001000 01100001 01101101 01100010 01110101 01110010 01100111 01100101 01110010 \n```\n{: .-figlet}\n\n### block\n\n```\n_|    _|                            _|                                                          \n_|    _|    _|_|_|  _|_|_|  _|_|    _|_|_|    _|    _|  _|  _|_|    _|_|_|    _|_|    _|  _|_|  \n_|_|_|_|  _|    _|  _|    _|    _|  _|    _|  _|    _|  _|_|      _|    _|  _|_|_|_|  _|_|      \n_|    _|  _|    _|  _|    _|    _|  _|    _|  _|    _|  _|        _|    _|  _|        _|        \n_|    _|    _|_|_|  _|    _|    _|  _|_|_|      _|_|_|  _|          _|_|_|    _|_|_|  _|        \n                                                                        _|                      \n                                                                    _|_|                        \n```\n{: .-figlet}\n\n### broadway\n\n```\n                                                .         .                                                                                                         \n8 8888        8          .8.                   ,8.       ,8.          8 888888888o   8 8888      88 8 888888888o.      ,o888888o.    8 8888888888   8 888888888o.   \n8 8888        8         .888.                 ,888.     ,888.         8 8888    `88. 8 8888      88 8 8888    `88.    8888     `88.  8 8888         8 8888    `88.  \n8 8888        8        :88888.               .`8888.   .`8888.        8 8888     `88 8 8888      88 8 8888     `88 ,8 8888       `8. 8 8888         8 8888     `88  \n8 8888        8       . `88888.             ,8.`8888. ,8.`8888.       8 8888     ,88 8 8888      88 8 8888     ,88 88 8888           8 8888         8 8888     ,88  \n8 8888        8      .8. `88888.           ,8'8.`8888,8^8.`8888.      8 8888.   ,88' 8 8888      88 8 8888.   ,88' 88 8888           8 888888888888 8 8888.   ,88'  \n8 8888        8     .8`8. `88888.         ,8' `8.`8888' `8.`8888.     8 8888888888   8 8888      88 8 888888888P'  88 8888           8 8888         8 888888888P'   \n8 8888888888888    .8' `8. `88888.       ,8'   `8.`88'   `8.`8888.    8 8888    `88. 8 8888      88 8 8888`8b      88 8888   8888888 8 8888         8 8888`8b       \n8 8888        8   .8'   `8. `88888.     ,8'     `8.`'     `8.`8888.   8 8888      88 ` 8888     ,8P 8 8888 `8b.    `8 8888       .8' 8 8888         8 8888 `8b.     \n8 8888        8  .888888888. `88888.   ,8'       `8        `8.`8888.  8 8888    ,88'   8888   ,d8P  8 8888   `8b.     8888     ,88'  8 8888         8 8888   `8b.   \n8 8888        8 .8'       `8. `88888. ,8'         `         `8.`8888. 8 888888888P      `Y88888P'   8 8888     `88.    `8888888P'    8 888888888888 8 8888     `88. \n```\n{: .-figlet}\n\n### bubble\n\n```\n  _   _   _   _   _   _   _   _   _  \n / \\ / \\ / \\ / \\ / \\ / \\ / \\ / \\ / \\ \n( H | a | m | b | u | r | g | e | r )\n \\_/ \\_/ \\_/ \\_/ \\_/ \\_/ \\_/ \\_/ \\_/ \n```\n{: .-figlet}\n\n### bulbhead\n\n```\n _   _    __    __  __  ____  __  __  ____   ___  ____  ____ \n( )_( )  /__\\  (  \\/  )(  _ \\(  )(  )(  _ \\ / __)( ___)(  _ \\\n ) _ (  /(__)\\  )    (  ) _ < )(__)(  )   /( (_-. )__)  )   /\n(_) (_)(__)(__)(_/\\/\\_)(____/(______)(_)\\_) \\___/(____)(_)\\_)\n```\n{: .-figlet}\n\n### calgphy2\n\n```\n     #####    ##                              /                                                              \n  ######  /  #### /                         #/                                                               \n /#   /  /   ####/                          ##                                                               \n/    /  /    # #                            ##                                                               \n    /  /     #                              ##                                                               \n   ## ##     #      /###   ### /### /###    ## /###   ##   ####    ###  /###     /###      /##  ###  /###    \n   ## ##     #     / ###  / ##/ ###/ /##  / ##/ ###  / ##    ###  / ###/ #### / /  ###  / / ###  ###/ #### / \n   ## ########    /   ###/   ##  ###/ ###/  ##   ###/  ##     ###/   ##   ###/ /    ###/ /   ###  ##   ###/  \n   ## ##     #   ##    ##    ##   ##   ##   ##    ##   ##      ##    ##       ##     ## ##    ### ##         \n   ## ##     ##  ##    ##    ##   ##   ##   ##    ##   ##      ##    ##       ##     ## ########  ##         \n   #  ##     ##  ##    ##    ##   ##   ##   ##    ##   ##      ##    ##       ##     ## #######   ##         \n      /       ## ##    ##    ##   ##   ##   ##    ##   ##      ##    ##       ##     ## ##        ##         \n  /##/        ## ##    /#    ##   ##   ##   ##    /#   ##      /#    ##       ##     ## ####    / ##         \n /  #####      ## ####/ ##   ###  ###  ###   ####/      ######/ ##   ###       ########  ######/  ###        \n/     ##           ###   ##   ###  ###  ###   ###        #####   ##   ###        ### ###  #####    ###       \n#                                                                                     ###                    \n ##                                                                             ####   ###                   \n                                                                              /######  /#                    \n                                                                             /     ###/                      \n```\n{: .-figlet}\n\n### calligraphy\n\n```\n     *****    **                                  *                                                                        \n  ******  *  **** *                             **                                                                         \n **   *  *   *****                              **                                                                         \n*    *  *    * *                                **                                                                         \n    *  *     *                                  **         **   ****     ***  ****                            ***  ****    \n   ** **     *         ****    *** **** ****    ** ****     **    ***  *  **** **** *     ****         ***     **** **** * \n   ** **     *        * ***  *  *** **** ***  * *** ***  *  **     ****    **   ****     *  ***  *    * ***     **   ****  \n   ** ********       *   ****    **  **** ****  **   ****   **      **     **           *    ****    *   ***    **         \n   ** **     *      **    **     **   **   **   **    **    **      **     **          **     **    **    ***   **         \n   ** **     **     **    **     **   **   **   **    **    **      **     **          **     **    ********    **         \n   *  **     **     **    **     **   **   **   **    **    **      **     **          **     **    *******     **         \n      *       **    **    **     **   **   **   **    **    **      **     **          **     **    **          **         \n  ****        **    **    **     **   **   **   **    **     ******* **    ***         **     **    ****    *   ***        \n *  *****      **    ***** **    ***  ***  ***   *****        *****   **    ***         ********     *******     ***       \n*     **              ***   **    ***  ***  ***   ***                                     *** ***     *****                \n*                                                                                              ***                         \n **                                                                                      ****   ***                        \n                                                                                       *******  **                         \n                                                                                      *     ****                           \n```\n{: .-figlet}\n\n### catwalk\n\n```\n_//     _//                       _//                                               \n_//     _//                       _//                                               \n_//     _//   _//    _/// _// _// _//      _//  _//_/ _///   _//      _//    _/ _///\n_////// _// _//  _//  _//  _/  _//_// _//  _//  _// _//    _//  _// _/   _//  _//   \n_//     _//_//   _//  _//  _/  _//_//   _//_//  _// _//   _//   _//_///// _// _//   \n_//     _//_//   _//  _//  _/  _//_//   _//_//  _// _//    _//  _//_/         _//   \n_//     _//  _// _///_///  _/  _//_// _//    _//_//_///        _//   _////   _///   \n                                                            _//                     \n```\n{: .-figlet}\n\n### chunky\n\n```\n _______                  __                                \n|   |   |.---.-.--------.|  |--.--.--.----.-----.-----.----.\n|       ||  _  |        ||  _  |  |  |   _|  _  |  -__|   _|\n|___|___||___._|__|__|__||_____|_____|__| |___  |_____|__|  \n                                          |_____|           \n```\n{: .-figlet}\n\n### coinstak\n\n```\nO))     O))                       O))                                               \nO))     O))                       O))                                               \nO))     O))   O))    O))) O)) O)) O))      O))  O))O) O)))   O))      O))    O) O)))\nO)))))) O)) O))  O))  O))  O)  O))O)) O))  O))  O)) O))    O))  O)) O)   O))  O))   \nO))     O))O))   O))  O))  O)  O))O))   O))O))  O)) O))   O))   O))O))))) O)) O))   \nO))     O))O))   O))  O))  O)  O))O))   O))O))  O)) O))    O))  O))O)         O))   \nO))     O))  O)) O)))O)))  O)  O))O)) O))    O))O))O)))        O))   O))))   O)))   \n                                                            O))                     \n```\n{: .-figlet}\n\n### colossal\n\n```\n888    888                     888                                            \n888    888                     888                                            \n888    888                     888                                            \n8888888888 8888b. 88888b.d88b. 88888b. 888  888888d888 .d88b.  .d88b. 888d888 \n888    888    \"88b888 \"888 \"88b888 \"88b888  888888P\"  d88P\"88bd8P  Y8b888P\"   \n888    888.d888888888  888  888888  888888  888888    888  88888888888888     \n888    888888  888888  888  888888 d88PY88b 888888    Y88b 888Y8b.    888     \n888    888\"Y888888888  888  88888888P\"  \"Y88888888     \"Y88888 \"Y8888 888     \n                                                           888                \n                                                      Y8b d88P                \n                                                       \"Y88P\"                 \n```\n{: .-figlet}\n\n### computer\n\n```\n8   8                                                     \n8   8 eeeee eeeeeee eeeee  e   e eeeee  eeeee eeee eeeee  \n8eee8 8   8 8  8  8 8   8  8   8 8   8  8   8 8    8   8  \n88  8 8eee8 8e 8  8 8eee8e 8e  8 8eee8e 8e    8eee 8eee8e \n88  8 88  8 88 8  8 88   8 88  8 88   8 88 \"8 88   88   8 \n88  8 88  8 88 8  8 88eee8 88ee8 88   8 88ee8 88ee 88   8 \n```\n{: .-figlet}\n\n### contessa\n\n```\n.  .        .                 \n|__| _.._ _ |_ . .._. _  _ ._.\n|  |(_][ | )[_)(_|[  (_](/,[  \n                     ._|      \n```\n{: .-figlet}\n\n### contrast\n\n```\n.%%..%%...%%%%...%%...%%..%%%%%...%%..%%..%%%%%....%%%%...%%%%%%..%%%%%..\n.%%..%%..%%..%%..%%%.%%%..%%..%%..%%..%%..%%..%%..%%......%%......%%..%%.\n.%%%%%%..%%%%%%..%%.%.%%..%%%%%...%%..%%..%%%%%...%%.%%%..%%%%....%%%%%..\n.%%..%%..%%..%%..%%...%%..%%..%%..%%..%%..%%..%%..%%..%%..%%......%%..%%.\n.%%..%%..%%..%%..%%...%%..%%%%%....%%%%...%%..%%...%%%%...%%%%%%..%%..%%.\n.........................................................................\n```\n{: .-figlet}\n\n### cosmic\n\n```\n  ::   .:   :::.     .        :   :::::::.   ...    ::::::::::..    .,-:::::/ .,:::::: :::::::..   \n ,;;   ;;,  ;;`;;    ;;,.    ;;;   ;;;'';;'  ;;     ;;;;;;;``;;;; ,;;-'````'  ;;;;'''' ;;;;``;;;;  \n,[[[,,,[[[ ,[[ '[[,  [[[[, ,[[[[,  [[[__[[\\.[['     [[[ [[[,/[[[' [[[   [[[[[[/[[cccc   [[[,/[[['  \n\"$$$\"\"\"$$$c$$$cc$$$c $$$$$$$$\"$$$  $$\"\"\"\"Y$$$$      $$$ $$$$$$c   \"$$c.    \"$$ $$\"\"\"\"   $$$$$$c    \n 888   \"88o888   888,888 Y88\" 888o_88o,,od8P88    .d888 888b \"88bo,`Y8bo,,,o88o888oo,__ 888b \"88bo,\n MMM    YMMYMM   \"\"` MMM  M'  \"MMM\"\"YUMMMP\"  \"YmmMMMM\"\" MMMM   \"W\"   `'YMUP\"YMM\"\"\"\"YUMMMMMMM   \"W\" \n```\n{: .-figlet}\n\n### cosmike\n\n```\n  ::   .:   :::.     .        :   :::::::.   ...    ::::::::::..    .,-:::::/ .,:::::: :::::::..   \n ,;;   ;;,  ;;`;;    ;;,.    ;;;   ;;;'';;'  ;;     ;;;;;;;``;;;; ,;;-'````'  ;;;;'''' ;;;;``;;;;  \n,[[[,,,[[[ ,[[ '[[,  [[[[, ,[[[[,  [[[__[[\\.[['     [[[ [[[,/[[[' [[[   [[[[[[/[[cccc   [[[,/[[['  \n\"$$$\"\"\"$$$c$$$cc$$$c $$$$$$$$\"$$$  $$\"\"\"\"Y$$$$      $$$ $$$$$$c   \"$$c.    \"$$ $$\"\"\"\"   $$$$$$c    \n 888   \"88o888   888,888 Y88\" 888o_88o,,od8P88    .d888 888b \"88bo,`Y8bo,,,o88o888oo,__ 888b \"88bo,\n MMM    YMMYMM   \"\"` MMM  M'  \"MMM\"\"YUMMMP\"  \"YmmMMMM\"\" MMMM   \"W\"   `'YMUP\"YMM\"\"\"\"YUMMMMMMM   \"W\" \n```\n{: .-figlet}\n\n### crawford\n\n```\n __ __   ____  ___ ___  ____   __ __  ____    ____    ___  ____  \n|  T  T /    T|   T   T|    \\ |  T  T|    \\  /    T  /  _]|    \\ \n|  l  |Y  o  || _   _ ||  o  )|  |  ||  D  )Y   __j /  [_ |  D  )\n|  _  ||     ||  \\_/  ||     T|  |  ||    / |  T  |Y    _]|    / \n|  |  ||  _  ||   |   ||  O  ||  :  ||    \\ |  l_ ||   [_ |    \\ \n|  |  ||  |  ||   |   ||     |l     ||  .  Y|     ||     T|  .  Y\nl__j__jl__j__jl___j___jl_____j \\__,_jl__j\\_jl___,_jl_____jl__j\\_j\n```\n{: .-figlet}\n\n### cricket\n\n```\n ___ ___                __                                \n|   Y   .---.-.--------|  |--.--.--.----.-----.-----.----.\n|.  1   |  _  |        |  _  |  |  |   _|  _  |  -__|   _|\n|.  _   |___._|__|__|__|_____|_____|__| |___  |_____|__|  \n|:  |   |                               |_____|           \n|::.|:. |                                                 \n`--- ---'                                                 \n```\n{: .-figlet}\n\n### cursive\n\n```\n _    ,                                 \n' )  /              /                   \n /--/ __.  ______  /__. . __  _,  _  __ \n/  (_(_/|_/ / / <_/_)(_/_/ (_(_)_</_/ (_\n                              /|        \n                             |/         \n```\n{: .-figlet}\n\n### cyberlarge\n\n```\n _     _ _______ _______ ______  _     _  ______  ______ _______  ______\n |_____| |_____| |  |  | |_____] |     | |_____/ |  ____ |______ |_____/\n |     | |     | |  |  | |_____] |_____| |    \\_ |_____| |______ |    \\_\n```\n{: .-figlet}\n\n### cybermedium\n\n```\n_  _ ____ _  _ ___  _  _ ____ ____ ____ ____ \n|__| |__| |\\/| |__] |  | |__/ | __ |___ |__/ \n|  | |  | |  | |__] |__| |  \\ |__] |___ |  \\ \n```\n{: .-figlet}\n\n### cybersmall\n\n```\n _  _ ____ _  _ ___  _  _ ____ ____ ____ ____\n |--| |--| |\\/| |==] |__| |--< |__, |=== |--<\n```\n{: .-figlet}\n\n### decimal\n\n```\n72 97 109 98 117 114 103 101 114 \n```\n{: .-figlet}\n\n### diamond\n\n```\n/\\\\     /\\\\                       /\\\\                                               \n/\\\\     /\\\\                       /\\\\                                               \n/\\\\     /\\\\   /\\\\    /\\\\\\ /\\\\ /\\\\ /\\\\      /\\\\  /\\\\/\\ /\\\\\\   /\\\\      /\\\\    /\\ /\\\\\\\n/\\\\\\\\\\\\ /\\\\ /\\\\  /\\\\  /\\\\  /\\  /\\\\/\\\\ /\\\\  /\\\\  /\\\\ /\\\\    /\\\\  /\\\\ /\\   /\\\\  /\\\\   \n/\\\\     /\\\\/\\\\   /\\\\  /\\\\  /\\  /\\\\/\\\\   /\\\\/\\\\  /\\\\ /\\\\   /\\\\   /\\\\/\\\\\\\\\\ /\\\\ /\\\\   \n/\\\\     /\\\\/\\\\   /\\\\  /\\\\  /\\  /\\\\/\\\\   /\\\\/\\\\  /\\\\ /\\\\    /\\\\  /\\\\/\\         /\\\\   \n/\\\\     /\\\\  /\\\\ /\\\\\\/\\\\\\  /\\  /\\\\/\\\\ /\\\\    /\\\\/\\\\/\\\\\\        /\\\\   /\\\\\\\\   /\\\\\\   \n                                                            /\\\\                     \n```\n{: .-figlet}\n\n### digital\n\n```\n+-+-+-+-+-+-+-+-+-+\n|H|a|m|b|u|r|g|e|r|\n+-+-+-+-+-+-+-+-+-+\n```\n{: .-figlet}\n\n### doh\n\n```\n                                                                bbbbbbbb                                                                                                             \nHHHHHHHHH     HHHHHHHHH                                         b::::::b                                                                                                             \nH:::::::H     H:::::::H                                         b::::::b                                                                                                             \nH:::::::H     H:::::::H                                         b::::::b                                                                                                             \nHH::::::H     H::::::HH                                          b:::::b                                                                                                             \n  H:::::H     H:::::H    aaaaaaaaaaaaa      mmmmmmm    mmmmmmm   b:::::bbbbbbbbb    uuuuuu    uuuuuu rrrrr   rrrrrrrrr      ggggggggg   ggggg    eeeeeeeeeeee    rrrrr   rrrrrrrrr   \n  H:::::H     H:::::H    a::::::::::::a   mm:::::::m  m:::::::mm b::::::::::::::bb  u::::u    u::::u r::::rrr:::::::::r    g:::::::::ggg::::g  ee::::::::::::ee  r::::rrr:::::::::r  \n  H::::::HHHHH::::::H    aaaaaaaaa:::::a m::::::::::mm::::::::::mb::::::::::::::::b u::::u    u::::u r:::::::::::::::::r  g:::::::::::::::::g e::::::eeeee:::::eer:::::::::::::::::r \n  H:::::::::::::::::H             a::::a m::::::::::::::::::::::mb:::::bbbbb:::::::bu::::u    u::::u rr::::::rrrrr::::::rg::::::ggggg::::::gge::::::e     e:::::err::::::rrrrr::::::r\n  H:::::::::::::::::H      aaaaaaa:::::a m:::::mmm::::::mmm:::::mb:::::b    b::::::bu::::u    u::::u  r:::::r     r:::::rg:::::g     g:::::g e:::::::eeeee::::::e r:::::r     r:::::r\n  H::::::HHHHH::::::H    aa::::::::::::a m::::m   m::::m   m::::mb:::::b     b:::::bu::::u    u::::u  r:::::r     rrrrrrrg:::::g     g:::::g e:::::::::::::::::e  r:::::r     rrrrrrr\n  H:::::H     H:::::H   a::::aaaa::::::a m::::m   m::::m   m::::mb:::::b     b:::::bu::::u    u::::u  r:::::r            g:::::g     g:::::g e::::::eeeeeeeeeee   r:::::r            \n  H:::::H     H:::::H  a::::a    a:::::a m::::m   m::::m   m::::mb:::::b     b:::::bu:::::uuuu:::::u  r:::::r            g::::::g    g:::::g e:::::::e            r:::::r            \nHH::::::H     H::::::HHa::::a    a:::::a m::::m   m::::m   m::::mb:::::bbbbbb::::::bu:::::::::::::::uur:::::r            g:::::::ggggg:::::g e::::::::e           r:::::r            \nH:::::::H     H:::::::Ha:::::aaaa::::::a m::::m   m::::m   m::::mb::::::::::::::::b  u:::::::::::::::ur:::::r             g::::::::::::::::g  e::::::::eeeeeeee   r:::::r            \nH:::::::H     H:::::::H a::::::::::aa:::am::::m   m::::m   m::::mb:::::::::::::::b    uu::::::::uu:::ur:::::r              gg::::::::::::::g   ee:::::::::::::e   r:::::r            \nHHHHHHHHH     HHHHHHHHH  aaaaaaaaaa  aaaammmmmm   mmmmmm   mmmmmmbbbbbbbbbbbbbbbb       uuuuuuuu  uuuurrrrrrr                gggggggg::::::g     eeeeeeeeeeeeee   rrrrrrr            \n                                                                                                                                     g:::::g                                         \n                                                                                                                         gggggg      g:::::g                                         \n                                                                                                                         g:::::gg   gg:::::g                                         \n                                                                                                                          g::::::ggg:::::::g                                         \n                                                                                                                           gg:::::::::::::g                                          \n                                                                                                                             ggg::::::ggg                                            \n                                                                                                                                gggggg                                               \n```\n{: .-figlet}\n\n### doom\n\n```\n _   _                 _                               \n| | | |               | |                              \n| |_| | __ _ _ __ ___ | |__  _   _ _ __ __ _  ___ _ __ \n|  _  |/ _` | '_ ` _ \\| '_ \\| | | | '__/ _` |/ _ \\ '__|\n| | | | (_| | | | | | | |_) | |_| | | | (_| |  __/ |   \n\\_| |_/\\__,_|_| |_| |_|_.__/ \\__,_|_|  \\__, |\\___|_|   \n                                        __/ |          \n                                       |___/           \n```\n{: .-figlet}\n\n### dotmatrix\n\n```\n _           _                                 _                                                                                    \n(_)         (_)                               (_)                                                                                   \n(_)         (_)   _  _  _        _  _   _  _  (_) _  _  _    _         _  _       _  _   _  _  _  _   _  _  _  _   _       _  _     \n(_) _  _  _ (_)  (_)(_)(_) _    (_)(_)_(_)(_) (_)(_)(_)(_)_ (_)       (_)(_)_  _ (_)(_)_(_)(_)(_)(_) (_)(_)(_)(_)_(_)_  _ (_)(_)    \n(_)(_)(_)(_)(_)   _  _  _ (_)  (_)   (_)   (_)(_)        (_)(_)       (_)  (_)(_)     (_)        (_)(_) _  _  _ (_) (_)(_)          \n(_)         (_) _(_)(_)(_)(_)  (_)   (_)   (_)(_)        (_)(_)       (_)  (_)        (_)        (_)(_)(_)(_)(_)(_) (_)             \n(_)         (_)(_)_  _  _ (_)_ (_)   (_)   (_)(_) _  _  _(_)(_)_  _  _(_)_ (_)        (_)_  _  _ (_)(_)_  _  _  _   (_)             \n(_)         (_)  (_)(_)(_)  (_)(_)   (_)   (_)(_)(_)(_)(_)    (_)(_)(_) (_)(_)          (_)(_)(_)(_)  (_)(_)(_)(_)  (_)             \n                                                                                         _  _  _ (_)                                \n                                                                                        (_)(_)(_)                                   \n```\n{: .-figlet}\n\n### double\n\n```\n__  __ ___ ___  _______ __ ______   ___  ________ \n||  ||// \\\\||\\\\//|||| ))|| |||| \\\\ // \\\\||   || \\\\\n||==||||=|||| \\/ ||||=) || ||||_//(( ___||== ||_//\n||  |||| ||||    ||||_))\\\\_//|| \\\\ \\\\_||||___|| \\\\\n```\n{: .-figlet}\n\n### drpepper\n\n```\n _ _              _                            \n| | | ___ ._ _ _ | |_  _ _  _ _  ___  ___  _ _ \n|   |<_> || ' ' || . \\| | || '_>/ . |/ ._>| '_>\n|_|_|<___||_|_|_||___/`___||_|  \\_. |\\___.|_|  \n                                <___'          \n```\n{: .-figlet}\n\n### dwhistled\n\n```\nH m ur  r\n X X  XX \n X .  XX \n . .  XX \n . .  .X \n . .  .X \n . .  .. \nHamburger\n```\n{: .-figlet}\n\n### eftichess\n\n```\n         #########         #########         #########         ####################################\n  [`'`'] ##\\`.'/##  ':v:`  ##/\\:/\\##  |:+:|  ##':v:`##  \\`.'/  ##[`'`']###'\\v/`####[`'`']###[`'`']#\n   |::|  ##(o:o)##  (o:0)  #/(o:o)\\#  (o:o)  ##(o:0)##  (o:o)  ###|::|####(o 0)#####|  |#####|  |##\n   |::|  ###\\:/:\\#   (:)   ###(:)###   (:)   ###(:)###   \\:/:\\ ###|::|#####(_)######|__|#####|__|##\n         ####\"####         #########         #########    \"    ####################################\n```\n{: .-figlet}\n\n### eftifont\n\n```\n _ _                         \n| U |_    _ _ ||    _  _ _ _ \n|   /o\\ |/ \\ \\|o\\U|/_|/oYoY_|\n|_n_\\_,]L_n_n||_|_/L| \\_|(L| \n                       _)    \n```\n{: .-figlet}\n\n### eftipiti\n\n```\n[]-|amburger\n```\n{: .-figlet}\n\n### eftirobot\n\n```\n _  _               _                         \n( )( )             ( )                        \n| L| | ___  __  __ | |_  _ _  __  __  ___  __ \n( __ )( o )( _`'_ )( o \\( U )( _)/o )( o_)( _)\n/_\\/_\\/_^_\\/_\\`'/_\\/___//___\\/_\\ \\__\\ \\(  /_\\ \n                                  _|/         \n```\n{: .-figlet}\n\n### eftitalic\n\n```\n   _ __                                \n  /// / _   _     /7      _   _   __ _ \n / ` /,'o| / \\'\\ /o\\ /7/7//7,'o|,'o///7\n/_n_/ |_,7/_nn_//_,'/__///  |_,'|_(//  \n                            _//        \n```\n{: .-figlet}\n\n### eftiwall\n\n```\n                 |                ___         ( ( (           o            !!!                         |\"|           !!!      \n     ***         |.===.          /_\\ `*     '. ___ .'      ` /_\\ '      `  _ _  '      __MMM__        _|_|_       `  _ _  '   \n    (o o)        {}o o{}        (o o)      '  (> <) '     - (o o) -    -  (OXO)  -      (o o)         (o o)      -  (OXO)  -  \nooO--(_)--Ooo-ooO--(_)--Ooo-ooO--(_)--Ooo-ooO--(_)--Ooo-ooO--(_)--Ooo-ooO--(_)--Ooo-ooO--(_)--Ooo-ooO--(_)--Ooo-ooO--(_)--Ooo-\n```\n{: .-figlet}\n\n### eftiwater\n\n```\n _ _             _                       \n )L`) ___  _  _  ))  _    __  ___  __ __ \n(( ( ((_( ((`1( ((_)((_( (|  ((_( (('(|  \n                               _))       \n```\n{: .-figlet}\n\n### epic\n\n```\n          _______  _______  ______            _______  _______  _______  _______ \n|\\     /|(  ___  )(       )(  ___ \\ |\\     /|(  ____ )(  ____ \\(  ____ \\(  ____ )\n| )   ( || (   ) || () () || (   ) )| )   ( || (    )|| (    \\/| (    \\/| (    )|\n| (___) || (___) || || || || (__/ / | |   | || (____)|| |      | (__    | (____)|\n|  ___  ||  ___  || |(_)| ||  __ (  | |   | ||     __)| | ____ |  __)   |     __)\n| (   ) || (   ) || |   | || (  \\ \\ | |   | || (\\ (   | | \\_  )| (      | (\\ (   \n| )   ( || )   ( || )   ( || )___) )| (___) || ) \\ \\__| (___) || (____/\\| ) \\ \\__\n|/     \\||/     \\||/     \\||/ \\___/ (_______)|/   \\__/(_______)(_______/|/   \\__/\n```\n{: .-figlet}\n\n### fender\n\n```\n'||  ||`                    '||                                          \n ||  ||                      ||                                          \n ||''||   '''|.  '||),,(|,   ||''|, '||  ||` '||''| .|''|, .|''|, '||''| \n ||  ||  .|''||   || || ||   ||  ||  ||  ||   ||    ||  || ||..||  ||    \n.||  ||. `|..||. .||    ||. .||..|'  `|..'|. .||.   `|..|| `|...  .||.   \n                                                        ||               \n                                                     `..|'               \n```\n{: .-figlet}\n\n### fourtops\n\n```\n|  |             |                       \n|--|/~~||/~\\ /~\\ |~~\\|   ||/~\\/~~|/~/|/~\\\n|  |\\__||   |   ||__/ \\_/||   \\__|\\/_|   \n                              \\__|       \n```\n{: .-figlet}\n\n### fraktur\n\n```\n                                                            ..                                                                    \n         .xHL                                         . uW8\"                                                                      \n      .-`8888hxxx~                   ..    .     :    `t888          x.    .        .u    .                             .u    .   \n   .H8X  `%888*\"            u      .888: x888  x888.   8888   .    .@88k  z88u    .d88B :@8c       uL          .u     .d88B :@8c  \n   888X     ..x..        us888u.  ~`8888~'888X`?888f`  9888.z88N  ~\"8888 ^8888   =\"8888f8888r  .ue888Nc..   ud8888.  =\"8888f8888r \n  '8888k .x8888888x   .@88 \"8888\"   X888  888X '888>   9888  888E   8888  888R     4888>'88\"  d88E`\"888E` :888'8888.   4888>'88\"  \n   ?8888X    \"88888X  9888  9888    X888  888X '888>   9888  888E   8888  888R     4888> '    888E  888E  d888 '88%\"   4888> '    \n    ?8888X    '88888> 9888  9888    X888  888X '888>   9888  888E   8888  888R     4888>      888E  888E  8888.+\"      4888>      \n H8H %8888     `8888> 9888  9888    X888  888X '888>   9888  888E   8888 ,888B .  .d888L .+   888E  888E  8888L       .d888L .+   \n'888> 888\"      8888  9888  9888   \"*88%\"\"*88\" '888!` .8888  888\"  \"8888Y 8888\"   ^\"8888*\"    888& .888E  '8888c. .+  ^\"8888*\"    \n \"8` .8\" ..     88*   \"888*\"\"888\"    `~    \"    `\"`    `%888*%\"     `Y\"   'YP        \"Y\"      *888\" 888&   \"88888%       \"Y\"      \n    `  x8888h. d*\"     ^Y\"   ^Y'                          \"`                                   `\"   \"888E    \"YP'                 \n      !\"\"*888%~                                                                               .dWi   `88E                         \n      !   `\"  .                                                                               4888~  J8%                          \n      '-....:~                                                                                 ^\"===*\"`                           \n```\n{: .-figlet}\n\n### fuzzy\n\n```\n.-..-.                .-.                               \n: :; :                : :                               \n:    : .--.  ,-.,-.,-.: `-. .-..-..--.  .--.  .--. .--. \n: :: :' .; ; : ,. ,. :' .; :: :; :: ..'' .; :' '_.': ..'\n:_;:_;`.__,_;:_;:_;:_;`.__.'`.__.':_;  `._. ;`.__.':_;  \n                                        .-. :           \n                                        `._.'           \n```\n{: .-figlet}\n\n### goofy\n\n```\n    ___    _____  _____          _      ___    ___    _     _____       ___        __     ___\n\\  |   |  /    /  \\    |        | \\     \\  |  |   |  | |    \\    )  ____)  \\    ___) |    \\  \n |  \\_/  |    /    \\   |  |\\/|  |  |     ) |  |   |  | |     )  /  /  __    |  (__   |     ) \n |   _   |   /  ()  \\  |  |  |  |  |    <  |  |   |  | |    /  (  (  (  \\   |   __)  |    /  \n |  / \\  |  |   __   | |  |  |  |  |     ) |   \\_/   | | |\\ \\   \\  \\__)  )  |  (___  | |\\ \\  \n/  |___|  \\_|  (__)  |_|  |__|  |_/     /___\\       /__| |_\\ \\___)      (__/       )_| |_\\ \\_\n```\n{: .-figlet}\n\n### gothic\n\n```\n_-_-                     ,,                                  \n  /,        _            ||                  _               \n  || __    < \\, \\\\/\\\\/\\\\ ||/|, \\\\ \\\\ ,._-_  / \\\\  _-_  ,._-_ \n ~||-  -   /-|| || || || || || || ||  ||   || || || \\\\  ||   \n  ||===|| (( || || || || || |' || ||  ||   || || ||/    ||   \n ( \\_, |   \\/\\\\ \\\\ \\\\ \\\\ \\\\/   \\\\/\\\\  \\\\,  \\\\_-| \\\\,/   \\\\,  \n       `                                    /  \\             \n                                           '----`            \n```\n{: .-figlet}\n\n### graceful\n\n```\n _  _   __   _  _  ____  _  _  ____   ___  ____  ____ \n/ )( \\ / _\\ ( \\/ )(  _ \\/ )( \\(  _ \\ / __)(  __)(  _ \\\n) __ (/    \\/ \\/ \\ ) _ () \\/ ( )   /( (_ \\ ) _)  )   /\n\\_)(_/\\_/\\_/\\_)(_/(____/\\____/(__\\_) \\___/(____)(__\\_)\n```\n{: .-figlet}\n\n### gradient\n\n```\neee..eee..eeeeee..eee......eee.eeeeeee..eee..eee.eeeeeee...eeeeee..eeeeee.eeeeeee..\n@@@::@@@:@@@@@@@@:@@@@::::@@@@:@@@@@@@@:@@@::@@@:@@@@@@@@:@@@@@@@@:@@@@@@:@@@@@@@@:\n%%%--%%%-%%%--%%%-%%%%%--%%%%%-%%%--%%%-%%%--%%%-%%%--%%%-%%%------%%%----%%%--%%%-\n&&&&&&&&+&&&&&&&&+&&&&&&&&&&&&+&&&&&&&++&&&++&&&+&&&&&&&++&&&++++++&&&&&++&&&&&&&++\n||||||||*||||||||*|||*||||*|||*||||||||*|||**|||*||||||***|||*||||*|||||**||||||***\n!!!==!!!=!!!==!!!=!!!==!!==!!!=!!!==!!!=!!!==!!!=!!!=!!!==!!!==!!!=!!!====!!!=!!!==\n:::##:::#:::##:::#:::######:::#::::::::#::::::::#:::##:::#::::::::#::::::#:::##:::#\n...@@...@...@@...@...@@@@@@...@.......@@@......@@...@@...@@......@@......@...@@...@\n```\n{: .-figlet}\n\n### graffiti\n\n```\n  ___ ___               ___.                                     \n /   |   \\_____    _____\\_ |__  __ _________  ____   ___________ \n/    ~    \\__  \\  /     \\| __ \\|  |  \\_  __ \\/ ___\\_/ __ \\_  __ \\\n\\    Y    // __ \\|  Y Y  \\ \\_\\ \\  |  /|  | \\/ /_/  >  ___/|  | \\/\n \\___|_  /(____  /__|_|  /___  /____/ |__|  \\___  / \\___  >__|   \n       \\/      \\/      \\/    \\/            /_____/      \\/       \n```\n{: .-figlet}\n\n### hex\n\n```\n48 61 6D 62 75 72 67 65 72 \n```\n{: .-figlet}\n\n### hollywood\n\n```\n           _                                                                                    \n          ' )     )                           /'                                                \n          /'    /'                          /'                                                  \n       ,/'    /' ____     ,__________     /'__               ____     ____     ____      ____   \n      /`---,/' /'    )   /'    )     )  /'    )  /'    /   )'    )--/'    )  /'    )   )'    )--\n    /'    /' /'    /'  /'    /'    /' /'    /' /'    /'  /'       /'    /' /(___,/'  /'         \n(,/'     (_,(___,/(__/'    /'    /(__(___,/(__(___,/(__/'        (___,/(__(________/'           \n                                                                    /'                          \n                                                            /     /'                            \n                                                           (___,/'                              \n```\n{: .-figlet}\n\n### invita\n\n```\n   ____  ___)                              \n  (, /   /           /)                    \n    /---/  _  ___   (/_     __  _    _  __ \n ) /   (__(_(_// (_/_) (_(_/ (_(_/__(/_/ (_\n(_/                           .-/          \n                             (_/           \n```\n{: .-figlet}\n\n### isometric1\n\n```\n      ___           ___           ___           ___           ___           ___           ___           ___           ___     \n     /\\__\\         /\\  \\         /\\__\\         /\\  \\         /\\__\\         /\\  \\         /\\  \\         /\\  \\         /\\  \\    \n    /:/  /        /::\\  \\       /::|  |       /::\\  \\       /:/  /        /::\\  \\       /::\\  \\       /::\\  \\       /::\\  \\   \n   /:/__/        /:/\\:\\  \\     /:|:|  |      /:/\\:\\  \\     /:/  /        /:/\\:\\  \\     /:/\\:\\  \\     /:/\\:\\  \\     /:/\\:\\  \\  \n  /::\\  \\ ___   /::\\~\\:\\  \\   /:/|:|__|__   /::\\~\\:\\__\\   /:/  /  ___   /::\\~\\:\\  \\   /:/  \\:\\  \\   /::\\~\\:\\  \\   /::\\~\\:\\  \\ \n /:/\\:\\  /\\__\\ /:/\\:\\ \\:\\__\\ /:/ |::::\\__\\ /:/\\:\\ \\:|__| /:/__/  /\\__\\ /:/\\:\\ \\:\\__\\ /:/__/_\\:\\__\\ /:/\\:\\ \\:\\__\\ /:/\\:\\ \\:\\__\\\n \\/__\\:\\/:/  / \\/__\\:\\/:/  / \\/__/~~/:/  / \\:\\~\\:\\/:/  / \\:\\  \\ /:/  / \\/_|::\\/:/  / \\:\\  /\\ \\/__/ \\:\\~\\:\\ \\/__/ \\/_|::\\/:/  /\n      \\::/  /       \\::/  /        /:/  /   \\:\\ \\::/  /   \\:\\  /:/  /     |:|::/  /   \\:\\ \\:\\__\\    \\:\\ \\:\\__\\      |:|::/  / \n      /:/  /        /:/  /        /:/  /     \\:\\/:/  /     \\:\\/:/  /      |:|\\/__/     \\:\\/:/  /     \\:\\ \\/__/      |:|\\/__/  \n     /:/  /        /:/  /        /:/  /       \\::/__/       \\::/  /       |:|  |        \\::/  /       \\:\\__\\        |:|  |    \n     \\/__/         \\/__/         \\/__/         ~~            \\/__/         \\|__|         \\/__/         \\/__/         \\|__|    \n```\n{: .-figlet}\n\n### isometric2\n\n```\n      ___           ___           ___                         ___           ___           ___           ___           ___     \n     /\\  \\         /\\  \\         /\\  \\         _____         /\\  \\         /\\  \\         /\\__\\         /\\__\\         /\\  \\    \n     \\:\\  \\       /::\\  \\       |::\\  \\       /::\\  \\        \\:\\  \\       /::\\  \\       /:/ _/_       /:/ _/_       /::\\  \\   \n      \\:\\  \\     /:/\\:\\  \\      |:|:\\  \\     /:/\\:\\  \\        \\:\\  \\     /:/\\:\\__\\     /:/ /\\  \\     /:/ /\\__\\     /:/\\:\\__\\  \n  ___ /::\\  \\   /:/ /::\\  \\   __|:|\\:\\  \\   /:/ /::\\__\\   ___  \\:\\  \\   /:/ /:/  /    /:/ /::\\  \\   /:/ /:/ _/_   /:/ /:/  /  \n /\\  /:/\\:\\__\\ /:/_/:/\\:\\__\\ /::::|_\\:\\__\\ /:/_/:/\\:|__| /\\  \\  \\:\\__\\ /:/_/:/__/___ /:/__\\/\\:\\__\\ /:/_/:/ /\\__\\ /:/_/:/__/___\n \\:\\/:/  \\/__/ \\:\\/:/  \\/__/ \\:\\~~\\  \\/__/ \\:\\/:/ /:/  / \\:\\  \\ /:/  / \\:\\/:::::/  / \\:\\  \\ /:/  / \\:\\/:/ /:/  / \\:\\/:::::/  /\n  \\::/__/       \\::/__/       \\:\\  \\        \\::/_/:/  /   \\:\\  /:/  /   \\::/~~/~~~~   \\:\\  /:/  /   \\::/_/:/  /   \\::/~~/~~~~ \n   \\:\\  \\        \\:\\  \\        \\:\\  \\        \\:\\/:/  /     \\:\\/:/  /     \\:\\~~\\        \\:\\/:/  /     \\:\\/:/  /     \\:\\~~\\     \n    \\:\\__\\        \\:\\__\\        \\:\\__\\        \\::/  /       \\::/  /       \\:\\__\\        \\::/  /       \\::/  /       \\:\\__\\    \n     \\/__/         \\/__/         \\/__/         \\/__/         \\/__/         \\/__/         \\/__/         \\/__/         \\/__/    \n```\n{: .-figlet}\n\n### isometric3\n\n```\n      ___           ___           ___                         ___           ___           ___           ___           ___     \n     /__/\\         /  /\\         /__/\\         _____         /__/\\         /  /\\         /  /\\         /  /\\         /  /\\    \n     \\  \\:\\       /  /::\\       |  |::\\       /  /::\\        \\  \\:\\       /  /::\\       /  /:/_       /  /:/_       /  /::\\   \n      \\__\\:\\     /  /:/\\:\\      |  |:|:\\     /  /:/\\:\\        \\  \\:\\     /  /:/\\:\\     /  /:/ /\\     /  /:/ /\\     /  /:/\\:\\  \n  ___ /  /::\\   /  /:/~/::\\   __|__|:|\\:\\   /  /:/~/::\\   ___  \\  \\:\\   /  /:/~/:/    /  /:/_/::\\   /  /:/ /:/_   /  /:/~/:/  \n /__/\\  /:/\\:\\ /__/:/ /:/\\:\\ /__/::::| \\:\\ /__/:/ /:/\\:| /__/\\  \\__\\:\\ /__/:/ /:/___ /__/:/__\\/\\:\\ /__/:/ /:/ /\\ /__/:/ /:/___\n \\  \\:\\/:/__\\/ \\  \\:\\/:/__\\/ \\  \\:\\~~\\__\\/ \\  \\:\\/:/~/:/ \\  \\:\\ /  /:/ \\  \\:\\/:::::/ \\  \\:\\ /~~/:/ \\  \\:\\/:/ /:/ \\  \\:\\/:::::/\n  \\  \\::/       \\  \\::/       \\  \\:\\        \\  \\::/ /:/   \\  \\:\\  /:/   \\  \\::/~~~~   \\  \\:\\  /:/   \\  \\::/ /:/   \\  \\::/~~~~ \n   \\  \\:\\        \\  \\:\\        \\  \\:\\        \\  \\:\\/:/     \\  \\:\\/:/     \\  \\:\\        \\  \\:\\/:/     \\  \\:\\/:/     \\  \\:\\     \n    \\  \\:\\        \\  \\:\\        \\  \\:\\        \\  \\::/       \\  \\::/       \\  \\:\\        \\  \\::/       \\  \\::/       \\  \\:\\    \n     \\__\\/         \\__\\/         \\__\\/         \\__\\/         \\__\\/         \\__\\/         \\__\\/         \\__\\/         \\__\\/    \n```\n{: .-figlet}\n\n### isometric4\n\n```\n      ___           ___           ___           ___           ___           ___           ___           ___           ___     \n     /  /\\         /  /\\         /  /\\         /  /\\         /  /\\         /  /\\         /  /\\         /  /\\         /  /\\    \n    /  /:/        /  /::\\       /  /::|       /  /::\\       /  /:/        /  /::\\       /  /::\\       /  /::\\       /  /::\\   \n   /  /:/        /  /:/\\:\\     /  /:|:|      /  /:/\\:\\     /  /:/        /  /:/\\:\\     /  /:/\\:\\     /  /:/\\:\\     /  /:/\\:\\  \n  /  /::\\ ___   /  /::\\ \\:\\   /  /:/|:|__   /  /::\\ \\:\\   /  /:/        /  /::\\ \\:\\   /  /:/  \\:\\   /  /::\\ \\:\\   /  /::\\ \\:\\ \n /__/:/\\:\\  /\\ /__/:/\\:\\_\\:\\ /__/:/_|::::\\ /__/:/\\:\\_\\:| /__/:/     /\\ /__/:/\\:\\_\\:\\ /__/:/_\\_ \\:\\ /__/:/\\:\\ \\:\\ /__/:/\\:\\_\\:\\\n \\__\\/  \\:\\/:/ \\__\\/  \\:\\/:/ \\__\\/  /~~/:/ \\  \\:\\ \\:\\/:/ \\  \\:\\    /:/ \\__\\/~|::\\/:/ \\  \\:\\__/\\_\\/ \\  \\:\\ \\:\\_\\/ \\__\\/~|::\\/:/\n      \\__\\::/       \\__\\::/        /  /:/   \\  \\:\\_\\::/   \\  \\:\\  /:/     |  |:|::/   \\  \\:\\ \\:\\    \\  \\:\\ \\:\\      |  |:|::/ \n      /  /:/        /  /:/        /  /:/     \\  \\:\\/:/     \\  \\:\\/:/      |  |:|\\/     \\  \\:\\/:/     \\  \\:\\_\\/      |  |:|\\/  \n     /__/:/        /__/:/        /__/:/       \\__\\::/       \\  \\::/       |__|:|~       \\  \\::/       \\  \\:\\        |__|:|~   \n     \\__\\/         \\__\\/         \\__\\/            ~~         \\__\\/         \\__\\|         \\__\\/         \\__\\/         \\__\\|    \n```\n{: .-figlet}\n\n### italic\n\n```\n )__/_ _  /   _ _ _ _ \n/  /(///)()(// (/(-/  \n              _/      \n```\n{: .-figlet}\n\n### ivrit\n\n```\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   _                     _   _ \n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         _ __ ___  __ _ _ __ _   _| |__  _ __ ___   __ _| | | |\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | '__/ _ \\/ _` | '__| | | | '_ \\| '_ ` _ \\ / _` | |_| |\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | | |  __/ (_| | |  | |_| | |_) | | | | | | (_| |  _  |\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |_|  \\___|\\__, |_|   \\__,_|_.__/|_| |_| |_|\\__,_|_| |_|\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |___/                                        \n```\n{: .-figlet}\n\n### jazmine\n\n```\n o    o                8                                       \n 8    8                8                                       \no8oooo8 .oPYo. ooYoYo. 8oPYo. o    o oPYo. .oPYo. .oPYo. oPYo. \n 8    8 .oooo8 8' 8  8 8    8 8    8 8  `' 8    8 8oooo8 8  `' \n 8    8 8    8 8  8  8 8    8 8    8 8     8    8 8.     8     \n 8    8 `YooP8 8  8  8 `YooP' `YooP' 8     `YooP8 `Yooo' 8     \n:..:::..:.....:..:..:..:.....::.....:..:::::....8 :.....:..::::\n:::::::::::::::::::::::::::::::::::::::::::::ooP'.:::::::::::::\n:::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::\n```\n{: .-figlet}\n\n### jerusalem\n\n```\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ______ ________   _ ______ ___  ___  __   __._   _   _ _   _ \n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |____  |____  \\ \\ | |____  |_  ||_  | \\ \\ / /| | | | | | | | |\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | | _  | |\\ \\| |    | | | |  | |  \\ V / | | | | | | |_| |\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | || | |_|_\\ ` |    | | | |__| |___\\  \\ | |/ /_/ /|  _  |\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |_|| |  |______|    |_| |_|____|______| |_______/ |_| |_|\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |_|                                                   \n```\n{: .-figlet}\n\n### katakana\n\n```\n   #       #        ######### ######## ##########                #                          \n  ######## #   ###          #        #          # #########     #      ########## ######### \n #       # ####             #        #         #  #       #    #               #  #       # \n#      ##  #        ########        #  ########   #       #   #               #   #       # \n     ##    #               #      ##       ##     #       #  #     #       # #    #       # \n   ##      #               #    ##       ##       ######### #########       #     ######### \n ##         ####### ########  ##       ##                            #       #              \n```\n{: .-figlet}\n\n### kban\n\n```\n'||'  '||'                    '||                                               \n ||    ||   ....   .. .. ..    || ...  ... ...  ... ..    ... .   ....  ... ..  \n ||''''||  '' .||   || || ||   ||'  ||  ||  ||   ||' ''  || ||  .|...||  ||' '' \n ||    ||  .|' ||   || || ||   ||    |  ||  ||   ||       |''   ||       ||     \n.||.  .||. '|..'|' .|| || ||.  '|...'   '|..'|. .||.     '||||.  '|...' .||.    \n                                                        .|....'                 \n```\n{: .-figlet}\n\n### l4me\n\n```\n|-|4mbvrg3r\n```\n{: .-figlet}\n\n### larry3d\n\n```\n __  __                       __                                           \n/\\ \\/\\ \\                     /\\ \\                                          \n\\ \\ \\_\\ \\     __      ___ ___\\ \\ \\____  __  __  _ __    __      __   _ __  \n \\ \\  _  \\  /'__`\\  /' __` __`\\ \\ '__`\\/\\ \\/\\ \\/\\`'__\\/'_ `\\  /'__`\\/\\`'__\\\n  \\ \\ \\ \\ \\/\\ \\L\\.\\_/\\ \\/\\ \\/\\ \\ \\ \\L\\ \\ \\ \\_\\ \\ \\ \\//\\ \\L\\ \\/\\  __/\\ \\ \\/ \n   \\ \\_\\ \\_\\ \\__/.\\_\\ \\_\\ \\_\\ \\_\\ \\_,__/\\ \\____/\\ \\_\\\\ \\____ \\ \\____\\\\ \\_\\ \n    \\/_/\\/_/\\/__/\\/_/\\/_/\\/_/\\/_/\\/___/  \\/___/  \\/_/ \\/___L\\ \\/____/ \\/_/ \n                                                        /\\____/            \n                                                        \\_/__/             \n```\n{: .-figlet}\n\n### lcd\n\n```\n                                       _              \n|   |             |                   | |             \n|-+-|  -    |- -  |-          |-       -|  -    |-    \n|   | | |   | | | | |   | |   |         | |/    |     \n       --          -     --            -   --         \n```\n{: .-figlet}\n\n### lean\n\n```\n    _/    _/                            _/                                                          \n   _/    _/    _/_/_/  _/_/_/  _/_/    _/_/_/    _/    _/  _/  _/_/    _/_/_/    _/_/    _/  _/_/   \n  _/_/_/_/  _/    _/  _/    _/    _/  _/    _/  _/    _/  _/_/      _/    _/  _/_/_/_/  _/_/        \n _/    _/  _/    _/  _/    _/    _/  _/    _/  _/    _/  _/        _/    _/  _/        _/           \n_/    _/    _/_/_/  _/    _/    _/  _/_/_/      _/_/_/  _/          _/_/_/    _/_/_/  _/            \n                                                                       _/                           \n                                                                  _/_/                              \n```\n{: .-figlet}\n\n### letters\n\n```\nHH   HH                     bb                                           \nHH   HH   aa aa mm mm mmmm  bb      uu   uu rr rr   gggggg   eee  rr rr  \nHHHHHHH  aa aaa mmm  mm  mm bbbbbb  uu   uu rrr  r gg   gg ee   e rrr  r \nHH   HH aa  aaa mmm  mm  mm bb   bb uu   uu rr     ggggggg eeeee  rr     \nHH   HH  aaa aa mmm  mm  mm bbbbbb   uuuu u rr          gg  eeeee rr     \n                                                    ggggg                \n```\n{: .-figlet}\n\n### linux\n\n```\n.-. .-..---..-.-.-..--..-..-..---. .---..---..---. \n| |=| || | || | | ||-< | || || |-< | |'_| |- | |-< \n`-' `-'`-^-'`-'-'-'`--'`----'`-'`-'`-'-/`---'`-'`-'\n```\n{: .-figlet}\n\n### lockergnome\n\n```\n::| ::|          :|                            \n::::::|.::\\ :\\/| ::'| :\\:| :::| /::| :~~/ :::| \n::| ::|`::| :::| :::| `::| :|   \\::| :::, :|   \n                                ,.:/           \n```\n{: .-figlet}\n\n### madrid\n\n```\n/ \\           |                     \n|=| /=| /=\\=\\ |=\\ | | /= /=| /=\\ /= \n\\ / \\=| | | | |=/ \\=/ |  \\=| \\=  |  \n                         \\=|        \n```\n{: .-figlet}\n\n### marquee\n\n```\n.::     .::                       .::                                               \n.::     .::                       .::                                               \n.::     .::   .::    .::: .:: .:: .::      .::  .::.: .:::   .::      .::    .: .:::\n.:::::: .:: .::  .::  .::  .:  .::.:: .::  .::  .:: .::    .::  .:: .:   .::  .::   \n.::     .::.::   .::  .::  .:  .::.::   .::.::  .:: .::   .::   .::.::::: .:: .::   \n.::     .::.::   .::  .::  .:  .::.::   .::.::  .:: .::    .::  .::.:         .::   \n.::     .::  .:: .:::.:::  .:  .::.:: .::    .::.::.:::        .::   .::::   .:::   \n                                                            .::                     \n```\n{: .-figlet}\n\n### maxfour\n\n```\n|  |             |                       \n|--|/~~||/~\\ /~\\ |~~\\|   ||/~\\/~~|/~/|/~\\\n|  |\\__||   |   ||__/ \\_/||   \\__|\\/_|   \n                              \\__|       \n```\n{: .-figlet}\n\n### mike\n\n```\n |          |       _     _  _\n |\\ //| ||\\ |/ |/| |  /| |/ | \n                       |      \n```\n{: .-figlet}\n\n### mini\n\n```\n|_| _.._ _ |_    .__  _ ._ \n| |(_|| | ||_)|_||(_|(/_|  \n                   _|      \n```\n{: .-figlet}\n\n### mirror\n\n```\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       _                 _   _ \n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         __ _ ___  _ __ __ _ _   _  __| | ___ __ _ _ __ | | | |\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |__` / _ \\| '_ \\__` | | | |/ _` |/ _ ' _` | '_ \\| |_| |\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | \\__  | |_) | | | |_| | (_| | | | | | | |_) |  _  |\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |_|___/| .__/  |_|_.__/ \\__,_|_| |_| |_|_.__/|_| |_|\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   \\___|                                       \n```\n{: .-figlet}\n\n### mnemonic\n\n```\nHamburger\n```\n{: .-figlet}\n\n### morse\n\n```\n.... .- -- -... ..- .-. --. . .-. \n```\n{: .-figlet}\n\n### moscow\n\n```\n#   #   #   #   # ####  #   # ####  ##### ##### ####  \n # #   # #  ## ##  #     # #  #   # #   # #     #   # \n  #   ##### # # #  ####   #   ####  #     ####  ####  \n # #  #   # #   #  #  #  #    #     #     #     #     \n#   # #   # #   # ##### #     #     #     ##### #     \n```\n{: .-figlet}\n\n### mshebrew210\n\n```\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         \"\"|\"\"|\\  |\"\"|| |\\/|/ |\n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           || ' \\/   ||_|_\\|_/ \n                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |  -'              \n```\n{: .-figlet}\n\n### nancyj-fancy\n\n```\nM\"\"MMMMM\"\"MM                     dP                                                    \nM  MMMMM  MM                     88                                                    \nM         `M .d8888b. 88d8b.d8b. 88d888b. dP    dP 88d888b. .d8888b. .d8888b. 88d888b. \nM  MMMMM  MM 88'  `88 88'`88'`88 88'  `88 88    88 88'  `88 88'  `88 88ooood8 88'  `88 \nM  MMMMM  MM 88.  .88 88  88  88 88.  .88 88.  .88 88       88.  .88 88.  ... 88       \nM  MMMMM  MM `88888P8 dP  dP  dP 88Y8888' `88888P' dP       `8888P88 `88888P' dP       \nMMMMMMMMMMMM                                                     .88                   \n                                                             d8888P                    \n```\n{: .-figlet}\n\n### nancyj-underlined\n\n```\ndP     dP                      dP                                                    \n88     88                      88                                                    \n88aaaaa88a .d8888b. 88d8b.d8b. 88d888b. dP    dP 88d888b. .d8888b. .d8888b. 88d888b. \n88     88  88'  `88 88'`88'`88 88'  `88 88    88 88'  `88 88'  `88 88ooood8 88'  `88 \n88     88  88.  .88 88  88  88 88.  .88 88.  .88 88       88.  .88 88.  ... 88       \ndP     dP  `88888P8 dP  dP  dP 88Y8888' `88888P' dP       `8888P88 `88888P' dP       \nooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo~~~~.88~oooooooooooooooooo\n                                                           d8888P                    \n```\n{: .-figlet}\n\n### nancyj\n\n```\ndP     dP                      dP                                                    \n88     88                      88                                                    \n88aaaaa88a .d8888b. 88d8b.d8b. 88d888b. dP    dP 88d888b. .d8888b. .d8888b. 88d888b. \n88     88  88'  `88 88'`88'`88 88'  `88 88    88 88'  `88 88'  `88 88ooood8 88'  `88 \n88     88  88.  .88 88  88  88 88.  .88 88.  .88 88       88.  .88 88.  ... 88       \ndP     dP  `88888P8 dP  dP  dP 88Y8888' `88888P' dP       `8888P88 `88888P' dP       \n                                                               .88                   \n                                                           d8888P                    \n```\n{: .-figlet}\n\n### nipples\n\n```\n{__     {__                       {__                                               \n{__     {__                       {__                                               \n{__     {__   {__    {___ {__ {__ {__      {__  {__{_ {___   {__      {__    {_ {___\n{______ {__ {__  {__  {__  {_  {__{__ {__  {__  {__ {__    {__  {__ {_   {__  {__   \n{__     {__{__   {__  {__  {_  {__{__   {__{__  {__ {__   {__   {__{_____ {__ {__   \n{__     {__{__   {__  {__  {_  {__{__   {__{__  {__ {__    {__  {__{_         {__   \n{__     {__  {__ {___{___  {_  {__{__ {__    {__{__{___        {__   {____   {___   \n                                                            {__                     \n```\n{: .-figlet}\n\n### ntgreek\n\n```\n _   _               ___                             \n| | | |             / _ \\                            \n| |_| | __  ___   _| |_) )_   _  ___ _   _ ___  ___  \n|  _  |/  \\/ / | | |  _ <| | | |/ _ ( \\ / ) __)/ _ \\ \n| | | ( ()  <| |_| | |_) ) |_| | |_) ) v /> _)| |_) )\n|_| |_|\\__/\\_\\ ._,_|  __/ \\___/|  __/ | | \\___)  __/ \n             | |   | |         | |    | |     | |    \n             |_|   |_|         |_|    |_|     |_|    \n```\n{: .-figlet}\n\n### nvscript\n\n```\n ,ggg,        gg                                                                                                  \ndP\"\"Y8b       88                                 ,dPYb,                                                           \nYb, `88       88                                 IP'`Yb                                                           \n `\"  88       88                                 I8  8I                                                           \n     88aaaaaaa88                                 I8  8'                                                           \n     88\"\"\"\"\"\"\"88    ,gggg,gg   ,ggg,,ggg,,ggg,   I8 dP      gg      gg   ,gggggg,    ,gggg,gg   ,ggg,    ,gggggg, \n     88       88   dP\"  \"Y8I  ,8\" \"8P\" \"8P\" \"8,  I8dP   88ggI8      8I   dP\"\"\"\"8I   dP\"  \"Y8I  i8\" \"8i   dP\"\"\"\"8I \n     88       88  i8'    ,8I  I8   8I   8I   8I  I8P    8I  I8,    ,8I  ,8'    8I  i8'    ,8I  I8, ,8I  ,8'    8I \n     88       Y8,,d8,   ,d8b,,dP   8I   8I   Yb,,d8b,  ,8I ,d8b,  ,d8b,,dP     Y8,,d8,   ,d8I  `YbadP' ,dP     Y8,\n     88       `Y8P\"Y8888P\"`Y88P'   8I   8I   `Y88P'\"Y88P\"' 8P'\"Y88P\"`Y88P      `Y8P\"Y8888P\"888888P\"Y8888P      `Y8\n                                                                                         ,d8I'                    \n                                                                                       ,dP'8I                     \n                                                                                      ,8\"  8I                     \n                                                                                      I8   8I                     \n                                                                                      `8, ,8I                     \n                                                                                       `Y8P\"                      \n```\n{: .-figlet}\n\n### o8\n\n```\nooooo ooooo                          oooo                                                                  \n 888   888   ooooooo   oo ooo oooo    888ooooo  oooo  oooo  oo oooooo     oooooooo8 ooooooooo8 oo oooooo   \n 888ooo888   ooooo888   888 888 888   888    888 888   888   888    888 888    88o 888oooooo8   888    888 \n 888   888 888    888   888 888 888   888    888 888   888   888         888oo888o 888          888        \no888o o888o 88ooo88 8o o888o888o888o o888ooo88    888o88 8o o888o       888     888  88oooo888 o888o       \n                                                                         888ooo888                         \n```\n{: .-figlet}\n\n### octal\n\n```\n110 141 155 142 165 162 147 145 162 \n```\n{: .-figlet}\n\n### ogre\n\n```\n                       _                               \n  /\\  /\\__ _ _ __ ___ | |__  _   _ _ __ __ _  ___ _ __ \n / /_/ / _` | '_ ` _ \\| '_ \\| | | | '__/ _` |/ _ \\ '__|\n/ __  / (_| | | | | | | |_) | |_| | | | (_| |  __/ |   \n\\/ /_/ \\__,_|_| |_| |_|_.__/ \\__,_|_|  \\__, |\\___|_|   \n                                       |___/           \n```\n{: .-figlet}\n\n### os2\n\n```\noo____oo___________________oo______________________________________________\noo____oo__ooooo__oo_oo_oo__oooooo__oo____o_oo_ooo___oooo____ooooo__oo_ooo__\noo____oo_oo___oo_ooo_oo__o_oo___oo_oo____o_ooo___o_oo__oo__oo____o_ooo___o_\noooooooo_oo___oo_oo__oo__o_oo___oo_oo____o_oo______oo___o__ooooooo_oo______\noo____oo_oo___oo_oo__oo__o_oo___oo_ooo___o_oo_______oooooo_oo______oo______\noo____oo__oooo_o_oo______o_oooooo__oo_ooo__oo______o____oo__ooooo__oo______\n____________________________________________________ooooo__________________\n```\n{: .-figlet}\n\n### pawp\n\n```\n _     _                    _                                     \n(_)   (_)                  (_)            _            ____  _    \n(_)___(_)  ____   __   __  (_)_    _   _ (_)__  ____  (____)(_)__ \n(_______) (____) (__)_(__) (___)_ (_) (_)(____)(____)(_)_(_)(____)\n(_)   (_)( )_( )(_) (_) (_)(_)_(_)(_)_(_)(_)  ( )_(_)(__)__ (_)   \n(_)   (_) (__)_)(_) (_) (_)(____)  (___) (_)   (____) (____)(_)   \n                                              (_)_(_)             \n                                               (___)              \n```\n{: .-figlet}\n\n### peaks\n\n```\n/^^     /^^                       /^^                                               \n/^^     /^^                       /^^                                               \n/^^     /^^   /^^    /^^^ /^^ /^^ /^^      /^^  /^^/^ /^^^   /^^      /^^    /^ /^^^\n/^^^^^^ /^^ /^^  /^^  /^^  /^  /^^/^^ /^^  /^^  /^^ /^^    /^^  /^^ /^   /^^  /^^   \n/^^     /^^/^^   /^^  /^^  /^  /^^/^^   /^^/^^  /^^ /^^   /^^   /^^/^^^^^ /^^ /^^   \n/^^     /^^/^^   /^^  /^^  /^  /^^/^^   /^^/^^  /^^ /^^    /^^  /^^/^         /^^   \n/^^     /^^  /^^ /^^^/^^^  /^  /^^/^^ /^^    /^^/^^/^^^        /^^   /^^^^   /^^^   \n                                                            /^^                     \n```\n{: .-figlet}\n\n### pebbles\n\n```\no      O                  o                                     \nO      o                 O                                      \no      O                 O                                      \nOoOooOOo                 o                                      \no      O .oOoO' `oOOoOO. OoOo. O   o  `OoOo. .oOoO .oOo. `OoOo. \nO      o O   o   O  o  o O   o o   O   o     o   O OooO'  o     \no      o o   O   o  O  O o   O O   o   O     O   o O      O     \no      O `OoO'o  O  o  o `OoO' `OoO'o  o     `OoOo `OoO'  o     \n                                                 O              \n                                              OoO'              \n```\n{: .-figlet}\n\n### pepper\n\n```\n /_/_  _ _  /_    __  _  _\n/ //_|/ / //_//_///_//_'/ \n                  _/      \n```\n{: .-figlet}\n\n### poison\n\n```\n@@@  @@@   @@@@@@   @@@@@@@@@@   @@@@@@@   @@@  @@@  @@@@@@@    @@@@@@@@  @@@@@@@@  @@@@@@@   \n@@@  @@@  @@@@@@@@  @@@@@@@@@@@  @@@@@@@@  @@@  @@@  @@@@@@@@  @@@@@@@@@  @@@@@@@@  @@@@@@@@  \n@@!  @@@  @@!  @@@  @@! @@! @@!  @@!  @@@  @@!  @@@  @@!  @@@  !@@        @@!       @@!  @@@  \n!@!  @!@  !@!  @!@  !@! !@! !@!  !@   @!@  !@!  @!@  !@!  @!@  !@!        !@!       !@!  @!@  \n@!@!@!@!  @!@!@!@!  @!! !!@ @!@  @!@!@!@   @!@  !@!  @!@!!@!   !@! @!@!@  @!!!:!    @!@!!@!   \n!!!@!!!!  !!!@!!!!  !@!   ! !@!  !!!@!!!!  !@!  !!!  !!@!@!    !!! !!@!!  !!!!!:    !!@!@!    \n!!:  !!!  !!:  !!!  !!:     !!:  !!:  !!!  !!:  !!!  !!: :!!   :!!   !!:  !!:       !!: :!!   \n:!:  !:!  :!:  !:!  :!:     :!:  :!:  !:!  :!:  !:!  :!:  !:!  :!:   !::  :!:       :!:  !:!  \n::   :::  ::   :::  :::     ::    :: ::::  ::::: ::  ::   :::   ::: ::::   :: ::::  ::   :::  \n :   : :   :   : :   :      :    :: : ::    : :  :    :   : :   :: :: :   : :: ::    :   : :  \n```\n{: .-figlet}\n\n### puffy\n\n```\n _   _                    _                                     \n( ) ( )                  ( )                                    \n| |_| |   _ _   ___ ___  | |_    _   _  _ __   __     __   _ __ \n|  _  | /'_` )/' _ ` _ `\\| '_`\\ ( ) ( )( '__)/'_ `\\ /'__`\\( '__)\n| | | |( (_| || ( ) ( ) || |_) )| (_) || |  ( (_) |(  ___/| |   \n(_) (_)`\\__,_)(_) (_) (_)(_,__/'`\\___/'(_)  `\\__  |`\\____)(_)   \n                                            ( )_) |             \n                                             \\___/'             \n```\n{: .-figlet}\n\n### pyramid\n\n```\n  ^    ^    ^    ^    ^    ^    ^    ^    ^  \n /H\\  /a\\  /m\\  /b\\  /u\\  /r\\  /g\\  /e\\  /r\\ \n<___><___><___><___><___><___><___><___><___>\n```\n{: .-figlet}\n\n### rectangles\n\n```\n _____           _                       \n|  |  |___ _____| |_ _ _ ___ ___ ___ ___ \n|     | .'|     | . | | |  _| . | -_|  _|\n|__|__|__,|_|_|_|___|___|_| |_  |___|_|  \n                            |___|        \n```\n{: .-figlet}\n\n### relief\n\n```\n___________________________________________________________________________________________________\n/~~\\__/~~\\__/~~~~~~\\__/~~\\__/~~\\_/~~~~~~~\\__/~~\\__/~~\\_/~~~~~~~\\___/~~~~~~\\__/~~~~~~~~\\_/~~~~~~~\\__\n/~~\\__/~~\\_/~~\\__/~~\\_/~~~\\/~~~\\_/~~\\__/~~\\_/~~\\__/~~\\_/~~\\__/~~\\_/~~\\__/~~\\_/~~\\_______/~~\\__/~~\\_\n/~~~~~~~~\\_/~~~~~~~~\\_/~~~~~~~~\\_/~~~~~~~\\__/~~\\__/~~\\_/~~~~~~~\\__/~~\\_______/~~~~~~\\___/~~~~~~~\\__\n/~~\\__/~~\\_/~~\\__/~~\\_/~~\\__/~~\\_/~~\\__/~~\\_/~~\\__/~~\\_/~~\\__/~~\\_/~~\\__/~~\\_/~~\\_______/~~\\__/~~\\_\n/~~\\__/~~\\_/~~\\__/~~\\_/~~\\__/~~\\_/~~~~~~~\\___/~~~~~~\\__/~~\\__/~~\\__/~~~~~~~\\_/~~~~~~~~\\_/~~\\__/~~\\_\n________________________________________________________________________/~~\\_______________________\n```\n{: .-figlet}\n\n### relief2\n\n```\n\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\n/// \\\\/// \\\\/////// \\\\/// \\\\/// \\//////// \\\\/// \\\\/// \\//////// \\\\\\/////// \\\\///////// \\//////// \\\\\n/// \\\\/// \\/// \\\\/// \\//// //// \\/// \\\\/// \\/// \\\\/// \\/// \\\\/// \\/// \\\\/// \\/// \\\\\\\\\\\\\\/// \\\\/// \\\n///////// \\///////// \\/// / /// \\//////// \\\\/// \\\\/// \\//////// \\\\/// \\\\\\\\\\\\\\/////// \\\\\\//////// \\\\\n/// \\\\/// \\/// \\\\/// \\/// \\\\/// \\/// \\\\/// \\/// \\\\/// \\/// \\\\/// \\/// \\\\/// \\/// \\\\\\\\\\\\\\/// \\\\/// \\\n/// \\\\/// \\/// \\\\/// \\/// \\\\/// \\//////// \\\\\\/////// \\\\/// \\\\/// \\\\//////// \\///////// \\/// \\\\/// \\\n\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/// \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\n```\n{: .-figlet}\n\n### rev\n\n```\n=========================================================================\n=  ====  ===================  ===========================================\n=  ====  ===================  ===========================================\n=  ====  ===================  ===========================================\n=  ====  ===   ===  =  = ===  =====  =  ==  =   ====   ====   ===  =   ==\n=        ==  =  ==        ==    ===  =  ==    =  ==  =  ==  =  ==    =  =\n=  ====  =====  ==  =  =  ==  =  ==  =  ==  ========    ==     ==  ======\n=  ====  ===    ==  =  =  ==  =  ==  =  ==  ==========  ==  =====  ======\n=  ====  ==  =  ==  =  =  ==  =  ==  =  ==  =======  =  ==  =  ==  ======\n=  ====  ===    ==  =  =  ==    ====    ==  ========   ====   ===  ======\n=========================================================================\n```\n{: .-figlet}\n\n### roman\n\n```\nooooo   ooooo                              .o8                                                          \n`888'   `888'                             \"888                                                          \n 888     888   .oooo.   ooo. .oo.  .oo.    888oooo.  oooo  oooo  oooo d8b  .oooooooo  .ooooo.  oooo d8b \n 888ooooo888  `P  )88b  `888P\"Y88bP\"Y88b   d88' `88b `888  `888  `888\"\"8P 888' `88b  d88' `88b `888\"\"8P \n 888     888   .oP\"888   888   888   888   888   888  888   888   888     888   888  888ooo888  888     \n 888     888  d8(  888   888   888   888   888   888  888   888   888     `88bod8P'  888    .o  888     \no888o   o888o `Y888\"\"8o o888o o888o o888o  `Y8bod8P'  `V88V\"V8P' d888b    `8oooooo.  `Y8bod8P' d888b    \n                                                                          d\"     YD                     \n                                                                          \"Y88888P'                     \n```\n{: .-figlet}\n\n### rot13\n\n```\nUnzohetre\n```\n{: .-figlet}\n\n### rounded\n\n```\n _     _             _                                  \n(_)   (_)           | |                                 \n _______ _____ ____ | |__  _   _  ____ ____ _____  ____ \n|  ___  (____ |    \\|  _ \\| | | |/ ___) _  | ___ |/ ___)\n| |   | / ___ | | | | |_) ) |_| | |  ( (_| | ____| |    \n|_|   |_\\_____|_|_|_|____/|____/|_|   \\___ |_____)_|    \n                                     (_____|            \n```\n{: .-figlet}\n\n### rowancap\n\n```\n    dMP dMP .aMMMb  dMMMMMMMMb dMMMMb  dMP dMP dMMMMb  .aMMMMP dMMMMMP dMMMMb \n   dMP dMP dMP\"dMP dMP\"dMP\"dMPdMP\"dMP dMP dMP dMP.dMP dMP\"    dMP     dMP.dMP \n  dMMMMMP dMMMMMP dMP dMP dMPdMMMMK\" dMP dMP dMMMMK\" dMP MMP\"dMMMP   dMMMMK\"  \n dMP dMP dMP dMP dMP dMP dMPdMP.aMF dMP.aMP dMP\"AMF dMP.dMP dMP     dMP\"AMF   \ndMP dMP dMP dMP dMP dMP dMPdMMMMP\"  VMMMP\" dMP dMP  VMMMP\" dMMMMMP dMP dMP    \n```\n{: .-figlet}\n\n### rozzo\n\n```\n888 888                     888                                               \n888 888  ,\"Y88b 888 888 8e  888 88e  8888 8888 888,8,  e88 888  ,e e,  888,8, \n8888888 \"8\" 888 888 888 88b 888 888b 8888 8888 888 \"  d888 888 d88 88b 888 \"  \n888 888 ,ee 888 888 888 888 888 888P Y888 888P 888    Y888 888 888   , 888    \n888 888 \"88 888 888 888 888 888 88\"   \"88 88\"  888     \"88 888  \"YeeP\" 888    \n                                                        ,  88P                \n                                                       \"8\",P\"                 \n```\n{: .-figlet}\n\n### runic\n\n```\n|    | \n|\\   | \n| \\  | \n|  \\ | \n|   \\| \n|    | \n```\n{: .-figlet}\n\n### runyc\n\n```\n|    |                               \n|\\   |                               \n| \\  |                               \n|  \\ | |\\ |\\/| |\\ |\\  |\\ \\ / |\\/| |\\ \n|   \\| |\\ |/\\| |< | | |/  X  |  | |/ \n|    | |  |  | |/ | | |\\ / \\ |  | |\\ \n```\n{: .-figlet}\n\n### sblood\n\n```\n @@@  @@@  @@@@@@  @@@@@@@@@@  @@@@@@@  @@@  @@@ @@@@@@@   @@@@@@@  @@@@@@@@ @@@@@@@ \n @@!  @@@ @@!  @@@ @@! @@! @@! @@!  @@@ @@!  @@@ @@!  @@@ !@@       @@!      @@!  @@@\n @!@!@!@! @!@!@!@! @!! !!@ @!@ @!@!@!@  @!@  !@! @!@!!@!  !@! @!@!@ @!!!:!   @!@!!@! \n !!:  !!! !!:  !!! !!:     !!: !!:  !!! !!:  !!! !!: :!!  :!!   !!: !!:      !!: :!! \n  :   : :  :   : :  :      :   :: : ::   :.:: :   :   : :  :: :: :  : :: :::  :   : :\n```\n{: .-figlet}\n\n### script\n\n```\n ,                      _                               \n/|   |                 | |                              \n |___|  __,   _  _  _  | |          ,_    __,  _   ,_   \n |   |\\/  |  / |/ |/ | |/ \\_|   |  /  |  /  | |/  /  |  \n |   |/\\_/|_/  |  |  |_/\\_/  \\_/|_/   |_/\\_/|/|__/   |_/\n                                           /|           \n                                           \\|           \n```\n{: .-figlet}\n\n### serifcap\n\n```\n _  _   __   __  __  ___  _  _  ___   __  ___  ___  \n( )( ) (  ) (  \\/  )(  ,)( )( )(  ,) / _)(  _)(  ,) \n )__(  /__\\  )    (  ) ,\\ )()(  )  \\( (/\\ ) _) )  \\ \n(_)(_)(_)(_)(_/\\/\\_)(___/ \\__/ (_)\\_)\\__/(___)(_)\\_)\n```\n{: .-figlet}\n\n### shadow\n\n```\n |   |                 |                               \n |   |  _` | __ `__ \\  __ \\  |   |  __| _` |  _ \\  __| \n ___ | (   | |   |   | |   | |   | |   (   |  __/ |    \n_|  _|\\__,_|_|  _|  _|_.__/ \\__,_|_|  \\__, |\\___|_|    \n                                      |___/            \n```\n{: .-figlet}\n\n### short\n\n```\n|_|  ,_ |        _   \n| |(|||||)L||`(|(/_|`\n              _|     \n```\n{: .-figlet}\n\n### slant\n\n```\n    __  __                __                              \n   / / / /___ _____ ___  / /_  __  ___________ ____  _____\n  / /_/ / __ `/ __ `__ \\/ __ \\/ / / / ___/ __ `/ _ \\/ ___/\n / __  / /_/ / / / / / / /_/ / /_/ / /  / /_/ /  __/ /    \n/_/ /_/\\__,_/_/ /_/ /_/_.___/\\__,_/_/   \\__, /\\___/_/     \n                                       /____/             \n```\n{: .-figlet}\n\n### slide\n\n```\n##  ||            ##                            \n##  ||##|  ##H H| ##   ## H|## H|#HH| #H| ## H| \n##HH||  H| ### HH|##H| ## H|##H|## H|##HH|##H|  \n##  ||##H| ## H H|## H|## H|##   #HH|##   ##    \n##  ||##HH|##   H|##H|  #HH|##     H| #HH|##    \n                                ##H|            \n```\n{: .-figlet}\n\n### slscript\n\n```\n _    ,                                 \n' )  /              /                   \n /--/ __.  ______  /__. . __  _,  _  __ \n/  (_(_/|_/ / / <_/_)(_/_/ (_(_)_</_/ (_\n                              /|        \n                             |/         \n```\n{: .-figlet}\n\n### small\n\n```\n _  _            _                          \n| || |__ _ _ __ | |__ _  _ _ _ __ _ ___ _ _ \n| __ / _` | '  \\| '_ \\ || | '_/ _` / -_) '_|\n|_||_\\__,_|_|_|_|_.__/\\_,_|_| \\__, \\___|_|  \n                              |___/         \n```\n{: .-figlet}\n\n### smisome1\n\n```\n    ___       ___       ___       ___       ___       ___       ___       ___       ___   \n   /\\__\\     /\\  \\     /\\__\\     /\\  \\     /\\__\\     /\\  \\     /\\  \\     /\\  \\     /\\  \\  \n  /:/__/_   /::\\  \\   /::L_L_   /::\\  \\   /:/ _/_   /::\\  \\   /::\\  \\   /::\\  \\   /::\\  \\ \n /::\\/\\__\\ /::\\:\\__\\ /:/L:\\__\\ /::\\:\\__\\ /:/_/\\__\\ /::\\:\\__\\ /:/\\:\\__\\ /::\\:\\__\\ /::\\:\\__\\\n \\/\\::/  / \\/\\::/  / \\/_/:/  / \\:\\::/  / \\:\\/:/  / \\;:::/  / \\:\\:\\/__/ \\:\\:\\/  / \\;:::/  /\n   /:/  /    /:/  /    /:/  /   \\::/  /   \\::/  /   |:\\/__/   \\::/  /   \\:\\/  /   |:\\/__/ \n   \\/__/     \\/__/     \\/__/     \\/__/     \\/__/     \\|__|     \\/__/     \\/__/     \\|__|  \n```\n{: .-figlet}\n\n### smkeyboard\n\n```\n ____ ____ ____ ____ ____ ____ ____ ____ ____ \n||H |||a |||m |||b |||u |||r |||g |||e |||r ||\n||__|||__|||__|||__|||__|||__|||__|||__|||__||\n|/__\\|/__\\|/__\\|/__\\|/__\\|/__\\|/__\\|/__\\|/__\\|\n```\n{: .-figlet}\n\n### smscript\n\n```\n ,                                           \n/|  |  _,         |)         ,_   _,  _  ,_  \n |--| / |  /|/|/| |/\\_|  |  /  | / | |/ /  | \n |  |)\\/|_/ | | |_/\\/  \\/|_/   |/\\/|/|_/   |/\n                                  (|         \n```\n{: .-figlet}\n\n### smshadow\n\n```\n |  |             |                          \n __ |  _` |  ` \\   _ \\ |  |  _|_` |  -_)  _| \n_| _|\\__,_|_|_|_|_.__/\\_,_|_|\\__, |\\___|_|   \n                             ____/           \n```\n{: .-figlet}\n\n### smslant\n\n```\n   __ __           __                        \n  / // /__ ___ _  / /  __ _________ ____ ____\n / _  / _ `/  ' \\/ _ \\/ // / __/ _ `/ -_) __/\n/_//_/\\_,_/_/_/_/_.__/\\_,_/_/  \\_, /\\__/_/   \n                              /___/          \n```\n{: .-figlet}\n\n### smtengwar\n\n```\n\\  .',  _ _   _ _  ?    _____ ,'    \n/\\  |  |_)_) |_)_) | \\/ (_(_|  | \\/ \n             |       (,     |    (, \n```\n{: .-figlet}\n\n### speed\n\n```\n______  __                 ______                                    \n___  / / /_____ _______ ______  /_____  _______________ _____________\n__  /_/ /_  __ `/_  __ `__ \\_  __ \\  / / /_  ___/_  __ `/  _ \\_  ___/\n_  __  / / /_/ /_  / / / / /  /_/ / /_/ /_  /   _  /_/ //  __/  /    \n/_/ /_/  \\__,_/ /_/ /_/ /_//_.___/\\__,_/ /_/    _\\__, / \\___//_/     \n                                                /____/               \n```\n{: .-figlet}\n\n### stacey\n\n```\n__________________________________________________________________\n7  7  77  _  77        77  _  77  7  77  _  77     77     77  _  7\n|  !  ||  _  ||  _  _  ||   __||  |  ||    _||   __!|  ___!|    _|\n|     ||  7  ||  7  7  ||  _  ||  |  ||  _ \\ |  !  7|  __|_|  _ \\ \n|  7  ||  |  ||  |  |  ||  7  ||  !  ||  7  ||     ||     7|  7  |\n!__!__!!__!__!!__!__!__!!_____!!_____!!__!__!!_____!!_____!!__!__!\n```\n{: .-figlet}\n\n### stampatello\n\n```\n,-_/,.           .                       \n' |_|/ ,-. ,-,-. |-. . . ,-. ,-. ,-. ,-. \n /| |  ,-| | | | | | | | |   | | |-' |   \n `' `' `-^ ' ' ' ^-' `-^ '   `-| `-' '   \n                              ,|         \n                              `'         \n```\n{: .-figlet}\n\n### standard\n\n```\n _   _                 _                               \n| | | | __ _ _ __ ___ | |__  _   _ _ __ __ _  ___ _ __ \n| |_| |/ _` | '_ ` _ \\| '_ \\| | | | '__/ _` |/ _ \\ '__|\n|  _  | (_| | | | | | | |_) | |_| | | | (_| |  __/ |   \n|_| |_|\\__,_|_| |_| |_|_.__/ \\__,_|_|  \\__, |\\___|_|   \n                                       |___/           \n```\n{: .-figlet}\n\n### starwars\n\n```\n __    __       ___      .___  ___. .______    __    __  .______        _______  _______ .______      \n|  |  |  |     /   \\     |   \\/   | |   _  \\  |  |  |  | |   _  \\      /  _____||   ____||   _  \\     \n|  |__|  |    /  ^  \\    |  \\  /  | |  |_)  | |  |  |  | |  |_)  |    |  |  __  |  |__   |  |_)  |    \n|   __   |   /  /_\\  \\   |  |\\/|  | |   _  <  |  |  |  | |      /     |  | |_ | |   __|  |      /     \n|  |  |  |  /  _____  \\  |  |  |  | |  |_)  | |  `--'  | |  |\\  \\----.|  |__| | |  |____ |  |\\  \\----.\n|__|  |__| /__/     \\__\\ |__|  |__| |______/   \\______/  | _| `._____| \\______| |_______|| _| `._____|\n```\n{: .-figlet}\n\n### stellar\n\n```\n`..     `..                       `..                                               \n`..     `..                       `..                                               \n`..     `..   `..    `... `.. `.. `..      `..  `..`. `...   `..      `..    `. `...\n`...... `.. `..  `..  `..  `.  `..`.. `..  `..  `.. `..    `..  `.. `.   `..  `..   \n`..     `..`..   `..  `..  `.  `..`..   `..`..  `.. `..   `..   `..`..... `.. `..   \n`..     `..`..   `..  `..  `.  `..`..   `..`..  `.. `..    `..  `..`.         `..   \n`..     `..  `.. `...`...  `.  `..`.. `..    `..`..`...        `..   `....   `...   \n                                                            `..                     \n```\n{: .-figlet}\n\n### stop\n\n```\n _     _             _                                  \n| |   | |           | |                                 \n| |__ | | ____ ____ | | _  _   _  ____ ____  ____  ____ \n|  __)| |/ _  |    \\| || \\| | | |/ ___) _  |/ _  )/ ___)\n| |   | ( ( | | | | | |_) ) |_| | |  ( ( | ( (/ /| |    \n|_|   |_|\\_||_|_|_|_|____/ \\____|_|   \\_|| |\\____)_|    \n                                     (_____|            \n```\n{: .-figlet}\n\n### straight\n\n```\n|__| _  _ |_     _ _  _ _ \n|  |(_|||||_)|_|| (_)(-|  \n                  _/      \n```\n{: .-figlet}\n\n### tanja\n\n```\nH)    hh                    b)                                              \nH)    hh                    b)                                              \nH)hhhhhh a)AAAA   m)MM MMM  b)BBBB  u)   UU  r)RRR   g)GGG  e)EEEEE  r)RRR  \nH)    hh  a)AAA  m)  MM  MM b)   BB u)   UU r)   RR g)   GG e)EEEE  r)   RR \nH)    hh a)   A  m)  MM  MM b)   BB u)   UU r)      g)   GG e)      r)      \nH)    hh  a)AAAA m)      MM b)BBBB   u)UUU  r)       g)GGGG  e)EEEE r)      \n                                                         GG                 \n                                                    g)GGGG                  \n```\n{: .-figlet}\n\n### tengwar\n\n```\n`Yb.            db                                    dP\"Yb.                                .dP'            \n  `Yb        db    db                                 `b   'Yb                            dP'               \n    Yb                                                                    \"Ybaaaaaaaaad8'                   \n     Yb        'Yb    `Yb d88b d88b   `Yb d88b d88b      'Yb   `Yb    dP'  .dP'  dP'  88   'Yb   `Yb    dP' \n    dPYb        88     88P   88   8b   88P   8Y   8b      88     Yb  dP    88   88    88    88     Yb  dP   \n  ,dP  Yb       88     88    8P   88   88    8P   88      88      YbdP     Y8   Y8   .88    88      YbdP    \n.dP'    `Yb.   .8P     88  .dP  .dP    88  .dP' .dP'     .8P      .8P      `Y88P`Y88P'88   .8P      .8P     \n                      .888888888888b.  888888888888b.           dP'  b                88          dP'  b    \n                                       88                       Y.  ,P                88          Y.  ,P    \n                                      .8P                        `\"\"'                 Y8.          `\"\"'     \n```\n{: .-figlet}\n\n### term\n\n```\nHamburger\n```\n{: .-figlet}\n\n### thick\n\n```\n8   8                8                               \n8www8 .d88 8d8b.d8b. 88b. 8   8 8d8b .d88 .d88b 8d8b \n8   8 8  8 8P Y8P Y8 8  8 8b d8 8P   8  8 8.dP' 8P   \n8   8 `Y88 8   8   8 88P' `Y8P8 8    `Y88 `Y88P 8    \n                                     wwdP            \n```\n{: .-figlet}\n\n### thin\n\n```\n|   |          |                             \n|---|,---.,-.-.|---..   .,---.,---.,---.,---.\n|   |,---|| | ||   ||   ||    |   ||---'|    \n`   '`---^` ' '`---'`---'`    `---|`---'`    \n                              `---'          \n```\n{: .-figlet}\n\n### threepoint\n\n```\n|_| _  _ _ |_     _ _  _  _\n| |(_|| | ||_)|_|| (_|(/_| \n                    _|     \n```\n{: .-figlet}\n\n### ticks\n\n```\n_/\\/\\____/\\/\\______________________________/\\/\\___________________________________________________________________\n_/\\/\\____/\\/\\__/\\/\\/\\______/\\/\\/\\__/\\/\\____/\\/\\________/\\/\\__/\\/\\__/\\/\\__/\\/\\____/\\/\\/\\/\\____/\\/\\/\\____/\\/\\__/\\/\\_\n_/\\/\\/\\/\\/\\/\\______/\\/\\____/\\/\\/\\/\\/\\/\\/\\__/\\/\\/\\/\\____/\\/\\__/\\/\\__/\\/\\/\\/\\____/\\/\\__/\\/\\__/\\/\\/\\/\\/\\__/\\/\\/\\/\\___\n_/\\/\\____/\\/\\__/\\/\\/\\/\\____/\\/\\__/\\__/\\/\\__/\\/\\__/\\/\\__/\\/\\__/\\/\\__/\\/\\__________/\\/\\/\\/\\__/\\/\\________/\\/\\_______\n_/\\/\\____/\\/\\__/\\/\\/\\/\\/\\__/\\/\\______/\\/\\__/\\/\\/\\/\\______/\\/\\/\\/\\__/\\/\\______________/\\/\\____/\\/\\/\\/\\__/\\/\\_______\n_______________________________________________________________________________/\\/\\/\\/\\___________________________\n```\n{: .-figlet}\n\n### ticksslant\n\n```\n     _/\\/\\____/\\/\\______________________________/\\/\\___________________________________________________________________\n    _/\\/\\____/\\/\\__/\\/\\/\\______/\\/\\/\\__/\\/\\____/\\/\\________/\\/\\__/\\/\\__/\\/\\__/\\/\\____/\\/\\/\\/\\____/\\/\\/\\____/\\/\\__/\\/\\_ \n   _/\\/\\/\\/\\/\\/\\______/\\/\\____/\\/\\/\\/\\/\\/\\/\\__/\\/\\/\\/\\____/\\/\\__/\\/\\__/\\/\\/\\/\\____/\\/\\__/\\/\\__/\\/\\/\\/\\/\\__/\\/\\/\\/\\___  \n  _/\\/\\____/\\/\\__/\\/\\/\\/\\____/\\/\\__/\\__/\\/\\__/\\/\\__/\\/\\__/\\/\\__/\\/\\__/\\/\\__________/\\/\\/\\/\\__/\\/\\________/\\/\\_______   \n _/\\/\\____/\\/\\__/\\/\\/\\/\\/\\__/\\/\\______/\\/\\__/\\/\\/\\/\\______/\\/\\/\\/\\__/\\/\\______________/\\/\\____/\\/\\/\\/\\__/\\/\\_______    \n_______________________________________________________________________________/\\/\\/\\/\\___________________________     \n```\n{: .-figlet}\n\n### tinker-toy\n\n```\no  o           o                          \n|  |           |                          \nO--O  oo o-O-o O-o  o  o o-o o--o o-o o-o \n|  | | | | | | |  | |  | |   |  | |-' |   \no  o o-o-o o o o-o  o--o o   o--O o-o o   \n                                |         \n                             o--o         \n```\n{: .-figlet}\n\n### tombstone\n\n```\n _,_  _, _, _ __, _,_ __,  _, __, __,\n |_| /_\\ |\\/| |_) | | |_) / _ |_  |_)\n | | | | |  | |_) | | | \\ \\ / |   | \\\n ~ ~ ~ ~ ~  ~ ~   `~' ~ ~  ~  ~~~ ~ ~\n```\n{: .-figlet}\n\n### trek\n\n```\n     dBP dBP dBBBBBb     dBBBBBBb dBBBBb   dBP dBP dBBBBBb    dBBBBb  dBBBP dBBBBBb\n                  BB          dBP    dBP               dBP                      dBP\n   dBBBBBP    dBP BB   dBPdBPdBP dBBBK'  dBP dBP   dBBBBK   dBBBB   dBBP    dBBBBK \n  dBP dBP    dBP  BB  dBPdBPdBP dB' db  dBP_dBP   dBP  BB  dB' BB  dBP     dBP  BB \n dBP dBP    dBBBBBBB dBPdBPdBP dBBBBP' dBBBBBP   dBP  dB' dBBBBBB dBBBBP  dBP  dB' \n```\n{: .-figlet}\n\n### tsalagi\n\n```\n __      __   -|-       __           __     ___   ___     __   \n/  '    |  \\   |       `  \\  ,  |~, /  '     |_-_  |     /  '  \n\\_      |   \\  |        _  |@|  |  | ,_   `\\/\\     |_,  | ,_   \n/  _    |   /  | _   |  |  | |  /  | ' |   |  |    | '  | ' |  \n\\__,    |__/    _|    \\_|_/   \\/    \\__/    \\/    _|_    \\__/  \n```\n{: .-figlet}\n\n### twopoint\n\n```\n|_| _ ._ _ |_    ._(~| _._\n| |(_|| | ||_)|_||  _|}_| \n```\n{: .-figlet}\n\n### univers\n\n```\n88        88                               88                                                                    \n88        88                               88                                                                    \n88        88                               88                                                                    \n88aaaaaaaa88 ,adPPYYba, 88,dPYba,,adPYba,  88,dPPYba,  88       88 8b,dPPYba,  ,adPPYb,d8  ,adPPYba, 8b,dPPYba,  \n88\"\"\"\"\"\"\"\"88 \"\"     `Y8 88P'   \"88\"    \"8a 88P'    \"8a 88       88 88P'   \"Y8 a8\"    `Y88 a8P_____88 88P'   \"Y8  \n88        88 ,adPPPPP88 88      88      88 88       d8 88       88 88         8b       88 8PP\"\"\"\"\"\"\" 88          \n88        88 88,    ,88 88      88      88 88b,   ,a8\" \"8a,   ,a88 88         \"8a,   ,d88 \"8b,   ,aa 88          \n88        88 `\"8bbdP\"Y8 88      88      88 8Y\"Ybbd8\"'   `\"YbbdP'Y8 88          `\"YbbdP\"Y8  `\"Ybbd8\"' 88          \n                                                                               aa,    ,88                        \n                                                                                \"Y8bbdP\"                         \n```\n{: .-figlet}\n\n### usaflag\n\n```\n :::  === :::====  :::=======  :::====  :::  === :::====  :::=====  :::===== :::==== \n :::  === :::  === ::: === === :::  === :::  === :::  === :::       :::      :::  ===\n ======== ======== === === === =======  ===  === =======  === ===== ======   ======= \n ===  === ===  === ===     === ===  === ===  === === ===  ===   === ===      === === \n ===  === ===  === ===     === =======   ======  ===  ===  =======  ======== ===  ===\n```\n{: .-figlet}\n\n### weird\n\n```\n /  |           /                            \n(___| ___  _ _ (___       ___  ___  ___  ___ \n|   )|   )| | )|   )|   )|   )|   )|___)|   )\n|  / |__/||  / |__/ |__/ |    |__/ |__  |    \n                              __/            \n```\n{: .-figlet}\n\n### whimsy\n\n```\n d8b                               d8b                                                  \n ?88                               ?88                                                  \n  88b                               88b                                                 \n  888888b  d888b8b    88bd8b,d88b   888888b ?88   d8P  88bd88b d888b8b   d8888b  88bd88b\n  88P `?8bd8P' ?88    88P'`?8P'?8b  88P `?8bd88   88   88P'  `d8P' ?88  d8b_,dP  88P'  `\n d88   88P88b  ,88b  d88  d88  88P d88,  d88?8(  d88  d88     88b  ,88b 88b     d88     \nd88'   88b`?88P'`88bd88' d88'  88bd88'`?88P'`?88P'?8bd88'     `?88P'`88b`?888P'd88'     \n                                                                     )88                \n                                                                    ,88P                \n                                                                `?8888P                 \n```\n{: .-figlet}\n\n\n## Toilet fonts\n\n### ascii12\n\n```\n mm    mm                      mm                                                         \n ##    ##                      ##                                                         \n ##    ##   m#####m  ####m##m  ##m###m   ##    ##   ##m####   m###m##   m####m    ##m#### \n ########   \" mmm##  ## ## ##  ##\"  \"##  ##    ##   ##\"      ##\"  \"##  ##mmmm##   ##\"     \n ##    ##  m##\"\"\"##  ## ## ##  ##    ##  ##    ##   ##       ##    ##  ##\"\"\"\"\"\"   ##      \n ##    ##  ##mmm###  ## ## ##  ###mm##\"  ##mmm###   ##       \"##mm###  \"##mmmm#   ##      \n \"\"    \"\"   \"\"\"\" \"\"  \"\" \"\" \"\"  \"\" \"\"\"     \"\"\"\" \"\"   \"\"        m\"\"\" ##    \"\"\"\"\"    \"\"      \n                                                              \"####\"\"                     \n```\n{: .-figlet}\n\n### ascii9\n\n```\n m    m               #                                        \n #    #  mmm   mmmmm  #mmm   m   m   m mm   mmmm   mmm    m mm \n #mmmm# \"   #  # # #  #\" \"#  #   #   #\"  \" #\" \"#  #\"  #   #\"  \"\n #    # m\"\"\"#  # # #  #   #  #   #   #     #   #  #\"\"\"\"   #    \n #    # \"mm\"#  # # #  ##m#\"  \"mm\"#   #     \"#m\"#  \"#mm\"   #    \n                                            m  #               \n                                             \"\"                \n```\n{: .-figlet}\n\n### bigascii12\n\n```\n ##    ##                      ##                                                         \n ##    ##                      ##                                                         \n ##    ##                      ##                                                         \n ##    ##   :####    ## #:##:  ##.###:   ##    ##   ##.####   :###:##   .####:    ##.#### \n ##    ##   ######   ########  #######:  ##    ##   #######  .#######  .######:   ####### \n ########   #:  :##  ##.##.##  ###  ###  ##    ##   ###.     ###  ###  ##:  :##   ###.    \n ########    :#####  ## ## ##  ##.  .##  ##    ##   ##       ##.  .##  ########   ##      \n ##    ##  .#######  ## ## ##  ##    ##  ##    ##   ##       ##    ##  ########   ##      \n ##    ##  ## .  ##  ## ## ##  ##.  .##  ##    ##   ##       ##.  .##  ##         ##      \n ##    ##  ##:  ###  ## ## ##  ###  ###  ##:  ###   ##       ###  ###  ###.  :#   ##      \n ##    ##  ########  ## ## ##  #######:   #######   ##       .#######  .#######   ##      \n ##    ##    ###.##  ## ## ##  ##.###:     ###.##   ##        :###:##   .#####:   ##      \n                                                              #.  :##                     \n                                                              ######                      \n                                                              :####:                      \n```\n{: .-figlet}\n\n### bigascii9\n\n```\n                      #                                        \n #    #               #                                        \n #    #               #                                        \n #    # .###.  ## #   # ##   #   #   #:##:  ## #   ###    #:##:\n #    # #: :#  #:#:#  #   #  #   #   ##  # #   #     :#   ##  #\n ######     #  # # #  #   #  #   #   #     #   #  #   #   #    \n #    # :####  # # #  #   #  #   #   #     #   #  #####   #    \n #    # #:  #  # # #  #   #  #   #   #     #   #  #       #    \n #    # #.  #  # # #  #   #  #:  #   #     #   #      #   #    \n #    # :##:#  # # #  # ##   :##:#   #      ##:#   ###:   #    \n                                               #               \n                                              :#               \n                                            :##.               \n```\n{: .-figlet}\n\n### bigmono12\n\n```\n \u2588\u2588    \u2588\u2588                      \u2588\u2588                                                         \n \u2588\u2588    \u2588\u2588                      \u2588\u2588                                                         \n \u2588\u2588    \u2588\u2588                      \u2588\u2588                                                         \n \u2588\u2588    \u2588\u2588   \u2592\u2588\u2588\u2588\u2588\u2593   \u2588\u2588\u2593\u2588\u2592\u2588\u2588\u2592  \u2588\u2588\u2591\u2588\u2588\u2588\u2592   \u2588\u2588    \u2588\u2588   \u2588\u2588\u2591\u2588\u2588\u2588\u2588   \u2592\u2588\u2588\u2588\u2592\u2588\u2588   \u2591\u2588\u2588\u2588\u2588\u2592    \u2588\u2588\u2591\u2588\u2588\u2588\u2588 \n \u2588\u2588    \u2588\u2588   \u2588\u2588\u2588\u2588\u2588\u2588\u2593  \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588  \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2592  \u2588\u2588    \u2588\u2588   \u2588\u2588\u2588\u2588\u2588\u2588\u2588  \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588  \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2592   \u2588\u2588\u2588\u2588\u2588\u2588\u2588 \n \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588   \u2588\u2592  \u2592\u2588\u2588  \u2588\u2588\u2591\u2588\u2588\u2591\u2588\u2588  \u2588\u2588\u2588  \u2588\u2588\u2588  \u2588\u2588    \u2588\u2588   \u2588\u2588\u2588\u2591     \u2588\u2588\u2588  \u2588\u2588\u2588  \u2588\u2588\u2592  \u2592\u2588\u2588   \u2588\u2588\u2588\u2591    \n \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588    \u2592\u2588\u2588\u2588\u2588\u2588  \u2588\u2588 \u2588\u2588 \u2588\u2588  \u2588\u2588\u2591  \u2591\u2588\u2588  \u2588\u2588    \u2588\u2588   \u2588\u2588       \u2588\u2588\u2591  \u2591\u2588\u2588  \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588   \u2588\u2588      \n \u2588\u2588    \u2588\u2588  \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588  \u2588\u2588 \u2588\u2588 \u2588\u2588  \u2588\u2588    \u2588\u2588  \u2588\u2588    \u2588\u2588   \u2588\u2588       \u2588\u2588    \u2588\u2588  \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588   \u2588\u2588      \n \u2588\u2588    \u2588\u2588  \u2588\u2588\u2593\u2591  \u2588\u2588  \u2588\u2588 \u2588\u2588 \u2588\u2588  \u2588\u2588\u2591  \u2591\u2588\u2588  \u2588\u2588    \u2588\u2588   \u2588\u2588       \u2588\u2588\u2591  \u2591\u2588\u2588  \u2588\u2588         \u2588\u2588      \n \u2588\u2588    \u2588\u2588  \u2588\u2588\u2592  \u2588\u2588\u2588  \u2588\u2588 \u2588\u2588 \u2588\u2588  \u2588\u2588\u2588  \u2588\u2588\u2588  \u2588\u2588\u2592  \u2588\u2588\u2588   \u2588\u2588       \u2588\u2588\u2588  \u2588\u2588\u2588  \u2588\u2588\u2588\u2591  \u2592\u2588   \u2588\u2588      \n \u2588\u2588    \u2588\u2588  \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588  \u2588\u2588 \u2588\u2588 \u2588\u2588  \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2592  \u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588   \u2588\u2588       \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588  \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588   \u2588\u2588      \n \u2588\u2588    \u2588\u2588   \u2593\u2588\u2588\u2588\u2591\u2588\u2588  \u2588\u2588 \u2588\u2588 \u2588\u2588  \u2588\u2588\u2591\u2588\u2588\u2588\u2592    \u2593\u2588\u2588\u2588\u2591\u2588\u2588   \u2588\u2588        \u2592\u2588\u2588\u2588\u2592\u2588\u2588   \u2591\u2588\u2588\u2588\u2588\u2588\u2592   \u2588\u2588      \n                                                              \u2588\u2591  \u2592\u2588\u2588                     \n                                                              \u2588\u2588\u2588\u2588\u2588\u2588\u2593                     \n                                                              \u2592\u2588\u2588\u2588\u2588\u2592                      \n```\n{: .-figlet}\n\n### bigmono9\n\n```\n                      \u2588                                        \n \u2588    \u2588               \u2588                                        \n \u2588    \u2588               \u2588                                        \n \u2588    \u2588 \u2591\u2588\u2588\u2588\u2591  \u2588\u2588\u2593\u2588\u2593  \u2588\u2593\u2588\u2588   \u2588   \u2588   \u2588\u2592\u2588\u2588\u2592  \u2588\u2588\u2593\u2588   \u2588\u2588\u2588    \u2588\u2592\u2588\u2588\u2592\n \u2588    \u2588 \u2588\u2592 \u2592\u2588  \u2588\u2592\u2588\u2592\u2588  \u2588\u2593 \u2593\u2588  \u2588   \u2588   \u2588\u2588  \u2588 \u2588\u2593 \u2593\u2588  \u2593\u2593 \u2592\u2588   \u2588\u2588  \u2588\n \u2588\u2588\u2588\u2588\u2588\u2588     \u2588  \u2588 \u2588 \u2588  \u2588   \u2588  \u2588   \u2588   \u2588     \u2588   \u2588  \u2588   \u2588   \u2588    \n \u2588    \u2588 \u2592\u2588\u2588\u2588\u2588  \u2588 \u2588 \u2588  \u2588   \u2588  \u2588   \u2588   \u2588     \u2588   \u2588  \u2588\u2588\u2588\u2588\u2588   \u2588    \n \u2588    \u2588 \u2588\u2592  \u2588  \u2588 \u2588 \u2588  \u2588   \u2588  \u2588   \u2588   \u2588     \u2588   \u2588  \u2588       \u2588    \n \u2588    \u2588 \u2588\u2591 \u2593\u2588  \u2588 \u2588 \u2588  \u2588\u2593 \u2593\u2588  \u2588\u2592 \u2593\u2588   \u2588     \u2588\u2593 \u2593\u2588  \u2593\u2593  \u2588   \u2588    \n \u2588    \u2588 \u2592\u2588\u2588\u2592\u2588  \u2588 \u2588 \u2588  \u2588\u2593\u2588\u2588   \u2592\u2588\u2588\u2592\u2588   \u2588      \u2588\u2588\u2592\u2588   \u2588\u2588\u2588\u2592   \u2588    \n                                               \u2588               \n                                            \u2593 \u2592\u2588               \n                                            \u2592\u2588\u2588\u2591               \n```\n{: .-figlet}\n\n### circle\n\n```\n\u24bd\u24d0\u24dc\u24d1\u24e4\u24e1\u24d6\u24d4\u24e1\n```\n{: .-figlet}\n\n### emboss\n\n```\n\u2503 \u2503\u250f\u2501\u2503\u250f\u250f \u250f\u2501 \u2503 \u2503\u250f\u2501\u2503\u250f\u2501\u251b\u250f\u2501\u251b\u250f\u2501\u2503\n\u250f\u2501\u2503\u250f\u2501\u2503\u2503\u2503\u2503\u250f\u2501\u2503\u2503 \u2503\u250f\u250f\u251b\u2503 \u2503\u250f\u2501\u251b\u250f\u250f\u251b\n\u251b \u251b\u251b \u251b\u251b\u251b\u251b\u2501\u2501 \u2501\u2501\u251b\u251b \u251b\u2501\u2501\u251b\u2501\u2501\u251b\u251b \u251b\n```\n{: .-figlet}\n\n### emboss2\n\n```\n\u2551 \u2551\u2554\u2550\u2551\u2554\u2554 \u2554\u2550 \u2551 \u2551\u2554\u2550\u2551\u2554\u2550\u255d\u2554\u2550\u255d\u2554\u2550\u2551\n\u2554\u2550\u2551\u2554\u2550\u2551\u2551\u2551\u2551\u2554\u2550\u2551\u2551 \u2551\u2554\u2554\u255d\u2551 \u2551\u2554\u2550\u255d\u2554\u2554\u255d\n\u255d \u255d\u255d \u255d\u255d\u255d\u255d\u2550\u2550 \u2550\u2550\u255d\u255d \u255d\u2550\u2550\u255d\u2550\u2550\u255d\u255d \u255d\n```\n{: .-figlet}\n\n### future\n\n```\n\u257b \u257b\u250f\u2501\u2513\u250f\u2533\u2513\u250f\u2513 \u257b \u257b\u250f\u2501\u2513\u250f\u2501\u2578\u250f\u2501\u2578\u250f\u2501\u2513\n\u2523\u2501\u252b\u2523\u2501\u252b\u2503\u2503\u2503\u2523\u253b\u2513\u2503 \u2503\u2523\u2533\u251b\u2503\u257a\u2513\u2523\u2578 \u2523\u2533\u251b\n\u2579 \u2579\u2579 \u2579\u2579 \u2579\u2517\u2501\u251b\u2517\u2501\u251b\u2579\u2517\u2578\u2517\u2501\u251b\u2517\u2501\u2578\u2579\u2517\u2578\n```\n{: .-figlet}\n\n### letter\n\n```\nH   H   A   M   M BBBB  U   U RRRR   GGG  EEEEE RRRR  \nH   H  A A  MM MM B   B U   U R   R G     E     R   R \nHHHHH AAAAA M M M BBBB  U   U RRRR  G GG  EEEE  RRRR  \nH   H A   A M   M B   B U   U R  R  G   G E     R  R  \nH   H A   A M   M BBBB   UUU  R   R  GGG  EEEEE R   R \n```\n{: .-figlet}\n\n### mono12\n\n```\n \u2584\u2584    \u2584\u2584                      \u2584\u2584                                                         \n \u2588\u2588    \u2588\u2588                      \u2588\u2588                                                         \n \u2588\u2588    \u2588\u2588   \u2584\u2588\u2588\u2588\u2588\u2588\u2584  \u2588\u2588\u2588\u2588\u2584\u2588\u2588\u2584  \u2588\u2588\u2584\u2588\u2588\u2588\u2584   \u2588\u2588    \u2588\u2588   \u2588\u2588\u2584\u2588\u2588\u2588\u2588   \u2584\u2588\u2588\u2588\u2584\u2588\u2588   \u2584\u2588\u2588\u2588\u2588\u2584    \u2588\u2588\u2584\u2588\u2588\u2588\u2588 \n \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588   \u2580 \u2584\u2584\u2584\u2588\u2588  \u2588\u2588 \u2588\u2588 \u2588\u2588  \u2588\u2588\u2580  \u2580\u2588\u2588  \u2588\u2588    \u2588\u2588   \u2588\u2588\u2580      \u2588\u2588\u2580  \u2580\u2588\u2588  \u2588\u2588\u2584\u2584\u2584\u2584\u2588\u2588   \u2588\u2588\u2580     \n \u2588\u2588    \u2588\u2588  \u2584\u2588\u2588\u2580\u2580\u2580\u2588\u2588  \u2588\u2588 \u2588\u2588 \u2588\u2588  \u2588\u2588    \u2588\u2588  \u2588\u2588    \u2588\u2588   \u2588\u2588       \u2588\u2588    \u2588\u2588  \u2588\u2588\u2580\u2580\u2580\u2580\u2580\u2580   \u2588\u2588      \n \u2588\u2588    \u2588\u2588  \u2588\u2588\u2584\u2584\u2584\u2588\u2588\u2588  \u2588\u2588 \u2588\u2588 \u2588\u2588  \u2588\u2588\u2588\u2584\u2584\u2588\u2588\u2580  \u2588\u2588\u2584\u2584\u2584\u2588\u2588\u2588   \u2588\u2588       \u2580\u2588\u2588\u2584\u2584\u2588\u2588\u2588  \u2580\u2588\u2588\u2584\u2584\u2584\u2584\u2588   \u2588\u2588      \n \u2580\u2580    \u2580\u2580   \u2580\u2580\u2580\u2580 \u2580\u2580  \u2580\u2580 \u2580\u2580 \u2580\u2580  \u2580\u2580 \u2580\u2580\u2580     \u2580\u2580\u2580\u2580 \u2580\u2580   \u2580\u2580        \u2584\u2580\u2580\u2580 \u2588\u2588    \u2580\u2580\u2580\u2580\u2580    \u2580\u2580      \n                                                              \u2580\u2588\u2588\u2588\u2588\u2580\u2580                     \n```\n{: .-figlet}\n\n### mono9\n\n```\n \u2584    \u2584               \u2588                                        \n \u2588    \u2588  \u2584\u2584\u2584   \u2584\u2584\u2584\u2584\u2584  \u2588\u2584\u2584\u2584   \u2584   \u2584   \u2584 \u2584\u2584   \u2584\u2584\u2584\u2584   \u2584\u2584\u2584    \u2584 \u2584\u2584 \n \u2588\u2584\u2584\u2584\u2584\u2588 \u2580   \u2588  \u2588 \u2588 \u2588  \u2588\u2580 \u2580\u2588  \u2588   \u2588   \u2588\u2580  \u2580 \u2588\u2580 \u2580\u2588  \u2588\u2580  \u2588   \u2588\u2580  \u2580\n \u2588    \u2588 \u2584\u2580\u2580\u2580\u2588  \u2588 \u2588 \u2588  \u2588   \u2588  \u2588   \u2588   \u2588     \u2588   \u2588  \u2588\u2580\u2580\u2580\u2580   \u2588    \n \u2588    \u2588 \u2580\u2584\u2584\u2580\u2588  \u2588 \u2588 \u2588  \u2588\u2588\u2584\u2588\u2580  \u2580\u2584\u2584\u2580\u2588   \u2588     \u2580\u2588\u2584\u2580\u2588  \u2580\u2588\u2584\u2584\u2580   \u2588    \n                                            \u2584  \u2588               \n                                             \u2580\u2580                \n```\n{: .-figlet}\n\n### pagga\n\n```\n\u2591\u2588\u2591\u2588\u2591\u2588\u2580\u2588\u2591\u2588\u2584\u2588\u2591\u2588\u2580\u2584\u2591\u2588\u2591\u2588\u2591\u2588\u2580\u2584\u2591\u2588\u2580\u2580\u2591\u2588\u2580\u2580\u2591\u2588\u2580\u2584\n\u2591\u2588\u2580\u2588\u2591\u2588\u2580\u2588\u2591\u2588\u2591\u2588\u2591\u2588\u2580\u2584\u2591\u2588\u2591\u2588\u2591\u2588\u2580\u2584\u2591\u2588\u2591\u2588\u2591\u2588\u2580\u2580\u2591\u2588\u2580\u2584\n\u2591\u2580\u2591\u2580\u2591\u2580\u2591\u2580\u2591\u2580\u2591\u2580\u2591\u2580\u2580\u2591\u2591\u2580\u2580\u2580\u2591\u2580\u2591\u2580\u2591\u2580\u2580\u2580\u2591\u2580\u2580\u2580\u2591\u2580\u2591\u2580\n```\n{: .-figlet}\n\n### smascii12\n\n```\n., .,          .,                            \n][ ][          ][                            \n][ ][ dWW,]WbW,]bWb ][ ][ WdW[ dWd[ dWb  WdW[\n]WWW[ `md[][W][]P T[][ ][ W`  ]P T[]bmd[ W`  \n][ ][.W\"T[][W][][ ][][ ][ W   ][ ][]P\"\"` W   \n][ ][]bmW[][W][]WmW`]bmW[ W   'WmW['Wmm[ W   \n'` '` \"\"'`'`\"'`'`\"`  \"\"'` \"    /\"][ '\"\"  \"   \n                               TWP`          \n```\n{: .-figlet}\n\n### smascii9\n\n```\n.  ,        ]                       \n]  [ m, .mm ]m, . .  ,m  mm  m,  ,m \n]mm[' ] ]]] ]`T ] ]  P `]`T ]`]  P `\n]  [.\"T ]]] ] ] ] ]  [  ] ] ]\"\"  [  \n]  ['mT ]]] ]bP 'mT  [  'bT 'b/  [  \n                         ,]         \n                         '`         \n```\n{: .-figlet}\n\n### smblock\n\n```\n\u258c \u258c       \u258c                 \n\u2599\u2584\u258c\u259d\u2580\u2596\u259b\u259a\u2580\u2596\u259b\u2580\u2596\u258c \u258c\u2599\u2580\u2596\u259e\u2580\u258c\u259e\u2580\u2596\u2599\u2580\u2596\n\u258c \u258c\u259e\u2580\u258c\u258c\u2590 \u258c\u258c \u258c\u258c \u258c\u258c  \u259a\u2584\u258c\u259b\u2580 \u258c  \n\u2598 \u2598\u259d\u2580\u2598\u2598\u259d \u2598\u2580\u2580 \u259d\u2580\u2598\u2598  \u2597\u2584\u2598\u259d\u2580\u2598\u2598  \n```\n{: .-figlet}\n\n### smbraille\n\n```\n \u28c7\u28f8 \u2880\u28c0 \u28c0\u28c0  \u28c7\u2840 \u2840\u2880 \u2840\u28c0 \u2880\u2840 \u2880\u2840 \u2840\u28c0\n \u2807\u2838 \u2823\u283c \u2807\u2807\u2807 \u2827\u281c \u2823\u283c \u280f  \u28d1\u287a \u2823\u282d \u280f \n```\n{: .-figlet}\n\n### smmono12\n\n```\n\u2597\u2596 \u2597\u2596          \u2597\u2596                            \n\u2590\u258c \u2590\u258c          \u2590\u258c                            \n\u2590\u258c \u2590\u258c \u259f\u2588\u2588\u2596\u2590\u2588\u2599\u2588\u2596\u2590\u2599\u2588\u2599 \u2590\u258c \u2590\u258c \u2588\u259f\u2588\u258c \u259f\u2588\u259f\u258c \u259f\u2588\u2599  \u2588\u259f\u2588\u258c\n\u2590\u2588\u2588\u2588\u258c \u2598\u2584\u259f\u258c\u2590\u258c\u2588\u2590\u258c\u2590\u259b \u259c\u258c\u2590\u258c \u2590\u258c \u2588\u2598  \u2590\u259b \u259c\u258c\u2590\u2599\u2584\u259f\u258c \u2588\u2598  \n\u2590\u258c \u2590\u258c\u2597\u2588\u2580\u259c\u258c\u2590\u258c\u2588\u2590\u258c\u2590\u258c \u2590\u258c\u2590\u258c \u2590\u258c \u2588   \u2590\u258c \u2590\u258c\u2590\u259b\u2580\u2580\u2598 \u2588   \n\u2590\u258c \u2590\u258c\u2590\u2599\u2584\u2588\u258c\u2590\u258c\u2588\u2590\u258c\u2590\u2588\u2584\u2588\u2598\u2590\u2599\u2584\u2588\u258c \u2588   \u259d\u2588\u2584\u2588\u258c\u259d\u2588\u2584\u2584\u258c \u2588   \n\u259d\u2598 \u259d\u2598 \u2580\u2580\u259d\u2598\u259d\u2598\u2580\u259d\u2598\u259d\u2598\u2580\u2598  \u2580\u2580\u259d\u2598 \u2580    \u259e\u2580\u2590\u258c \u259d\u2580\u2580  \u2580   \n                               \u259c\u2588\u259b\u2598          \n```\n{: .-figlet}\n\n### smmono9\n\n```\n\u2597  \u2596        \u2590                       \n\u2590  \u258c \u2584\u2596 \u2597\u2584\u2584 \u2590\u2584\u2596 \u2597 \u2597  \u2596\u2584  \u2584\u2584  \u2584\u2596  \u2596\u2584 \n\u2590\u2584\u2584\u258c\u259d \u2590 \u2590\u2590\u2590 \u2590\u2598\u259c \u2590 \u2590  \u259b \u2598\u2590\u2598\u259c \u2590\u2598\u2590  \u259b \u2598\n\u2590  \u258c\u2597\u2580\u259c \u2590\u2590\u2590 \u2590 \u2590 \u2590 \u2590  \u258c  \u2590 \u2590 \u2590\u2580\u2580  \u258c  \n\u2590  \u258c\u259d\u2584\u259c \u2590\u2590\u2590 \u2590\u2599\u259b \u259d\u2584\u259c  \u258c  \u259d\u2599\u259c \u259d\u2599\u259e  \u258c  \n                         \u2596\u2590         \n                         \u259d\u2598         \n```\n{: .-figlet}\n\n### wideterm\n\n```\n\uff28\uff41\uff4d\uff42\uff55\uff52\uff47\uff45\uff52\n```\n{: .-figlet}"}

field_body:
### Usage

```bash
echo "Hamburger" | figlet -f cybermedium
```

```
_  _ ____ _  _ ___  _  _ ____ ____ ____ ____ 
|__| |__| |\/| |__] |  | |__/ | __ |___ |__/ 
|  | |  | |  | |__] |__| |  \ |__] |___ |  \ 
```
{: .-figlet}

Run `figlet` with `-f <font>` to use a font.

### Toilet fonts

```bash
echo "Hello" | \
  figlet -f smmono12 -d /usr/local/share/figlet
```

Figlet comes with support for Toilet fonts, which are in `{share}/figlet`. This is not the default font dir, so you'll have to use `-d <path>` to access it.

## Rico's favorites

### wideterm

```
Ｈａｍｂｕｒｇｅｒ
```
{: .-figlet}

### stampatello

```
,-_/,.           .                       
' |_|/ ,-. ,-,-. |-. . . ,-. ,-. ,-. ,-. 
 /| |  ,-| | | | | | | | |   | | |-' |   
 `' `' `-^ ' ' ' ^-' `-^ '   `-| `-' '   
                              ,|         
                              `'         
```
{: .-figlet}

### cybermedium

```
_  _ ____ _  _ ___  _  _ ____ ____ ____ ____ 
|__| |__| |\/| |__] |  | |__/ | __ |___ |__/ 
|  | |  | |  | |__] |__| |  \ |__] |___ |  \ 
```
{: .-figlet}

### cyberlarge

```
 _     _ _______ _______ ______  _     _  ______  ______ _______  ______
 |_____| |_____| |  |  | |_____] |     | |_____/ |  ____ |______ |_____/
 |     | |     | |  |  | |_____] |_____| |    \_ |_____| |______ |    \_
```
{: .-figlet}

### thin

```
|   |          |                             
|---|,---.,-.-.|---..   .,---.,---.,---.,---.
|   |,---|| | ||   ||   ||    |   ||---'|    
`   '`---^` ' '`---'`---'`    `---|`---'`    
                              `---'          
```
{: .-figlet}

### smbraille

```
 ⣇⣸ ⢀⣀ ⣀⣀  ⣇⡀ ⡀⢀ ⡀⣀ ⢀⡀ ⢀⡀ ⡀⣀
 ⠇⠸ ⠣⠼ ⠇⠇⠇ ⠧⠜ ⠣⠼ ⠏  ⣑⡺ ⠣⠭ ⠏ 
```
{: .-figlet}

### rectangles

```
 _____           _                       
|  |  |___ _____| |_ _ _ ___ ___ ___ ___ 
|     | .'|     | . | | |  _| . | -_|  _|
|__|__|__,|_|_|_|___|___|_| |_  |___|_|  
                            |___|        
```
{: .-figlet}

### bell

```
 __  __                  _                                     
 |   |    ___  , _ , _   \ ___  ,   . .___    ___.   ___  .___ 
 |___|   /   ` |' `|' `. |/   \ |   | /   \ .'   ` .'   ` /   \
 |   |  |    | |   |   | |    ` |   | |   ' |    | |----' |   '
 /   /  `.__/| /   '   / `___,' `._/| /      `---| `.___, /    
                                             \___/             
```
{: .-figlet}

## Figlet fonts

### 3-d

```
 **      **                       **                                           
/**     /**                      /**                      *****                
/**     /**  ******   ********** /**      **   ** ****** **///**  *****  ******
/********** //////** //**//**//**/****** /**  /**//**//*/**  /** **///**//**//*
/**//////**  *******  /** /** /**/**///**/**  /** /** / //******/******* /** / 
/**     /** **////**  /** /** /**/**  /**/**  /** /**    /////**/**////  /**   
/**     /**//******** *** /** /**/****** //******/***     ***** //******/***   
//      //  //////// ///  //  // /////    ////// ///     /////   ////// ///    
```
{: .-figlet}

### 3x5

```
# #         #                       
# #  ## ### ### # # ### ### ### ### 
### # # ### # # # # #   # # ##  #   
# # ### # # ### ### #    ## ### #   
# #                     ###         
```
{: .-figlet}

### 5lineoblique

```
    //    / /                                                                        
   //___ / /  ___      _   __     / __               __      ___      ___      __    
  / ___   / //   ) ) // ) )  ) ) //   ) ) //   / / //  ) ) //   ) ) //___) ) //  ) ) 
 //    / / //   / / // / /  / / //   / / //   / / //      ((___/ / //       //       
//    / / ((___( ( // / /  / / ((___/ / ((___( ( //        //__   ((____   //        
```
{: .-figlet}

### acrobatic

```
  o         o                                  o                                                                      
 <|>       <|>                                <|>                                                                     
 < >       < >                                / >                                                                     
  |         |      o__ __o/  \o__ __o__ __o   \o__ __o      o       o   \o__ __o     o__ __o/    o__  __o   \o__ __o  
  o__/_ _\__o     /v     |    |     |     |>   |     v\    <|>     <|>   |     |>   /v     |    /v      |>   |     |> 
  |         |    />     / \  / \   / \   / \  / \     <\   < >     < >  / \   < >  />     / \  />      //   / \   < > 
 <o>       <o>   \      \o/  \o/   \o/   \o/  \o/      /    |       |   \o/        \      \o/  \o    o/     \o/       
  |         |     o      |    |     |     |    |      o     o       o    |          o      |    v\  /v __o   |        
 / \       / \    <\__  / \  / \   / \   / \  / \  __/>     <\__ __/>   / \         <\__  < >    <\/> __/>  / \       
                                                                                           |                          
                                                                                   o__     o                          
                                                                                   <\__ __/>                          
```
{: .-figlet}

### alligator

```
      :::    :::    :::      :::   :::  ::::::::: :::    ::::::::::::  :::::::: ::::::::::::::::::: 
     :+:    :+:  :+: :+:   :+:+: :+:+: :+:    :+::+:    :+::+:    :+::+:    :+::+:       :+:    :+: 
    +:+    +:+ +:+   +:+ +:+ +:+:+ +:++:+    +:++:+    +:++:+    +:++:+       +:+       +:+    +:+  
   +#++:++#+++#++:++#++:+#+  +:+  +#++#++:++#+ +#+    +:++#++:++#: :#:       +#++:++#  +#++:++#:    
  +#+    +#++#+     +#++#+       +#++#+    +#++#+    +#++#+    +#++#+   +#+#+#+       +#+    +#+    
 #+#    #+##+#     #+##+#       #+##+#    #+##+#    #+##+#    #+##+#    #+##+#       #+#    #+#     
###    ######     ######       ############  ######## ###    ### ######## #############    ###      
```
{: .-figlet}

### alligator2

```
:::    :::    :::    ::::    :::: ::::::::: :::    ::::::::::::  :::::::: :::::::::::::::::::  
:+:    :+:  :+: :+:  +:+:+: :+:+:+:+:    :+::+:    :+::+:    :+::+:    :+::+:       :+:    :+: 
+:+    +:+ +:+   +:+ +:+ +:+:+ +:++:+    +:++:+    +:++:+    +:++:+       +:+       +:+    +:+ 
+#++:++#+++#++:++#++:+#+  +:+  +#++#++:++#+ +#+    +:++#++:++#: :#:       +#++:++#  +#++:++#:  
+#+    +#++#+     +#++#+       +#++#+    +#++#+    +#++#+    +#++#+   +#+#+#+       +#+    +#+ 
#+#    #+##+#     #+##+#       #+##+#    #+##+#    #+##+#    #+##+#    #+##+#       #+#    #+# 
###    ######     ######       ############  ######## ###    ### ######## #############    ### 
```
{: .-figlet}

### alphabet

```
H  H           b                         
H  H           b                         
HHHH  aa mmmm  bbb  u  u rrr ggg eee rrr 
H  H a a m m m b  b u  u r   g g e e r   
H  H aaa m m m bbb   uuu r   ggg ee  r   
                               g         
                             ggg         
```
{: .-figlet}

### avatar

```
 _     ____  _      ____  _     ____  _____ _____ ____ 
/ \ /|/  _ \/ \__/|/  _ \/ \ /\/  __\/  __//  __//  __\
| |_||| / \|| |\/||| | //| | |||  \/|| |  _|  \  |  \/|
| | ||| |-||| |  ||| |_\\| \_/||    /| |_//|  /_ |    /
\_/ \|\_/ \|\_/  \|\____/\____/\_/\_\\____\\____\\_/\_\
```
{: .-figlet}

### banner

```
#     #                                                         
#     #   ##   #    # #####  #    # #####   ####  ###### #####  
#     #  #  #  ##  ## #    # #    # #    # #    # #      #    # 
####### #    # # ## # #####  #    # #    # #      #####  #    # 
#     # ###### #    # #    # #    # #####  #  ### #      #####  
#     # #    # #    # #    # #    # #   #  #    # #      #   #  
#     # #    # #    # #####   ####  #    #  ####  ###### #    # 
```
{: .-figlet}

### banner3-D

```
'##::::'##::::'###::::'##::::'##:'########::'##::::'##:'########:::'######:::'########:'########::
 ##:::: ##:::'## ##::: ###::'###: ##.... ##: ##:::: ##: ##.... ##:'##... ##:: ##.....:: ##.... ##:
 ##:::: ##::'##:. ##:: ####'####: ##:::: ##: ##:::: ##: ##:::: ##: ##:::..::: ##::::::: ##:::: ##:
 #########:'##:::. ##: ## ### ##: ########:: ##:::: ##: ########:: ##::'####: ######::: ########::
 ##.... ##: #########: ##. #: ##: ##.... ##: ##:::: ##: ##.. ##::: ##::: ##:: ##...:::: ##.. ##:::
 ##:::: ##: ##.... ##: ##:.:: ##: ##:::: ##: ##:::: ##: ##::. ##:: ##::: ##:: ##::::::: ##::. ##::
 ##:::: ##: ##:::: ##: ##:::: ##: ########::. #######:: ##:::. ##:. ######::: ########: ##:::. ##:
..:::::..::..:::::..::..:::::..::........::::.......:::..:::::..:::......::::........::..:::::..::
```
{: .-figlet}

### banner3

```
##     ##    ###    ##     ## ########  ##     ## ########   ######   ######## ########  
##     ##   ## ##   ###   ### ##     ## ##     ## ##     ## ##    ##  ##       ##     ## 
##     ##  ##   ##  #### #### ##     ## ##     ## ##     ## ##        ##       ##     ## 
######### ##     ## ## ### ## ########  ##     ## ########  ##   #### ######   ########  
##     ## ######### ##     ## ##     ## ##     ## ##   ##   ##    ##  ##       ##   ##   
##     ## ##     ## ##     ## ##     ## ##     ## ##    ##  ##    ##  ##       ##    ##  
##     ## ##     ## ##     ## ########   #######  ##     ##  ######   ######## ##     ## 
```
{: .-figlet}

### banner4

```
.##.....##....###....##.....##.########..##.....##.########...######...########.########.
.##.....##...##.##...###...###.##.....##.##.....##.##.....##.##....##..##.......##.....##
.##.....##..##...##..####.####.##.....##.##.....##.##.....##.##........##.......##.....##
.#########.##.....##.##.###.##.########..##.....##.########..##...####.######...########.
.##.....##.#########.##.....##.##.....##.##.....##.##...##...##....##..##.......##...##..
.##.....##.##.....##.##.....##.##.....##.##.....##.##....##..##....##..##.......##....##.
.##.....##.##.....##.##.....##.########...#######..##.....##..######...########.##.....##
```
{: .-figlet}

### barbwire

```
><<     ><<                       ><<                                               
><<     ><<                       ><<                                               
><<     ><<   ><<    ><<< ><< ><< ><<      ><<  ><<>< ><<<   ><<      ><<    >< ><<<
><<<<<< ><< ><<  ><<  ><<  ><  ><<><< ><<  ><<  ><< ><<    ><<  ><< ><   ><<  ><<   
><<     ><<><<   ><<  ><<  ><  ><<><<   ><<><<  ><< ><<   ><<   ><<><<<<< ><< ><<   
><<     ><<><<   ><<  ><<  ><  ><<><<   ><<><<  ><< ><<    ><<  ><<><         ><<   
><<     ><<  ><< ><<<><<<  ><  ><<><< ><<    ><<><<><<<        ><<   ><<<<   ><<<   
                                                            ><<                     
```
{: .-figlet}

### basic

```
db   db  .d8b.  .88b  d88. d8888b. db    db d8888b.  d888b  d88888b d8888b. 
88   88 d8' `8b 88'YbdP`88 88  `8D 88    88 88  `8D 88' Y8b 88'     88  `8D 
88ooo88 88ooo88 88  88  88 88oooY' 88    88 88oobY' 88      88ooooo 88oobY' 
88~~~88 88~~~88 88  88  88 88~~~b. 88    88 88`8b   88  ooo 88~~~~~ 88`8b   
88   88 88   88 88  88  88 88   8D 88b  d88 88 `88. 88. ~8~ 88.     88 `88. 
YP   YP YP   YP YP  YP  YP Y8888P' ~Y8888P' 88   YD  Y888P  Y88888P 88   YD 
```
{: .-figlet}

### bell

```
 __  __                  _                                     
 |   |    ___  , _ , _   \ ___  ,   . .___    ___.   ___  .___ 
 |___|   /   ` |' `|' `. |/   \ |   | /   \ .'   ` .'   ` /   \
 |   |  |    | |   |   | |    ` |   | |   ' |    | |----' |   '
 /   /  `.__/| /   '   / `___,' `._/| /      `---| `.___, /    
                                             \___/             
```
{: .-figlet}

### big

```
 _    _                 _                               
| |  | |               | |                              
| |__| | __ _ _ __ ___ | |__  _   _ _ __ __ _  ___ _ __ 
|  __  |/ _` | '_ ` _ \| '_ \| | | | '__/ _` |/ _ \ '__|
| |  | | (_| | | | | | | |_) | |_| | | | (_| |  __/ |   
|_|  |_|\__,_|_| |_| |_|_.__/ \__,_|_|  \__, |\___|_|   
                                         __/ |          
                                        |___/           
```
{: .-figlet}

### bigchief

```
_____________________________________________________________
    _     _                                                  
    /    /                 /                                 
---/___ /-----__---_--_---/__----------)__----__----__---)__-
  /    /    /   ) / /  ) /   ) /   /  /   ) /   ) /___) /   )
_/____/____(___(_/_/__/_(___/_(___(__/_____(___/_(___ _/_____
                                              /              
                                          (_ /               
```
{: .-figlet}

### binary

```
01001000 01100001 01101101 01100010 01110101 01110010 01100111 01100101 01110010 
```
{: .-figlet}

### block

```
_|    _|                            _|                                                          
_|    _|    _|_|_|  _|_|_|  _|_|    _|_|_|    _|    _|  _|  _|_|    _|_|_|    _|_|    _|  _|_|  
_|_|_|_|  _|    _|  _|    _|    _|  _|    _|  _|    _|  _|_|      _|    _|  _|_|_|_|  _|_|      
_|    _|  _|    _|  _|    _|    _|  _|    _|  _|    _|  _|        _|    _|  _|        _|        
_|    _|    _|_|_|  _|    _|    _|  _|_|_|      _|_|_|  _|          _|_|_|    _|_|_|  _|        
                                                                        _|                      
                                                                    _|_|                        
```
{: .-figlet}

### broadway

```
                                                .         .                                                                                                         
8 8888        8          .8.                   ,8.       ,8.          8 888888888o   8 8888      88 8 888888888o.      ,o888888o.    8 8888888888   8 888888888o.   
8 8888        8         .888.                 ,888.     ,888.         8 8888    `88. 8 8888      88 8 8888    `88.    8888     `88.  8 8888         8 8888    `88.  
8 8888        8        :88888.               .`8888.   .`8888.        8 8888     `88 8 8888      88 8 8888     `88 ,8 8888       `8. 8 8888         8 8888     `88  
8 8888        8       . `88888.             ,8.`8888. ,8.`8888.       8 8888     ,88 8 8888      88 8 8888     ,88 88 8888           8 8888         8 8888     ,88  
8 8888        8      .8. `88888.           ,8'8.`8888,8^8.`8888.      8 8888.   ,88' 8 8888      88 8 8888.   ,88' 88 8888           8 888888888888 8 8888.   ,88'  
8 8888        8     .8`8. `88888.         ,8' `8.`8888' `8.`8888.     8 8888888888   8 8888      88 8 888888888P'  88 8888           8 8888         8 888888888P'   
8 8888888888888    .8' `8. `88888.       ,8'   `8.`88'   `8.`8888.    8 8888    `88. 8 8888      88 8 8888`8b      88 8888   8888888 8 8888         8 8888`8b       
8 8888        8   .8'   `8. `88888.     ,8'     `8.`'     `8.`8888.   8 8888      88 ` 8888     ,8P 8 8888 `8b.    `8 8888       .8' 8 8888         8 8888 `8b.     
8 8888        8  .888888888. `88888.   ,8'       `8        `8.`8888.  8 8888    ,88'   8888   ,d8P  8 8888   `8b.     8888     ,88'  8 8888         8 8888   `8b.   
8 8888        8 .8'       `8. `88888. ,8'         `         `8.`8888. 8 888888888P      `Y88888P'   8 8888     `88.    `8888888P'    8 888888888888 8 8888     `88. 
```
{: .-figlet}

### bubble

```
  _   _   _   _   _   _   _   _   _  
 / \ / \ / \ / \ / \ / \ / \ / \ / \ 
( H | a | m | b | u | r | g | e | r )
 \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ 
```
{: .-figlet}

### bulbhead

```
 _   _    __    __  __  ____  __  __  ____   ___  ____  ____ 
( )_( )  /__\  (  \/  )(  _ \(  )(  )(  _ \ / __)( ___)(  _ \
 ) _ (  /(__)\  )    (  ) _ < )(__)(  )   /( (_-. )__)  )   /
(_) (_)(__)(__)(_/\/\_)(____/(______)(_)\_) \___/(____)(_)\_)
```
{: .-figlet}

### calgphy2

```
     #####    ##                              /                                                              
  ######  /  #### /                         #/                                                               
 /#   /  /   ####/                          ##                                                               
/    /  /    # #                            ##                                                               
    /  /     #                              ##                                                               
   ## ##     #      /###   ### /### /###    ## /###   ##   ####    ###  /###     /###      /##  ###  /###    
   ## ##     #     / ###  / ##/ ###/ /##  / ##/ ###  / ##    ###  / ###/ #### / /  ###  / / ###  ###/ #### / 
   ## ########    /   ###/   ##  ###/ ###/  ##   ###/  ##     ###/   ##   ###/ /    ###/ /   ###  ##   ###/  
   ## ##     #   ##    ##    ##   ##   ##   ##    ##   ##      ##    ##       ##     ## ##    ### ##         
   ## ##     ##  ##    ##    ##   ##   ##   ##    ##   ##      ##    ##       ##     ## ########  ##         
   #  ##     ##  ##    ##    ##   ##   ##   ##    ##   ##      ##    ##       ##     ## #######   ##         
      /       ## ##    ##    ##   ##   ##   ##    ##   ##      ##    ##       ##     ## ##        ##         
  /##/        ## ##    /#    ##   ##   ##   ##    /#   ##      /#    ##       ##     ## ####    / ##         
 /  #####      ## ####/ ##   ###  ###  ###   ####/      ######/ ##   ###       ########  ######/  ###        
/     ##           ###   ##   ###  ###  ###   ###        #####   ##   ###        ### ###  #####    ###       
#                                                                                     ###                    
 ##                                                                             ####   ###                   
                                                                              /######  /#                    
                                                                             /     ###/                      
```
{: .-figlet}

### calligraphy

```
     *****    **                                  *                                                                        
  ******  *  **** *                             **                                                                         
 **   *  *   *****                              **                                                                         
*    *  *    * *                                **                                                                         
    *  *     *                                  **         **   ****     ***  ****                            ***  ****    
   ** **     *         ****    *** **** ****    ** ****     **    ***  *  **** **** *     ****         ***     **** **** * 
   ** **     *        * ***  *  *** **** ***  * *** ***  *  **     ****    **   ****     *  ***  *    * ***     **   ****  
   ** ********       *   ****    **  **** ****  **   ****   **      **     **           *    ****    *   ***    **         
   ** **     *      **    **     **   **   **   **    **    **      **     **          **     **    **    ***   **         
   ** **     **     **    **     **   **   **   **    **    **      **     **          **     **    ********    **         
   *  **     **     **    **     **   **   **   **    **    **      **     **          **     **    *******     **         
      *       **    **    **     **   **   **   **    **    **      **     **          **     **    **          **         
  ****        **    **    **     **   **   **   **    **     ******* **    ***         **     **    ****    *   ***        
 *  *****      **    ***** **    ***  ***  ***   *****        *****   **    ***         ********     *******     ***       
*     **              ***   **    ***  ***  ***   ***                                     *** ***     *****                
*                                                                                              ***                         
 **                                                                                      ****   ***                        
                                                                                       *******  **                         
                                                                                      *     ****                           
```
{: .-figlet}

### catwalk

```
_//     _//                       _//                                               
_//     _//                       _//                                               
_//     _//   _//    _/// _// _// _//      _//  _//_/ _///   _//      _//    _/ _///
_////// _// _//  _//  _//  _/  _//_// _//  _//  _// _//    _//  _// _/   _//  _//   
_//     _//_//   _//  _//  _/  _//_//   _//_//  _// _//   _//   _//_///// _// _//   
_//     _//_//   _//  _//  _/  _//_//   _//_//  _// _//    _//  _//_/         _//   
_//     _//  _// _///_///  _/  _//_// _//    _//_//_///        _//   _////   _///   
                                                            _//                     
```
{: .-figlet}

### chunky

```
 _______                  __                                
|   |   |.---.-.--------.|  |--.--.--.----.-----.-----.----.
|       ||  _  |        ||  _  |  |  |   _|  _  |  -__|   _|
|___|___||___._|__|__|__||_____|_____|__| |___  |_____|__|  
                                          |_____|           
```
{: .-figlet}

### coinstak

```
O))     O))                       O))                                               
O))     O))                       O))                                               
O))     O))   O))    O))) O)) O)) O))      O))  O))O) O)))   O))      O))    O) O)))
O)))))) O)) O))  O))  O))  O)  O))O)) O))  O))  O)) O))    O))  O)) O)   O))  O))   
O))     O))O))   O))  O))  O)  O))O))   O))O))  O)) O))   O))   O))O))))) O)) O))   
O))     O))O))   O))  O))  O)  O))O))   O))O))  O)) O))    O))  O))O)         O))   
O))     O))  O)) O)))O)))  O)  O))O)) O))    O))O))O)))        O))   O))))   O)))   
                                                            O))                     
```
{: .-figlet}

### colossal

```
888    888                     888                                            
888    888                     888                                            
888    888                     888                                            
8888888888 8888b. 88888b.d88b. 88888b. 888  888888d888 .d88b.  .d88b. 888d888 
888    888    "88b888 "888 "88b888 "88b888  888888P"  d88P"88bd8P  Y8b888P"   
888    888.d888888888  888  888888  888888  888888    888  88888888888888     
888    888888  888888  888  888888 d88PY88b 888888    Y88b 888Y8b.    888     
888    888"Y888888888  888  88888888P"  "Y88888888     "Y88888 "Y8888 888     
                                                           888                
                                                      Y8b d88P                
                                                       "Y88P"                 
```
{: .-figlet}

### computer

```
8   8                                                     
8   8 eeeee eeeeeee eeeee  e   e eeeee  eeeee eeee eeeee  
8eee8 8   8 8  8  8 8   8  8   8 8   8  8   8 8    8   8  
88  8 8eee8 8e 8  8 8eee8e 8e  8 8eee8e 8e    8eee 8eee8e 
88  8 88  8 88 8  8 88   8 88  8 88   8 88 "8 88   88   8 
88  8 88  8 88 8  8 88eee8 88ee8 88   8 88ee8 88ee 88   8 
```
{: .-figlet}

### contessa

```
.  .        .                 
|__| _.._ _ |_ . .._. _  _ ._.
|  |(_][ | )[_)(_|[  (_](/,[  
                     ._|      
```
{: .-figlet}

### contrast

```
.%%..%%...%%%%...%%...%%..%%%%%...%%..%%..%%%%%....%%%%...%%%%%%..%%%%%..
.%%..%%..%%..%%..%%%.%%%..%%..%%..%%..%%..%%..%%..%%......%%......%%..%%.
.%%%%%%..%%%%%%..%%.%.%%..%%%%%...%%..%%..%%%%%...%%.%%%..%%%%....%%%%%..
.%%..%%..%%..%%..%%...%%..%%..%%..%%..%%..%%..%%..%%..%%..%%......%%..%%.
.%%..%%..%%..%%..%%...%%..%%%%%....%%%%...%%..%%...%%%%...%%%%%%..%%..%%.
.........................................................................
```
{: .-figlet}

### cosmic

```
  ::   .:   :::.     .        :   :::::::.   ...    ::::::::::..    .,-:::::/ .,:::::: :::::::..   
 ,;;   ;;,  ;;`;;    ;;,.    ;;;   ;;;'';;'  ;;     ;;;;;;;``;;;; ,;;-'````'  ;;;;'''' ;;;;``;;;;  
,[[[,,,[[[ ,[[ '[[,  [[[[, ,[[[[,  [[[__[[\.[['     [[[ [[[,/[[[' [[[   [[[[[[/[[cccc   [[[,/[[['  
"$$$"""$$$c$$$cc$$$c $$$$$$$$"$$$  $$""""Y$$$$      $$$ $$$$$$c   "$$c.    "$$ $$""""   $$$$$$c    
 888   "88o888   888,888 Y88" 888o_88o,,od8P88    .d888 888b "88bo,`Y8bo,,,o88o888oo,__ 888b "88bo,
 MMM    YMMYMM   ""` MMM  M'  "MMM""YUMMMP"  "YmmMMMM"" MMMM   "W"   `'YMUP"YMM""""YUMMMMMMM   "W" 
```
{: .-figlet}

### cosmike

```
  ::   .:   :::.     .        :   :::::::.   ...    ::::::::::..    .,-:::::/ .,:::::: :::::::..   
 ,;;   ;;,  ;;`;;    ;;,.    ;;;   ;;;'';;'  ;;     ;;;;;;;``;;;; ,;;-'````'  ;;;;'''' ;;;;``;;;;  
,[[[,,,[[[ ,[[ '[[,  [[[[, ,[[[[,  [[[__[[\.[['     [[[ [[[,/[[[' [[[   [[[[[[/[[cccc   [[[,/[[['  
"$$$"""$$$c$$$cc$$$c $$$$$$$$"$$$  $$""""Y$$$$      $$$ $$$$$$c   "$$c.    "$$ $$""""   $$$$$$c    
 888   "88o888   888,888 Y88" 888o_88o,,od8P88    .d888 888b "88bo,`Y8bo,,,o88o888oo,__ 888b "88bo,
 MMM    YMMYMM   ""` MMM  M'  "MMM""YUMMMP"  "YmmMMMM"" MMMM   "W"   `'YMUP"YMM""""YUMMMMMMM   "W" 
```
{: .-figlet}

### crawford

```
 __ __   ____  ___ ___  ____   __ __  ____    ____    ___  ____  
|  T  T /    T|   T   T|    \ |  T  T|    \  /    T  /  _]|    \ 
|  l  |Y  o  || _   _ ||  o  )|  |  ||  D  )Y   __j /  [_ |  D  )
|  _  ||     ||  \_/  ||     T|  |  ||    / |  T  |Y    _]|    / 
|  |  ||  _  ||   |   ||  O  ||  :  ||    \ |  l_ ||   [_ |    \ 
|  |  ||  |  ||   |   ||     |l     ||  .  Y|     ||     T|  .  Y
l__j__jl__j__jl___j___jl_____j \__,_jl__j\_jl___,_jl_____jl__j\_j
```
{: .-figlet}

### cricket

```
 ___ ___                __                                
|   Y   .---.-.--------|  |--.--.--.----.-----.-----.----.
|.  1   |  _  |        |  _  |  |  |   _|  _  |  -__|   _|
|.  _   |___._|__|__|__|_____|_____|__| |___  |_____|__|  
|:  |   |                               |_____|           
|::.|:. |                                                 
`--- ---'                                                 
```
{: .-figlet}

### cursive

```
 _    ,                                 
' )  /              /                   
 /--/ __.  ______  /__. . __  _,  _  __ 
/  (_(_/|_/ / / <_/_)(_/_/ (_(_)_</_/ (_
                              /|        
                             |/         
```
{: .-figlet}

### cyberlarge

```
 _     _ _______ _______ ______  _     _  ______  ______ _______  ______
 |_____| |_____| |  |  | |_____] |     | |_____/ |  ____ |______ |_____/
 |     | |     | |  |  | |_____] |_____| |    \_ |_____| |______ |    \_
```
{: .-figlet}

### cybermedium

```
_  _ ____ _  _ ___  _  _ ____ ____ ____ ____ 
|__| |__| |\/| |__] |  | |__/ | __ |___ |__/ 
|  | |  | |  | |__] |__| |  \ |__] |___ |  \ 
```
{: .-figlet}

### cybersmall

```
 _  _ ____ _  _ ___  _  _ ____ ____ ____ ____
 |--| |--| |\/| |==] |__| |--< |__, |=== |--<
```
{: .-figlet}

### decimal

```
72 97 109 98 117 114 103 101 114 
```
{: .-figlet}

### diamond

```
/\\     /\\                       /\\                                               
/\\     /\\                       /\\                                               
/\\     /\\   /\\    /\\\ /\\ /\\ /\\      /\\  /\\/\ /\\\   /\\      /\\    /\ /\\\
/\\\\\\ /\\ /\\  /\\  /\\  /\  /\\/\\ /\\  /\\  /\\ /\\    /\\  /\\ /\   /\\  /\\   
/\\     /\\/\\   /\\  /\\  /\  /\\/\\   /\\/\\  /\\ /\\   /\\   /\\/\\\\\ /\\ /\\   
/\\     /\\/\\   /\\  /\\  /\  /\\/\\   /\\/\\  /\\ /\\    /\\  /\\/\         /\\   
/\\     /\\  /\\ /\\\/\\\  /\  /\\/\\ /\\    /\\/\\/\\\        /\\   /\\\\   /\\\   
                                                            /\\                     
```
{: .-figlet}

### digital

```
+-+-+-+-+-+-+-+-+-+
|H|a|m|b|u|r|g|e|r|
+-+-+-+-+-+-+-+-+-+
```
{: .-figlet}

### doh

```
                                                                bbbbbbbb                                                                                                             
HHHHHHHHH     HHHHHHHHH                                         b::::::b                                                                                                             
H:::::::H     H:::::::H                                         b::::::b                                                                                                             
H:::::::H     H:::::::H                                         b::::::b                                                                                                             
HH::::::H     H::::::HH                                          b:::::b                                                                                                             
  H:::::H     H:::::H    aaaaaaaaaaaaa      mmmmmmm    mmmmmmm   b:::::bbbbbbbbb    uuuuuu    uuuuuu rrrrr   rrrrrrrrr      ggggggggg   ggggg    eeeeeeeeeeee    rrrrr   rrrrrrrrr   
  H:::::H     H:::::H    a::::::::::::a   mm:::::::m  m:::::::mm b::::::::::::::bb  u::::u    u::::u r::::rrr:::::::::r    g:::::::::ggg::::g  ee::::::::::::ee  r::::rrr:::::::::r  
  H::::::HHHHH::::::H    aaaaaaaaa:::::a m::::::::::mm::::::::::mb::::::::::::::::b u::::u    u::::u r:::::::::::::::::r  g:::::::::::::::::g e::::::eeeee:::::eer:::::::::::::::::r 
  H:::::::::::::::::H             a::::a m::::::::::::::::::::::mb:::::bbbbb:::::::bu::::u    u::::u rr::::::rrrrr::::::rg::::::ggggg::::::gge::::::e     e:::::err::::::rrrrr::::::r
  H:::::::::::::::::H      aaaaaaa:::::a m:::::mmm::::::mmm:::::mb:::::b    b::::::bu::::u    u::::u  r:::::r     r:::::rg:::::g     g:::::g e:::::::eeeee::::::e r:::::r     r:::::r
  H::::::HHHHH::::::H    aa::::::::::::a m::::m   m::::m   m::::mb:::::b     b:::::bu::::u    u::::u  r:::::r     rrrrrrrg:::::g     g:::::g e:::::::::::::::::e  r:::::r     rrrrrrr
  H:::::H     H:::::H   a::::aaaa::::::a m::::m   m::::m   m::::mb:::::b     b:::::bu::::u    u::::u  r:::::r            g:::::g     g:::::g e::::::eeeeeeeeeee   r:::::r            
  H:::::H     H:::::H  a::::a    a:::::a m::::m   m::::m   m::::mb:::::b     b:::::bu:::::uuuu:::::u  r:::::r            g::::::g    g:::::g e:::::::e            r:::::r            
HH::::::H     H::::::HHa::::a    a:::::a m::::m   m::::m   m::::mb:::::bbbbbb::::::bu:::::::::::::::uur:::::r            g:::::::ggggg:::::g e::::::::e           r:::::r            
H:::::::H     H:::::::Ha:::::aaaa::::::a m::::m   m::::m   m::::mb::::::::::::::::b  u:::::::::::::::ur:::::r             g::::::::::::::::g  e::::::::eeeeeeee   r:::::r            
H:::::::H     H:::::::H a::::::::::aa:::am::::m   m::::m   m::::mb:::::::::::::::b    uu::::::::uu:::ur:::::r              gg::::::::::::::g   ee:::::::::::::e   r:::::r            
HHHHHHHHH     HHHHHHHHH  aaaaaaaaaa  aaaammmmmm   mmmmmm   mmmmmmbbbbbbbbbbbbbbbb       uuuuuuuu  uuuurrrrrrr                gggggggg::::::g     eeeeeeeeeeeeee   rrrrrrr            
                                                                                                                                     g:::::g                                         
                                                                                                                         gggggg      g:::::g                                         
                                                                                                                         g:::::gg   gg:::::g                                         
                                                                                                                          g::::::ggg:::::::g                                         
                                                                                                                           gg:::::::::::::g                                          
                                                                                                                             ggg::::::ggg                                            
                                                                                                                                gggggg                                               
```
{: .-figlet}

### doom

```
 _   _                 _                               
| | | |               | |                              
| |_| | __ _ _ __ ___ | |__  _   _ _ __ __ _  ___ _ __ 
|  _  |/ _` | '_ ` _ \| '_ \| | | | '__/ _` |/ _ \ '__|
| | | | (_| | | | | | | |_) | |_| | | | (_| |  __/ |   
\_| |_/\__,_|_| |_| |_|_.__/ \__,_|_|  \__, |\___|_|   
                                        __/ |          
                                       |___/           
```
{: .-figlet}

### dotmatrix

```
 _           _                                 _                                                                                    
(_)         (_)                               (_)                                                                                   
(_)         (_)   _  _  _        _  _   _  _  (_) _  _  _    _         _  _       _  _   _  _  _  _   _  _  _  _   _       _  _     
(_) _  _  _ (_)  (_)(_)(_) _    (_)(_)_(_)(_) (_)(_)(_)(_)_ (_)       (_)(_)_  _ (_)(_)_(_)(_)(_)(_) (_)(_)(_)(_)_(_)_  _ (_)(_)    
(_)(_)(_)(_)(_)   _  _  _ (_)  (_)   (_)   (_)(_)        (_)(_)       (_)  (_)(_)     (_)        (_)(_) _  _  _ (_) (_)(_)          
(_)         (_) _(_)(_)(_)(_)  (_)   (_)   (_)(_)        (_)(_)       (_)  (_)        (_)        (_)(_)(_)(_)(_)(_) (_)             
(_)         (_)(_)_  _  _ (_)_ (_)   (_)   (_)(_) _  _  _(_)(_)_  _  _(_)_ (_)        (_)_  _  _ (_)(_)_  _  _  _   (_)             
(_)         (_)  (_)(_)(_)  (_)(_)   (_)   (_)(_)(_)(_)(_)    (_)(_)(_) (_)(_)          (_)(_)(_)(_)  (_)(_)(_)(_)  (_)             
                                                                                         _  _  _ (_)                                
                                                                                        (_)(_)(_)                                   
```
{: .-figlet}

### double

```
__  __ ___ ___  _______ __ ______   ___  ________ 
||  ||// \\||\\//|||| ))|| |||| \\ // \\||   || \\
||==||||=|||| \/ ||||=) || ||||_//(( ___||== ||_//
||  |||| ||||    ||||_))\\_//|| \\ \\_||||___|| \\
```
{: .-figlet}

### drpepper

```
 _ _              _                            
| | | ___ ._ _ _ | |_  _ _  _ _  ___  ___  _ _ 
|   |<_> || ' ' || . \| | || '_>/ . |/ ._>| '_>
|_|_|<___||_|_|_||___/`___||_|  \_. |\___.|_|  
                                <___'          
```
{: .-figlet}

### dwhistled

```
H m ur  r
 X X  XX 
 X .  XX 
 . .  XX 
 . .  .X 
 . .  .X 
 . .  .. 
Hamburger
```
{: .-figlet}

### eftichess

```
         #########         #########         #########         ####################################
  [`'`'] ##\`.'/##  ':v:`  ##/\:/\##  |:+:|  ##':v:`##  \`.'/  ##[`'`']###'\v/`####[`'`']###[`'`']#
   |::|  ##(o:o)##  (o:0)  #/(o:o)\#  (o:o)  ##(o:0)##  (o:o)  ###|::|####(o 0)#####|  |#####|  |##
   |::|  ###\:/:\#   (:)   ###(:)###   (:)   ###(:)###   \:/:\ ###|::|#####(_)######|__|#####|__|##
         ####"####         #########         #########    "    ####################################
```
{: .-figlet}

### eftifont

```
 _ _                         
| U |_    _ _ ||    _  _ _ _ 
|   /o\ |/ \ \|o\U|/_|/oYoY_|
|_n_\_,]L_n_n||_|_/L| \_|(L| 
                       _)    
```
{: .-figlet}

### eftipiti

```
[]-|amburger
```
{: .-figlet}

### eftirobot

```
 _  _               _                         
( )( )             ( )                        
| L| | ___  __  __ | |_  _ _  __  __  ___  __ 
( __ )( o )( _`'_ )( o \( U )( _)/o )( o_)( _)
/_\/_\/_^_\/_\`'/_\/___//___\/_\ \__\ \(  /_\ 
                                  _|/         
```
{: .-figlet}

### eftitalic

```
   _ __                                
  /// / _   _     /7      _   _   __ _ 
 / ` /,'o| / \'\ /o\ /7/7//7,'o|,'o///7
/_n_/ |_,7/_nn_//_,'/__///  |_,'|_(//  
                            _//        
```
{: .-figlet}

### eftiwall

```
                 |                ___         ( ( (           o            !!!                         |"|           !!!      
     ***         |.===.          /_\ `*     '. ___ .'      ` /_\ '      `  _ _  '      __MMM__        _|_|_       `  _ _  '   
    (o o)        {}o o{}        (o o)      '  (> <) '     - (o o) -    -  (OXO)  -      (o o)         (o o)      -  (OXO)  -  
ooO--(_)--Ooo-ooO--(_)--Ooo-ooO--(_)--Ooo-ooO--(_)--Ooo-ooO--(_)--Ooo-ooO--(_)--Ooo-ooO--(_)--Ooo-ooO--(_)--Ooo-ooO--(_)--Ooo-
```
{: .-figlet}

### eftiwater

```
 _ _             _                       
 )L`) ___  _  _  ))  _    __  ___  __ __ 
(( ( ((_( ((`1( ((_)((_( (|  ((_( (('(|  
                               _))       
```
{: .-figlet}

### epic

```
          _______  _______  ______            _______  _______  _______  _______ 
|\     /|(  ___  )(       )(  ___ \ |\     /|(  ____ )(  ____ \(  ____ \(  ____ )
| )   ( || (   ) || () () || (   ) )| )   ( || (    )|| (    \/| (    \/| (    )|
| (___) || (___) || || || || (__/ / | |   | || (____)|| |      | (__    | (____)|
|  ___  ||  ___  || |(_)| ||  __ (  | |   | ||     __)| | ____ |  __)   |     __)
| (   ) || (   ) || |   | || (  \ \ | |   | || (\ (   | | \_  )| (      | (\ (   
| )   ( || )   ( || )   ( || )___) )| (___) || ) \ \__| (___) || (____/\| ) \ \__
|/     \||/     \||/     \||/ \___/ (_______)|/   \__/(_______)(_______/|/   \__/
```
{: .-figlet}

### fender

```
'||  ||`                    '||                                          
 ||  ||                      ||                                          
 ||''||   '''|.  '||),,(|,   ||''|, '||  ||` '||''| .|''|, .|''|, '||''| 
 ||  ||  .|''||   || || ||   ||  ||  ||  ||   ||    ||  || ||..||  ||    
.||  ||. `|..||. .||    ||. .||..|'  `|..'|. .||.   `|..|| `|...  .||.   
                                                        ||               
                                                     `..|'               
```
{: .-figlet}

### fourtops

```
|  |             |                       
|--|/~~||/~\ /~\ |~~\|   ||/~\/~~|/~/|/~\
|  |\__||   |   ||__/ \_/||   \__|\/_|   
                              \__|       
```
{: .-figlet}

### fraktur

```
                                                            ..                                                                    
         .xHL                                         . uW8"                                                                      
      .-`8888hxxx~                   ..    .     :    `t888          x.    .        .u    .                             .u    .   
   .H8X  `%888*"            u      .888: x888  x888.   8888   .    .@88k  z88u    .d88B :@8c       uL          .u     .d88B :@8c  
   888X     ..x..        us888u.  ~`8888~'888X`?888f`  9888.z88N  ~"8888 ^8888   ="8888f8888r  .ue888Nc..   ud8888.  ="8888f8888r 
  '8888k .x8888888x   .@88 "8888"   X888  888X '888>   9888  888E   8888  888R     4888>'88"  d88E`"888E` :888'8888.   4888>'88"  
   ?8888X    "88888X  9888  9888    X888  888X '888>   9888  888E   8888  888R     4888> '    888E  888E  d888 '88%"   4888> '    
    ?8888X    '88888> 9888  9888    X888  888X '888>   9888  888E   8888  888R     4888>      888E  888E  8888.+"      4888>      
 H8H %8888     `8888> 9888  9888    X888  888X '888>   9888  888E   8888 ,888B .  .d888L .+   888E  888E  8888L       .d888L .+   
'888> 888"      8888  9888  9888   "*88%""*88" '888!` .8888  888"  "8888Y 8888"   ^"8888*"    888& .888E  '8888c. .+  ^"8888*"    
 "8` .8" ..     88*   "888*""888"    `~    "    `"`    `%888*%"     `Y"   'YP        "Y"      *888" 888&   "88888%       "Y"      
    `  x8888h. d*"     ^Y"   ^Y'                          "`                                   `"   "888E    "YP'                 
      !""*888%~                                                                               .dWi   `88E                         
      !   `"  .                                                                               4888~  J8%                          
      '-....:~                                                                                 ^"===*"`                           
```
{: .-figlet}

### fuzzy

```
.-..-.                .-.                               
: :; :                : :                               
:    : .--.  ,-.,-.,-.: `-. .-..-..--.  .--.  .--. .--. 
: :: :' .; ; : ,. ,. :' .; :: :; :: ..'' .; :' '_.': ..'
:_;:_;`.__,_;:_;:_;:_;`.__.'`.__.':_;  `._. ;`.__.':_;  
                                        .-. :           
                                        `._.'           
```
{: .-figlet}

### goofy

```
    ___    _____  _____          _      ___    ___    _     _____       ___        __     ___
\  |   |  /    /  \    |        | \     \  |  |   |  | |    \    )  ____)  \    ___) |    \  
 |  \_/  |    /    \   |  |\/|  |  |     ) |  |   |  | |     )  /  /  __    |  (__   |     ) 
 |   _   |   /  ()  \  |  |  |  |  |    <  |  |   |  | |    /  (  (  (  \   |   __)  |    /  
 |  / \  |  |   __   | |  |  |  |  |     ) |   \_/   | | |\ \   \  \__)  )  |  (___  | |\ \  
/  |___|  \_|  (__)  |_|  |__|  |_/     /___\       /__| |_\ \___)      (__/       )_| |_\ \_
```
{: .-figlet}

### gothic

```
_-_-                     ,,                                  
  /,        _            ||                  _               
  || __    < \, \\/\\/\\ ||/|, \\ \\ ,._-_  / \\  _-_  ,._-_ 
 ~||-  -   /-|| || || || || || || ||  ||   || || || \\  ||   
  ||===|| (( || || || || || |' || ||  ||   || || ||/    ||   
 ( \_, |   \/\\ \\ \\ \\ \\/   \\/\\  \\,  \\_-| \\,/   \\,  
       `                                    /  \             
                                           '----`            
```
{: .-figlet}

### graceful

```
 _  _   __   _  _  ____  _  _  ____   ___  ____  ____ 
/ )( \ / _\ ( \/ )(  _ \/ )( \(  _ \ / __)(  __)(  _ \
) __ (/    \/ \/ \ ) _ () \/ ( )   /( (_ \ ) _)  )   /
\_)(_/\_/\_/\_)(_/(____/\____/(__\_) \___/(____)(__\_)
```
{: .-figlet}

### gradient

```
eee..eee..eeeeee..eee......eee.eeeeeee..eee..eee.eeeeeee...eeeeee..eeeeee.eeeeeee..
@@@::@@@:@@@@@@@@:@@@@::::@@@@:@@@@@@@@:@@@::@@@:@@@@@@@@:@@@@@@@@:@@@@@@:@@@@@@@@:
%%%--%%%-%%%--%%%-%%%%%--%%%%%-%%%--%%%-%%%--%%%-%%%--%%%-%%%------%%%----%%%--%%%-
&&&&&&&&+&&&&&&&&+&&&&&&&&&&&&+&&&&&&&++&&&++&&&+&&&&&&&++&&&++++++&&&&&++&&&&&&&++
||||||||*||||||||*|||*||||*|||*||||||||*|||**|||*||||||***|||*||||*|||||**||||||***
!!!==!!!=!!!==!!!=!!!==!!==!!!=!!!==!!!=!!!==!!!=!!!=!!!==!!!==!!!=!!!====!!!=!!!==
:::##:::#:::##:::#:::######:::#::::::::#::::::::#:::##:::#::::::::#::::::#:::##:::#
...@@...@...@@...@...@@@@@@...@.......@@@......@@...@@...@@......@@......@...@@...@
```
{: .-figlet}

### graffiti

```
  ___ ___               ___.                                     
 /   |   \_____    _____\_ |__  __ _________  ____   ___________ 
/    ~    \__  \  /     \| __ \|  |  \_  __ \/ ___\_/ __ \_  __ \
\    Y    // __ \|  Y Y  \ \_\ \  |  /|  | \/ /_/  >  ___/|  | \/
 \___|_  /(____  /__|_|  /___  /____/ |__|  \___  / \___  >__|   
       \/      \/      \/    \/            /_____/      \/       
```
{: .-figlet}

### hex

```
48 61 6D 62 75 72 67 65 72 
```
{: .-figlet}

### hollywood

```
           _                                                                                    
          ' )     )                           /'                                                
          /'    /'                          /'                                                  
       ,/'    /' ____     ,__________     /'__               ____     ____     ____      ____   
      /`---,/' /'    )   /'    )     )  /'    )  /'    /   )'    )--/'    )  /'    )   )'    )--
    /'    /' /'    /'  /'    /'    /' /'    /' /'    /'  /'       /'    /' /(___,/'  /'         
(,/'     (_,(___,/(__/'    /'    /(__(___,/(__(___,/(__/'        (___,/(__(________/'           
                                                                    /'                          
                                                            /     /'                            
                                                           (___,/'                              
```
{: .-figlet}

### invita

```
   ____  ___)                              
  (, /   /           /)                    
    /---/  _  ___   (/_     __  _    _  __ 
 ) /   (__(_(_// (_/_) (_(_/ (_(_/__(/_/ (_
(_/                           .-/          
                             (_/           
```
{: .-figlet}

### isometric1

```
      ___           ___           ___           ___           ___           ___           ___           ___           ___     
     /\__\         /\  \         /\__\         /\  \         /\__\         /\  \         /\  \         /\  \         /\  \    
    /:/  /        /::\  \       /::|  |       /::\  \       /:/  /        /::\  \       /::\  \       /::\  \       /::\  \   
   /:/__/        /:/\:\  \     /:|:|  |      /:/\:\  \     /:/  /        /:/\:\  \     /:/\:\  \     /:/\:\  \     /:/\:\  \  
  /::\  \ ___   /::\~\:\  \   /:/|:|__|__   /::\~\:\__\   /:/  /  ___   /::\~\:\  \   /:/  \:\  \   /::\~\:\  \   /::\~\:\  \ 
 /:/\:\  /\__\ /:/\:\ \:\__\ /:/ |::::\__\ /:/\:\ \:|__| /:/__/  /\__\ /:/\:\ \:\__\ /:/__/_\:\__\ /:/\:\ \:\__\ /:/\:\ \:\__\
 \/__\:\/:/  / \/__\:\/:/  / \/__/~~/:/  / \:\~\:\/:/  / \:\  \ /:/  / \/_|::\/:/  / \:\  /\ \/__/ \:\~\:\ \/__/ \/_|::\/:/  /
      \::/  /       \::/  /        /:/  /   \:\ \::/  /   \:\  /:/  /     |:|::/  /   \:\ \:\__\    \:\ \:\__\      |:|::/  / 
      /:/  /        /:/  /        /:/  /     \:\/:/  /     \:\/:/  /      |:|\/__/     \:\/:/  /     \:\ \/__/      |:|\/__/  
     /:/  /        /:/  /        /:/  /       \::/__/       \::/  /       |:|  |        \::/  /       \:\__\        |:|  |    
     \/__/         \/__/         \/__/         ~~            \/__/         \|__|         \/__/         \/__/         \|__|    
```
{: .-figlet}

### isometric2

```
      ___           ___           ___                         ___           ___           ___           ___           ___     
     /\  \         /\  \         /\  \         _____         /\  \         /\  \         /\__\         /\__\         /\  \    
     \:\  \       /::\  \       |::\  \       /::\  \        \:\  \       /::\  \       /:/ _/_       /:/ _/_       /::\  \   
      \:\  \     /:/\:\  \      |:|:\  \     /:/\:\  \        \:\  \     /:/\:\__\     /:/ /\  \     /:/ /\__\     /:/\:\__\  
  ___ /::\  \   /:/ /::\  \   __|:|\:\  \   /:/ /::\__\   ___  \:\  \   /:/ /:/  /    /:/ /::\  \   /:/ /:/ _/_   /:/ /:/  /  
 /\  /:/\:\__\ /:/_/:/\:\__\ /::::|_\:\__\ /:/_/:/\:|__| /\  \  \:\__\ /:/_/:/__/___ /:/__\/\:\__\ /:/_/:/ /\__\ /:/_/:/__/___
 \:\/:/  \/__/ \:\/:/  \/__/ \:\~~\  \/__/ \:\/:/ /:/  / \:\  \ /:/  / \:\/:::::/  / \:\  \ /:/  / \:\/:/ /:/  / \:\/:::::/  /
  \::/__/       \::/__/       \:\  \        \::/_/:/  /   \:\  /:/  /   \::/~~/~~~~   \:\  /:/  /   \::/_/:/  /   \::/~~/~~~~ 
   \:\  \        \:\  \        \:\  \        \:\/:/  /     \:\/:/  /     \:\~~\        \:\/:/  /     \:\/:/  /     \:\~~\     
    \:\__\        \:\__\        \:\__\        \::/  /       \::/  /       \:\__\        \::/  /       \::/  /       \:\__\    
     \/__/         \/__/         \/__/         \/__/         \/__/         \/__/         \/__/         \/__/         \/__/    
```
{: .-figlet}

### isometric3

```
      ___           ___           ___                         ___           ___           ___           ___           ___     
     /__/\         /  /\         /__/\         _____         /__/\         /  /\         /  /\         /  /\         /  /\    
     \  \:\       /  /::\       |  |::\       /  /::\        \  \:\       /  /::\       /  /:/_       /  /:/_       /  /::\   
      \__\:\     /  /:/\:\      |  |:|:\     /  /:/\:\        \  \:\     /  /:/\:\     /  /:/ /\     /  /:/ /\     /  /:/\:\  
  ___ /  /::\   /  /:/~/::\   __|__|:|\:\   /  /:/~/::\   ___  \  \:\   /  /:/~/:/    /  /:/_/::\   /  /:/ /:/_   /  /:/~/:/  
 /__/\  /:/\:\ /__/:/ /:/\:\ /__/::::| \:\ /__/:/ /:/\:| /__/\  \__\:\ /__/:/ /:/___ /__/:/__\/\:\ /__/:/ /:/ /\ /__/:/ /:/___
 \  \:\/:/__\/ \  \:\/:/__\/ \  \:\~~\__\/ \  \:\/:/~/:/ \  \:\ /  /:/ \  \:\/:::::/ \  \:\ /~~/:/ \  \:\/:/ /:/ \  \:\/:::::/
  \  \::/       \  \::/       \  \:\        \  \::/ /:/   \  \:\  /:/   \  \::/~~~~   \  \:\  /:/   \  \::/ /:/   \  \::/~~~~ 
   \  \:\        \  \:\        \  \:\        \  \:\/:/     \  \:\/:/     \  \:\        \  \:\/:/     \  \:\/:/     \  \:\     
    \  \:\        \  \:\        \  \:\        \  \::/       \  \::/       \  \:\        \  \::/       \  \::/       \  \:\    
     \__\/         \__\/         \__\/         \__\/         \__\/         \__\/         \__\/         \__\/         \__\/    
```
{: .-figlet}

### isometric4

```
      ___           ___           ___           ___           ___           ___           ___           ___           ___     
     /  /\         /  /\         /  /\         /  /\         /  /\         /  /\         /  /\         /  /\         /  /\    
    /  /:/        /  /::\       /  /::|       /  /::\       /  /:/        /  /::\       /  /::\       /  /::\       /  /::\   
   /  /:/        /  /:/\:\     /  /:|:|      /  /:/\:\     /  /:/        /  /:/\:\     /  /:/\:\     /  /:/\:\     /  /:/\:\  
  /  /::\ ___   /  /::\ \:\   /  /:/|:|__   /  /::\ \:\   /  /:/        /  /::\ \:\   /  /:/  \:\   /  /::\ \:\   /  /::\ \:\ 
 /__/:/\:\  /\ /__/:/\:\_\:\ /__/:/_|::::\ /__/:/\:\_\:| /__/:/     /\ /__/:/\:\_\:\ /__/:/_\_ \:\ /__/:/\:\ \:\ /__/:/\:\_\:\
 \__\/  \:\/:/ \__\/  \:\/:/ \__\/  /~~/:/ \  \:\ \:\/:/ \  \:\    /:/ \__\/~|::\/:/ \  \:\__/\_\/ \  \:\ \:\_\/ \__\/~|::\/:/
      \__\::/       \__\::/        /  /:/   \  \:\_\::/   \  \:\  /:/     |  |:|::/   \  \:\ \:\    \  \:\ \:\      |  |:|::/ 
      /  /:/        /  /:/        /  /:/     \  \:\/:/     \  \:\/:/      |  |:|\/     \  \:\/:/     \  \:\_\/      |  |:|\/  
     /__/:/        /__/:/        /__/:/       \__\::/       \  \::/       |__|:|~       \  \::/       \  \:\        |__|:|~   
     \__\/         \__\/         \__\/            ~~         \__\/         \__\|         \__\/         \__\/         \__\|    
```
{: .-figlet}

### italic

```
 )__/_ _  /   _ _ _ _ 
/  /(///)()(// (/(-/  
              _/      
```
{: .-figlet}

### ivrit

```
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   _                     _   _ 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         _ __ ___  __ _ _ __ _   _| |__  _ __ ___   __ _| | | |
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | '__/ _ \/ _` | '__| | | | '_ \| '_ ` _ \ / _` | |_| |
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | | |  __/ (_| | |  | |_| | |_) | | | | | | (_| |  _  |
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |_|  \___|\__, |_|   \__,_|_.__/|_| |_| |_|\__,_|_| |_|
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |___/                                        
```
{: .-figlet}

### jazmine

```
 o    o                8                                       
 8    8                8                                       
o8oooo8 .oPYo. ooYoYo. 8oPYo. o    o oPYo. .oPYo. .oPYo. oPYo. 
 8    8 .oooo8 8' 8  8 8    8 8    8 8  `' 8    8 8oooo8 8  `' 
 8    8 8    8 8  8  8 8    8 8    8 8     8    8 8.     8     
 8    8 `YooP8 8  8  8 `YooP' `YooP' 8     `YooP8 `Yooo' 8     
:..:::..:.....:..:..:..:.....::.....:..:::::....8 :.....:..::::
:::::::::::::::::::::::::::::::::::::::::::::ooP'.:::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::
```
{: .-figlet}

### jerusalem

```
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ______ ________   _ ______ ___  ___  __   __._   _   _ _   _ 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |____  |____  \ \ | |____  |_  ||_  | \ \ / /| | | | | | | | |
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | | _  | |\ \| |    | | | |  | |  \ V / | | | | | | |_| |
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | || | |_|_\ ` |    | | | |__| |___\  \ | |/ /_/ /|  _  |
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |_|| |  |______|    |_| |_|____|______| |_______/ |_| |_|
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |_|                                                   
```
{: .-figlet}

### katakana

```
   #       #        ######### ######## ##########                #                          
  ######## #   ###          #        #          # #########     #      ########## ######### 
 #       # ####             #        #         #  #       #    #               #  #       # 
#      ##  #        ########        #  ########   #       #   #               #   #       # 
     ##    #               #      ##       ##     #       #  #     #       # #    #       # 
   ##      #               #    ##       ##       ######### #########       #     ######### 
 ##         ####### ########  ##       ##                            #       #              
```
{: .-figlet}

### kban

```
'||'  '||'                    '||                                               
 ||    ||   ....   .. .. ..    || ...  ... ...  ... ..    ... .   ....  ... ..  
 ||''''||  '' .||   || || ||   ||'  ||  ||  ||   ||' ''  || ||  .|...||  ||' '' 
 ||    ||  .|' ||   || || ||   ||    |  ||  ||   ||       |''   ||       ||     
.||.  .||. '|..'|' .|| || ||.  '|...'   '|..'|. .||.     '||||.  '|...' .||.    
                                                        .|....'                 
```
{: .-figlet}

### l4me

```
|-|4mbvrg3r
```
{: .-figlet}

### larry3d

```
 __  __                       __                                           
/\ \/\ \                     /\ \                                          
\ \ \_\ \     __      ___ ___\ \ \____  __  __  _ __    __      __   _ __  
 \ \  _  \  /'__`\  /' __` __`\ \ '__`\/\ \/\ \/\`'__\/'_ `\  /'__`\/\`'__\
  \ \ \ \ \/\ \L\.\_/\ \/\ \/\ \ \ \L\ \ \ \_\ \ \ \//\ \L\ \/\  __/\ \ \/ 
   \ \_\ \_\ \__/.\_\ \_\ \_\ \_\ \_,__/\ \____/\ \_\\ \____ \ \____\\ \_\ 
    \/_/\/_/\/__/\/_/\/_/\/_/\/_/\/___/  \/___/  \/_/ \/___L\ \/____/ \/_/ 
                                                        /\____/            
                                                        \_/__/             
```
{: .-figlet}

### lcd

```
                                       _              
|   |             |                   | |             
|-+-|  -    |- -  |-          |-       -|  -    |-    
|   | | |   | | | | |   | |   |         | |/    |     
       --          -     --            -   --         
```
{: .-figlet}

### lean

```
    _/    _/                            _/                                                          
   _/    _/    _/_/_/  _/_/_/  _/_/    _/_/_/    _/    _/  _/  _/_/    _/_/_/    _/_/    _/  _/_/   
  _/_/_/_/  _/    _/  _/    _/    _/  _/    _/  _/    _/  _/_/      _/    _/  _/_/_/_/  _/_/        
 _/    _/  _/    _/  _/    _/    _/  _/    _/  _/    _/  _/        _/    _/  _/        _/           
_/    _/    _/_/_/  _/    _/    _/  _/_/_/      _/_/_/  _/          _/_/_/    _/_/_/  _/            
                                                                       _/                           
                                                                  _/_/                              
```
{: .-figlet}

### letters

```
HH   HH                     bb                                           
HH   HH   aa aa mm mm mmmm  bb      uu   uu rr rr   gggggg   eee  rr rr  
HHHHHHH  aa aaa mmm  mm  mm bbbbbb  uu   uu rrr  r gg   gg ee   e rrr  r 
HH   HH aa  aaa mmm  mm  mm bb   bb uu   uu rr     ggggggg eeeee  rr     
HH   HH  aaa aa mmm  mm  mm bbbbbb   uuuu u rr          gg  eeeee rr     
                                                    ggggg                
```
{: .-figlet}

### linux

```
.-. .-..---..-.-.-..--..-..-..---. .---..---..---. 
| |=| || | || | | ||-< | || || |-< | |'_| |- | |-< 
`-' `-'`-^-'`-'-'-'`--'`----'`-'`-'`-'-/`---'`-'`-'
```
{: .-figlet}

### lockergnome

```
::| ::|          :|                            
::::::|.::\ :\/| ::'| :\:| :::| /::| :~~/ :::| 
::| ::|`::| :::| :::| `::| :|   \::| :::, :|   
                                ,.:/           
```
{: .-figlet}

### madrid

```
/ \           |                     
|=| /=| /=\=\ |=\ | | /= /=| /=\ /= 
\ / \=| | | | |=/ \=/ |  \=| \=  |  
                         \=|        
```
{: .-figlet}

### marquee

```
.::     .::                       .::                                               
.::     .::                       .::                                               
.::     .::   .::    .::: .:: .:: .::      .::  .::.: .:::   .::      .::    .: .:::
.:::::: .:: .::  .::  .::  .:  .::.:: .::  .::  .:: .::    .::  .:: .:   .::  .::   
.::     .::.::   .::  .::  .:  .::.::   .::.::  .:: .::   .::   .::.::::: .:: .::   
.::     .::.::   .::  .::  .:  .::.::   .::.::  .:: .::    .::  .::.:         .::   
.::     .::  .:: .:::.:::  .:  .::.:: .::    .::.::.:::        .::   .::::   .:::   
                                                            .::                     
```
{: .-figlet}

### maxfour

```
|  |             |                       
|--|/~~||/~\ /~\ |~~\|   ||/~\/~~|/~/|/~\
|  |\__||   |   ||__/ \_/||   \__|\/_|   
                              \__|       
```
{: .-figlet}

### mike

```
 |          |       _     _  _
 |\ //| ||\ |/ |/| |  /| |/ | 
                       |      
```
{: .-figlet}

### mini

```
|_| _.._ _ |_    .__  _ ._ 
| |(_|| | ||_)|_||(_|(/_|  
                   _|      
```
{: .-figlet}

### mirror

```
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       _                 _   _ 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         __ _ ___  _ __ __ _ _   _  __| | ___ __ _ _ __ | | | |
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |__` / _ \| '_ \__` | | | |/ _` |/ _ ' _` | '_ \| |_| |
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | \__  | |_) | | | |_| | (_| | | | | | | |_) |  _  |
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |_|___/| .__/  |_|_.__/ \__,_|_| |_| |_|_.__/|_| |_|
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   \___|                                       
```
{: .-figlet}

### mnemonic

```
Hamburger
```
{: .-figlet}

### morse

```
.... .- -- -... ..- .-. --. . .-. 
```
{: .-figlet}

### moscow

```
#   #   #   #   # ####  #   # ####  ##### ##### ####  
 # #   # #  ## ##  #     # #  #   # #   # #     #   # 
  #   ##### # # #  ####   #   ####  #     ####  ####  
 # #  #   # #   #  #  #  #    #     #     #     #     
#   # #   # #   # ##### #     #     #     ##### #     
```
{: .-figlet}

### mshebrew210

```
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         ""|""|\  |""|| |\/|/ |
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           || ' \/   ||_|_\|_/ 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |  -'              
```
{: .-figlet}

### nancyj-fancy

```
M""MMMMM""MM                     dP                                                    
M  MMMMM  MM                     88                                                    
M         `M .d8888b. 88d8b.d8b. 88d888b. dP    dP 88d888b. .d8888b. .d8888b. 88d888b. 
M  MMMMM  MM 88'  `88 88'`88'`88 88'  `88 88    88 88'  `88 88'  `88 88ooood8 88'  `88 
M  MMMMM  MM 88.  .88 88  88  88 88.  .88 88.  .88 88       88.  .88 88.  ... 88       
M  MMMMM  MM `88888P8 dP  dP  dP 88Y8888' `88888P' dP       `8888P88 `88888P' dP       
MMMMMMMMMMMM                                                     .88                   
                                                             d8888P                    
```
{: .-figlet}

### nancyj-underlined

```
dP     dP                      dP                                                    
88     88                      88                                                    
88aaaaa88a .d8888b. 88d8b.d8b. 88d888b. dP    dP 88d888b. .d8888b. .d8888b. 88d888b. 
88     88  88'  `88 88'`88'`88 88'  `88 88    88 88'  `88 88'  `88 88ooood8 88'  `88 
88     88  88.  .88 88  88  88 88.  .88 88.  .88 88       88.  .88 88.  ... 88       
dP     dP  `88888P8 dP  dP  dP 88Y8888' `88888P' dP       `8888P88 `88888P' dP       
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo~~~~.88~oooooooooooooooooo
                                                           d8888P                    
```
{: .-figlet}

### nancyj

```
dP     dP                      dP                                                    
88     88                      88                                                    
88aaaaa88a .d8888b. 88d8b.d8b. 88d888b. dP    dP 88d888b. .d8888b. .d8888b. 88d888b. 
88     88  88'  `88 88'`88'`88 88'  `88 88    88 88'  `88 88'  `88 88ooood8 88'  `88 
88     88  88.  .88 88  88  88 88.  .88 88.  .88 88       88.  .88 88.  ... 88       
dP     dP  `88888P8 dP  dP  dP 88Y8888' `88888P' dP       `8888P88 `88888P' dP       
                                                               .88                   
                                                           d8888P                    
```
{: .-figlet}

### nipples

```
{__     {__                       {__                                               
{__     {__                       {__                                               
{__     {__   {__    {___ {__ {__ {__      {__  {__{_ {___   {__      {__    {_ {___
{______ {__ {__  {__  {__  {_  {__{__ {__  {__  {__ {__    {__  {__ {_   {__  {__   
{__     {__{__   {__  {__  {_  {__{__   {__{__  {__ {__   {__   {__{_____ {__ {__   
{__     {__{__   {__  {__  {_  {__{__   {__{__  {__ {__    {__  {__{_         {__   
{__     {__  {__ {___{___  {_  {__{__ {__    {__{__{___        {__   {____   {___   
                                                            {__                     
```
{: .-figlet}

### ntgreek

```
 _   _               ___                             
| | | |             / _ \                            
| |_| | __  ___   _| |_) )_   _  ___ _   _ ___  ___  
|  _  |/  \/ / | | |  _ <| | | |/ _ ( \ / ) __)/ _ \ 
| | | ( ()  <| |_| | |_) ) |_| | |_) ) v /> _)| |_) )
|_| |_|\__/\_\ ._,_|  __/ \___/|  __/ | | \___)  __/ 
             | |   | |         | |    | |     | |    
             |_|   |_|         |_|    |_|     |_|    
```
{: .-figlet}

### nvscript

```
 ,ggg,        gg                                                                                                  
dP""Y8b       88                                 ,dPYb,                                                           
Yb, `88       88                                 IP'`Yb                                                           
 `"  88       88                                 I8  8I                                                           
     88aaaaaaa88                                 I8  8'                                                           
     88"""""""88    ,gggg,gg   ,ggg,,ggg,,ggg,   I8 dP      gg      gg   ,gggggg,    ,gggg,gg   ,ggg,    ,gggggg, 
     88       88   dP"  "Y8I  ,8" "8P" "8P" "8,  I8dP   88ggI8      8I   dP""""8I   dP"  "Y8I  i8" "8i   dP""""8I 
     88       88  i8'    ,8I  I8   8I   8I   8I  I8P    8I  I8,    ,8I  ,8'    8I  i8'    ,8I  I8, ,8I  ,8'    8I 
     88       Y8,,d8,   ,d8b,,dP   8I   8I   Yb,,d8b,  ,8I ,d8b,  ,d8b,,dP     Y8,,d8,   ,d8I  `YbadP' ,dP     Y8,
     88       `Y8P"Y8888P"`Y88P'   8I   8I   `Y88P'"Y88P"' 8P'"Y88P"`Y88P      `Y8P"Y8888P"888888P"Y8888P      `Y8
                                                                                         ,d8I'                    
                                                                                       ,dP'8I                     
                                                                                      ,8"  8I                     
                                                                                      I8   8I                     
                                                                                      `8, ,8I                     
                                                                                       `Y8P"                      
```
{: .-figlet}

### o8

```
ooooo ooooo                          oooo                                                                  
 888   888   ooooooo   oo ooo oooo    888ooooo  oooo  oooo  oo oooooo     oooooooo8 ooooooooo8 oo oooooo   
 888ooo888   ooooo888   888 888 888   888    888 888   888   888    888 888    88o 888oooooo8   888    888 
 888   888 888    888   888 888 888   888    888 888   888   888         888oo888o 888          888        
o888o o888o 88ooo88 8o o888o888o888o o888ooo88    888o88 8o o888o       888     888  88oooo888 o888o       
                                                                         888ooo888                         
```
{: .-figlet}

### octal

```
110 141 155 142 165 162 147 145 162 
```
{: .-figlet}

### ogre

```
                       _                               
  /\  /\__ _ _ __ ___ | |__  _   _ _ __ __ _  ___ _ __ 
 / /_/ / _` | '_ ` _ \| '_ \| | | | '__/ _` |/ _ \ '__|
/ __  / (_| | | | | | | |_) | |_| | | | (_| |  __/ |   
\/ /_/ \__,_|_| |_| |_|_.__/ \__,_|_|  \__, |\___|_|   
                                       |___/           
```
{: .-figlet}

### os2

```
oo____oo___________________oo______________________________________________
oo____oo__ooooo__oo_oo_oo__oooooo__oo____o_oo_ooo___oooo____ooooo__oo_ooo__
oo____oo_oo___oo_ooo_oo__o_oo___oo_oo____o_ooo___o_oo__oo__oo____o_ooo___o_
oooooooo_oo___oo_oo__oo__o_oo___oo_oo____o_oo______oo___o__ooooooo_oo______
oo____oo_oo___oo_oo__oo__o_oo___oo_ooo___o_oo_______oooooo_oo______oo______
oo____oo__oooo_o_oo______o_oooooo__oo_ooo__oo______o____oo__ooooo__oo______
____________________________________________________ooooo__________________
```
{: .-figlet}

### pawp

```
 _     _                    _                                     
(_)   (_)                  (_)            _            ____  _    
(_)___(_)  ____   __   __  (_)_    _   _ (_)__  ____  (____)(_)__ 
(_______) (____) (__)_(__) (___)_ (_) (_)(____)(____)(_)_(_)(____)
(_)   (_)( )_( )(_) (_) (_)(_)_(_)(_)_(_)(_)  ( )_(_)(__)__ (_)   
(_)   (_) (__)_)(_) (_) (_)(____)  (___) (_)   (____) (____)(_)   
                                              (_)_(_)             
                                               (___)              
```
{: .-figlet}

### peaks

```
/^^     /^^                       /^^                                               
/^^     /^^                       /^^                                               
/^^     /^^   /^^    /^^^ /^^ /^^ /^^      /^^  /^^/^ /^^^   /^^      /^^    /^ /^^^
/^^^^^^ /^^ /^^  /^^  /^^  /^  /^^/^^ /^^  /^^  /^^ /^^    /^^  /^^ /^   /^^  /^^   
/^^     /^^/^^   /^^  /^^  /^  /^^/^^   /^^/^^  /^^ /^^   /^^   /^^/^^^^^ /^^ /^^   
/^^     /^^/^^   /^^  /^^  /^  /^^/^^   /^^/^^  /^^ /^^    /^^  /^^/^         /^^   
/^^     /^^  /^^ /^^^/^^^  /^  /^^/^^ /^^    /^^/^^/^^^        /^^   /^^^^   /^^^   
                                                            /^^                     
```
{: .-figlet}

### pebbles

```
o      O                  o                                     
O      o                 O                                      
o      O                 O                                      
OoOooOOo                 o                                      
o      O .oOoO' `oOOoOO. OoOo. O   o  `OoOo. .oOoO .oOo. `OoOo. 
O      o O   o   O  o  o O   o o   O   o     o   O OooO'  o     
o      o o   O   o  O  O o   O O   o   O     O   o O      O     
o      O `OoO'o  O  o  o `OoO' `OoO'o  o     `OoOo `OoO'  o     
                                                 O              
                                              OoO'              
```
{: .-figlet}

### pepper

```
 /_/_  _ _  /_    __  _  _
/ //_|/ / //_//_///_//_'/ 
                  _/      
```
{: .-figlet}

### poison

```
@@@  @@@   @@@@@@   @@@@@@@@@@   @@@@@@@   @@@  @@@  @@@@@@@    @@@@@@@@  @@@@@@@@  @@@@@@@   
@@@  @@@  @@@@@@@@  @@@@@@@@@@@  @@@@@@@@  @@@  @@@  @@@@@@@@  @@@@@@@@@  @@@@@@@@  @@@@@@@@  
@@!  @@@  @@!  @@@  @@! @@! @@!  @@!  @@@  @@!  @@@  @@!  @@@  !@@        @@!       @@!  @@@  
!@!  @!@  !@!  @!@  !@! !@! !@!  !@   @!@  !@!  @!@  !@!  @!@  !@!        !@!       !@!  @!@  
@!@!@!@!  @!@!@!@!  @!! !!@ @!@  @!@!@!@   @!@  !@!  @!@!!@!   !@! @!@!@  @!!!:!    @!@!!@!   
!!!@!!!!  !!!@!!!!  !@!   ! !@!  !!!@!!!!  !@!  !!!  !!@!@!    !!! !!@!!  !!!!!:    !!@!@!    
!!:  !!!  !!:  !!!  !!:     !!:  !!:  !!!  !!:  !!!  !!: :!!   :!!   !!:  !!:       !!: :!!   
:!:  !:!  :!:  !:!  :!:     :!:  :!:  !:!  :!:  !:!  :!:  !:!  :!:   !::  :!:       :!:  !:!  
::   :::  ::   :::  :::     ::    :: ::::  ::::: ::  ::   :::   ::: ::::   :: ::::  ::   :::  
 :   : :   :   : :   :      :    :: : ::    : :  :    :   : :   :: :: :   : :: ::    :   : :  
```
{: .-figlet}

### puffy

```
 _   _                    _                                     
( ) ( )                  ( )                                    
| |_| |   _ _   ___ ___  | |_    _   _  _ __   __     __   _ __ 
|  _  | /'_` )/' _ ` _ `\| '_`\ ( ) ( )( '__)/'_ `\ /'__`\( '__)
| | | |( (_| || ( ) ( ) || |_) )| (_) || |  ( (_) |(  ___/| |   
(_) (_)`\__,_)(_) (_) (_)(_,__/'`\___/'(_)  `\__  |`\____)(_)   
                                            ( )_) |             
                                             \___/'             
```
{: .-figlet}

### pyramid

```
  ^    ^    ^    ^    ^    ^    ^    ^    ^  
 /H\  /a\  /m\  /b\  /u\  /r\  /g\  /e\  /r\ 
<___><___><___><___><___><___><___><___><___>
```
{: .-figlet}

### rectangles

```
 _____           _                       
|  |  |___ _____| |_ _ _ ___ ___ ___ ___ 
|     | .'|     | . | | |  _| . | -_|  _|
|__|__|__,|_|_|_|___|___|_| |_  |___|_|  
                            |___|        
```
{: .-figlet}

### relief

```
___________________________________________________________________________________________________
/~~\__/~~\__/~~~~~~\__/~~\__/~~\_/~~~~~~~\__/~~\__/~~\_/~~~~~~~\___/~~~~~~\__/~~~~~~~~\_/~~~~~~~\__
/~~\__/~~\_/~~\__/~~\_/~~~\/~~~\_/~~\__/~~\_/~~\__/~~\_/~~\__/~~\_/~~\__/~~\_/~~\_______/~~\__/~~\_
/~~~~~~~~\_/~~~~~~~~\_/~~~~~~~~\_/~~~~~~~\__/~~\__/~~\_/~~~~~~~\__/~~\_______/~~~~~~\___/~~~~~~~\__
/~~\__/~~\_/~~\__/~~\_/~~\__/~~\_/~~\__/~~\_/~~\__/~~\_/~~\__/~~\_/~~\__/~~\_/~~\_______/~~\__/~~\_
/~~\__/~~\_/~~\__/~~\_/~~\__/~~\_/~~~~~~~\___/~~~~~~\__/~~\__/~~\__/~~~~~~~\_/~~~~~~~~\_/~~\__/~~\_
________________________________________________________________________/~~\_______________________
```
{: .-figlet}

### relief2

```
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
/// \\/// \\/////// \\/// \\/// \//////// \\/// \\/// \//////// \\\/////// \\///////// \//////// \\
/// \\/// \/// \\/// \//// //// \/// \\/// \/// \\/// \/// \\/// \/// \\/// \/// \\\\\\\/// \\/// \
///////// \///////// \/// / /// \//////// \\/// \\/// \//////// \\/// \\\\\\\/////// \\\//////// \\
/// \\/// \/// \\/// \/// \\/// \/// \\/// \/// \\/// \/// \\/// \/// \\/// \/// \\\\\\\/// \\/// \
/// \\/// \/// \\/// \/// \\/// \//////// \\\/////// \\/// \\/// \\//////// \///////// \/// \\/// \
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/// \\\\\\\\\\\\\\\\\\\\\\\
```
{: .-figlet}

### rev

```
=========================================================================
=  ====  ===================  ===========================================
=  ====  ===================  ===========================================
=  ====  ===================  ===========================================
=  ====  ===   ===  =  = ===  =====  =  ==  =   ====   ====   ===  =   ==
=        ==  =  ==        ==    ===  =  ==    =  ==  =  ==  =  ==    =  =
=  ====  =====  ==  =  =  ==  =  ==  =  ==  ========    ==     ==  ======
=  ====  ===    ==  =  =  ==  =  ==  =  ==  ==========  ==  =====  ======
=  ====  ==  =  ==  =  =  ==  =  ==  =  ==  =======  =  ==  =  ==  ======
=  ====  ===    ==  =  =  ==    ====    ==  ========   ====   ===  ======
=========================================================================
```
{: .-figlet}

### roman

```
ooooo   ooooo                              .o8                                                          
`888'   `888'                             "888                                                          
 888     888   .oooo.   ooo. .oo.  .oo.    888oooo.  oooo  oooo  oooo d8b  .oooooooo  .ooooo.  oooo d8b 
 888ooooo888  `P  )88b  `888P"Y88bP"Y88b   d88' `88b `888  `888  `888""8P 888' `88b  d88' `88b `888""8P 
 888     888   .oP"888   888   888   888   888   888  888   888   888     888   888  888ooo888  888     
 888     888  d8(  888   888   888   888   888   888  888   888   888     `88bod8P'  888    .o  888     
o888o   o888o `Y888""8o o888o o888o o888o  `Y8bod8P'  `V88V"V8P' d888b    `8oooooo.  `Y8bod8P' d888b    
                                                                          d"     YD                     
                                                                          "Y88888P'                     
```
{: .-figlet}

### rot13

```
Unzohetre
```
{: .-figlet}

### rounded

```
 _     _             _                                  
(_)   (_)           | |                                 
 _______ _____ ____ | |__  _   _  ____ ____ _____  ____ 
|  ___  (____ |    \|  _ \| | | |/ ___) _  | ___ |/ ___)
| |   | / ___ | | | | |_) ) |_| | |  ( (_| | ____| |    
|_|   |_\_____|_|_|_|____/|____/|_|   \___ |_____)_|    
                                     (_____|            
```
{: .-figlet}

### rowancap

```
    dMP dMP .aMMMb  dMMMMMMMMb dMMMMb  dMP dMP dMMMMb  .aMMMMP dMMMMMP dMMMMb 
   dMP dMP dMP"dMP dMP"dMP"dMPdMP"dMP dMP dMP dMP.dMP dMP"    dMP     dMP.dMP 
  dMMMMMP dMMMMMP dMP dMP dMPdMMMMK" dMP dMP dMMMMK" dMP MMP"dMMMP   dMMMMK"  
 dMP dMP dMP dMP dMP dMP dMPdMP.aMF dMP.aMP dMP"AMF dMP.dMP dMP     dMP"AMF   
dMP dMP dMP dMP dMP dMP dMPdMMMMP"  VMMMP" dMP dMP  VMMMP" dMMMMMP dMP dMP    
```
{: .-figlet}

### rozzo

```
888 888                     888                                               
888 888  ,"Y88b 888 888 8e  888 88e  8888 8888 888,8,  e88 888  ,e e,  888,8, 
8888888 "8" 888 888 888 88b 888 888b 8888 8888 888 "  d888 888 d88 88b 888 "  
888 888 ,ee 888 888 888 888 888 888P Y888 888P 888    Y888 888 888   , 888    
888 888 "88 888 888 888 888 888 88"   "88 88"  888     "88 888  "YeeP" 888    
                                                        ,  88P                
                                                       "8",P"                 
```
{: .-figlet}

### runic

```
|    | 
|\   | 
| \  | 
|  \ | 
|   \| 
|    | 
```
{: .-figlet}

### runyc

```
|    |                               
|\   |                               
| \  |                               
|  \ | |\ |\/| |\ |\  |\ \ / |\/| |\ 
|   \| |\ |/\| |< | | |/  X  |  | |/ 
|    | |  |  | |/ | | |\ / \ |  | |\ 
```
{: .-figlet}

### sblood

```
 @@@  @@@  @@@@@@  @@@@@@@@@@  @@@@@@@  @@@  @@@ @@@@@@@   @@@@@@@  @@@@@@@@ @@@@@@@ 
 @@!  @@@ @@!  @@@ @@! @@! @@! @@!  @@@ @@!  @@@ @@!  @@@ !@@       @@!      @@!  @@@
 @!@!@!@! @!@!@!@! @!! !!@ @!@ @!@!@!@  @!@  !@! @!@!!@!  !@! @!@!@ @!!!:!   @!@!!@! 
 !!:  !!! !!:  !!! !!:     !!: !!:  !!! !!:  !!! !!: :!!  :!!   !!: !!:      !!: :!! 
  :   : :  :   : :  :      :   :: : ::   :.:: :   :   : :  :: :: :  : :: :::  :   : :
```
{: .-figlet}

### script

```
 ,                      _                               
/|   |                 | |                              
 |___|  __,   _  _  _  | |          ,_    __,  _   ,_   
 |   |\/  |  / |/ |/ | |/ \_|   |  /  |  /  | |/  /  |  
 |   |/\_/|_/  |  |  |_/\_/  \_/|_/   |_/\_/|/|__/   |_/
                                           /|           
                                           \|           
```
{: .-figlet}

### serifcap

```
 _  _   __   __  __  ___  _  _  ___   __  ___  ___  
( )( ) (  ) (  \/  )(  ,)( )( )(  ,) / _)(  _)(  ,) 
 )__(  /__\  )    (  ) ,\ )()(  )  \( (/\ ) _) )  \ 
(_)(_)(_)(_)(_/\/\_)(___/ \__/ (_)\_)\__/(___)(_)\_)
```
{: .-figlet}

### shadow

```
 |   |                 |                               
 |   |  _` | __ `__ \  __ \  |   |  __| _` |  _ \  __| 
 ___ | (   | |   |   | |   | |   | |   (   |  __/ |    
_|  _|\__,_|_|  _|  _|_.__/ \__,_|_|  \__, |\___|_|    
                                      |___/            
```
{: .-figlet}

### short

```
|_|  ,_ |        _   
| |(|||||)L||`(|(/_|`
              _|     
```
{: .-figlet}

### slant

```
    __  __                __                              
   / / / /___ _____ ___  / /_  __  ___________ ____  _____
  / /_/ / __ `/ __ `__ \/ __ \/ / / / ___/ __ `/ _ \/ ___/
 / __  / /_/ / / / / / / /_/ / /_/ / /  / /_/ /  __/ /    
/_/ /_/\__,_/_/ /_/ /_/_.___/\__,_/_/   \__, /\___/_/     
                                       /____/             
```
{: .-figlet}

### slide

```
##  ||            ##                            
##  ||##|  ##H H| ##   ## H|## H|#HH| #H| ## H| 
##HH||  H| ### HH|##H| ## H|##H|## H|##HH|##H|  
##  ||##H| ## H H|## H|## H|##   #HH|##   ##    
##  ||##HH|##   H|##H|  #HH|##     H| #HH|##    
                                ##H|            
```
{: .-figlet}

### slscript

```
 _    ,                                 
' )  /              /                   
 /--/ __.  ______  /__. . __  _,  _  __ 
/  (_(_/|_/ / / <_/_)(_/_/ (_(_)_</_/ (_
                              /|        
                             |/         
```
{: .-figlet}

### small

```
 _  _            _                          
| || |__ _ _ __ | |__ _  _ _ _ __ _ ___ _ _ 
| __ / _` | '  \| '_ \ || | '_/ _` / -_) '_|
|_||_\__,_|_|_|_|_.__/\_,_|_| \__, \___|_|  
                              |___/         
```
{: .-figlet}

### smisome1

```
    ___       ___       ___       ___       ___       ___       ___       ___       ___   
   /\__\     /\  \     /\__\     /\  \     /\__\     /\  \     /\  \     /\  \     /\  \  
  /:/__/_   /::\  \   /::L_L_   /::\  \   /:/ _/_   /::\  \   /::\  \   /::\  \   /::\  \ 
 /::\/\__\ /::\:\__\ /:/L:\__\ /::\:\__\ /:/_/\__\ /::\:\__\ /:/\:\__\ /::\:\__\ /::\:\__\
 \/\::/  / \/\::/  / \/_/:/  / \:\::/  / \:\/:/  / \;:::/  / \:\:\/__/ \:\:\/  / \;:::/  /
   /:/  /    /:/  /    /:/  /   \::/  /   \::/  /   |:\/__/   \::/  /   \:\/  /   |:\/__/ 
   \/__/     \/__/     \/__/     \/__/     \/__/     \|__|     \/__/     \/__/     \|__|  
```
{: .-figlet}

### smkeyboard

```
 ____ ____ ____ ____ ____ ____ ____ ____ ____ 
||H |||a |||m |||b |||u |||r |||g |||e |||r ||
||__|||__|||__|||__|||__|||__|||__|||__|||__||
|/__\|/__\|/__\|/__\|/__\|/__\|/__\|/__\|/__\|
```
{: .-figlet}

### smscript

```
 ,                                           
/|  |  _,         |)         ,_   _,  _  ,_  
 |--| / |  /|/|/| |/\_|  |  /  | / | |/ /  | 
 |  |)\/|_/ | | |_/\/  \/|_/   |/\/|/|_/   |/
                                  (|         
```
{: .-figlet}

### smshadow

```
 |  |             |                          
 __ |  _` |  ` \   _ \ |  |  _|_` |  -_)  _| 
_| _|\__,_|_|_|_|_.__/\_,_|_|\__, |\___|_|   
                             ____/           
```
{: .-figlet}

### smslant

```
   __ __           __                        
  / // /__ ___ _  / /  __ _________ ____ ____
 / _  / _ `/  ' \/ _ \/ // / __/ _ `/ -_) __/
/_//_/\_,_/_/_/_/_.__/\_,_/_/  \_, /\__/_/   
                              /___/          
```
{: .-figlet}

### smtengwar

```
\  .',  _ _   _ _  ?    _____ ,'    
/\  |  |_)_) |_)_) | \/ (_(_|  | \/ 
             |       (,     |    (, 
```
{: .-figlet}

### speed

```
______  __                 ______                                    
___  / / /_____ _______ ______  /_____  _______________ _____________
__  /_/ /_  __ `/_  __ `__ \_  __ \  / / /_  ___/_  __ `/  _ \_  ___/
_  __  / / /_/ /_  / / / / /  /_/ / /_/ /_  /   _  /_/ //  __/  /    
/_/ /_/  \__,_/ /_/ /_/ /_//_.___/\__,_/ /_/    _\__, / \___//_/     
                                                /____/               
```
{: .-figlet}

### stacey

```
__________________________________________________________________
7  7  77  _  77        77  _  77  7  77  _  77     77     77  _  7
|  !  ||  _  ||  _  _  ||   __||  |  ||    _||   __!|  ___!|    _|
|     ||  7  ||  7  7  ||  _  ||  |  ||  _ \ |  !  7|  __|_|  _ \ 
|  7  ||  |  ||  |  |  ||  7  ||  !  ||  7  ||     ||     7|  7  |
!__!__!!__!__!!__!__!__!!_____!!_____!!__!__!!_____!!_____!!__!__!
```
{: .-figlet}

### stampatello

```
,-_/,.           .                       
' |_|/ ,-. ,-,-. |-. . . ,-. ,-. ,-. ,-. 
 /| |  ,-| | | | | | | | |   | | |-' |   
 `' `' `-^ ' ' ' ^-' `-^ '   `-| `-' '   
                              ,|         
                              `'         
```
{: .-figlet}

### standard

```
 _   _                 _                               
| | | | __ _ _ __ ___ | |__  _   _ _ __ __ _  ___ _ __ 
| |_| |/ _` | '_ ` _ \| '_ \| | | | '__/ _` |/ _ \ '__|
|  _  | (_| | | | | | | |_) | |_| | | | (_| |  __/ |   
|_| |_|\__,_|_| |_| |_|_.__/ \__,_|_|  \__, |\___|_|   
                                       |___/           
```
{: .-figlet}

### starwars

```
 __    __       ___      .___  ___. .______    __    __  .______        _______  _______ .______      
|  |  |  |     /   \     |   \/   | |   _  \  |  |  |  | |   _  \      /  _____||   ____||   _  \     
|  |__|  |    /  ^  \    |  \  /  | |  |_)  | |  |  |  | |  |_)  |    |  |  __  |  |__   |  |_)  |    
|   __   |   /  /_\  \   |  |\/|  | |   _  <  |  |  |  | |      /     |  | |_ | |   __|  |      /     
|  |  |  |  /  _____  \  |  |  |  | |  |_)  | |  `--'  | |  |\  \----.|  |__| | |  |____ |  |\  \----.
|__|  |__| /__/     \__\ |__|  |__| |______/   \______/  | _| `._____| \______| |_______|| _| `._____|
```
{: .-figlet}

### stellar

```
`..     `..                       `..                                               
`..     `..                       `..                                               
`..     `..   `..    `... `.. `.. `..      `..  `..`. `...   `..      `..    `. `...
`...... `.. `..  `..  `..  `.  `..`.. `..  `..  `.. `..    `..  `.. `.   `..  `..   
`..     `..`..   `..  `..  `.  `..`..   `..`..  `.. `..   `..   `..`..... `.. `..   
`..     `..`..   `..  `..  `.  `..`..   `..`..  `.. `..    `..  `..`.         `..   
`..     `..  `.. `...`...  `.  `..`.. `..    `..`..`...        `..   `....   `...   
                                                            `..                     
```
{: .-figlet}

### stop

```
 _     _             _                                  
| |   | |           | |                                 
| |__ | | ____ ____ | | _  _   _  ____ ____  ____  ____ 
|  __)| |/ _  |    \| || \| | | |/ ___) _  |/ _  )/ ___)
| |   | ( ( | | | | | |_) ) |_| | |  ( ( | ( (/ /| |    
|_|   |_|\_||_|_|_|_|____/ \____|_|   \_|| |\____)_|    
                                     (_____|            
```
{: .-figlet}

### straight

```
|__| _  _ |_     _ _  _ _ 
|  |(_|||||_)|_|| (_)(-|  
                  _/      
```
{: .-figlet}

### tanja

```
H)    hh                    b)                                              
H)    hh                    b)                                              
H)hhhhhh a)AAAA   m)MM MMM  b)BBBB  u)   UU  r)RRR   g)GGG  e)EEEEE  r)RRR  
H)    hh  a)AAA  m)  MM  MM b)   BB u)   UU r)   RR g)   GG e)EEEE  r)   RR 
H)    hh a)   A  m)  MM  MM b)   BB u)   UU r)      g)   GG e)      r)      
H)    hh  a)AAAA m)      MM b)BBBB   u)UUU  r)       g)GGGG  e)EEEE r)      
                                                         GG                 
                                                    g)GGGG                  
```
{: .-figlet}

### tengwar

```
`Yb.            db                                    dP"Yb.                                .dP'            
  `Yb        db    db                                 `b   'Yb                            dP'               
    Yb                                                                    "Ybaaaaaaaaad8'                   
     Yb        'Yb    `Yb d88b d88b   `Yb d88b d88b      'Yb   `Yb    dP'  .dP'  dP'  88   'Yb   `Yb    dP' 
    dPYb        88     88P   88   8b   88P   8Y   8b      88     Yb  dP    88   88    88    88     Yb  dP   
  ,dP  Yb       88     88    8P   88   88    8P   88      88      YbdP     Y8   Y8   .88    88      YbdP    
.dP'    `Yb.   .8P     88  .dP  .dP    88  .dP' .dP'     .8P      .8P      `Y88P`Y88P'88   .8P      .8P     
                      .888888888888b.  888888888888b.           dP'  b                88          dP'  b    
                                       88                       Y.  ,P                88          Y.  ,P    
                                      .8P                        `""'                 Y8.          `""'     
```
{: .-figlet}

### term

```
Hamburger
```
{: .-figlet}

### thick

```
8   8                8                               
8www8 .d88 8d8b.d8b. 88b. 8   8 8d8b .d88 .d88b 8d8b 
8   8 8  8 8P Y8P Y8 8  8 8b d8 8P   8  8 8.dP' 8P   
8   8 `Y88 8   8   8 88P' `Y8P8 8    `Y88 `Y88P 8    
                                     wwdP            
```
{: .-figlet}

### thin

```
|   |          |                             
|---|,---.,-.-.|---..   .,---.,---.,---.,---.
|   |,---|| | ||   ||   ||    |   ||---'|    
`   '`---^` ' '`---'`---'`    `---|`---'`    
                              `---'          
```
{: .-figlet}

### threepoint

```
|_| _  _ _ |_     _ _  _  _
| |(_|| | ||_)|_|| (_|(/_| 
                    _|     
```
{: .-figlet}

### ticks

```
_/\/\____/\/\______________________________/\/\___________________________________________________________________
_/\/\____/\/\__/\/\/\______/\/\/\__/\/\____/\/\________/\/\__/\/\__/\/\__/\/\____/\/\/\/\____/\/\/\____/\/\__/\/\_
_/\/\/\/\/\/\______/\/\____/\/\/\/\/\/\/\__/\/\/\/\____/\/\__/\/\__/\/\/\/\____/\/\__/\/\__/\/\/\/\/\__/\/\/\/\___
_/\/\____/\/\__/\/\/\/\____/\/\__/\__/\/\__/\/\__/\/\__/\/\__/\/\__/\/\__________/\/\/\/\__/\/\________/\/\_______
_/\/\____/\/\__/\/\/\/\/\__/\/\______/\/\__/\/\/\/\______/\/\/\/\__/\/\______________/\/\____/\/\/\/\__/\/\_______
_______________________________________________________________________________/\/\/\/\___________________________
```
{: .-figlet}

### ticksslant

```
     _/\/\____/\/\______________________________/\/\___________________________________________________________________
    _/\/\____/\/\__/\/\/\______/\/\/\__/\/\____/\/\________/\/\__/\/\__/\/\__/\/\____/\/\/\/\____/\/\/\____/\/\__/\/\_ 
   _/\/\/\/\/\/\______/\/\____/\/\/\/\/\/\/\__/\/\/\/\____/\/\__/\/\__/\/\/\/\____/\/\__/\/\__/\/\/\/\/\__/\/\/\/\___  
  _/\/\____/\/\__/\/\/\/\____/\/\__/\__/\/\__/\/\__/\/\__/\/\__/\/\__/\/\__________/\/\/\/\__/\/\________/\/\_______   
 _/\/\____/\/\__/\/\/\/\/\__/\/\______/\/\__/\/\/\/\______/\/\/\/\__/\/\______________/\/\____/\/\/\/\__/\/\_______    
_______________________________________________________________________________/\/\/\/\___________________________     
```
{: .-figlet}

### tinker-toy

```
o  o           o                          
|  |           |                          
O--O  oo o-O-o O-o  o  o o-o o--o o-o o-o 
|  | | | | | | |  | |  | |   |  | |-' |   
o  o o-o-o o o o-o  o--o o   o--O o-o o   
                                |         
                             o--o         
```
{: .-figlet}

### tombstone

```
 _,_  _, _, _ __, _,_ __,  _, __, __,
 |_| /_\ |\/| |_) | | |_) / _ |_  |_)
 | | | | |  | |_) | | | \ \ / |   | \
 ~ ~ ~ ~ ~  ~ ~   `~' ~ ~  ~  ~~~ ~ ~
```
{: .-figlet}

### trek

```
     dBP dBP dBBBBBb     dBBBBBBb dBBBBb   dBP dBP dBBBBBb    dBBBBb  dBBBP dBBBBBb
                  BB          dBP    dBP               dBP                      dBP
   dBBBBBP    dBP BB   dBPdBPdBP dBBBK'  dBP dBP   dBBBBK   dBBBB   dBBP    dBBBBK 
  dBP dBP    dBP  BB  dBPdBPdBP dB' db  dBP_dBP   dBP  BB  dB' BB  dBP     dBP  BB 
 dBP dBP    dBBBBBBB dBPdBPdBP dBBBBP' dBBBBBP   dBP  dB' dBBBBBB dBBBBP  dBP  dB' 
```
{: .-figlet}

### tsalagi

```
 __      __   -|-       __           __     ___   ___     __   
/  '    |  \   |       `  \  ,  |~, /  '     |_-_  |     /  '  
\_      |   \  |        _  |@|  |  | ,_   `\/\     |_,  | ,_   
/  _    |   /  | _   |  |  | |  /  | ' |   |  |    | '  | ' |  
\__,    |__/    _|    \_|_/   \/    \__/    \/    _|_    \__/  
```
{: .-figlet}

### twopoint

```
|_| _ ._ _ |_    ._(~| _._
| |(_|| | ||_)|_||  _|}_| 
```
{: .-figlet}

### univers

```
88        88                               88                                                                    
88        88                               88                                                                    
88        88                               88                                                                    
88aaaaaaaa88 ,adPPYYba, 88,dPYba,,adPYba,  88,dPPYba,  88       88 8b,dPPYba,  ,adPPYb,d8  ,adPPYba, 8b,dPPYba,  
88""""""""88 ""     `Y8 88P'   "88"    "8a 88P'    "8a 88       88 88P'   "Y8 a8"    `Y88 a8P_____88 88P'   "Y8  
88        88 ,adPPPPP88 88      88      88 88       d8 88       88 88         8b       88 8PP""""""" 88          
88        88 88,    ,88 88      88      88 88b,   ,a8" "8a,   ,a88 88         "8a,   ,d88 "8b,   ,aa 88          
88        88 `"8bbdP"Y8 88      88      88 8Y"Ybbd8"'   `"YbbdP'Y8 88          `"YbbdP"Y8  `"Ybbd8"' 88          
                                                                               aa,    ,88                        
                                                                                "Y8bbdP"                         
```
{: .-figlet}

### usaflag

```
 :::  === :::====  :::=======  :::====  :::  === :::====  :::=====  :::===== :::==== 
 :::  === :::  === ::: === === :::  === :::  === :::  === :::       :::      :::  ===
 ======== ======== === === === =======  ===  === =======  === ===== ======   ======= 
 ===  === ===  === ===     === ===  === ===  === === ===  ===   === ===      === === 
 ===  === ===  === ===     === =======   ======  ===  ===  =======  ======== ===  ===
```
{: .-figlet}

### weird

```
 /  |           /                            
(___| ___  _ _ (___       ___  ___  ___  ___ 
|   )|   )| | )|   )|   )|   )|   )|___)|   )
|  / |__/||  / |__/ |__/ |    |__/ |__  |    
                              __/            
```
{: .-figlet}

### whimsy

```
 d8b                               d8b                                                  
 ?88                               ?88                                                  
  88b                               88b                                                 
  888888b  d888b8b    88bd8b,d88b   888888b ?88   d8P  88bd88b d888b8b   d8888b  88bd88b
  88P `?8bd8P' ?88    88P'`?8P'?8b  88P `?8bd88   88   88P'  `d8P' ?88  d8b_,dP  88P'  `
 d88   88P88b  ,88b  d88  d88  88P d88,  d88?8(  d88  d88     88b  ,88b 88b     d88     
d88'   88b`?88P'`88bd88' d88'  88bd88'`?88P'`?88P'?8bd88'     `?88P'`88b`?888P'd88'     
                                                                     )88                
                                                                    ,88P                
                                                                `?8888P                 
```
{: .-figlet}


## Toilet fonts

### ascii12

```
 mm    mm                      mm                                                         
 ##    ##                      ##                                                         
 ##    ##   m#####m  ####m##m  ##m###m   ##    ##   ##m####   m###m##   m####m    ##m#### 
 ########   " mmm##  ## ## ##  ##"  "##  ##    ##   ##"      ##"  "##  ##mmmm##   ##"     
 ##    ##  m##"""##  ## ## ##  ##    ##  ##    ##   ##       ##    ##  ##""""""   ##      
 ##    ##  ##mmm###  ## ## ##  ###mm##"  ##mmm###   ##       "##mm###  "##mmmm#   ##      
 ""    ""   """" ""  "" "" ""  "" """     """" ""   ""        m""" ##    """""    ""      
                                                              "####""                     
```
{: .-figlet}

### ascii9

```
 m    m               #                                        
 #    #  mmm   mmmmm  #mmm   m   m   m mm   mmmm   mmm    m mm 
 #mmmm# "   #  # # #  #" "#  #   #   #"  " #" "#  #"  #   #"  "
 #    # m"""#  # # #  #   #  #   #   #     #   #  #""""   #    
 #    # "mm"#  # # #  ##m#"  "mm"#   #     "#m"#  "#mm"   #    
                                            m  #               
                                             ""                
```
{: .-figlet}

### bigascii12

```
 ##    ##                      ##                                                         
 ##    ##                      ##                                                         
 ##    ##                      ##                                                         
 ##    ##   :####    ## #:##:  ##.###:   ##    ##   ##.####   :###:##   .####:    ##.#### 
 ##    ##   ######   ########  #######:  ##    ##   #######  .#######  .######:   ####### 
 ########   #:  :##  ##.##.##  ###  ###  ##    ##   ###.     ###  ###  ##:  :##   ###.    
 ########    :#####  ## ## ##  ##.  .##  ##    ##   ##       ##.  .##  ########   ##      
 ##    ##  .#######  ## ## ##  ##    ##  ##    ##   ##       ##    ##  ########   ##      
 ##    ##  ## .  ##  ## ## ##  ##.  .##  ##    ##   ##       ##.  .##  ##         ##      
 ##    ##  ##:  ###  ## ## ##  ###  ###  ##:  ###   ##       ###  ###  ###.  :#   ##      
 ##    ##  ########  ## ## ##  #######:   #######   ##       .#######  .#######   ##      
 ##    ##    ###.##  ## ## ##  ##.###:     ###.##   ##        :###:##   .#####:   ##      
                                                              #.  :##                     
                                                              ######                      
                                                              :####:                      
```
{: .-figlet}

### bigascii9

```
                      #                                        
 #    #               #                                        
 #    #               #                                        
 #    # .###.  ## #   # ##   #   #   #:##:  ## #   ###    #:##:
 #    # #: :#  #:#:#  #   #  #   #   ##  # #   #     :#   ##  #
 ######     #  # # #  #   #  #   #   #     #   #  #   #   #    
 #    # :####  # # #  #   #  #   #   #     #   #  #####   #    
 #    # #:  #  # # #  #   #  #   #   #     #   #  #       #    
 #    # #.  #  # # #  #   #  #:  #   #     #   #      #   #    
 #    # :##:#  # # #  # ##   :##:#   #      ##:#   ###:   #    
                                               #               
                                              :#               
                                            :##.               
```
{: .-figlet}

### bigmono12

```
 ██    ██                      ██                                                         
 ██    ██                      ██                                                         
 ██    ██                      ██                                                         
 ██    ██   ▒████▓   ██▓█▒██▒  ██░███▒   ██    ██   ██░████   ▒███▒██   ░████▒    ██░████ 
 ██    ██   ██████▓  ████████  ███████▒  ██    ██   ███████  ░███████  ░██████▒   ███████ 
 ████████   █▒  ▒██  ██░██░██  ███  ███  ██    ██   ███░     ███  ███  ██▒  ▒██   ███░    
 ████████    ▒█████  ██ ██ ██  ██░  ░██  ██    ██   ██       ██░  ░██  ████████   ██      
 ██    ██  ░███████  ██ ██ ██  ██    ██  ██    ██   ██       ██    ██  ████████   ██      
 ██    ██  ██▓░  ██  ██ ██ ██  ██░  ░██  ██    ██   ██       ██░  ░██  ██         ██      
 ██    ██  ██▒  ███  ██ ██ ██  ███  ███  ██▒  ███   ██       ███  ███  ███░  ▒█   ██      
 ██    ██  ████████  ██ ██ ██  ███████▒  ▓███████   ██       ░███████  ░███████   ██      
 ██    ██   ▓███░██  ██ ██ ██  ██░███▒    ▓███░██   ██        ▒███▒██   ░█████▒   ██      
                                                              █░  ▒██                     
                                                              ██████▓                     
                                                              ▒████▒                      
```
{: .-figlet}

### bigmono9

```
                      █                                        
 █    █               █                                        
 █    █               █                                        
 █    █ ░███░  ██▓█▓  █▓██   █   █   █▒██▒  ██▓█   ███    █▒██▒
 █    █ █▒ ▒█  █▒█▒█  █▓ ▓█  █   █   ██  █ █▓ ▓█  ▓▓ ▒█   ██  █
 ██████     █  █ █ █  █   █  █   █   █     █   █  █   █   █    
 █    █ ▒████  █ █ █  █   █  █   █   █     █   █  █████   █    
 █    █ █▒  █  █ █ █  █   █  █   █   █     █   █  █       █    
 █    █ █░ ▓█  █ █ █  █▓ ▓█  █▒ ▓█   █     █▓ ▓█  ▓▓  █   █    
 █    █ ▒██▒█  █ █ █  █▓██   ▒██▒█   █      ██▒█   ███▒   █    
                                               █               
                                            ▓ ▒█               
                                            ▒██░               
```
{: .-figlet}

### circle

```
Ⓗⓐⓜⓑⓤⓡⓖⓔⓡ
```
{: .-figlet}

### emboss

```
┃ ┃┏━┃┏┏ ┏━ ┃ ┃┏━┃┏━┛┏━┛┏━┃
┏━┃┏━┃┃┃┃┏━┃┃ ┃┏┏┛┃ ┃┏━┛┏┏┛
┛ ┛┛ ┛┛┛┛━━ ━━┛┛ ┛━━┛━━┛┛ ┛
```
{: .-figlet}

### emboss2

```
║ ║╔═║╔╔ ╔═ ║ ║╔═║╔═╝╔═╝╔═║
╔═║╔═║║║║╔═║║ ║╔╔╝║ ║╔═╝╔╔╝
╝ ╝╝ ╝╝╝╝══ ══╝╝ ╝══╝══╝╝ ╝
```
{: .-figlet}

### future

```
╻ ╻┏━┓┏┳┓┏┓ ╻ ╻┏━┓┏━╸┏━╸┏━┓
┣━┫┣━┫┃┃┃┣┻┓┃ ┃┣┳┛┃╺┓┣╸ ┣┳┛
╹ ╹╹ ╹╹ ╹┗━┛┗━┛╹┗╸┗━┛┗━╸╹┗╸
```
{: .-figlet}

### letter

```
H   H   A   M   M BBBB  U   U RRRR   GGG  EEEEE RRRR  
H   H  A A  MM MM B   B U   U R   R G     E     R   R 
HHHHH AAAAA M M M BBBB  U   U RRRR  G GG  EEEE  RRRR  
H   H A   A M   M B   B U   U R  R  G   G E     R  R  
H   H A   A M   M BBBB   UUU  R   R  GGG  EEEEE R   R 
```
{: .-figlet}

### mono12

```
 ▄▄    ▄▄                      ▄▄                                                         
 ██    ██                      ██                                                         
 ██    ██   ▄█████▄  ████▄██▄  ██▄███▄   ██    ██   ██▄████   ▄███▄██   ▄████▄    ██▄████ 
 ████████   ▀ ▄▄▄██  ██ ██ ██  ██▀  ▀██  ██    ██   ██▀      ██▀  ▀██  ██▄▄▄▄██   ██▀     
 ██    ██  ▄██▀▀▀██  ██ ██ ██  ██    ██  ██    ██   ██       ██    ██  ██▀▀▀▀▀▀   ██      
 ██    ██  ██▄▄▄███  ██ ██ ██  ███▄▄██▀  ██▄▄▄███   ██       ▀██▄▄███  ▀██▄▄▄▄█   ██      
 ▀▀    ▀▀   ▀▀▀▀ ▀▀  ▀▀ ▀▀ ▀▀  ▀▀ ▀▀▀     ▀▀▀▀ ▀▀   ▀▀        ▄▀▀▀ ██    ▀▀▀▀▀    ▀▀      
                                                              ▀████▀▀                     
```
{: .-figlet}

### mono9

```
 ▄    ▄               █                                        
 █    █  ▄▄▄   ▄▄▄▄▄  █▄▄▄   ▄   ▄   ▄ ▄▄   ▄▄▄▄   ▄▄▄    ▄ ▄▄ 
 █▄▄▄▄█ ▀   █  █ █ █  █▀ ▀█  █   █   █▀  ▀ █▀ ▀█  █▀  █   █▀  ▀
 █    █ ▄▀▀▀█  █ █ █  █   █  █   █   █     █   █  █▀▀▀▀   █    
 █    █ ▀▄▄▀█  █ █ █  ██▄█▀  ▀▄▄▀█   █     ▀█▄▀█  ▀█▄▄▀   █    
                                            ▄  █               
                                             ▀▀                
```
{: .-figlet}

### pagga

```
░█░█░█▀█░█▄█░█▀▄░█░█░█▀▄░█▀▀░█▀▀░█▀▄
░█▀█░█▀█░█░█░█▀▄░█░█░█▀▄░█░█░█▀▀░█▀▄
░▀░▀░▀░▀░▀░▀░▀▀░░▀▀▀░▀░▀░▀▀▀░▀▀▀░▀░▀
```
{: .-figlet}

### smascii12

```
., .,          .,                            
][ ][          ][                            
][ ][ dWW,]WbW,]bWb ][ ][ WdW[ dWd[ dWb  WdW[
]WWW[ `md[][W][]P T[][ ][ W`  ]P T[]bmd[ W`  
][ ][.W"T[][W][][ ][][ ][ W   ][ ][]P""` W   
][ ][]bmW[][W][]WmW`]bmW[ W   'WmW['Wmm[ W   
'` '` ""'`'`"'`'`"`  ""'` "    /"][ '""  "   
                               TWP`          
```
{: .-figlet}

### smascii9

```
.  ,        ]                       
]  [ m, .mm ]m, . .  ,m  mm  m,  ,m 
]mm[' ] ]]] ]`T ] ]  P `]`T ]`]  P `
]  [."T ]]] ] ] ] ]  [  ] ] ]""  [  
]  ['mT ]]] ]bP 'mT  [  'bT 'b/  [  
                         ,]         
                         '`         
```
{: .-figlet}

### smblock

```
▌ ▌       ▌                 
▙▄▌▝▀▖▛▚▀▖▛▀▖▌ ▌▙▀▖▞▀▌▞▀▖▙▀▖
▌ ▌▞▀▌▌▐ ▌▌ ▌▌ ▌▌  ▚▄▌▛▀ ▌  
▘ ▘▝▀▘▘▝ ▘▀▀ ▝▀▘▘  ▗▄▘▝▀▘▘  
```
{: .-figlet}

### smbraille

```
 ⣇⣸ ⢀⣀ ⣀⣀  ⣇⡀ ⡀⢀ ⡀⣀ ⢀⡀ ⢀⡀ ⡀⣀
 ⠇⠸ ⠣⠼ ⠇⠇⠇ ⠧⠜ ⠣⠼ ⠏  ⣑⡺ ⠣⠭ ⠏ 
```
{: .-figlet}

### smmono12

```
▗▖ ▗▖          ▗▖                            
▐▌ ▐▌          ▐▌                            
▐▌ ▐▌ ▟██▖▐█▙█▖▐▙█▙ ▐▌ ▐▌ █▟█▌ ▟█▟▌ ▟█▙  █▟█▌
▐███▌ ▘▄▟▌▐▌█▐▌▐▛ ▜▌▐▌ ▐▌ █▘  ▐▛ ▜▌▐▙▄▟▌ █▘  
▐▌ ▐▌▗█▀▜▌▐▌█▐▌▐▌ ▐▌▐▌ ▐▌ █   ▐▌ ▐▌▐▛▀▀▘ █   
▐▌ ▐▌▐▙▄█▌▐▌█▐▌▐█▄█▘▐▙▄█▌ █   ▝█▄█▌▝█▄▄▌ █   
▝▘ ▝▘ ▀▀▝▘▝▘▀▝▘▝▘▀▘  ▀▀▝▘ ▀    ▞▀▐▌ ▝▀▀  ▀   
                               ▜█▛▘          
```
{: .-figlet}

### smmono9

```
▗  ▖        ▐                       
▐  ▌ ▄▖ ▗▄▄ ▐▄▖ ▗ ▗  ▖▄  ▄▄  ▄▖  ▖▄ 
▐▄▄▌▝ ▐ ▐▐▐ ▐▘▜ ▐ ▐  ▛ ▘▐▘▜ ▐▘▐  ▛ ▘
▐  ▌▗▀▜ ▐▐▐ ▐ ▐ ▐ ▐  ▌  ▐ ▐ ▐▀▀  ▌  
▐  ▌▝▄▜ ▐▐▐ ▐▙▛ ▝▄▜  ▌  ▝▙▜ ▝▙▞  ▌  
                         ▖▐         
                         ▝▘         
```
{: .-figlet}

### wideterm

```
Ｈａｍｂｕｒｇｅｒ
```
{: .-figlet}


