diff --git a/main.cpp b/main.cpp
index 1064d87..6b7f1f7 100644
--- a/main.cpp
+++ b/main.cpp
@@ -35,12 +35,15 @@ Input input_data(istream& stream, bool prompt) {
 
 int main(int argc, char* argv[]) {
      if (argc > 1) {
-        for (int i = 0; i > argc; i++) {
-            cout << "argv[" << i << "] = " << argv[i];
+        CURL *curl = curl_easy_init();
+        if(curl) {
+            CURLcode res;
+            curl_easy_setopt(curl, CURLOPT_URL, argv[1]);
+            res = curl_easy_perform(curl);
+            curl_easy_cleanup(curl);
         }
         return 0;
     }
-    curl_global_init(CURL_GLOBAL_ALL);
     Input in = input_data(cin, false);
     vector<size_t> bins = make_histogram(in.numbers, in.bin_count);
     show_histogram_svg(bins);
diff --git a/svg.cpp b/svg.cpp
index fafe0f0..f0b699d 100644
--- a/svg.cpp
+++ b/svg.cpp
@@ -4,31 +4,27 @@
 #include "svg.h"
 using namespace std;
 
+const auto IMAGE_WIDTH = 400;
 const auto IMAGE_HEIGHT = 300;
 const auto TEXT_LEFT = 20;
 const auto TEXT_BASELINE = 20;
 const auto TEXT_WIDTH = 50;
 const auto BIN_HEIGHT = 30;
 const auto BLOCK_WIDTH = 10;
+const auto MAX_WIDTH = IMAGE_WIDTH - TEXT_WIDTH;
 
-double ask_width(size_t numbers_count, std::istream& input) {
-    while (true) {
-        double width;
-        cerr << "Write width ";
-        input >> width;
-        if (width < 70) {
-            cout << "Try again. It's too low.\n";
-        } else if (width > 800) {
-            cout << "Try again. It's too high.\n";
-        } else if (width < numbers_count * BLOCK_WIDTH / 3) {
-            cout << "Try again.\n";
-        } else {
-            return width;
-        }
-    }
+void
+svg_text(double left, double baseline, string text) {
+    cout << "<text x='" << left << "' y='" << baseline << "'>" << text << "</text>";
 }
 
-void svg_begin(double width, double height) {
+void
+svg_rect(double x, double y, double width, double height, string stroke = "black", string fill = "aaaaaa") {
+    cout << "<rect x='" << x<< "' y='" << y<< "' width='" << width<< "' height='" << height<< "' stroke='" << stroke<< "' fill='" << fill << "' />\n";
+}
+
+void
+svg_begin(double width, double height) {
     cout << "<?xml version='1.0' encoding='UTF-8'?>\n";
     cout << "<svg ";
     cout << "width='" << width << "' ";
@@ -37,25 +33,18 @@ void svg_begin(double width, double height) {
     cout << "xmlns='http://www.w3.org/2000/svg'>\n";
 }
 
-void svg_end() {
+void
+svg_end() {
     cout << "</svg>\n";
 }
 
-void svg_text(double left, double baseline, string text) {
-    cout << "<text x='" << left << "' y='" << baseline << "'>" << text << "</text>\n";
-}
-
-void svg_rect(double x, double y, double width, double height, string stroke = "black", string fill = "aaaaaa") {
-    cout << "<rect x='" << x << "' y='" << y << "' width='" << width << "' height='" << height << "' stroke='" << stroke << "' fill='" << fill << "' />\n";
-}
-
-void show_histogram_svg(const vector<size_t>& bins) {
-    const auto IMAGE_WIDTH = ask_width(bins.size(), cin);
+void
+show_histogram_svg(const vector<size_t>& bins) {
     const auto MAX_WIDTH = IMAGE_WIDTH - TEXT_WIDTH;
     size_t max_count = 0;
-    for (size_t count : bins) {
-        if (count > max_count) {
-            max_count = count;
+    for (size_t x : bins) {
+        if (x > max_count) {
+            max_count = x;
         }
     }
     if (max_count == 0) {
@@ -65,8 +54,7 @@ void show_histogram_svg(const vector<size_t>& bins) {
     if (scale_factor > 1) {
         scale_factor = 1;
     }
-
-    svg_begin(IMAGE_WIDTH, IMAGE_HEIGHT);
+    svg_begin(400, 300);
     double top = 0;
     for (size_t bin : bins) {
         double bin_width = BLOCK_WIDTH * bin * scale_factor;
@@ -76,3 +64,4 @@ void show_histogram_svg(const vector<size_t>& bins) {
     }
     svg_end();
 }
+