# the number of parameters are fixed depending on the total data sources run
if [[ $1 = "aiDataSource" ]]
echo "crypto_compare_btc coindesk_btc coingecko_btc" # return names of the data sources
elif [[ $1 = "testcase" ]] # return names of the test cases
elif [[ $1 = "aggregation" ]] # $2 is true output, $3 is expected output
# collect input string with a delimiter of each data source value separated with a '-' delimiter
IFS='-' read -ra array <<< "$2"
# here is the algorithm for each oracle script. This should be different based on the oscript
for i in "${array[@]}"; do
aggregation_result=`echo $aggregation_result + $i | bc`
#$aggregation_result = $aggregation_result + $i
# scale=2 allows division with floating points (two decimals)
aggregation_result=$(echo "scale=2; ($temp) / $size" |bc) # |bc allows adding two floating point numbers
echo "$aggregation_result"
route_name="$(route $1 $2 $3 $4)"