# sql AVG(A, B)

• A
• B

• AVG

## Neuron type

Best algorithm has been found - locked

## Patterns

Pattern Input Output
1.
 A: 10 B: null
 AVG: 10
2.
 A: null B: -7
 AVG: -7
3.
 A: null B: null
 AVG: null
4.
 A: 1 B: 3
 AVG: 2
5.
 A: -10 B: -13
 AVG: -11.5

## Applicable neurons

• null
• sql A+B
• IfNull
• sql A-B
• Average
• value is null
• value is not null
• ext from path
• Rounding to whole tenths of something
• Distance between two points (2d)
• character +
• \\n
• time to midnight
• select sum (A, B, C)

## Algorithm

### Test

```/**
* 1:
*
* @return {Array}
*/
function neuron501()
{
return [1];
}

/**
* 0:
*
* @return {Array}
*/
function neuron500()
{
return [0];
}

/**
* 8:
*
* @return {Array}
*/
function neuron508()
{
return [8];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - three inputs: Connect stringA + stringB + stringC
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @return {Array}
*/
function neuron564(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron520(outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron520(outputs[0], outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* Ascii code into character:
*
* @param x1 ascii code
* @return {Array}
*/
function neuron585(x1)
{
return [String.fromCharCode(x1)];
}

/**
* 3 digits of ascii code into character: connect 3 digits to one ascii number and change it to character
*
* @param x1 1. digit
* @param x2 2. digit
* @param x3 3. digit
* @return {Array}
*/
function neuron638(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron564(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron585(outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* character l:
*
* @return {Array}
*/
function neuron644()
{
var outputs = [];

arr = neuron501();
outputs[0] = arr[0];

arr = neuron500();
outputs[1] = arr[0];

arr = neuron508();
outputs[2] = arr[0];

arr = neuron638(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

return[outputs[3]];
}

/**
* 0:
*
* @return {Array}
*/
function neuron500()
{
return [0];
}

/**
* 1:
*
* @return {Array}
*/
function neuron501()
{
return [1];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - three inputs: Connect stringA + stringB + stringC
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @return {Array}
*/
function neuron564(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron520(outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron520(outputs[0], outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* Ascii code into character:
*
* @param x1 ascii code
* @return {Array}
*/
function neuron585(x1)
{
return [String.fromCharCode(x1)];
}

/**
* 3 digits of ascii code into character: connect 3 digits to one ascii number and change it to character
*
* @param x1 1. digit
* @param x2 2. digit
* @param x3 3. digit
* @return {Array}
*/
function neuron638(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron564(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron585(outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* character n:
*
* @return {Array}
*/
function neuron782()
{
var outputs = [];

arr = neuron500();
outputs[0] = arr[0];

arr = neuron501();
outputs[1] = arr[0];

arr = neuron638(outputs[1], outputs[1], outputs[0]);
outputs[2] = arr[0];

return[outputs[2]];
}

/**
* 1:
*
* @return {Array}
*/
function neuron501()
{
return [1];
}

/**
* 7:
*
* @return {Array}
*/
function neuron507()
{
return [7];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - three inputs: Connect stringA + stringB + stringC
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @return {Array}
*/
function neuron564(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron520(outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron520(outputs[0], outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* Ascii code into character:
*
* @param x1 ascii code
* @return {Array}
*/
function neuron585(x1)
{
return [String.fromCharCode(x1)];
}

/**
* 3 digits of ascii code into character: connect 3 digits to one ascii number and change it to character
*
* @param x1 1. digit
* @param x2 2. digit
* @param x3 3. digit
* @return {Array}
*/
function neuron638(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron564(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron585(outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* character u:
*
* @return {Array}
*/
function neuron866()
{
var outputs = [];

arr = neuron501();
outputs[0] = arr[0];

arr = neuron507();
outputs[1] = arr[0];

arr = neuron638(outputs[0], outputs[0], outputs[1]);
outputs[2] = arr[0];

return[outputs[2]];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - four inputs:
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @param x4 string D
* @return {Array}
*/
function neuron565(x1, x2, x3, x4)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;
outputs[3] = x4;

arr = neuron520(outputs[2], outputs[3]);
outputs[4] = arr[0];

arr = neuron520(outputs[1], outputs[4]);
outputs[5] = arr[0];

arr = neuron520(outputs[0], outputs[5]);
outputs[6] = arr[0];

return[outputs[6]];
}

/**
* null:
*
* @return {Array}
*/
function neuron865()
{
var outputs = [];

arr = neuron644();
outputs[0] = arr[0];

arr = neuron782();
outputs[1] = arr[0];

arr = neuron866();
outputs[2] = arr[0];

arr = neuron565(outputs[1], outputs[2], outputs[0], outputs[0]);
outputs[3] = arr[0];

return[outputs[3]];
}

/**
* a = b: IF a=b THEN 1 ELSE 0;
*
* @param x1 a
* @param x2 b
* @return {Array}
*/
function neuron591(x1, x2)
{
return [(x1 == x2) ? 1 : 0];
}

/**
* IF: IF a THEN b ELSE c;
*
* @param x1 condition (1/0)
* @param x2 variable for 1
* @param x3 variable for 0
* @return {Array}
*/
function neuron579(x1, x2, x3)
{
return [(x1) ? x2 : x3];
}

/**
* IF a=b THEN c ELSE d:
*
* @param x1 a
* @param x2 b
* @param x3 c
* @param x4 d
* @return {Array}
*/
function neuron724(x1, x2, x3, x4)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;
outputs[3] = x4;

arr = neuron591(outputs[1], outputs[0]);
outputs[4] = arr[0];

arr = neuron579(outputs[4], outputs[2], outputs[3]);
outputs[5] = arr[0];

return[outputs[5]];
}

/**
* IfNull:
*
* @param x1 Variable
* @param x2 Output, if variable is null
* @return {Array}
*/
function neuron868(x1, x2)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;

arr = neuron865();
outputs[2] = arr[0];

arr = neuron724(outputs[0], outputs[2], outputs[1], outputs[0]);
outputs[3] = arr[0];

return[outputs[3]];
}

/**
* 1:
*
* @return {Array}
*/
function neuron501()
{
return [1];
}

/**
* 0:
*
* @return {Array}
*/
function neuron500()
{
return [0];
}

/**
* 8:
*
* @return {Array}
*/
function neuron508()
{
return [8];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - three inputs: Connect stringA + stringB + stringC
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @return {Array}
*/
function neuron564(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron520(outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron520(outputs[0], outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* Ascii code into character:
*
* @param x1 ascii code
* @return {Array}
*/
function neuron585(x1)
{
return [String.fromCharCode(x1)];
}

/**
* 3 digits of ascii code into character: connect 3 digits to one ascii number and change it to character
*
* @param x1 1. digit
* @param x2 2. digit
* @param x3 3. digit
* @return {Array}
*/
function neuron638(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron564(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron585(outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* character l:
*
* @return {Array}
*/
function neuron644()
{
var outputs = [];

arr = neuron501();
outputs[0] = arr[0];

arr = neuron500();
outputs[1] = arr[0];

arr = neuron508();
outputs[2] = arr[0];

arr = neuron638(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

return[outputs[3]];
}

/**
* 0:
*
* @return {Array}
*/
function neuron500()
{
return [0];
}

/**
* 1:
*
* @return {Array}
*/
function neuron501()
{
return [1];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - three inputs: Connect stringA + stringB + stringC
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @return {Array}
*/
function neuron564(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron520(outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron520(outputs[0], outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* Ascii code into character:
*
* @param x1 ascii code
* @return {Array}
*/
function neuron585(x1)
{
return [String.fromCharCode(x1)];
}

/**
* 3 digits of ascii code into character: connect 3 digits to one ascii number and change it to character
*
* @param x1 1. digit
* @param x2 2. digit
* @param x3 3. digit
* @return {Array}
*/
function neuron638(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron564(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron585(outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* character n:
*
* @return {Array}
*/
function neuron782()
{
var outputs = [];

arr = neuron500();
outputs[0] = arr[0];

arr = neuron501();
outputs[1] = arr[0];

arr = neuron638(outputs[1], outputs[1], outputs[0]);
outputs[2] = arr[0];

return[outputs[2]];
}

/**
* 1:
*
* @return {Array}
*/
function neuron501()
{
return [1];
}

/**
* 7:
*
* @return {Array}
*/
function neuron507()
{
return [7];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - three inputs: Connect stringA + stringB + stringC
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @return {Array}
*/
function neuron564(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron520(outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron520(outputs[0], outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* Ascii code into character:
*
* @param x1 ascii code
* @return {Array}
*/
function neuron585(x1)
{
return [String.fromCharCode(x1)];
}

/**
* 3 digits of ascii code into character: connect 3 digits to one ascii number and change it to character
*
* @param x1 1. digit
* @param x2 2. digit
* @param x3 3. digit
* @return {Array}
*/
function neuron638(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron564(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron585(outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* character u:
*
* @return {Array}
*/
function neuron866()
{
var outputs = [];

arr = neuron501();
outputs[0] = arr[0];

arr = neuron507();
outputs[1] = arr[0];

arr = neuron638(outputs[0], outputs[0], outputs[1]);
outputs[2] = arr[0];

return[outputs[2]];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - four inputs:
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @param x4 string D
* @return {Array}
*/
function neuron565(x1, x2, x3, x4)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;
outputs[3] = x4;

arr = neuron520(outputs[2], outputs[3]);
outputs[4] = arr[0];

arr = neuron520(outputs[1], outputs[4]);
outputs[5] = arr[0];

arr = neuron520(outputs[0], outputs[5]);
outputs[6] = arr[0];

return[outputs[6]];
}

/**
* null:
*
* @return {Array}
*/
function neuron865()
{
var outputs = [];

arr = neuron644();
outputs[0] = arr[0];

arr = neuron782();
outputs[1] = arr[0];

arr = neuron866();
outputs[2] = arr[0];

arr = neuron565(outputs[1], outputs[2], outputs[0], outputs[0]);
outputs[3] = arr[0];

return[outputs[3]];
}

/**
* a = b: IF a=b THEN 1 ELSE 0;
*
* @param x1 a
* @param x2 b
* @return {Array}
*/
function neuron591(x1, x2)
{
return [(x1 == x2) ? 1 : 0];
}

/**
* value is null: X = null
*
* @param x1 value
* @return {Array}
*/
function neuron883(x1)
{
var outputs = [];
outputs[0] = x1;

arr = neuron865();
outputs[1] = arr[0];

arr = neuron591(outputs[0], outputs[1]);
outputs[2] = arr[0];

return[outputs[2]];
}

/**
* Plus (x + y): The addition of two whole numbers is the total amount of those quantities combined.
*
* @param x1 first number
* @param x2 second number
* @return {Array}
*/
function neuron1(x1, x2)
{
math.config({number: 'BigNumber', precision: 64}); return [math.eval(Number(x1) + '+'+Number(x2)).toString()];
}

/**
* character .:
*
* @return {Array}
*/
function neuron510()
{
return['.'];
}

/**
* 5:
*
* @return {Array}
*/
function neuron505()
{
return [5];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Half (0.5):
*
* @return {Array}
*/
function neuron522()
{
var outputs = [];

arr = neuron510();
outputs[0] = arr[0];

arr = neuron505();
outputs[1] = arr[0];

arr = neuron520(outputs[0], outputs[1]);
outputs[2] = arr[0];

return[outputs[2]];
}

/**
* Multiple (x × y):
*
* @param x1 Number X
* @param x2 Number Y
* @return {Array}
*/
function neuron3(x1, x2)
{
math.config({number: 'BigNumber', precision: 64}); return [math.eval(Number(x1) + '*'+Number(x2)).toString()];
}

/**
* Midpoint (2d):
*
* @param x1 Point A: xa
* @param x2 Point A: ya
* @param x3 Point B: xb
* @param x4 Point B: yb
* @return {Array}
*/
function neuron659(x1, x2, x3, x4)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;
outputs[3] = x4;

arr = neuron1(outputs[3], outputs[1]);
outputs[4] = arr[0];

arr = neuron522();
outputs[5] = arr[0];

arr = neuron1(outputs[2], outputs[0]);
outputs[6] = arr[0];

arr = neuron3(outputs[4], outputs[5]);
outputs[7] = arr[0];

arr = neuron3(outputs[6], outputs[5]);
outputs[8] = arr[0];

return[outputs[8], outputs[7]];
}

/**
* Midpoint (3d):
*
* @param x1 Point A: xa
* @param x2 Point A: ya
* @param x3 Point A: za
* @param x4 Point B: xb
* @param x5 Point B: yb
* @param x6 Point B: zb
* @return {Array}
*/
function neuron660(x1, x2, x3, x4, x5, x6)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;
outputs[3] = x4;
outputs[4] = x5;
outputs[5] = x6;

arr = neuron659(outputs[2], outputs[3], outputs[5], outputs[0]);
outputs[6] = arr[0];

;   outputs[7] = arr[1];

arr = neuron659(outputs[2], outputs[4], outputs[0], outputs[1]);
outputs[8] = arr[0];

;   outputs[9] = arr[1];

return[outputs[7], outputs[9], outputs[6]];
}

/**
* Average:
*
* @param x1 value 1
* @param x2 value 2
* @return {Array}
*/
function neuron877(x1, x2)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;

arr = neuron660(outputs[0], outputs[0], outputs[0], outputs[1], outputs[1], outputs[0]);
outputs[2] = arr[0];

;   outputs[3] = arr[1];

;   outputs[4] = arr[2];

return[outputs[3]];
}

/**
* 1:
*
* @return {Array}
*/
function neuron501()
{
return [1];
}

/**
* 0:
*
* @return {Array}
*/
function neuron500()
{
return [0];
}

/**
* 8:
*
* @return {Array}
*/
function neuron508()
{
return [8];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - three inputs: Connect stringA + stringB + stringC
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @return {Array}
*/
function neuron564(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron520(outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron520(outputs[0], outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* Ascii code into character:
*
* @param x1 ascii code
* @return {Array}
*/
function neuron585(x1)
{
return [String.fromCharCode(x1)];
}

/**
* 3 digits of ascii code into character: connect 3 digits to one ascii number and change it to character
*
* @param x1 1. digit
* @param x2 2. digit
* @param x3 3. digit
* @return {Array}
*/
function neuron638(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron564(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron585(outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* character l:
*
* @return {Array}
*/
function neuron644()
{
var outputs = [];

arr = neuron501();
outputs[0] = arr[0];

arr = neuron500();
outputs[1] = arr[0];

arr = neuron508();
outputs[2] = arr[0];

arr = neuron638(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

return[outputs[3]];
}

/**
* 0:
*
* @return {Array}
*/
function neuron500()
{
return [0];
}

/**
* 1:
*
* @return {Array}
*/
function neuron501()
{
return [1];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - three inputs: Connect stringA + stringB + stringC
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @return {Array}
*/
function neuron564(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron520(outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron520(outputs[0], outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* Ascii code into character:
*
* @param x1 ascii code
* @return {Array}
*/
function neuron585(x1)
{
return [String.fromCharCode(x1)];
}

/**
* 3 digits of ascii code into character: connect 3 digits to one ascii number and change it to character
*
* @param x1 1. digit
* @param x2 2. digit
* @param x3 3. digit
* @return {Array}
*/
function neuron638(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron564(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron585(outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* character n:
*
* @return {Array}
*/
function neuron782()
{
var outputs = [];

arr = neuron500();
outputs[0] = arr[0];

arr = neuron501();
outputs[1] = arr[0];

arr = neuron638(outputs[1], outputs[1], outputs[0]);
outputs[2] = arr[0];

return[outputs[2]];
}

/**
* 1:
*
* @return {Array}
*/
function neuron501()
{
return [1];
}

/**
* 7:
*
* @return {Array}
*/
function neuron507()
{
return [7];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - three inputs: Connect stringA + stringB + stringC
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @return {Array}
*/
function neuron564(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron520(outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron520(outputs[0], outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* Ascii code into character:
*
* @param x1 ascii code
* @return {Array}
*/
function neuron585(x1)
{
return [String.fromCharCode(x1)];
}

/**
* 3 digits of ascii code into character: connect 3 digits to one ascii number and change it to character
*
* @param x1 1. digit
* @param x2 2. digit
* @param x3 3. digit
* @return {Array}
*/
function neuron638(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron564(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron585(outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* character u:
*
* @return {Array}
*/
function neuron866()
{
var outputs = [];

arr = neuron501();
outputs[0] = arr[0];

arr = neuron507();
outputs[1] = arr[0];

arr = neuron638(outputs[0], outputs[0], outputs[1]);
outputs[2] = arr[0];

return[outputs[2]];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - four inputs:
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @param x4 string D
* @return {Array}
*/
function neuron565(x1, x2, x3, x4)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;
outputs[3] = x4;

arr = neuron520(outputs[2], outputs[3]);
outputs[4] = arr[0];

arr = neuron520(outputs[1], outputs[4]);
outputs[5] = arr[0];

arr = neuron520(outputs[0], outputs[5]);
outputs[6] = arr[0];

return[outputs[6]];
}

/**
* null:
*
* @return {Array}
*/
function neuron865()
{
var outputs = [];

arr = neuron644();
outputs[0] = arr[0];

arr = neuron782();
outputs[1] = arr[0];

arr = neuron866();
outputs[2] = arr[0];

arr = neuron565(outputs[1], outputs[2], outputs[0], outputs[0]);
outputs[3] = arr[0];

return[outputs[3]];
}

/**
* Plus (x + y): The addition of two whole numbers is the total amount of those quantities combined.
*
* @param x1 first number
* @param x2 second number
* @return {Array}
*/
function neuron1(x1, x2)
{
math.config({number: 'BigNumber', precision: 64}); return [math.eval(Number(x1) + '+'+Number(x2)).toString()];
}

/**
* a = b: IF a=b THEN 1 ELSE 0;
*
* @param x1 a
* @param x2 b
* @return {Array}
*/
function neuron591(x1, x2)
{
return [(x1 == x2) ? 1 : 0];
}

/**
* IF: IF a THEN b ELSE c;
*
* @param x1 condition (1/0)
* @param x2 variable for 1
* @param x3 variable for 0
* @return {Array}
*/
function neuron579(x1, x2, x3)
{
return [(x1) ? x2 : x3];
}

/**
* IF a=b THEN c ELSE d:
*
* @param x1 a
* @param x2 b
* @param x3 c
* @param x4 d
* @return {Array}
*/
function neuron724(x1, x2, x3, x4)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;
outputs[3] = x4;

arr = neuron591(outputs[1], outputs[0]);
outputs[4] = arr[0];

arr = neuron579(outputs[4], outputs[2], outputs[3]);
outputs[5] = arr[0];

return[outputs[5]];
}

/**
* sql A+B: SELECT A + B
*
* @param x1 A
* @param x2 B
* @return {Array}
*/
function neuron867(x1, x2)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;

arr = neuron865();
outputs[2] = arr[0];

arr = neuron1(outputs[2], outputs[1]);
outputs[3] = arr[0];

arr = neuron1(outputs[0], outputs[1]);
outputs[4] = arr[0];

arr = neuron724(outputs[4], outputs[3], outputs[2], outputs[4]);
outputs[5] = arr[0];

return[outputs[5]];
}

/**
* sql AVG(A, B):
*
* @param x1 A
* @param x2 B
* @return {Array}
*/
function neuron885(x1, x2)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;

arr = neuron868(outputs[0], outputs[1]);
outputs[2] = arr[0];

arr = neuron868(outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron868(outputs[0], outputs[2]);
outputs[4] = arr[0];

arr = neuron883(outputs[2]);
outputs[5] = arr[0];

arr = neuron877(outputs[4], outputs[3]);
outputs[6] = arr[0];

arr = neuron867(outputs[5], outputs[6]);
outputs[7] = arr[0];

return[outputs[7]];
}

```