#include <iostream>
#include <cmath>
#include <vector>
#include "histogram.h"
#include "text.h"
#include "svg.h"
#include <curl/curl.h>
using namespace std;

struct Input{
    vector <double> numbers;
    size_t bin_count{};
    };

Input
input_data(istream& in,bool promt)
{
    if (promt){
        size_t count;  // âñå ÷èñëà
        cerr << "Count= ";
        cin >> count;

        Input rez;
        rez.numbers.resize(count);
        cerr << "numbers:";
        for (size_t i = 0; i < count; i++)
        {
            cin >> rez.numbers[i];
        }

        cerr << "Bin_count= ";
        cin >> rez.bin_count;
        return rez;
    }
    else{
        size_t count;  // âñå ÷èñëà
        cin >> count;

        Input rez;
        rez.numbers.resize(count);
        for (size_t i = 0; i < count; i++)
        {
            cin >> rez.numbers[i];
        }
        cin >> rez.bin_count;
        return rez;
    }
}

int main()
{
    curl_global_init(CURL_GLOBAL_ALL);
    bool promt=true;
    Input in = input_data(cin, promt);
    auto bins=make_histogram(in.numbers,in.bin_count);
    double sr = 0.0;
    show_histogram_svg(bins,sr);
    return 0;
}