diff --git a/.kdev4/szorg5.kdev4 b/.kdev4/szorg5.kdev4
index 12b90f5fdca9c00051454d6bf44e0cdac4d3e539..3afe6eb1a2d8f4e6a44934b45f9b81b79f0b2a53 100644
--- a/.kdev4/szorg5.kdev4
+++ b/.kdev4/szorg5.kdev4
@@ -16,5 +16,26 @@ Name=GCC
 Path=gcc
 Type=GCC
 
+[Launch]
+Launch Configurations=Launch Configuration 0
+
+[Launch][Launch Configuration 0]
+Configured Launch Modes=execute
+Configured Launchers=nativeAppLauncher
+Name=szorg5
+Type=Native Application
+
+[Launch][Launch Configuration 0][Data]
+Arguments=
+Dependencies=@Variant(\x00\x00\x00\t\x00\x00\x00\x00\x01\x00\x00\x00\x0b\x00\x00\x00\x00\x02\x00\x00\x00\x0c\x00s\x00z\x00o\x00r\x00g\x005\x00\x00\x00\x0c\x00s\x00z\x00o\x00r\x00g\x005)
+Dependency Action=Build
+EnvironmentGroup=
+Executable=file:///home/junior/projects/szorg5/
+External Terminal=konsole --noclose --workdir %workdir -e %exe
+Project Target=szorg5,szorg5
+Use External Terminal=false
+Working Directory=
+isExecutable=false
+
 [Project]
 VersionControlSupport=kdevgit
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 111d81dc5db5a01acab2666afc26a53dabde7308..54c3fae90ab8e8f5ac9758db09ccee4de55fd438 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -2,5 +2,6 @@ cmake_minimum_required(VERSION 2.6)
 project(szorg5)
 
 add_executable(szorg5 main.cpp)
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
 
 install(TARGETS szorg5 RUNTIME DESTINATION bin)
diff --git a/main.cpp b/main.cpp
index 8bb47f1c1b02c1333b11c040127518de63192315..08977f0d24b2980b85041e2a142f7f69285f8abf 100644
--- a/main.cpp
+++ b/main.cpp
@@ -1,6 +1,44 @@
 #include <iostream>
+#include <string>
+#include <sstream>
 
-int main(int argc, char **argv) {
-    std::cout << "Hello, world!" << std::endl;
-    return 0;
+template<class T>
+void unpack(std::istringstream& s, T& arg)
+{
+  s>>arg;
+}
+
+template<class T>
+void unpack(std::istringstream&& s, T& arg)
+{
+  s>>arg;
 }
+
+template<class T, class ...V>
+void unpack(std::istringstream& s, T& arg , V& ...args)
+{
+  s>>arg;
+  unpack(s,args...);
+}
+
+template<class T, class ...V>
+void unpack(std::istringstream&& s, T& arg , V& ...args)
+{
+  s>>arg;
+  unpack(s,args...);
+}
+
+template<class ...T>
+void unpack(std::string s, T& ...args)
+{
+  unpack(std::istringstream{s},args...);
+}
+
+int main(int argc, char **argv) {
+  int a;
+  double b;
+  std::string c;
+  unpack("3 4.5 bla", a, b, c);  // a = 3; b = 4.5;
+  std::cout<<a<<":"<<b<<":"<<c;
+  return 0;
+}
\ No newline at end of file