Introduction

jawk is an AWK like command line tool that reads a stream of JSON values, manipulate them and produce an output.

See source code in here.

Getting jawk

There are a few ways to install jawk:

From source

To install jawk from source, make sure you have the Rust toolchain installed. See details in here

From the repository

To install jawk from the repository, one need to clone the repository, build the tool and copy the executable to the path. For example, on linux (assuming ~/bin is in the path):

git clone https://github.com/yift/jawk
cd jawk
cargo build -r
cp target/release/jawk ~/bin

Using Cargo

To install jawk using Cargo, one can simply run:

cargo install jawk

(To install rust see here).

From Docker

One can use jawk docker container. Please note that this will not allow you to access any local files (unless you add them to the container volumes). For example:

echo '{"a": 1}{"a": 10}{"a": 32}' | docker run -i --rm yiftach/jawk --select '.a=a' -o csv

(To install docker see here).

From binary

Some operating system binaries are available in:

Getting Started

jawk is a command line tool thatshould be able to instract with other command line tools.

Inputs

By default, jawk will read the input from the standart input (which can be piped from a previous command), but one can specify a file or directory in the command line, in that case, jawk will read from those files (if one of them is a directrory, jawk will read from all the readable files under that directory). The inputs should be JSON values (objects, arrays, strings, numbers, Booleans and null). By default, if part of the input is not a valid JSON value, jawk will ignore it and will procceed to the next value. jawk will then process each value on it's own, and will omit output for each value.

Example

Running:

echo '
100
{"key-1": true, "key-2": false}    
"string"
nop
[null, 1, 2, 3]

' | jawk

Will return:

100
{"key-1": true, "key-2": false}
"string"
[null, 1, 2, 3]

Selection

One can specify a few selection to perform on each value using the --select argument. See more details in the selection.

Example

Running:

echo '
100
{"key-1": true, "key-2": false}    
"string"
nop
[null, 1, 2, 3]

' | jawk --select '(.len)=len'

Will return:

{}
{"len": 2}
{"len": 6}
{"len": 4}

Output

By default the output will be a single line JSON for each valid value in the input. On can change this to CSV, text, or other styles of JSON. For more details see the command line help.

Example

Running:

echo '
{"key-1": true, "key-2": false}    
"string" 
100
nop
[null, 1, 2, 3]

' | jawk --select '(.len)=len' -o csv

Will return:

"len"
2
6

4

Command-Line Help for jawk

This document contains the help content for the jawk command-line program.

Command Overview:

jawk

An AWK like toold for JSON input.

This tool should allow one to manipulate an input file that contains JSON values into CSV or JSON output. See more details in https://jawk.ykaplan.me/

Usage: jawk [OPTIONS] [FILES]...

Arguments:
  • <FILES> — Input files
Options:
  • --on-error <ON_ERROR> — What to do on error

    Default value: ignore

    Possible values:

    • ignore: Do nothing with the error
    • panic: Exit the process on the first error
    • stderr: Output the errors to stderr
    • stdout: Output the errors to stdout
  • -c, --choose <CHOOSE> — What to output

  • -f, --filter <FILTER> — Filter the output. The expected format is <selection>

  • -b, --break-by <BREAK_BY> — Split the input by

  • -g, --group-by <GROUP_BY> — Group the output by

  • -s, --sort-by <SORT_BY> — How to order the output. Allow muttiploe sorting

  • -k, --skip <SKIP> — How many results to skip (if any)

    Default value: 0

  • -t, --take <TAKE> — Maximal number of result to process

  • -a, --additional-help <ADDITIONAL_HELP> — Additional help

    Possible values:

    • book: Open the book
    • selection: Additional help about the selection
    • functions: Additional help about the available functions
    • basic: Additional help about the basic functions group
    • flow: Additional help about the flow functions group
    • collection: Additional help about the collection functions group
    • types: Additional help about the types functions group
    • check_types: Additional help about the check_types functions group
    • cast: Additional help about the cast functions group
    • list: Additional help about the list functions group
    • list_producers: Additional help about the list_producers functions group
    • list_manipluations: Additional help about the list_manipluations functions group
    • list_functional: Additional help about the list_functional functions group
    • list_folding: Additional help about the list_folding functions group
    • object: Additional help about the object functions group
    • object_to_list: Additional help about the object_to_list functions group
    • sort_objects: Additional help about the sort_objects functions group
    • manipulate_object: Additional help about the manipulate_object functions group
    • functional_object: Additional help about the functional_object functions group
    • number: Additional help about the number functions group
    • string: Additional help about the string functions group
    • parse_and_stringify: Additional help about the parse_and_stringify functions group
    • regex: Additional help about the regex functions group
    • boolean: Additional help about the boolean functions group
    • compare: Additional help about the compare functions group
    • logical: Additional help about the logical functions group
    • time: Additional help about the time functions group
    • variables: Additional help about the variables functions group
    • proccess: Additional help about the proccess functions group
    • nas: Additional help about the nas functions group
    • nas_arithmetic: Additional help about the nas_arithmetic functions group
    • nas_compare: Additional help about the nas_compare functions group
  • -u, --unique — Avoid posting the same output more than once

    Possible values: true, false

  • -e, --set <SET> — Predefine variables and macros

  • --regular-expression-cache-size <REGULAR_EXPRESSION_CACHE_SIZE> — Regular expression cache size

    Default value: 0

  • --only-objects-and-arrays — Only accept objects and array

    Possible values: true, false

  • -o, --output-style <OUTPUT_STYLE> — How to display the output

    Default value: json

    Possible values:

    • json: pretty JSON output
    • csv: CSV file format. This must have selection and can not be a produce of group by as we need to know the columns
    • text: Raw text output
  • -r, --row-seperator <ROW_SEPERATOR> — Row seperator

    Default value:

  • --style <STYLE> — Json output style

    Default value: one-line

    Possible values:

    • one-line: One line JSON
    • consise: Consise JSON output (no unneeded white spaces)
    • pretty: Pretty JSON output
  • --utf8-strings — Output string literal as UTF8 for JSON, (by default only ASCII will be used, and everything else will be escaped)

    Default value: false

    Possible values: true, false

  • --items-seperator <ITEMS_SEPERATOR> — Seperate items by (for text output)

    Default value:

  • --string-prefix <STRING_PREFIX> — What to add before a String value (for text output)

    Default value: ``

  • --string-postfix <STRING_POSTFIX> — What to add after a String value (for text output)

    Default value: ``

  • --headers — Include headers (for text output)

    Default value: false

    Possible values: true, false

  • --escape-sequance <ESCAPE_SEQUANCE> — Escape sequance. Can be set more than once. should be used with the escaped character followed by the excpaed sequance. For example, "\" will set the "`` to be escaped by a "` (for text output)

  • --null-keyword <NULL_KEYWORD> — How to display nulls values (for text output)

    Default value: null

  • --true-keyword <TRUE_KEYWORD> — How to display true values (for text output)

    Default value: true

  • --false-keyword <FALSE_KEYWORD> — How to display false values (for text output)

    Default value: false

  • --missing-value-keyword <MISSING_VALUE_KEYWORD> — How to display missing values (for text output)


This document was generated automatically by clap-markdown.

Selection

There are 7 types of selectoion:

Extraction

Used to extract data from the input.

  • Use . to get the input as is.
  • Use .<name> to access a key within an object. If the name has spaces, use the get function instead.
  • Use #<index> to access an element in an array.
  • Use ^ to access the "parent" input. That is, while in a functional function - like filter or map - use ^ to access the original input and ^^ to access the input of that input and so on.
  • One can use a combination of all of the aboove, i.e. ^.key-1.key-2#3.key-4.

Examples

  • For selection: . for input: {"key": 12} will produce: {"key": 12}.
  • For selection: .key-1.key-2 for input: {"key-1": {"key-2": 300}} will produce: 300.
  • For selection: .key-1.key-2 for input: {"key-3": {"key-2": 300}} will produce nothing.
  • For selection: .key-1#3 for input: {"key-1": ["a", "b", 3, "word", 6]} will produce: "word".
  • For selection: (.map (.map (.+ (size ^.) (size ^^.)))) for input: [[1, 2, 3], [4, 5], [6]] will produce: [[7, 8, 9], [9, 10], [10]].

Literal value

Used to select constant value. Use a simple JSON format. The input is ignored.

Examples

  • For selection: 4001.1 regardless of the input will produce: 4001.1.
  • For selection: null regardless of the input will produce: null.
  • For selection: "test" regardless of the input will produce: "test".
  • For selection: [1, 4, {}, 100] regardless of the input will produce: [1, 4, {}, 100].

Function

Invoke a function. Has a format of (<function-name> <arg0> <arg1> ..) where <argN> are other selection. Alternative format is (.<function-name> <arg1>...) - in that case, the first argument will be the input (i.e. .). The argument can be seperated by comma or whitespace. See list of available functions in functions additional help.

Examples

  • For selection: (len .) for input: [1, 4, {}, 100] will produce: 4.
  • For selection: (.len) for input: [1, 4, {}, 100] will produce: 4.
  • For selection: (len .list) for input: {"list": [1, 4, {}, 100]} will produce: 4.
  • For selection: (map (range 10) (+ . 5)) regardless of the input will produce: [5, 6, 7, 8, 9, 10, 11, 12, 13, 14].

Variables

Use a variable (either one the was predefined by the set command line argument or one that was defined by the set function). The format to use varaibles is :<variable-name>. Note that the variable is defiend once.

Examples

  • For selection: :nothing regardless of the input will produce nothing.
  • For selection: (set "length" (.len) (.map (.+ :length))) for input: [1, 2, 3] will produce: [4, 5, 6].

Macros

Use a macro (either one the was predefined by the set command line argument or one that was defined by the define function). The format to use a macro is @<variable-name>. Note that the macro is evelated on each call.

Examples

  • For selection: :nothing regardless of the input will produce nothing.
  • For selection: (define "even" (= 0 (.% 2)) (.filter @even)) for input: [1, 2, 3, 4, 5, 6, 7] will produce: [2, 4, 6].

Input context

Use input context to get the context of the input. The available input types are:

  • &index - To get the index of the current value within the current run.
  • &index-in-file - To get the index of the current value within the curent file.
  • &started-at-line-number - To get the line number within the input file in which the input started.
  • &started-at-char-number - To get the char number within the line within the input file in which the input started.
  • &ended-at-line-number - To get the line number within the input file in which the input ended.
  • &ended-at-char-number - To get the char number within the line within the input file in which the input ended.
  • &file-name - To get the name of the input file from which the input was parsed (will be empty for stdin input).

Examples

  • For selection: (- &ended-at-char-number &started-at-char-number) for input: "test" will produce: 6.

Previous selected values

Reuse previoulsy selected value. Use this to reuse a value that had been selected previously. This is not available during filtering, and one can only refere to values that had been selected before. The format is /<selection-name>/ where the selection-name is the name of the selection.

Examples

  • For selection: /name/ regardless of the input and previously selected name as "John" will produce: "John".
  • For selection: /name/ regardless of the input and previously selected name as nothing will produce nothing.
  • For selection: /name/ regardless of the input and previously selected Last Name as "Doe" will produce nothing.

Functions

Functions allow one to manipulate the input. The functions format is (<function-name> <arg0> <arg1> ..) where <argN> are functions or other types of selection. See additional help for selection for more details. See additional help with the group name to see the list of available functions in that group. Function group has those functions and groups:

  • Group basic -
    • Group flow - Contrlo flow functions
      • Function | - Pipe the output of one function to the next function.
      • Function default - Get the first non empty value.
      • Function ? - Return the second argument if the first argument is true. Return the third argument
    • Group collection - Functions that allow to use list or maps as collections
      • Function get - Get an item from an array by index or from a map by key.
      • Function size - Get the number of element in an array,
      • Function take - Take the first N of element in an array, object of string
      • Function take_last - Take the last N of element in an array, object of string
      • Function sub - If the first argument is a list, creates a new list that start from the second arguments and has the size of the third argument.
  • Group types -
    • Group check_types - Check the type of a value
      • Function array? - return true if the argument is an array.
      • Function object? - return true if the argument is an object.
      • Function null? - return true if the argument is a null.
      • Function bool? - return true if the argument is a boolean.
      • Function number? - return true if the argument is a number.
      • Function string? - return true if the argument is a string.
      • Function empty? - return true if the argument is nothing.
    • Group cast - Cast object to a predefine type
      • Function as_boolean - return the Boolean if the argument is a Boolean, nothing if it's not.
      • Function as_number - return the number if the argument is a number, nothing if it's not.
      • Function as_string - return the string if the argument is a string, nothing if it's not.
      • Function as_array - return the array if the argument is an array, nothing if it's not.
      • Function as_object - return the object if the argument is an object, nothing if it's not.
  • Group list -
    • Group list_producers - Functions to create lists
      • Function range - Create a new list with items from 0 to the second argument.
      • Function zip - Zip a few list into a new list.
      • Function cross - Join a few list (i.e. Cartesian product) into a new list.
    • Group list_manipluations - Function to manipulatre a list and create a new one
      • Function sort - Sort a list.
      • Function sort_unique - Sort a list and remove duplicates.
      • Function indexed - Map a list into a new list where each element in the new list is an object with two elements:
      • Function push - Add items to a list.
      • Function push_front - Add items to the from of a list.
      • Function reverese - Reveres the order of a list.
      • Function pop - Pop the last item from a list.
      • Function pop_first - Pop the first item from a list.
    • Group list_functional - Functional function over a list of items
      • Function filter - Filter a list.
      • Function group_by - Group items by function.
      • Function sort_by - Sort a list.
      • Function fold - Fold all the items in a list into a new value.
      • Function map - Map a list into a new list using a function.
      • Function flat_map - Flat map a list into a new list using a function.
    • Group list_folding - Function top fold a list into a single item
      • Function sum - Sum all the items in the list.
      • Function any - Check if any of item in a list is ture.
      • Function all - Check if all the items in a list are true.
      • Function join - Join all the items in the list into a String.
      • Function first - The first item in a list.
      • Function last - The last item in a list.
  • Group object -
    • Group object_to_list - Convert an object into a list
      • Function keys - Get the list of keys from an object.
      • Function values - Get the list of values from an object.
      • Function entries - Get the list of all the entries of an obejct. Each item of the list will be an object with key and value entries
    • Group sort_objects - Sort an object
    • Group manipulate_object - Manipulate objects to pruduce a new object
      • Function put - Add a new entry to a map.
      • Function insert_if_absent - Add a new entry to a map if it has no such key.
      • Function replace_if_exists - Add a new entry to a map if it has such key.
    • Group functional_object - Functional function over an object
  • Group number -
    • Function + - If all the arguments are number, add them.
    • Function - - If there are two numeric arguments, substract the second argument from the first one if both are number.
    • Function * - If all the arguments are number, multiply them.
    • Function / - Divide the firs argument by the second argument. If the second argument is 0 will return nothing
    • Function % - Find the reminder of the division of the firs argument by the second argument. If the second argument is 0 will return nothing
    • Function abs - If the argument is numeric, return it's absolute value.
    • Function round - If the argument is numeric, return it's rounded.
    • Function ceil - If the argument is numeric, return it's ceiling.
    • Function floor - If the argument is numeric, return it's floor.
  • Group string -
    • Function env - Get enviornment variable.
    • Function concat - Concat all string arguments.
    • Function head - Extract a string header.
    • Function tail - Extract a string tail.
    • Function split - Split the string into array of strings.
    • Function base63_decode - Decode a BASE64 string and try to convert to a string using UTF8.
    • Group parse_and_stringify - Function to parse from a string or to convert an object into a string
      • Function stringify - Return the JSON represantation of the object.
      • Function parse - Parse a string into JSON value.
      • Function parse_selection - Parse a string into a new selection.
    • Group regex - Regular expression functions
      • Function match - Return true if the first string argument match the second regular expression argument.
      • Function extract_regex_group - Return the capture group within the string.
  • Group boolean -
    • Group compare - Compatison functions
      • Function = - Compare two value and return true if both are equals.
      • Function != - Compare two value and return true if both are not equals.
      • Function < - Compare two value and return true if the first is smaller than the second.
      • Function <= - Compare two value and return true if the first is smaller or eqauls than the second.
      • Function >= - Compare two value and return true if the first is greater or eqauls than the second.
      • Function > - Compare two value and return true if the first is greater than the second.
    • Group logical - Logical function
      • Function and - Return true if all the arguments are true, nothing if there is a non boolean argument and false if there is a false argument.
      • Function or - Return true if any of the arguments are true, nothing if there is a non boolean argument and false if all the arguments are false.
      • Function xor - Return true if one, and only one, of the argument is true.
      • Function not - Return false if the argument is true and true if the argument is false.
  • Group time -
    • Function now - Return the current time as seconds since epoch.
    • Function format_time - Format a date/time into a string
    • Function parse_time_with_zone - Parse a date/time from a string into seconds since epoc. This version expect to get the time zone as well
    • Function parse_time - Parse a date/time from a string into seconds since epoc
  • Group variables -
    • Function set - Set a variable. The first argument should be the variable name, the second one should be the value and the third
    • Function : - Return the value of a named variable. See set for examples.
    • Function define - Define a new macro definition. The first argument should be the macro definition name, the second one should be macro and the third
    • Function @ - Return the value of a named variable. See define for examples.
  • Group proccess -
    • Function exec - Execute an external proccess and wait for it's completion.
    • Function trigger - Trigger an external proccess and return it's process ID.
  • Group nas - NAS - Number As String, i.e. number that represent as string, like "12" instead of 12.
    • Group nas_arithmetic - Number As String arithmetic functions.
      • Function "||" - If the argument is string as number, return it in a normelize form (to allow a constent uniquness check).
      • Function "+" - If all the arguments are numbers as string number, add them.
      • Function "-" - If there are two numeric arguments, substract the second argument from the first one if both are number.
      • Function "*" - If all the arguments are numbers as string, multiply them.
      • Function "/" - Divide the firs argument by the second argument if both are strings as numbers. If the second argument is "0" will return nothing
      • Function "%" - Find the reminder of the division of the firs argument by the second argument if both are strings as number. If the second argument is "0" will return nothing
      • Function "abs" - If the argument is numnber as string, return it's absolute value as string.
      • Function "round" - If the argument is string as number, return it's rounded.
    • Group nas_compare - Number As String comparison functions.
      • Function "=" - Compare two string as numbers and return true if both are equals.
      • Function "!=" - Compare two number as strings and return true if both are not equals.
      • Function ">" - Compare two numbers as string and return true if the first is greater than the second.
      • Function "<" - Compare two numbers as string and return true if the first is smaller than the second.
      • Function ">=" - Compare two numbers and string and return true if the first is greater or eqauls than the second.
      • Function "<=" - Compare two numbers and string and return true if the first is smaller or eqauls than the second.
      • Function "sort_by" - Sort a list using number as strings.

Use additional help with a function name to see more details about the function.

Function group basic

Function group has those functions and groups:

  • Group flow - Contrlo flow functions
    • Function | - Pipe the output of one function to the next function.
    • Function default - Get the first non empty value.
    • Function ? - Return the second argument if the first argument is true. Return the third argument
  • Group collection - Functions that allow to use list or maps as collections
    • Function get - Get an item from an array by index or from a map by key.
    • Function size - Get the number of element in an array,
    • Function take - Take the first N of element in an array, object of string
    • Function take_last - Take the last N of element in an array, object of string
    • Function sub - If the first argument is a list, creates a new list that start from the second arguments and has the size of the third argument.

Use additional help with a function name to see more details about the function.

Function group flow

Contrlo flow functions Function group has those functions and groups:

  • Function | - Pipe the output of one function to the next function.
  • Function default - Get the first non empty value.
  • Function ? - Return the second argument if the first argument is true. Return the third argument

Use additional help with a function name to see more details about the function.

| function:

Pipe the output of one function to the next function.

Examples:

  • running: (| (get . "key"), (get . 3), (get . "key-2")) for input: {"key": [20, 40, 60, {"key-2": 100}]} will give: 100 Because the first get will return the list in the input, the second one will return the fourth item in the list, and the last one will get the key-2 element in that item.

  • running: (| (get . 1), (+ . 4), (+ . 10), (+ . (len ^^^))) for input: [1, 2, 3, 4] will give: 20 Because The first get will return 2, the second one will add 4, then third one will add 10, and the last one will add the size of the original list, so 2 + 4 + 10 + 4 = 20.

default function:

  • Can also be called as defaults

  • Can also be called as or_else

Get the first non empty value.

Examples:

  • running: (default (get . 1), (get . "key-1"), 22) for input: {"key-1": 1, "key-2": false} will give: 1 Because the first get will return nothing because the input is an object and get should have a string argument, the second get will return 1, which is not a nothing, so it will be the returned value.

  • running: (default (get . 1), (get . "key-3"), 22) for input: {"key-1": 1, "key-2": false} will give: 22 Because all the get will return nothing, so 22 is the first non nothing argument.

  • running: (default (.get 1), (.get 2)) for input: 100 will return nothing

? function:

  • Can also be called as if

Return the second argument if the first argument is true. Return the third argument if the first is false. Return nothing if the first argument is not Boolean

Examples:

  • running: (? true, 12, 22) will give: 12

  • running: (? false, 12, 22) will give: 22

  • running: (? (array? .), #1, #2) for input: [1, 2, 3] will give: 2

  • running: (? (null? .), #1, #2) for input: [1, 2, 3] will give: 3

  • running: (? 100, true, false) will return nothing

Function group collection

Functions that allow to use list or maps as collections Function group has those functions and groups:

  • Function get - Get an item from an array by index or from a map by key.
  • Function size - Get the number of element in an array,
  • Function take - Take the first N of element in an array, object of string
  • Function take_last - Take the last N of element in an array, object of string
  • Function sub - If the first argument is a list, creates a new list that start from the second arguments and has the size of the third argument.

Use additional help with a function name to see more details about the function.

get function:

  • Can also be called as []

Get an item from an array by index or from a map by key.

Examples:

  • running: (get ["a", "b", "c"], 1) will give: "b"

  • running: (get {"key-1": 12, "key-2": 32}, "key-1") will give: 12

  • running: (get ["a", "b", "c"], 100) will return nothing

size function:

  • Can also be called as count

  • Can also be called as length

  • Can also be called as len

Get the number of element in an array, the number of keys in an object or the number of characters in a string.

Examples:

  • running: (size [1, 2, 3, 4]) will give: 4

  • running: (size {"key-1": 1, "key-2": false}) will give: 2

  • running: (size "123") will give: 3

  • running: (size 50) will return nothing Because 50 is not an array, not an object nor a string.

take function:

  • Can also be called as take_first

Take the first N of element in an array, object of string

Examples:

  • running: (take [1, 2, 3, 4], 2) will give: [1, 2]

  • running: (take [1, 2, 3, 4], 6) will give: [1, 2, 3, 4]

  • running: (take {"key-1": 1, "key-2": false}, 1) will give: {"key-1": 1}

  • running: (take {"key-1": 1, "key-2": false}, 3) will give: {"key-1": 1, "key-2": false}

  • running: (take "123", 2) will give: "12"

  • running: (take "123", 20) will give: "123"

  • running: (take 50, 10) will return nothing

  • running: (take "123", false) will return nothing

take_last function:

Take the last N of element in an array, object of string

Examples:

  • running: (take_last [1, 2, 3, 4], 2) will give: [3, 4]

  • running: (take_last [1, 2, 3, 4], 6) will give: [1, 2, 3, 4]

  • running: (take_last {"key-1": 1, "key-2": false}, 1) will give: {"key-2": false}

  • running: (take_last {"key-1": 1, "key-2": false}, 3) will give: {"key-1": 1, "key-2": false}

  • running: (take_last "123", 2) will give: "23"

  • running: (take_last "123", 20) will give: "123"

  • running: (take_last 50, 10) will return nothing

  • running: (take_last "123", false) will return nothing

sub function:

If the first argument is a list, creates a new list that start from the second arguments and has the size of the third argument. If the first argument is an object, creates a new object that start from the second arguments and has the size of the third argument. If the first argument is a string, creates a substring that start from the second arguments and has the size of the third argument.

Examples:

  • running: (sub [1, 2, 3, 4, 5, 6], 2, 3) will give: [3, 4, 5]

  • running: (sub [1, 2, 3, 4], 6, 10) will give: []

  • running: (sub [1, 2, 3, 4], 0, 10) will give: [1, 2, 3, 4]

  • running: (sub [1, 2, 3, 4], 1, 10) will give: [2, 3, 4]

  • running: (sub {"key-1": 1, "key-2": 2, "key-3": 3, "key-4": 4, "key-5": 5, "key-6": 6}, 1, 2) will give: {"key-2": 2, "key-3": 3}

  • running: (sub {"key-1": 1, "key-2": 2, "key-3": 3, "key-4": 4, "key-5": 5, "key-6": 6}, 0, 2) will give: {"key-1": 1, "key-2": 2}

  • running: (sub {"key-1": 1, "key-2": 2, "key-3": 3, "key-4": 4, "key-5": 5, "key-6": 6}, 4, 10) will give: {"key-5": 5, "key-6": 6}

  • running: (sub {"key-1": 1, "key-2": 2, "key-3": 3, "key-4": 4, "key-5": 5, "key-6": 6}, 20, 10) will give: {}

  • running: (sub "123456", 1, 3) will give: "234"

  • running: (sub "123456", 1, 30) will give: "23456"

  • running: (sub "123456", 0, 30) will give: "123456"

  • running: (sub "123456", 20, 30) will give: ""

  • running: (sub "123456", 2, 0) will give: ""

  • running: (sub 50, 0, 10) will return nothing

  • running: (sub "123", false, 10) will return nothing

  • running: (sub "123", 10, {}) will return nothing

Function group types

Function group has those functions and groups:

  • Group check_types - Check the type of a value
    • Function array? - return true if the argument is an array.
    • Function object? - return true if the argument is an object.
    • Function null? - return true if the argument is a null.
    • Function bool? - return true if the argument is a boolean.
    • Function number? - return true if the argument is a number.
    • Function string? - return true if the argument is a string.
    • Function empty? - return true if the argument is nothing.
  • Group cast - Cast object to a predefine type
    • Function as_boolean - return the Boolean if the argument is a Boolean, nothing if it's not.
    • Function as_number - return the number if the argument is a number, nothing if it's not.
    • Function as_string - return the string if the argument is a string, nothing if it's not.
    • Function as_array - return the array if the argument is an array, nothing if it's not.
    • Function as_object - return the object if the argument is an object, nothing if it's not.

Use additional help with a function name to see more details about the function.

Function group check_types

Check the type of a value Function group has those functions and groups:

  • Function array? - return true if the argument is an array.
  • Function object? - return true if the argument is an object.
  • Function null? - return true if the argument is a null.
  • Function bool? - return true if the argument is a boolean.
  • Function number? - return true if the argument is a number.
  • Function string? - return true if the argument is a string.
  • Function empty? - return true if the argument is nothing.

Use additional help with a function name to see more details about the function.

array? function:

  • Can also be called as list?

return true if the argument is an array.

Examples:

  • running: (array? [1, 2, 3, 4]) will give: true

  • running: (array? 312) will give: false

object? function:

  • Can also be called as map?

  • Can also be called as hash?

return true if the argument is an object.

Examples:

  • running: (object? [1, 2, 3, 4]) will give: false

  • running: (object? {"key": 12}) will give: true

null? function:

  • Can also be called as nil?

return true if the argument is a null.

Examples:

  • running: (null? null) will give: true

  • running: (null? 1) will give: false

bool? function:

  • Can also be called as boolean?

return true if the argument is a boolean.

Examples:

  • running: (bool? false) will give: true

  • running: (bool? "false") will give: false

number? function:

return true if the argument is a number.

Examples:

  • running: (number? "str") will give: false

  • running: (number? 1.32) will give: true

string? function:

return true if the argument is a string.

Examples:

  • running: (string? "one") will give: true

  • running: (string? 1.32) will give: false

empty? function:

  • Can also be called as nothing?

return true if the argument is nothing.

Examples:

  • running: (empty? "one") will give: false

  • running: (empty? .key) for input: {} will give: true

Function group cast

Cast object to a predefine type Function group has those functions and groups:

  • Function as_boolean - return the Boolean if the argument is a Boolean, nothing if it's not.
  • Function as_number - return the number if the argument is a number, nothing if it's not.
  • Function as_string - return the string if the argument is a string, nothing if it's not.
  • Function as_array - return the array if the argument is an array, nothing if it's not.
  • Function as_object - return the object if the argument is an object, nothing if it's not.

Use additional help with a function name to see more details about the function.

as_boolean function:

  • Can also be called as as_bool

return the Boolean if the argument is a Boolean, nothing if it's not.

Examples:

  • running: (as_boolean false) will give: false

  • running: (as_boolean true) will give: true

  • running: (as_boolean 312) will return nothing

as_number function:

return the number if the argument is a number, nothing if it's not.

Examples:

  • running: (as_number 100) will give: 100

  • running: (as_number -4.2) will give: -4.2

  • running: (as_number false) will return nothing

as_string function:

return the string if the argument is a string, nothing if it's not.

Examples:

  • running: (as_string "text") will give: "text"

  • running: (as_string 312) will return nothing

as_array function:

  • Can also be called as as_list

return the array if the argument is an array, nothing if it's not.

Examples:

  • running: (as_array [1, 2, 3, 4]) will give: [1, 2, 3, 4]

  • running: (as_array 312) will return nothing

as_object function:

  • Can also be called as as_map

  • Can also be called as as_hash

return the object if the argument is an object, nothing if it's not.

Examples:

  • running: (as_object {"key": 12}) will give: {"key": 12}

  • running: (as_object 312) will return nothing

Function group list

Function group has those functions and groups:

  • Group list_producers - Functions to create lists
    • Function range - Create a new list with items from 0 to the second argument.
    • Function zip - Zip a few list into a new list.
    • Function cross - Join a few list (i.e. Cartesian product) into a new list.
  • Group list_manipluations - Function to manipulatre a list and create a new one
    • Function sort - Sort a list.
    • Function sort_unique - Sort a list and remove duplicates.
    • Function indexed - Map a list into a new list where each element in the new list is an object with two elements:
    • Function push - Add items to a list.
    • Function push_front - Add items to the from of a list.
    • Function reverese - Reveres the order of a list.
    • Function pop - Pop the last item from a list.
    • Function pop_first - Pop the first item from a list.
  • Group list_functional - Functional function over a list of items
    • Function filter - Filter a list.
    • Function group_by - Group items by function.
    • Function sort_by - Sort a list.
    • Function fold - Fold all the items in a list into a new value.
    • Function map - Map a list into a new list using a function.
    • Function flat_map - Flat map a list into a new list using a function.
  • Group list_folding - Function top fold a list into a single item
    • Function sum - Sum all the items in the list.
    • Function any - Check if any of item in a list is ture.
    • Function all - Check if all the items in a list are true.
    • Function join - Join all the items in the list into a String.
    • Function first - The first item in a list.
    • Function last - The last item in a list.

Use additional help with a function name to see more details about the function.

Function group list_producers

Functions to create lists Function group has those functions and groups:

  • Function range - Create a new list with items from 0 to the second argument.
  • Function zip - Zip a few list into a new list.
  • Function cross - Join a few list (i.e. Cartesian product) into a new list.

Use additional help with a function name to see more details about the function.

range function:

Create a new list with items from 0 to the second argument. If the second argument is not a positive integer, return nothing. Be carefull not to use large numbers.

Examples:

  • running: (range 4) will give: [0, 1, 2, 3]

  • running: (range -4) will return nothing

  • running: (range [1, 2, 3, 4]) will return nothing

zip function:

Zip a few list into a new list. All the arguments must be lists. The output will be a list of object, with keys in the format ".i" where i is the index list.

Examples:

  • running: (zip ["one", "two", "three"], [1, 2, 3]) will give: [{".0": "one", ".1": 1}, {".0": "two", ".1": 2}, {".0": "three", ".1": 3}]

  • running: (zip ["one", "two", "three"], [1, 2, 3], [false]) will give: [{".0": "one", ".1": 1, ".2": false}, {".0": "two", ".1": 2}, {".0": "three", ".1": 3}]

  • running: (zip ["one", "two", "three"], [1, 2, 3], 6) will return nothing

cross function:

Join a few list (i.e. Cartesian product) into a new list. All the arguments must be lists. The output will be a list of object, with keys in the format ".i".

Examples:

  • running: (cross ["one", "two"], [1, 2], [true], [false]) will give: [{".0": "one", ".1": 1, ".2": true, ".3": false}, {".0": "two", ".1": 1, ".2": true, ".3": false}, {".0": "one", ".1": 2, ".2": true, ".3": false}, {".0": "two", ".1": 2, ".2": true, ".3": false}]

  • running: (cross ["one", "two", "three"], [1, 2, 3], 6) will return nothing

Function group list_manipluations

Function to manipulatre a list and create a new one Function group has those functions and groups:

  • Function sort - Sort a list.
  • Function sort_unique - Sort a list and remove duplicates.
  • Function indexed - Map a list into a new list where each element in the new list is an object with two elements:
  • Function push - Add items to a list.
  • Function push_front - Add items to the from of a list.
  • Function reverese - Reveres the order of a list.
  • Function pop - Pop the last item from a list.
  • Function pop_first - Pop the first item from a list.

Use additional help with a function name to see more details about the function.

sort function:

  • Can also be called as order

Sort a list. If the first argument is a list, return list sorted.

Examples:

  • running: (sort [1, -2, 3.01, 3.05, -544, 100]) will give: [-544, -2, 1, 3.01, 3.05, 100]

  • running: (sort [1, 2, 3, 2, 3, 3]) will give: [1, 2, 2, 3, 3, 3]

  • running: (sort [null, true, false, {}, [1, 2, 3], "abc", "cde", {"key": 12}]) will give: [null, false, true, "abc", "cde", {}, {"key": 12}, [1, 2, 3]]

  • running: (sort 344) will return nothing

sort_unique function:

  • Can also be called as order_unique

Sort a list and remove duplicates. If the first argument is a list, return list sorted without duplicates.

Examples:

  • running: (sort_unique [1, -2, 3.01, 3.05, -544, 100]) will give: [-544, -2, 1, 3.01, 3.05, 100]

  • running: (sort_unique [1, 2, 3, 2, 3, 3]) will give: [1, 2, 3]

  • running: (sort_unique [null, true, false, {}, [1, 2, 3], "abc", "cde", {"key": 12}]) will give: [null, false, true, "abc", "cde", {}, {"key": 12}, [1, 2, 3]]

  • running: (sort_unique 344) will return nothing

indexed function:

Map a list into a new list where each element in the new list is an object with two elements:

  • index with the index of the element in the list
  • value with the element in the original list Can be used later for filters or map based on index. If the first argument is not a list will return nothing.

Examples:

  • running: (indexed [false, null, 10, {}]) will give: [{"value": false, "index": 0}, {"value": null, "index": 1}, {"value": 10, "index": 2}, {"value": {}, "index": 3}]

  • running: (indexed {}) will return nothing

push function:

  • Can also be called as push_back

Add items to a list. If the first argument is a list, will iterate over all the other arguments and add them to the list if they exists.

Examples:

  • running: (push [], 1, 2, 3, 4) will give: [1, 2, 3, 4]

  • running: (push ["a"], "b") will give: ["a", "b"]

  • running: (push ["a"], (push 1 1)) will give: ["a"]

  • running: (push -4, -4) will return nothing

push_front function:

Add items to the from of a list. If the first argument is a list, will iterate over all the other arguments and add them to the list if they exists.

Examples:

  • running: (push_front [], 1, 2, 3, 4) will give: [4, 3, 2, 1]

  • running: (push_front ["a" ,1 ], "b") will give: ["b", "a", 1]

  • running: (push_front ["a"], (push 1 1)) will give: ["a"]

  • running: (push_front -4, -4) will return nothing

reverese function:

Reveres the order of a list. If the first argument is a list, will iterate over all the other arguments and add them to the list if they exists.

Examples:

  • running: (reverese [1, 2, 3, 4]) will give: [4, 3, 2, 1]

  • running: (reverese 1) will return nothing

pop function:

  • Can also be called as pop_last

Pop the last item from a list. If the argument is a list, will return the list without it's last argument.

Examples:

  • running: (pop [1, 2, 3, 4]) will give: [1, 2, 3]

  • running: (pop []) will give: []

  • running: (pop false) will return nothing

pop_first function:

Pop the first item from a list. If the argument is a list, will return the list without it's first argument.

Examples:

  • running: (pop_first [1, 2, 3, 4]) will give: [2, 3, 4]

  • running: (pop_first []) will give: []

  • running: (pop_first false) will return nothing

Function group list_functional

Functional function over a list of items Function group has those functions and groups:

  • Function filter - Filter a list.
  • Function group_by - Group items by function.
  • Function sort_by - Sort a list.
  • Function fold - Fold all the items in a list into a new value.
  • Function map - Map a list into a new list using a function.
  • Function flat_map - Flat map a list into a new list using a function.

Use additional help with a function name to see more details about the function.

filter function:

Filter a list. If the first argument is a list, return all the values for which the second argument is a list.

Examples:

  • running: (filter [1, 2, 3, 4], true) will give: [1, 2, 3, 4]

  • running: (filter [1, 2, 3, 4], null) will give: []

  • running: (filter [1, 2, 3, 4, "one", null], (string? .)) will give: ["one"] Because only the value "one" is a string.

  • running: (filter ., (.number?)) for input: [1, 2, null, "a", 4] will give: [1, 2, 4]

  • running: (filter {}, true) will return nothing

group_by function:

Group items by function. If the first argument is a list, return list grouped by the second argument.

Examples:

  • running: (group_by ["11", "5", "23", "ab", "1", "", "100", {}], (stringify (len .))) will give: {"2": ["11", "23", "ab"], "1": ["5", "1"], "0": ["", {}], "3": ["100"]}

  • running: (group_by [{"g": "one", "v": 1}, {"g": "two", "v": 2}, {"g": "one", "v": 33}, {"g": "two", "v": false}], .g) will give: {"one": [{"g": "one", "v": 1}, {"g": "one", "v": 33}], "two": [{"g": "two", "v": 2}, {"g": "two", "v": false}]}

  • running: (group_by [{"g": "one", "v": 1}, {"g": "two", "v": 2}, {"g": "one", "v": 33}, {"g": "two", "v": false}], (get . ^.key)) for input: {"key": "g"} will give: {"one": [{"g": "one", "v": 1}, {"g": "one", "v": 33}], "two": [{"g": "two", "v": 2}, {"g": "two", "v": false}]} Because this group the element by a key that is taken from the input ("key").

  • running: (group_by 344, (stringify (len .))) will return nothing

  • running: (group_by ["11", "5", "23", "ab", "1", "", "100", {}], (len .)) will return nothing

sort_by function:

  • Can also be called as order_by

Sort a list. If the first argument is a list, return list sorted by the second argument.

Examples:

  • running: (sort_by ["12345", "5", "23", "abc", "-1-2", ""], (len .)) will give: ["", "5", "23", "abc", "-1-2", "12345"] Because it sort the elements by their length, so the empty string (length zero) is the first.

  • running: (sort_by true, (len .)) will return nothing

  • running: (sort_by ["12345", "", 10], (len .)) will give: [10, "", "12345"] Because the number 10 has no length, so it will be the first.

fold function:

Fold all the items in a list into a new value. The first item should be the list, the second one the initial value and the third one a function that create the fold. If the fuinction has only two arguments, the initial value will not be set. The function will accespt as input an hash with value, index and so_far keys (if the previous run returned nothing, the so_far will be empty).

Examples:

  • running: (fold [1, 10, 0.6], 100, (+ .index .so_far .value)) will give: 114.6 Because the first argument is 100, and then the fold will add all the argument in the list, 100 + 1 + 10 + 0.6 = 114.6.

  • running: (fold [1, 10, 0.6], (? (number? .so_far) (+ .so_far .value) .value)) will give: 11.6 Because if so_far is not a number, we started the fold, so we can return the value, hene this is a simple sum, 1 + 10 + 0.6 = 11.6.

  • running: (fold {}, 1, 2) will return nothing

map function:

Map a list into a new list using a function. If the first argument is a list, activate the second argument on each item and collect into a new list.

Examples:

  • running: (map [1, 2, 3, 4], (+ . 4)) will give: [5, 6, 7, 8]

  • running: (map [1, 2, 3, 4], (.len)) will give: []

  • running: (map [1, 2, 3, "4"], (* . 2)) will give: [2, 4, 6] Because "4" is a string and not a number, so it can't be multiple.

  • running: (map ., (+ 2 .)) for input: [1, 2, null, "a", 4] will give: [3, 4, 6]

  • running: (map .list, (+ ^.add .)) for input: {"list": [1, 2, 3, 4], "add": 12} will give: [13, 14, 15, 16]

  • running: (map ., (map . (+ (len ^^.) .))) for input: [[1, 2, 3, 4], [1, 2, 3], [6, 7]] will give: [[4, 5, 6, 7], [4, 5, 6], [9, 10]] Because it will add the length of the input list (i.e. 3) to each item in each list in that list.

  • running: (map {}, true) will return nothing

flat_map function:

Flat map a list into a new list using a function. If the first argument is a list, activate the second argument on each item, and if that returns a list, add all the items to a new list.

Examples:

  • running: (flat_map ["a,b,c", "d,e", 4, "g"], (split . ",")) will give: ["a", "b", "c", "d", "e", "g"] Because it will split each element by the comma, and return a list of all those lists.

  • running: (flat_map [1, 2, 3, 4], (.len)) will give: []

  • running: (flat_map {}, true) will return nothing

Function group list_folding

Function top fold a list into a single item Function group has those functions and groups:

  • Function sum - Sum all the items in the list.
  • Function any - Check if any of item in a list is ture.
  • Function all - Check if all the items in a list are true.
  • Function join - Join all the items in the list into a String.
  • Function first - The first item in a list.
  • Function last - The last item in a list.

Use additional help with a function name to see more details about the function.

sum function:

Sum all the items in the list. If list have non numeric items, it will return nuthing. One can filter with number? to ensure there is a result.

Examples:

  • running: (sum [1, 5, 1.1]) will give: 7.1

  • running: (sum []) will give: 0

  • running: (sum [1, 5, 1.1, "text"]) will return nothing

any function:

Check if any of item in a list is ture.

Examples:

  • running: (any [1, 5, false, 1.1]) will give: false

  • running: (any (map (range 4) (.= 2))) will give: true Because there is 2 in the list of numbers from 0 to 4.

  • running: (any (map (range 4) (.= 12))) will give: false Because there is no 12 in the list of numbers from 0 to 4.

  • running: (any []) will give: false

  • running: (any [1, 2, true, false, 4]) will give: true

  • running: (any {}) will return nothing

all function:

Check if all the items in a list are true. Will return false if the list is empty .

Examples:

  • running: (all [1, 5, false, 1.1]) will give: false

  • running: (all [true, true, 1, true, true]) will give: false

  • running: (all (map (range 4) (.= 2))) will give: false Because not all the numbers between 0 and 4 are 2.

  • running: (all (map (range 4) (.< 10))) will give: true Because all the numbers between 0 and 4 less than 10.

  • running: (all [true, true, false, true, true]) will give: false

  • running: (all [true, true, true, true]) will give: true

  • running: (all []) will give: false

  • running: (all {}) will return nothing

join function:

Join all the items in the list into a String. If list have non string items, it will return nuthing. If the second argument is ommited, the items will be seperated by comma.

Examples:

  • running: (join ["one", "two", "three"]) will give: "one, two, three"

  • running: (join ["one", "two", "three"], " ; ") will give: "one ; two ; three"

  • running: (join ["one", "two", 3]) will return nothing

first function:

The first item in a list.

Examples:

  • running: (first [1, 5, 1.1]) will give: 1

  • running: (first []) will return nothing

  • running: (first ["text"]) will give: "text"

  • running: (first "text") will return nothing

last function:

The last item in a list.

Examples:

  • running: (last [1, 5, 1.1]) will give: 1.1

  • running: (last []) will return nothing

  • running: (last ["text"]) will give: "text"

  • running: (last "text") will return nothing

Function group object

Function group has those functions and groups:

  • Group object_to_list - Convert an object into a list
    • Function keys - Get the list of keys from an object.
    • Function values - Get the list of values from an object.
    • Function entries - Get the list of all the entries of an obejct. Each item of the list will be an object with key and value entries
  • Group sort_objects - Sort an object
  • Group manipulate_object - Manipulate objects to pruduce a new object
    • Function put - Add a new entry to a map.
    • Function insert_if_absent - Add a new entry to a map if it has no such key.
    • Function replace_if_exists - Add a new entry to a map if it has such key.
  • Group functional_object - Functional function over an object

Use additional help with a function name to see more details about the function.

Function group object_to_list

Convert an object into a list Function group has those functions and groups:

  • Function keys - Get the list of keys from an object.
  • Function values - Get the list of values from an object.
  • Function entries - Get the list of all the entries of an obejct. Each item of the list will be an object with key and value entries

Use additional help with a function name to see more details about the function.

keys function:

Get the list of keys from an object.

Examples:

  • running: (keys {"key-1": 1, "key-2": false}) will give: ["key-1", "key-2"]

  • running: (keys [1, 2, 4]) will return nothing

values function:

  • Can also be called as vals

Get the list of values from an object.

Examples:

  • running: (values {"key-1": 1, "key-2": false}) will give: [1, false]

  • running: (values [1, 2, 4]) will return nothing

entries function:

  • Can also be called as to_list

Get the list of all the entries of an obejct. Each item of the list will be an object with key and value entries

Examples:

  • running: (entries {"key-1": 1, "key-2": false}) will give: [{"value": 1, "key": "key-1"}, {"value": false, "key": "key-2"}]

  • running: (entries [1, 2, 4]) will return nothing

Function group sort_objects

Sort an object Function group has those functions and groups:

Use additional help with a function name to see more details about the function.

sort_by_keys function:

  • Can also be called as order_by_keys

Sort an object by it's keys. If the first argument is an object, return object sorted by it's keys.

Examples:

  • running: (sort_by_keys {"z": 1, "x": 2, "w": null}) will give: {"w": null, "x": 2, "z": 1}

  • running: (sort_by_keys false) will return nothing

sort_by_values function:

  • Can also be called as order_by_values

Sort an object by it's values. If the first argument is an object, return object sorted by it's values.

Examples:

  • running: (sort_by_values {"z": 5, "x": 2, "w": null}) will give: {"w": null, "x": 2, "z": 5}

  • running: (sort_by_values false) will return nothing

sort_by_values_by function:

  • Can also be called as order_by_values_by

Sort an object by a function to it's values. If the first argument is an object, return object sorted by applying the second argumetn to it's values.

Examples:

  • running: (sort_by_values_by {"a": [1, 2, 3], "b": [1], "c": [2], "d": [3], "e": [0, null, 0]}, (.len)) will give: {"b": [1], "c": [2], "d": [3], "a": [1, 2, 3], "e": [0, null, 0]}

  • running: (sort_by_values_by false, .) will return nothing

Function group manipulate_object

Manipulate objects to pruduce a new object Function group has those functions and groups:

  • Function put - Add a new entry to a map.
  • Function insert_if_absent - Add a new entry to a map if it has no such key.
  • Function replace_if_exists - Add a new entry to a map if it has such key.

Use additional help with a function name to see more details about the function.

put function:

  • Can also be called as insert

  • Can also be called as replace

  • Can also be called as {}

Add a new entry to a map. The first argument should be an object. The second argument should be a key. The third argument should be a value. If the object has that key, it will be replaced.

Examples:

  • running: (put {}, "a", 1) will give: {"a": 1}

  • running: (put {"a": 10, "b": 22}, "a", -1) will give: {"a": -1, "b": 22}

  • running: (put [], "a", 1) will return nothing

  • running: (put {}, 1, 1) will return nothing

  • running: (put {}, "1", ({} {} 1 1)) will return nothing

insert_if_absent function:

  • Can also be called as put_if_absent

  • Can also be called as replace_if_absent

  • Can also be called as {-}

Add a new entry to a map if it has no such key. The first argument should be an object. The second argument should be a key. The third argument should be a value. If the object has that key, it will not be replaced.

Examples:

  • running: (insert_if_absent {}, "a", 1) will give: {"a": 1}

  • running: (insert_if_absent {"a": 10, "b": 22}, "a", -1) will give: {"a": 10, "b": 22} Because the object already has a value with the a key.

  • running: (insert_if_absent [], "a", 1) will return nothing

  • running: (insert_if_absent {}, 1, 1) will return nothing

  • running: (insert_if_absent {}, "1", ({} {} 1 1)) will return nothing

replace_if_exists function:

  • Can also be called as insert_if_exists

  • Can also be called as put_if_exists

  • Can also be called as {+}

Add a new entry to a map if it has such key. The first argument should be an object. The second argument should be a key. The third argument should be a value. If the object dosen't has that key, it will not be replaced.

Examples:

  • running: (replace_if_exists {}, "a", 1) will give: {} Because The object has no value for key a.

  • running: (replace_if_exists {"a": 10, "b": 22}, "a", -1) will give: {"a": -1, "b": 22}

  • running: (replace_if_exists [], "a", 1) will return nothing

  • running: (replace_if_exists {}, 1, 1) will return nothing

  • running: (replace_if_exists {}, "1", ({} {} 1 1)) will return nothing

Function group functional_object

Functional function over an object Function group has those functions and groups:

Use additional help with a function name to see more details about the function.

filter_keys function:

Filter an object by keys. The first argument should be the object and the second should be a function to filter the keys by.

Examples:

  • running: (filter_keys {"a": 1, "aa": 2, "aaa": 3, "aaaa": 4}, (>= (len .) 3)) will give: {"aaa": 3, "aaaa": 4} Because it filters all the keys that are shorter than 3 characters.

  • running: (filter_keys [1, 2, 4], false) will return nothing

filter_values function:

Filter an object by values. The first argument should be the object and the second should be a function to filter the values by.

Examples:

  • running: (filter_values {"a": 1, "aa": 2, "aaa": 3, "aaaa": 4}, (= 0 (% . 2))) will give: {"aa": 2, "aaaa": 4} Because it filters all the odds values

  • running: (filter_values [1, 2, 4], false) will return nothing

map_values function:

Map an object values. The first argument should be the object and the second should be a function to map the values to.

Examples:

  • running: (map_values {"a": 1, "aa": 2, "aaa": 3, "aaaa": 4}, (% . 2)) will give: {"a": 1, "aa": 0, "aaa": 1, "aaaa": 0}

  • running: (map_values {"a": 1, "aa": 2, "aaa": 3, "aaaa": 4}, (+ . ^.)) for input: 3 will give: {"a": 4, "aa": 5, "aaa": 6, "aaaa": 7} Because it adds the input (3) to all the values.

  • running: (map_values [1, 2, 4], false) will return nothing

map_keys function:

Map an object keys. The first argument should be the object and the second should be a function to map the keys to.

Examples:

  • running: (map_keys {"a": 1, "aa": 2, "aaa": 3, "aaaa": 4}, (concat "_" .)) will give: {"_a": 1, "_aa": 2, "_aaa": 3, "_aaaa": 4}

  • running: (map_keys {"a": 1, "aa": 2, "aaa": 3, "aaaa": 4}, (concat ^. .)) for input: "prefix-" will give: {"prefix-a": 1, "prefix-aa": 2, "prefix-aaa": 3, "prefix-aaaa": 4}

  • running: (map_keys {"a": 1, "aa": 2, "aaa": 3, "aaaa": 4}, (number? .)) will give: {}

  • running: (map_keys [1, 2, 4], false) will return nothing

Function group number

Function group has those functions and groups:

  • Function + - If all the arguments are number, add them.
  • Function - - If there are two numeric arguments, substract the second argument from the first one if both are number.
  • Function * - If all the arguments are number, multiply them.
  • Function / - Divide the firs argument by the second argument. If the second argument is 0 will return nothing
  • Function % - Find the reminder of the division of the firs argument by the second argument. If the second argument is 0 will return nothing
  • Function abs - If the argument is numeric, return it's absolute value.
  • Function round - If the argument is numeric, return it's rounded.
  • Function ceil - If the argument is numeric, return it's ceiling.
  • Function floor - If the argument is numeric, return it's floor.

Use additional help with a function name to see more details about the function.

+ function:

  • Can also be called as add

  • Can also be called as plus

If all the arguments are number, add them.

Examples:

  • running: (+ 1, 3) will give: 4

  • running: (+ 1, 10, -4.1, 0.1) will give: 7

  • running: (+ 1, 3, false) will return nothing

- function:

  • Can also be called as minus

  • Can also be called as take_away

  • Can also be called as substruct

If there are two numeric arguments, substract the second argument from the first one if both are number. If there is one numeric arguments, return the negative of that number.

Examples:

  • running: (- 100, 3) will give: 97

  • running: (- 10, 3.2) will give: 6.8

  • running: (- 10) will give: -10

  • running: (- -11.3) will give: 11.3

  • running: (- 10, "text") will return nothing

  • running: (- null, 6) will return nothing

  • running: (- {}) will return nothing

* function:

  • Can also be called as times

  • Can also be called as multiple

If all the arguments are number, multiply them.

Examples:

  • running: (* 2, 3) will give: 6

  • running: (* 2, 15, 0.1) will give: 3

  • running: (* 2, true) will return nothing

/ function:

  • Can also be called as divide

Divide the firs argument by the second argument. If the second argument is 0 will return nothing

Examples:

  • running: (/ 100, 25) will give: 4

  • running: (/ 7, 2) will give: 3.5

  • running: (/ 7, 0) will return nothing

  • running: (/ 7, []) will return nothing

  • running: (/ {}, 5) will return nothing

% function:

  • Can also be called as mod

  • Can also be called as modulu

  • Can also be called as reminder

Find the reminder of the division of the firs argument by the second argument. If the second argument is 0 will return nothing

Examples:

  • running: (% 5, 3) will give: 2

  • running: (% 7, 2) will give: 1

  • running: (% 7, 0) will return nothing Because Can not devide by zero.

  • running: (% 10, 7.5) will give: 2.5

  • running: (% 10, -7) will give: 3

  • running: (% -10, 7) will give: -3

  • running: (% -10, -7) will give: -3

  • running: (% 7, false) will return nothing

  • running: (% [1], 4) will return nothing

abs function:

If the argument is numeric, return it's absolute value.

Examples:

  • running: (abs 100) will give: 100

  • running: (abs -100) will give: 100

  • running: (abs 0) will give: 0

  • running: (abs [0]) will return nothing

round function:

If the argument is numeric, return it's rounded.

Examples:

  • running: (round 10.3) will give: 10

  • running: (round -10.3) will give: -10

  • running: (round -10) will give: -10

  • running: (round -10.5) will give: -11

  • running: (round 10.5) will give: 11

  • running: (round [0]) will return nothing

ceil function:

  • Can also be called as ceiling

If the argument is numeric, return it's ceiling.

Examples:

  • running: (ceil 10.3) will give: 11

  • running: (ceil -10.3) will give: -10

  • running: (ceil -10) will give: -10

  • running: (ceil -10.5) will give: -10

  • running: (ceil 10.99) will give: 11

  • running: (ceil [0]) will return nothing

floor function:

If the argument is numeric, return it's floor.

Examples:

  • running: (floor 10.3) will give: 10

  • running: (floor -10.3) will give: -11

  • running: (floor -10) will give: -10

  • running: (floor -10.5) will give: -11

  • running: (floor 10.99) will give: 10

  • running: (floor [0]) will return nothing

Function group string

Function group has those functions and groups:

  • Function env - Get enviornment variable.
  • Function concat - Concat all string arguments.
  • Function head - Extract a string header.
  • Function tail - Extract a string tail.
  • Function split - Split the string into array of strings.
  • Function base63_decode - Decode a BASE64 string and try to convert to a string using UTF8.
  • Group parse_and_stringify - Function to parse from a string or to convert an object into a string
    • Function stringify - Return the JSON represantation of the object.
    • Function parse - Parse a string into JSON value.
    • Function parse_selection - Parse a string into a new selection.
  • Group regex - Regular expression functions
    • Function match - Return true if the first string argument match the second regular expression argument.
    • Function extract_regex_group - Return the capture group within the string.

Use additional help with a function name to see more details about the function.

env function:

  • Can also be called as $

Get enviornment variable.

Examples:

  • running: (env "PATH") can give something like: "\/snap\/bin:\/home\/runner\/.local\/bin:\/opt\/pipx_bin:\/home\/runner\/.cargo\/bin:\/home\/runner\/.config\/composer\/vendor\/bin:\/usr\/local\/.ghcup\/bin:\/home\/runner\/.dotnet\/tools:\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin:\/usr\/games:\/usr\/local\/games:\/snap\/bin"

concat function:

Concat all string arguments.

Examples:

  • running: (concat "one", " ", "two") will give: "one two"

  • running: (concat "one", " ", 2) will return nothing

head function:

Extract a string header. If the first argument is a string and the second argument is a positive integer, the returned value will be a string with the beggining of the first argument. See also take.

Examples:

  • running: (head "test-123", 4) will give: "test"

  • running: (head "test-123", 20) will give: "test-123"

  • running: (head 20, 20) will return nothing

  • running: (head "20", -5) will return nothing

tail function:

Extract a string tail. If the first argument is a string and the second argument is a positive integer, the returned value will be a string with the end of the first argument. See also take_last.

Examples:

  • running: (tail "test-123", 4) will give: "-123"

  • running: (tail "test-123", 20) will give: "test-123"

  • running: (tail 20, 20) will return nothing

  • running: (tail "20", -5) will return nothing

split function:

Split the string into array of strings.

Examples:

  • running: (split "one, two, three", ", ") will give: ["one", "two", "three"]

  • running: (split "a|b|c", "|") will give: ["a", "b", "c"]

base63_decode function:

  • Can also be called as base64

Decode a BASE64 string and try to convert to a string using UTF8. Retunr nothing if the first and only argument is not a valid UTF8 string encoded using BASE64.

Examples:

  • running: (base63_decode "dGVzdA==") will give: "test"

  • running: (base63_decode "test") will return nothing

  • running: (base63_decode "wyg=") will return nothing

  • running: (base63_decode 100) will return nothing

Function group parse_and_stringify

Function to parse from a string or to convert an object into a string Function group has those functions and groups:

  • Function stringify - Return the JSON represantation of the object.
  • Function parse - Parse a string into JSON value.
  • Function parse_selection - Parse a string into a new selection.

Use additional help with a function name to see more details about the function.

stringify function:

Return the JSON represantation of the object.

Examples:

  • running: (stringify true) will give: "true"

  • running: (stringify 1e2) will give: "100"

  • running: (stringify {"key": [1, 2, "3"]}) will give: "{\"key\": [1, 2, \"3\"]}"

  • running: (stringify (+ 10 20)) will give: "30"

parse function:

  • Can also be called as parse_json

Parse a string into JSON value.

Examples:

  • running: (parse "[1, 2, 3, 4]") will give: [1, 2, 3, 4]

  • running: (parse "312") will give: 312

  • running: (parse "{}") will give: {}

  • running: (parse 400) will return nothing

parse_selection function:

Parse a string into a new selection.

Examples:

  • running: (parse_selection "(+ 10 11)") will give: 21

  • running: (parse_selection false) will return nothing

Function group regex

Regular expression functions Function group has those functions and groups:

  • Function match - Return true if the first string argument match the second regular expression argument.
  • Function extract_regex_group - Return the capture group within the string.

Use additional help with a function name to see more details about the function.

match function:

  • Can also be called as match_regex

Return true if the first string argument match the second regular expression argument. For regular expression syntax, see https://docs.rs/regex/latest/regex/#syntax. Use --regular_expression_cache_size so set a cache for compiled regular expressions.

Examples:

  • running: (match "test", "[a-z]+") will give: true

  • running: (match "test", "[0-9]+") will give: false

  • running: (match "test", "[0-9") will return nothing

extract_regex_group function:

Return the capture group within the string. The first argument is expected to be the string to apply the expression on. The second argument is expected to be the string with the regular expression. The third argument is expected to be the group index with in the regular epression (the first group index is one). For regular expression syntax, see https://docs.rs/regex/latest/regex/#syntax. Use --regular_expression_cache_size so set a cache for compiled regular expressions.

Examples:

  • running: (extract_regex_group "hello 200 world", "[a-z ]+([0-9]+)[a-z ]+", 1) will give: "200" Because the regular expression is letters and spaces, group with numbers, and more letter and spaces, so the group is the string "200".

  • running: (extract_regex_group "hello 200 world", "[a-z ]+([0-9]+)[a-z ]+", 20) will return nothing

  • running: (extract_regex_group "hello 200 world", "[a-z ]+([0-9]+)[a-z ]+", 0) will give: "hello 200 world"

  • running: (extract_regex_group "test", "[0-9", 10) will return nothing

Function group boolean

Function group has those functions and groups:

  • Group compare - Compatison functions
    • Function = - Compare two value and return true if both are equals.
    • Function != - Compare two value and return true if both are not equals.
    • Function < - Compare two value and return true if the first is smaller than the second.
    • Function <= - Compare two value and return true if the first is smaller or eqauls than the second.
    • Function >= - Compare two value and return true if the first is greater or eqauls than the second.
    • Function > - Compare two value and return true if the first is greater than the second.
  • Group logical - Logical function
    • Function and - Return true if all the arguments are true, nothing if there is a non boolean argument and false if there is a false argument.
    • Function or - Return true if any of the arguments are true, nothing if there is a non boolean argument and false if all the arguments are false.
    • Function xor - Return true if one, and only one, of the argument is true.
    • Function not - Return false if the argument is true and true if the argument is false.

Use additional help with a function name to see more details about the function.

Function group compare

Compatison functions Function group has those functions and groups:

  • Function = - Compare two value and return true if both are equals.
  • Function != - Compare two value and return true if both are not equals.
  • Function < - Compare two value and return true if the first is smaller than the second.
  • Function <= - Compare two value and return true if the first is smaller or eqauls than the second.
  • Function >= - Compare two value and return true if the first is greater or eqauls than the second.
  • Function > - Compare two value and return true if the first is greater than the second.

Use additional help with a function name to see more details about the function.

= function:

Compare two value and return true if both are equals.

Examples:

  • running: (= 1, 3) will give: false

  • running: (= 1, 1) will give: true

  • running: (= "1", 1) will give: false

  • running: (= "abc", "abc") will give: true

!= function:

  • Can also be called as <>

Compare two value and return true if both are not equals.

Examples:

  • running: (!= 1, 3) will give: true

  • running: (!= 1, 1) will give: false

  • running: (!= "1", 1) will give: true

  • running: (!= "abc", "abc") will give: false

< function:

Compare two value and return true if the first is smaller than the second.

Examples:

  • running: (< 1, 3) will give: true

  • running: (< 1, 1) will give: false

  • running: (< 31, 1) will give: false

<= function:

Compare two value and return true if the first is smaller or eqauls than the second.

Examples:

  • running: (<= 1, 3) will give: true

  • running: (<= 1, 1) will give: true

  • running: (<= 31, 1) will give: false

>= function:

Compare two value and return true if the first is greater or eqauls than the second.

Examples:

  • running: (>= 1, 3) will give: false

  • running: (>= 1, 1) will give: true

  • running: (>= 31, 1) will give: true

> function:

Compare two value and return true if the first is greater than the second.

Examples:

  • running: (> 1, 3) will give: false

  • running: (> 1, 1) will give: false

  • running: (> 31, 1) will give: true

Function group logical

Logical function Function group has those functions and groups:

  • Function and - Return true if all the arguments are true, nothing if there is a non boolean argument and false if there is a false argument.
  • Function or - Return true if any of the arguments are true, nothing if there is a non boolean argument and false if all the arguments are false.
  • Function xor - Return true if one, and only one, of the argument is true.
  • Function not - Return false if the argument is true and true if the argument is false.

Use additional help with a function name to see more details about the function.

and function:

  • Can also be called as &&

Return true if all the arguments are true, nothing if there is a non boolean argument and false if there is a false argument.

Examples:

  • running: (and true, true, true, true) will give: true

  • running: (and true, true, false, true) will give: false

  • running: (and true, true, 12, true) will return nothing

or function:

  • Can also be called as ||

Return true if any of the arguments are true, nothing if there is a non boolean argument and false if all the arguments are false.

Examples:

  • running: (or true, true, true, true) will give: true

  • running: (or false, false, false, true, true, false, true) will give: true

  • running: (or false, false) will give: false

  • running: (or 121, true, true) will return nothing

xor function:

  • Can also be called as ^

Return true if one, and only one, of the argument is true.

Examples:

  • running: (xor true, true) will give: false

  • running: (xor true, false) will give: true

  • running: (xor false, true) will give: true

  • running: (xor false, false) will give: false

  • running: (xor null, false) will return nothing

  • running: (xor true, 12) will return nothing

not function:

  • Can also be called as !

Return false if the argument is true and true if the argument is false.

Examples:

  • running: (not true) will give: false

  • running: (not false) will give: true

  • running: (not (string? 12)) will give: true

  • running: (not 12) will return nothing

Function group time

Function group has those functions and groups:

  • Function now - Return the current time as seconds since epoch.
  • Function format_time - Format a date/time into a string
  • Function parse_time_with_zone - Parse a date/time from a string into seconds since epoc. This version expect to get the time zone as well
  • Function parse_time - Parse a date/time from a string into seconds since epoc

Use additional help with a function name to see more details about the function.

now function:

Return the current time as seconds since epoch.

Examples:

  • running: (now ) can give something like: 1713010695.697608

format_time function:

Format a date/time into a string The first argemnt should be the number of seconds since epoch The second argemnt should be the format as string See details in https://docs.rs/chrono/latest/chrono/format/strftime/index.html.

Examples:

  • running: (format_time 1701611515.3603675, 122) will return nothing

  • running: (format_time {}, "%a %b %e %T %Y - %H:%M:%S%.f") will return nothing

  • running: (format_time 1701611515.3603675, "%a %b %e %T %Y - %H:%M:%S%.f") will give: "Sun Dec 3 13:51:55 2023 - 13:51:55.360367536"

parse_time_with_zone function:

Parse a date/time from a string into seconds since epoc. This version expect to get the time zone as well The first argemnt should be the date The second argemnt should be the format as string See details in https://docs.rs/chrono/latest/chrono/format/strftime/index.html.

Examples:

  • running: (parse_time_with_zone "2023 Dec 3 13:51:55.360 +0500", "%Y %b %d %H:%M:%S%.3f %z") will give: 1701593515.36

  • running: (parse_time_with_zone " 3-Dec-2023 - 13:51:55.360", 122) will return nothing

  • running: (parse_time_with_zone {}, "%v - %T%.3f") will return nothing

parse_time function:

Parse a date/time from a string into seconds since epoc The first argemnt should be the date The second argemnt should be the format as string See details in https://docs.rs/chrono/latest/chrono/format/strftime/index.html.

Examples:

  • running: (parse_time " 3-Dec-2023 - 13:51:55.360", "%v - %T%.3f") will give: 1701611515.36

  • running: (parse_time "2023 Dec 3 13:51:55.360 +0500", "%Y %b %d %H:%M:%S%.3f %z") will give: 1701611515.36

  • running: (parse_time " 3-Dec-2023 - 13:51:55.360", 122) will return nothing

  • running: (parse_time {}, "%v - %T%.3f") will return nothing

Function group variables

Function group has those functions and groups:

  • Function set - Set a variable. The first argument should be the variable name, the second one should be the value and the third
  • Function : - Return the value of a named variable. See set for examples.
  • Function define - Define a new macro definition. The first argument should be the macro definition name, the second one should be macro and the third
  • Function @ - Return the value of a named variable. See define for examples.

Use additional help with a function name to see more details about the function.

set function:

Set a variable. The first argument should be the variable name, the second one should be the value and the third one should be the function to run with the variable.

Examples:

  • running: (set "foo", {"key": 100}, (get (: "foo") "key" )) will give: 100

  • running: (set "foo", {"key": 100}, (get :foo "key" )) will give: 100

  • running: (set 12, {"key": 100}, (get (: "foo") "key" )) will return nothing

  • running: (set "foo", {"key": 100}, (get (: 12) "key" )) will return nothing

: function:

  • Can also be called as get_variable

Return the value of a named variable. See set for examples.

Examples:

  • running: (: "foo") will return nothing

define function:

  • Can also be called as macro

  • Can also be called as def

  • Can also be called as #

Define a new macro definition. The first argument should be the macro definition name, the second one should be macro and the third one should be the function to run with the macro.

Examples:

  • running: (define "add-1", (.+ 1), (map [1, 2, 3] (@ "add-1"))) will give: [2, 3, 4]

  • running: (define "add-1", (.+ 1), (map [1, 2, 3] @add-1)) will give: [2, 3, 4]

  • running: (define "three", 3, (+ 1 @three)) will give: 4

  • running: (define 12, {"key": 100}, (get (: "foo") "key" )) will return nothing

@ function:

Return the value of a named variable. See define for examples.

Examples:

  • running: (@ "foo") will return nothing

Function group proccess

Function group has those functions and groups:

  • Function exec - Execute an external proccess and wait for it's completion.
  • Function trigger - Trigger an external proccess and return it's process ID.

Use additional help with a function name to see more details about the function.

exec function:

  • Can also be called as execute

Execute an external proccess and wait for it's completion. If all the arguments are strings run a process with that list. The result is an object with:

  • success Boolean to indicate if the process was successfull.
  • exit_code The process exit code.
  • raw_stdout The standart output of the process encode as BASE64.
  • stdout The standart output as text.
  • raw_stderr The standart error of the process encode as BASE64.
  • stderr The standart error as text.

Examples:

  • running: (exec "echo", "hello", "world") will give: {"success": true, "exit_code": 0, "raw_stdout": "aGVsbG8gd29ybGQK", "stdout": "hello world\n", "raw_stderr": "", "stderr": ""}

  • running: (exec "cat", "no such file") will give: {"success": false, "exit_code": 1, "raw_stdout": "", "stdout": "", "raw_stderr": "Y2F0OiAnbm8gc3VjaCBmaWxlJzogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQo=", "stderr": "cat: 'no such file': No such file or directory\n"}

  • running: (exec "no such exec") will return nothing

  • running: (exec 23) will return nothing Because 23 is not a string

  • running: (exec "echo", 23) will return nothing Because 23 is not a string

trigger function:

Trigger an external proccess and return it's process ID. If all the arguments are strings run a process with that list. The result is the process ID:

Examples:

  • running: (trigger "echo", "hello", "world") will give: 4371

  • running: (trigger "no such exec") will return nothing

  • running: (trigger 23) will return nothing Because 23 is not a string

  • running: (trigger "echo", 23) will return nothing Because 23 is not a string

Function group nas

NAS - Number As String, i.e. number that represent as string, like "12" instead of 12. Can be used for big numbers and acurate calculates. Function group has those functions and groups:

  • Group nas_arithmetic - Number As String arithmetic functions.
    • Function "||" - If the argument is string as number, return it in a normelize form (to allow a constent uniquness check).
    • Function "+" - If all the arguments are numbers as string number, add them.
    • Function "-" - If there are two numeric arguments, substract the second argument from the first one if both are number.
    • Function "*" - If all the arguments are numbers as string, multiply them.
    • Function "/" - Divide the firs argument by the second argument if both are strings as numbers. If the second argument is "0" will return nothing
    • Function "%" - Find the reminder of the division of the firs argument by the second argument if both are strings as number. If the second argument is "0" will return nothing
    • Function "abs" - If the argument is numnber as string, return it's absolute value as string.
    • Function "round" - If the argument is string as number, return it's rounded.
  • Group nas_compare - Number As String comparison functions.
    • Function "=" - Compare two string as numbers and return true if both are equals.
    • Function "!=" - Compare two number as strings and return true if both are not equals.
    • Function ">" - Compare two numbers as string and return true if the first is greater than the second.
    • Function "<" - Compare two numbers as string and return true if the first is smaller than the second.
    • Function ">=" - Compare two numbers and string and return true if the first is greater or eqauls than the second.
    • Function "<=" - Compare two numbers and string and return true if the first is smaller or eqauls than the second.
    • Function "sort_by" - Sort a list using number as strings.

Use additional help with a function name to see more details about the function.

Function group nas_arithmetic

Number As String arithmetic functions. Function group has those functions and groups:

  • Function "||" - If the argument is string as number, return it in a normelize form (to allow a constent uniquness check).
  • Function "+" - If all the arguments are numbers as string number, add them.
  • Function "-" - If there are two numeric arguments, substract the second argument from the first one if both are number.
  • Function "*" - If all the arguments are numbers as string, multiply them.
  • Function "/" - Divide the firs argument by the second argument if both are strings as numbers. If the second argument is "0" will return nothing
  • Function "%" - Find the reminder of the division of the firs argument by the second argument if both are strings as number. If the second argument is "0" will return nothing
  • Function "abs" - If the argument is numnber as string, return it's absolute value as string.
  • Function "round" - If the argument is string as number, return it's rounded.

Use additional help with a function name to see more details about the function.

"||" function:

  • Can also be called as nas_normelize

If the argument is string as number, return it in a normelize form (to allow a constent uniquness check).

Examples:

  • running: ("||" "1000000") will give: "1E+6"

  • running: ("||" "0.00000000005") will give: "5E-11"

  • running: ("||" "000000000005") will give: "5"

  • running: ("||" "00000000000.5") will give: "0.5"

  • running: ("||" "100e100") will give: "1E+102"

  • running: ("||" 10) will return nothing

"+" function:

  • Can also be called as nas_add

  • Can also be called as nas_plus

If all the arguments are numbers as string number, add them.

Examples:

  • running: ("+" "1", "3") will give: "4"

  • running: ("+" "1", "10", "-4.1", "0.1") will give: "7"

  • running: ("+" "1e999", "1e999", "4e999") will give: "6E+999"

  • running: ("+" "1", "3", "text") will return nothing

  • running: ("+" "1", "3", []) will return nothing

"-" function:

  • Can also be called as nas_minus

  • Can also be called as nas_take_away

  • Can also be called as nas_substruct

If there are two numeric arguments, substract the second argument from the first one if both are number. If there is one numeric arguments, return the negative of that number.

Examples:

  • running: ("-" "100", "3") will give: "97"

  • running: ("-" "10", "3.2") will give: "6.8"

  • running: ("-" "10") will give: "-1E+1"

  • running: ("-" "-11.3") will give: "11.3"

  • running: ("-" "10", "text") will return nothing

  • running: ("-" null, "6") will return nothing

  • running: ("-" {}) will return nothing

"*" function:

  • Can also be called as nas_times

  • Can also be called as nas_multiple

If all the arguments are numbers as string, multiply them.

Examples:

  • running: ("*" "2", "3") will give: "6"

  • running: ("*" "2", "15", "0.1") will give: "3"

  • running: ("*" "1e100", "1e80", "1e300") will give: "1E+480"

  • running: ("*" "2", true) will return nothing

"/" function:

  • Can also be called as nas_divide

Divide the firs argument by the second argument if both are strings as numbers. If the second argument is "0" will return nothing

Examples:

  • running: ("/" "100", "25") will give: "4"

  • running: ("/" "7", "2") will give: "3.5"

  • running: ("/" "1e900", "5e899") will give: "2"

  • running: ("/" "7", []) will return nothing

  • running: ("/" {}, "5") will return nothing

  • running: ("/" "7", "0") will return nothing

"%" function:

  • Can also be called as nas_mod

  • Can also be called as nas_modulu

  • Can also be called as nas_remider

Find the reminder of the division of the firs argument by the second argument if both are strings as number. If the second argument is "0" will return nothing

Examples:

  • running: ("%" "5", "3") will give: "2"

  • running: ("%" "7", "2") will give: "1"

  • running: ("%" "7", "0") will return nothing Because Can not devide by zero.

  • running: ("%" "10", "7.5") will give: "2.5"

  • running: ("%" "10", "-7") will give: "3"

  • running: ("%" "-10", "7") will give: "-3"

  • running: ("%" "-10", "-7") will give: "-3"

  • running: ("%" "7", false) will return nothing

  • running: ("%" [1], "4") will return nothing

"abs" function:

  • Can also be called as nas_abs

If the argument is numnber as string, return it's absolute value as string.

Examples:

  • running: ("abs" "100") will give: "1E+2"

  • running: ("abs" "-100") will give: "1E+2"

  • running: ("abs" "100e500") will give: "1E+502"

  • running: ("abs" 0) will return nothing

  • running: ("abs" "test") will return nothing

"round" function:

  • Can also be called as nas_round

If the argument is string as number, return it's rounded.

Examples:

  • running: ("round" "10.3") will give: "1E+1"

  • running: ("round" "-10.3") will give: "-1E+1"

  • running: ("round" "-10") will give: "-1E+1"

  • running: ("round" "-10.5") will give: "-1E+1"

  • running: ("round" "10.5") will give: "1E+1"

  • running: ("round" 10) will return nothing

Function group nas_compare

Number As String comparison functions. Function group has those functions and groups:

  • Function "=" - Compare two string as numbers and return true if both are equals.
  • Function "!=" - Compare two number as strings and return true if both are not equals.
  • Function ">" - Compare two numbers as string and return true if the first is greater than the second.
  • Function "<" - Compare two numbers as string and return true if the first is smaller than the second.
  • Function ">=" - Compare two numbers and string and return true if the first is greater or eqauls than the second.
  • Function "<=" - Compare two numbers and string and return true if the first is smaller or eqauls than the second.
  • Function "sort_by" - Sort a list using number as strings.

Use additional help with a function name to see more details about the function.

"=" function:

Compare two string as numbers and return true if both are equals.

Examples:

  • running: ("=" "1", "3") will give: false

  • running: ("=" "100000000", "1E+8") will give: true

  • running: ("=" "1", 1) will return nothing

  • running: ("=" 1, "1") will return nothing

"!=" function:

  • Can also be called as "<>"

Compare two number as strings and return true if both are not equals.

Examples:

  • running: ("!=" "1E400", "3E400") will give: true

  • running: ("!=" "1E99", "1E99") will give: false

  • running: ("!=" "1", 1) will return nothing

  • running: ("!=" 1, "1") will return nothing

">" function:

Compare two numbers as string and return true if the first is greater than the second.

Examples:

  • running: (">" "1", "3") will give: false

  • running: (">" "1", "1") will give: false

  • running: (">" "1E+400", "1E+395") will give: true

  • running: (">" "1E+400", 1) will return nothing

  • running: (">" 1, "1E+400") will return nothing

"<" function:

Compare two numbers as string and return true if the first is smaller than the second.

Examples:

  • running: ("<" "1", "3") will give: true

  • running: ("<" "1", "1") will give: false

  • running: ("<" "31", "1") will give: false

  • running: ("<" 31, "1") will return nothing

  • running: ("<" "1", 31) will return nothing

">=" function:

Compare two numbers and string and return true if the first is greater or eqauls than the second.

Examples:

  • running: (">=" "1", "3") will give: false

  • running: (">=" "1", "1") will give: true

  • running: (">=" "1E300", "1E200") will give: true

  • running: (">=" 30, "1E200") will return nothing

  • running: (">=" "1E200", 30) will return nothing

"<=" function:

Compare two numbers and string and return true if the first is smaller or eqauls than the second.

Examples:

  • running: ("<=" "8E250", "3E300") will give: true

  • running: ("<=" "1", "1") will give: true

  • running: ("<=" "31", "1") will give: false

  • running: ("<=" "31", 1) will return nothing

  • running: ("<=" 1, "31") will return nothing

"sort_by" function:

  • Can also be called as "order_by"

  • Can also be called as sort_by_nas

  • Can also be called as order_by_nas

Sort a list using number as strings. If the first argument is a list, return list sorted by the second argument, asuming it's a number as string.

Examples:

  • running: ("sort_by" [ {"key": 0}, {"key": 1, "value": "1"}, {"key": 2, "value": "1E-100"}, {"key": 3, "value": "-1"}, {"key": 4, "value": "1E+100"}, {"key": 5, "value": "9999"}, {"key": 6, "value": "1000"}, {"key": 7, "value": "1.334E2"}, {"key": 8, "value": "1"} ], .value) will give: [{"key": 0}, {"key": 3, "value": "-1"}, {"key": 2, "value": "1E-100"}, {"key": 1, "value": "1"}, {"key": 8, "value": "1"}, {"key": 7, "value": "1.334E2"}, {"key": 6, "value": "1000"}, {"key": 5, "value": "9999"}, {"key": 4, "value": "1E+100"}] Because it sort the elements by their value as numbers.

  • running: ("sort_by" true, (len .)) will return nothing

Examples

There are a few basic example on usage of jawk. For more examples, see here.

Remove non JSON values

In this example we will see how to remove non json values.

If your input looks like

{=
{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
test
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}

{?
}

{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
hello

123

You can use jawk like:

jawk

To produce:

{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
123

Create CSV file with some selected fields

In this example we will see how to create csv file with some selected fields.

If your input looks like

{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Angela", "last": "\u00c1lvarez"}, "location": {"street": {"number": 8355, "name": "Avenida del Planetario"}, "city": "La Palma", "state": "Asturias", "country": "Spain", "postcode": 81328, "coordinates": {"latitude": "-66.5496", "longitude": "173.4816"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "angela.alvarez@example.com", "login": {"uuid": "663bf27a-be49-410e-ad36-2c6fe3bd1610", "username": "angrybutterfly198", "password": "avalanch", "salt": "x05nT1hy", "md5": "70cf6a63245104a088534e47c8c32913", "sha1": "9e9429b6e476b91c3c6c3c8beab8fd4e020c54e7", "sha256": "fb0ac7e1bdcd099de48bb943deb1c8265b071aab01d101999fd6d47cda5ce964"}, "dob": {"date": "1976-06-09T13:50:15.295Z", "age": 47}, "registered": {"date": "2007-07-30T05:55:20.320Z", "age": 16}, "phone": "906-769-799", "cell": "665-054-011", "id": {"name": "DNI", "value": "10772136-H"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/22.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/22.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/22.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Mrs", "first": "Tyra", "last": "Smedstad"}, "location": {"street": {"number": 2784, "name": "Fr\u00f8yas gate"}, "city": "Gata", "state": "Oppland", "country": "Norway", "postcode": "7873", "coordinates": {"latitude": "-71.4445", "longitude": "-140.5351"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "tyra.smedstad@example.com", "login": {"uuid": "8431abbf-cfeb-4818-a121-31cc425a4bef", "username": "beautifulpanda450", "password": "clock", "salt": "tDRoW2LQ", "md5": "40631b2513bd882411393d9dea3af918", "sha1": "f465fe539d4207f65835c7bca92403f962eacb2c", "sha256": "345eb98f85c395a57921656d65f9dc4682aebcfe6636e528e619ce72b8d1516e"}, "dob": {"date": "1984-08-10T19:34:41.505Z", "age": 39}, "registered": {"date": "2012-01-14T14:01:04.612Z", "age": 11}, "phone": "55399992", "cell": "94741076", "id": {"name": "FN", "value": "10088419486"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/78.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/78.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/78.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Isabella", "last": "Mackay"}, "location": {"street": {"number": 811, "name": "9th St"}, "city": "Inverness", "state": "Prince Edward Island", "country": "Canada", "postcode": "X0B 3S7", "coordinates": {"latitude": "50.2028", "longitude": "-36.3905"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "isabella.mackay@example.com", "login": {"uuid": "f4338957-b3cd-49a3-9b6b-7d695ffff3a6", "username": "organicdog306", "password": "finder", "salt": "wNA1dNtD", "md5": "41394bad944f1a38ae7d99b152d668a2", "sha1": "5a397bc12f2a8b9a919b6c11c5b3af34e0399a26", "sha256": "3e58331e19da7b7d091b3284b21d9a8882aa6431ea8192df38e4d00384b1b008"}, "dob": {"date": "1989-03-25T03:57:37.855Z", "age": 34}, "registered": {"date": "2019-12-09T14:34:52.560Z", "age": 4}, "phone": "K24 Q56-4317", "cell": "H43 P90-4248", "id": {"name": "SIN", "value": "601246507"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/37.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/37.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/37.jpg"}, "nat": "CA"}
{"gender": "female", "name": {"title": "Miss", "first": "Phoebe", "last": "Lawson"}, "location": {"street": {"number": 6088, "name": "Stanley Road"}, "city": "Newcastle upon Tyne", "state": "Bedfordshire", "country": "United Kingdom", "postcode": "KK55 0SG", "coordinates": {"latitude": "43.8753", "longitude": "-12.3481"}, "timezone": {"offset": "+10:00", "description": "Eastern Australia, Guam, Vladivostok"}}, "email": "phoebe.lawson@example.com", "login": {"uuid": "21ba9d1a-89c4-4117-b15a-6d0a575923ce", "username": "blackwolf672", "password": "1972", "salt": "GDQogQCY", "md5": "01dfc713aa53fb127d46bdc7befedc13", "sha1": "2d618d08b2cb585300b86881c5b8fe0622c3f311", "sha256": "d6a5bf3a971bdea2ec3ef6357a6da100eb20931670538633695061115109e8a3"}, "dob": {"date": "1982-09-19T14:13:41.640Z", "age": 41}, "registered": {"date": "2008-09-14T06:23:56.507Z", "age": 15}, "phone": "016977 0286", "cell": "07356 649337", "id": {"name": "NINO", "value": "HT 50 56 21 E"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/1.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/1.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/1.jpg"}, "nat": "GB"}
{"gender": "male", "name": {"title": "Mr", "first": "Timeo", "last": "Dubois"}, "location": {"street": {"number": 641, "name": "Rue Duquesne"}, "city": "Le Mans", "state": "H\u00e9rault", "country": "France", "postcode": 29604, "coordinates": {"latitude": "-20.3780", "longitude": "-39.1876"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "timeo.dubois@example.com", "login": {"uuid": "37a99762-b475-49f0-a47d-d7dde3abe42e", "username": "heavyduck382", "password": "death1", "salt": "azZtceGC", "md5": "9f514a2ab55698b558514baad3e83e9b", "sha1": "77b134d925c0743d5c00fce613e2131c0862d30f", "sha256": "3ae0fd5fecf0cbfe44cd9e9bc7f842885cd952ba321fea57060709f45b03fdbd"}, "dob": {"date": "1994-04-30T04:02:25.917Z", "age": 29}, "registered": {"date": "2003-11-03T00:29:57.888Z", "age": 20}, "phone": "04-23-26-34-99", "cell": "06-23-19-78-72", "id": {"name": "INSEE", "value": "1940355952529 29"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/44.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/44.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/44.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Miss", "first": "Teresa", "last": "Soto"}, "location": {"street": {"number": 2962, "name": "Green Lane"}, "city": "Rush", "state": "Cork City", "country": "Ireland", "postcode": 43064, "coordinates": {"latitude": "-66.9461", "longitude": "94.9504"}, "timezone": {"offset": "-12:00", "description": "Eniwetok, Kwajalein"}}, "email": "teresa.soto@example.com", "login": {"uuid": "3b3192e8-8c1a-4b92-aa9b-ac0ca43f6c5a", "username": "beautifulsnake498", "password": "thor", "salt": "Yl3cj0BU", "md5": "c2856e2e41aa0167870aca7b765f2438", "sha1": "3c82e8c53b916f89f8fc71451a99a80aa5bade29", "sha256": "9233d57206dad83294ad8d4f260a697c3b7d2effc61b07f4f47167109d244208"}, "dob": {"date": "1956-12-02T15:49:12.183Z", "age": 67}, "registered": {"date": "2010-01-13T09:38:53.238Z", "age": 13}, "phone": "041-895-6753", "cell": "081-927-6366", "id": {"name": "PPS", "value": "3476278T"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/39.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/39.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/39.jpg"}, "nat": "IE"}
{"gender": "male", "name": {"title": "Mr", "first": "Adalberto", "last": "Tapia"}, "location": {"street": {"number": 7643, "name": "Pasaje Quer\u00e9taro"}, "city": "Tequesquitl\u00e1n", "state": "Veracruz", "country": "Mexico", "postcode": 19392, "coordinates": {"latitude": "11.1359", "longitude": "14.4986"}, "timezone": {"offset": "-4:00", "description": "Atlantic Time (Canada), Caracas, La Paz"}}, "email": "adalberto.tapia@example.com", "login": {"uuid": "cd7268cb-0137-4a90-be10-5bc7ac80f9c8", "username": "yellowleopard669", "password": "carpet", "salt": "cYZqQqoR", "md5": "3c508daf3fb63ec6ab7e8267677789cd", "sha1": "29b5562a2e1c57564a511fe7b8ab31c6d46d9770", "sha256": "0a50edaf32ac09be3b5b385a7fe46cd12a8511d889f075725740fc4431c76125"}, "dob": {"date": "1987-10-26T20:21:42.260Z", "age": 36}, "registered": {"date": "2002-06-06T16:11:31.428Z", "age": 21}, "phone": "(636) 179 4319", "cell": "(620) 953 6065", "id": {"name": "NSS", "value": "58 72 21 6051 4"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/24.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/24.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/24.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Mrs", "first": "Yolanda", "last": "Vela"}, "location": {"street": {"number": 4235, "name": "Circunvalaci\u00f3n Norte Ontiveros"}, "city": "Santa Elena (Francisco Zarco)", "state": "Zacatecas", "country": "Mexico", "postcode": 19311, "coordinates": {"latitude": "-86.2815", "longitude": "-56.8200"}, "timezone": {"offset": "+1:00", "description": "Brussels, Copenhagen, Madrid, Paris"}}, "email": "yolanda.vela@example.com", "login": {"uuid": "87b31a7d-02fa-4a50-a1a5-bd04cfed84dc", "username": "silverlion570", "password": "pointer", "salt": "FAIfhUkJ", "md5": "de4fdd1563141be4260e4bfb7d1e0934", "sha1": "37fc20366cec7a35ad2b8a34692112562aa5038a", "sha256": "90294aa678e54f47d3854ec7f45663943a39f8b13d003865179fd8793a06afa2"}, "dob": {"date": "1954-08-06T04:27:10.482Z", "age": 69}, "registered": {"date": "2015-03-14T09:44:06.448Z", "age": 8}, "phone": "(691) 324 7123", "cell": "(697) 831 1314", "id": {"name": "NSS", "value": "27 66 22 7575 0"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/73.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/73.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/73.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Miss", "first": "\u067e\u0627\u0631\u0645\u06cc\u0633", "last": "\u062d\u06cc\u062f\u0631\u06cc"}, "location": {"street": {"number": 9683, "name": "\u0645\u06cc\u062f\u0627\u0646 \u0634\u0645\u0634\u06cc\u0631\u06cc"}, "city": "\u0642\u0627\u0626\u0645\u200c\u0634\u0647\u0631", "state": "\u0627\u0631\u062f\u0628\u06cc\u0644", "country": "Iran", "postcode": 15785, "coordinates": {"latitude": "-28.5413", "longitude": "-55.7982"}, "timezone": {"offset": "+4:00", "description": "Abu Dhabi, Muscat, Baku, Tbilisi"}}, "email": "prmys.hydry@example.com", "login": {"uuid": "7478b071-39b3-443e-9321-386aee5abfdc", "username": "crazywolf415", "password": "wildcard", "salt": "cPF8bhqW", "md5": "b7224d92917116ea2bfda6b779c2a888", "sha1": "c3ebee3d2983acc86a6f0f0d83640d28d3966a3c", "sha256": "762751b82fe8708e42876cc5e1c9411ef7f820ffd337afb400c22fc6b0cf46d3"}, "dob": {"date": "1972-06-09T00:59:53.966Z", "age": 51}, "registered": {"date": "2016-05-31T13:19:02.232Z", "age": 7}, "phone": "023-36980589", "cell": "0914-858-9022", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/33.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/33.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/33.jpg"}, "nat": "IR"}
{"gender": "male", "name": {"title": "Mr", "first": "Gordon", "last": "Boller"}, "location": {"street": {"number": 8049, "name": "Tannenweg"}, "city": "Petershagen", "state": "Th\u00fcringen", "country": "Germany", "postcode": 47252, "coordinates": {"latitude": "-42.8514", "longitude": "160.5128"}, "timezone": {"offset": "-3:00", "description": "Brazil, Buenos Aires, Georgetown"}}, "email": "gordon.boller@example.com", "login": {"uuid": "a1455a69-b033-4398-9f10-b14da6240107", "username": "beautifulbutterfly315", "password": "marvin", "salt": "bDwIxU0E", "md5": "1f570d5973d860a10e8a3b121153348c", "sha1": "9f95df3a63512c9d9ef26cd76a37cc78a3a00e0c", "sha256": "3d887130990cdb96baefb88260d085f9755aabf89f912d81238b708a0c47b27c"}, "dob": {"date": "1972-09-11T10:13:54.296Z", "age": 51}, "registered": {"date": "2021-03-23T13:53:23.684Z", "age": 2}, "phone": "0306-8436446", "cell": "0179-0387220", "id": {"name": "SVNR", "value": "70 110972 B 280"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/10.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/10.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/10.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mrs", "first": "Silvija", "last": "Jevremovi\u0107"}, "location": {"street": {"number": 7578, "name": "Kneza Palalije"}, "city": "Zve\u010dan", "state": "Rasina", "country": "Serbia", "postcode": 83539, "coordinates": {"latitude": "85.9791", "longitude": "44.8104"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "silvija.jevremovic@example.com", "login": {"uuid": "52f11af1-3a3f-4a9a-abb2-49bed0a599a6", "username": "sadelephant446", "password": "madness", "salt": "PMTZhdZP", "md5": "ec41873a6304102df36f6c995584b52a", "sha1": "985e48062b108e1088b95d74689a23e905b72853", "sha256": "3892f6dbee70471dbd21dead4076a3ef8d5583349630f7b76712809d040e68f3"}, "dob": {"date": "1965-03-08T20:08:57.497Z", "age": 58}, "registered": {"date": "2004-02-07T04:43:54.506Z", "age": 19}, "phone": "032-7888-458", "cell": "062-3160-899", "id": {"name": "SID", "value": "355414676"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/70.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/70.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/70.jpg"}, "nat": "RS"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Josephine", "last": "Blanchard"}, "location": {"street": {"number": 1362, "name": "Avenue Goerges Cl\u00e9menceau"}, "city": "Gisikon", "state": "Graub\u00fcnden", "country": "Switzerland", "postcode": 5472, "coordinates": {"latitude": "72.2107", "longitude": "-52.6990"}, "timezone": {"offset": "+3:00", "description": "Baghdad, Riyadh, Moscow, St. Petersburg"}}, "email": "josephine.blanchard@example.com", "login": {"uuid": "6b5b3145-f924-4e65-9305-66890a41c582", "username": "greenostrich767", "password": "serenity", "salt": "6fG2jx31", "md5": "2c96796ea5caec55d88feb2404b57345", "sha1": "36bc76ea90bab3fb8f2ce2078a53e02dca259bcb", "sha256": "425de57999ed3eee7bbe73c2a63759349df6e9a6844a0c45930e5931f783225c"}, "dob": {"date": "1987-03-17T03:09:53.399Z", "age": 36}, "registered": {"date": "2008-03-22T15:36:29.315Z", "age": 15}, "phone": "075 881 90 80", "cell": "075 220 90 42", "id": {"name": "AVS", "value": "756.1304.6729.13"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/69.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/69.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/69.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Klaus-Peter", "last": "Koopmann"}, "location": {"street": {"number": 1666, "name": "Fliederweg"}, "city": "Bad Breisig", "state": "Brandenburg", "country": "Germany", "postcode": 98467, "coordinates": {"latitude": "29.5464", "longitude": "-176.7671"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "klaus-peter.koopmann@example.com", "login": {"uuid": "5874f794-b909-4a31-a63e-3d1e67306d50", "username": "greenbutterfly873", "password": "1qaz2wsx", "salt": "9s8rf1wp", "md5": "5f0a035bf8cf2bb04a40558e050f66a9", "sha1": "fa792636fab99c12f01a50f2f2e7e49a4163be31", "sha256": "d9b7543536745b0f350e2e2b307dcdd7982560f45491ddf6376aa8cc7bee0046"}, "dob": {"date": "1947-01-11T16:27:22.136Z", "age": 76}, "registered": {"date": "2012-10-12T13:52:51.428Z", "age": 11}, "phone": "0397-8016035", "cell": "0171-6169370", "id": {"name": "SVNR", "value": "26 110147 K 481"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/42.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/42.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/42.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
{"gender": "female", "name": {"title": "Miss", "first": "Nuria", "last": "Castro"}, "location": {"street": {"number": 5282, "name": "Calle de Ferraz"}, "city": "Torrej\u00f3n de Ardoz", "state": "Andaluc\u00eda", "country": "Spain", "postcode": 37767, "coordinates": {"latitude": "43.8560", "longitude": "14.7635"}, "timezone": {"offset": "-10:00", "description": "Hawaii"}}, "email": "nuria.castro@example.com", "login": {"uuid": "5f4ba5aa-56b9-43cd-a00d-4caee10dd4a4", "username": "purplezebra152", "password": "bruins", "salt": "Pi3t6GZr", "md5": "5947c672fe6c76a6e0b5200cfc138552", "sha1": "4e24b9b79123486b39e8f22b944f710edc55794d", "sha256": "3c31e598f81d268eee1aed4865239405d780b8cb39d926a23d6a219d9caac3a1"}, "dob": {"date": "1962-02-08T13:52:48.490Z", "age": 61}, "registered": {"date": "2009-03-29T08:26:01.351Z", "age": 14}, "phone": "916-406-577", "cell": "660-465-465", "id": {"name": "DNI", "value": "76499924-Y"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/32.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/32.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/32.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Miss", "first": "Vildan", "last": "Ke\u00e7eci"}, "location": {"street": {"number": 9205, "name": "Anafartalar Cd"}, "city": "Kayseri", "state": "Hakk\u00e2ri", "country": "Turkey", "postcode": 81969, "coordinates": {"latitude": "-46.5612", "longitude": "72.3140"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "vildan.kececi@example.com", "login": {"uuid": "3f8ac036-92bf-4751-b40e-85a0a99db442", "username": "blackkoala424", "password": "jazzman", "salt": "tyGQ4eeC", "md5": "ff42dc5d8acc6943426e95c22d55e3b1", "sha1": "c2d78a0151fbb0510f694d9746b362f51219dbe3", "sha256": "5d9e0a871bff32164cbac725667823716aae06214a3b2152f9709be0895a2f05"}, "dob": {"date": "1993-12-31T05:09:07.248Z", "age": 29}, "registered": {"date": "2006-09-16T11:22:47.710Z", "age": 17}, "phone": "(810)-384-4129", "cell": "(334)-315-1134", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/40.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/40.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/40.jpg"}, "nat": "TR"}
{"gender": "female", "name": {"title": "Miss", "first": "Estelle", "last": "Fournier"}, "location": {"street": {"number": 6943, "name": "Rue du Village"}, "city": "Lille", "state": "Guadeloupe", "country": "France", "postcode": 69236, "coordinates": {"latitude": "18.5340", "longitude": "-167.6684"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "estelle.fournier@example.com", "login": {"uuid": "82798fe7-766c-4f18-a811-c29bc882ace2", "username": "yellowleopard981", "password": "queenie", "salt": "u1CrF1ty", "md5": "ecef44528e525545c6bbc0fc5aef19dc", "sha1": "e24efb4dcaf76e2da48afd4e19ab2da9b696272b", "sha256": "c536fc296d51befa7e4071a47a84dd5d109a0c2ac4b6bd5d00fd62e9f0cd7a5e"}, "dob": {"date": "1955-10-20T22:04:12.919Z", "age": 68}, "registered": {"date": "2010-04-29T18:24:11.009Z", "age": 13}, "phone": "03-31-09-24-73", "cell": "06-29-61-45-93", "id": {"name": "INSEE", "value": "2550991537258 58"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/91.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/91.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/91.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Mrs", "first": "Lucy", "last": "Cruz"}, "location": {"street": {"number": 7477, "name": "Hamilton Ave"}, "city": "Milwaukee", "state": "Delaware", "country": "United States", "postcode": 43570, "coordinates": {"latitude": "-30.9476", "longitude": "-88.9587"}, "timezone": {"offset": "+2:00", "description": "Kaliningrad, South Africa"}}, "email": "lucy.cruz@example.com", "login": {"uuid": "7c145ebd-4226-4173-ba93-3c8c919bd219", "username": "yellowladybug766", "password": "proxy", "salt": "FBNNudA4", "md5": "973785a35911960c3071b2dd77d43dfd", "sha1": "a9b0177c64d92dccac7a8788c990e8b025de31f2", "sha256": "8d9e23e8a9f6f17d04a95a72a1c224f0a30248a3b0dab658c8c6225611a6c8b6"}, "dob": {"date": "1951-08-05T18:31:29.220Z", "age": 72}, "registered": {"date": "2012-11-17T23:26:37.180Z", "age": 11}, "phone": "(743) 507-6493", "cell": "(288) 637-4718", "id": {"name": "SSN", "value": "112-75-7255"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/8.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/8.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/8.jpg"}, "nat": "US"}

You can use jawk like:

jawk \
    --select '.name.first=First Name' \
    --select '.name.last=Last Name' \
    --output-style csv

To produce:

"First Name", "Last Name"
"Fredrikke", "Furseth"
"Angela", "Álvarez"
"Tyra", "Smedstad"
"Isabella", "Mackay"
"Phoebe", "Lawson"
"Timeo", "Dubois"
"Teresa", "Soto"
"Adalberto", "Tapia"
"Yolanda", "Vela"
"پارمیس", "حیدری"
"Gordon", "Boller"
"Silvija", "Jevremović"
"Josephine", "Blanchard"
"Klaus-Peter", "Koopmann"
"Margrit", "Sanchez"
"Fabio", "Berden"
"Nuria", "Castro"
"Vildan", "Keçeci"
"Estelle", "Fournier"
"Lucy", "Cruz"

Filter values

In this example we will see how to filter values.

If your input looks like

{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Angela", "last": "\u00c1lvarez"}, "location": {"street": {"number": 8355, "name": "Avenida del Planetario"}, "city": "La Palma", "state": "Asturias", "country": "Spain", "postcode": 81328, "coordinates": {"latitude": "-66.5496", "longitude": "173.4816"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "angela.alvarez@example.com", "login": {"uuid": "663bf27a-be49-410e-ad36-2c6fe3bd1610", "username": "angrybutterfly198", "password": "avalanch", "salt": "x05nT1hy", "md5": "70cf6a63245104a088534e47c8c32913", "sha1": "9e9429b6e476b91c3c6c3c8beab8fd4e020c54e7", "sha256": "fb0ac7e1bdcd099de48bb943deb1c8265b071aab01d101999fd6d47cda5ce964"}, "dob": {"date": "1976-06-09T13:50:15.295Z", "age": 47}, "registered": {"date": "2007-07-30T05:55:20.320Z", "age": 16}, "phone": "906-769-799", "cell": "665-054-011", "id": {"name": "DNI", "value": "10772136-H"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/22.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/22.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/22.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Mrs", "first": "Tyra", "last": "Smedstad"}, "location": {"street": {"number": 2784, "name": "Fr\u00f8yas gate"}, "city": "Gata", "state": "Oppland", "country": "Norway", "postcode": "7873", "coordinates": {"latitude": "-71.4445", "longitude": "-140.5351"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "tyra.smedstad@example.com", "login": {"uuid": "8431abbf-cfeb-4818-a121-31cc425a4bef", "username": "beautifulpanda450", "password": "clock", "salt": "tDRoW2LQ", "md5": "40631b2513bd882411393d9dea3af918", "sha1": "f465fe539d4207f65835c7bca92403f962eacb2c", "sha256": "345eb98f85c395a57921656d65f9dc4682aebcfe6636e528e619ce72b8d1516e"}, "dob": {"date": "1984-08-10T19:34:41.505Z", "age": 39}, "registered": {"date": "2012-01-14T14:01:04.612Z", "age": 11}, "phone": "55399992", "cell": "94741076", "id": {"name": "FN", "value": "10088419486"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/78.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/78.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/78.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Isabella", "last": "Mackay"}, "location": {"street": {"number": 811, "name": "9th St"}, "city": "Inverness", "state": "Prince Edward Island", "country": "Canada", "postcode": "X0B 3S7", "coordinates": {"latitude": "50.2028", "longitude": "-36.3905"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "isabella.mackay@example.com", "login": {"uuid": "f4338957-b3cd-49a3-9b6b-7d695ffff3a6", "username": "organicdog306", "password": "finder", "salt": "wNA1dNtD", "md5": "41394bad944f1a38ae7d99b152d668a2", "sha1": "5a397bc12f2a8b9a919b6c11c5b3af34e0399a26", "sha256": "3e58331e19da7b7d091b3284b21d9a8882aa6431ea8192df38e4d00384b1b008"}, "dob": {"date": "1989-03-25T03:57:37.855Z", "age": 34}, "registered": {"date": "2019-12-09T14:34:52.560Z", "age": 4}, "phone": "K24 Q56-4317", "cell": "H43 P90-4248", "id": {"name": "SIN", "value": "601246507"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/37.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/37.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/37.jpg"}, "nat": "CA"}
{"gender": "female", "name": {"title": "Miss", "first": "Phoebe", "last": "Lawson"}, "location": {"street": {"number": 6088, "name": "Stanley Road"}, "city": "Newcastle upon Tyne", "state": "Bedfordshire", "country": "United Kingdom", "postcode": "KK55 0SG", "coordinates": {"latitude": "43.8753", "longitude": "-12.3481"}, "timezone": {"offset": "+10:00", "description": "Eastern Australia, Guam, Vladivostok"}}, "email": "phoebe.lawson@example.com", "login": {"uuid": "21ba9d1a-89c4-4117-b15a-6d0a575923ce", "username": "blackwolf672", "password": "1972", "salt": "GDQogQCY", "md5": "01dfc713aa53fb127d46bdc7befedc13", "sha1": "2d618d08b2cb585300b86881c5b8fe0622c3f311", "sha256": "d6a5bf3a971bdea2ec3ef6357a6da100eb20931670538633695061115109e8a3"}, "dob": {"date": "1982-09-19T14:13:41.640Z", "age": 41}, "registered": {"date": "2008-09-14T06:23:56.507Z", "age": 15}, "phone": "016977 0286", "cell": "07356 649337", "id": {"name": "NINO", "value": "HT 50 56 21 E"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/1.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/1.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/1.jpg"}, "nat": "GB"}
{"gender": "male", "name": {"title": "Mr", "first": "Timeo", "last": "Dubois"}, "location": {"street": {"number": 641, "name": "Rue Duquesne"}, "city": "Le Mans", "state": "H\u00e9rault", "country": "France", "postcode": 29604, "coordinates": {"latitude": "-20.3780", "longitude": "-39.1876"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "timeo.dubois@example.com", "login": {"uuid": "37a99762-b475-49f0-a47d-d7dde3abe42e", "username": "heavyduck382", "password": "death1", "salt": "azZtceGC", "md5": "9f514a2ab55698b558514baad3e83e9b", "sha1": "77b134d925c0743d5c00fce613e2131c0862d30f", "sha256": "3ae0fd5fecf0cbfe44cd9e9bc7f842885cd952ba321fea57060709f45b03fdbd"}, "dob": {"date": "1994-04-30T04:02:25.917Z", "age": 29}, "registered": {"date": "2003-11-03T00:29:57.888Z", "age": 20}, "phone": "04-23-26-34-99", "cell": "06-23-19-78-72", "id": {"name": "INSEE", "value": "1940355952529 29"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/44.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/44.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/44.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Miss", "first": "Teresa", "last": "Soto"}, "location": {"street": {"number": 2962, "name": "Green Lane"}, "city": "Rush", "state": "Cork City", "country": "Ireland", "postcode": 43064, "coordinates": {"latitude": "-66.9461", "longitude": "94.9504"}, "timezone": {"offset": "-12:00", "description": "Eniwetok, Kwajalein"}}, "email": "teresa.soto@example.com", "login": {"uuid": "3b3192e8-8c1a-4b92-aa9b-ac0ca43f6c5a", "username": "beautifulsnake498", "password": "thor", "salt": "Yl3cj0BU", "md5": "c2856e2e41aa0167870aca7b765f2438", "sha1": "3c82e8c53b916f89f8fc71451a99a80aa5bade29", "sha256": "9233d57206dad83294ad8d4f260a697c3b7d2effc61b07f4f47167109d244208"}, "dob": {"date": "1956-12-02T15:49:12.183Z", "age": 67}, "registered": {"date": "2010-01-13T09:38:53.238Z", "age": 13}, "phone": "041-895-6753", "cell": "081-927-6366", "id": {"name": "PPS", "value": "3476278T"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/39.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/39.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/39.jpg"}, "nat": "IE"}
{"gender": "male", "name": {"title": "Mr", "first": "Adalberto", "last": "Tapia"}, "location": {"street": {"number": 7643, "name": "Pasaje Quer\u00e9taro"}, "city": "Tequesquitl\u00e1n", "state": "Veracruz", "country": "Mexico", "postcode": 19392, "coordinates": {"latitude": "11.1359", "longitude": "14.4986"}, "timezone": {"offset": "-4:00", "description": "Atlantic Time (Canada), Caracas, La Paz"}}, "email": "adalberto.tapia@example.com", "login": {"uuid": "cd7268cb-0137-4a90-be10-5bc7ac80f9c8", "username": "yellowleopard669", "password": "carpet", "salt": "cYZqQqoR", "md5": "3c508daf3fb63ec6ab7e8267677789cd", "sha1": "29b5562a2e1c57564a511fe7b8ab31c6d46d9770", "sha256": "0a50edaf32ac09be3b5b385a7fe46cd12a8511d889f075725740fc4431c76125"}, "dob": {"date": "1987-10-26T20:21:42.260Z", "age": 36}, "registered": {"date": "2002-06-06T16:11:31.428Z", "age": 21}, "phone": "(636) 179 4319", "cell": "(620) 953 6065", "id": {"name": "NSS", "value": "58 72 21 6051 4"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/24.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/24.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/24.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Mrs", "first": "Yolanda", "last": "Vela"}, "location": {"street": {"number": 4235, "name": "Circunvalaci\u00f3n Norte Ontiveros"}, "city": "Santa Elena (Francisco Zarco)", "state": "Zacatecas", "country": "Mexico", "postcode": 19311, "coordinates": {"latitude": "-86.2815", "longitude": "-56.8200"}, "timezone": {"offset": "+1:00", "description": "Brussels, Copenhagen, Madrid, Paris"}}, "email": "yolanda.vela@example.com", "login": {"uuid": "87b31a7d-02fa-4a50-a1a5-bd04cfed84dc", "username": "silverlion570", "password": "pointer", "salt": "FAIfhUkJ", "md5": "de4fdd1563141be4260e4bfb7d1e0934", "sha1": "37fc20366cec7a35ad2b8a34692112562aa5038a", "sha256": "90294aa678e54f47d3854ec7f45663943a39f8b13d003865179fd8793a06afa2"}, "dob": {"date": "1954-08-06T04:27:10.482Z", "age": 69}, "registered": {"date": "2015-03-14T09:44:06.448Z", "age": 8}, "phone": "(691) 324 7123", "cell": "(697) 831 1314", "id": {"name": "NSS", "value": "27 66 22 7575 0"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/73.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/73.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/73.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Miss", "first": "\u067e\u0627\u0631\u0645\u06cc\u0633", "last": "\u062d\u06cc\u062f\u0631\u06cc"}, "location": {"street": {"number": 9683, "name": "\u0645\u06cc\u062f\u0627\u0646 \u0634\u0645\u0634\u06cc\u0631\u06cc"}, "city": "\u0642\u0627\u0626\u0645\u200c\u0634\u0647\u0631", "state": "\u0627\u0631\u062f\u0628\u06cc\u0644", "country": "Iran", "postcode": 15785, "coordinates": {"latitude": "-28.5413", "longitude": "-55.7982"}, "timezone": {"offset": "+4:00", "description": "Abu Dhabi, Muscat, Baku, Tbilisi"}}, "email": "prmys.hydry@example.com", "login": {"uuid": "7478b071-39b3-443e-9321-386aee5abfdc", "username": "crazywolf415", "password": "wildcard", "salt": "cPF8bhqW", "md5": "b7224d92917116ea2bfda6b779c2a888", "sha1": "c3ebee3d2983acc86a6f0f0d83640d28d3966a3c", "sha256": "762751b82fe8708e42876cc5e1c9411ef7f820ffd337afb400c22fc6b0cf46d3"}, "dob": {"date": "1972-06-09T00:59:53.966Z", "age": 51}, "registered": {"date": "2016-05-31T13:19:02.232Z", "age": 7}, "phone": "023-36980589", "cell": "0914-858-9022", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/33.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/33.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/33.jpg"}, "nat": "IR"}
{"gender": "male", "name": {"title": "Mr", "first": "Gordon", "last": "Boller"}, "location": {"street": {"number": 8049, "name": "Tannenweg"}, "city": "Petershagen", "state": "Th\u00fcringen", "country": "Germany", "postcode": 47252, "coordinates": {"latitude": "-42.8514", "longitude": "160.5128"}, "timezone": {"offset": "-3:00", "description": "Brazil, Buenos Aires, Georgetown"}}, "email": "gordon.boller@example.com", "login": {"uuid": "a1455a69-b033-4398-9f10-b14da6240107", "username": "beautifulbutterfly315", "password": "marvin", "salt": "bDwIxU0E", "md5": "1f570d5973d860a10e8a3b121153348c", "sha1": "9f95df3a63512c9d9ef26cd76a37cc78a3a00e0c", "sha256": "3d887130990cdb96baefb88260d085f9755aabf89f912d81238b708a0c47b27c"}, "dob": {"date": "1972-09-11T10:13:54.296Z", "age": 51}, "registered": {"date": "2021-03-23T13:53:23.684Z", "age": 2}, "phone": "0306-8436446", "cell": "0179-0387220", "id": {"name": "SVNR", "value": "70 110972 B 280"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/10.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/10.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/10.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mrs", "first": "Silvija", "last": "Jevremovi\u0107"}, "location": {"street": {"number": 7578, "name": "Kneza Palalije"}, "city": "Zve\u010dan", "state": "Rasina", "country": "Serbia", "postcode": 83539, "coordinates": {"latitude": "85.9791", "longitude": "44.8104"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "silvija.jevremovic@example.com", "login": {"uuid": "52f11af1-3a3f-4a9a-abb2-49bed0a599a6", "username": "sadelephant446", "password": "madness", "salt": "PMTZhdZP", "md5": "ec41873a6304102df36f6c995584b52a", "sha1": "985e48062b108e1088b95d74689a23e905b72853", "sha256": "3892f6dbee70471dbd21dead4076a3ef8d5583349630f7b76712809d040e68f3"}, "dob": {"date": "1965-03-08T20:08:57.497Z", "age": 58}, "registered": {"date": "2004-02-07T04:43:54.506Z", "age": 19}, "phone": "032-7888-458", "cell": "062-3160-899", "id": {"name": "SID", "value": "355414676"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/70.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/70.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/70.jpg"}, "nat": "RS"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Josephine", "last": "Blanchard"}, "location": {"street": {"number": 1362, "name": "Avenue Goerges Cl\u00e9menceau"}, "city": "Gisikon", "state": "Graub\u00fcnden", "country": "Switzerland", "postcode": 5472, "coordinates": {"latitude": "72.2107", "longitude": "-52.6990"}, "timezone": {"offset": "+3:00", "description": "Baghdad, Riyadh, Moscow, St. Petersburg"}}, "email": "josephine.blanchard@example.com", "login": {"uuid": "6b5b3145-f924-4e65-9305-66890a41c582", "username": "greenostrich767", "password": "serenity", "salt": "6fG2jx31", "md5": "2c96796ea5caec55d88feb2404b57345", "sha1": "36bc76ea90bab3fb8f2ce2078a53e02dca259bcb", "sha256": "425de57999ed3eee7bbe73c2a63759349df6e9a6844a0c45930e5931f783225c"}, "dob": {"date": "1987-03-17T03:09:53.399Z", "age": 36}, "registered": {"date": "2008-03-22T15:36:29.315Z", "age": 15}, "phone": "075 881 90 80", "cell": "075 220 90 42", "id": {"name": "AVS", "value": "756.1304.6729.13"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/69.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/69.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/69.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Klaus-Peter", "last": "Koopmann"}, "location": {"street": {"number": 1666, "name": "Fliederweg"}, "city": "Bad Breisig", "state": "Brandenburg", "country": "Germany", "postcode": 98467, "coordinates": {"latitude": "29.5464", "longitude": "-176.7671"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "klaus-peter.koopmann@example.com", "login": {"uuid": "5874f794-b909-4a31-a63e-3d1e67306d50", "username": "greenbutterfly873", "password": "1qaz2wsx", "salt": "9s8rf1wp", "md5": "5f0a035bf8cf2bb04a40558e050f66a9", "sha1": "fa792636fab99c12f01a50f2f2e7e49a4163be31", "sha256": "d9b7543536745b0f350e2e2b307dcdd7982560f45491ddf6376aa8cc7bee0046"}, "dob": {"date": "1947-01-11T16:27:22.136Z", "age": 76}, "registered": {"date": "2012-10-12T13:52:51.428Z", "age": 11}, "phone": "0397-8016035", "cell": "0171-6169370", "id": {"name": "SVNR", "value": "26 110147 K 481"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/42.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/42.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/42.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
{"gender": "female", "name": {"title": "Miss", "first": "Nuria", "last": "Castro"}, "location": {"street": {"number": 5282, "name": "Calle de Ferraz"}, "city": "Torrej\u00f3n de Ardoz", "state": "Andaluc\u00eda", "country": "Spain", "postcode": 37767, "coordinates": {"latitude": "43.8560", "longitude": "14.7635"}, "timezone": {"offset": "-10:00", "description": "Hawaii"}}, "email": "nuria.castro@example.com", "login": {"uuid": "5f4ba5aa-56b9-43cd-a00d-4caee10dd4a4", "username": "purplezebra152", "password": "bruins", "salt": "Pi3t6GZr", "md5": "5947c672fe6c76a6e0b5200cfc138552", "sha1": "4e24b9b79123486b39e8f22b944f710edc55794d", "sha256": "3c31e598f81d268eee1aed4865239405d780b8cb39d926a23d6a219d9caac3a1"}, "dob": {"date": "1962-02-08T13:52:48.490Z", "age": 61}, "registered": {"date": "2009-03-29T08:26:01.351Z", "age": 14}, "phone": "916-406-577", "cell": "660-465-465", "id": {"name": "DNI", "value": "76499924-Y"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/32.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/32.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/32.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Miss", "first": "Vildan", "last": "Ke\u00e7eci"}, "location": {"street": {"number": 9205, "name": "Anafartalar Cd"}, "city": "Kayseri", "state": "Hakk\u00e2ri", "country": "Turkey", "postcode": 81969, "coordinates": {"latitude": "-46.5612", "longitude": "72.3140"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "vildan.kececi@example.com", "login": {"uuid": "3f8ac036-92bf-4751-b40e-85a0a99db442", "username": "blackkoala424", "password": "jazzman", "salt": "tyGQ4eeC", "md5": "ff42dc5d8acc6943426e95c22d55e3b1", "sha1": "c2d78a0151fbb0510f694d9746b362f51219dbe3", "sha256": "5d9e0a871bff32164cbac725667823716aae06214a3b2152f9709be0895a2f05"}, "dob": {"date": "1993-12-31T05:09:07.248Z", "age": 29}, "registered": {"date": "2006-09-16T11:22:47.710Z", "age": 17}, "phone": "(810)-384-4129", "cell": "(334)-315-1134", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/40.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/40.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/40.jpg"}, "nat": "TR"}
{"gender": "female", "name": {"title": "Miss", "first": "Estelle", "last": "Fournier"}, "location": {"street": {"number": 6943, "name": "Rue du Village"}, "city": "Lille", "state": "Guadeloupe", "country": "France", "postcode": 69236, "coordinates": {"latitude": "18.5340", "longitude": "-167.6684"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "estelle.fournier@example.com", "login": {"uuid": "82798fe7-766c-4f18-a811-c29bc882ace2", "username": "yellowleopard981", "password": "queenie", "salt": "u1CrF1ty", "md5": "ecef44528e525545c6bbc0fc5aef19dc", "sha1": "e24efb4dcaf76e2da48afd4e19ab2da9b696272b", "sha256": "c536fc296d51befa7e4071a47a84dd5d109a0c2ac4b6bd5d00fd62e9f0cd7a5e"}, "dob": {"date": "1955-10-20T22:04:12.919Z", "age": 68}, "registered": {"date": "2010-04-29T18:24:11.009Z", "age": 13}, "phone": "03-31-09-24-73", "cell": "06-29-61-45-93", "id": {"name": "INSEE", "value": "2550991537258 58"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/91.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/91.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/91.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Mrs", "first": "Lucy", "last": "Cruz"}, "location": {"street": {"number": 7477, "name": "Hamilton Ave"}, "city": "Milwaukee", "state": "Delaware", "country": "United States", "postcode": 43570, "coordinates": {"latitude": "-30.9476", "longitude": "-88.9587"}, "timezone": {"offset": "+2:00", "description": "Kaliningrad, South Africa"}}, "email": "lucy.cruz@example.com", "login": {"uuid": "7c145ebd-4226-4173-ba93-3c8c919bd219", "username": "yellowladybug766", "password": "proxy", "salt": "FBNNudA4", "md5": "973785a35911960c3071b2dd77d43dfd", "sha1": "a9b0177c64d92dccac7a8788c990e8b025de31f2", "sha256": "8d9e23e8a9f6f17d04a95a72a1c224f0a30248a3b0dab658c8c6225611a6c8b6"}, "dob": {"date": "1951-08-05T18:31:29.220Z", "age": 72}, "registered": {"date": "2012-11-17T23:26:37.180Z", "age": 11}, "phone": "(743) 507-6493", "cell": "(288) 637-4718", "id": {"name": "SSN", "value": "112-75-7255"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/8.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/8.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/8.jpg"}, "nat": "US"}

You can use jawk like:

jawk \
    --select '.name.first = First name' \
    --select '.name.last = Last name' \
    --select '.dob.age=Age' \
    --where '(&& (> .dob.age 30) (< .dob.age 45))' \
    --output-style csv

To produce:

"First name", "Last name", "Age"
"Tyra", "Smedstad", 39
"Isabella", "Mackay", 34
"Phoebe", "Lawson", 41
"Adalberto", "Tapia", 36
"Josephine", "Blanchard", 36
"Margrit", "Sanchez", 42

Group values

In this example we will see how to group values.

If your input looks like

{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Angela", "last": "\u00c1lvarez"}, "location": {"street": {"number": 8355, "name": "Avenida del Planetario"}, "city": "La Palma", "state": "Asturias", "country": "Spain", "postcode": 81328, "coordinates": {"latitude": "-66.5496", "longitude": "173.4816"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "angela.alvarez@example.com", "login": {"uuid": "663bf27a-be49-410e-ad36-2c6fe3bd1610", "username": "angrybutterfly198", "password": "avalanch", "salt": "x05nT1hy", "md5": "70cf6a63245104a088534e47c8c32913", "sha1": "9e9429b6e476b91c3c6c3c8beab8fd4e020c54e7", "sha256": "fb0ac7e1bdcd099de48bb943deb1c8265b071aab01d101999fd6d47cda5ce964"}, "dob": {"date": "1976-06-09T13:50:15.295Z", "age": 47}, "registered": {"date": "2007-07-30T05:55:20.320Z", "age": 16}, "phone": "906-769-799", "cell": "665-054-011", "id": {"name": "DNI", "value": "10772136-H"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/22.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/22.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/22.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Mrs", "first": "Tyra", "last": "Smedstad"}, "location": {"street": {"number": 2784, "name": "Fr\u00f8yas gate"}, "city": "Gata", "state": "Oppland", "country": "Norway", "postcode": "7873", "coordinates": {"latitude": "-71.4445", "longitude": "-140.5351"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "tyra.smedstad@example.com", "login": {"uuid": "8431abbf-cfeb-4818-a121-31cc425a4bef", "username": "beautifulpanda450", "password": "clock", "salt": "tDRoW2LQ", "md5": "40631b2513bd882411393d9dea3af918", "sha1": "f465fe539d4207f65835c7bca92403f962eacb2c", "sha256": "345eb98f85c395a57921656d65f9dc4682aebcfe6636e528e619ce72b8d1516e"}, "dob": {"date": "1984-08-10T19:34:41.505Z", "age": 39}, "registered": {"date": "2012-01-14T14:01:04.612Z", "age": 11}, "phone": "55399992", "cell": "94741076", "id": {"name": "FN", "value": "10088419486"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/78.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/78.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/78.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Isabella", "last": "Mackay"}, "location": {"street": {"number": 811, "name": "9th St"}, "city": "Inverness", "state": "Prince Edward Island", "country": "Canada", "postcode": "X0B 3S7", "coordinates": {"latitude": "50.2028", "longitude": "-36.3905"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "isabella.mackay@example.com", "login": {"uuid": "f4338957-b3cd-49a3-9b6b-7d695ffff3a6", "username": "organicdog306", "password": "finder", "salt": "wNA1dNtD", "md5": "41394bad944f1a38ae7d99b152d668a2", "sha1": "5a397bc12f2a8b9a919b6c11c5b3af34e0399a26", "sha256": "3e58331e19da7b7d091b3284b21d9a8882aa6431ea8192df38e4d00384b1b008"}, "dob": {"date": "1989-03-25T03:57:37.855Z", "age": 34}, "registered": {"date": "2019-12-09T14:34:52.560Z", "age": 4}, "phone": "K24 Q56-4317", "cell": "H43 P90-4248", "id": {"name": "SIN", "value": "601246507"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/37.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/37.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/37.jpg"}, "nat": "CA"}
{"gender": "female", "name": {"title": "Miss", "first": "Phoebe", "last": "Lawson"}, "location": {"street": {"number": 6088, "name": "Stanley Road"}, "city": "Newcastle upon Tyne", "state": "Bedfordshire", "country": "United Kingdom", "postcode": "KK55 0SG", "coordinates": {"latitude": "43.8753", "longitude": "-12.3481"}, "timezone": {"offset": "+10:00", "description": "Eastern Australia, Guam, Vladivostok"}}, "email": "phoebe.lawson@example.com", "login": {"uuid": "21ba9d1a-89c4-4117-b15a-6d0a575923ce", "username": "blackwolf672", "password": "1972", "salt": "GDQogQCY", "md5": "01dfc713aa53fb127d46bdc7befedc13", "sha1": "2d618d08b2cb585300b86881c5b8fe0622c3f311", "sha256": "d6a5bf3a971bdea2ec3ef6357a6da100eb20931670538633695061115109e8a3"}, "dob": {"date": "1982-09-19T14:13:41.640Z", "age": 41}, "registered": {"date": "2008-09-14T06:23:56.507Z", "age": 15}, "phone": "016977 0286", "cell": "07356 649337", "id": {"name": "NINO", "value": "HT 50 56 21 E"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/1.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/1.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/1.jpg"}, "nat": "GB"}
{"gender": "male", "name": {"title": "Mr", "first": "Timeo", "last": "Dubois"}, "location": {"street": {"number": 641, "name": "Rue Duquesne"}, "city": "Le Mans", "state": "H\u00e9rault", "country": "France", "postcode": 29604, "coordinates": {"latitude": "-20.3780", "longitude": "-39.1876"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "timeo.dubois@example.com", "login": {"uuid": "37a99762-b475-49f0-a47d-d7dde3abe42e", "username": "heavyduck382", "password": "death1", "salt": "azZtceGC", "md5": "9f514a2ab55698b558514baad3e83e9b", "sha1": "77b134d925c0743d5c00fce613e2131c0862d30f", "sha256": "3ae0fd5fecf0cbfe44cd9e9bc7f842885cd952ba321fea57060709f45b03fdbd"}, "dob": {"date": "1994-04-30T04:02:25.917Z", "age": 29}, "registered": {"date": "2003-11-03T00:29:57.888Z", "age": 20}, "phone": "04-23-26-34-99", "cell": "06-23-19-78-72", "id": {"name": "INSEE", "value": "1940355952529 29"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/44.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/44.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/44.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Miss", "first": "Teresa", "last": "Soto"}, "location": {"street": {"number": 2962, "name": "Green Lane"}, "city": "Rush", "state": "Cork City", "country": "Ireland", "postcode": 43064, "coordinates": {"latitude": "-66.9461", "longitude": "94.9504"}, "timezone": {"offset": "-12:00", "description": "Eniwetok, Kwajalein"}}, "email": "teresa.soto@example.com", "login": {"uuid": "3b3192e8-8c1a-4b92-aa9b-ac0ca43f6c5a", "username": "beautifulsnake498", "password": "thor", "salt": "Yl3cj0BU", "md5": "c2856e2e41aa0167870aca7b765f2438", "sha1": "3c82e8c53b916f89f8fc71451a99a80aa5bade29", "sha256": "9233d57206dad83294ad8d4f260a697c3b7d2effc61b07f4f47167109d244208"}, "dob": {"date": "1956-12-02T15:49:12.183Z", "age": 67}, "registered": {"date": "2010-01-13T09:38:53.238Z", "age": 13}, "phone": "041-895-6753", "cell": "081-927-6366", "id": {"name": "PPS", "value": "3476278T"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/39.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/39.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/39.jpg"}, "nat": "IE"}
{"gender": "male", "name": {"title": "Mr", "first": "Adalberto", "last": "Tapia"}, "location": {"street": {"number": 7643, "name": "Pasaje Quer\u00e9taro"}, "city": "Tequesquitl\u00e1n", "state": "Veracruz", "country": "Mexico", "postcode": 19392, "coordinates": {"latitude": "11.1359", "longitude": "14.4986"}, "timezone": {"offset": "-4:00", "description": "Atlantic Time (Canada), Caracas, La Paz"}}, "email": "adalberto.tapia@example.com", "login": {"uuid": "cd7268cb-0137-4a90-be10-5bc7ac80f9c8", "username": "yellowleopard669", "password": "carpet", "salt": "cYZqQqoR", "md5": "3c508daf3fb63ec6ab7e8267677789cd", "sha1": "29b5562a2e1c57564a511fe7b8ab31c6d46d9770", "sha256": "0a50edaf32ac09be3b5b385a7fe46cd12a8511d889f075725740fc4431c76125"}, "dob": {"date": "1987-10-26T20:21:42.260Z", "age": 36}, "registered": {"date": "2002-06-06T16:11:31.428Z", "age": 21}, "phone": "(636) 179 4319", "cell": "(620) 953 6065", "id": {"name": "NSS", "value": "58 72 21 6051 4"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/24.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/24.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/24.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Mrs", "first": "Yolanda", "last": "Vela"}, "location": {"street": {"number": 4235, "name": "Circunvalaci\u00f3n Norte Ontiveros"}, "city": "Santa Elena (Francisco Zarco)", "state": "Zacatecas", "country": "Mexico", "postcode": 19311, "coordinates": {"latitude": "-86.2815", "longitude": "-56.8200"}, "timezone": {"offset": "+1:00", "description": "Brussels, Copenhagen, Madrid, Paris"}}, "email": "yolanda.vela@example.com", "login": {"uuid": "87b31a7d-02fa-4a50-a1a5-bd04cfed84dc", "username": "silverlion570", "password": "pointer", "salt": "FAIfhUkJ", "md5": "de4fdd1563141be4260e4bfb7d1e0934", "sha1": "37fc20366cec7a35ad2b8a34692112562aa5038a", "sha256": "90294aa678e54f47d3854ec7f45663943a39f8b13d003865179fd8793a06afa2"}, "dob": {"date": "1954-08-06T04:27:10.482Z", "age": 69}, "registered": {"date": "2015-03-14T09:44:06.448Z", "age": 8}, "phone": "(691) 324 7123", "cell": "(697) 831 1314", "id": {"name": "NSS", "value": "27 66 22 7575 0"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/73.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/73.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/73.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Miss", "first": "\u067e\u0627\u0631\u0645\u06cc\u0633", "last": "\u062d\u06cc\u062f\u0631\u06cc"}, "location": {"street": {"number": 9683, "name": "\u0645\u06cc\u062f\u0627\u0646 \u0634\u0645\u0634\u06cc\u0631\u06cc"}, "city": "\u0642\u0627\u0626\u0645\u200c\u0634\u0647\u0631", "state": "\u0627\u0631\u062f\u0628\u06cc\u0644", "country": "Iran", "postcode": 15785, "coordinates": {"latitude": "-28.5413", "longitude": "-55.7982"}, "timezone": {"offset": "+4:00", "description": "Abu Dhabi, Muscat, Baku, Tbilisi"}}, "email": "prmys.hydry@example.com", "login": {"uuid": "7478b071-39b3-443e-9321-386aee5abfdc", "username": "crazywolf415", "password": "wildcard", "salt": "cPF8bhqW", "md5": "b7224d92917116ea2bfda6b779c2a888", "sha1": "c3ebee3d2983acc86a6f0f0d83640d28d3966a3c", "sha256": "762751b82fe8708e42876cc5e1c9411ef7f820ffd337afb400c22fc6b0cf46d3"}, "dob": {"date": "1972-06-09T00:59:53.966Z", "age": 51}, "registered": {"date": "2016-05-31T13:19:02.232Z", "age": 7}, "phone": "023-36980589", "cell": "0914-858-9022", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/33.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/33.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/33.jpg"}, "nat": "IR"}
{"gender": "male", "name": {"title": "Mr", "first": "Gordon", "last": "Boller"}, "location": {"street": {"number": 8049, "name": "Tannenweg"}, "city": "Petershagen", "state": "Th\u00fcringen", "country": "Germany", "postcode": 47252, "coordinates": {"latitude": "-42.8514", "longitude": "160.5128"}, "timezone": {"offset": "-3:00", "description": "Brazil, Buenos Aires, Georgetown"}}, "email": "gordon.boller@example.com", "login": {"uuid": "a1455a69-b033-4398-9f10-b14da6240107", "username": "beautifulbutterfly315", "password": "marvin", "salt": "bDwIxU0E", "md5": "1f570d5973d860a10e8a3b121153348c", "sha1": "9f95df3a63512c9d9ef26cd76a37cc78a3a00e0c", "sha256": "3d887130990cdb96baefb88260d085f9755aabf89f912d81238b708a0c47b27c"}, "dob": {"date": "1972-09-11T10:13:54.296Z", "age": 51}, "registered": {"date": "2021-03-23T13:53:23.684Z", "age": 2}, "phone": "0306-8436446", "cell": "0179-0387220", "id": {"name": "SVNR", "value": "70 110972 B 280"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/10.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/10.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/10.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mrs", "first": "Silvija", "last": "Jevremovi\u0107"}, "location": {"street": {"number": 7578, "name": "Kneza Palalije"}, "city": "Zve\u010dan", "state": "Rasina", "country": "Serbia", "postcode": 83539, "coordinates": {"latitude": "85.9791", "longitude": "44.8104"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "silvija.jevremovic@example.com", "login": {"uuid": "52f11af1-3a3f-4a9a-abb2-49bed0a599a6", "username": "sadelephant446", "password": "madness", "salt": "PMTZhdZP", "md5": "ec41873a6304102df36f6c995584b52a", "sha1": "985e48062b108e1088b95d74689a23e905b72853", "sha256": "3892f6dbee70471dbd21dead4076a3ef8d5583349630f7b76712809d040e68f3"}, "dob": {"date": "1965-03-08T20:08:57.497Z", "age": 58}, "registered": {"date": "2004-02-07T04:43:54.506Z", "age": 19}, "phone": "032-7888-458", "cell": "062-3160-899", "id": {"name": "SID", "value": "355414676"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/70.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/70.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/70.jpg"}, "nat": "RS"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Josephine", "last": "Blanchard"}, "location": {"street": {"number": 1362, "name": "Avenue Goerges Cl\u00e9menceau"}, "city": "Gisikon", "state": "Graub\u00fcnden", "country": "Switzerland", "postcode": 5472, "coordinates": {"latitude": "72.2107", "longitude": "-52.6990"}, "timezone": {"offset": "+3:00", "description": "Baghdad, Riyadh, Moscow, St. Petersburg"}}, "email": "josephine.blanchard@example.com", "login": {"uuid": "6b5b3145-f924-4e65-9305-66890a41c582", "username": "greenostrich767", "password": "serenity", "salt": "6fG2jx31", "md5": "2c96796ea5caec55d88feb2404b57345", "sha1": "36bc76ea90bab3fb8f2ce2078a53e02dca259bcb", "sha256": "425de57999ed3eee7bbe73c2a63759349df6e9a6844a0c45930e5931f783225c"}, "dob": {"date": "1987-03-17T03:09:53.399Z", "age": 36}, "registered": {"date": "2008-03-22T15:36:29.315Z", "age": 15}, "phone": "075 881 90 80", "cell": "075 220 90 42", "id": {"name": "AVS", "value": "756.1304.6729.13"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/69.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/69.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/69.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Klaus-Peter", "last": "Koopmann"}, "location": {"street": {"number": 1666, "name": "Fliederweg"}, "city": "Bad Breisig", "state": "Brandenburg", "country": "Germany", "postcode": 98467, "coordinates": {"latitude": "29.5464", "longitude": "-176.7671"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "klaus-peter.koopmann@example.com", "login": {"uuid": "5874f794-b909-4a31-a63e-3d1e67306d50", "username": "greenbutterfly873", "password": "1qaz2wsx", "salt": "9s8rf1wp", "md5": "5f0a035bf8cf2bb04a40558e050f66a9", "sha1": "fa792636fab99c12f01a50f2f2e7e49a4163be31", "sha256": "d9b7543536745b0f350e2e2b307dcdd7982560f45491ddf6376aa8cc7bee0046"}, "dob": {"date": "1947-01-11T16:27:22.136Z", "age": 76}, "registered": {"date": "2012-10-12T13:52:51.428Z", "age": 11}, "phone": "0397-8016035", "cell": "0171-6169370", "id": {"name": "SVNR", "value": "26 110147 K 481"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/42.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/42.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/42.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
{"gender": "female", "name": {"title": "Miss", "first": "Nuria", "last": "Castro"}, "location": {"street": {"number": 5282, "name": "Calle de Ferraz"}, "city": "Torrej\u00f3n de Ardoz", "state": "Andaluc\u00eda", "country": "Spain", "postcode": 37767, "coordinates": {"latitude": "43.8560", "longitude": "14.7635"}, "timezone": {"offset": "-10:00", "description": "Hawaii"}}, "email": "nuria.castro@example.com", "login": {"uuid": "5f4ba5aa-56b9-43cd-a00d-4caee10dd4a4", "username": "purplezebra152", "password": "bruins", "salt": "Pi3t6GZr", "md5": "5947c672fe6c76a6e0b5200cfc138552", "sha1": "4e24b9b79123486b39e8f22b944f710edc55794d", "sha256": "3c31e598f81d268eee1aed4865239405d780b8cb39d926a23d6a219d9caac3a1"}, "dob": {"date": "1962-02-08T13:52:48.490Z", "age": 61}, "registered": {"date": "2009-03-29T08:26:01.351Z", "age": 14}, "phone": "916-406-577", "cell": "660-465-465", "id": {"name": "DNI", "value": "76499924-Y"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/32.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/32.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/32.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Miss", "first": "Vildan", "last": "Ke\u00e7eci"}, "location": {"street": {"number": 9205, "name": "Anafartalar Cd"}, "city": "Kayseri", "state": "Hakk\u00e2ri", "country": "Turkey", "postcode": 81969, "coordinates": {"latitude": "-46.5612", "longitude": "72.3140"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "vildan.kececi@example.com", "login": {"uuid": "3f8ac036-92bf-4751-b40e-85a0a99db442", "username": "blackkoala424", "password": "jazzman", "salt": "tyGQ4eeC", "md5": "ff42dc5d8acc6943426e95c22d55e3b1", "sha1": "c2d78a0151fbb0510f694d9746b362f51219dbe3", "sha256": "5d9e0a871bff32164cbac725667823716aae06214a3b2152f9709be0895a2f05"}, "dob": {"date": "1993-12-31T05:09:07.248Z", "age": 29}, "registered": {"date": "2006-09-16T11:22:47.710Z", "age": 17}, "phone": "(810)-384-4129", "cell": "(334)-315-1134", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/40.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/40.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/40.jpg"}, "nat": "TR"}
{"gender": "female", "name": {"title": "Miss", "first": "Estelle", "last": "Fournier"}, "location": {"street": {"number": 6943, "name": "Rue du Village"}, "city": "Lille", "state": "Guadeloupe", "country": "France", "postcode": 69236, "coordinates": {"latitude": "18.5340", "longitude": "-167.6684"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "estelle.fournier@example.com", "login": {"uuid": "82798fe7-766c-4f18-a811-c29bc882ace2", "username": "yellowleopard981", "password": "queenie", "salt": "u1CrF1ty", "md5": "ecef44528e525545c6bbc0fc5aef19dc", "sha1": "e24efb4dcaf76e2da48afd4e19ab2da9b696272b", "sha256": "c536fc296d51befa7e4071a47a84dd5d109a0c2ac4b6bd5d00fd62e9f0cd7a5e"}, "dob": {"date": "1955-10-20T22:04:12.919Z", "age": 68}, "registered": {"date": "2010-04-29T18:24:11.009Z", "age": 13}, "phone": "03-31-09-24-73", "cell": "06-29-61-45-93", "id": {"name": "INSEE", "value": "2550991537258 58"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/91.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/91.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/91.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Mrs", "first": "Lucy", "last": "Cruz"}, "location": {"street": {"number": 7477, "name": "Hamilton Ave"}, "city": "Milwaukee", "state": "Delaware", "country": "United States", "postcode": 43570, "coordinates": {"latitude": "-30.9476", "longitude": "-88.9587"}, "timezone": {"offset": "+2:00", "description": "Kaliningrad, South Africa"}}, "email": "lucy.cruz@example.com", "login": {"uuid": "7c145ebd-4226-4173-ba93-3c8c919bd219", "username": "yellowladybug766", "password": "proxy", "salt": "FBNNudA4", "md5": "973785a35911960c3071b2dd77d43dfd", "sha1": "a9b0177c64d92dccac7a8788c990e8b025de31f2", "sha256": "8d9e23e8a9f6f17d04a95a72a1c224f0a30248a3b0dab658c8c6225611a6c8b6"}, "dob": {"date": "1951-08-05T18:31:29.220Z", "age": 72}, "registered": {"date": "2012-11-17T23:26:37.180Z", "age": 11}, "phone": "(743) 507-6493", "cell": "(288) 637-4718", "id": {"name": "SSN", "value": "112-75-7255"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/8.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/8.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/8.jpg"}, "nat": "US"}

You can use jawk like:

jawk \
    --select '.name.first = First name' \
    --select '.name.last = Last name' \
    --select '(format_time (parse_time_with_zone .dob.date "%+") "%d %B %Y")=Birthday' \
    --group-by '(format_time (parse_time_with_zone .dob.date "%+") "%Y")' \
    --output-style json \
    --style pretty

To produce:

{
  "1954": [
    {
      "First name": "Fredrikke",
      "Last name": "Furseth",
      "Birthday": "23 August 1954"
    },
    {
      "First name": "Yolanda",
      "Last name": "Vela",
      "Birthday": "06 August 1954"
    }
  ],
  "1976": [
    {
      "First name": "Angela",
      "Last name": "\u00c1lvarez",
      "Birthday": "09 June 1976"
    }
  ],
  "1984": [
    {
      "First name": "Tyra",
      "Last name": "Smedstad",
      "Birthday": "10 August 1984"
    }
  ],
  "1989": [
    {
      "First name": "Isabella",
      "Last name": "Mackay",
      "Birthday": "25 March 1989"
    }
  ],
  "1982": [
    {
      "First name": "Phoebe",
      "Last name": "Lawson",
      "Birthday": "19 September 1982"
    }
  ],
  "1994": [
    {
      "First name": "Timeo",
      "Last name": "Dubois",
      "Birthday": "30 April 1994"
    }
  ],
  "1956": [
    {
      "First name": "Teresa",
      "Last name": "Soto",
      "Birthday": "02 December 1956"
    }
  ],
  "1987": [
    {
      "First name": "Adalberto",
      "Last name": "Tapia",
      "Birthday": "26 October 1987"
    },
    {
      "First name": "Josephine",
      "Last name": "Blanchard",
      "Birthday": "17 March 1987"
    }
  ],
  "1972": [
    {
      "First name": "\u067e\u0627\u0631\u0645\u06cc\u0633",
      "Last name": "\u062d\u06cc\u062f\u0631\u06cc",
      "Birthday": "09 June 1972"
    },
    {
      "First name": "Gordon",
      "Last name": "Boller",
      "Birthday": "11 September 1972"
    }
  ],
  "1965": [
    {
      "First name": "Silvija",
      "Last name": "Jevremovi\u0107",
      "Birthday": "08 March 1965"
    },
    {
      "First name": "Fabio",
      "Last name": "Berden",
      "Birthday": "23 October 1965"
    }
  ],
  "1947": [
    {
      "First name": "Klaus-Peter",
      "Last name": "Koopmann",
      "Birthday": "11 January 1947"
    }
  ],
  "1981": [
    {
      "First name": "Margrit",
      "Last name": "Sanchez",
      "Birthday": "16 July 1981"
    }
  ],
  "1962": [
    {
      "First name": "Nuria",
      "Last name": "Castro",
      "Birthday": "08 February 1962"
    }
  ],
  "1993": [
    {
      "First name": "Vildan",
      "Last name": "Ke\u00e7eci",
      "Birthday": "31 December 1993"
    }
  ],
  "1955": [
    {
      "First name": "Estelle",
      "Last name": "Fournier",
      "Birthday": "20 October 1955"
    }
  ],
  "1951": [
    {
      "First name": "Lucy",
      "Last name": "Cruz",
      "Birthday": "05 August 1951"
    }
  ]
}

Sort values

In this example we will see how to sort values.

If your input looks like

{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Angela", "last": "\u00c1lvarez"}, "location": {"street": {"number": 8355, "name": "Avenida del Planetario"}, "city": "La Palma", "state": "Asturias", "country": "Spain", "postcode": 81328, "coordinates": {"latitude": "-66.5496", "longitude": "173.4816"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "angela.alvarez@example.com", "login": {"uuid": "663bf27a-be49-410e-ad36-2c6fe3bd1610", "username": "angrybutterfly198", "password": "avalanch", "salt": "x05nT1hy", "md5": "70cf6a63245104a088534e47c8c32913", "sha1": "9e9429b6e476b91c3c6c3c8beab8fd4e020c54e7", "sha256": "fb0ac7e1bdcd099de48bb943deb1c8265b071aab01d101999fd6d47cda5ce964"}, "dob": {"date": "1976-06-09T13:50:15.295Z", "age": 47}, "registered": {"date": "2007-07-30T05:55:20.320Z", "age": 16}, "phone": "906-769-799", "cell": "665-054-011", "id": {"name": "DNI", "value": "10772136-H"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/22.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/22.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/22.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Mrs", "first": "Tyra", "last": "Smedstad"}, "location": {"street": {"number": 2784, "name": "Fr\u00f8yas gate"}, "city": "Gata", "state": "Oppland", "country": "Norway", "postcode": "7873", "coordinates": {"latitude": "-71.4445", "longitude": "-140.5351"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "tyra.smedstad@example.com", "login": {"uuid": "8431abbf-cfeb-4818-a121-31cc425a4bef", "username": "beautifulpanda450", "password": "clock", "salt": "tDRoW2LQ", "md5": "40631b2513bd882411393d9dea3af918", "sha1": "f465fe539d4207f65835c7bca92403f962eacb2c", "sha256": "345eb98f85c395a57921656d65f9dc4682aebcfe6636e528e619ce72b8d1516e"}, "dob": {"date": "1984-08-10T19:34:41.505Z", "age": 39}, "registered": {"date": "2012-01-14T14:01:04.612Z", "age": 11}, "phone": "55399992", "cell": "94741076", "id": {"name": "FN", "value": "10088419486"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/78.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/78.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/78.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Isabella", "last": "Mackay"}, "location": {"street": {"number": 811, "name": "9th St"}, "city": "Inverness", "state": "Prince Edward Island", "country": "Canada", "postcode": "X0B 3S7", "coordinates": {"latitude": "50.2028", "longitude": "-36.3905"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "isabella.mackay@example.com", "login": {"uuid": "f4338957-b3cd-49a3-9b6b-7d695ffff3a6", "username": "organicdog306", "password": "finder", "salt": "wNA1dNtD", "md5": "41394bad944f1a38ae7d99b152d668a2", "sha1": "5a397bc12f2a8b9a919b6c11c5b3af34e0399a26", "sha256": "3e58331e19da7b7d091b3284b21d9a8882aa6431ea8192df38e4d00384b1b008"}, "dob": {"date": "1989-03-25T03:57:37.855Z", "age": 34}, "registered": {"date": "2019-12-09T14:34:52.560Z", "age": 4}, "phone": "K24 Q56-4317", "cell": "H43 P90-4248", "id": {"name": "SIN", "value": "601246507"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/37.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/37.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/37.jpg"}, "nat": "CA"}
{"gender": "female", "name": {"title": "Miss", "first": "Phoebe", "last": "Lawson"}, "location": {"street": {"number": 6088, "name": "Stanley Road"}, "city": "Newcastle upon Tyne", "state": "Bedfordshire", "country": "United Kingdom", "postcode": "KK55 0SG", "coordinates": {"latitude": "43.8753", "longitude": "-12.3481"}, "timezone": {"offset": "+10:00", "description": "Eastern Australia, Guam, Vladivostok"}}, "email": "phoebe.lawson@example.com", "login": {"uuid": "21ba9d1a-89c4-4117-b15a-6d0a575923ce", "username": "blackwolf672", "password": "1972", "salt": "GDQogQCY", "md5": "01dfc713aa53fb127d46bdc7befedc13", "sha1": "2d618d08b2cb585300b86881c5b8fe0622c3f311", "sha256": "d6a5bf3a971bdea2ec3ef6357a6da100eb20931670538633695061115109e8a3"}, "dob": {"date": "1982-09-19T14:13:41.640Z", "age": 41}, "registered": {"date": "2008-09-14T06:23:56.507Z", "age": 15}, "phone": "016977 0286", "cell": "07356 649337", "id": {"name": "NINO", "value": "HT 50 56 21 E"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/1.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/1.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/1.jpg"}, "nat": "GB"}
{"gender": "male", "name": {"title": "Mr", "first": "Timeo", "last": "Dubois"}, "location": {"street": {"number": 641, "name": "Rue Duquesne"}, "city": "Le Mans", "state": "H\u00e9rault", "country": "France", "postcode": 29604, "coordinates": {"latitude": "-20.3780", "longitude": "-39.1876"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "timeo.dubois@example.com", "login": {"uuid": "37a99762-b475-49f0-a47d-d7dde3abe42e", "username": "heavyduck382", "password": "death1", "salt": "azZtceGC", "md5": "9f514a2ab55698b558514baad3e83e9b", "sha1": "77b134d925c0743d5c00fce613e2131c0862d30f", "sha256": "3ae0fd5fecf0cbfe44cd9e9bc7f842885cd952ba321fea57060709f45b03fdbd"}, "dob": {"date": "1994-04-30T04:02:25.917Z", "age": 29}, "registered": {"date": "2003-11-03T00:29:57.888Z", "age": 20}, "phone": "04-23-26-34-99", "cell": "06-23-19-78-72", "id": {"name": "INSEE", "value": "1940355952529 29"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/44.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/44.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/44.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Miss", "first": "Teresa", "last": "Soto"}, "location": {"street": {"number": 2962, "name": "Green Lane"}, "city": "Rush", "state": "Cork City", "country": "Ireland", "postcode": 43064, "coordinates": {"latitude": "-66.9461", "longitude": "94.9504"}, "timezone": {"offset": "-12:00", "description": "Eniwetok, Kwajalein"}}, "email": "teresa.soto@example.com", "login": {"uuid": "3b3192e8-8c1a-4b92-aa9b-ac0ca43f6c5a", "username": "beautifulsnake498", "password": "thor", "salt": "Yl3cj0BU", "md5": "c2856e2e41aa0167870aca7b765f2438", "sha1": "3c82e8c53b916f89f8fc71451a99a80aa5bade29", "sha256": "9233d57206dad83294ad8d4f260a697c3b7d2effc61b07f4f47167109d244208"}, "dob": {"date": "1956-12-02T15:49:12.183Z", "age": 67}, "registered": {"date": "2010-01-13T09:38:53.238Z", "age": 13}, "phone": "041-895-6753", "cell": "081-927-6366", "id": {"name": "PPS", "value": "3476278T"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/39.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/39.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/39.jpg"}, "nat": "IE"}
{"gender": "male", "name": {"title": "Mr", "first": "Adalberto", "last": "Tapia"}, "location": {"street": {"number": 7643, "name": "Pasaje Quer\u00e9taro"}, "city": "Tequesquitl\u00e1n", "state": "Veracruz", "country": "Mexico", "postcode": 19392, "coordinates": {"latitude": "11.1359", "longitude": "14.4986"}, "timezone": {"offset": "-4:00", "description": "Atlantic Time (Canada), Caracas, La Paz"}}, "email": "adalberto.tapia@example.com", "login": {"uuid": "cd7268cb-0137-4a90-be10-5bc7ac80f9c8", "username": "yellowleopard669", "password": "carpet", "salt": "cYZqQqoR", "md5": "3c508daf3fb63ec6ab7e8267677789cd", "sha1": "29b5562a2e1c57564a511fe7b8ab31c6d46d9770", "sha256": "0a50edaf32ac09be3b5b385a7fe46cd12a8511d889f075725740fc4431c76125"}, "dob": {"date": "1987-10-26T20:21:42.260Z", "age": 36}, "registered": {"date": "2002-06-06T16:11:31.428Z", "age": 21}, "phone": "(636) 179 4319", "cell": "(620) 953 6065", "id": {"name": "NSS", "value": "58 72 21 6051 4"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/24.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/24.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/24.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Mrs", "first": "Yolanda", "last": "Vela"}, "location": {"street": {"number": 4235, "name": "Circunvalaci\u00f3n Norte Ontiveros"}, "city": "Santa Elena (Francisco Zarco)", "state": "Zacatecas", "country": "Mexico", "postcode": 19311, "coordinates": {"latitude": "-86.2815", "longitude": "-56.8200"}, "timezone": {"offset": "+1:00", "description": "Brussels, Copenhagen, Madrid, Paris"}}, "email": "yolanda.vela@example.com", "login": {"uuid": "87b31a7d-02fa-4a50-a1a5-bd04cfed84dc", "username": "silverlion570", "password": "pointer", "salt": "FAIfhUkJ", "md5": "de4fdd1563141be4260e4bfb7d1e0934", "sha1": "37fc20366cec7a35ad2b8a34692112562aa5038a", "sha256": "90294aa678e54f47d3854ec7f45663943a39f8b13d003865179fd8793a06afa2"}, "dob": {"date": "1954-08-06T04:27:10.482Z", "age": 69}, "registered": {"date": "2015-03-14T09:44:06.448Z", "age": 8}, "phone": "(691) 324 7123", "cell": "(697) 831 1314", "id": {"name": "NSS", "value": "27 66 22 7575 0"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/73.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/73.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/73.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Miss", "first": "\u067e\u0627\u0631\u0645\u06cc\u0633", "last": "\u062d\u06cc\u062f\u0631\u06cc"}, "location": {"street": {"number": 9683, "name": "\u0645\u06cc\u062f\u0627\u0646 \u0634\u0645\u0634\u06cc\u0631\u06cc"}, "city": "\u0642\u0627\u0626\u0645\u200c\u0634\u0647\u0631", "state": "\u0627\u0631\u062f\u0628\u06cc\u0644", "country": "Iran", "postcode": 15785, "coordinates": {"latitude": "-28.5413", "longitude": "-55.7982"}, "timezone": {"offset": "+4:00", "description": "Abu Dhabi, Muscat, Baku, Tbilisi"}}, "email": "prmys.hydry@example.com", "login": {"uuid": "7478b071-39b3-443e-9321-386aee5abfdc", "username": "crazywolf415", "password": "wildcard", "salt": "cPF8bhqW", "md5": "b7224d92917116ea2bfda6b779c2a888", "sha1": "c3ebee3d2983acc86a6f0f0d83640d28d3966a3c", "sha256": "762751b82fe8708e42876cc5e1c9411ef7f820ffd337afb400c22fc6b0cf46d3"}, "dob": {"date": "1972-06-09T00:59:53.966Z", "age": 51}, "registered": {"date": "2016-05-31T13:19:02.232Z", "age": 7}, "phone": "023-36980589", "cell": "0914-858-9022", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/33.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/33.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/33.jpg"}, "nat": "IR"}
{"gender": "male", "name": {"title": "Mr", "first": "Gordon", "last": "Boller"}, "location": {"street": {"number": 8049, "name": "Tannenweg"}, "city": "Petershagen", "state": "Th\u00fcringen", "country": "Germany", "postcode": 47252, "coordinates": {"latitude": "-42.8514", "longitude": "160.5128"}, "timezone": {"offset": "-3:00", "description": "Brazil, Buenos Aires, Georgetown"}}, "email": "gordon.boller@example.com", "login": {"uuid": "a1455a69-b033-4398-9f10-b14da6240107", "username": "beautifulbutterfly315", "password": "marvin", "salt": "bDwIxU0E", "md5": "1f570d5973d860a10e8a3b121153348c", "sha1": "9f95df3a63512c9d9ef26cd76a37cc78a3a00e0c", "sha256": "3d887130990cdb96baefb88260d085f9755aabf89f912d81238b708a0c47b27c"}, "dob": {"date": "1972-09-11T10:13:54.296Z", "age": 51}, "registered": {"date": "2021-03-23T13:53:23.684Z", "age": 2}, "phone": "0306-8436446", "cell": "0179-0387220", "id": {"name": "SVNR", "value": "70 110972 B 280"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/10.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/10.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/10.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mrs", "first": "Silvija", "last": "Jevremovi\u0107"}, "location": {"street": {"number": 7578, "name": "Kneza Palalije"}, "city": "Zve\u010dan", "state": "Rasina", "country": "Serbia", "postcode": 83539, "coordinates": {"latitude": "85.9791", "longitude": "44.8104"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "silvija.jevremovic@example.com", "login": {"uuid": "52f11af1-3a3f-4a9a-abb2-49bed0a599a6", "username": "sadelephant446", "password": "madness", "salt": "PMTZhdZP", "md5": "ec41873a6304102df36f6c995584b52a", "sha1": "985e48062b108e1088b95d74689a23e905b72853", "sha256": "3892f6dbee70471dbd21dead4076a3ef8d5583349630f7b76712809d040e68f3"}, "dob": {"date": "1965-03-08T20:08:57.497Z", "age": 58}, "registered": {"date": "2004-02-07T04:43:54.506Z", "age": 19}, "phone": "032-7888-458", "cell": "062-3160-899", "id": {"name": "SID", "value": "355414676"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/70.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/70.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/70.jpg"}, "nat": "RS"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Josephine", "last": "Blanchard"}, "location": {"street": {"number": 1362, "name": "Avenue Goerges Cl\u00e9menceau"}, "city": "Gisikon", "state": "Graub\u00fcnden", "country": "Switzerland", "postcode": 5472, "coordinates": {"latitude": "72.2107", "longitude": "-52.6990"}, "timezone": {"offset": "+3:00", "description": "Baghdad, Riyadh, Moscow, St. Petersburg"}}, "email": "josephine.blanchard@example.com", "login": {"uuid": "6b5b3145-f924-4e65-9305-66890a41c582", "username": "greenostrich767", "password": "serenity", "salt": "6fG2jx31", "md5": "2c96796ea5caec55d88feb2404b57345", "sha1": "36bc76ea90bab3fb8f2ce2078a53e02dca259bcb", "sha256": "425de57999ed3eee7bbe73c2a63759349df6e9a6844a0c45930e5931f783225c"}, "dob": {"date": "1987-03-17T03:09:53.399Z", "age": 36}, "registered": {"date": "2008-03-22T15:36:29.315Z", "age": 15}, "phone": "075 881 90 80", "cell": "075 220 90 42", "id": {"name": "AVS", "value": "756.1304.6729.13"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/69.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/69.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/69.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Klaus-Peter", "last": "Koopmann"}, "location": {"street": {"number": 1666, "name": "Fliederweg"}, "city": "Bad Breisig", "state": "Brandenburg", "country": "Germany", "postcode": 98467, "coordinates": {"latitude": "29.5464", "longitude": "-176.7671"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "klaus-peter.koopmann@example.com", "login": {"uuid": "5874f794-b909-4a31-a63e-3d1e67306d50", "username": "greenbutterfly873", "password": "1qaz2wsx", "salt": "9s8rf1wp", "md5": "5f0a035bf8cf2bb04a40558e050f66a9", "sha1": "fa792636fab99c12f01a50f2f2e7e49a4163be31", "sha256": "d9b7543536745b0f350e2e2b307dcdd7982560f45491ddf6376aa8cc7bee0046"}, "dob": {"date": "1947-01-11T16:27:22.136Z", "age": 76}, "registered": {"date": "2012-10-12T13:52:51.428Z", "age": 11}, "phone": "0397-8016035", "cell": "0171-6169370", "id": {"name": "SVNR", "value": "26 110147 K 481"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/42.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/42.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/42.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
{"gender": "female", "name": {"title": "Miss", "first": "Nuria", "last": "Castro"}, "location": {"street": {"number": 5282, "name": "Calle de Ferraz"}, "city": "Torrej\u00f3n de Ardoz", "state": "Andaluc\u00eda", "country": "Spain", "postcode": 37767, "coordinates": {"latitude": "43.8560", "longitude": "14.7635"}, "timezone": {"offset": "-10:00", "description": "Hawaii"}}, "email": "nuria.castro@example.com", "login": {"uuid": "5f4ba5aa-56b9-43cd-a00d-4caee10dd4a4", "username": "purplezebra152", "password": "bruins", "salt": "Pi3t6GZr", "md5": "5947c672fe6c76a6e0b5200cfc138552", "sha1": "4e24b9b79123486b39e8f22b944f710edc55794d", "sha256": "3c31e598f81d268eee1aed4865239405d780b8cb39d926a23d6a219d9caac3a1"}, "dob": {"date": "1962-02-08T13:52:48.490Z", "age": 61}, "registered": {"date": "2009-03-29T08:26:01.351Z", "age": 14}, "phone": "916-406-577", "cell": "660-465-465", "id": {"name": "DNI", "value": "76499924-Y"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/32.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/32.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/32.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Miss", "first": "Vildan", "last": "Ke\u00e7eci"}, "location": {"street": {"number": 9205, "name": "Anafartalar Cd"}, "city": "Kayseri", "state": "Hakk\u00e2ri", "country": "Turkey", "postcode": 81969, "coordinates": {"latitude": "-46.5612", "longitude": "72.3140"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "vildan.kececi@example.com", "login": {"uuid": "3f8ac036-92bf-4751-b40e-85a0a99db442", "username": "blackkoala424", "password": "jazzman", "salt": "tyGQ4eeC", "md5": "ff42dc5d8acc6943426e95c22d55e3b1", "sha1": "c2d78a0151fbb0510f694d9746b362f51219dbe3", "sha256": "5d9e0a871bff32164cbac725667823716aae06214a3b2152f9709be0895a2f05"}, "dob": {"date": "1993-12-31T05:09:07.248Z", "age": 29}, "registered": {"date": "2006-09-16T11:22:47.710Z", "age": 17}, "phone": "(810)-384-4129", "cell": "(334)-315-1134", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/40.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/40.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/40.jpg"}, "nat": "TR"}
{"gender": "female", "name": {"title": "Miss", "first": "Estelle", "last": "Fournier"}, "location": {"street": {"number": 6943, "name": "Rue du Village"}, "city": "Lille", "state": "Guadeloupe", "country": "France", "postcode": 69236, "coordinates": {"latitude": "18.5340", "longitude": "-167.6684"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "estelle.fournier@example.com", "login": {"uuid": "82798fe7-766c-4f18-a811-c29bc882ace2", "username": "yellowleopard981", "password": "queenie", "salt": "u1CrF1ty", "md5": "ecef44528e525545c6bbc0fc5aef19dc", "sha1": "e24efb4dcaf76e2da48afd4e19ab2da9b696272b", "sha256": "c536fc296d51befa7e4071a47a84dd5d109a0c2ac4b6bd5d00fd62e9f0cd7a5e"}, "dob": {"date": "1955-10-20T22:04:12.919Z", "age": 68}, "registered": {"date": "2010-04-29T18:24:11.009Z", "age": 13}, "phone": "03-31-09-24-73", "cell": "06-29-61-45-93", "id": {"name": "INSEE", "value": "2550991537258 58"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/91.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/91.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/91.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Mrs", "first": "Lucy", "last": "Cruz"}, "location": {"street": {"number": 7477, "name": "Hamilton Ave"}, "city": "Milwaukee", "state": "Delaware", "country": "United States", "postcode": 43570, "coordinates": {"latitude": "-30.9476", "longitude": "-88.9587"}, "timezone": {"offset": "+2:00", "description": "Kaliningrad, South Africa"}}, "email": "lucy.cruz@example.com", "login": {"uuid": "7c145ebd-4226-4173-ba93-3c8c919bd219", "username": "yellowladybug766", "password": "proxy", "salt": "FBNNudA4", "md5": "973785a35911960c3071b2dd77d43dfd", "sha1": "a9b0177c64d92dccac7a8788c990e8b025de31f2", "sha256": "8d9e23e8a9f6f17d04a95a72a1c224f0a30248a3b0dab658c8c6225611a6c8b6"}, "dob": {"date": "1951-08-05T18:31:29.220Z", "age": 72}, "registered": {"date": "2012-11-17T23:26:37.180Z", "age": 11}, "phone": "(743) 507-6493", "cell": "(288) 637-4718", "id": {"name": "SSN", "value": "112-75-7255"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/8.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/8.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/8.jpg"}, "nat": "US"}

You can use jawk like:

jawk \
    --select '.name.first = First name' \
    --select '.name.last = Last name' \
    --select '.dob.age = Age' \
    --sort-by '.dob.age DESC' \
    --sort-by .name.last \
    --output-style csv

To produce:

"First name", "Last name", "Age"
"Klaus-Peter", "Koopmann", 76
"Lucy", "Cruz", 72
"Fredrikke", "Furseth", 69
"Yolanda", "Vela", 69
"Estelle", "Fournier", 68
"Teresa", "Soto", 67
"Nuria", "Castro", 61
"Fabio", "Berden", 58
"Silvija", "Jevremović", 58
"Gordon", "Boller", 51
"پارمیس", "حیدری", 51
"Angela", "Álvarez", 47
"Margrit", "Sanchez", 42
"Phoebe", "Lawson", 41
"Tyra", "Smedstad", 39
"Josephine", "Blanchard", 36
"Adalberto", "Tapia", 36
"Isabella", "Mackay", 34
"Timeo", "Dubois", 29
"Vildan", "Keçeci", 29

Remove duplications

In this example we will see how to remove duplications.

If your input looks like

{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Angela", "last": "\u00c1lvarez"}, "location": {"street": {"number": 8355, "name": "Avenida del Planetario"}, "city": "La Palma", "state": "Asturias", "country": "Spain", "postcode": 81328, "coordinates": {"latitude": "-66.5496", "longitude": "173.4816"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "angela.alvarez@example.com", "login": {"uuid": "663bf27a-be49-410e-ad36-2c6fe3bd1610", "username": "angrybutterfly198", "password": "avalanch", "salt": "x05nT1hy", "md5": "70cf6a63245104a088534e47c8c32913", "sha1": "9e9429b6e476b91c3c6c3c8beab8fd4e020c54e7", "sha256": "fb0ac7e1bdcd099de48bb943deb1c8265b071aab01d101999fd6d47cda5ce964"}, "dob": {"date": "1976-06-09T13:50:15.295Z", "age": 47}, "registered": {"date": "2007-07-30T05:55:20.320Z", "age": 16}, "phone": "906-769-799", "cell": "665-054-011", "id": {"name": "DNI", "value": "10772136-H"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/22.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/22.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/22.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Mrs", "first": "Tyra", "last": "Smedstad"}, "location": {"street": {"number": 2784, "name": "Fr\u00f8yas gate"}, "city": "Gata", "state": "Oppland", "country": "Norway", "postcode": "7873", "coordinates": {"latitude": "-71.4445", "longitude": "-140.5351"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "tyra.smedstad@example.com", "login": {"uuid": "8431abbf-cfeb-4818-a121-31cc425a4bef", "username": "beautifulpanda450", "password": "clock", "salt": "tDRoW2LQ", "md5": "40631b2513bd882411393d9dea3af918", "sha1": "f465fe539d4207f65835c7bca92403f962eacb2c", "sha256": "345eb98f85c395a57921656d65f9dc4682aebcfe6636e528e619ce72b8d1516e"}, "dob": {"date": "1984-08-10T19:34:41.505Z", "age": 39}, "registered": {"date": "2012-01-14T14:01:04.612Z", "age": 11}, "phone": "55399992", "cell": "94741076", "id": {"name": "FN", "value": "10088419486"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/78.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/78.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/78.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Isabella", "last": "Mackay"}, "location": {"street": {"number": 811, "name": "9th St"}, "city": "Inverness", "state": "Prince Edward Island", "country": "Canada", "postcode": "X0B 3S7", "coordinates": {"latitude": "50.2028", "longitude": "-36.3905"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "isabella.mackay@example.com", "login": {"uuid": "f4338957-b3cd-49a3-9b6b-7d695ffff3a6", "username": "organicdog306", "password": "finder", "salt": "wNA1dNtD", "md5": "41394bad944f1a38ae7d99b152d668a2", "sha1": "5a397bc12f2a8b9a919b6c11c5b3af34e0399a26", "sha256": "3e58331e19da7b7d091b3284b21d9a8882aa6431ea8192df38e4d00384b1b008"}, "dob": {"date": "1989-03-25T03:57:37.855Z", "age": 34}, "registered": {"date": "2019-12-09T14:34:52.560Z", "age": 4}, "phone": "K24 Q56-4317", "cell": "H43 P90-4248", "id": {"name": "SIN", "value": "601246507"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/37.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/37.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/37.jpg"}, "nat": "CA"}
{"gender": "female", "name": {"title": "Miss", "first": "Phoebe", "last": "Lawson"}, "location": {"street": {"number": 6088, "name": "Stanley Road"}, "city": "Newcastle upon Tyne", "state": "Bedfordshire", "country": "United Kingdom", "postcode": "KK55 0SG", "coordinates": {"latitude": "43.8753", "longitude": "-12.3481"}, "timezone": {"offset": "+10:00", "description": "Eastern Australia, Guam, Vladivostok"}}, "email": "phoebe.lawson@example.com", "login": {"uuid": "21ba9d1a-89c4-4117-b15a-6d0a575923ce", "username": "blackwolf672", "password": "1972", "salt": "GDQogQCY", "md5": "01dfc713aa53fb127d46bdc7befedc13", "sha1": "2d618d08b2cb585300b86881c5b8fe0622c3f311", "sha256": "d6a5bf3a971bdea2ec3ef6357a6da100eb20931670538633695061115109e8a3"}, "dob": {"date": "1982-09-19T14:13:41.640Z", "age": 41}, "registered": {"date": "2008-09-14T06:23:56.507Z", "age": 15}, "phone": "016977 0286", "cell": "07356 649337", "id": {"name": "NINO", "value": "HT 50 56 21 E"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/1.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/1.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/1.jpg"}, "nat": "GB"}
{"gender": "male", "name": {"title": "Mr", "first": "Timeo", "last": "Dubois"}, "location": {"street": {"number": 641, "name": "Rue Duquesne"}, "city": "Le Mans", "state": "H\u00e9rault", "country": "France", "postcode": 29604, "coordinates": {"latitude": "-20.3780", "longitude": "-39.1876"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "timeo.dubois@example.com", "login": {"uuid": "37a99762-b475-49f0-a47d-d7dde3abe42e", "username": "heavyduck382", "password": "death1", "salt": "azZtceGC", "md5": "9f514a2ab55698b558514baad3e83e9b", "sha1": "77b134d925c0743d5c00fce613e2131c0862d30f", "sha256": "3ae0fd5fecf0cbfe44cd9e9bc7f842885cd952ba321fea57060709f45b03fdbd"}, "dob": {"date": "1994-04-30T04:02:25.917Z", "age": 29}, "registered": {"date": "2003-11-03T00:29:57.888Z", "age": 20}, "phone": "04-23-26-34-99", "cell": "06-23-19-78-72", "id": {"name": "INSEE", "value": "1940355952529 29"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/44.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/44.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/44.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Miss", "first": "Teresa", "last": "Soto"}, "location": {"street": {"number": 2962, "name": "Green Lane"}, "city": "Rush", "state": "Cork City", "country": "Ireland", "postcode": 43064, "coordinates": {"latitude": "-66.9461", "longitude": "94.9504"}, "timezone": {"offset": "-12:00", "description": "Eniwetok, Kwajalein"}}, "email": "teresa.soto@example.com", "login": {"uuid": "3b3192e8-8c1a-4b92-aa9b-ac0ca43f6c5a", "username": "beautifulsnake498", "password": "thor", "salt": "Yl3cj0BU", "md5": "c2856e2e41aa0167870aca7b765f2438", "sha1": "3c82e8c53b916f89f8fc71451a99a80aa5bade29", "sha256": "9233d57206dad83294ad8d4f260a697c3b7d2effc61b07f4f47167109d244208"}, "dob": {"date": "1956-12-02T15:49:12.183Z", "age": 67}, "registered": {"date": "2010-01-13T09:38:53.238Z", "age": 13}, "phone": "041-895-6753", "cell": "081-927-6366", "id": {"name": "PPS", "value": "3476278T"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/39.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/39.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/39.jpg"}, "nat": "IE"}
{"gender": "male", "name": {"title": "Mr", "first": "Adalberto", "last": "Tapia"}, "location": {"street": {"number": 7643, "name": "Pasaje Quer\u00e9taro"}, "city": "Tequesquitl\u00e1n", "state": "Veracruz", "country": "Mexico", "postcode": 19392, "coordinates": {"latitude": "11.1359", "longitude": "14.4986"}, "timezone": {"offset": "-4:00", "description": "Atlantic Time (Canada), Caracas, La Paz"}}, "email": "adalberto.tapia@example.com", "login": {"uuid": "cd7268cb-0137-4a90-be10-5bc7ac80f9c8", "username": "yellowleopard669", "password": "carpet", "salt": "cYZqQqoR", "md5": "3c508daf3fb63ec6ab7e8267677789cd", "sha1": "29b5562a2e1c57564a511fe7b8ab31c6d46d9770", "sha256": "0a50edaf32ac09be3b5b385a7fe46cd12a8511d889f075725740fc4431c76125"}, "dob": {"date": "1987-10-26T20:21:42.260Z", "age": 36}, "registered": {"date": "2002-06-06T16:11:31.428Z", "age": 21}, "phone": "(636) 179 4319", "cell": "(620) 953 6065", "id": {"name": "NSS", "value": "58 72 21 6051 4"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/24.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/24.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/24.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Mrs", "first": "Yolanda", "last": "Vela"}, "location": {"street": {"number": 4235, "name": "Circunvalaci\u00f3n Norte Ontiveros"}, "city": "Santa Elena (Francisco Zarco)", "state": "Zacatecas", "country": "Mexico", "postcode": 19311, "coordinates": {"latitude": "-86.2815", "longitude": "-56.8200"}, "timezone": {"offset": "+1:00", "description": "Brussels, Copenhagen, Madrid, Paris"}}, "email": "yolanda.vela@example.com", "login": {"uuid": "87b31a7d-02fa-4a50-a1a5-bd04cfed84dc", "username": "silverlion570", "password": "pointer", "salt": "FAIfhUkJ", "md5": "de4fdd1563141be4260e4bfb7d1e0934", "sha1": "37fc20366cec7a35ad2b8a34692112562aa5038a", "sha256": "90294aa678e54f47d3854ec7f45663943a39f8b13d003865179fd8793a06afa2"}, "dob": {"date": "1954-08-06T04:27:10.482Z", "age": 69}, "registered": {"date": "2015-03-14T09:44:06.448Z", "age": 8}, "phone": "(691) 324 7123", "cell": "(697) 831 1314", "id": {"name": "NSS", "value": "27 66 22 7575 0"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/73.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/73.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/73.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Miss", "first": "\u067e\u0627\u0631\u0645\u06cc\u0633", "last": "\u062d\u06cc\u062f\u0631\u06cc"}, "location": {"street": {"number": 9683, "name": "\u0645\u06cc\u062f\u0627\u0646 \u0634\u0645\u0634\u06cc\u0631\u06cc"}, "city": "\u0642\u0627\u0626\u0645\u200c\u0634\u0647\u0631", "state": "\u0627\u0631\u062f\u0628\u06cc\u0644", "country": "Iran", "postcode": 15785, "coordinates": {"latitude": "-28.5413", "longitude": "-55.7982"}, "timezone": {"offset": "+4:00", "description": "Abu Dhabi, Muscat, Baku, Tbilisi"}}, "email": "prmys.hydry@example.com", "login": {"uuid": "7478b071-39b3-443e-9321-386aee5abfdc", "username": "crazywolf415", "password": "wildcard", "salt": "cPF8bhqW", "md5": "b7224d92917116ea2bfda6b779c2a888", "sha1": "c3ebee3d2983acc86a6f0f0d83640d28d3966a3c", "sha256": "762751b82fe8708e42876cc5e1c9411ef7f820ffd337afb400c22fc6b0cf46d3"}, "dob": {"date": "1972-06-09T00:59:53.966Z", "age": 51}, "registered": {"date": "2016-05-31T13:19:02.232Z", "age": 7}, "phone": "023-36980589", "cell": "0914-858-9022", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/33.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/33.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/33.jpg"}, "nat": "IR"}
{"gender": "male", "name": {"title": "Mr", "first": "Gordon", "last": "Boller"}, "location": {"street": {"number": 8049, "name": "Tannenweg"}, "city": "Petershagen", "state": "Th\u00fcringen", "country": "Germany", "postcode": 47252, "coordinates": {"latitude": "-42.8514", "longitude": "160.5128"}, "timezone": {"offset": "-3:00", "description": "Brazil, Buenos Aires, Georgetown"}}, "email": "gordon.boller@example.com", "login": {"uuid": "a1455a69-b033-4398-9f10-b14da6240107", "username": "beautifulbutterfly315", "password": "marvin", "salt": "bDwIxU0E", "md5": "1f570d5973d860a10e8a3b121153348c", "sha1": "9f95df3a63512c9d9ef26cd76a37cc78a3a00e0c", "sha256": "3d887130990cdb96baefb88260d085f9755aabf89f912d81238b708a0c47b27c"}, "dob": {"date": "1972-09-11T10:13:54.296Z", "age": 51}, "registered": {"date": "2021-03-23T13:53:23.684Z", "age": 2}, "phone": "0306-8436446", "cell": "0179-0387220", "id": {"name": "SVNR", "value": "70 110972 B 280"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/10.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/10.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/10.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mrs", "first": "Silvija", "last": "Jevremovi\u0107"}, "location": {"street": {"number": 7578, "name": "Kneza Palalije"}, "city": "Zve\u010dan", "state": "Rasina", "country": "Serbia", "postcode": 83539, "coordinates": {"latitude": "85.9791", "longitude": "44.8104"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "silvija.jevremovic@example.com", "login": {"uuid": "52f11af1-3a3f-4a9a-abb2-49bed0a599a6", "username": "sadelephant446", "password": "madness", "salt": "PMTZhdZP", "md5": "ec41873a6304102df36f6c995584b52a", "sha1": "985e48062b108e1088b95d74689a23e905b72853", "sha256": "3892f6dbee70471dbd21dead4076a3ef8d5583349630f7b76712809d040e68f3"}, "dob": {"date": "1965-03-08T20:08:57.497Z", "age": 58}, "registered": {"date": "2004-02-07T04:43:54.506Z", "age": 19}, "phone": "032-7888-458", "cell": "062-3160-899", "id": {"name": "SID", "value": "355414676"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/70.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/70.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/70.jpg"}, "nat": "RS"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Josephine", "last": "Blanchard"}, "location": {"street": {"number": 1362, "name": "Avenue Goerges Cl\u00e9menceau"}, "city": "Gisikon", "state": "Graub\u00fcnden", "country": "Switzerland", "postcode": 5472, "coordinates": {"latitude": "72.2107", "longitude": "-52.6990"}, "timezone": {"offset": "+3:00", "description": "Baghdad, Riyadh, Moscow, St. Petersburg"}}, "email": "josephine.blanchard@example.com", "login": {"uuid": "6b5b3145-f924-4e65-9305-66890a41c582", "username": "greenostrich767", "password": "serenity", "salt": "6fG2jx31", "md5": "2c96796ea5caec55d88feb2404b57345", "sha1": "36bc76ea90bab3fb8f2ce2078a53e02dca259bcb", "sha256": "425de57999ed3eee7bbe73c2a63759349df6e9a6844a0c45930e5931f783225c"}, "dob": {"date": "1987-03-17T03:09:53.399Z", "age": 36}, "registered": {"date": "2008-03-22T15:36:29.315Z", "age": 15}, "phone": "075 881 90 80", "cell": "075 220 90 42", "id": {"name": "AVS", "value": "756.1304.6729.13"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/69.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/69.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/69.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Klaus-Peter", "last": "Koopmann"}, "location": {"street": {"number": 1666, "name": "Fliederweg"}, "city": "Bad Breisig", "state": "Brandenburg", "country": "Germany", "postcode": 98467, "coordinates": {"latitude": "29.5464", "longitude": "-176.7671"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "klaus-peter.koopmann@example.com", "login": {"uuid": "5874f794-b909-4a31-a63e-3d1e67306d50", "username": "greenbutterfly873", "password": "1qaz2wsx", "salt": "9s8rf1wp", "md5": "5f0a035bf8cf2bb04a40558e050f66a9", "sha1": "fa792636fab99c12f01a50f2f2e7e49a4163be31", "sha256": "d9b7543536745b0f350e2e2b307dcdd7982560f45491ddf6376aa8cc7bee0046"}, "dob": {"date": "1947-01-11T16:27:22.136Z", "age": 76}, "registered": {"date": "2012-10-12T13:52:51.428Z", "age": 11}, "phone": "0397-8016035", "cell": "0171-6169370", "id": {"name": "SVNR", "value": "26 110147 K 481"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/42.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/42.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/42.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
{"gender": "female", "name": {"title": "Miss", "first": "Nuria", "last": "Castro"}, "location": {"street": {"number": 5282, "name": "Calle de Ferraz"}, "city": "Torrej\u00f3n de Ardoz", "state": "Andaluc\u00eda", "country": "Spain", "postcode": 37767, "coordinates": {"latitude": "43.8560", "longitude": "14.7635"}, "timezone": {"offset": "-10:00", "description": "Hawaii"}}, "email": "nuria.castro@example.com", "login": {"uuid": "5f4ba5aa-56b9-43cd-a00d-4caee10dd4a4", "username": "purplezebra152", "password": "bruins", "salt": "Pi3t6GZr", "md5": "5947c672fe6c76a6e0b5200cfc138552", "sha1": "4e24b9b79123486b39e8f22b944f710edc55794d", "sha256": "3c31e598f81d268eee1aed4865239405d780b8cb39d926a23d6a219d9caac3a1"}, "dob": {"date": "1962-02-08T13:52:48.490Z", "age": 61}, "registered": {"date": "2009-03-29T08:26:01.351Z", "age": 14}, "phone": "916-406-577", "cell": "660-465-465", "id": {"name": "DNI", "value": "76499924-Y"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/32.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/32.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/32.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Miss", "first": "Vildan", "last": "Ke\u00e7eci"}, "location": {"street": {"number": 9205, "name": "Anafartalar Cd"}, "city": "Kayseri", "state": "Hakk\u00e2ri", "country": "Turkey", "postcode": 81969, "coordinates": {"latitude": "-46.5612", "longitude": "72.3140"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "vildan.kececi@example.com", "login": {"uuid": "3f8ac036-92bf-4751-b40e-85a0a99db442", "username": "blackkoala424", "password": "jazzman", "salt": "tyGQ4eeC", "md5": "ff42dc5d8acc6943426e95c22d55e3b1", "sha1": "c2d78a0151fbb0510f694d9746b362f51219dbe3", "sha256": "5d9e0a871bff32164cbac725667823716aae06214a3b2152f9709be0895a2f05"}, "dob": {"date": "1993-12-31T05:09:07.248Z", "age": 29}, "registered": {"date": "2006-09-16T11:22:47.710Z", "age": 17}, "phone": "(810)-384-4129", "cell": "(334)-315-1134", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/40.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/40.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/40.jpg"}, "nat": "TR"}
{"gender": "female", "name": {"title": "Miss", "first": "Estelle", "last": "Fournier"}, "location": {"street": {"number": 6943, "name": "Rue du Village"}, "city": "Lille", "state": "Guadeloupe", "country": "France", "postcode": 69236, "coordinates": {"latitude": "18.5340", "longitude": "-167.6684"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "estelle.fournier@example.com", "login": {"uuid": "82798fe7-766c-4f18-a811-c29bc882ace2", "username": "yellowleopard981", "password": "queenie", "salt": "u1CrF1ty", "md5": "ecef44528e525545c6bbc0fc5aef19dc", "sha1": "e24efb4dcaf76e2da48afd4e19ab2da9b696272b", "sha256": "c536fc296d51befa7e4071a47a84dd5d109a0c2ac4b6bd5d00fd62e9f0cd7a5e"}, "dob": {"date": "1955-10-20T22:04:12.919Z", "age": 68}, "registered": {"date": "2010-04-29T18:24:11.009Z", "age": 13}, "phone": "03-31-09-24-73", "cell": "06-29-61-45-93", "id": {"name": "INSEE", "value": "2550991537258 58"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/91.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/91.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/91.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Mrs", "first": "Lucy", "last": "Cruz"}, "location": {"street": {"number": 7477, "name": "Hamilton Ave"}, "city": "Milwaukee", "state": "Delaware", "country": "United States", "postcode": 43570, "coordinates": {"latitude": "-30.9476", "longitude": "-88.9587"}, "timezone": {"offset": "+2:00", "description": "Kaliningrad, South Africa"}}, "email": "lucy.cruz@example.com", "login": {"uuid": "7c145ebd-4226-4173-ba93-3c8c919bd219", "username": "yellowladybug766", "password": "proxy", "salt": "FBNNudA4", "md5": "973785a35911960c3071b2dd77d43dfd", "sha1": "a9b0177c64d92dccac7a8788c990e8b025de31f2", "sha256": "8d9e23e8a9f6f17d04a95a72a1c224f0a30248a3b0dab658c8c6225611a6c8b6"}, "dob": {"date": "1951-08-05T18:31:29.220Z", "age": 72}, "registered": {"date": "2012-11-17T23:26:37.180Z", "age": 11}, "phone": "(743) 507-6493", "cell": "(288) 637-4718", "id": {"name": "SSN", "value": "112-75-7255"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/8.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/8.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/8.jpg"}, "nat": "US"}

You can use jawk like:

jawk \
    --select '.nat = Nationality' \
    --sort-by .nat \
    --unique \
    --output-style csv

To produce:

"Nationality"
"CA"
"CH"
"DE"
"ES"
"FR"
"GB"
"IE"
"IR"
"MX"
"NL"
"NO"
"RS"
"TR"
"US"

Using macros as functions

In this example we will see how to using macros as functions.

If your input looks like

{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Angela", "last": "\u00c1lvarez"}, "location": {"street": {"number": 8355, "name": "Avenida del Planetario"}, "city": "La Palma", "state": "Asturias", "country": "Spain", "postcode": 81328, "coordinates": {"latitude": "-66.5496", "longitude": "173.4816"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "angela.alvarez@example.com", "login": {"uuid": "663bf27a-be49-410e-ad36-2c6fe3bd1610", "username": "angrybutterfly198", "password": "avalanch", "salt": "x05nT1hy", "md5": "70cf6a63245104a088534e47c8c32913", "sha1": "9e9429b6e476b91c3c6c3c8beab8fd4e020c54e7", "sha256": "fb0ac7e1bdcd099de48bb943deb1c8265b071aab01d101999fd6d47cda5ce964"}, "dob": {"date": "1976-06-09T13:50:15.295Z", "age": 47}, "registered": {"date": "2007-07-30T05:55:20.320Z", "age": 16}, "phone": "906-769-799", "cell": "665-054-011", "id": {"name": "DNI", "value": "10772136-H"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/22.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/22.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/22.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Mrs", "first": "Tyra", "last": "Smedstad"}, "location": {"street": {"number": 2784, "name": "Fr\u00f8yas gate"}, "city": "Gata", "state": "Oppland", "country": "Norway", "postcode": "7873", "coordinates": {"latitude": "-71.4445", "longitude": "-140.5351"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "tyra.smedstad@example.com", "login": {"uuid": "8431abbf-cfeb-4818-a121-31cc425a4bef", "username": "beautifulpanda450", "password": "clock", "salt": "tDRoW2LQ", "md5": "40631b2513bd882411393d9dea3af918", "sha1": "f465fe539d4207f65835c7bca92403f962eacb2c", "sha256": "345eb98f85c395a57921656d65f9dc4682aebcfe6636e528e619ce72b8d1516e"}, "dob": {"date": "1984-08-10T19:34:41.505Z", "age": 39}, "registered": {"date": "2012-01-14T14:01:04.612Z", "age": 11}, "phone": "55399992", "cell": "94741076", "id": {"name": "FN", "value": "10088419486"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/78.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/78.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/78.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Isabella", "last": "Mackay"}, "location": {"street": {"number": 811, "name": "9th St"}, "city": "Inverness", "state": "Prince Edward Island", "country": "Canada", "postcode": "X0B 3S7", "coordinates": {"latitude": "50.2028", "longitude": "-36.3905"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "isabella.mackay@example.com", "login": {"uuid": "f4338957-b3cd-49a3-9b6b-7d695ffff3a6", "username": "organicdog306", "password": "finder", "salt": "wNA1dNtD", "md5": "41394bad944f1a38ae7d99b152d668a2", "sha1": "5a397bc12f2a8b9a919b6c11c5b3af34e0399a26", "sha256": "3e58331e19da7b7d091b3284b21d9a8882aa6431ea8192df38e4d00384b1b008"}, "dob": {"date": "1989-03-25T03:57:37.855Z", "age": 34}, "registered": {"date": "2019-12-09T14:34:52.560Z", "age": 4}, "phone": "K24 Q56-4317", "cell": "H43 P90-4248", "id": {"name": "SIN", "value": "601246507"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/37.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/37.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/37.jpg"}, "nat": "CA"}
{"gender": "female", "name": {"title": "Miss", "first": "Phoebe", "last": "Lawson"}, "location": {"street": {"number": 6088, "name": "Stanley Road"}, "city": "Newcastle upon Tyne", "state": "Bedfordshire", "country": "United Kingdom", "postcode": "KK55 0SG", "coordinates": {"latitude": "43.8753", "longitude": "-12.3481"}, "timezone": {"offset": "+10:00", "description": "Eastern Australia, Guam, Vladivostok"}}, "email": "phoebe.lawson@example.com", "login": {"uuid": "21ba9d1a-89c4-4117-b15a-6d0a575923ce", "username": "blackwolf672", "password": "1972", "salt": "GDQogQCY", "md5": "01dfc713aa53fb127d46bdc7befedc13", "sha1": "2d618d08b2cb585300b86881c5b8fe0622c3f311", "sha256": "d6a5bf3a971bdea2ec3ef6357a6da100eb20931670538633695061115109e8a3"}, "dob": {"date": "1982-09-19T14:13:41.640Z", "age": 41}, "registered": {"date": "2008-09-14T06:23:56.507Z", "age": 15}, "phone": "016977 0286", "cell": "07356 649337", "id": {"name": "NINO", "value": "HT 50 56 21 E"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/1.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/1.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/1.jpg"}, "nat": "GB"}
{"gender": "male", "name": {"title": "Mr", "first": "Timeo", "last": "Dubois"}, "location": {"street": {"number": 641, "name": "Rue Duquesne"}, "city": "Le Mans", "state": "H\u00e9rault", "country": "France", "postcode": 29604, "coordinates": {"latitude": "-20.3780", "longitude": "-39.1876"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "timeo.dubois@example.com", "login": {"uuid": "37a99762-b475-49f0-a47d-d7dde3abe42e", "username": "heavyduck382", "password": "death1", "salt": "azZtceGC", "md5": "9f514a2ab55698b558514baad3e83e9b", "sha1": "77b134d925c0743d5c00fce613e2131c0862d30f", "sha256": "3ae0fd5fecf0cbfe44cd9e9bc7f842885cd952ba321fea57060709f45b03fdbd"}, "dob": {"date": "1994-04-30T04:02:25.917Z", "age": 29}, "registered": {"date": "2003-11-03T00:29:57.888Z", "age": 20}, "phone": "04-23-26-34-99", "cell": "06-23-19-78-72", "id": {"name": "INSEE", "value": "1940355952529 29"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/44.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/44.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/44.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Miss", "first": "Teresa", "last": "Soto"}, "location": {"street": {"number": 2962, "name": "Green Lane"}, "city": "Rush", "state": "Cork City", "country": "Ireland", "postcode": 43064, "coordinates": {"latitude": "-66.9461", "longitude": "94.9504"}, "timezone": {"offset": "-12:00", "description": "Eniwetok, Kwajalein"}}, "email": "teresa.soto@example.com", "login": {"uuid": "3b3192e8-8c1a-4b92-aa9b-ac0ca43f6c5a", "username": "beautifulsnake498", "password": "thor", "salt": "Yl3cj0BU", "md5": "c2856e2e41aa0167870aca7b765f2438", "sha1": "3c82e8c53b916f89f8fc71451a99a80aa5bade29", "sha256": "9233d57206dad83294ad8d4f260a697c3b7d2effc61b07f4f47167109d244208"}, "dob": {"date": "1956-12-02T15:49:12.183Z", "age": 67}, "registered": {"date": "2010-01-13T09:38:53.238Z", "age": 13}, "phone": "041-895-6753", "cell": "081-927-6366", "id": {"name": "PPS", "value": "3476278T"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/39.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/39.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/39.jpg"}, "nat": "IE"}
{"gender": "male", "name": {"title": "Mr", "first": "Adalberto", "last": "Tapia"}, "location": {"street": {"number": 7643, "name": "Pasaje Quer\u00e9taro"}, "city": "Tequesquitl\u00e1n", "state": "Veracruz", "country": "Mexico", "postcode": 19392, "coordinates": {"latitude": "11.1359", "longitude": "14.4986"}, "timezone": {"offset": "-4:00", "description": "Atlantic Time (Canada), Caracas, La Paz"}}, "email": "adalberto.tapia@example.com", "login": {"uuid": "cd7268cb-0137-4a90-be10-5bc7ac80f9c8", "username": "yellowleopard669", "password": "carpet", "salt": "cYZqQqoR", "md5": "3c508daf3fb63ec6ab7e8267677789cd", "sha1": "29b5562a2e1c57564a511fe7b8ab31c6d46d9770", "sha256": "0a50edaf32ac09be3b5b385a7fe46cd12a8511d889f075725740fc4431c76125"}, "dob": {"date": "1987-10-26T20:21:42.260Z", "age": 36}, "registered": {"date": "2002-06-06T16:11:31.428Z", "age": 21}, "phone": "(636) 179 4319", "cell": "(620) 953 6065", "id": {"name": "NSS", "value": "58 72 21 6051 4"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/24.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/24.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/24.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Mrs", "first": "Yolanda", "last": "Vela"}, "location": {"street": {"number": 4235, "name": "Circunvalaci\u00f3n Norte Ontiveros"}, "city": "Santa Elena (Francisco Zarco)", "state": "Zacatecas", "country": "Mexico", "postcode": 19311, "coordinates": {"latitude": "-86.2815", "longitude": "-56.8200"}, "timezone": {"offset": "+1:00", "description": "Brussels, Copenhagen, Madrid, Paris"}}, "email": "yolanda.vela@example.com", "login": {"uuid": "87b31a7d-02fa-4a50-a1a5-bd04cfed84dc", "username": "silverlion570", "password": "pointer", "salt": "FAIfhUkJ", "md5": "de4fdd1563141be4260e4bfb7d1e0934", "sha1": "37fc20366cec7a35ad2b8a34692112562aa5038a", "sha256": "90294aa678e54f47d3854ec7f45663943a39f8b13d003865179fd8793a06afa2"}, "dob": {"date": "1954-08-06T04:27:10.482Z", "age": 69}, "registered": {"date": "2015-03-14T09:44:06.448Z", "age": 8}, "phone": "(691) 324 7123", "cell": "(697) 831 1314", "id": {"name": "NSS", "value": "27 66 22 7575 0"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/73.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/73.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/73.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Miss", "first": "\u067e\u0627\u0631\u0645\u06cc\u0633", "last": "\u062d\u06cc\u062f\u0631\u06cc"}, "location": {"street": {"number": 9683, "name": "\u0645\u06cc\u062f\u0627\u0646 \u0634\u0645\u0634\u06cc\u0631\u06cc"}, "city": "\u0642\u0627\u0626\u0645\u200c\u0634\u0647\u0631", "state": "\u0627\u0631\u062f\u0628\u06cc\u0644", "country": "Iran", "postcode": 15785, "coordinates": {"latitude": "-28.5413", "longitude": "-55.7982"}, "timezone": {"offset": "+4:00", "description": "Abu Dhabi, Muscat, Baku, Tbilisi"}}, "email": "prmys.hydry@example.com", "login": {"uuid": "7478b071-39b3-443e-9321-386aee5abfdc", "username": "crazywolf415", "password": "wildcard", "salt": "cPF8bhqW", "md5": "b7224d92917116ea2bfda6b779c2a888", "sha1": "c3ebee3d2983acc86a6f0f0d83640d28d3966a3c", "sha256": "762751b82fe8708e42876cc5e1c9411ef7f820ffd337afb400c22fc6b0cf46d3"}, "dob": {"date": "1972-06-09T00:59:53.966Z", "age": 51}, "registered": {"date": "2016-05-31T13:19:02.232Z", "age": 7}, "phone": "023-36980589", "cell": "0914-858-9022", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/33.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/33.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/33.jpg"}, "nat": "IR"}
{"gender": "male", "name": {"title": "Mr", "first": "Gordon", "last": "Boller"}, "location": {"street": {"number": 8049, "name": "Tannenweg"}, "city": "Petershagen", "state": "Th\u00fcringen", "country": "Germany", "postcode": 47252, "coordinates": {"latitude": "-42.8514", "longitude": "160.5128"}, "timezone": {"offset": "-3:00", "description": "Brazil, Buenos Aires, Georgetown"}}, "email": "gordon.boller@example.com", "login": {"uuid": "a1455a69-b033-4398-9f10-b14da6240107", "username": "beautifulbutterfly315", "password": "marvin", "salt": "bDwIxU0E", "md5": "1f570d5973d860a10e8a3b121153348c", "sha1": "9f95df3a63512c9d9ef26cd76a37cc78a3a00e0c", "sha256": "3d887130990cdb96baefb88260d085f9755aabf89f912d81238b708a0c47b27c"}, "dob": {"date": "1972-09-11T10:13:54.296Z", "age": 51}, "registered": {"date": "2021-03-23T13:53:23.684Z", "age": 2}, "phone": "0306-8436446", "cell": "0179-0387220", "id": {"name": "SVNR", "value": "70 110972 B 280"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/10.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/10.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/10.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mrs", "first": "Silvija", "last": "Jevremovi\u0107"}, "location": {"street": {"number": 7578, "name": "Kneza Palalije"}, "city": "Zve\u010dan", "state": "Rasina", "country": "Serbia", "postcode": 83539, "coordinates": {"latitude": "85.9791", "longitude": "44.8104"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "silvija.jevremovic@example.com", "login": {"uuid": "52f11af1-3a3f-4a9a-abb2-49bed0a599a6", "username": "sadelephant446", "password": "madness", "salt": "PMTZhdZP", "md5": "ec41873a6304102df36f6c995584b52a", "sha1": "985e48062b108e1088b95d74689a23e905b72853", "sha256": "3892f6dbee70471dbd21dead4076a3ef8d5583349630f7b76712809d040e68f3"}, "dob": {"date": "1965-03-08T20:08:57.497Z", "age": 58}, "registered": {"date": "2004-02-07T04:43:54.506Z", "age": 19}, "phone": "032-7888-458", "cell": "062-3160-899", "id": {"name": "SID", "value": "355414676"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/70.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/70.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/70.jpg"}, "nat": "RS"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Josephine", "last": "Blanchard"}, "location": {"street": {"number": 1362, "name": "Avenue Goerges Cl\u00e9menceau"}, "city": "Gisikon", "state": "Graub\u00fcnden", "country": "Switzerland", "postcode": 5472, "coordinates": {"latitude": "72.2107", "longitude": "-52.6990"}, "timezone": {"offset": "+3:00", "description": "Baghdad, Riyadh, Moscow, St. Petersburg"}}, "email": "josephine.blanchard@example.com", "login": {"uuid": "6b5b3145-f924-4e65-9305-66890a41c582", "username": "greenostrich767", "password": "serenity", "salt": "6fG2jx31", "md5": "2c96796ea5caec55d88feb2404b57345", "sha1": "36bc76ea90bab3fb8f2ce2078a53e02dca259bcb", "sha256": "425de57999ed3eee7bbe73c2a63759349df6e9a6844a0c45930e5931f783225c"}, "dob": {"date": "1987-03-17T03:09:53.399Z", "age": 36}, "registered": {"date": "2008-03-22T15:36:29.315Z", "age": 15}, "phone": "075 881 90 80", "cell": "075 220 90 42", "id": {"name": "AVS", "value": "756.1304.6729.13"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/69.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/69.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/69.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Klaus-Peter", "last": "Koopmann"}, "location": {"street": {"number": 1666, "name": "Fliederweg"}, "city": "Bad Breisig", "state": "Brandenburg", "country": "Germany", "postcode": 98467, "coordinates": {"latitude": "29.5464", "longitude": "-176.7671"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "klaus-peter.koopmann@example.com", "login": {"uuid": "5874f794-b909-4a31-a63e-3d1e67306d50", "username": "greenbutterfly873", "password": "1qaz2wsx", "salt": "9s8rf1wp", "md5": "5f0a035bf8cf2bb04a40558e050f66a9", "sha1": "fa792636fab99c12f01a50f2f2e7e49a4163be31", "sha256": "d9b7543536745b0f350e2e2b307dcdd7982560f45491ddf6376aa8cc7bee0046"}, "dob": {"date": "1947-01-11T16:27:22.136Z", "age": 76}, "registered": {"date": "2012-10-12T13:52:51.428Z", "age": 11}, "phone": "0397-8016035", "cell": "0171-6169370", "id": {"name": "SVNR", "value": "26 110147 K 481"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/42.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/42.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/42.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
{"gender": "female", "name": {"title": "Miss", "first": "Nuria", "last": "Castro"}, "location": {"street": {"number": 5282, "name": "Calle de Ferraz"}, "city": "Torrej\u00f3n de Ardoz", "state": "Andaluc\u00eda", "country": "Spain", "postcode": 37767, "coordinates": {"latitude": "43.8560", "longitude": "14.7635"}, "timezone": {"offset": "-10:00", "description": "Hawaii"}}, "email": "nuria.castro@example.com", "login": {"uuid": "5f4ba5aa-56b9-43cd-a00d-4caee10dd4a4", "username": "purplezebra152", "password": "bruins", "salt": "Pi3t6GZr", "md5": "5947c672fe6c76a6e0b5200cfc138552", "sha1": "4e24b9b79123486b39e8f22b944f710edc55794d", "sha256": "3c31e598f81d268eee1aed4865239405d780b8cb39d926a23d6a219d9caac3a1"}, "dob": {"date": "1962-02-08T13:52:48.490Z", "age": 61}, "registered": {"date": "2009-03-29T08:26:01.351Z", "age": 14}, "phone": "916-406-577", "cell": "660-465-465", "id": {"name": "DNI", "value": "76499924-Y"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/32.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/32.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/32.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Miss", "first": "Vildan", "last": "Ke\u00e7eci"}, "location": {"street": {"number": 9205, "name": "Anafartalar Cd"}, "city": "Kayseri", "state": "Hakk\u00e2ri", "country": "Turkey", "postcode": 81969, "coordinates": {"latitude": "-46.5612", "longitude": "72.3140"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "vildan.kececi@example.com", "login": {"uuid": "3f8ac036-92bf-4751-b40e-85a0a99db442", "username": "blackkoala424", "password": "jazzman", "salt": "tyGQ4eeC", "md5": "ff42dc5d8acc6943426e95c22d55e3b1", "sha1": "c2d78a0151fbb0510f694d9746b362f51219dbe3", "sha256": "5d9e0a871bff32164cbac725667823716aae06214a3b2152f9709be0895a2f05"}, "dob": {"date": "1993-12-31T05:09:07.248Z", "age": 29}, "registered": {"date": "2006-09-16T11:22:47.710Z", "age": 17}, "phone": "(810)-384-4129", "cell": "(334)-315-1134", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/40.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/40.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/40.jpg"}, "nat": "TR"}
{"gender": "female", "name": {"title": "Miss", "first": "Estelle", "last": "Fournier"}, "location": {"street": {"number": 6943, "name": "Rue du Village"}, "city": "Lille", "state": "Guadeloupe", "country": "France", "postcode": 69236, "coordinates": {"latitude": "18.5340", "longitude": "-167.6684"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "estelle.fournier@example.com", "login": {"uuid": "82798fe7-766c-4f18-a811-c29bc882ace2", "username": "yellowleopard981", "password": "queenie", "salt": "u1CrF1ty", "md5": "ecef44528e525545c6bbc0fc5aef19dc", "sha1": "e24efb4dcaf76e2da48afd4e19ab2da9b696272b", "sha256": "c536fc296d51befa7e4071a47a84dd5d109a0c2ac4b6bd5d00fd62e9f0cd7a5e"}, "dob": {"date": "1955-10-20T22:04:12.919Z", "age": 68}, "registered": {"date": "2010-04-29T18:24:11.009Z", "age": 13}, "phone": "03-31-09-24-73", "cell": "06-29-61-45-93", "id": {"name": "INSEE", "value": "2550991537258 58"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/91.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/91.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/91.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Mrs", "first": "Lucy", "last": "Cruz"}, "location": {"street": {"number": 7477, "name": "Hamilton Ave"}, "city": "Milwaukee", "state": "Delaware", "country": "United States", "postcode": 43570, "coordinates": {"latitude": "-30.9476", "longitude": "-88.9587"}, "timezone": {"offset": "+2:00", "description": "Kaliningrad, South Africa"}}, "email": "lucy.cruz@example.com", "login": {"uuid": "7c145ebd-4226-4173-ba93-3c8c919bd219", "username": "yellowladybug766", "password": "proxy", "salt": "FBNNudA4", "md5": "973785a35911960c3071b2dd77d43dfd", "sha1": "a9b0177c64d92dccac7a8788c990e8b025de31f2", "sha256": "8d9e23e8a9f6f17d04a95a72a1c224f0a30248a3b0dab658c8c6225611a6c8b6"}, "dob": {"date": "1951-08-05T18:31:29.220Z", "age": 72}, "registered": {"date": "2012-11-17T23:26:37.180Z", "age": 11}, "phone": "(743) 507-6493", "cell": "(288) 637-4718", "id": {"name": "SSN", "value": "112-75-7255"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/8.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/8.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/8.jpg"}, "nat": "US"}

You can use jawk like:

jawk \
    --select '(concat .name.first " " .name.last) = Name' \
    --select '(| .dob @day-of-the-week)=Day of birth' \
    --select '(| .registered @day-of-the-week)=Day of registration' \
    --select '(| .registered @time-of-day)=Registration at' \
    --select '(| .dob @time-of-day)=Born at' \
    --set '@day-of-the-week=(format_time (parse_time_with_zone (.get "date") "%+") "%A")' \
    --set 'before="Before Noon"' \
    --set 'after="After Noon"' \
    --set '@time-of-day=(? (> (parse (extract_regex_group (.get "date") "[0-9-]+T([0-9]+):.+" 1)) 12) :before :after)' \
    --output-style csv \
    --sort-by .name.last

To produce:

"Name", "Day of birth", "Day of registration", "Registration at", "Born at"
"Fabio Berden", "Saturday", "Tuesday", "After Noon", "After Noon"
"Josephine Blanchard", "Tuesday", "Saturday", "Before Noon", "After Noon"
"Gordon Boller", "Monday", "Tuesday", "Before Noon", "After Noon"
"Nuria Castro", "Thursday", "Sunday", "After Noon", "Before Noon"
"Lucy Cruz", "Sunday", "Saturday", "Before Noon", "Before Noon"
"Timeo Dubois", "Saturday", "Monday", "After Noon", "After Noon"
"Estelle Fournier", "Thursday", "Thursday", "Before Noon", "Before Noon"
"Fredrikke Furseth", "Monday", "Wednesday", "After Noon", "Before Noon"
"Silvija Jevremović", "Monday", "Saturday", "After Noon", "Before Noon"
"Vildan Keçeci", "Friday", "Saturday", "After Noon", "After Noon"
"Klaus-Peter Koopmann", "Saturday", "Friday", "Before Noon", "Before Noon"
"Phoebe Lawson", "Sunday", "Sunday", "After Noon", "Before Noon"
"Isabella Mackay", "Saturday", "Monday", "Before Noon", "After Noon"
"Margrit Sanchez", "Thursday", "Wednesday", "Before Noon", "After Noon"
"Tyra Smedstad", "Friday", "Saturday", "Before Noon", "Before Noon"
"Teresa Soto", "Sunday", "Wednesday", "After Noon", "Before Noon"
"Adalberto Tapia", "Monday", "Thursday", "Before Noon", "Before Noon"
"Yolanda Vela", "Friday", "Saturday", "After Noon", "After Noon"
"Angela Álvarez", "Wednesday", "Monday", "After Noon", "Before Noon"
"پارمیس حیدری", "Friday", "Tuesday", "Before Noon", "After Noon"

Split values into rows

In this example we will see how to split values into rows.

If your input looks like

{"results":[{"gender":"female","name":{"title":"Miss","first":"Peppi","last":"Toro"},"location":{"street":{"number":6562,"name":"Siilitie"},"city":"Keminmaa","state":"Kymenlaakso","country":"Finland","postcode":15959,"coordinates":{"latitude":"-25.8117","longitude":"25.7781"},"timezone":{"offset":"+4:30","description":"Kabul"}},"email":"peppi.toro@example.com","login":{"uuid":"be3aad43-1112-47be-ac2d-388d837bc7ef","username":"ticklishduck577","password":"beau","salt":"ffjBU5NW","md5":"5f6640bbfafae5214650b075f10d172f","sha1":"9ea9d42b836f165d42e8fb8bf7c5c57a3eb05f0b","sha256":"53a51b6814eea431ff0d09d0ffb0c38050d55d196ec46f5ba1cbcf206fa78888"},"dob":{"date":"1974-11-18T02:21:12.768Z","age":49},"registered":{"date":"2019-07-22T10:35:33.126Z","age":4},"phone":"03-478-499","cell":"048-737-68-94","id":{"name":"HETU","value":"NaNNA772undefined"},"picture":{"large":"https://randomuser.me/api/portraits/women/52.jpg","medium":"https://randomuser.me/api/portraits/med/women/52.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/52.jpg"},"nat":"FI"},{"gender":"female","name":{"title":"Miss","first":"Nuray","last":"Ewert"},"location":{"street":{"number":5231,"name":"Kirchweg"},"city":"Neu-Anspach","state":"Schleswig-Holstein","country":"Germany","postcode":77066,"coordinates":{"latitude":"54.9963","longitude":"107.3057"},"timezone":{"offset":"-3:00","description":"Brazil, Buenos Aires, Georgetown"}},"email":"nuray.ewert@example.com","login":{"uuid":"5cadf6cc-53ec-4225-889e-b5fb1cedfe89","username":"orangemeercat549","password":"topgun","salt":"u8TeW310","md5":"af4e640986a36622390e3bbcd14f12da","sha1":"b0d9bb333f3589e75e2a095254c4e6640c47a6c0","sha256":"f05274ef793f58dc157a8a29ea41de6a1be3b863149c9131a22ba2d89bbae696"},"dob":{"date":"1965-12-29T17:54:56.374Z","age":58},"registered":{"date":"2009-11-24T21:02:41.670Z","age":14},"phone":"0200-3782398","cell":"0177-4093048","id":{"name":"SVNR","value":"76 291265 E 770"},"picture":{"large":"https://randomuser.me/api/portraits/women/69.jpg","medium":"https://randomuser.me/api/portraits/med/women/69.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/69.jpg"},"nat":"DE"},{"gender":"female","name":{"title":"Miss","first":"Caroline","last":"Caldwell"},"location":{"street":{"number":4954,"name":"Sunset St"},"city":"Geelong","state":"New South Wales","country":"Australia","postcode":7778,"coordinates":{"latitude":"-0.0249","longitude":"-44.6147"},"timezone":{"offset":"-11:00","description":"Midway Island, Samoa"}},"email":"caroline.caldwell@example.com","login":{"uuid":"6b3005cc-36fd-4c61-a617-de800d21207c","username":"tinyfish773","password":"puck","salt":"jhEBfkWQ","md5":"5deeb9b7ca1c1ee04bd2bf78a4d21964","sha1":"b07e65be294c54b901a52eddcf4d8b6f871b0a22","sha256":"0e46891b3431d41cb4d866c034e578b651b759f688aea8f5c7d185540df37047"},"dob":{"date":"1962-03-19T02:56:41.858Z","age":61},"registered":{"date":"2020-05-15T07:40:57.632Z","age":3},"phone":"09-5770-6743","cell":"0484-994-166","id":{"name":"TFN","value":"513712465"},"picture":{"large":"https://randomuser.me/api/portraits/women/12.jpg","medium":"https://randomuser.me/api/portraits/med/women/12.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/12.jpg"},"nat":"AU"},{"gender":"female","name":{"title":"Miss","first":"Freja","last":"Mortensen"},"location":{"street":{"number":8993,"name":"Adelgade"},"city":"Ølstykke","state":"Nordjylland","country":"Denmark","postcode":16524,"coordinates":{"latitude":"-21.5746","longitude":"-91.7624"},"timezone":{"offset":"-2:00","description":"Mid-Atlantic"}},"email":"freja.mortensen@example.com","login":{"uuid":"1217612c-abe4-4b4e-af9c-c0ac66e7ff72","username":"brownfish352","password":"oceans","salt":"CYfXkT3Y","md5":"3661adb5a1ff32ce0630e3522c1aa773","sha1":"506e92efd9038744a2697258d92540aa2bf51dd6","sha256":"99b9d458db638404942263556f4c9d72497cf6521a114cff1ef68241a18df43a"},"dob":{"date":"1960-06-14T23:48:11.306Z","age":63},"registered":{"date":"2018-11-18T03:34:20.450Z","age":5},"phone":"73640349","cell":"33351024","id":{"name":"CPR","value":"140660-7877"},"picture":{"large":"https://randomuser.me/api/portraits/women/44.jpg","medium":"https://randomuser.me/api/portraits/med/women/44.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/44.jpg"},"nat":"DK"},{"gender":"male","name":{"title":"Mr","first":"Kenzo","last":"Morin"},"location":{"street":{"number":9190,"name":"Rue Duguesclin"},"city":"Saint-Étienne","state":"Haute-Marne","country":"France","postcode":67500,"coordinates":{"latitude":"18.2644","longitude":"55.1577"},"timezone":{"offset":"-3:30","description":"Newfoundland"}},"email":"kenzo.morin@example.com","login":{"uuid":"815b136a-8c4d-4582-9e0f-817c1c2beda3","username":"bigmouse458","password":"richards","salt":"9gm2Bl1q","md5":"51fdff46096555422007e571ecc29c2e","sha1":"80c2e0ae7510bfaf92a18da80d51324e45a3137d","sha256":"17358e0d490f436547948eeedc24fd499cd07bcb584f0314863fbd13c74c41da"},"dob":{"date":"1965-05-23T12:25:09.223Z","age":58},"registered":{"date":"2003-12-28T04:06:10.495Z","age":20},"phone":"02-18-80-60-72","cell":"06-22-04-51-86","id":{"name":"INSEE","value":"1650453513291 87"},"picture":{"large":"https://randomuser.me/api/portraits/men/95.jpg","medium":"https://randomuser.me/api/portraits/med/men/95.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/95.jpg"},"nat":"FR"},{"gender":"male","name":{"title":"Mr","first":"Eino","last":"Jokinen"},"location":{"street":{"number":7764,"name":"Mechelininkatu"},"city":"Kaustinen","state":"Pirkanmaa","country":"Finland","postcode":80523,"coordinates":{"latitude":"-38.1302","longitude":"-79.0322"},"timezone":{"offset":"-1:00","description":"Azores, Cape Verde Islands"}},"email":"eino.jokinen@example.com","login":{"uuid":"4d7b5b60-57f6-4548-a046-bdbb656b5edd","username":"blueladybug328","password":"iforgot","salt":"VwF2p98Q","md5":"46af4003d21b37f6dcddf953c27c7d71","sha1":"93a1f5464344cff8a0229d37b99fe1da7d05ffd3","sha256":"9d00409a27236a8084a838938d43e7c1c0a03d19e2667360624ee5dae1da02ac"},"dob":{"date":"1949-05-08T14:44:31.912Z","age":74},"registered":{"date":"2015-06-24T08:19:29.242Z","age":8},"phone":"03-724-984","cell":"049-066-10-38","id":{"name":"HETU","value":"NaNNA859undefined"},"picture":{"large":"https://randomuser.me/api/portraits/men/87.jpg","medium":"https://randomuser.me/api/portraits/med/men/87.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/87.jpg"},"nat":"FI"},{"gender":"male","name":{"title":"Mr","first":"Morris","last":"Gillissen"},"location":{"street":{"number":6702,"name":"Hoekliedenstraat"},"city":"Driehuizen","state":"Noord-Holland","country":"Netherlands","postcode":"9347 TJ","coordinates":{"latitude":"-18.4787","longitude":"50.0011"},"timezone":{"offset":"-4:00","description":"Atlantic Time (Canada), Caracas, La Paz"}},"email":"morris.gillissen@example.com","login":{"uuid":"f13d73d4-c196-451f-82ed-090b4440683d","username":"goldenbear350","password":"club","salt":"q1IBKnEe","md5":"b8ead0178bd9dee880e6a125aeeac41e","sha1":"82adea8b502b162999783a0246a7a7ad26ae8e04","sha256":"4a574bc9736d5ab86c09d9d1379ccead3a3b8a7661c76c3f9cefff2bc1b9bbac"},"dob":{"date":"1976-06-29T03:44:09.043Z","age":47},"registered":{"date":"2011-10-18T19:00:15.358Z","age":12},"phone":"(013) 0827250","cell":"(06) 53255605","id":{"name":"BSN","value":"42997202"},"picture":{"large":"https://randomuser.me/api/portraits/men/52.jpg","medium":"https://randomuser.me/api/portraits/med/men/52.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/52.jpg"},"nat":"NL"},{"gender":"male","name":{"title":"Mr","first":"Yan","last":"Mihalchenko"},"location":{"street":{"number":3577,"name":"Dubrovicka"},"city":"Arciz","state":"Ternopilska","country":"Ukraine","postcode":72982,"coordinates":{"latitude":"25.0388","longitude":"11.7355"},"timezone":{"offset":"+7:00","description":"Bangkok, Hanoi, Jakarta"}},"email":"yan.mihalchenko@example.com","login":{"uuid":"48253e25-4336-4c64-8cc5-8d3ffa73741a","username":"silvermeercat354","password":"dancing","salt":"zdpVc9eG","md5":"049c7af39ecda31acae915a06256b181","sha1":"b998c1dd614f514d4af7133d10b18e8f18068143","sha256":"f85124d912520a399e8bd5b7028d1dfa18c224dd0c05beaa232ad2747feee4d4"},"dob":{"date":"1999-03-18T22:12:24.110Z","age":24},"registered":{"date":"2014-01-25T20:48:15.571Z","age":9},"phone":"(099) I07-8254","cell":"(097) A88-3820","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/91.jpg","medium":"https://randomuser.me/api/portraits/med/men/91.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/91.jpg"},"nat":"UA"},{"gender":"male","name":{"title":"Mr","first":"Albert","last":"Jensen"},"location":{"street":{"number":3870,"name":"Nørrevænget"},"city":"Støvring ","state":"Syddanmark","country":"Denmark","postcode":67779,"coordinates":{"latitude":"67.3700","longitude":"-134.1782"},"timezone":{"offset":"-8:00","description":"Pacific Time (US & Canada)"}},"email":"albert.jensen@example.com","login":{"uuid":"b47fd6e0-9a21-45ed-9db1-a34ab3a84d97","username":"crazylion763","password":"tight","salt":"j14Owt44","md5":"e5bd2ac8137bb6c630f2a547ce2c192b","sha1":"dbc0c28ddf86dda8609ba8ee16f526ffc8eead3c","sha256":"d0146420601959eb308e82a93904ed204c86fa1bb969f65c0568a5f4b5204aac"},"dob":{"date":"1981-08-11T09:27:47.089Z","age":42},"registered":{"date":"2017-07-26T22:03:02.125Z","age":6},"phone":"90353116","cell":"06343374","id":{"name":"CPR","value":"110881-5682"},"picture":{"large":"https://randomuser.me/api/portraits/men/22.jpg","medium":"https://randomuser.me/api/portraits/med/men/22.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/22.jpg"},"nat":"DK"},{"gender":"female","name":{"title":"Miss","first":"Héloïse","last":"Dufour"},"location":{"street":{"number":284,"name":"Rue de L'Église"},"city":"Poitiers","state":"Ariège","country":"France","postcode":21664,"coordinates":{"latitude":"16.9482","longitude":"-104.0626"},"timezone":{"offset":"+11:00","description":"Magadan, Solomon Islands, New Caledonia"}},"email":"heloise.dufour@example.com","login":{"uuid":"71350487-8261-4d3c-b90c-748fd4552963","username":"redfrog645","password":"hudson","salt":"zpTY159W","md5":"6be6da3619ed24c318188c8c773d2e4a","sha1":"acaaf3d934b8c0c9c440ba8a308e010c44027e05","sha256":"0c22791c15bdcb1cc6e1ad9de17e420f9fa4e24143957f25871013db9219b60d"},"dob":{"date":"1963-12-27T04:30:04.570Z","age":60},"registered":{"date":"2015-08-10T18:24:37.345Z","age":8},"phone":"03-88-40-75-15","cell":"06-52-72-99-47","id":{"name":"INSEE","value":"2631139129895 95"},"picture":{"large":"https://randomuser.me/api/portraits/women/65.jpg","medium":"https://randomuser.me/api/portraits/med/women/65.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/65.jpg"},"nat":"FR"},{"gender":"female","name":{"title":"Ms","first":"Hailey","last":"Harcourt"},"location":{"street":{"number":5680,"name":"9th St"},"city":"Sandy Lake","state":"British Columbia","country":"Canada","postcode":"W7P 5K9","coordinates":{"latitude":"12.9278","longitude":"20.3588"},"timezone":{"offset":"-8:00","description":"Pacific Time (US & Canada)"}},"email":"hailey.harcourt@example.com","login":{"uuid":"a0973ffb-403e-457c-b5e1-f9d550cb604c","username":"whitemeercat408","password":"fick","salt":"Ru0zxTR6","md5":"fa4691711e9ee4205bb152bc736c2b85","sha1":"ffc7b4282d536c3b21ead7effbfc799464a72848","sha256":"513c19ade321b47af432767e8094bff31c4995577cfc6e541ff29ac611581cc9"},"dob":{"date":"1981-12-05T03:03:35.357Z","age":42},"registered":{"date":"2015-08-06T22:33:34.223Z","age":8},"phone":"W50 W76-4293","cell":"F07 R46-2401","id":{"name":"SIN","value":"491750329"},"picture":{"large":"https://randomuser.me/api/portraits/women/88.jpg","medium":"https://randomuser.me/api/portraits/med/women/88.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/88.jpg"},"nat":"CA"},{"gender":"female","name":{"title":"Mrs","first":"Celia","last":"Rodríguez"},"location":{"street":{"number":3555,"name":"Paseo de Zorrilla"},"city":"Torrejón de Ardoz","state":"Extremadura","country":"Spain","postcode":54659,"coordinates":{"latitude":"-83.5755","longitude":"172.4233"},"timezone":{"offset":"+1:00","description":"Brussels, Copenhagen, Madrid, Paris"}},"email":"celia.rodriguez@example.com","login":{"uuid":"184c94f9-ef50-4cd3-9790-cc5d31350326","username":"ticklishpanda542","password":"redfox","salt":"qzGt8r1x","md5":"5360ec0b9160f8450968674ebc43ace5","sha1":"2231f49bab3a06165b2c233f52da37f6777133f9","sha256":"a9191c3cb0f0ba3ea2e66f8e7028fca5df33f4b3c487292f0ececce7a8e8efb8"},"dob":{"date":"1977-07-01T12:41:50.742Z","age":46},"registered":{"date":"2014-07-28T15:03:12.780Z","age":9},"phone":"903-800-910","cell":"671-824-978","id":{"name":"DNI","value":"57952513-Q"},"picture":{"large":"https://randomuser.me/api/portraits/women/70.jpg","medium":"https://randomuser.me/api/portraits/med/women/70.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/70.jpg"},"nat":"ES"},{"gender":"female","name":{"title":"Miss","first":"Dragica","last":"Tomić"},"location":{"street":{"number":7704,"name":"Svetislava Milića"},"city":"Sremska Mitrovica","state":"Pirot","country":"Serbia","postcode":73789,"coordinates":{"latitude":"17.4351","longitude":"120.2232"},"timezone":{"offset":"-4:00","description":"Atlantic Time (Canada), Caracas, La Paz"}},"email":"dragica.tomic@example.com","login":{"uuid":"ea2dea55-eee4-49ba-83e0-69413a0a5656","username":"angrykoala426","password":"727272","salt":"mgDlcJEh","md5":"fcc085b54ed690d52e173760a62eda8f","sha1":"f7c4235274ae48546f3f87361eb27ceeb3894f1b","sha256":"9d3e9b6f66cfc9e197c99dd727f1d504a27d34fd355270f9e5640e2b8f209b8f"},"dob":{"date":"1967-12-25T13:06:46.079Z","age":56},"registered":{"date":"2017-07-02T13:37:05.707Z","age":6},"phone":"034-9827-533","cell":"066-5685-691","id":{"name":"SID","value":"746575113"},"picture":{"large":"https://randomuser.me/api/portraits/women/35.jpg","medium":"https://randomuser.me/api/portraits/med/women/35.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/35.jpg"},"nat":"RS"},{"gender":"female","name":{"title":"Miss","first":"Pallavi","last":"Kumar"},"location":{"street":{"number":501,"name":"Dadabhai Naoroji Rd"},"city":"Bongaigaon","state":"Tripura","country":"India","postcode":57799,"coordinates":{"latitude":"50.8506","longitude":"-15.0604"},"timezone":{"offset":"-4:00","description":"Atlantic Time (Canada), Caracas, La Paz"}},"email":"pallavi.kumar@example.com","login":{"uuid":"8ad46e63-2f09-4b12-a3bc-defc7a595aa7","username":"tinyduck313","password":"modena","salt":"C014gvlV","md5":"1b3420ec8eea5552a1a17fdee0040417","sha1":"718ad895a3b4a9e0a4196baacb4d95ae8808e25e","sha256":"070aa55ee2872ee476f3d93501309f0d2148be17b44a82ec4f9e56f8234e06e3"},"dob":{"date":"1988-03-28T23:09:55.872Z","age":35},"registered":{"date":"2004-04-24T18:32:30.388Z","age":19},"phone":"9253647945","cell":"8054975159","id":{"name":"UIDAI","value":"272164555863"},"picture":{"large":"https://randomuser.me/api/portraits/women/32.jpg","medium":"https://randomuser.me/api/portraits/med/women/32.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/32.jpg"},"nat":"IN"},{"gender":"female","name":{"title":"Madame","first":"Medina","last":"Vincent"},"location":{"street":{"number":7323,"name":"Rue du Bât-D'Argent"},"city":"Courchapoix","state":"Uri","country":"Switzerland","postcode":4135,"coordinates":{"latitude":"68.2636","longitude":"122.5884"},"timezone":{"offset":"+10:00","description":"Eastern Australia, Guam, Vladivostok"}},"email":"medina.vincent@example.com","login":{"uuid":"61b93984-b4ff-47b5-b23e-de82876d291b","username":"greenwolf479","password":"triumph","salt":"7fkIjuBd","md5":"7b87003c94dd7f6fd84fbcb1f42d6eb9","sha1":"5d181e708b42bdf11c57f18db0bc9b10fe33663b","sha256":"99ee8040b13633eb2acffb7b1c94b6e3dca2c5da31539dd9cd3e0dd49a6eec75"},"dob":{"date":"1965-07-16T11:15:47.851Z","age":58},"registered":{"date":"2004-08-15T02:21:30.545Z","age":19},"phone":"079 063 10 91","cell":"077 452 36 13","id":{"name":"AVS","value":"756.0457.4464.88"},"picture":{"large":"https://randomuser.me/api/portraits/women/13.jpg","medium":"https://randomuser.me/api/portraits/med/women/13.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/13.jpg"},"nat":"CH"},{"gender":"male","name":{"title":"Mr","first":"Emre","last":"Bolatlı"},"location":{"street":{"number":7998,"name":"Şehitler Cd"},"city":"Iğdır","state":"Van","country":"Turkey","postcode":17008,"coordinates":{"latitude":"-75.3799","longitude":"36.3751"},"timezone":{"offset":"+9:00","description":"Tokyo, Seoul, Osaka, Sapporo, Yakutsk"}},"email":"emre.bolatli@example.com","login":{"uuid":"b5f66bbe-5f95-4aae-980d-ba74e630ca6a","username":"silverfish212","password":"manman","salt":"zVTPqktY","md5":"25bffe0438baf60d199e9eec5554fba5","sha1":"f0e480a64c23636000e51d843446a876960ab9a6","sha256":"40a9593d20c03e06c4c531e12a0677e079650bdcf8a47d0b758ab4b2a48d6a07"},"dob":{"date":"1964-11-29T08:07:47.414Z","age":59},"registered":{"date":"2019-05-03T14:09:17.757Z","age":4},"phone":"(174)-502-7201","cell":"(007)-236-2310","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/86.jpg","medium":"https://randomuser.me/api/portraits/med/men/86.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/86.jpg"},"nat":"TR"},{"gender":"female","name":{"title":"Miss","first":"Gabrielle","last":"Li"},"location":{"street":{"number":3207,"name":"Grand Ave"},"city":"Field","state":"British Columbia","country":"Canada","postcode":"J8R 3F0","coordinates":{"latitude":"-37.9756","longitude":"-22.7547"},"timezone":{"offset":"+8:00","description":"Beijing, Perth, Singapore, Hong Kong"}},"email":"gabrielle.li@example.com","login":{"uuid":"12149739-dda3-4f3c-bdcb-d6615c5036fb","username":"crazyfish688","password":"earth","salt":"F5WyVUrd","md5":"89b0cd320561f28498af17d9e44b1289","sha1":"368f5cfa1b89a1376a56195eb72b70eab1bfd49e","sha256":"d2d2dfb121f813c9b5b3c398a503ca5bf7462a170c536bac3daa6f1ee2a79a68"},"dob":{"date":"1971-02-13T19:48:32.051Z","age":52},"registered":{"date":"2010-12-20T00:08:02.912Z","age":13},"phone":"N04 W78-0036","cell":"I41 L93-5043","id":{"name":"SIN","value":"003867603"},"picture":{"large":"https://randomuser.me/api/portraits/women/84.jpg","medium":"https://randomuser.me/api/portraits/med/women/84.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/84.jpg"},"nat":"CA"},{"gender":"male","name":{"title":"Mr","first":"Rich","last":"Meehan"},"location":{"street":{"number":7695,"name":"Alexander Road"},"city":"Athy","state":"Laois","country":"Ireland","postcode":97231,"coordinates":{"latitude":"44.1976","longitude":"-67.3425"},"timezone":{"offset":"+4:30","description":"Kabul"}},"email":"rich.meehan@example.com","login":{"uuid":"c0053db7-6f62-40d1-a1ab-dd816271de18","username":"sadgorilla782","password":"slick1","salt":"wYoUFeVE","md5":"778ace72fc8fbb4d667ae226417522b4","sha1":"b9fd8c7325fc3a4b082d9cc28aecf48708bd89ec","sha256":"fc9565f16c3719bcd916b8f4f0701666c6304c6824d6aa5e352889b1586ac558"},"dob":{"date":"1957-03-14T21:09:06.187Z","age":66},"registered":{"date":"2006-06-01T23:31:55.420Z","age":17},"phone":"021-231-1819","cell":"081-160-3218","id":{"name":"PPS","value":"6093565T"},"picture":{"large":"https://randomuser.me/api/portraits/men/15.jpg","medium":"https://randomuser.me/api/portraits/med/men/15.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/15.jpg"},"nat":"IE"},{"gender":"male","name":{"title":"Mr","first":"Radivoje","last":"Kralj"},"location":{"street":{"number":6593,"name":"Lukarska"},"city":"Gornji Milanovac","state":"Podunavlje","country":"Serbia","postcode":74376,"coordinates":{"latitude":"76.9886","longitude":"-93.0939"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"radivoje.kralj@example.com","login":{"uuid":"f4d3ff9a-fa5d-43fc-8a2e-54b3c269a0e0","username":"organickoala857","password":"chao","salt":"XWWHFCwR","md5":"9c3e6f6448d191647e9731dcb23681d9","sha1":"21f13053bfeedea699e2e84a5c505c1e22ac98c2","sha256":"f8a53cb71b5b1404fbdaefb61654a536d67ed96e20cc9297cefeab23bac629c4"},"dob":{"date":"1985-03-08T00:14:34.954Z","age":38},"registered":{"date":"2010-07-21T13:10:14.801Z","age":13},"phone":"019-8421-210","cell":"063-3902-249","id":{"name":"SID","value":"643119613"},"picture":{"large":"https://randomuser.me/api/portraits/men/77.jpg","medium":"https://randomuser.me/api/portraits/med/men/77.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/77.jpg"},"nat":"RS"},{"gender":"male","name":{"title":"Mr","first":"Owen","last":"Sirko"},"location":{"street":{"number":9324,"name":"15th St"},"city":"Selkirk","state":"Prince Edward Island","country":"Canada","postcode":"C0O 6L2","coordinates":{"latitude":"-46.1779","longitude":"34.5187"},"timezone":{"offset":"-5:00","description":"Eastern Time (US & Canada), Bogota, Lima"}},"email":"owen.sirko@example.com","login":{"uuid":"9f51b1d7-1dc5-4ad0-b112-49501778add0","username":"biggoose538","password":"facial","salt":"5JJ5B4i0","md5":"c27d409f8952851dfad03691a3217bf4","sha1":"07316e445f19cac3e27a98d1a35aea812880c7e7","sha256":"a774ddb63207689f6e5f76c569a6c33c56c525d6c837773277a4bd689e43bf55"},"dob":{"date":"1997-03-18T03:26:22.385Z","age":26},"registered":{"date":"2003-11-10T14:12:08.756Z","age":20},"phone":"W12 Z29-1950","cell":"V01 P83-6671","id":{"name":"SIN","value":"790807481"},"picture":{"large":"https://randomuser.me/api/portraits/men/92.jpg","medium":"https://randomuser.me/api/portraits/med/men/92.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/92.jpg"},"nat":"CA"},{"gender":"female","name":{"title":"Ms","first":"Esparta","last":"Ulloa"},"location":{"street":{"number":1472,"name":"Pasaje Sur Velasco"},"city":"Agua Verde","state":"Baja California","country":"Mexico","postcode":55925,"coordinates":{"latitude":"-38.0834","longitude":"-1.0961"},"timezone":{"offset":"-2:00","description":"Mid-Atlantic"}},"email":"esparta.ulloa@example.com","login":{"uuid":"b0e68ca6-9015-4813-bfe3-61f2b25e5145","username":"angryostrich244","password":"oscar1","salt":"uOwVT38K","md5":"b00147b589748a8aff3461ea64536a11","sha1":"96c2d147486826ffea452822db7a61b9fc95fb63","sha256":"d814fac33da1854a600ecf56806182421d78f0c2fcc77f5613bf10fddeebe864"},"dob":{"date":"1965-11-22T09:20:10.779Z","age":58},"registered":{"date":"2021-10-31T06:01:41.471Z","age":2},"phone":"(665) 288 3982","cell":"(657) 451 4119","id":{"name":"NSS","value":"85 21 77 4623 4"},"picture":{"large":"https://randomuser.me/api/portraits/women/92.jpg","medium":"https://randomuser.me/api/portraits/med/women/92.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/92.jpg"},"nat":"MX"},{"gender":"female","name":{"title":"Mrs","first":"Begüm","last":"Bakırcıoğlu"},"location":{"street":{"number":2360,"name":"Necatibey Cd"},"city":"Ordu","state":"İzmir","country":"Turkey","postcode":46290,"coordinates":{"latitude":"-89.2258","longitude":"-4.3769"},"timezone":{"offset":"+4:30","description":"Kabul"}},"email":"begum.bakircioglu@example.com","login":{"uuid":"f3b9053f-dc98-46f5-b3c9-75fd974685f4","username":"redtiger236","password":"darrel","salt":"n1e5k9oi","md5":"092ab2e3264a53a513a06e5b884ae1fe","sha1":"684b5143d3b0ee61c0c39693543a8d03e6fb883b","sha256":"8e4d5cd9d988019f0c36d030ce2bbfafe17755941eed81d26f0f44fd9758c38a"},"dob":{"date":"1966-10-12T02:20:05.683Z","age":57},"registered":{"date":"2004-07-27T05:15:09.673Z","age":19},"phone":"(632)-515-3071","cell":"(630)-169-5530","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/women/16.jpg","medium":"https://randomuser.me/api/portraits/med/women/16.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/16.jpg"},"nat":"TR"},{"gender":"female","name":{"title":"Miss","first":"Taylor","last":"Thompson"},"location":{"street":{"number":1177,"name":"W Campbell Ave"},"city":"Charlotte","state":"Mississippi","country":"United States","postcode":69719,"coordinates":{"latitude":"63.7297","longitude":"-42.5309"},"timezone":{"offset":"+3:30","description":"Tehran"}},"email":"taylor.thompson@example.com","login":{"uuid":"bdb799b0-6c01-4f10-b2d4-7fcd8bf83924","username":"purplesnake570","password":"turkey","salt":"TxW7PG89","md5":"e4d29c5ed917e458b9bce9d9b5037199","sha1":"d6c339c4dc1b05b83c4163b522bf7420807c21b7","sha256":"e14360379d0e048e3f285c5318051283f289dde18c0ab2a71ec721c6e0ebb059"},"dob":{"date":"1975-08-29T00:40:08.073Z","age":48},"registered":{"date":"2004-03-07T09:52:29.994Z","age":19},"phone":"(280) 547-3306","cell":"(921) 616-3406","id":{"name":"SSN","value":"828-25-2550"},"picture":{"large":"https://randomuser.me/api/portraits/women/33.jpg","medium":"https://randomuser.me/api/portraits/med/women/33.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/33.jpg"},"nat":"US"},{"gender":"male","name":{"title":"Mr","first":"Martin","last":"Burton"},"location":{"street":{"number":5491,"name":"W Belt Line Rd"},"city":"Boulder","state":"Virginia","country":"United States","postcode":17856,"coordinates":{"latitude":"23.5011","longitude":"124.6329"},"timezone":{"offset":"-7:00","description":"Mountain Time (US & Canada)"}},"email":"martin.burton@example.com","login":{"uuid":"a3d14cdc-8b31-4720-9710-0756c5d6fd3c","username":"lazyrabbit128","password":"heather1","salt":"CCLxRk6Q","md5":"cb7dc8055b5e079fc0e5ea4ede3028ad","sha1":"6545fdf358123f4197e2e5e9abd50b4ae50f0b1d","sha256":"d3b8c48caab3ba00b596be9d861fa8aaaf6d5774c7d7430a95e675e3f2a1f574"},"dob":{"date":"1955-09-25T12:25:34.740Z","age":68},"registered":{"date":"2012-10-11T08:26:22.932Z","age":11},"phone":"(349) 330-0243","cell":"(471) 682-3494","id":{"name":"SSN","value":"424-92-7698"},"picture":{"large":"https://randomuser.me/api/portraits/men/93.jpg","medium":"https://randomuser.me/api/portraits/med/men/93.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/93.jpg"},"nat":"US"},{"gender":"male","name":{"title":"Mr","first":"پرهام","last":"پارسا"},"location":{"street":{"number":8,"name":"خرمشهر"},"city":"سیرجان","state":"زنجان","country":"Iran","postcode":74777,"coordinates":{"latitude":"11.5640","longitude":"-67.9340"},"timezone":{"offset":"+9:00","description":"Tokyo, Seoul, Osaka, Sapporo, Yakutsk"}},"email":"prhm.prs@example.com","login":{"uuid":"4a9ad89e-1c6a-48c8-a258-88714043e87f","username":"angrysnake572","password":"jess","salt":"agLUpqsE","md5":"68ca89d118fc63275a3b64df64a3a48f","sha1":"12eb0c645072a62926fbcd73b5f89aaee534c55c","sha256":"fbc53bdd65dfd7978380a3f7f99f265dfe7966af1d3a9f19fb4ec60b27d40b02"},"dob":{"date":"1958-08-17T22:41:25.702Z","age":65},"registered":{"date":"2006-03-23T11:54:54.697Z","age":17},"phone":"006-17343455","cell":"0991-770-2514","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/3.jpg","medium":"https://randomuser.me/api/portraits/med/men/3.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/3.jpg"},"nat":"IR"},{"gender":"male","name":{"title":"Mr","first":"Rishi","last":"Das"},"location":{"street":{"number":2478,"name":"S.A Rd"},"city":"Jalgaon","state":"Maharashtra","country":"India","postcode":64916,"coordinates":{"latitude":"61.9166","longitude":"140.6795"},"timezone":{"offset":"-6:00","description":"Central Time (US & Canada), Mexico City"}},"email":"rishi.das@example.com","login":{"uuid":"153c9e33-c15b-4485-a6ce-797087ec818f","username":"smallrabbit155","password":"mylife","salt":"AWZYK2ZL","md5":"bdac9e2fa937ba8037fa9e97ceaae5c1","sha1":"75f460ac46e545aa6a986b94c8f0916dfc985880","sha256":"01c52ca822b3b403d134d20f5bd8dc833472ac84fcfe8dcb7378c74f7fe772be"},"dob":{"date":"1947-10-29T02:59:00.462Z","age":76},"registered":{"date":"2012-05-21T12:12:33.098Z","age":11},"phone":"8406642300","cell":"9687105713","id":{"name":"UIDAI","value":"588418443926"},"picture":{"large":"https://randomuser.me/api/portraits/men/21.jpg","medium":"https://randomuser.me/api/portraits/med/men/21.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/21.jpg"},"nat":"IN"},{"gender":"female","name":{"title":"Mrs","first":"Siegried","last":"Kirsten"},"location":{"street":{"number":6437,"name":"Königsberger Straße"},"city":"Bad Tölz","state":"Bremen","country":"Germany","postcode":89717,"coordinates":{"latitude":"-53.1006","longitude":"91.3885"},"timezone":{"offset":"+1:00","description":"Brussels, Copenhagen, Madrid, Paris"}},"email":"siegried.kirsten@example.com","login":{"uuid":"42a7988e-952e-4bfa-bbc3-ddf1282570e5","username":"brownduck980","password":"stargate","salt":"pAecj8oe","md5":"9d8838224187f64ead0dbe50df623efd","sha1":"89d8ed1120e98d60ae7608bfb67eda46ce0aaa78","sha256":"5837bc720fe5226ba6d1dd513941d04b8b884ef0be2c6b914da5970d8530c002"},"dob":{"date":"1972-02-16T12:36:44.768Z","age":51},"registered":{"date":"2009-05-02T06:01:33.057Z","age":14},"phone":"0800-0786194","cell":"0176-5062246","id":{"name":"SVNR","value":"18 160272 K 964"},"picture":{"large":"https://randomuser.me/api/portraits/women/69.jpg","medium":"https://randomuser.me/api/portraits/med/women/69.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/69.jpg"},"nat":"DE"},{"gender":"female","name":{"title":"Ms","first":"Silvia","last":"Lorenzo"},"location":{"street":{"number":9818,"name":"Calle de Tetuán"},"city":"Santa Cruz de Tenerife","state":"Castilla y León","country":"Spain","postcode":80794,"coordinates":{"latitude":"81.4038","longitude":"-28.3615"},"timezone":{"offset":"+4:30","description":"Kabul"}},"email":"silvia.lorenzo@example.com","login":{"uuid":"512a5e0b-421e-4297-9459-25178c76a6cd","username":"beautifulgorilla343","password":"another","salt":"YUvleF2V","md5":"2a968a5433417d690417f80cf88dc117","sha1":"fa1625f7b462b8e4d32d64d950320970cad08835","sha256":"30d6f82161c5e144fcedfa946de5cd1ab1f41e736b09cb11749a29323b6d04b4"},"dob":{"date":"1990-10-02T15:03:59.064Z","age":33},"registered":{"date":"2011-03-02T03:20:50.826Z","age":12},"phone":"994-594-062","cell":"603-756-985","id":{"name":"DNI","value":"71592563-Z"},"picture":{"large":"https://randomuser.me/api/portraits/women/86.jpg","medium":"https://randomuser.me/api/portraits/med/women/86.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/86.jpg"},"nat":"ES"},{"gender":"female","name":{"title":"Miss","first":"Mélina","last":"Moreau"},"location":{"street":{"number":9855,"name":"Place de L'Abbé-Franz-Stock"},"city":"Le Havre","state":"Landes","country":"France","postcode":32141,"coordinates":{"latitude":"72.0052","longitude":"-164.2212"},"timezone":{"offset":"-10:00","description":"Hawaii"}},"email":"melina.moreau@example.com","login":{"uuid":"43ec5fc1-6cba-4425-99c4-25dd2c6803c4","username":"silvergoose978","password":"bummer","salt":"KbHZRyzH","md5":"5152a41c28ff05973b44d3c9cfe7846c","sha1":"7cb71351588b4a29ad83cfb13fdd8c586091396a","sha256":"317968b0112a64bbe4aa2d60329de80d26a707acc5933d4c4250f780328a49b5"},"dob":{"date":"1969-01-03T15:25:23.477Z","age":54},"registered":{"date":"2017-12-30T07:45:39.575Z","age":6},"phone":"01-33-66-63-29","cell":"06-04-60-19-83","id":{"name":"INSEE","value":"2690018395384 95"},"picture":{"large":"https://randomuser.me/api/portraits/women/60.jpg","medium":"https://randomuser.me/api/portraits/med/women/60.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/60.jpg"},"nat":"FR"},{"gender":"male","name":{"title":"Mr","first":"Javier","last":"Harvey"},"location":{"street":{"number":7718,"name":"Grove Road"},"city":"Oxford","state":"Mid Glamorgan","country":"United Kingdom","postcode":"DX4D 2NL","coordinates":{"latitude":"-75.6556","longitude":"-123.6161"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"javier.harvey@example.com","login":{"uuid":"10c35a35-102f-4783-9585-1b8ec6cb4054","username":"orangeostrich286","password":"kenworth","salt":"2V5HIThm","md5":"d8cbda81fa1d4eb6342f6acf52ab91ca","sha1":"7b44127d0f2a2f7a29b3b05702f4b6977ace962a","sha256":"dbb909a09443f7ec77bacb2afc859ce38e75a19f63ff36623b6f4f902c0e7135"},"dob":{"date":"1980-11-03T21:10:10.037Z","age":43},"registered":{"date":"2003-05-23T04:59:28.281Z","age":20},"phone":"013873 66589","cell":"07805 224461","id":{"name":"NINO","value":"WG 14 81 21 M"},"picture":{"large":"https://randomuser.me/api/portraits/men/25.jpg","medium":"https://randomuser.me/api/portraits/med/men/25.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/25.jpg"},"nat":"GB"},{"gender":"male","name":{"title":"Mr","first":"Taylor","last":"Lane"},"location":{"street":{"number":1606,"name":"Alexander Road"},"city":"St Davids","state":"County Londonderry","country":"United Kingdom","postcode":"Q17 7PX","coordinates":{"latitude":"-37.9293","longitude":"55.3120"},"timezone":{"offset":"+9:00","description":"Tokyo, Seoul, Osaka, Sapporo, Yakutsk"}},"email":"taylor.lane@example.com","login":{"uuid":"76d817dc-d105-4a57-a7e5-90652fd35e3e","username":"silverladybug911","password":"rhythm","salt":"XRtcFk9b","md5":"bdae96e37a57d36ac34ac4e9c6123524","sha1":"de3bba89e7e7f9696f5a0f4df86b94fb4f1981fb","sha256":"50a2252749349c745b0f41e48718051661e7e23fb0ec5740f5c90daca4414bc9"},"dob":{"date":"1996-12-06T13:26:20.173Z","age":27},"registered":{"date":"2017-06-05T20:17:37.880Z","age":6},"phone":"016973 40712","cell":"07844 064835","id":{"name":"NINO","value":"NK 58 11 93 D"},"picture":{"large":"https://randomuser.me/api/portraits/men/29.jpg","medium":"https://randomuser.me/api/portraits/med/men/29.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/29.jpg"},"nat":"GB"},{"gender":"female","name":{"title":"Miss","first":"Jesús","last":"Diez"},"location":{"street":{"number":5092,"name":"Paseo de Extremadura"},"city":"Gandía","state":"Cataluña","country":"Spain","postcode":54265,"coordinates":{"latitude":"-40.0755","longitude":"94.1055"},"timezone":{"offset":"-5:00","description":"Eastern Time (US & Canada), Bogota, Lima"}},"email":"jesus.diez@example.com","login":{"uuid":"ae2b2cbd-ba40-44a4-8477-05e721a55035","username":"blackostrich196","password":"australi","salt":"suNBmmDK","md5":"01a11a5c0c84c8e1760577f653501e65","sha1":"797085d5b56749877d723509305730419ceda1a0","sha256":"5cade3c085afdba46261bade4b082bcf032ea68559d7f960376e754364932bda"},"dob":{"date":"1972-06-16T17:54:07.890Z","age":51},"registered":{"date":"2014-06-01T14:56:00.476Z","age":9},"phone":"971-618-481","cell":"623-683-522","id":{"name":"DNI","value":"95315337-T"},"picture":{"large":"https://randomuser.me/api/portraits/women/83.jpg","medium":"https://randomuser.me/api/portraits/med/women/83.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/83.jpg"},"nat":"ES"},{"gender":"male","name":{"title":"Mr","first":"Zdravko","last":"Lazović"},"location":{"street":{"number":2090,"name":"Rade Spasojevića"},"city":"Surdulica","state":"Raška","country":"Serbia","postcode":80436,"coordinates":{"latitude":"82.8624","longitude":"178.4985"},"timezone":{"offset":"0:00","description":"Western Europe Time, London, Lisbon, Casablanca"}},"email":"zdravko.lazovic@example.com","login":{"uuid":"71c6d42a-096e-416e-ac83-5006daca145e","username":"goldenmouse629","password":"better","salt":"UYOVIsFP","md5":"39a590b573cbe87e5697f32f0895cfdb","sha1":"d553fadfe02fb38c071243d09766bda703d7beec","sha256":"ffcfa5b3befc73168f37bcf10b34a9501c26b57c701506a04c132f4a464928ad"},"dob":{"date":"1964-10-11T13:02:35.252Z","age":59},"registered":{"date":"2021-11-13T20:41:33.304Z","age":2},"phone":"012-9640-681","cell":"068-0140-114","id":{"name":"SID","value":"628193080"},"picture":{"large":"https://randomuser.me/api/portraits/men/42.jpg","medium":"https://randomuser.me/api/portraits/med/men/42.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/42.jpg"},"nat":"RS"},{"gender":"female","name":{"title":"Ms","first":"Tilde","last":"Engebakken"},"location":{"street":{"number":7862,"name":"Skjelderups gate"},"city":"Sortland","state":"Buskerud","country":"Norway","postcode":"0208","coordinates":{"latitude":"28.3128","longitude":"-66.7022"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"tilde.engebakken@example.com","login":{"uuid":"3176c9ac-007f-45d3-b81c-7db6c3324362","username":"goldenmouse492","password":"1919","salt":"xNuVgOs6","md5":"32763bf23f7edb9fabc119265d2bd92d","sha1":"3c418890aafdf44990c20e0f4da55fb7c76a6268","sha256":"b56f99abdc23f84c78748b04eb3a630baf7abc0452147bd65973b4612689ba1a"},"dob":{"date":"1979-05-07T10:03:46.324Z","age":44},"registered":{"date":"2013-02-14T05:52:06.236Z","age":10},"phone":"58130355","cell":"97436241","id":{"name":"FN","value":"07057947432"},"picture":{"large":"https://randomuser.me/api/portraits/women/31.jpg","medium":"https://randomuser.me/api/portraits/med/women/31.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/31.jpg"},"nat":"NO"},{"gender":"male","name":{"title":"Mr","first":"Jorge Luis","last":"Lebrón"},"location":{"street":{"number":9529,"name":"Eje vial Michoacán de Ocampo"},"city":"Cuautla","state":"Zacatecas","country":"Mexico","postcode":96440,"coordinates":{"latitude":"-66.4136","longitude":"129.2418"},"timezone":{"offset":"-8:00","description":"Pacific Time (US & Canada)"}},"email":"jorgeluis.lebron@example.com","login":{"uuid":"1f1a1631-ca0e-4599-9d0a-58a748bccc88","username":"blackbear140","password":"immortal","salt":"XQvhVS73","md5":"02b6d952a3f45f403d36659574a74569","sha1":"606ef4ae48f019174b42ac521c8e6d23bfa855d9","sha256":"fbceb055e8dbc0169934e4b5d935950ceef9536f7dc2b8a2637ab1b4417a2a9b"},"dob":{"date":"1946-07-06T21:09:41.866Z","age":77},"registered":{"date":"2012-04-17T03:00:02.354Z","age":11},"phone":"(659) 422 7640","cell":"(686) 574 0137","id":{"name":"NSS","value":"86 93 65 3864 2"},"picture":{"large":"https://randomuser.me/api/portraits/men/41.jpg","medium":"https://randomuser.me/api/portraits/med/men/41.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/41.jpg"},"nat":"MX"},{"gender":"female","name":{"title":"Mrs","first":"Eva","last":"Lévesque"},"location":{"street":{"number":6940,"name":"Brock Rd"},"city":"Lumsden","state":"Alberta","country":"Canada","postcode":"F9H 8O9","coordinates":{"latitude":"-6.8135","longitude":"-50.8940"},"timezone":{"offset":"+8:00","description":"Beijing, Perth, Singapore, Hong Kong"}},"email":"eva.levesque@example.com","login":{"uuid":"b397db6c-2ec6-4434-a055-e1437fa7612e","username":"lazypeacock807","password":"rocky1","salt":"N2SZ6ev5","md5":"76cdf8dbaacc288d16d01c7490e68d39","sha1":"b9ebe91bdc3d2dff04d7438320a57d7c9bb0eb3c","sha256":"fbf347e201e2f002c2a380131bbd15c35aec9a99a5b1614ae7b7971b53ca2fb5"},"dob":{"date":"1962-07-27T09:05:32.679Z","age":61},"registered":{"date":"2003-01-27T04:52:59.742Z","age":20},"phone":"Z22 G84-4748","cell":"V59 K21-5134","id":{"name":"SIN","value":"042717231"},"picture":{"large":"https://randomuser.me/api/portraits/women/44.jpg","medium":"https://randomuser.me/api/portraits/med/women/44.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/44.jpg"},"nat":"CA"},{"gender":"female","name":{"title":"Mrs","first":"Anna","last":"Hansen"},"location":{"street":{"number":4445,"name":"Landevejen"},"city":"Århus C.","state":"Midtjylland","country":"Denmark","postcode":72005,"coordinates":{"latitude":"34.0283","longitude":"-119.5387"},"timezone":{"offset":"+3:00","description":"Baghdad, Riyadh, Moscow, St. Petersburg"}},"email":"anna.hansen@example.com","login":{"uuid":"611bd4e0-bb1e-499e-be2f-5157e1ed24f3","username":"sadleopard614","password":"2004","salt":"5ArFmTtC","md5":"c7df613497a309b8d5411730728af2d4","sha1":"cb810130b221e99306c61dd20fc3cb28033581d9","sha256":"42226ed0ee1fbe244b212c1ab55382a8e59a772d0939d123fa216185750b8544"},"dob":{"date":"1964-01-23T14:53:50.711Z","age":59},"registered":{"date":"2016-03-15T03:57:19.661Z","age":7},"phone":"35442968","cell":"93176839","id":{"name":"CPR","value":"230164-1722"},"picture":{"large":"https://randomuser.me/api/portraits/women/34.jpg","medium":"https://randomuser.me/api/portraits/med/women/34.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/34.jpg"},"nat":"DK"},{"gender":"female","name":{"title":"Miss","first":"ستایش","last":"احمدی"},"location":{"street":{"number":5694,"name":"میدان رسالت"},"city":"بوشهر","state":"سیستان و بلوچستان","country":"Iran","postcode":70780,"coordinates":{"latitude":"86.2976","longitude":"-119.7140"},"timezone":{"offset":"+11:00","description":"Magadan, Solomon Islands, New Caledonia"}},"email":"stysh.hmdy@example.com","login":{"uuid":"f90d119d-59ab-43a7-8dd5-0577f8a868d4","username":"blackgorilla476","password":"derf","salt":"9nnPBuQY","md5":"923ffceb2ede1becdca013f25e5d10ff","sha1":"75b618d9cefc700be6e5debc944e61bb34999927","sha256":"d6fdc58f81432c0b734a2df89207fa98910590756d1e00818ba0bcd95bd2814f"},"dob":{"date":"1945-01-07T14:09:05.990Z","age":78},"registered":{"date":"2018-09-30T21:16:17.670Z","age":5},"phone":"077-84034211","cell":"0957-589-7344","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/women/71.jpg","medium":"https://randomuser.me/api/portraits/med/women/71.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/71.jpg"},"nat":"IR"},{"gender":"female","name":{"title":"Mrs","first":"Janet","last":"Thomas"},"location":{"street":{"number":3872,"name":"Rochestown Road"},"city":"Killarney","state":"Tipperary","country":"Ireland","postcode":28070,"coordinates":{"latitude":"-81.8531","longitude":"-84.1921"},"timezone":{"offset":"+5:30","description":"Bombay, Calcutta, Madras, New Delhi"}},"email":"janet.thomas@example.com","login":{"uuid":"6a8b15c6-919b-4c99-b1fb-074f2b5606b1","username":"brownrabbit512","password":"chrissy","salt":"PoIhpc0G","md5":"d77e7009f4ab9248ee9f92985e93e981","sha1":"c0f38409a7b69009e5560af9930a617f13111bf5","sha256":"e7cfa4022902a2b358e0212a9e76260eda18bf6d492da67d5202268db356dd3e"},"dob":{"date":"1987-06-01T17:41:22.632Z","age":36},"registered":{"date":"2011-03-20T02:56:44.137Z","age":12},"phone":"031-343-8347","cell":"081-477-2106","id":{"name":"PPS","value":"1845185T"},"picture":{"large":"https://randomuser.me/api/portraits/women/32.jpg","medium":"https://randomuser.me/api/portraits/med/women/32.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/32.jpg"},"nat":"IE"},{"gender":"male","name":{"title":"Mr","first":"Jesus","last":"Barnett"},"location":{"street":{"number":2737,"name":"Avondale Ave"},"city":"Burkburnett","state":"Colorado","country":"United States","postcode":12899,"coordinates":{"latitude":"-86.1750","longitude":"95.1849"},"timezone":{"offset":"+8:00","description":"Beijing, Perth, Singapore, Hong Kong"}},"email":"jesus.barnett@example.com","login":{"uuid":"8e8a2cf7-e495-48fd-8b92-fd8bc86eacf1","username":"smallpanda425","password":"2020","salt":"v9yPTRZC","md5":"dd879d708ceb8fb2c20347840f7eaabc","sha1":"6c27f310f6aaa67c65e766fdfc3816d96dd35436","sha256":"5d5a23c028d217f70ab60a8f673280e4799e48e49e450fdec26715ec2aa9d4cc"},"dob":{"date":"1944-10-17T20:41:35.721Z","age":79},"registered":{"date":"2017-04-14T05:39:40.491Z","age":6},"phone":"(299) 283-0819","cell":"(431) 745-7239","id":{"name":"SSN","value":"445-26-2963"},"picture":{"large":"https://randomuser.me/api/portraits/men/97.jpg","medium":"https://randomuser.me/api/portraits/med/men/97.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/97.jpg"},"nat":"US"},{"gender":"female","name":{"title":"Mrs","first":"Eva","last":"Moore"},"location":{"street":{"number":9311,"name":"Caversham Valley Road"},"city":"Whanganui","state":"Waikato","country":"New Zealand","postcode":80662,"coordinates":{"latitude":"56.1132","longitude":"-150.8932"},"timezone":{"offset":"-5:00","description":"Eastern Time (US & Canada), Bogota, Lima"}},"email":"eva.moore@example.com","login":{"uuid":"c7d21099-74ac-45ee-a2a0-085a5cbef9a0","username":"greenpanda278","password":"cbr900rr","salt":"7LlFDwo2","md5":"090fa3c1e25e41b08f7396811d89171a","sha1":"8099b805f89e38b6cccf659aaed7fcb34c42b5ab","sha256":"12da28739fcdcdd32bad4c846ddf6e23ac0d27d9a7e09a6fc4334db1b328803f"},"dob":{"date":"1952-12-15T03:51:27.445Z","age":71},"registered":{"date":"2021-10-23T10:59:57.114Z","age":2},"phone":"(877)-173-3952","cell":"(887)-772-9922","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/women/88.jpg","medium":"https://randomuser.me/api/portraits/med/women/88.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/88.jpg"},"nat":"NZ"},{"gender":"female","name":{"title":"Ms","first":"Naomi","last":"Williams"},"location":{"street":{"number":3590,"name":"Depaul Dr"},"city":"Queanbeyan","state":"Tasmania","country":"Australia","postcode":1886,"coordinates":{"latitude":"32.7787","longitude":"-122.3937"},"timezone":{"offset":"-7:00","description":"Mountain Time (US & Canada)"}},"email":"naomi.williams@example.com","login":{"uuid":"5ff993cd-5ed3-48b6-9172-3fd832cb7a46","username":"organicdog526","password":"traffic","salt":"YayOcncV","md5":"bbce71ed968f6d514bc6b50d70624104","sha1":"a83570442e708102b14a3444a4f449f44555f6ff","sha256":"90e66b7b3ba5985583bb7f0593661c765f315df1b90b3dfa50f3407f3bae7e06"},"dob":{"date":"1946-04-01T16:16:49.987Z","age":77},"registered":{"date":"2017-11-04T14:08:12.754Z","age":6},"phone":"06-9372-8188","cell":"0468-979-705","id":{"name":"TFN","value":"848152145"},"picture":{"large":"https://randomuser.me/api/portraits/women/22.jpg","medium":"https://randomuser.me/api/portraits/med/women/22.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/22.jpg"},"nat":"AU"},{"gender":"female","name":{"title":"Mrs","first":"Lea","last":"Møller"},"location":{"street":{"number":7114,"name":"Gammel Kirkevej"},"city":"København N","state":"Danmark","country":"Denmark","postcode":55628,"coordinates":{"latitude":"-11.0531","longitude":"144.9529"},"timezone":{"offset":"+7:00","description":"Bangkok, Hanoi, Jakarta"}},"email":"lea.moller@example.com","login":{"uuid":"c22aa38a-663d-41e2-b324-ae2612963838","username":"smallbutterfly293","password":"frisky","salt":"087yZeiH","md5":"e1bed1cd2241e373d22f7114010f7dae","sha1":"68eb665ef087443a42a937119155a3ccc172404d","sha256":"d3427855b079e682d98dd8ae432e7aa91b96060aaa3a316ae4e5e68f21361f0a"},"dob":{"date":"1993-01-08T18:02:58.096Z","age":30},"registered":{"date":"2013-03-31T11:57:44.579Z","age":10},"phone":"52691853","cell":"15130389","id":{"name":"CPR","value":"080193-4590"},"picture":{"large":"https://randomuser.me/api/portraits/women/13.jpg","medium":"https://randomuser.me/api/portraits/med/women/13.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/13.jpg"},"nat":"DK"},{"gender":"male","name":{"title":"Mr","first":"Nelson","last":"Simpson"},"location":{"street":{"number":7021,"name":"Richmond Park"},"city":"Maynooth","state":"Roscommon","country":"Ireland","postcode":53620,"coordinates":{"latitude":"-27.5199","longitude":"-146.0364"},"timezone":{"offset":"+5:45","description":"Kathmandu"}},"email":"nelson.simpson@example.com","login":{"uuid":"c2a6019f-8951-4f8e-a391-e27ab6cea8ff","username":"silverduck416","password":"swords","salt":"pxrgTZct","md5":"581afa41632783d12c89d918e7dea5ba","sha1":"543bb8de3bba4656a332494266d6cd05734bd6c6","sha256":"f02e6e9bee0e2e0c816f1e0e05cf952ee0e98afbc614522b692c10a91221af8d"},"dob":{"date":"1971-11-24T02:58:22.363Z","age":52},"registered":{"date":"2013-03-17T07:20:34.520Z","age":10},"phone":"031-769-5466","cell":"081-241-8821","id":{"name":"PPS","value":"7225361T"},"picture":{"large":"https://randomuser.me/api/portraits/men/53.jpg","medium":"https://randomuser.me/api/portraits/med/men/53.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/53.jpg"},"nat":"IE"},{"gender":"male","name":{"title":"Mr","first":"Ramon","last":"Bailey"},"location":{"street":{"number":2547,"name":"George Street"},"city":"Aberdeen","state":"East Sussex","country":"United Kingdom","postcode":"F1 1XE","coordinates":{"latitude":"76.9049","longitude":"41.5981"},"timezone":{"offset":"+6:00","description":"Almaty, Dhaka, Colombo"}},"email":"ramon.bailey@example.com","login":{"uuid":"d88151d0-66b5-4519-a418-29570bd3d394","username":"heavykoala368","password":"lollipop","salt":"YKCPrtmy","md5":"0d473cb2f8de3a0ca17a05a793d3c906","sha1":"a282ed82d2b7eee89efead9379f54478bd6f3621","sha256":"c012f865667d1721ce6758f281efded0c3da74a4402435fab9d1b6dbe07ffc07"},"dob":{"date":"1972-07-12T15:00:48.151Z","age":51},"registered":{"date":"2015-01-03T05:14:04.976Z","age":8},"phone":"015396 58737","cell":"07647 500317","id":{"name":"NINO","value":"SH 65 90 44 T"},"picture":{"large":"https://randomuser.me/api/portraits/men/28.jpg","medium":"https://randomuser.me/api/portraits/med/men/28.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/28.jpg"},"nat":"GB"},{"gender":"female","name":{"title":"Ms","first":"Vishrutha","last":"Kamath"},"location":{"street":{"number":9387,"name":"MG Rd Bangalore"},"city":"Mirzapur","state":"Tripura","country":"India","postcode":64923,"coordinates":{"latitude":"0.1626","longitude":"22.3296"},"timezone":{"offset":"-10:00","description":"Hawaii"}},"email":"vishrutha.kamath@example.com","login":{"uuid":"0f2a138d-1e17-4796-b2ea-67c038e37f25","username":"beautifulfish554","password":"andy","salt":"WOm4iTu7","md5":"255b8c8a4fa962db4c81e5c3f34587c8","sha1":"c5edd02cd4c1996de735164251280b8628ba9613","sha256":"1960d665e01c3be042dd3faa1422e14b36a5a1c5eabcdbf1ec4e3926b4e4a21f"},"dob":{"date":"1975-04-23T02:44:01.733Z","age":48},"registered":{"date":"2008-10-18T14:44:49.331Z","age":15},"phone":"9590808886","cell":"7062909255","id":{"name":"UIDAI","value":"640687850614"},"picture":{"large":"https://randomuser.me/api/portraits/women/55.jpg","medium":"https://randomuser.me/api/portraits/med/women/55.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/55.jpg"},"nat":"IN"},{"gender":"male","name":{"title":"Mr","first":"Gabriel","last":"Balderas"},"location":{"street":{"number":1320,"name":"Calzada Gastélum"},"city":"Las Jicamas","state":"Chihuahua","country":"Mexico","postcode":20891,"coordinates":{"latitude":"-86.2281","longitude":"-150.5140"},"timezone":{"offset":"+3:00","description":"Baghdad, Riyadh, Moscow, St. Petersburg"}},"email":"gabriel.balderas@example.com","login":{"uuid":"4654b28d-467f-4763-bf4b-aee97fcd0386","username":"ticklishfrog426","password":"freaky","salt":"znZ1bSDa","md5":"de41ac7c28d5da74df6efab513955fc0","sha1":"6acb0539049a701ee4f194c6838b33fa8821a351","sha256":"d7afb275f95ab5021a745eee8405d9d0b14bde8d0acd95d311f04aef983d9ebc"},"dob":{"date":"1965-05-10T02:51:21.538Z","age":58},"registered":{"date":"2004-01-20T14:50:11.700Z","age":19},"phone":"(637) 998 8630","cell":"(607) 598 7929","id":{"name":"NSS","value":"13 48 08 1095 7"},"picture":{"large":"https://randomuser.me/api/portraits/men/39.jpg","medium":"https://randomuser.me/api/portraits/med/men/39.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/39.jpg"},"nat":"MX"},{"gender":"male","name":{"title":"Mr","first":"Charles","last":"Lorenz"},"location":{"street":{"number":2887,"name":"Ahornweg"},"city":"Wildeshausen","state":"Schleswig-Holstein","country":"Germany","postcode":18177,"coordinates":{"latitude":"39.5541","longitude":"-178.3550"},"timezone":{"offset":"-11:00","description":"Midway Island, Samoa"}},"email":"charles.lorenz@example.com","login":{"uuid":"19b34477-0d83-4300-a2b5-75788f3bc049","username":"beautifulkoala247","password":"newman","salt":"ybdCvDpb","md5":"496c54d4476c3a6680cce592034beef5","sha1":"6beac08bb9ba44767953cbcaef40baf25f92aac0","sha256":"f2909e920d4b4a9f80040c90e97a8761351408a78d128adba119aeb63d2b9365"},"dob":{"date":"1960-03-10T01:40:04.265Z","age":63},"registered":{"date":"2020-08-15T08:52:49.367Z","age":3},"phone":"0311-5276389","cell":"0171-9444444","id":{"name":"SVNR","value":"48 090360 L 280"},"picture":{"large":"https://randomuser.me/api/portraits/men/83.jpg","medium":"https://randomuser.me/api/portraits/med/men/83.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/83.jpg"},"nat":"DE"},{"gender":"male","name":{"title":"Mr","first":"Siddharth","last":"Nayak"},"location":{"street":{"number":785,"name":"Ashoka Rd"},"city":"Alwar","state":"Jammu and Kashmir","country":"India","postcode":67162,"coordinates":{"latitude":"-69.8353","longitude":"-24.2890"},"timezone":{"offset":"-10:00","description":"Hawaii"}},"email":"siddharth.nayak@example.com","login":{"uuid":"90c333c6-996c-4dd9-9d9a-cc0083a71a96","username":"blackzebra999","password":"989898","salt":"R7q01xyG","md5":"8a84aa05b8d81fe9cbda793d97859183","sha1":"dcd52a0f27fe6757cb92cbf2cfce78ffdada4c54","sha256":"987836cff724b521d2eb03939edd6703368d66886608f8e59c6671a62d0965eb"},"dob":{"date":"1990-07-31T13:39:44.624Z","age":33},"registered":{"date":"2008-08-31T12:39:49.757Z","age":15},"phone":"7167226772","cell":"8095821924","id":{"name":"UIDAI","value":"561922820562"},"picture":{"large":"https://randomuser.me/api/portraits/men/94.jpg","medium":"https://randomuser.me/api/portraits/med/men/94.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/94.jpg"},"nat":"IN"},{"gender":"female","name":{"title":"Mrs","first":"Harper","last":"Jones"},"location":{"street":{"number":4267,"name":"Wairau Road"},"city":"Auckland","state":"Otago","country":"New Zealand","postcode":28427,"coordinates":{"latitude":"-43.6397","longitude":"-40.6348"},"timezone":{"offset":"+9:00","description":"Tokyo, Seoul, Osaka, Sapporo, Yakutsk"}},"email":"harper.jones@example.com","login":{"uuid":"00aaec20-9b15-49ec-a1d7-75e4a38d677a","username":"happyladybug758","password":"freefree","salt":"7dHqoYiS","md5":"d760ba72cfa8358a0f5a05ade4c3d543","sha1":"46754c1214eb0ad4b6c9a4c4e78d26b659767809","sha256":"326be71554cc67a1ca5995a4167266ccdf09b8125fdbb253bf996ceea6493517"},"dob":{"date":"1989-09-02T14:16:34.226Z","age":34},"registered":{"date":"2012-06-05T06:49:58.818Z","age":11},"phone":"(899)-736-9264","cell":"(709)-517-8014","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/women/28.jpg","medium":"https://randomuser.me/api/portraits/med/women/28.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/28.jpg"},"nat":"NZ"},{"gender":"male","name":{"title":"Mr","first":"Nikolaj","last":"Christiansen"},"location":{"street":{"number":1395,"name":"Ribe Landevej"},"city":"Noerre Alslev","state":"Sjælland","country":"Denmark","postcode":89609,"coordinates":{"latitude":"10.1745","longitude":"-151.2704"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"nikolaj.christiansen@example.com","login":{"uuid":"4e46102f-31d3-43f7-9bc0-00bd92f6a909","username":"crazyrabbit675","password":"mommy","salt":"DhfcLTn9","md5":"9bce1bacf9f3ad0a06f865c57d57341a","sha1":"8c474a81b94071ed23e40b9d8db77a2ac9fbdc8e","sha256":"2c8a97b3926de9552fa6d19dabbbb32c51cbb2c7034d0905566dea84d562eebf"},"dob":{"date":"1990-11-08T00:10:09.673Z","age":33},"registered":{"date":"2012-12-21T03:51:38.842Z","age":11},"phone":"66426450","cell":"04333819","id":{"name":"CPR","value":"071190-3977"},"picture":{"large":"https://randomuser.me/api/portraits/men/86.jpg","medium":"https://randomuser.me/api/portraits/med/men/86.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/86.jpg"},"nat":"DK"},{"gender":"male","name":{"title":"Mr","first":"Lorenzo","last":"Suarez"},"location":{"street":{"number":1423,"name":"Calle de La Almudena"},"city":"Pontevedra","state":"Región de Murcia","country":"Spain","postcode":86044,"coordinates":{"latitude":"-36.1695","longitude":"-78.3128"},"timezone":{"offset":"+3:30","description":"Tehran"}},"email":"lorenzo.suarez@example.com","login":{"uuid":"7b3f648d-7aaf-4ac5-8db5-318dc1164c7e","username":"blueswan741","password":"giorgio","salt":"p5HOUn5L","md5":"26667002fc7eb879b816590a5bb7d174","sha1":"e7d1f3a19a5616d6629f578a2c140c7be9edb534","sha256":"bfa0e608d0db6e6762882d726139d5faebc0ee674e08ccf6b736c2d3aa9d743d"},"dob":{"date":"1989-09-20T16:11:07.300Z","age":34},"registered":{"date":"2008-12-01T02:53:43.792Z","age":15},"phone":"911-506-084","cell":"668-002-322","id":{"name":"DNI","value":"29576111-O"},"picture":{"large":"https://randomuser.me/api/portraits/men/8.jpg","medium":"https://randomuser.me/api/portraits/med/men/8.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/8.jpg"},"nat":"ES"},{"gender":"male","name":{"title":"Mr","first":"Troy","last":"Harvey"},"location":{"street":{"number":1395,"name":"Bollinger Rd"},"city":"Riverside","state":"Colorado","country":"United States","postcode":20204,"coordinates":{"latitude":"75.3938","longitude":"-24.7915"},"timezone":{"offset":"-7:00","description":"Mountain Time (US & Canada)"}},"email":"troy.harvey@example.com","login":{"uuid":"8e709415-b8af-4d9b-a8e4-8a5f6fcb01f3","username":"crazyrabbit802","password":"waldo","salt":"R8Hp3x2t","md5":"27ea064c6316f3fd3d6d35ca974aa73d","sha1":"0958be5b5c8e0637717cab3add3e4fb7bfb2d5d1","sha256":"fc3cb5b62e00a3659b6a8ec661cdafa42fe642d03dd5dcc89353977e231482a5"},"dob":{"date":"1980-08-20T22:37:30.744Z","age":43},"registered":{"date":"2021-08-31T14:08:28.977Z","age":2},"phone":"(243) 815-4212","cell":"(404) 325-2790","id":{"name":"SSN","value":"173-96-0802"},"picture":{"large":"https://randomuser.me/api/portraits/men/67.jpg","medium":"https://randomuser.me/api/portraits/med/men/67.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/67.jpg"},"nat":"US"},{"gender":"male","name":{"title":"Mr","first":"Julius","last":"Manni"},"location":{"street":{"number":5230,"name":"Otavalankatu"},"city":"Kontiolahti","state":"Päijät-Häme","country":"Finland","postcode":65491,"coordinates":{"latitude":"-20.7600","longitude":"12.6158"},"timezone":{"offset":"+9:30","description":"Adelaide, Darwin"}},"email":"julius.manni@example.com","login":{"uuid":"3908db66-82c6-4f6c-9255-aa954e06a12f","username":"organicrabbit157","password":"sinned","salt":"xZv9Qq7J","md5":"6a10a84ffaeee6e18e2c40fbd9067c1b","sha1":"f1ebbaafbea9883529a17582d25fa4fcd73df458","sha256":"cdad4cd11ec58f6757389df39b0c8928ffde782a7251d478d4f0e9a7443c1d12"},"dob":{"date":"1989-05-07T01:43:56.213Z","age":34},"registered":{"date":"2015-01-07T04:14:36.529Z","age":8},"phone":"08-068-808","cell":"040-558-43-87","id":{"name":"HETU","value":"NaNNA419undefined"},"picture":{"large":"https://randomuser.me/api/portraits/men/9.jpg","medium":"https://randomuser.me/api/portraits/med/men/9.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/9.jpg"},"nat":"FI"},{"gender":"male","name":{"title":"Mr","first":"Tim","last":"Olivier"},"location":{"street":{"number":6428,"name":"Rue Courbet"},"city":"Aulnay-sous-Bois","state":"Moselle","country":"France","postcode":61318,"coordinates":{"latitude":"54.5864","longitude":"-55.8357"},"timezone":{"offset":"+1:00","description":"Brussels, Copenhagen, Madrid, Paris"}},"email":"tim.olivier@example.com","login":{"uuid":"2e5f95d6-7576-48c3-9acd-ce88b1388b3a","username":"bluepanda926","password":"1959","salt":"SimIPvkb","md5":"2be4c0100c5cce817897dab1fa807e15","sha1":"83ff384db4bc3354ad3d5e7c3405f09a6a97bd10","sha256":"d0a70795257b93a90f86c06d10344abbcc5ad91f23fa0bb385a127a03d1c9905"},"dob":{"date":"1968-09-12T12:21:59.002Z","age":55},"registered":{"date":"2011-10-14T19:52:49.494Z","age":12},"phone":"01-72-05-65-59","cell":"06-25-07-07-67","id":{"name":"INSEE","value":"1680814226007 57"},"picture":{"large":"https://randomuser.me/api/portraits/men/5.jpg","medium":"https://randomuser.me/api/portraits/med/men/5.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/5.jpg"},"nat":"FR"},{"gender":"female","name":{"title":"Ms","first":"Tilla","last":"Hagland"},"location":{"street":{"number":3814,"name":"Bjørnslettstubben"},"city":"Mesnali","state":"Oppland","country":"Norway","postcode":"1368","coordinates":{"latitude":"-79.5455","longitude":"-87.0072"},"timezone":{"offset":"-5:00","description":"Eastern Time (US & Canada), Bogota, Lima"}},"email":"tilla.hagland@example.com","login":{"uuid":"c4bdfd01-b946-4026-8729-1a8e0b7707c3","username":"bigduck681","password":"foxtrot","salt":"xD99T62M","md5":"65289a3258f8d1ac9fc2e90bd86787c1","sha1":"9e1387f365feb873c6ac5efb6226e65c963be74e","sha256":"4778c903258ee4c55869a475199062b84d503290b7834b63231095ce31f6887c"},"dob":{"date":"1977-12-29T13:24:32.797Z","age":46},"registered":{"date":"2006-06-23T14:27:47.880Z","age":17},"phone":"78554037","cell":"95900881","id":{"name":"FN","value":"29127703254"},"picture":{"large":"https://randomuser.me/api/portraits/women/73.jpg","medium":"https://randomuser.me/api/portraits/med/women/73.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/73.jpg"},"nat":"NO"},{"gender":"female","name":{"title":"Miss","first":"Mille","last":"Schie"},"location":{"street":{"number":9381,"name":"Alnagata"},"city":"Tveteneåsen","state":"Finnmark - Finnmárku","country":"Norway","postcode":"9068","coordinates":{"latitude":"72.3731","longitude":"-54.5372"},"timezone":{"offset":"+11:00","description":"Magadan, Solomon Islands, New Caledonia"}},"email":"mille.schie@example.com","login":{"uuid":"501aa9df-1c0f-43f8-9432-e35128eb2b87","username":"ticklishmouse673","password":"patton","salt":"JYCm5IQt","md5":"042a9e88d220ffc9ad19558dc4f30774","sha1":"89af725b196d3f30dafa0c99f216f03f8cf08b33","sha256":"d1f3d03c4a6c1dfa005ae66f2ffdf9f6acf1e8d15512c030e76908ab367faf32"},"dob":{"date":"1987-12-22T01:41:38.441Z","age":36},"registered":{"date":"2004-03-27T11:27:54.131Z","age":19},"phone":"33900082","cell":"40182966","id":{"name":"FN","value":"22128715626"},"picture":{"large":"https://randomuser.me/api/portraits/women/0.jpg","medium":"https://randomuser.me/api/portraits/med/women/0.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/0.jpg"},"nat":"NO"},{"gender":"female","name":{"title":"Mrs","first":"یسنا","last":"صدر"},"location":{"street":{"number":4562,"name":"شهید همت"},"city":"دزفول","state":"بوشهر","country":"Iran","postcode":42117,"coordinates":{"latitude":"-2.7645","longitude":"43.7257"},"timezone":{"offset":"-4:00","description":"Atlantic Time (Canada), Caracas, La Paz"}},"email":"ysn.sdr@example.com","login":{"uuid":"1593e592-43d6-4da9-aa3b-1d7dc7a37406","username":"yellowostrich293","password":"queen","salt":"XoaKRBKR","md5":"3c2f43fa92ee984f26355af7d838c6b2","sha1":"f7c766135a5d5df6d14b5047c12a8c8cae780f8b","sha256":"0cbfd38f4fa10219000a960dc4f362dd2ae6355ff1f8da0af61b2d6061219ba3"},"dob":{"date":"1972-11-28T00:24:33.636Z","age":51},"registered":{"date":"2020-07-25T16:05:04.872Z","age":3},"phone":"035-20158932","cell":"0969-506-6575","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/women/33.jpg","medium":"https://randomuser.me/api/portraits/med/women/33.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/33.jpg"},"nat":"IR"},{"gender":"female","name":{"title":"Mrs","first":"Sowmya","last":"Mendonsa"},"location":{"street":{"number":6834,"name":"Camac St"},"city":"Bahraich","state":"Maharashtra","country":"India","postcode":32370,"coordinates":{"latitude":"76.7693","longitude":"-70.7224"},"timezone":{"offset":"-12:00","description":"Eniwetok, Kwajalein"}},"email":"sowmya.mendonsa@example.com","login":{"uuid":"5f7cd4c9-9a3d-4094-b679-2a954bb894b2","username":"blackpanda864","password":"canada","salt":"IM54M62x","md5":"95e81b1a0512ab6d22be63f79a23272c","sha1":"bc8a64e25600418b51cc80d768ba0a0fd9c3a3f2","sha256":"bccc908e00909940a50d5afb0a58bbb3cc2e43275e93e1b6bc79ff06bfa2209f"},"dob":{"date":"2001-05-19T17:13:53.527Z","age":22},"registered":{"date":"2008-05-05T12:22:53.542Z","age":15},"phone":"9206918494","cell":"7661683597","id":{"name":"UIDAI","value":"890046666091"},"picture":{"large":"https://randomuser.me/api/portraits/women/85.jpg","medium":"https://randomuser.me/api/portraits/med/women/85.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/85.jpg"},"nat":"IN"},{"gender":"female","name":{"title":"Mrs","first":"Lola","last":"Simmmons"},"location":{"street":{"number":5291,"name":"George Street"},"city":"Killarney","state":"Wexford","country":"Ireland","postcode":74935,"coordinates":{"latitude":"76.0597","longitude":"113.4063"},"timezone":{"offset":"-11:00","description":"Midway Island, Samoa"}},"email":"lola.simmmons@example.com","login":{"uuid":"4a9e2907-fe61-4e72-8762-c7c48ad327d1","username":"blackbird310","password":"casey1","salt":"nmkHGO7J","md5":"b09a59a129da095b2d733767f623e3e6","sha1":"d6d97d1c48938e9b2611d74e71d8f7cd288a36e4","sha256":"d94a056e96a73cf3bc6d589db23433ea1e99cb2516b4f3cd2469a0c7d526d040"},"dob":{"date":"1961-05-27T17:25:04.920Z","age":62},"registered":{"date":"2017-04-12T11:33:50.519Z","age":6},"phone":"041-192-0416","cell":"081-697-9040","id":{"name":"PPS","value":"5805196T"},"picture":{"large":"https://randomuser.me/api/portraits/women/55.jpg","medium":"https://randomuser.me/api/portraits/med/women/55.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/55.jpg"},"nat":"IE"},{"gender":"male","name":{"title":"Mr","first":"Pranav","last":"Bansal"},"location":{"street":{"number":5665,"name":"Tank Bund Rd"},"city":"Hajipur","state":"Daman and Diu","country":"India","postcode":42481,"coordinates":{"latitude":"-48.7269","longitude":"-139.7465"},"timezone":{"offset":"+8:00","description":"Beijing, Perth, Singapore, Hong Kong"}},"email":"pranav.bansal@example.com","login":{"uuid":"775e8e20-c36c-4b40-82f0-cc7eec4d7969","username":"bluemouse771","password":"shannon","salt":"GImjTarj","md5":"6d5021c7036203cbf10adedc070bc608","sha1":"c1b6dd0553d9e1645ab821948ce82f2b68cf7c3a","sha256":"38195fb728cbbad5b56b8cbd57ca9fd3be2e72bf29a453e1d1969a7b1f40f656"},"dob":{"date":"1977-03-20T10:11:50.464Z","age":46},"registered":{"date":"2010-10-27T21:12:44.507Z","age":13},"phone":"7880783207","cell":"9943184129","id":{"name":"UIDAI","value":"470759266922"},"picture":{"large":"https://randomuser.me/api/portraits/men/43.jpg","medium":"https://randomuser.me/api/portraits/med/men/43.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/43.jpg"},"nat":"IN"},{"gender":"female","name":{"title":"Miss","first":"Lea","last":"Sørensen"},"location":{"street":{"number":1682,"name":"Langagervej"},"city":"Hammel","state":"Nordjylland","country":"Denmark","postcode":68450,"coordinates":{"latitude":"-19.8772","longitude":"-158.1185"},"timezone":{"offset":"+1:00","description":"Brussels, Copenhagen, Madrid, Paris"}},"email":"lea.sorensen@example.com","login":{"uuid":"0419e6b6-b81f-4d51-9b37-841d8b725a12","username":"purplerabbit796","password":"cole","salt":"zOcUJ6Gl","md5":"60a8700a53e0e512cff06e0e0a0615aa","sha1":"9c36c9585a2560dda0e7842c54c01b8a806b38a0","sha256":"9e41d3d5d8943a553c67ffbc3bcf92949f4fc86020fc6f5d67d4279a749ee392"},"dob":{"date":"1956-11-06T01:19:01.757Z","age":67},"registered":{"date":"2010-01-21T09:36:14.262Z","age":13},"phone":"88212079","cell":"36061458","id":{"name":"CPR","value":"051156-1784"},"picture":{"large":"https://randomuser.me/api/portraits/women/70.jpg","medium":"https://randomuser.me/api/portraits/med/women/70.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/70.jpg"},"nat":"DK"},{"gender":"male","name":{"title":"Mr","first":"Julian","last":"Shaw"},"location":{"street":{"number":3428,"name":"York Road"},"city":"Worcester","state":"West Midlands","country":"United Kingdom","postcode":"H13 5XU","coordinates":{"latitude":"19.9283","longitude":"154.2890"},"timezone":{"offset":"-2:00","description":"Mid-Atlantic"}},"email":"julian.shaw@example.com","login":{"uuid":"68a8408d-da3b-4a93-a0bc-b270c23f63a0","username":"tinyduck786","password":"nova","salt":"F6JR0F1L","md5":"20d8103bc3ec864ad7af6cef6aa3b069","sha1":"f59468338f9a7a07d1c9540b72ec8125a68ec58f","sha256":"93d499dcf993f36a1ac2463d1ebee1ce6104513bc83b6630274c5f2361dd7d36"},"dob":{"date":"2001-05-18T18:31:57.998Z","age":22},"registered":{"date":"2010-09-24T12:42:40.359Z","age":13},"phone":"019467 26131","cell":"07834 816284","id":{"name":"NINO","value":"ZT 74 30 12 H"},"picture":{"large":"https://randomuser.me/api/portraits/men/6.jpg","medium":"https://randomuser.me/api/portraits/med/men/6.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/6.jpg"},"nat":"GB"},{"gender":"female","name":{"title":"Miss","first":"Diane","last":"Leroux"},"location":{"street":{"number":9829,"name":"Place du 22 Novembre 1943"},"city":"Asnières-sur-Seine","state":"Drôme","country":"France","postcode":29009,"coordinates":{"latitude":"-4.6459","longitude":"89.2087"},"timezone":{"offset":"-8:00","description":"Pacific Time (US & Canada)"}},"email":"diane.leroux@example.com","login":{"uuid":"5e17d282-fd2d-45c0-be4c-e05c37229145","username":"saddog535","password":"wilbur","salt":"SJWlNXO3","md5":"c7339ca1e3246abe8b9c072c8d8499ee","sha1":"f39b1fd49b3ca51cb6b345877a2177f84f160cf6","sha256":"94b3636f32e25236fefa739dda9c3880dd24975e9ec3a6dfc9a1f30fc6a38b8d"},"dob":{"date":"1978-05-21T09:43:17.098Z","age":45},"registered":{"date":"2008-05-20T12:11:21.496Z","age":15},"phone":"05-07-00-16-04","cell":"06-63-85-28-97","id":{"name":"INSEE","value":"2780456378779 68"},"picture":{"large":"https://randomuser.me/api/portraits/women/47.jpg","medium":"https://randomuser.me/api/portraits/med/women/47.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/47.jpg"},"nat":"FR"},{"gender":"male","name":{"title":"Mr","first":"Kuzman","last":"Blažić"},"location":{"street":{"number":7305,"name":"Andrije Stojkovića"},"city":"Aranđelovac","state":"Moravica","country":"Serbia","postcode":34173,"coordinates":{"latitude":"-41.7769","longitude":"157.5027"},"timezone":{"offset":"+10:00","description":"Eastern Australia, Guam, Vladivostok"}},"email":"kuzman.blazic@example.com","login":{"uuid":"0ba8e670-a7e5-4809-9f0d-0e67c93bb8df","username":"crazyduck896","password":"none","salt":"c0QgjNCa","md5":"5f5e7339158cd76bfa7121b2fe1756d2","sha1":"7ba874e981111ca0aeb6d786d3b5dc9cdf663e15","sha256":"505e3fb0f14b60d11f65c64c256e8e5d696b6b3d6517a85b5f5a3d08a234d90e"},"dob":{"date":"1987-10-09T01:03:56.871Z","age":36},"registered":{"date":"2004-09-05T14:07:16.479Z","age":19},"phone":"025-8535-674","cell":"065-1759-892","id":{"name":"SID","value":"731019470"},"picture":{"large":"https://randomuser.me/api/portraits/men/92.jpg","medium":"https://randomuser.me/api/portraits/med/men/92.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/92.jpg"},"nat":"RS"},{"gender":"male","name":{"title":"Monsieur","first":"Patrice","last":"Louis"},"location":{"street":{"number":8641,"name":"Place du 8 Février 1962"},"city":"Filisur","state":"Fribourg","country":"Switzerland","postcode":2537,"coordinates":{"latitude":"-5.9245","longitude":"-22.7252"},"timezone":{"offset":"+10:00","description":"Eastern Australia, Guam, Vladivostok"}},"email":"patrice.louis@example.com","login":{"uuid":"c3db3b13-5d8c-4979-8878-58d32e524873","username":"brownkoala579","password":"funky","salt":"agrWMFOS","md5":"2002e3196910a7710c6d1a01e8c7de7b","sha1":"4e1a31571c6a8e26b020f28339a6653c62e2a69e","sha256":"581b2a68ad653377fdbe935f01fc0d8410ae43d4de12e17538b1f06fb5560c4d"},"dob":{"date":"1974-04-01T08:25:31.009Z","age":49},"registered":{"date":"2019-01-04T13:08:12.221Z","age":4},"phone":"078 686 57 20","cell":"078 663 53 55","id":{"name":"AVS","value":"756.3585.7877.61"},"picture":{"large":"https://randomuser.me/api/portraits/men/49.jpg","medium":"https://randomuser.me/api/portraits/med/men/49.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/49.jpg"},"nat":"CH"},{"gender":"male","name":{"title":"Mr","first":"Lyubomil","last":"Fedik"},"location":{"street":{"number":9383,"name":"Pozharova"},"city":"Berdichiv","state":"Avtonomna Respublika Krim","country":"Ukraine","postcode":87051,"coordinates":{"latitude":"-64.9136","longitude":"-88.9860"},"timezone":{"offset":"+10:00","description":"Eastern Australia, Guam, Vladivostok"}},"email":"lyubomil.fedik@example.com","login":{"uuid":"8e46745a-7337-4912-a179-dc1a1d6d244a","username":"happygorilla184","password":"messiah","salt":"bkDp8nQG","md5":"db17a1933635e0ef9a434aac62abdb10","sha1":"899a9cedad28219e6bfcddc47ca673092a63760e","sha256":"142afb7ab261e9d0d99841b11d2270403b1388b2d06df9cf579cdd8092abc11d"},"dob":{"date":"1951-08-12T21:45:01.397Z","age":72},"registered":{"date":"2005-05-07T19:13:15.067Z","age":18},"phone":"(068) G84-3389","cell":"(068) X86-0453","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/0.jpg","medium":"https://randomuser.me/api/portraits/med/men/0.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/0.jpg"},"nat":"UA"},{"gender":"female","name":{"title":"Mrs","first":"Leila","last":"Kothe"},"location":{"street":{"number":6954,"name":"Kirchstraße"},"city":"Bad Schandau","state":"Hessen","country":"Germany","postcode":27793,"coordinates":{"latitude":"64.5682","longitude":"-66.6864"},"timezone":{"offset":"+1:00","description":"Brussels, Copenhagen, Madrid, Paris"}},"email":"leila.kothe@example.com","login":{"uuid":"843e8628-55bb-4d3f-973b-cbcbcac848a2","username":"goldensnake919","password":"patton","salt":"1LTsAQJQ","md5":"7fc7ed25eed8e695864e01eb3fd7a2ad","sha1":"2048b52319a0224f091e3761125295ac55b802b2","sha256":"08831187439b23a1cc144b62cb780eeb42dbbc65a57d79c9c73748519787c4e1"},"dob":{"date":"1960-04-22T00:09:26.898Z","age":63},"registered":{"date":"2017-11-28T11:38:20.881Z","age":6},"phone":"0606-7676800","cell":"0173-7805882","id":{"name":"SVNR","value":"70 210460 K 931"},"picture":{"large":"https://randomuser.me/api/portraits/women/9.jpg","medium":"https://randomuser.me/api/portraits/med/women/9.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/9.jpg"},"nat":"DE"},{"gender":"female","name":{"title":"Miss","first":"Dalia","last":"Aguirre"},"location":{"street":{"number":5537,"name":"Peatonal del Río"},"city":"Rincón de López","state":"Sonora","country":"Mexico","postcode":49457,"coordinates":{"latitude":"-28.9892","longitude":"50.8396"},"timezone":{"offset":"+5:45","description":"Kathmandu"}},"email":"dalia.aguirre@example.com","login":{"uuid":"95f624ea-709d-42d1-a612-37a3d3f60d0c","username":"yellowsnake100","password":"star","salt":"gpUtTxSK","md5":"bf415c7beb16596232251fbe20cdac39","sha1":"3b36a1accdf1ae6c81a547c87872f5d7b9c2596e","sha256":"247726c25a3580ad752e64e482dd37e1cd8ebe4ecd746150c792aef981ff8c04"},"dob":{"date":"1967-08-09T06:43:36.030Z","age":56},"registered":{"date":"2011-02-15T18:26:20.673Z","age":12},"phone":"(632) 780 4066","cell":"(659) 761 2494","id":{"name":"NSS","value":"16 98 21 5385 8"},"picture":{"large":"https://randomuser.me/api/portraits/women/6.jpg","medium":"https://randomuser.me/api/portraits/med/women/6.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/6.jpg"},"nat":"MX"},{"gender":"female","name":{"title":"Mrs","first":"Mariska","last":"Anker"},"location":{"street":{"number":2844,"name":"Barbarossastraat"},"city":"'s-Heer Arendskerke","state":"Limburg","country":"Netherlands","postcode":"3432 WW","coordinates":{"latitude":"27.8837","longitude":"149.1055"},"timezone":{"offset":"+5:45","description":"Kathmandu"}},"email":"mariska.anker@example.com","login":{"uuid":"2b8ccc2a-6a5c-41a4-a059-69857d260588","username":"whiteostrich421","password":"konyor","salt":"7Qz1hWjO","md5":"298a19ac20c30b94b30511c19fd309d2","sha1":"b04e4fcb00854c422d5f21a70066e722ca129649","sha256":"624b993cbf23147d80e7fc81ed5433059efd95395c4723ed6403c66cdbbcfa57"},"dob":{"date":"1995-09-21T21:12:01.194Z","age":28},"registered":{"date":"2015-03-02T11:33:12.076Z","age":8},"phone":"(0511) 144955","cell":"(06) 86621362","id":{"name":"BSN","value":"50809332"},"picture":{"large":"https://randomuser.me/api/portraits/women/26.jpg","medium":"https://randomuser.me/api/portraits/med/women/26.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/26.jpg"},"nat":"NL"},{"gender":"male","name":{"title":"Mr","first":"Gökhan","last":"Fahri"},"location":{"street":{"number":6884,"name":"Talak Göktepe Cd"},"city":"Denizli","state":"Trabzon","country":"Turkey","postcode":13557,"coordinates":{"latitude":"45.7687","longitude":"93.2466"},"timezone":{"offset":"-1:00","description":"Azores, Cape Verde Islands"}},"email":"gokhan.fahri@example.com","login":{"uuid":"75b47100-a687-42f9-bffc-b51cbfe72000","username":"crazywolf119","password":"mary","salt":"rUqeMhil","md5":"8038d0238ce8a84e90d3f75d2ba66e36","sha1":"2f508dc8b302ceff42bbd171cec62d9cba3bccf1","sha256":"170ad20cfc133ed42e106498be05ad4ded31162313efab9332a5d193298bb69c"},"dob":{"date":"1949-11-29T07:52:07.562Z","age":74},"registered":{"date":"2021-02-02T19:37:24.553Z","age":2},"phone":"(385)-439-6452","cell":"(047)-271-9163","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/33.jpg","medium":"https://randomuser.me/api/portraits/med/men/33.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/33.jpg"},"nat":"TR"},{"gender":"male","name":{"title":"Mr","first":"Brad","last":"Henderson"},"location":{"street":{"number":6870,"name":"E Center St"},"city":"Toowoomba","state":"Victoria","country":"Australia","postcode":1799,"coordinates":{"latitude":"-0.1088","longitude":"-30.7806"},"timezone":{"offset":"+7:00","description":"Bangkok, Hanoi, Jakarta"}},"email":"brad.henderson@example.com","login":{"uuid":"9f734ca6-1eb8-4b60-a6cd-af5a94da732b","username":"ticklishcat156","password":"flyfish","salt":"pLbypT6F","md5":"c54aa8e767494d83cfbfd7a081f799ec","sha1":"2b37c1cc1c850053f0682824c9c81e0b4705edb9","sha256":"98547797460e3096e36fbcc7bea3c1e92a38c7258ecaa281b4a9f086770ee4bf"},"dob":{"date":"1998-10-05T15:29:38.987Z","age":25},"registered":{"date":"2016-02-15T02:17:36.528Z","age":7},"phone":"00-6694-3806","cell":"0453-741-335","id":{"name":"TFN","value":"995864825"},"picture":{"large":"https://randomuser.me/api/portraits/men/87.jpg","medium":"https://randomuser.me/api/portraits/med/men/87.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/87.jpg"},"nat":"AU"},{"gender":"female","name":{"title":"Miss","first":"فاطمه","last":"قاسمی"},"location":{"street":{"number":8355,"name":"شهید اکبر وصالی"},"city":"قائم‌شهر","state":"همدان","country":"Iran","postcode":55167,"coordinates":{"latitude":"-9.9206","longitude":"29.0292"},"timezone":{"offset":"0:00","description":"Western Europe Time, London, Lisbon, Casablanca"}},"email":"ftmh.qsmy@example.com","login":{"uuid":"adb3800a-dbde-415e-87cc-507f444d77c6","username":"organicgorilla663","password":"womble","salt":"XgryByNT","md5":"7f1eab0e9651b5d0400e3e64bcacb8ae","sha1":"5a9ecae4445533bf7ac4cb6670b3068ac80b0aa9","sha256":"8d1aa58b28a8979a9ada499f6f35676ed049335e2621bc407032db6c84bb64a5"},"dob":{"date":"1990-10-17T18:22:00.384Z","age":33},"registered":{"date":"2011-01-20T05:23:14.239Z","age":12},"phone":"065-53496816","cell":"0905-455-0900","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/women/7.jpg","medium":"https://randomuser.me/api/portraits/med/women/7.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/7.jpg"},"nat":"IR"},{"gender":"male","name":{"title":"Mr","first":"Onur","last":"Akşit"},"location":{"street":{"number":307,"name":"Bağdat Cd"},"city":"İzmir","state":"Bursa","country":"Turkey","postcode":17923,"coordinates":{"latitude":"56.9648","longitude":"122.5743"},"timezone":{"offset":"-9:00","description":"Alaska"}},"email":"onur.aksit@example.com","login":{"uuid":"8f642935-74b7-4afe-b19e-e1968a5705ef","username":"lazywolf324","password":"laetitia","salt":"Fp8BFFif","md5":"efbd1756a9c3a0eb2bc3864f401fb2b8","sha1":"021becb695c8f16f6829f7470d59003f0d1ceccf","sha256":"7b1884d5a76cf578ea7c7fa1b41f8cba559f5b7f69669b401178444fd0783963"},"dob":{"date":"1983-04-20T16:02:02.695Z","age":40},"registered":{"date":"2007-11-09T20:32:41.028Z","age":16},"phone":"(686)-980-4726","cell":"(195)-851-6600","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/16.jpg","medium":"https://randomuser.me/api/portraits/med/men/16.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/16.jpg"},"nat":"TR"},{"gender":"female","name":{"title":"Miss","first":"Micaela","last":"Fuentes"},"location":{"street":{"number":2879,"name":"Continuación Azerbaiyán"},"city":"San Martín de las Pirámides","state":"Jalisco","country":"Mexico","postcode":51494,"coordinates":{"latitude":"9.8822","longitude":"-60.8453"},"timezone":{"offset":"-3:30","description":"Newfoundland"}},"email":"micaela.fuentes@example.com","login":{"uuid":"60e5ef9a-5671-4846-8835-76610d4b8b30","username":"purplepeacock666","password":"fredfred","salt":"UUxDX7QM","md5":"2d1a9ce1db672627008dd3906f8375f9","sha1":"8a228c533354a950d2a92753b8632c431f23cb9c","sha256":"8baeab56b77822e26c180dbf4228907507a092c38ade0dbc7e6661c6cc1a1891"},"dob":{"date":"1954-03-09T17:21:41.992Z","age":69},"registered":{"date":"2004-08-14T10:38:06.306Z","age":19},"phone":"(659) 586 6624","cell":"(689) 752 1627","id":{"name":"NSS","value":"08 35 75 7003 9"},"picture":{"large":"https://randomuser.me/api/portraits/women/34.jpg","medium":"https://randomuser.me/api/portraits/med/women/34.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/34.jpg"},"nat":"MX"},{"gender":"female","name":{"title":"Ms","first":"Olivia","last":"Huhtala"},"location":{"street":{"number":3850,"name":"Verkatehtaankatu"},"city":"Kuusamo","state":"Finland Proper","country":"Finland","postcode":58388,"coordinates":{"latitude":"-86.9495","longitude":"-82.7241"},"timezone":{"offset":"-9:00","description":"Alaska"}},"email":"olivia.huhtala@example.com","login":{"uuid":"41b6fdc9-891c-482a-b8fc-c0d61063c2b3","username":"yellowrabbit974","password":"1943","salt":"wXgar067","md5":"49f712d086b5a7d710ef1d3a3208b568","sha1":"9b03c5fd05b443cf0a0137c21c1e9c746cdb4327","sha256":"de5b9c01d488b0dd37ce390b3b7f6940bc364a10b4009d7bd42b07a04af50e6c"},"dob":{"date":"1960-06-03T23:56:05.961Z","age":63},"registered":{"date":"2003-05-09T07:45:44.704Z","age":20},"phone":"07-266-214","cell":"042-905-91-17","id":{"name":"HETU","value":"NaNNA376undefined"},"picture":{"large":"https://randomuser.me/api/portraits/women/60.jpg","medium":"https://randomuser.me/api/portraits/med/women/60.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/60.jpg"},"nat":"FI"},{"gender":"male","name":{"title":"Mr","first":"Caspian","last":"Lygre"},"location":{"street":{"number":6040,"name":"Ekraveien"},"city":"Fanahammeren","state":"Nord-Trøndelag","country":"Norway","postcode":"2604","coordinates":{"latitude":"-31.0324","longitude":"-125.6842"},"timezone":{"offset":"-9:00","description":"Alaska"}},"email":"caspian.lygre@example.com","login":{"uuid":"3f4e8e4b-1258-477f-bbe6-483b570b895b","username":"yellowsnake126","password":"howard","salt":"CZ8QTtBT","md5":"9ee148ca5be21c98f3e905b4219af3e0","sha1":"4396c00a291b46862a862fe92c5c61115b42f4d9","sha256":"7c6062bd33346c6338fc645e29c3e98b49ab39396cdb954c8af22b10d058f519"},"dob":{"date":"1945-05-04T12:30:56.642Z","age":78},"registered":{"date":"2016-06-15T00:36:38.039Z","age":7},"phone":"72127863","cell":"49627284","id":{"name":"FN","value":"04054516938"},"picture":{"large":"https://randomuser.me/api/portraits/men/81.jpg","medium":"https://randomuser.me/api/portraits/med/men/81.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/81.jpg"},"nat":"NO"},{"gender":"male","name":{"title":"Mr","first":"Witold","last":"Hölzer"},"location":{"street":{"number":9188,"name":"Danziger Straße"},"city":"Lichtenberg","state":"Bayern","country":"Germany","postcode":41182,"coordinates":{"latitude":"-26.1913","longitude":"-55.8368"},"timezone":{"offset":"+8:00","description":"Beijing, Perth, Singapore, Hong Kong"}},"email":"witold.holzer@example.com","login":{"uuid":"8773eaee-52ba-4d6f-ac34-9d704f9b47af","username":"redelephant934","password":"ghost1","salt":"SlozwEyg","md5":"4535414a6bb2049f16bf95577186ad72","sha1":"df05a8188e71a728571ff71cfbab5a2c1e772468","sha256":"b928910faded1f248795923bc131c05d027be8d8b11b2d62f771c26a59c5fd60"},"dob":{"date":"1953-07-16T16:28:54.435Z","age":70},"registered":{"date":"2013-09-12T03:58:04.555Z","age":10},"phone":"0842-1301330","cell":"0173-0769812","id":{"name":"SVNR","value":"28 160753 H 482"},"picture":{"large":"https://randomuser.me/api/portraits/men/19.jpg","medium":"https://randomuser.me/api/portraits/med/men/19.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/19.jpg"},"nat":"DE"},{"gender":"male","name":{"title":"Mr","first":"Hector","last":"Elliott"},"location":{"street":{"number":4451,"name":"Prospect Rd"},"city":"Rancho Cucamonga","state":"New Jersey","country":"United States","postcode":92543,"coordinates":{"latitude":"-51.9951","longitude":"-104.0428"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"hector.elliott@example.com","login":{"uuid":"a75bc426-60db-4ccd-b067-3238c9eec576","username":"bigtiger655","password":"jewels","salt":"th2wUHLH","md5":"94ed72e286f7b64c9527744aa79b2738","sha1":"26437780792905ed61fcfecf556de3c5ab4ff996","sha256":"94111f3be800e0253c6cdb882b5f182dc375942419e5703ed9d0cffe306f832b"},"dob":{"date":"1958-01-11T23:37:31.346Z","age":65},"registered":{"date":"2005-02-05T22:38:08.640Z","age":18},"phone":"(455) 221-6396","cell":"(376) 777-7803","id":{"name":"SSN","value":"534-09-8281"},"picture":{"large":"https://randomuser.me/api/portraits/men/65.jpg","medium":"https://randomuser.me/api/portraits/med/men/65.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/65.jpg"},"nat":"US"},{"gender":"female","name":{"title":"Miss","first":"Tiffany","last":"Lane"},"location":{"street":{"number":2962,"name":"Prospect Rd"},"city":"Thornton","state":"Kentucky","country":"United States","postcode":60966,"coordinates":{"latitude":"-1.9529","longitude":"48.4136"},"timezone":{"offset":"-11:00","description":"Midway Island, Samoa"}},"email":"tiffany.lane@example.com","login":{"uuid":"7eab6b7d-3a38-4130-b833-c7c756575e67","username":"blackfrog364","password":"murphy","salt":"kdrsD66A","md5":"33651f1b4c844fd0e365c29307cd0405","sha1":"e57ecbae21110dee738908713b33ff535d3eb6f6","sha256":"06f3c086c29f234d9b495c6d0674b38107b605ed2ac4cd6b9998f57ac64ca1ee"},"dob":{"date":"1945-05-27T04:16:51.254Z","age":78},"registered":{"date":"2008-07-05T23:37:32.725Z","age":15},"phone":"(925) 342-5351","cell":"(704) 819-4202","id":{"name":"SSN","value":"055-35-7695"},"picture":{"large":"https://randomuser.me/api/portraits/women/82.jpg","medium":"https://randomuser.me/api/portraits/med/women/82.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/82.jpg"},"nat":"US"},{"gender":"male","name":{"title":"Mr","first":"Noah","last":"Cooper"},"location":{"street":{"number":3029,"name":"North Street"},"city":"Porirua","state":"West Coast","country":"New Zealand","postcode":37238,"coordinates":{"latitude":"40.5244","longitude":"-24.6521"},"timezone":{"offset":"+3:00","description":"Baghdad, Riyadh, Moscow, St. Petersburg"}},"email":"noah.cooper@example.com","login":{"uuid":"bc421a1d-682d-48f5-b0d4-01105f6abbd7","username":"ticklishleopard117","password":"1028","salt":"JeeIB7Xa","md5":"5d4431385fb96fba8e1ece1a849f6faf","sha1":"9ecad63cc4b752f79479c77ef327580f35c99ee4","sha256":"826c8493dafdfc3b5a0ea9eeacb7e5a1ee91a95596722e78045b70c54fcccde1"},"dob":{"date":"1945-05-30T22:56:08.773Z","age":78},"registered":{"date":"2020-09-10T11:59:50.004Z","age":3},"phone":"(599)-373-3732","cell":"(493)-996-8090","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/89.jpg","medium":"https://randomuser.me/api/portraits/med/men/89.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/89.jpg"},"nat":"NZ"},{"gender":"female","name":{"title":"Ms","first":"Ronja","last":"Zwick"},"location":{"street":{"number":2167,"name":"Mozartstraße"},"city":"Weingarten","state":"Niedersachsen","country":"Germany","postcode":37772,"coordinates":{"latitude":"-83.8341","longitude":"107.9210"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"ronja.zwick@example.com","login":{"uuid":"b50bf0ef-0c60-4c3e-962b-79b35e6693a4","username":"angryostrich820","password":"fishhead","salt":"vTztmktx","md5":"e06211a552709ae5a3e0bbbfdfcb18f4","sha1":"4e4bb8369e615063ca6b4f70a2d9d803e3e3b762","sha256":"27a72b58deb73824d100e912ccaa11df2faaca5773d0f8515b91730f7e128ccb"},"dob":{"date":"1998-11-08T13:10:11.136Z","age":25},"registered":{"date":"2007-11-08T19:35:13.916Z","age":16},"phone":"0503-8381668","cell":"0176-9824228","id":{"name":"SVNR","value":"43 081198 Z 720"},"picture":{"large":"https://randomuser.me/api/portraits/women/31.jpg","medium":"https://randomuser.me/api/portraits/med/women/31.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/31.jpg"},"nat":"DE"},{"gender":"male","name":{"title":"Mr","first":"Roy","last":"Bellmann"},"location":{"street":{"number":2380,"name":"Fliederweg"},"city":"Spremberg","state":"Berlin","country":"Germany","postcode":39424,"coordinates":{"latitude":"73.5684","longitude":"37.9668"},"timezone":{"offset":"+3:00","description":"Baghdad, Riyadh, Moscow, St. Petersburg"}},"email":"roy.bellmann@example.com","login":{"uuid":"5cc4894e-2fdc-4f93-8753-d35b32fedcb3","username":"orangeduck712","password":"honey","salt":"iOdEgEkf","md5":"c9d4737ef69c40aff092d442778d89a9","sha1":"17f326672579d9f17c1cf437f4b848fd99a71d3b","sha256":"fa981fff6dc26cd4a5093811723f65fbab65024bd2d5f811b3f1036e0906cc36"},"dob":{"date":"1991-11-09T01:38:14.001Z","age":32},"registered":{"date":"2010-11-25T11:31:00.096Z","age":13},"phone":"0268-8655054","cell":"0179-1884914","id":{"name":"SVNR","value":"23 081191 B 255"},"picture":{"large":"https://randomuser.me/api/portraits/men/2.jpg","medium":"https://randomuser.me/api/portraits/med/men/2.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/2.jpg"},"nat":"DE"},{"gender":"male","name":{"title":"Mr","first":"Franz Josef","last":"Hipp"},"location":{"street":{"number":7613,"name":"Wiesenweg"},"city":"Schönberg","state":"Baden-Württemberg","country":"Germany","postcode":68468,"coordinates":{"latitude":"37.9045","longitude":"-70.6482"},"timezone":{"offset":"+3:30","description":"Tehran"}},"email":"franzjosef.hipp@example.com","login":{"uuid":"5f84ddbb-b4ef-4330-bbfd-352ba0c06a03","username":"happyzebra922","password":"courage","salt":"aGJBUtmN","md5":"b2579923145a3abfa82bcf8df523fb35","sha1":"abb291df7eec3ba24782ac3c2037552b084e8f1d","sha256":"6f6b2b2c29bd8c9551abf9b1f3403d7f8bc895595e8ff532ff556790565f2907"},"dob":{"date":"1964-08-05T09:39:04.663Z","age":59},"registered":{"date":"2016-02-11T14:44:35.541Z","age":7},"phone":"0634-7198976","cell":"0172-3467003","id":{"name":"SVNR","value":"04 050864 H 374"},"picture":{"large":"https://randomuser.me/api/portraits/men/17.jpg","medium":"https://randomuser.me/api/portraits/med/men/17.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/17.jpg"},"nat":"DE"},{"gender":"male","name":{"title":"Mr","first":"Pompeu","last":"da Rosa"},"location":{"street":{"number":4080,"name":"Rua Bela Vista "},"city":"Olinda","state":"Santa Catarina","country":"Brazil","postcode":44704,"coordinates":{"latitude":"-83.0079","longitude":"97.4731"},"timezone":{"offset":"-8:00","description":"Pacific Time (US & Canada)"}},"email":"pompeu.darosa@example.com","login":{"uuid":"e9270c3a-f5c4-4e3c-9adf-ceb18c7e2932","username":"ticklishpanda748","password":"high","salt":"ROGRGEy8","md5":"c4eb75f4cbecc81bcf634af4bea91449","sha1":"563c83440feaa9e12d6f8bcc6174a9e505879ad0","sha256":"5c78e2a6d1bfac666dc35bcf337f4be8fab68c2ed0fc505c33b681d54fddb9ef"},"dob":{"date":"1964-06-25T13:12:26.858Z","age":59},"registered":{"date":"2014-09-22T18:20:59.820Z","age":9},"phone":"(46) 7024-9565","cell":"(78) 4654-1411","id":{"name":"CPF","value":"852.573.420-50"},"picture":{"large":"https://randomuser.me/api/portraits/men/51.jpg","medium":"https://randomuser.me/api/portraits/med/men/51.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/51.jpg"},"nat":"BR"},{"gender":"female","name":{"title":"Mrs","first":"Madison","last":"Smith"},"location":{"street":{"number":8483,"name":"Anzac Drive"},"city":"Hastings","state":"Hawke'S Bay","country":"New Zealand","postcode":77412,"coordinates":{"latitude":"-6.2890","longitude":"19.3206"},"timezone":{"offset":"-10:00","description":"Hawaii"}},"email":"madison.smith@example.com","login":{"uuid":"249889db-3628-4fff-ad12-85c13d8293af","username":"orangeduck111","password":"christopher","salt":"GEM0E9S5","md5":"33cd46d20241f76ba34950be8edde393","sha1":"f9eb10a3e33c4b612241ff5c7eab4c16e6e5dd3f","sha256":"fcaadc8d1393c3561b8ff9d879f9535daf86eb3c2abe3e3f642024709571d0ac"},"dob":{"date":"1972-09-27T09:14:03.665Z","age":51},"registered":{"date":"2003-06-08T01:18:41.302Z","age":20},"phone":"(918)-506-6179","cell":"(235)-188-1006","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/women/84.jpg","medium":"https://randomuser.me/api/portraits/med/women/84.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/84.jpg"},"nat":"NZ"},{"gender":"female","name":{"title":"Ms","first":"Nella","last":"Sippola"},"location":{"street":{"number":1471,"name":"Tahmelantie"},"city":"Iitti","state":"Southern Ostrobothnia","country":"Finland","postcode":26290,"coordinates":{"latitude":"-54.0876","longitude":"110.4614"},"timezone":{"offset":"+11:00","description":"Magadan, Solomon Islands, New Caledonia"}},"email":"nella.sippola@example.com","login":{"uuid":"85191505-ce78-4f07-9bdc-baac73641bd0","username":"angryrabbit443","password":"soccer1","salt":"UL0b7Gst","md5":"ea9c3230ad480e5a0f2aae50669d80b7","sha1":"b949a5ef6b276dcd1b660e8d79fff2051e7fd81f","sha256":"ff9214f393389de63ea59ea4b24b87b21c6e5c10aa73fee87e3d67adc213a073"},"dob":{"date":"1978-10-12T15:58:35.412Z","age":45},"registered":{"date":"2004-07-16T14:29:49.515Z","age":19},"phone":"07-647-883","cell":"049-904-42-20","id":{"name":"HETU","value":"NaNNA426undefined"},"picture":{"large":"https://randomuser.me/api/portraits/women/38.jpg","medium":"https://randomuser.me/api/portraits/med/women/38.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/38.jpg"},"nat":"FI"},{"gender":"female","name":{"title":"Mrs","first":"Hiltrud","last":"Wacker"},"location":{"street":{"number":6244,"name":"Schillerstraße"},"city":"Lauterbach","state":"Mecklenburg-Vorpommern","country":"Germany","postcode":46715,"coordinates":{"latitude":"-34.1538","longitude":"135.9143"},"timezone":{"offset":"-3:00","description":"Brazil, Buenos Aires, Georgetown"}},"email":"hiltrud.wacker@example.com","login":{"uuid":"c357885b-ae96-4aa3-b1dd-32c4486a373c","username":"bigkoala818","password":"gideon","salt":"XXRf9QUG","md5":"543e2578c4329fbecdc1d0f18d9929f6","sha1":"905cf256f00393f0e5d7a4644ddda4edba49ec16","sha256":"b06778588e52d9a32c07216d1e2abbb403558d3e2b963dfc774ec2c84a452936"},"dob":{"date":"1951-07-01T03:26:30.692Z","age":72},"registered":{"date":"2011-04-09T09:17:44.746Z","age":12},"phone":"0368-3531963","cell":"0173-4555583","id":{"name":"SVNR","value":"44 300651 W 736"},"picture":{"large":"https://randomuser.me/api/portraits/women/51.jpg","medium":"https://randomuser.me/api/portraits/med/women/51.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/51.jpg"},"nat":"DE"},{"gender":"female","name":{"title":"Miss","first":"Tessa","last":"Moulin"},"location":{"street":{"number":5920,"name":"Rue Jean-Baldassini"},"city":"Poitiers","state":"Hérault","country":"France","postcode":61236,"coordinates":{"latitude":"-84.6413","longitude":"98.6028"},"timezone":{"offset":"+5:00","description":"Ekaterinburg, Islamabad, Karachi, Tashkent"}},"email":"tessa.moulin@example.com","login":{"uuid":"42055c97-a443-4687-a47a-40655f99e964","username":"organicdog604","password":"beau","salt":"RiPzKZsq","md5":"d68e2234d53548903f1013f31b251e3a","sha1":"309feb068bec59a31b833da98a71ff1d6023b004","sha256":"820330eb5a59d0064aa49a3a94fa0029887bd722594af6b9afa2bb61285fb595"},"dob":{"date":"1979-04-04T05:05:48.090Z","age":44},"registered":{"date":"2004-10-10T12:12:17.151Z","age":19},"phone":"02-16-83-84-18","cell":"06-10-54-45-86","id":{"name":"INSEE","value":"2790365974405 05"},"picture":{"large":"https://randomuser.me/api/portraits/women/35.jpg","medium":"https://randomuser.me/api/portraits/med/women/35.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/35.jpg"},"nat":"FR"},{"gender":"male","name":{"title":"Mr","first":"Kasper","last":"Sørensen"},"location":{"street":{"number":3426,"name":"Algade"},"city":"Roslev","state":"Sjælland","country":"Denmark","postcode":65135,"coordinates":{"latitude":"-7.5831","longitude":"69.4759"},"timezone":{"offset":"-10:00","description":"Hawaii"}},"email":"kasper.sorensen@example.com","login":{"uuid":"8d9836c8-fa6b-43ed-9fb9-1610bfa78e4b","username":"blackmeercat758","password":"bangkok","salt":"G9o4HGJV","md5":"0dc56ae0490e87bcf9480307023aa1b3","sha1":"e3bdda120ef334936340b773632f9663cdeb426e","sha256":"6d5fb21aeeaab858a97d74034bade872303c294870e5e86dc119883193d5fd96"},"dob":{"date":"1989-03-09T10:54:01.206Z","age":34},"registered":{"date":"2018-08-15T00:27:27.274Z","age":5},"phone":"34782329","cell":"35366855","id":{"name":"CPR","value":"090389-5169"},"picture":{"large":"https://randomuser.me/api/portraits/men/6.jpg","medium":"https://randomuser.me/api/portraits/med/men/6.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/6.jpg"},"nat":"DK"},{"gender":"female","name":{"title":"Mademoiselle","first":"Dolores","last":"Roux"},"location":{"street":{"number":3029,"name":"Esplanade du 9 Novembre 1989"},"city":"Oberbipp","state":"Zug","country":"Switzerland","postcode":1026,"coordinates":{"latitude":"-21.2313","longitude":"-178.0907"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"dolores.roux@example.com","login":{"uuid":"f7a00f4d-148d-4c5b-b9f7-6a3a4923e9ec","username":"silverwolf356","password":"valley","salt":"NjWdlkuH","md5":"3e43be36ec50cd0cd2b1d6f32b10b961","sha1":"26595c4fbacb23c5ee3483468258b8831e5131ca","sha256":"153a42a038dadba74655761917fb66a1f9a78a273e4d1a23f1a499757a4ab671"},"dob":{"date":"2000-12-03T14:39:56.310Z","age":23},"registered":{"date":"2006-07-01T12:54:53.658Z","age":17},"phone":"079 864 66 62","cell":"076 138 58 51","id":{"name":"AVS","value":"756.5234.2501.54"},"picture":{"large":"https://randomuser.me/api/portraits/women/83.jpg","medium":"https://randomuser.me/api/portraits/med/women/83.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/83.jpg"},"nat":"CH"},{"gender":"male","name":{"title":"Mr","first":"Mariano","last":"Calvo"},"location":{"street":{"number":1207,"name":"Calle de Ferraz"},"city":"Bilbao","state":"Cataluña","country":"Spain","postcode":94940,"coordinates":{"latitude":"35.2929","longitude":"-62.4286"},"timezone":{"offset":"0:00","description":"Western Europe Time, London, Lisbon, Casablanca"}},"email":"mariano.calvo@example.com","login":{"uuid":"45c0367c-9450-4ac8-a45e-7c3a0a2fbd67","username":"orangedog966","password":"audia4","salt":"tBg7lbm3","md5":"b2368b79b8184ea8db8075ca3fe4d9ea","sha1":"14f0c9f5c9afaa59ec5fa1b11664cb6179fd6183","sha256":"c5616c0c725b907c4b292e6a661e9e248a7107bf37cbbd9715bbc26eed6c7e0b"},"dob":{"date":"1954-05-13T20:59:41.819Z","age":69},"registered":{"date":"2004-01-21T16:08:33.159Z","age":19},"phone":"903-804-540","cell":"673-869-004","id":{"name":"DNI","value":"93211130-N"},"picture":{"large":"https://randomuser.me/api/portraits/men/77.jpg","medium":"https://randomuser.me/api/portraits/med/men/77.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/77.jpg"},"nat":"ES"},{"gender":"male","name":{"title":"Mr","first":"Samu","last":"Luoma"},"location":{"street":{"number":5167,"name":"Nordenskiöldinkatu"},"city":"Harjavalta","state":"Päijät-Häme","country":"Finland","postcode":75519,"coordinates":{"latitude":"25.2289","longitude":"-10.1298"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"samu.luoma@example.com","login":{"uuid":"b80153c3-12d2-454d-8393-4eba9cb6315c","username":"happypeacock596","password":"googoo","salt":"vTg9n199","md5":"ed3a5f35f0dbd9e524123836a28649a5","sha1":"4a816ad1c851576019476095f532cbfd02396465","sha256":"8413723935ec4ee4336170fe495fd338d3a80a0c3c48c30da3075bc55449aa86"},"dob":{"date":"1982-06-20T20:13:38.383Z","age":41},"registered":{"date":"2010-12-31T19:58:14.972Z","age":12},"phone":"05-845-856","cell":"046-654-06-86","id":{"name":"HETU","value":"NaNNA545undefined"},"picture":{"large":"https://randomuser.me/api/portraits/men/17.jpg","medium":"https://randomuser.me/api/portraits/med/men/17.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/17.jpg"},"nat":"FI"},{"gender":"male","name":{"title":"Mr","first":"Edmund","last":"Blom"},"location":{"street":{"number":3121,"name":"Neuberggata"},"city":"Steinshamn","state":"Vestfold","country":"Norway","postcode":"2636","coordinates":{"latitude":"20.5814","longitude":"-146.2720"},"timezone":{"offset":"-10:00","description":"Hawaii"}},"email":"edmund.blom@example.com","login":{"uuid":"4765ef77-f5e2-4b4a-8e16-7b88f6d1f89e","username":"yellowcat306","password":"cornell","salt":"gbOJyS44","md5":"6ad236c2e74def23e320c69e8b2c39d3","sha1":"fdad75af39a5503966404da861989be895928b44","sha256":"237ca35d5f4d46e43ef19d456d9d2b6182d914248fd36b3c836f12c4c5d1c914"},"dob":{"date":"1965-03-05T11:11:20.817Z","age":58},"registered":{"date":"2015-07-04T10:32:41.208Z","age":8},"phone":"74835566","cell":"47142990","id":{"name":"FN","value":"05036549574"},"picture":{"large":"https://randomuser.me/api/portraits/men/23.jpg","medium":"https://randomuser.me/api/portraits/med/men/23.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/23.jpg"},"nat":"NO"},{"gender":"male","name":{"title":"Mr","first":"Silas","last":"Nascimento"},"location":{"street":{"number":6157,"name":"Rua Dois"},"city":"Jequié","state":"Mato Grosso do Sul","country":"Brazil","postcode":84125,"coordinates":{"latitude":"19.8478","longitude":"101.3384"},"timezone":{"offset":"-2:00","description":"Mid-Atlantic"}},"email":"silas.nascimento@example.com","login":{"uuid":"a3e2b5f1-0488-459c-8f0d-1cdda30a3e0f","username":"bluecat583","password":"jezebel","salt":"E4n3ibdS","md5":"f52db3025a09ebb6ffccce875ea584bf","sha1":"bec30e1fd1c45aa34a7a4c030c7f9954e0f712e5","sha256":"275b06da9e8e0c28c03a23d23599228243584fc357091432b430302eefa3384e"},"dob":{"date":"1976-06-29T23:04:50.585Z","age":47},"registered":{"date":"2005-07-19T13:57:33.924Z","age":18},"phone":"(18) 2055-0959","cell":"(54) 5969-6548","id":{"name":"CPF","value":"636.952.345-21"},"picture":{"large":"https://randomuser.me/api/portraits/men/23.jpg","medium":"https://randomuser.me/api/portraits/med/men/23.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/23.jpg"},"nat":"BR"},{"gender":"male","name":{"title":"Mr","first":"Tobias","last":"Bentsen"},"location":{"street":{"number":8129,"name":"Jerpefaret"},"city":"Bud","state":"Akershus","country":"Norway","postcode":"6002","coordinates":{"latitude":"-41.4056","longitude":"2.6320"},"timezone":{"offset":"+11:00","description":"Magadan, Solomon Islands, New Caledonia"}},"email":"tobias.bentsen@example.com","login":{"uuid":"8961becc-9092-47a0-9182-472163dd0b70","username":"goldenfrog235","password":"rock","salt":"AdJ5uGBj","md5":"151e28e789a999fc0d85fe2e738bb6a1","sha1":"f3f5cf5d38c8e49f0a108aad6b91e9cb96e55ed8","sha256":"a2f9a5d583e3917f4d476181a8892b7c946514ddb41f89374eb8d7eecf6115f4"},"dob":{"date":"1947-07-29T08:50:57.716Z","age":76},"registered":{"date":"2016-06-13T16:38:41.677Z","age":7},"phone":"61765233","cell":"44269538","id":{"name":"FN","value":"29074718998"},"picture":{"large":"https://randomuser.me/api/portraits/men/26.jpg","medium":"https://randomuser.me/api/portraits/med/men/26.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/26.jpg"},"nat":"NO"},{"gender":"male","name":{"title":"Mr","first":"Budivoy","last":"Lozina-Lozinskiy"},"location":{"street":{"number":2504,"name":"Senomanskiy provulok"},"city":"Lanivci","state":"Rivnenska","country":"Ukraine","postcode":60421,"coordinates":{"latitude":"-23.9250","longitude":"126.4335"},"timezone":{"offset":"-2:00","description":"Mid-Atlantic"}},"email":"budivoy.lozina-lozinskiy@example.com","login":{"uuid":"555166bf-eeda-4501-88fd-ce3e257d1d20","username":"whitefrog195","password":"gary","salt":"bmwQxhJz","md5":"8c2d79986df6fe99e6639afc21f954d9","sha1":"30d42dc4af57fd0430b3f8e5eeb51b5586f20193","sha256":"49cc0b805f3f24b2d55e9e60f69c6bf2dbc8c4404ca73b0ef5891b78356587e5"},"dob":{"date":"1953-09-07T06:05:27.044Z","age":70},"registered":{"date":"2021-03-21T16:09:48.014Z","age":2},"phone":"(097) X22-5199","cell":"(099) L51-9141","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/84.jpg","medium":"https://randomuser.me/api/portraits/med/men/84.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/84.jpg"},"nat":"UA"},{"gender":"male","name":{"title":"Mr","first":"Marcos","last":"Escobar"},"location":{"street":{"number":4037,"name":"Cerrada Sur Rico"},"city":"Buena Vista","state":"Estado de Mexico","country":"Mexico","postcode":37916,"coordinates":{"latitude":"73.3155","longitude":"35.7779"},"timezone":{"offset":"-2:00","description":"Mid-Atlantic"}},"email":"marcos.escobar@example.com","login":{"uuid":"c3628040-fe16-4017-9740-a0624ed51284","username":"whitebird465","password":"chewbacc","salt":"DiqoN6lV","md5":"4ca3524cd199f70f1abc20a6de680666","sha1":"7515b8cd567fba2749c5057573cfc9a2f1a1e323","sha256":"74b3552596baa55ef0de00ac821ad89047a50e617729818aac75e524a450fc99"},"dob":{"date":"1980-11-08T18:46:45.241Z","age":43},"registered":{"date":"2008-10-18T16:41:15.847Z","age":15},"phone":"(653) 080 9052","cell":"(681) 655 7098","id":{"name":"NSS","value":"09 18 15 9563 7"},"picture":{"large":"https://randomuser.me/api/portraits/men/33.jpg","medium":"https://randomuser.me/api/portraits/med/men/33.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/33.jpg"},"nat":"MX"},{"gender":"female","name":{"title":"Ms","first":"Juliette","last":"Scott"},"location":{"street":{"number":8986,"name":"Concession Road 23"},"city":"Aylmer","state":"Ontario","country":"Canada","postcode":"T7C 5J6","coordinates":{"latitude":"52.6519","longitude":"37.2227"},"timezone":{"offset":"+10:00","description":"Eastern Australia, Guam, Vladivostok"}},"email":"juliette.scott@example.com","login":{"uuid":"5df1e767-6777-4918-be91-1006abe4fd66","username":"greenleopard929","password":"duchess","salt":"WaB2jKUt","md5":"df9194299c4d27063889fda133d7e0e7","sha1":"45f172d62b4dd1ba5301aa808f3793e7410193bc","sha256":"f54d22365b7759f392c9ac68f4eb7c20a04ba4dbc410cad3196d794b388590ca"},"dob":{"date":"1998-02-11T12:29:58.725Z","age":25},"registered":{"date":"2007-10-27T22:54:13.594Z","age":16},"phone":"L19 J59-4967","cell":"T09 G52-6223","id":{"name":"SIN","value":"224382119"},"picture":{"large":"https://randomuser.me/api/portraits/women/72.jpg","medium":"https://randomuser.me/api/portraits/med/women/72.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/72.jpg"},"nat":"CA"},{"gender":"male","name":{"title":"Monsieur","first":"Alvaro","last":"Fabre"},"location":{"street":{"number":228,"name":"Rue de L'Abbaye"},"city":"Cuarny","state":"Basel-Landschaft","country":"Switzerland","postcode":1047,"coordinates":{"latitude":"4.5911","longitude":"-157.8054"},"timezone":{"offset":"-9:00","description":"Alaska"}},"email":"alvaro.fabre@example.com","login":{"uuid":"2ffc5f11-bc33-4acc-ba1f-9e42f468a3f3","username":"smallleopard905","password":"guang","salt":"FUcJ4LSv","md5":"4ee9515e7555bac7cbb570b2cc67ef8d","sha1":"e2d584c3fc2310a7bb12feb77b20b04860e1c4c5","sha256":"87ab98b008e82b930a2a1b07f08ad4a6875c787f7aa9feae548c8b89b851d8ed"},"dob":{"date":"1956-12-05T23:13:01.592Z","age":67},"registered":{"date":"2013-07-04T05:04:46.347Z","age":10},"phone":"079 464 97 27","cell":"076 145 66 01","id":{"name":"AVS","value":"756.0053.2622.89"},"picture":{"large":"https://randomuser.me/api/portraits/men/3.jpg","medium":"https://randomuser.me/api/portraits/med/men/3.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/3.jpg"},"nat":"CH"}],"info":{"seed":"de743e7ce76c948e","results":100,"page":1,"version":"1.4"}}

You can use jawk like:

jawk \
    --split-by .results \
    --filter '(and (> .dob.age 40) (<= .dob.age 70))' \
    -o csv \
    --select '.name.first = First name' \
    --select '.name.last = Last name' \
    --select '.dob.age = Age' \
    --order-by .name.last

To produce:

"First name", "Last name", "Age"
"Dalia", "Aguirre", 56
"Ramon", "Bailey", 51
"Begüm", "Bakırcıoğlu", 57
"Gabriel", "Balderas", 58
"Pranav", "Bansal", 46
"Edmund", "Blom", 58
"Emre", "Bolatlı", 59
"Martin", "Burton", 68
"Caroline", "Caldwell", 61
"Mariano", "Calvo", 69
"Jesús", "Diez", 51
"Héloïse", "Dufour", 60
"Hector", "Elliott", 65
"Tilde", "Engebakken", 44
"Marcos", "Escobar", 43
"Nuray", "Ewert", 58
"Alvaro", "Fabre", 67
"Micaela", "Fuentes", 69
"Morris", "Gillissen", 47
"Tilla", "Hagland", 46
"Anna", "Hansen", 59
"Hailey", "Harcourt", 42
"Javier", "Harvey", 43
"Troy", "Harvey", 43
"Franz Josef", "Hipp", 59
"Olivia", "Huhtala", 63
"Witold", "Hölzer", 70
"Albert", "Jensen", 42
"Vishrutha", "Kamath", 48
"Siegried", "Kirsten", 51
"Leila", "Kothe", 63
"Zdravko", "Lazović", 59
"Diane", "Leroux", 45
"Gabrielle", "Li", 52
"Charles", "Lorenz", 63
"Patrice", "Louis", 49
"Budivoy", "Lozina-Lozinskiy", 70
"Samu", "Luoma", 41
"Eva", "Lévesque", 61
"Rich", "Meehan", 66
"Mélina", "Moreau", 54
"Kenzo", "Morin", 58
"Freja", "Mortensen", 63
"Tessa", "Moulin", 44
"Silas", "Nascimento", 47
"Tim", "Olivier", 55
"Celia", "Rodríguez", 46
"Lola", "Simmmons", 62
"Nelson", "Simpson", 52
"Nella", "Sippola", 45
"Madison", "Smith", 51
"Lea", "Sørensen", 67
"Taylor", "Thompson", 48
"Dragica", "Tomić", 56
"Peppi", "Toro", 49
"Esparta", "Ulloa", 58
"Medina", "Vincent", 58
"Pompeu", "da Rosa", 59
"یسنا", "صدر", 51
"پرهام", "پارسا", 65

Use functional function

In this example we will see how to use functional function.

If your input looks like

1
5
7
-6

You can use jawk like:

jawk \
    -o csv \
    --select '.=number' \
    --select '(fold (.range) 1 (* (+ 1 .index) .so_far))=factorial'

To produce:

"number", "factorial"
1, 1
5, 120
7, 5040
-6, 

Filter out primitive values

In this example we will see how to filter out primitive values.

If your input looks like

{"key": "value"}
100
"test"
[1, 2, 3, 4]
false
null

You can use jawk like:

jawk \
    --only-objects-and-arrays

To produce:

{"key": "value"}
[1, 2, 3, 4]