diff --git a/README.md b/README.md
index 9abab65a8b6a11ab7855545bde050e41a4f234f0..c6ad3a2e7af4c02633ca595c2154a714383adfa3 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# FDE Exercise 2.4
+~# FDE Exercise 2.4
 
 ## Task
 
diff --git a/src/main.cpp b/src/main.cpp
index fdb2a42c049d5a1c0e8d8d4bab4a281458d3ddcc..fd7b12dcd4ac1fed2bddad6b3cb8794c7bf79d48 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -1,5 +1,7 @@
 #include <iostream>
 #include <string>
+#include<sys/mman.h>
+#include <thread>
 
 #include "sum.hpp"
 
@@ -8,8 +10,14 @@ int main(int argc, char* argv[]) {
         std::cout << "Usage: " << argv[0] << " <lineitem.tbl>";
         return 1;
     }
+    int handle=open(argv[1],O_RDONLY);
+    auto size=lseek(handle,0,SEEK_END);
+    auto mapping_size=size+8;
+    auto data=mmap(nullptr,mapping_size,PROT_READ,MAP_SHARED,handle,0);
 
     int64_t price_sum = sum_extendedprice(argv[1]);
     std::cout << price_sum << std::endl;
+    munmap(data,mapping_size);
+    close(handle);
     return 0;
 }
diff --git a/src/sum.cpp b/src/sum.cpp
index dd645cdd70b522c9df1bc23a769ce871c4efc45d..d2cb20fe7f28d418856e7f1915f8f8349822f414 100644
--- a/src/sum.cpp
+++ b/src/sum.cpp
@@ -25,7 +25,7 @@ int64_t sum_extendedprice(const std::string& file_name) {
     uint64_t field_number = 0;
     for (auto row : lineitem) {
         //-- TODO exercise sheet 2 Task 4.2
-        // your code goes here
+        price_sum+=ToInt(row[5]);
         //--
     }
     return price_sum;