From faca8f7b9c281d8faca0402e9586612e7049ce1f Mon Sep 17 00:00:00 2001
From: Robert Hedman <robert.hedman@mac.com>
Date: Tue, 4 Sep 2018 12:05:17 +0000
Subject: [PATCH] added all scripts, scream etc

---
 RPI/lidar/relayer.py                          |   54 +
 RPI/piMobile.sh                               |   63 +
 RPI/piMobile_new.sh                           |   63 +
 RPI/piMobile_rust.sh                          |   63 +
 RPI/scream/rtsp/CMakeCache.txt                |  304 +++
 .../CMakeFiles/3.7.2/CMakeCCompiler.cmake     |   68 +
 .../CMakeFiles/3.7.2/CMakeCXXCompiler.cmake   |   69 +
 .../3.7.2/CMakeDetermineCompilerABI_C.bin     |  Bin 0 -> 8296 bytes
 .../3.7.2/CMakeDetermineCompilerABI_CXX.bin   |  Bin 0 -> 8324 bytes
 .../rtsp/CMakeFiles/3.7.2/CMakeSystem.cmake   |   15 +
 .../3.7.2/CompilerIdC/CMakeCCompilerId.c      |  561 +++++
 .../rtsp/CMakeFiles/3.7.2/CompilerIdC/a.out   |  Bin 0 -> 8308 bytes
 .../CompilerIdCXX/CMakeCXXCompilerId.cpp      |  533 +++++
 .../rtsp/CMakeFiles/3.7.2/CompilerIdCXX/a.out |  Bin 0 -> 8452 bytes
 .../CMakeDirectoryInformation.cmake           |   16 +
 RPI/scream/rtsp/CMakeFiles/CMakeOutput.log    |  542 +++++
 RPI/scream/rtsp/CMakeFiles/Makefile.cmake     |   47 +
 RPI/scream/rtsp/CMakeFiles/Makefile2          |  126 ++
 .../rtsp/CMakeFiles/TargetDirectories.txt     |    5 +
 RPI/scream/rtsp/CMakeFiles/cmake.check_cache  |    1 +
 RPI/scream/rtsp/CMakeFiles/feature_tests.bin  |  Bin 0 -> 12376 bytes
 RPI/scream/rtsp/CMakeFiles/feature_tests.c    |   34 +
 RPI/scream/rtsp/CMakeFiles/feature_tests.cxx  |  405 ++++
 RPI/scream/rtsp/CMakeFiles/progress.marks     |    1 +
 RPI/scream/rtsp/CMakeLists.txt                |   83 +
 RPI/scream/rtsp/Makefile                      |  148 ++
 RPI/scream/rtsp/SSRC.txt                      |    1 +
 RPI/scream/rtsp/bin/rtsp                      |  Bin 0 -> 18880 bytes
 RPI/scream/rtsp/cmake_install.cmake           |   50 +
 .../CMakeDirectoryInformation.cmake           |   16 +
 .../rtsp/code/CMakeFiles/progress.marks       |    1 +
 .../code/CMakeFiles/rtsp.dir/CXX.includecache |   10 +
 .../code/CMakeFiles/rtsp.dir/DependInfo.cmake |   23 +
 .../rtsp/code/CMakeFiles/rtsp.dir/build.make  |  113 +
 .../CMakeFiles/rtsp.dir/cmake_clean.cmake     |   10 +
 .../code/CMakeFiles/rtsp.dir/depend.internal  |    5 +
 .../rtsp/code/CMakeFiles/rtsp.dir/depend.make |    5 +
 .../rtsp/code/CMakeFiles/rtsp.dir/flags.make  |   10 +
 .../rtsp/code/CMakeFiles/rtsp.dir/link.txt    |    1 +
 .../code/CMakeFiles/rtsp.dir/progress.make    |    3 +
 .../rtsp/code/CMakeFiles/rtsp.dir/rtsp.cpp.o  |  Bin 0 -> 8584 bytes
 RPI/scream/rtsp/code/CMakeLists.txt           |   28 +
 RPI/scream/rtsp/code/Makefile                 |  180 ++
 RPI/scream/rtsp/code/cmake_install.cmake      |   34 +
 RPI/scream/rtsp/code/rtsp.cpp                 |    1 +
 RPI/scream/rtsp/rtspOut.txt                   |  105 +
 RPI/scream/rtsp/test.txt                      |  231 ++
 RPI/scream/scream_receiver/CMakeCache.txt     |  255 +++
 .../CMakeFiles/3.7.2/CMakeCCompiler.cmake     |   68 +
 .../CMakeFiles/3.7.2/CMakeCXXCompiler.cmake   |   69 +
 .../3.7.2/CMakeDetermineCompilerABI_C.bin     |  Bin 0 -> 8464 bytes
 .../3.7.2/CMakeDetermineCompilerABI_CXX.bin   |  Bin 0 -> 8472 bytes
 .../CMakeFiles/3.7.2/CMakeSystem.cmake        |   15 +
 .../3.7.2/CompilerIdC/CMakeCCompilerId.c      |  561 +++++
 .../CMakeFiles/3.7.2/CompilerIdC/a.out        |  Bin 0 -> 8616 bytes
 .../CompilerIdCXX/CMakeCXXCompilerId.cpp      |  533 +++++
 .../CMakeFiles/3.7.2/CompilerIdCXX/a.out      |  Bin 0 -> 8632 bytes
 .../CMakeDirectoryInformation.cmake           |   16 +
 .../CMakeFiles/CMakeOutput.log                |  560 +++++
 .../scream_receiver/CMakeFiles/Makefile.cmake |   47 +
 .../scream_receiver/CMakeFiles/Makefile2      |  126 ++
 .../CMakeFiles/TargetDirectories.txt          |    5 +
 .../CMakeFiles/cmake.check_cache              |    1 +
 .../CMakeFiles/feature_tests.bin              |  Bin 0 -> 12520 bytes
 .../CMakeFiles/feature_tests.c                |   34 +
 .../CMakeFiles/feature_tests.cxx              |  405 ++++
 .../scream_receiver/CMakeFiles/progress.marks |    1 +
 RPI/scream/scream_receiver/CMakeLists.txt     |   78 +
 RPI/scream/scream_receiver/Makefile           |  148 ++
 .../scream_receiver/bin/scream_receiver       |  Bin 0 -> 44120 bytes
 .../scream_receiver/cmake_install.cmake       |   50 +
 .../CMakeDirectoryInformation.cmake           |   16 +
 .../code/CMakeFiles/progress.marks            |    1 +
 .../scream_receiver.dir/CXX.includecache      |   68 +
 .../scream_receiver.dir/DependInfo.cmake      |   24 +
 .../scream_receiver.dir/ScreamRx.cpp.o        |  Bin 0 -> 35968 bytes
 .../CMakeFiles/scream_receiver.dir/build.make |  140 ++
 .../scream_receiver.dir/cmake_clean.cmake     |   11 +
 .../scream_receiver.dir/depend.internal       |   10 +
 .../scream_receiver.dir/depend.make           |   10 +
 .../CMakeFiles/scream_receiver.dir/flags.make |   10 +
 .../CMakeFiles/scream_receiver.dir/link.txt   |    1 +
 .../scream_receiver.dir/progress.make         |    4 +
 .../scream_receiver.dir/scream_receiver.cpp.o |  Bin 0 -> 23304 bytes
 .../scream_receiver/code/CMakeLists.txt       |   30 +
 RPI/scream/scream_receiver/code/Makefile      |  210 ++
 RPI/scream/scream_receiver/code/ScreamRx.cpp  |  305 +++
 RPI/scream/scream_receiver/code/ScreamRx.h    |  146 ++
 RPI/scream/scream_receiver/code/ScreamTx.cpp  | 1859 ++++++++++++++++
 RPI/scream/scream_receiver/code/ScreamTx.h    |  618 ++++++
 .../scream_receiver/code/cmake_install.cmake  |   34 +
 .../scream_receiver/code/scream_receiver.cpp  |  317 +++
 RPI/scream/scream_sender/CMakeCache.txt       |  255 +++
 .../CMakeFiles/3.7.2/CMakeCCompiler.cmake     |   68 +
 .../CMakeFiles/3.7.2/CMakeCXXCompiler.cmake   |   69 +
 .../3.7.2/CMakeDetermineCompilerABI_C.bin     |  Bin 0 -> 8464 bytes
 .../3.7.2/CMakeDetermineCompilerABI_CXX.bin   |  Bin 0 -> 8472 bytes
 .../CMakeFiles/3.7.2/CMakeSystem.cmake        |   15 +
 .../3.7.2/CompilerIdC/CMakeCCompilerId.c      |  561 +++++
 .../CMakeFiles/3.7.2/CompilerIdC/a.out        |  Bin 0 -> 8616 bytes
 .../CompilerIdCXX/CMakeCXXCompilerId.cpp      |  533 +++++
 .../CMakeFiles/3.7.2/CompilerIdCXX/a.out      |  Bin 0 -> 8632 bytes
 .../CMakeDirectoryInformation.cmake           |   16 +
 .../scream_sender/CMakeFiles/CMakeOutput.log  |  560 +++++
 .../scream_sender/CMakeFiles/Makefile.cmake   |   48 +
 RPI/scream/scream_sender/CMakeFiles/Makefile2 |  126 ++
 .../CMakeFiles/TargetDirectories.txt          |    5 +
 .../CMakeFiles/cmake.check_cache              |    1 +
 .../CMakeFiles/feature_tests.bin              |  Bin 0 -> 12520 bytes
 .../scream_sender/CMakeFiles/feature_tests.c  |   34 +
 .../CMakeFiles/feature_tests.cxx              |  405 ++++
 .../scream_sender/CMakeFiles/progress.marks   |    1 +
 RPI/scream/scream_sender/CMakeLists.txt       |   83 +
 RPI/scream/scream_sender/Makefile             |  148 ++
 RPI/scream/scream_sender/bin/scream_sender    |  Bin 0 -> 78988 bytes
 RPI/scream/scream_sender/cmake_install.cmake  |   50 +
 .../CMakeDirectoryInformation.cmake           |   16 +
 .../code/CMakeFiles/progress.marks            |    1 +
 .../scream_sender.dir/CXX.includecache        |   62 +
 .../scream_sender.dir/DependInfo.cmake        |   25 +
 .../scream_sender.dir/RtpQueue.cpp.o          |  Bin 0 -> 7976 bytes
 .../scream_sender.dir/ScreamTx.cpp.o          |  Bin 0 -> 40828 bytes
 .../CMakeFiles/scream_sender.dir/build.make   |  167 ++
 .../scream_sender.dir/cmake_clean.cmake       |   12 +
 .../scream_sender.dir/depend.internal         |   13 +
 .../CMakeFiles/scream_sender.dir/depend.make  |   13 +
 .../CMakeFiles/scream_sender.dir/flags.make   |   10 +
 .../CMakeFiles/scream_sender.dir/link.txt     |    1 +
 .../scream_sender.dir/progress.make           |    5 +
 .../scream_sender.dir/scream_sender.cpp.o     |  Bin 0 -> 28328 bytes
 RPI/scream/scream_sender/code/CMakeLists.txt  |   33 +
 RPI/scream/scream_sender/code/Makefile        |  240 +++
 RPI/scream/scream_sender/code/RtpQueue.cpp    |  121 ++
 RPI/scream/scream_sender/code/RtpQueue.h      |   59 +
 RPI/scream/scream_sender/code/ScreamRx.h      |  146 ++
 RPI/scream/scream_sender/code/ScreamTx.cpp    | 1912 +++++++++++++++++
 RPI/scream/scream_sender/code/ScreamTx.h      |  627 ++++++
 .../scream_sender/code/cmake_install.cmake    |   34 +
 .../scream_sender/code/scream_sender.cpp      |    1 +
 RPI/talk.sh                                   |    3 +
 140 files changed, 17293 insertions(+)
 create mode 100644 RPI/lidar/relayer.py
 create mode 100755 RPI/piMobile.sh
 create mode 100755 RPI/piMobile_new.sh
 create mode 100755 RPI/piMobile_rust.sh
 create mode 100644 RPI/scream/rtsp/CMakeCache.txt
 create mode 100644 RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeCCompiler.cmake
 create mode 100644 RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeCXXCompiler.cmake
 create mode 100755 RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_C.bin
 create mode 100755 RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_CXX.bin
 create mode 100644 RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeSystem.cmake
 create mode 100644 RPI/scream/rtsp/CMakeFiles/3.7.2/CompilerIdC/CMakeCCompilerId.c
 create mode 100755 RPI/scream/rtsp/CMakeFiles/3.7.2/CompilerIdC/a.out
 create mode 100644 RPI/scream/rtsp/CMakeFiles/3.7.2/CompilerIdCXX/CMakeCXXCompilerId.cpp
 create mode 100755 RPI/scream/rtsp/CMakeFiles/3.7.2/CompilerIdCXX/a.out
 create mode 100644 RPI/scream/rtsp/CMakeFiles/CMakeDirectoryInformation.cmake
 create mode 100644 RPI/scream/rtsp/CMakeFiles/CMakeOutput.log
 create mode 100644 RPI/scream/rtsp/CMakeFiles/Makefile.cmake
 create mode 100644 RPI/scream/rtsp/CMakeFiles/Makefile2
 create mode 100644 RPI/scream/rtsp/CMakeFiles/TargetDirectories.txt
 create mode 100644 RPI/scream/rtsp/CMakeFiles/cmake.check_cache
 create mode 100755 RPI/scream/rtsp/CMakeFiles/feature_tests.bin
 create mode 100644 RPI/scream/rtsp/CMakeFiles/feature_tests.c
 create mode 100644 RPI/scream/rtsp/CMakeFiles/feature_tests.cxx
 create mode 100644 RPI/scream/rtsp/CMakeFiles/progress.marks
 create mode 100644 RPI/scream/rtsp/CMakeLists.txt
 create mode 100644 RPI/scream/rtsp/Makefile
 create mode 100644 RPI/scream/rtsp/SSRC.txt
 create mode 100755 RPI/scream/rtsp/bin/rtsp
 create mode 100644 RPI/scream/rtsp/cmake_install.cmake
 create mode 100644 RPI/scream/rtsp/code/CMakeFiles/CMakeDirectoryInformation.cmake
 create mode 100644 RPI/scream/rtsp/code/CMakeFiles/progress.marks
 create mode 100644 RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/CXX.includecache
 create mode 100644 RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/DependInfo.cmake
 create mode 100644 RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/build.make
 create mode 100644 RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/cmake_clean.cmake
 create mode 100644 RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/depend.internal
 create mode 100644 RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/depend.make
 create mode 100644 RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/flags.make
 create mode 100644 RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/link.txt
 create mode 100644 RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/progress.make
 create mode 100644 RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/rtsp.cpp.o
 create mode 100644 RPI/scream/rtsp/code/CMakeLists.txt
 create mode 100644 RPI/scream/rtsp/code/Makefile
 create mode 100644 RPI/scream/rtsp/code/cmake_install.cmake
 create mode 100644 RPI/scream/rtsp/code/rtsp.cpp
 create mode 100644 RPI/scream/rtsp/rtspOut.txt
 create mode 100644 RPI/scream/rtsp/test.txt
 create mode 100644 RPI/scream/scream_receiver/CMakeCache.txt
 create mode 100644 RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeCCompiler.cmake
 create mode 100644 RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeCXXCompiler.cmake
 create mode 100755 RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_C.bin
 create mode 100755 RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_CXX.bin
 create mode 100644 RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeSystem.cmake
 create mode 100644 RPI/scream/scream_receiver/CMakeFiles/3.7.2/CompilerIdC/CMakeCCompilerId.c
 create mode 100755 RPI/scream/scream_receiver/CMakeFiles/3.7.2/CompilerIdC/a.out
 create mode 100644 RPI/scream/scream_receiver/CMakeFiles/3.7.2/CompilerIdCXX/CMakeCXXCompilerId.cpp
 create mode 100755 RPI/scream/scream_receiver/CMakeFiles/3.7.2/CompilerIdCXX/a.out
 create mode 100644 RPI/scream/scream_receiver/CMakeFiles/CMakeDirectoryInformation.cmake
 create mode 100644 RPI/scream/scream_receiver/CMakeFiles/CMakeOutput.log
 create mode 100644 RPI/scream/scream_receiver/CMakeFiles/Makefile.cmake
 create mode 100644 RPI/scream/scream_receiver/CMakeFiles/Makefile2
 create mode 100644 RPI/scream/scream_receiver/CMakeFiles/TargetDirectories.txt
 create mode 100644 RPI/scream/scream_receiver/CMakeFiles/cmake.check_cache
 create mode 100755 RPI/scream/scream_receiver/CMakeFiles/feature_tests.bin
 create mode 100644 RPI/scream/scream_receiver/CMakeFiles/feature_tests.c
 create mode 100644 RPI/scream/scream_receiver/CMakeFiles/feature_tests.cxx
 create mode 100644 RPI/scream/scream_receiver/CMakeFiles/progress.marks
 create mode 100644 RPI/scream/scream_receiver/CMakeLists.txt
 create mode 100644 RPI/scream/scream_receiver/Makefile
 create mode 100755 RPI/scream/scream_receiver/bin/scream_receiver
 create mode 100644 RPI/scream/scream_receiver/cmake_install.cmake
 create mode 100644 RPI/scream/scream_receiver/code/CMakeFiles/CMakeDirectoryInformation.cmake
 create mode 100644 RPI/scream/scream_receiver/code/CMakeFiles/progress.marks
 create mode 100644 RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/CXX.includecache
 create mode 100644 RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/DependInfo.cmake
 create mode 100644 RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o
 create mode 100644 RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/build.make
 create mode 100644 RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/cmake_clean.cmake
 create mode 100644 RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/depend.internal
 create mode 100644 RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/depend.make
 create mode 100644 RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/flags.make
 create mode 100644 RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/link.txt
 create mode 100644 RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/progress.make
 create mode 100644 RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o
 create mode 100644 RPI/scream/scream_receiver/code/CMakeLists.txt
 create mode 100644 RPI/scream/scream_receiver/code/Makefile
 create mode 100644 RPI/scream/scream_receiver/code/ScreamRx.cpp
 create mode 100644 RPI/scream/scream_receiver/code/ScreamRx.h
 create mode 100644 RPI/scream/scream_receiver/code/ScreamTx.cpp
 create mode 100644 RPI/scream/scream_receiver/code/ScreamTx.h
 create mode 100644 RPI/scream/scream_receiver/code/cmake_install.cmake
 create mode 100644 RPI/scream/scream_receiver/code/scream_receiver.cpp
 create mode 100644 RPI/scream/scream_sender/CMakeCache.txt
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeCCompiler.cmake
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeCXXCompiler.cmake
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_C.bin
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_CXX.bin
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeSystem.cmake
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/3.7.2/CompilerIdC/CMakeCCompilerId.c
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/3.7.2/CompilerIdC/a.out
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/3.7.2/CompilerIdCXX/CMakeCXXCompilerId.cpp
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/3.7.2/CompilerIdCXX/a.out
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/CMakeDirectoryInformation.cmake
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/CMakeOutput.log
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/Makefile.cmake
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/Makefile2
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/TargetDirectories.txt
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/cmake.check_cache
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/feature_tests.bin
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/feature_tests.c
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/feature_tests.cxx
 create mode 100644 RPI/scream/scream_sender/CMakeFiles/progress.marks
 create mode 100644 RPI/scream/scream_sender/CMakeLists.txt
 create mode 100644 RPI/scream/scream_sender/Makefile
 create mode 100755 RPI/scream/scream_sender/bin/scream_sender
 create mode 100644 RPI/scream/scream_sender/cmake_install.cmake
 create mode 100644 RPI/scream/scream_sender/code/CMakeFiles/CMakeDirectoryInformation.cmake
 create mode 100644 RPI/scream/scream_sender/code/CMakeFiles/progress.marks
 create mode 100644 RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/CXX.includecache
 create mode 100644 RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/DependInfo.cmake
 create mode 100644 RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o
 create mode 100644 RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o
 create mode 100644 RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/build.make
 create mode 100644 RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/cmake_clean.cmake
 create mode 100644 RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/depend.internal
 create mode 100644 RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/depend.make
 create mode 100644 RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/flags.make
 create mode 100644 RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/link.txt
 create mode 100644 RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/progress.make
 create mode 100644 RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o
 create mode 100644 RPI/scream/scream_sender/code/CMakeLists.txt
 create mode 100644 RPI/scream/scream_sender/code/Makefile
 create mode 100644 RPI/scream/scream_sender/code/RtpQueue.cpp
 create mode 100644 RPI/scream/scream_sender/code/RtpQueue.h
 create mode 100644 RPI/scream/scream_sender/code/ScreamRx.h
 create mode 100644 RPI/scream/scream_sender/code/ScreamTx.cpp
 create mode 100644 RPI/scream/scream_sender/code/ScreamTx.h
 create mode 100644 RPI/scream/scream_sender/code/cmake_install.cmake
 create mode 100644 RPI/scream/scream_sender/code/scream_sender.cpp
 create mode 100755 RPI/talk.sh

diff --git a/RPI/lidar/relayer.py b/RPI/lidar/relayer.py
new file mode 100644
index 0000000..04c4313
--- /dev/null
+++ b/RPI/lidar/relayer.py
@@ -0,0 +1,54 @@
+import matplotlib.pyplot as plt
+import numpy as np
+import matplotlib.animation as animation
+import math
+import socket
+import time
+
+LIDAR_IP = '10.180.65.30' #'169.254.13.125'
+PLOTTER_IP = '10.9.0.2' #'169.254.13.125'
+LIDAR_PORT = 2111
+PLOTTER_PORT = 2110
+BUFFER_SIZE = 10240
+MESSAGE = "\x02sRN LMDscandata\x03"
+
+
+
+
+def main():
+
+
+    plot_type = "blit"
+
+    sp = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
+    sp.bind(('', PLOTTER_PORT))
+    print 'listening for sender...'
+    sp.listen(1)
+    conn, addr = sp.accept()
+    print 'Connected by', addr
+    #conn.send("Hello")
+    
+    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
+    s.connect((LIDAR_IP, LIDAR_PORT))
+
+    while True:
+    	# check if update needed
+    	state = conn.recv(2)
+    	print(state)
+    	if state == "go":
+    		print("state was go")
+    		# request lidar data
+    		s.sendall(MESSAGE)
+    		data = s.recv(BUFFER_SIZE)
+    		#print data
+
+    		#time.sleep(0.1)
+
+    		# send lidar data
+    		conn.sendall(data)
+    
+    s.close()
+    conn.close()
+
+main()
+
diff --git a/RPI/piMobile.sh b/RPI/piMobile.sh
new file mode 100755
index 0000000..7fd5a76
--- /dev/null
+++ b/RPI/piMobile.sh
@@ -0,0 +1,63 @@
+#!/bin/bash
+echo "hello!"
+
+echo $(pwd)
+#./scream/rtsp/bin/rtsp 10.180.65.28 31111 &> rtspOut.txt
+
+echo "starting relayer"
+( python robotvt17/python/permobil/relayerUDP.py  ) &
+P0=$!
+
+echo "setting up rtsp:s"
+( ./scream/rtsp/bin/rtsp 10.180.65.26 31111 &> rtspOut1.txt ) &
+P1=$!
+sleep 3
+echo "one done"
+( ./scream/rtsp/bin/rtsp 10.180.65.27 31112 &> rtspOut2.txt ) &
+P2=$!
+sleep 2
+echo "two done"
+( ./scream/rtsp/bin/rtsp 10.180.65.28 31113 &> rtspOut3.txt ) &
+P3=$!
+sleep 4
+echo "three done"
+
+( ./scream/rtsp/bin/rtsp 10.180.65.29 31114 &> rtspOut4.txt ) &
+P4=$!
+sleep 5
+
+#echo "waiting for rtsp clients to set up..."
+#echo 0
+#sleep 1
+#echo 1
+#sleep 1
+#echo 2
+#sleep 1
+#echo 3
+
+
+
+#echo "waiting for {$P1}"
+#wait $P1
+
+cat rtspOut1.txt | grep -o 'SSRC:[0-9A-Za-z]*' | awk -F : '{print $2}' &> SSRC1.txt
+SSRC1=$(cat SSRC1.txt)
+echo $SSRC1
+
+cat rtspOut2.txt | grep -o 'SSRC:[0-9A-Za-z]*' | awk -F : '{print $2}' &> SSRC2.txt
+SSRC2=$(cat SSRC2.txt)
+echo $SSRC2
+
+cat rtspOut3.txt | grep -o 'SSRC:[0-9A-Za-z]*' | awk -F : '{print $2}' &> SSRC3.txt
+SSRC3=$(cat SSRC3.txt)
+echo $SSRC3
+
+cat rtspOut4.txt | grep -o 'SSRC:[0-9A-Za-z]*' | awk -F : '{print $2}' &> SSRC4.txt
+SSRC4=$(cat SSRC4.txt)
+echo $SSRC4
+
+#./scream/scream_sender/bin/scream_sender YWRtaW46YWRtaW5hZG1pbjE= 1 10.19.0.3 31110 10.180.65.28 31111 {$SSRC} 1
+./scream/scream_sender/bin/scream_sender -scale 1.0 YWRtaW46YWRtaW5hZG1pbjE= 4 10.9.0.2 31110 10.180.65.28 31113 $SSRC3 1.0 10.180.65.27 31112 $SSRC2 0.2 10.180.65.26 31111 $SSRC1 0.1 10.180.65.29 31114 $SSRC4 0.1 &> screamSender.log
+wait $P0 $P1 $P2 $P3 $P4
+
+tail -n 35 rtspOut1.txt
diff --git a/RPI/piMobile_new.sh b/RPI/piMobile_new.sh
new file mode 100755
index 0000000..8ffb750
--- /dev/null
+++ b/RPI/piMobile_new.sh
@@ -0,0 +1,63 @@
+#!/bin/bash
+echo "hello!"
+
+echo $(pwd)
+#./scream/rtsp/bin/rtsp 10.180.65.28 31111 &> rtspOut.txt
+
+echo "starting relayer"
+( python robotvt17/python/permobil/relayerUDP.py  ) &
+P0=$!
+
+echo "setting up rtsp:s"
+( ./scream/rtsp/bin/rtsp 10.180.65.26 31111 &> rtspOut1.txt ) &
+P1=$!
+sleep 3
+echo "one done"
+( ./scream/rtsp/bin/rtsp 10.180.65.27 31112 &> rtspOut2.txt ) &
+P2=$!
+sleep 2
+echo "two done"
+( ./scream/rtsp/bin/rtsp 10.180.65.28 31113 &> rtspOut3.txt ) &
+P3=$!
+sleep 4
+echo "three done"
+
+( ./scream/rtsp/bin/rtsp 10.180.65.29 31114 &> rtspOut4.txt ) &
+P4=$!
+sleep 5
+
+#echo "waiting for rtsp clients to set up..."
+#echo 0
+#sleep 1
+#echo 1
+#sleep 1
+#echo 2
+#sleep 1
+#echo 3
+
+
+
+#echo "waiting for {$P1}"
+#wait $P1
+
+cat rtspOut1.txt | grep -o 'SSRC:[0-9A-Za-z]*' | awk -F : '{print $2}' &> SSRC1.txt
+SSRC1=$(cat SSRC1.txt)
+echo $SSRC1
+
+cat rtspOut2.txt | grep -o 'SSRC:[0-9A-Za-z]*' | awk -F : '{print $2}' &> SSRC2.txt
+SSRC2=$(cat SSRC2.txt)
+echo $SSRC2
+
+cat rtspOut3.txt | grep -o 'SSRC:[0-9A-Za-z]*' | awk -F : '{print $2}' &> SSRC3.txt
+SSRC3=$(cat SSRC3.txt)
+echo $SSRC3
+
+cat rtspOut4.txt | grep -o 'SSRC:[0-9A-Za-z]*' | awk -F : '{print $2}' &> SSRC4.txt
+SSRC4=$(cat SSRC4.txt)
+echo $SSRC4
+
+#./scream/scream_sender/bin/scream_sender YWRtaW46YWRtaW5hZG1pbjE= 1 10.19.0.3 31110 10.180.65.28 31111 {$SSRC} 1
+./scream/scream_sender/bin/scream_sender -scale 1.0 YWRtaW46YWRtaW5hZG1pbjE= 4 10.9.0.2 31110 10.180.65.28 31113 $SSRC3 0.1 10.180.65.27 31112 $SSRC2 0.2 10.180.65.26 31111 $SSRC1 0.1 10.180.65.29 31114 $SSRC4 1.0  &> screamSender.log
+wait $P0 $P1 $P2 $P3 $P4
+
+tail -n 35 rtspOut1.txt
diff --git a/RPI/piMobile_rust.sh b/RPI/piMobile_rust.sh
new file mode 100755
index 0000000..3e38298
--- /dev/null
+++ b/RPI/piMobile_rust.sh
@@ -0,0 +1,63 @@
+#!/bin/bash
+echo "hello!"
+
+echo $(pwd)
+#./scream/rtsp/bin/rtsp 10.180.65.28 31111 &> rtspOut.txt
+
+#echo "starting relayer"
+#( python robotvt17/python/permobil/relayerUDP.py  ) &
+#P0=$!
+
+echo "setting up rtsp:s"
+( ./scream/rtsp/bin/rtsp 10.180.65.26 31111 &> rtspOut1.txt ) &
+P1=$!
+sleep 3
+echo "one done"
+( ./scream/rtsp/bin/rtsp 10.180.65.27 31112 &> rtspOut2.txt ) &
+P2=$!
+sleep 2
+echo "two done"
+( ./scream/rtsp/bin/rtsp 10.180.65.28 31113 &> rtspOut3.txt ) &
+P3=$!
+sleep 4
+echo "three done"
+
+( ./scream/rtsp/bin/rtsp 10.180.65.29 31114 &> rtspOut4.txt ) &
+P4=$!
+sleep 5
+
+#echo "waiting for rtsp clients to set up..."
+#echo 0
+#sleep 1
+#echo 1
+#sleep 1
+#echo 2
+#sleep 1
+#echo 3
+
+
+
+#echo "waiting for {$P1}"
+#wait $P1
+
+cat rtspOut1.txt | grep -o 'SSRC:[0-9A-Za-z]*' | awk -F : '{print $2}' &> SSRC1.txt
+SSRC1=$(cat SSRC1.txt)
+echo $SSRC1
+
+cat rtspOut2.txt | grep -o 'SSRC:[0-9A-Za-z]*' | awk -F : '{print $2}' &> SSRC2.txt
+SSRC2=$(cat SSRC2.txt)
+echo $SSRC2
+
+cat rtspOut3.txt | grep -o 'SSRC:[0-9A-Za-z]*' | awk -F : '{print $2}' &> SSRC3.txt
+SSRC3=$(cat SSRC3.txt)
+echo $SSRC3
+
+cat rtspOut4.txt | grep -o 'SSRC:[0-9A-Za-z]*' | awk -F : '{print $2}' &> SSRC4.txt
+SSRC4=$(cat SSRC4.txt)
+echo $SSRC4
+
+#./scream/scream_sender/bin/scream_sender YWRtaW46YWRtaW5hZG1pbjE= 1 10.19.0.3 31110 10.180.65.28 31111 {$SSRC} 1
+./scream/scream_sender/bin/scream_sender -cwvmem 60 -scale 1.0 YWRtaW46YWRtaW5hZG1pbjE= 4 10.9.0.2 31110 10.180.65.28 31113 $SSRC3 0.2 10.180.65.27 31112 $SSRC2 0.2 10.180.65.26 31111 $SSRC1 0.2 10.180.65.29 31114 $SSRC4 1.0  &> screamSender.log
+wait $P1 $P2 $P3 $P4
+
+tail -n 35 rtspOut1.txt
diff --git a/RPI/scream/rtsp/CMakeCache.txt b/RPI/scream/rtsp/CMakeCache.txt
new file mode 100644
index 0000000..bb873f3
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeCache.txt
@@ -0,0 +1,304 @@
+# This is the CMakeCache file.
+# For build in directory: /home/pi/scream/rtsp
+# It was generated by CMake: /usr/bin/cmake
+# You can edit this file to change values found and used by cmake.
+# If you do not want to change any of the values, simply exit the editor.
+# If you do want to change a value, simply edit, save, and exit the editor.
+# The syntax for the file is as follows:
+# KEY:TYPE=VALUE
+# KEY is the name of a variable in the cache.
+# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
+# VALUE is the current value for the KEY.
+
+########################
+# EXTERNAL cache entries
+########################
+
+//Path to a program.
+CMAKE_AR:FILEPATH=/usr/bin/ar
+
+//Choose the type of build, options are: None(CMAKE_CXX_FLAGS or
+// CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel.
+CMAKE_BUILD_TYPE:STRING=
+
+//Enable/Disable color output during build.
+CMAKE_COLOR_MAKEFILE:BOOL=ON
+
+//CXX compiler
+CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++
+
+//Flags used by the compiler during all build types.
+CMAKE_CXX_FLAGS:STRING=
+
+//Flags used by the compiler during debug builds.
+CMAKE_CXX_FLAGS_DEBUG:STRING=-g
+
+//Flags used by the compiler during release builds for minimum
+// size.
+CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
+
+//Flags used by the compiler during release builds.
+CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
+
+//Flags used by the compiler during release builds with debug info.
+CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
+
+//C compiler
+CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc
+
+//Flags used by the compiler during all build types.
+CMAKE_C_FLAGS:STRING=
+
+//Flags used by the compiler during debug builds.
+CMAKE_C_FLAGS_DEBUG:STRING=-g
+
+//Flags used by the compiler during release builds for minimum
+// size.
+CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
+
+//Flags used by the compiler during release builds.
+CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
+
+//Flags used by the compiler during release builds with debug info.
+CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
+
+//Flags used by the linker.
+CMAKE_EXE_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during debug builds.
+CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during release minsize builds.
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during release builds.
+CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during Release with Debug Info builds.
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Enable/Disable output of compile commands during generation.
+CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF
+
+//Install path prefix, prepended onto install directories.
+CMAKE_INSTALL_PREFIX:PATH=/usr/local
+
+//Path to a program.
+CMAKE_LINKER:FILEPATH=/usr/bin/ld
+
+//Path to a program.
+CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make
+
+//Flags used by the linker during the creation of modules.
+CMAKE_MODULE_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during debug builds.
+CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during release minsize builds.
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during release builds.
+CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during Release with Debug Info builds.
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Path to a program.
+CMAKE_NM:FILEPATH=/usr/bin/nm
+
+//Path to a program.
+CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy
+
+//Path to a program.
+CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump
+
+//Value Computed by CMake
+CMAKE_PROJECT_NAME:STATIC=scream
+
+//Path to a program.
+CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib
+
+//Flags used by the linker during the creation of dll's.
+CMAKE_SHARED_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during debug builds.
+CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during release minsize builds.
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during release builds.
+CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during Release with Debug Info builds.
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//If set, runtime paths are not added when installing shared libraries,
+// but are added when building.
+CMAKE_SKIP_INSTALL_RPATH:BOOL=NO
+
+//If set, runtime paths are not added when using shared libraries.
+CMAKE_SKIP_RPATH:BOOL=NO
+
+//Flags used by the linker during the creation of static libraries.
+CMAKE_STATIC_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during debug builds.
+CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during release minsize builds.
+CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during release builds.
+CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during Release with Debug Info builds.
+CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Path to a program.
+CMAKE_STRIP:FILEPATH=/usr/bin/strip
+
+//If this value is on, makefiles will be generated without the
+// .SILENT directive, and all commands will be echoed to the console
+// during the make.  This is useful for debugging only. With Visual
+// Studio IDE projects all commands are done without /nologo.
+CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE
+
+//Value Computed by CMake
+scream_BINARY_DIR:STATIC=/home/pi/scream/rtsp
+
+//Value Computed by CMake
+scream_SOURCE_DIR:STATIC=/home/pi/scream/rtsp
+
+
+########################
+# INTERNAL cache entries
+########################
+
+//ADVANCED property for variable: CMAKE_AR
+CMAKE_AR-ADVANCED:INTERNAL=1
+//This is the directory where this CMakeCache.txt was created
+CMAKE_CACHEFILE_DIR:INTERNAL=/home/pi/scream/rtsp
+//Major version of cmake used to create the current loaded cache
+CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
+//Minor version of cmake used to create the current loaded cache
+CMAKE_CACHE_MINOR_VERSION:INTERNAL=7
+//Patch version of cmake used to create the current loaded cache
+CMAKE_CACHE_PATCH_VERSION:INTERNAL=2
+//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE
+CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1
+//Path to CMake executable.
+CMAKE_COMMAND:INTERNAL=/usr/bin/cmake
+//Path to cpack program executable.
+CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack
+//Path to ctest program executable.
+CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest
+//ADVANCED property for variable: CMAKE_CXX_COMPILER
+CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS
+CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG
+CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL
+CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE
+CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO
+CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_COMPILER
+CMAKE_C_COMPILER-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS
+CMAKE_C_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG
+CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL
+CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE
+CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO
+CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//Executable file format
+CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
+CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG
+CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE
+CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
+CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
+//Name of external makefile project generator.
+CMAKE_EXTRA_GENERATOR:INTERNAL=
+//Name of generator.
+CMAKE_GENERATOR:INTERNAL=Unix Makefiles
+//Name of generator platform.
+CMAKE_GENERATOR_PLATFORM:INTERNAL=
+//Name of generator toolset.
+CMAKE_GENERATOR_TOOLSET:INTERNAL=
+//Source directory with the top level CMakeLists.txt file for this
+// project
+CMAKE_HOME_DIRECTORY:INTERNAL=/home/pi/scream/rtsp
+//Install .so files without execute permission.
+CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1
+//ADVANCED property for variable: CMAKE_LINKER
+CMAKE_LINKER-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MAKE_PROGRAM
+CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
+CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
+CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE
+CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_NM
+CMAKE_NM-ADVANCED:INTERNAL=1
+//number of local generators
+CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=2
+//ADVANCED property for variable: CMAKE_OBJCOPY
+CMAKE_OBJCOPY-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_OBJDUMP
+CMAKE_OBJDUMP-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_RANLIB
+CMAKE_RANLIB-ADVANCED:INTERNAL=1
+//Path to CMake installation.
+CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.7
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
+CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
+CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE
+CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
+CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_RPATH
+CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS
+CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG
+CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL
+CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE
+CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STRIP
+CMAKE_STRIP-ADVANCED:INTERNAL=1
+//uname command
+CMAKE_UNAME:INTERNAL=/bin/uname
+//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
+CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
+
diff --git a/RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeCCompiler.cmake b/RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeCCompiler.cmake
new file mode 100644
index 0000000..ecea756
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeCCompiler.cmake
@@ -0,0 +1,68 @@
+set(CMAKE_C_COMPILER "/usr/bin/cc")
+set(CMAKE_C_COMPILER_ARG1 "")
+set(CMAKE_C_COMPILER_ID "GNU")
+set(CMAKE_C_COMPILER_VERSION "6.3.0")
+set(CMAKE_C_COMPILER_WRAPPER "")
+set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "11")
+set(CMAKE_C_COMPILE_FEATURES "c_function_prototypes;c_restrict;c_variadic_macros;c_static_assert")
+set(CMAKE_C90_COMPILE_FEATURES "c_function_prototypes")
+set(CMAKE_C99_COMPILE_FEATURES "c_restrict;c_variadic_macros")
+set(CMAKE_C11_COMPILE_FEATURES "c_static_assert")
+
+set(CMAKE_C_PLATFORM_ID "Linux")
+set(CMAKE_C_SIMULATE_ID "")
+set(CMAKE_C_SIMULATE_VERSION "")
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_COMPILER_IS_GNUCC 1)
+set(CMAKE_C_COMPILER_LOADED 1)
+set(CMAKE_C_COMPILER_WORKS TRUE)
+set(CMAKE_C_ABI_COMPILED TRUE)
+set(CMAKE_COMPILER_IS_MINGW )
+set(CMAKE_COMPILER_IS_CYGWIN )
+if(CMAKE_COMPILER_IS_CYGWIN)
+  set(CYGWIN 1)
+  set(UNIX 1)
+endif()
+
+set(CMAKE_C_COMPILER_ENV_VAR "CC")
+
+if(CMAKE_COMPILER_IS_MINGW)
+  set(MINGW 1)
+endif()
+set(CMAKE_C_COMPILER_ID_RUN 1)
+set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m)
+set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
+set(CMAKE_C_LINKER_PREFERENCE 10)
+
+# Save compiler ABI information.
+set(CMAKE_C_SIZEOF_DATA_PTR "4")
+set(CMAKE_C_COMPILER_ABI "ELF")
+set(CMAKE_C_LIBRARY_ARCHITECTURE "arm-linux-gnueabihf")
+
+if(CMAKE_C_SIZEOF_DATA_PTR)
+  set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_C_COMPILER_ABI)
+  set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
+endif()
+
+if(CMAKE_C_LIBRARY_ARCHITECTURE)
+  set(CMAKE_LIBRARY_ARCHITECTURE "arm-linux-gnueabihf")
+endif()
+
+set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_C_CL_SHOWINCLUDES_PREFIX)
+  set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "c")
+set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/arm-linux-gnueabihf/6;/usr/lib/arm-linux-gnueabihf;/usr/lib;/lib/arm-linux-gnueabihf")
+set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeCXXCompiler.cmake b/RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeCXXCompiler.cmake
new file mode 100644
index 0000000..71d1bc5
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeCXXCompiler.cmake
@@ -0,0 +1,69 @@
+set(CMAKE_CXX_COMPILER "/usr/bin/c++")
+set(CMAKE_CXX_COMPILER_ARG1 "")
+set(CMAKE_CXX_COMPILER_ID "GNU")
+set(CMAKE_CXX_COMPILER_VERSION "6.3.0")
+set(CMAKE_CXX_COMPILER_WRAPPER "")
+set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "14")
+set(CMAKE_CXX_COMPILE_FEATURES "cxx_template_template_parameters;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
+set(CMAKE_CXX98_COMPILE_FEATURES "cxx_template_template_parameters")
+set(CMAKE_CXX11_COMPILE_FEATURES "cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
+set(CMAKE_CXX14_COMPILE_FEATURES "cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
+
+set(CMAKE_CXX_PLATFORM_ID "Linux")
+set(CMAKE_CXX_SIMULATE_ID "")
+set(CMAKE_CXX_SIMULATE_VERSION "")
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_COMPILER_IS_GNUCXX 1)
+set(CMAKE_CXX_COMPILER_LOADED 1)
+set(CMAKE_CXX_COMPILER_WORKS TRUE)
+set(CMAKE_CXX_ABI_COMPILED TRUE)
+set(CMAKE_COMPILER_IS_MINGW )
+set(CMAKE_COMPILER_IS_CYGWIN )
+if(CMAKE_COMPILER_IS_CYGWIN)
+  set(CYGWIN 1)
+  set(UNIX 1)
+endif()
+
+set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
+
+if(CMAKE_COMPILER_IS_MINGW)
+  set(MINGW 1)
+endif()
+set(CMAKE_CXX_COMPILER_ID_RUN 1)
+set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
+set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;mm;CPP)
+set(CMAKE_CXX_LINKER_PREFERENCE 30)
+set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
+
+# Save compiler ABI information.
+set(CMAKE_CXX_SIZEOF_DATA_PTR "4")
+set(CMAKE_CXX_COMPILER_ABI "ELF")
+set(CMAKE_CXX_LIBRARY_ARCHITECTURE "arm-linux-gnueabihf")
+
+if(CMAKE_CXX_SIZEOF_DATA_PTR)
+  set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_CXX_COMPILER_ABI)
+  set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
+endif()
+
+if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
+  set(CMAKE_LIBRARY_ARCHITECTURE "arm-linux-gnueabihf")
+endif()
+
+set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
+  set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;c")
+set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/arm-linux-gnueabihf/6;/usr/lib/arm-linux-gnueabihf;/usr/lib;/lib/arm-linux-gnueabihf")
+set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_C.bin b/RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_C.bin
new file mode 100755
index 0000000000000000000000000000000000000000..b948d31e206cff8d2d6ced0aacbb5baed0c03b1c
GIT binary patch
literal 8296
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_CXX.bin b/RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_CXX.bin
new file mode 100755
index 0000000000000000000000000000000000000000..08b8de6fe6b52730f24f209b753bad58aafc333a
GIT binary patch
literal 8324
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
GsRIBz0y*IT

literal 0
HcmV?d00001

diff --git a/RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeSystem.cmake b/RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeSystem.cmake
new file mode 100644
index 0000000..290ec68
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeFiles/3.7.2/CMakeSystem.cmake
@@ -0,0 +1,15 @@
+set(CMAKE_HOST_SYSTEM "Linux-4.9.41-v7+")
+set(CMAKE_HOST_SYSTEM_NAME "Linux")
+set(CMAKE_HOST_SYSTEM_VERSION "4.9.41-v7+")
+set(CMAKE_HOST_SYSTEM_PROCESSOR "armv7l")
+
+
+
+set(CMAKE_SYSTEM "Linux-4.9.41-v7+")
+set(CMAKE_SYSTEM_NAME "Linux")
+set(CMAKE_SYSTEM_VERSION "4.9.41-v7+")
+set(CMAKE_SYSTEM_PROCESSOR "armv7l")
+
+set(CMAKE_CROSSCOMPILING "FALSE")
+
+set(CMAKE_SYSTEM_LOADED 1)
diff --git a/RPI/scream/rtsp/CMakeFiles/3.7.2/CompilerIdC/CMakeCCompilerId.c b/RPI/scream/rtsp/CMakeFiles/3.7.2/CompilerIdC/CMakeCCompilerId.c
new file mode 100644
index 0000000..512e360
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeFiles/3.7.2/CompilerIdC/CMakeCCompilerId.c
@@ -0,0 +1,561 @@
+#ifdef __cplusplus
+# error "A C++ compiler has been selected for C."
+#endif
+
+#if defined(__18CXX)
+# define ID_VOID_MAIN
+#endif
+#if defined(__CLASSIC_C__)
+/* cv-qualifiers did not exist in K&R C */
+# define const
+# define volatile
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+   Version date components:   YYYY=Year, MM=Month,   DD=Day  */
+
+#if defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+  /* __INTEL_COMPILER = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+# if defined(__INTEL_COMPILER_UPDATE)
+#  define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+# else
+#  define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER   % 10)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+  /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+#  define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__     & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+  /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+   /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+   /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_C)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_C >= 0x5100
+   /* __SUNPRO_C = 0xVRRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_C    & 0xF)
+# else
+   /* __SUNPRO_CC = 0xVRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_C    & 0xF)
+# endif
+
+#elif defined(__HP_cc)
+# define COMPILER_ID "HP"
+  /* __HP_cc = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_cc     % 100)
+
+#elif defined(__DECC)
+# define COMPILER_ID "Compaq"
+  /* __DECC_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000  % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECC_VER         % 10000)
+
+#elif defined(__IBMC__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800
+# define COMPILER_ID "XL"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800
+# define COMPILER_ID "VisualAge"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+  /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000   % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__        % 1000)
+
+#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version)
+# define COMPILER_ID "Fujitsu"
+
+#elif defined(__TINYC__)
+# define COMPILER_ID "TinyCC"
+
+#elif defined(__BCC__)
+# define COMPILER_ID "Bruce"
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__GNUC__)
+# define COMPILER_ID "GNU"
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# if defined(__GNUC_MINOR__)
+#  define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+  /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+#  if _MSC_VER >= 1400
+    /* _MSC_FULL_VER = VVRRPPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+#  else
+    /* _MSC_FULL_VER = VVRRPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+#  endif
+# endif
+# if defined(_MSC_BUILD)
+#  define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+  /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8  & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__ ) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+
+#elif defined(__ARMCC_VERSION)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+  /* __ARMCC_VERSION = VRRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION     % 10000)
+#else
+  /* __ARMCC_VERSION = VRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION    % 10000)
+#endif
+
+
+#elif defined(SDCC)
+# define COMPILER_ID "SDCC"
+  /* SDCC = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(SDCC/100)
+#  define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(SDCC    % 10)
+
+#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION)
+# define COMPILER_ID "MIPSpro"
+# if defined(_SGI_COMPILER_VERSION)
+  /* _SGI_COMPILER_VERSION = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100)
+#  define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION    % 10)
+# else
+  /* _COMPILER_VERSION = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100)
+#  define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION    % 10)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+  identification macro.  Try to identify the platform and guess that
+  it is the native compiler.  */
+#elif defined(__sgi)
+# define COMPILER_ID "MIPSpro"
+
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXE) || defined(__CRAYXC)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name.  */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__sgi) || defined(__sgi__) || defined(_SGI)
+# define PLATFORM_ID "IRIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+#  define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+#  define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+#  define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+#  define PLATFORM_ID "Windows3x"
+
+# else /* unknown platform */
+#  define PLATFORM_ID
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+   the architecture of the compiler being used.  This is because
+   the compilers do not have flags that can change the architecture,
+   but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+#  define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+#  define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM)
+#  if _M_ARM == 4
+#   define ARCHITECTURE_ID "ARMV4I"
+#  elif _M_ARM == 5
+#   define ARCHITECTURE_ID "ARMV5I"
+#  else
+#   define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+#  endif
+
+# elif defined(_M_MIPS)
+#  define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+#  define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+#  define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#else
+#  define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals.  */
+#define DEC(n)                   \
+  ('0' + (((n) / 10000000)%10)), \
+  ('0' + (((n) / 1000000)%10)),  \
+  ('0' + (((n) / 100000)%10)),   \
+  ('0' + (((n) / 10000)%10)),    \
+  ('0' + (((n) / 1000)%10)),     \
+  ('0' + (((n) / 100)%10)),      \
+  ('0' + (((n) / 10)%10)),       \
+  ('0' +  ((n) % 10))
+
+/* Convert integer to hex digit literals.  */
+#define HEX(n)             \
+  ('0' + ((n)>>28 & 0xF)), \
+  ('0' + ((n)>>24 & 0xF)), \
+  ('0' + ((n)>>20 & 0xF)), \
+  ('0' + ((n)>>16 & 0xF)), \
+  ('0' + ((n)>>12 & 0xF)), \
+  ('0' + ((n)>>8  & 0xF)), \
+  ('0' + ((n)>>4  & 0xF)), \
+  ('0' + ((n)     & 0xF))
+
+/* Construct a string literal encoding the version number components. */
+#ifdef COMPILER_VERSION_MAJOR
+char const info_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+  COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+  '.', COMPILER_VERSION_MINOR,
+#  ifdef COMPILER_VERSION_PATCH
+   '.', COMPILER_VERSION_PATCH,
+#   ifdef COMPILER_VERSION_TWEAK
+    '.', COMPILER_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+  SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+  '.', SIMULATE_VERSION_MINOR,
+#  ifdef SIMULATE_VERSION_PATCH
+   '.', SIMULATE_VERSION_PATCH,
+#   ifdef SIMULATE_VERSION_TWEAK
+    '.', SIMULATE_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+
+#if !defined(__STDC__)
+# if defined(_MSC_VER) && !defined(__clang__)
+#  define C_DIALECT "90"
+# else
+#  define C_DIALECT
+# endif
+#elif __STDC_VERSION__ >= 201000L
+# define C_DIALECT "11"
+#elif __STDC_VERSION__ >= 199901L
+# define C_DIALECT "99"
+#else
+# define C_DIALECT "90"
+#endif
+const char* info_language_dialect_default =
+  "INFO" ":" "dialect_default[" C_DIALECT "]";
+
+/*--------------------------------------------------------------------------*/
+
+#ifdef ID_VOID_MAIN
+void main() {}
+#else
+# if defined(__CLASSIC_C__)
+int main(argc, argv) int argc; char *argv[];
+# else
+int main(int argc, char* argv[])
+# endif
+{
+  int require = 0;
+  require += info_compiler[argc];
+  require += info_platform[argc];
+  require += info_arch[argc];
+#ifdef COMPILER_VERSION_MAJOR
+  require += info_version[argc];
+#endif
+#ifdef SIMULATE_ID
+  require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+  require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXE) || defined(__CRAYXC)
+  require += info_cray[argc];
+#endif
+  require += info_language_dialect_default[argc];
+  (void)argv;
+  return require;
+}
+#endif
diff --git a/RPI/scream/rtsp/CMakeFiles/3.7.2/CompilerIdC/a.out b/RPI/scream/rtsp/CMakeFiles/3.7.2/CompilerIdC/a.out
new file mode 100755
index 0000000000000000000000000000000000000000..18c7aae8c0677bb172647008e14f98199a7d3633
GIT binary patch
literal 8308
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/rtsp/CMakeFiles/3.7.2/CompilerIdCXX/CMakeCXXCompilerId.cpp b/RPI/scream/rtsp/CMakeFiles/3.7.2/CompilerIdCXX/CMakeCXXCompilerId.cpp
new file mode 100644
index 0000000..a6e6bed
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeFiles/3.7.2/CompilerIdCXX/CMakeCXXCompilerId.cpp
@@ -0,0 +1,533 @@
+/* This source file must have a .cpp extension so that all C++ compilers
+   recognize the extension without flags.  Borland does not know .cxx for
+   example.  */
+#ifndef __cplusplus
+# error "A C compiler has been selected for C++."
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+   Version date components:   YYYY=Year, MM=Month,   DD=Day  */
+
+#if defined(__COMO__)
+# define COMPILER_ID "Comeau"
+  /* __COMO_VERSION__ = VRR */
+# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100)
+# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100)
+
+#elif defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+  /* __INTEL_COMPILER = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+# if defined(__INTEL_COMPILER_UPDATE)
+#  define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+# else
+#  define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER   % 10)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+  /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+#  define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__     & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+  /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+   /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+   /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_CC)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_CC >= 0x5100
+   /* __SUNPRO_CC = 0xVRRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC    & 0xF)
+# else
+   /* __SUNPRO_CC = 0xVRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC    & 0xF)
+# endif
+
+#elif defined(__HP_aCC)
+# define COMPILER_ID "HP"
+  /* __HP_aCC = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_aCC     % 100)
+
+#elif defined(__DECCXX)
+# define COMPILER_ID "Compaq"
+  /* __DECCXX_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000  % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER         % 10000)
+
+#elif defined(__IBMCPP__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800
+# define COMPILER_ID "XL"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800
+# define COMPILER_ID "VisualAge"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+  /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000   % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__        % 1000)
+
+#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version)
+# define COMPILER_ID "Fujitsu"
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__GNUC__)
+# define COMPILER_ID "GNU"
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# if defined(__GNUC_MINOR__)
+#  define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+  /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+#  if _MSC_VER >= 1400
+    /* _MSC_FULL_VER = VVRRPPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+#  else
+    /* _MSC_FULL_VER = VVRRPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+#  endif
+# endif
+# if defined(_MSC_BUILD)
+#  define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+  /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8  & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__ ) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+
+#elif defined(__ARMCC_VERSION)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+  /* __ARMCC_VERSION = VRRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION     % 10000)
+#else
+  /* __ARMCC_VERSION = VRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION    % 10000)
+#endif
+
+
+#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION)
+# define COMPILER_ID "MIPSpro"
+# if defined(_SGI_COMPILER_VERSION)
+  /* _SGI_COMPILER_VERSION = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100)
+#  define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION    % 10)
+# else
+  /* _COMPILER_VERSION = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100)
+#  define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION    % 10)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+  identification macro.  Try to identify the platform and guess that
+  it is the native compiler.  */
+#elif defined(__sgi)
+# define COMPILER_ID "MIPSpro"
+
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXE) || defined(__CRAYXC)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name.  */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__sgi) || defined(__sgi__) || defined(_SGI)
+# define PLATFORM_ID "IRIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+#  define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+#  define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+#  define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+#  define PLATFORM_ID "Windows3x"
+
+# else /* unknown platform */
+#  define PLATFORM_ID
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+   the architecture of the compiler being used.  This is because
+   the compilers do not have flags that can change the architecture,
+   but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+#  define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+#  define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM)
+#  if _M_ARM == 4
+#   define ARCHITECTURE_ID "ARMV4I"
+#  elif _M_ARM == 5
+#   define ARCHITECTURE_ID "ARMV5I"
+#  else
+#   define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+#  endif
+
+# elif defined(_M_MIPS)
+#  define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+#  define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+#  define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#else
+#  define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals.  */
+#define DEC(n)                   \
+  ('0' + (((n) / 10000000)%10)), \
+  ('0' + (((n) / 1000000)%10)),  \
+  ('0' + (((n) / 100000)%10)),   \
+  ('0' + (((n) / 10000)%10)),    \
+  ('0' + (((n) / 1000)%10)),     \
+  ('0' + (((n) / 100)%10)),      \
+  ('0' + (((n) / 10)%10)),       \
+  ('0' +  ((n) % 10))
+
+/* Convert integer to hex digit literals.  */
+#define HEX(n)             \
+  ('0' + ((n)>>28 & 0xF)), \
+  ('0' + ((n)>>24 & 0xF)), \
+  ('0' + ((n)>>20 & 0xF)), \
+  ('0' + ((n)>>16 & 0xF)), \
+  ('0' + ((n)>>12 & 0xF)), \
+  ('0' + ((n)>>8  & 0xF)), \
+  ('0' + ((n)>>4  & 0xF)), \
+  ('0' + ((n)     & 0xF))
+
+/* Construct a string literal encoding the version number components. */
+#ifdef COMPILER_VERSION_MAJOR
+char const info_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+  COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+  '.', COMPILER_VERSION_MINOR,
+#  ifdef COMPILER_VERSION_PATCH
+   '.', COMPILER_VERSION_PATCH,
+#   ifdef COMPILER_VERSION_TWEAK
+    '.', COMPILER_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+  SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+  '.', SIMULATE_VERSION_MINOR,
+#  ifdef SIMULATE_VERSION_PATCH
+   '.', SIMULATE_VERSION_PATCH,
+#   ifdef SIMULATE_VERSION_TWEAK
+    '.', SIMULATE_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+
+const char* info_language_dialect_default = "INFO" ":" "dialect_default["
+#if __cplusplus >= 201402L
+  "14"
+#elif __cplusplus >= 201103L
+  "11"
+#else
+  "98"
+#endif
+"]";
+
+/*--------------------------------------------------------------------------*/
+
+int main(int argc, char* argv[])
+{
+  int require = 0;
+  require += info_compiler[argc];
+  require += info_platform[argc];
+#ifdef COMPILER_VERSION_MAJOR
+  require += info_version[argc];
+#endif
+#ifdef SIMULATE_ID
+  require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+  require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXE) || defined(__CRAYXC)
+  require += info_cray[argc];
+#endif
+  require += info_language_dialect_default[argc];
+  (void)argv;
+  return require;
+}
diff --git a/RPI/scream/rtsp/CMakeFiles/3.7.2/CompilerIdCXX/a.out b/RPI/scream/rtsp/CMakeFiles/3.7.2/CompilerIdCXX/a.out
new file mode 100755
index 0000000000000000000000000000000000000000..ca9094d06eb6f679b81f7b4585de43f616f469b8
GIT binary patch
literal 8452
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/rtsp/CMakeFiles/CMakeDirectoryInformation.cmake b/RPI/scream/rtsp/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 0000000..3cc4bcd
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/pi/scream/rtsp")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/pi/scream/rtsp")
+
+# Force unix paths in dependencies.
+set(CMAKE_FORCE_UNIX_PATHS 1)
+
+
+# The C and CXX include file regular expressions for this directory.
+set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/RPI/scream/rtsp/CMakeFiles/CMakeOutput.log b/RPI/scream/rtsp/CMakeFiles/CMakeOutput.log
new file mode 100644
index 0000000..705cfcc
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeFiles/CMakeOutput.log
@@ -0,0 +1,542 @@
+The system is: Linux - 4.9.41-v7+ - armv7l
+Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
+Compiler: /usr/bin/cc 
+Build flags: 
+Id flags: 
+
+The output was:
+0
+
+
+Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out"
+
+The C compiler identification is GNU, found in "/home/pi/scream/rtsp/CMakeFiles/3.7.2/CompilerIdC/a.out"
+
+Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
+Compiler: /usr/bin/c++ 
+Build flags: 
+Id flags: 
+
+The output was:
+0
+
+
+Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out"
+
+The CXX compiler identification is GNU, found in "/home/pi/scream/rtsp/CMakeFiles/3.7.2/CompilerIdCXX/a.out"
+
+Determining if the C compiler works passed with the following output:
+Change Dir: /home/pi/scream/rtsp/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_4579c/fast"
+/usr/bin/make -f CMakeFiles/cmTC_4579c.dir/build.make CMakeFiles/cmTC_4579c.dir/build
+make[1]: Entering directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_4579c.dir/testCCompiler.c.o
+/usr/bin/cc     -o CMakeFiles/cmTC_4579c.dir/testCCompiler.c.o   -c /home/pi/scream/rtsp/CMakeFiles/CMakeTmp/testCCompiler.c
+Linking C executable cmTC_4579c
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_4579c.dir/link.txt --verbose=1
+/usr/bin/cc       CMakeFiles/cmTC_4579c.dir/testCCompiler.c.o  -o cmTC_4579c -rdynamic 
+make[1]: Leaving directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+
+
+Detecting C compiler ABI info compiled with the following output:
+Change Dir: /home/pi/scream/rtsp/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_3b836/fast"
+/usr/bin/make -f CMakeFiles/cmTC_3b836.dir/build.make CMakeFiles/cmTC_3b836.dir/build
+make[1]: Entering directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_3b836.dir/CMakeCCompilerABI.c.o
+/usr/bin/cc     -o CMakeFiles/cmTC_3b836.dir/CMakeCCompilerABI.c.o   -c /usr/share/cmake-3.7/Modules/CMakeCCompilerABI.c
+Linking C executable cmTC_3b836
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_3b836.dir/link.txt --verbose=1
+/usr/bin/cc      -v CMakeFiles/cmTC_3b836.dir/CMakeCCompilerABI.c.o  -o cmTC_3b836 -rdynamic  
+Using built-in specs.
+COLLECT_GCC=/usr/bin/cc
+COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-linux-gnueabihf/6/lto-wrapper
+Target: arm-linux-gnueabihf
+Configured with: ../src/configure -v --with-pkgversion='Raspbian 6.3.0-18+rpi1' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=arm-linux-gnueabihf- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libitm --disable-libquadmath --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-armhf/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-armhf --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-armhf --with-arch-directory=arm --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-sjlj-exceptions --with-arch=armv6 --with-fpu=vfp --with-float=hard --enable-checking=release --build=arm-linux-gnueabihf --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf
+Thread model: posix
+gcc version 6.3.0 20170516 (Raspbian 6.3.0-18+rpi1) 
+COMPILER_PATH=/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/:/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/
+LIBRARY_PATH=/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/:/usr/lib/gcc/arm-linux-gnueabihf/6/../../../:/lib/arm-linux-gnueabihf/:/lib/:/usr/lib/arm-linux-gnueabihf/:/usr/lib/
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_3b836' '-rdynamic' '-march=armv6' '-mfloat-abi=hard' '-mfpu=vfp' '-mtls-dialect=gnu'
+ /usr/lib/gcc/arm-linux-gnueabihf/6/collect2 -plugin /usr/lib/gcc/arm-linux-gnueabihf/6/liblto_plugin.so -plugin-opt=/usr/lib/gcc/arm-linux-gnueabihf/6/lto-wrapper -plugin-opt=-fresolution=/tmp/ccvFCU6U.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/ --build-id --eh-frame-hdr -export-dynamic -dynamic-linker /lib/ld-linux-armhf.so.3 -X --hash-style=gnu -m armelf_linux_eabi -o cmTC_3b836 /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crt1.o /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crti.o /usr/lib/gcc/arm-linux-gnueabihf/6/crtbegin.o -L/usr/lib/gcc/arm-linux-gnueabihf/6 -L/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf -L/usr/lib/gcc/arm-linux-gnueabihf/6/../../.. -L/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf CMakeFiles/cmTC_3b836.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/arm-linux-gnueabihf/6/crtend.o /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crtn.o
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_3b836' '-rdynamic' '-march=armv6' '-mfloat-abi=hard' '-mfpu=vfp' '-mtls-dialect=gnu'
+make[1]: Leaving directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+
+
+Parsed C implicit link information from above output:
+  link line regex: [^( *|.*[/\])(ld|([^/\]+-)?ld|collect2)[^/\]*( |$)]
+  ignore line: [Change Dir: /home/pi/scream/rtsp/CMakeFiles/CMakeTmp]
+  ignore line: []
+  ignore line: [Run Build Command:"/usr/bin/make" "cmTC_3b836/fast"]
+  ignore line: [/usr/bin/make -f CMakeFiles/cmTC_3b836.dir/build.make CMakeFiles/cmTC_3b836.dir/build]
+  ignore line: [make[1]: Entering directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp']
+  ignore line: [Building C object CMakeFiles/cmTC_3b836.dir/CMakeCCompilerABI.c.o]
+  ignore line: [/usr/bin/cc     -o CMakeFiles/cmTC_3b836.dir/CMakeCCompilerABI.c.o   -c /usr/share/cmake-3.7/Modules/CMakeCCompilerABI.c]
+  ignore line: [Linking C executable cmTC_3b836]
+  ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_3b836.dir/link.txt --verbose=1]
+  ignore line: [/usr/bin/cc      -v CMakeFiles/cmTC_3b836.dir/CMakeCCompilerABI.c.o  -o cmTC_3b836 -rdynamic  ]
+  ignore line: [Using built-in specs.]
+  ignore line: [COLLECT_GCC=/usr/bin/cc]
+  ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-linux-gnueabihf/6/lto-wrapper]
+  ignore line: [Target: arm-linux-gnueabihf]
+  ignore line: [Configured with: ../src/configure -v --with-pkgversion='Raspbian 6.3.0-18+rpi1' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=arm-linux-gnueabihf- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libitm --disable-libquadmath --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-armhf/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-armhf --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-armhf --with-arch-directory=arm --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-sjlj-exceptions --with-arch=armv6 --with-fpu=vfp --with-float=hard --enable-checking=release --build=arm-linux-gnueabihf --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf]
+  ignore line: [Thread model: posix]
+  ignore line: [gcc version 6.3.0 20170516 (Raspbian 6.3.0-18+rpi1) ]
+  ignore line: [COMPILER_PATH=/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/:/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/]
+  ignore line: [LIBRARY_PATH=/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/:/usr/lib/gcc/arm-linux-gnueabihf/6/../../../:/lib/arm-linux-gnueabihf/:/lib/:/usr/lib/arm-linux-gnueabihf/:/usr/lib/]
+  ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_3b836' '-rdynamic' '-march=armv6' '-mfloat-abi=hard' '-mfpu=vfp' '-mtls-dialect=gnu']
+  link line: [ /usr/lib/gcc/arm-linux-gnueabihf/6/collect2 -plugin /usr/lib/gcc/arm-linux-gnueabihf/6/liblto_plugin.so -plugin-opt=/usr/lib/gcc/arm-linux-gnueabihf/6/lto-wrapper -plugin-opt=-fresolution=/tmp/ccvFCU6U.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/ --build-id --eh-frame-hdr -export-dynamic -dynamic-linker /lib/ld-linux-armhf.so.3 -X --hash-style=gnu -m armelf_linux_eabi -o cmTC_3b836 /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crt1.o /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crti.o /usr/lib/gcc/arm-linux-gnueabihf/6/crtbegin.o -L/usr/lib/gcc/arm-linux-gnueabihf/6 -L/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf -L/usr/lib/gcc/arm-linux-gnueabihf/6/../../.. -L/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf CMakeFiles/cmTC_3b836.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/arm-linux-gnueabihf/6/crtend.o /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crtn.o]
+    arg [/usr/lib/gcc/arm-linux-gnueabihf/6/collect2] ==> ignore
+    arg [-plugin] ==> ignore
+    arg [/usr/lib/gcc/arm-linux-gnueabihf/6/liblto_plugin.so] ==> ignore
+    arg [-plugin-opt=/usr/lib/gcc/arm-linux-gnueabihf/6/lto-wrapper] ==> ignore
+    arg [-plugin-opt=-fresolution=/tmp/ccvFCU6U.res] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+    arg [-plugin-opt=-pass-through=-lc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+    arg [--sysroot=/] ==> ignore
+    arg [--build-id] ==> ignore
+    arg [--eh-frame-hdr] ==> ignore
+    arg [-export-dynamic] ==> ignore
+    arg [-dynamic-linker] ==> ignore
+    arg [/lib/ld-linux-armhf.so.3] ==> ignore
+    arg [-X] ==> ignore
+    arg [--hash-style=gnu] ==> ignore
+    arg [-m] ==> ignore
+    arg [armelf_linux_eabi] ==> ignore
+    arg [-o] ==> ignore
+    arg [cmTC_3b836] ==> ignore
+    arg [/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crt1.o] ==> ignore
+    arg [/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crti.o] ==> ignore
+    arg [/usr/lib/gcc/arm-linux-gnueabihf/6/crtbegin.o] ==> ignore
+    arg [-L/usr/lib/gcc/arm-linux-gnueabihf/6] ==> dir [/usr/lib/gcc/arm-linux-gnueabihf/6]
+    arg [-L/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf] ==> dir [/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf]
+    arg [-L/usr/lib/gcc/arm-linux-gnueabihf/6/../../..] ==> dir [/usr/lib/gcc/arm-linux-gnueabihf/6/../../..]
+    arg [-L/lib/arm-linux-gnueabihf] ==> dir [/lib/arm-linux-gnueabihf]
+    arg [-L/usr/lib/arm-linux-gnueabihf] ==> dir [/usr/lib/arm-linux-gnueabihf]
+    arg [CMakeFiles/cmTC_3b836.dir/CMakeCCompilerABI.c.o] ==> ignore
+    arg [-lgcc] ==> lib [gcc]
+    arg [--as-needed] ==> ignore
+    arg [-lgcc_s] ==> lib [gcc_s]
+    arg [--no-as-needed] ==> ignore
+    arg [-lc] ==> lib [c]
+    arg [-lgcc] ==> lib [gcc]
+    arg [--as-needed] ==> ignore
+    arg [-lgcc_s] ==> lib [gcc_s]
+    arg [--no-as-needed] ==> ignore
+    arg [/usr/lib/gcc/arm-linux-gnueabihf/6/crtend.o] ==> ignore
+    arg [/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crtn.o] ==> ignore
+  remove lib [gcc]
+  remove lib [gcc_s]
+  remove lib [gcc]
+  remove lib [gcc_s]
+  collapse library dir [/usr/lib/gcc/arm-linux-gnueabihf/6] ==> [/usr/lib/gcc/arm-linux-gnueabihf/6]
+  collapse library dir [/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf] ==> [/usr/lib/arm-linux-gnueabihf]
+  collapse library dir [/usr/lib/gcc/arm-linux-gnueabihf/6/../../..] ==> [/usr/lib]
+  collapse library dir [/lib/arm-linux-gnueabihf] ==> [/lib/arm-linux-gnueabihf]
+  collapse library dir [/usr/lib/arm-linux-gnueabihf] ==> [/usr/lib/arm-linux-gnueabihf]
+  implicit libs: [c]
+  implicit dirs: [/usr/lib/gcc/arm-linux-gnueabihf/6;/usr/lib/arm-linux-gnueabihf;/usr/lib;/lib/arm-linux-gnueabihf]
+  implicit fwks: []
+
+
+
+
+Detecting C [-std=c11] compiler features compiled with the following output:
+Change Dir: /home/pi/scream/rtsp/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_a37b0/fast"
+/usr/bin/make -f CMakeFiles/cmTC_a37b0.dir/build.make CMakeFiles/cmTC_a37b0.dir/build
+make[1]: Entering directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_a37b0.dir/feature_tests.c.o
+/usr/bin/cc    -std=c11 -o CMakeFiles/cmTC_a37b0.dir/feature_tests.c.o   -c /home/pi/scream/rtsp/CMakeFiles/feature_tests.c
+Linking C executable cmTC_a37b0
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a37b0.dir/link.txt --verbose=1
+/usr/bin/cc       CMakeFiles/cmTC_a37b0.dir/feature_tests.c.o  -o cmTC_a37b0 -rdynamic 
+make[1]: Leaving directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+
+
+    Feature record: C_FEATURE:1c_function_prototypes
+    Feature record: C_FEATURE:1c_restrict
+    Feature record: C_FEATURE:1c_static_assert
+    Feature record: C_FEATURE:1c_variadic_macros
+
+
+Detecting C [-std=c99] compiler features compiled with the following output:
+Change Dir: /home/pi/scream/rtsp/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_c3884/fast"
+/usr/bin/make -f CMakeFiles/cmTC_c3884.dir/build.make CMakeFiles/cmTC_c3884.dir/build
+make[1]: Entering directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_c3884.dir/feature_tests.c.o
+/usr/bin/cc    -std=c99 -o CMakeFiles/cmTC_c3884.dir/feature_tests.c.o   -c /home/pi/scream/rtsp/CMakeFiles/feature_tests.c
+Linking C executable cmTC_c3884
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_c3884.dir/link.txt --verbose=1
+/usr/bin/cc       CMakeFiles/cmTC_c3884.dir/feature_tests.c.o  -o cmTC_c3884 -rdynamic 
+make[1]: Leaving directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+
+
+    Feature record: C_FEATURE:1c_function_prototypes
+    Feature record: C_FEATURE:1c_restrict
+    Feature record: C_FEATURE:0c_static_assert
+    Feature record: C_FEATURE:1c_variadic_macros
+
+
+Detecting C [-std=c90] compiler features compiled with the following output:
+Change Dir: /home/pi/scream/rtsp/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_420da/fast"
+/usr/bin/make -f CMakeFiles/cmTC_420da.dir/build.make CMakeFiles/cmTC_420da.dir/build
+make[1]: Entering directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_420da.dir/feature_tests.c.o
+/usr/bin/cc    -std=c90 -o CMakeFiles/cmTC_420da.dir/feature_tests.c.o   -c /home/pi/scream/rtsp/CMakeFiles/feature_tests.c
+Linking C executable cmTC_420da
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_420da.dir/link.txt --verbose=1
+/usr/bin/cc       CMakeFiles/cmTC_420da.dir/feature_tests.c.o  -o cmTC_420da -rdynamic 
+make[1]: Leaving directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+
+
+    Feature record: C_FEATURE:1c_function_prototypes
+    Feature record: C_FEATURE:0c_restrict
+    Feature record: C_FEATURE:0c_static_assert
+    Feature record: C_FEATURE:0c_variadic_macros
+Determining if the CXX compiler works passed with the following output:
+Change Dir: /home/pi/scream/rtsp/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_83810/fast"
+/usr/bin/make -f CMakeFiles/cmTC_83810.dir/build.make CMakeFiles/cmTC_83810.dir/build
+make[1]: Entering directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_83810.dir/testCXXCompiler.cxx.o
+/usr/bin/c++      -o CMakeFiles/cmTC_83810.dir/testCXXCompiler.cxx.o -c /home/pi/scream/rtsp/CMakeFiles/CMakeTmp/testCXXCompiler.cxx
+Linking CXX executable cmTC_83810
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_83810.dir/link.txt --verbose=1
+/usr/bin/c++        CMakeFiles/cmTC_83810.dir/testCXXCompiler.cxx.o  -o cmTC_83810 -rdynamic 
+make[1]: Leaving directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+
+
+Detecting CXX compiler ABI info compiled with the following output:
+Change Dir: /home/pi/scream/rtsp/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_bd06d/fast"
+/usr/bin/make -f CMakeFiles/cmTC_bd06d.dir/build.make CMakeFiles/cmTC_bd06d.dir/build
+make[1]: Entering directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_bd06d.dir/CMakeCXXCompilerABI.cpp.o
+/usr/bin/c++      -o CMakeFiles/cmTC_bd06d.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.7/Modules/CMakeCXXCompilerABI.cpp
+Linking CXX executable cmTC_bd06d
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_bd06d.dir/link.txt --verbose=1
+/usr/bin/c++       -v CMakeFiles/cmTC_bd06d.dir/CMakeCXXCompilerABI.cpp.o  -o cmTC_bd06d -rdynamic  
+Using built-in specs.
+COLLECT_GCC=/usr/bin/c++
+COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-linux-gnueabihf/6/lto-wrapper
+Target: arm-linux-gnueabihf
+Configured with: ../src/configure -v --with-pkgversion='Raspbian 6.3.0-18+rpi1' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=arm-linux-gnueabihf- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libitm --disable-libquadmath --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-armhf/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-armhf --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-armhf --with-arch-directory=arm --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-sjlj-exceptions --with-arch=armv6 --with-fpu=vfp --with-float=hard --enable-checking=release --build=arm-linux-gnueabihf --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf
+Thread model: posix
+gcc version 6.3.0 20170516 (Raspbian 6.3.0-18+rpi1) 
+COMPILER_PATH=/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/:/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/
+LIBRARY_PATH=/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/:/usr/lib/gcc/arm-linux-gnueabihf/6/../../../:/lib/arm-linux-gnueabihf/:/lib/:/usr/lib/arm-linux-gnueabihf/:/usr/lib/
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_bd06d' '-rdynamic' '-shared-libgcc' '-march=armv6' '-mfloat-abi=hard' '-mfpu=vfp' '-mtls-dialect=gnu'
+ /usr/lib/gcc/arm-linux-gnueabihf/6/collect2 -plugin /usr/lib/gcc/arm-linux-gnueabihf/6/liblto_plugin.so -plugin-opt=/usr/lib/gcc/arm-linux-gnueabihf/6/lto-wrapper -plugin-opt=-fresolution=/tmp/cce8fbFf.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --sysroot=/ --build-id --eh-frame-hdr -export-dynamic -dynamic-linker /lib/ld-linux-armhf.so.3 -X --hash-style=gnu -m armelf_linux_eabi -o cmTC_bd06d /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crt1.o /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crti.o /usr/lib/gcc/arm-linux-gnueabihf/6/crtbegin.o -L/usr/lib/gcc/arm-linux-gnueabihf/6 -L/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf -L/usr/lib/gcc/arm-linux-gnueabihf/6/../../.. -L/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf CMakeFiles/cmTC_bd06d.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/arm-linux-gnueabihf/6/crtend.o /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crtn.o
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_bd06d' '-rdynamic' '-shared-libgcc' '-march=armv6' '-mfloat-abi=hard' '-mfpu=vfp' '-mtls-dialect=gnu'
+make[1]: Leaving directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+
+
+Parsed CXX implicit link information from above output:
+  link line regex: [^( *|.*[/\])(ld|([^/\]+-)?ld|collect2)[^/\]*( |$)]
+  ignore line: [Change Dir: /home/pi/scream/rtsp/CMakeFiles/CMakeTmp]
+  ignore line: []
+  ignore line: [Run Build Command:"/usr/bin/make" "cmTC_bd06d/fast"]
+  ignore line: [/usr/bin/make -f CMakeFiles/cmTC_bd06d.dir/build.make CMakeFiles/cmTC_bd06d.dir/build]
+  ignore line: [make[1]: Entering directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp']
+  ignore line: [Building CXX object CMakeFiles/cmTC_bd06d.dir/CMakeCXXCompilerABI.cpp.o]
+  ignore line: [/usr/bin/c++      -o CMakeFiles/cmTC_bd06d.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.7/Modules/CMakeCXXCompilerABI.cpp]
+  ignore line: [Linking CXX executable cmTC_bd06d]
+  ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_bd06d.dir/link.txt --verbose=1]
+  ignore line: [/usr/bin/c++       -v CMakeFiles/cmTC_bd06d.dir/CMakeCXXCompilerABI.cpp.o  -o cmTC_bd06d -rdynamic  ]
+  ignore line: [Using built-in specs.]
+  ignore line: [COLLECT_GCC=/usr/bin/c++]
+  ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-linux-gnueabihf/6/lto-wrapper]
+  ignore line: [Target: arm-linux-gnueabihf]
+  ignore line: [Configured with: ../src/configure -v --with-pkgversion='Raspbian 6.3.0-18+rpi1' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=arm-linux-gnueabihf- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libitm --disable-libquadmath --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-armhf/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-armhf --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-armhf --with-arch-directory=arm --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-sjlj-exceptions --with-arch=armv6 --with-fpu=vfp --with-float=hard --enable-checking=release --build=arm-linux-gnueabihf --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf]
+  ignore line: [Thread model: posix]
+  ignore line: [gcc version 6.3.0 20170516 (Raspbian 6.3.0-18+rpi1) ]
+  ignore line: [COMPILER_PATH=/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/:/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/]
+  ignore line: [LIBRARY_PATH=/usr/lib/gcc/arm-linux-gnueabihf/6/:/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/:/usr/lib/gcc/arm-linux-gnueabihf/6/../../../:/lib/arm-linux-gnueabihf/:/lib/:/usr/lib/arm-linux-gnueabihf/:/usr/lib/]
+  ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_bd06d' '-rdynamic' '-shared-libgcc' '-march=armv6' '-mfloat-abi=hard' '-mfpu=vfp' '-mtls-dialect=gnu']
+  link line: [ /usr/lib/gcc/arm-linux-gnueabihf/6/collect2 -plugin /usr/lib/gcc/arm-linux-gnueabihf/6/liblto_plugin.so -plugin-opt=/usr/lib/gcc/arm-linux-gnueabihf/6/lto-wrapper -plugin-opt=-fresolution=/tmp/cce8fbFf.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --sysroot=/ --build-id --eh-frame-hdr -export-dynamic -dynamic-linker /lib/ld-linux-armhf.so.3 -X --hash-style=gnu -m armelf_linux_eabi -o cmTC_bd06d /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crt1.o /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crti.o /usr/lib/gcc/arm-linux-gnueabihf/6/crtbegin.o -L/usr/lib/gcc/arm-linux-gnueabihf/6 -L/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf -L/usr/lib/gcc/arm-linux-gnueabihf/6/../../.. -L/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf CMakeFiles/cmTC_bd06d.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/arm-linux-gnueabihf/6/crtend.o /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crtn.o]
+    arg [/usr/lib/gcc/arm-linux-gnueabihf/6/collect2] ==> ignore
+    arg [-plugin] ==> ignore
+    arg [/usr/lib/gcc/arm-linux-gnueabihf/6/liblto_plugin.so] ==> ignore
+    arg [-plugin-opt=/usr/lib/gcc/arm-linux-gnueabihf/6/lto-wrapper] ==> ignore
+    arg [-plugin-opt=-fresolution=/tmp/cce8fbFf.res] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+    arg [--sysroot=/] ==> ignore
+    arg [--build-id] ==> ignore
+    arg [--eh-frame-hdr] ==> ignore
+    arg [-export-dynamic] ==> ignore
+    arg [-dynamic-linker] ==> ignore
+    arg [/lib/ld-linux-armhf.so.3] ==> ignore
+    arg [-X] ==> ignore
+    arg [--hash-style=gnu] ==> ignore
+    arg [-m] ==> ignore
+    arg [armelf_linux_eabi] ==> ignore
+    arg [-o] ==> ignore
+    arg [cmTC_bd06d] ==> ignore
+    arg [/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crt1.o] ==> ignore
+    arg [/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crti.o] ==> ignore
+    arg [/usr/lib/gcc/arm-linux-gnueabihf/6/crtbegin.o] ==> ignore
+    arg [-L/usr/lib/gcc/arm-linux-gnueabihf/6] ==> dir [/usr/lib/gcc/arm-linux-gnueabihf/6]
+    arg [-L/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf] ==> dir [/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf]
+    arg [-L/usr/lib/gcc/arm-linux-gnueabihf/6/../../..] ==> dir [/usr/lib/gcc/arm-linux-gnueabihf/6/../../..]
+    arg [-L/lib/arm-linux-gnueabihf] ==> dir [/lib/arm-linux-gnueabihf]
+    arg [-L/usr/lib/arm-linux-gnueabihf] ==> dir [/usr/lib/arm-linux-gnueabihf]
+    arg [CMakeFiles/cmTC_bd06d.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
+    arg [-lstdc++] ==> lib [stdc++]
+    arg [-lm] ==> lib [m]
+    arg [-lgcc_s] ==> lib [gcc_s]
+    arg [-lgcc] ==> lib [gcc]
+    arg [-lc] ==> lib [c]
+    arg [-lgcc_s] ==> lib [gcc_s]
+    arg [-lgcc] ==> lib [gcc]
+    arg [/usr/lib/gcc/arm-linux-gnueabihf/6/crtend.o] ==> ignore
+    arg [/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crtn.o] ==> ignore
+  remove lib [gcc_s]
+  remove lib [gcc]
+  remove lib [gcc_s]
+  remove lib [gcc]
+  collapse library dir [/usr/lib/gcc/arm-linux-gnueabihf/6] ==> [/usr/lib/gcc/arm-linux-gnueabihf/6]
+  collapse library dir [/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf] ==> [/usr/lib/arm-linux-gnueabihf]
+  collapse library dir [/usr/lib/gcc/arm-linux-gnueabihf/6/../../..] ==> [/usr/lib]
+  collapse library dir [/lib/arm-linux-gnueabihf] ==> [/lib/arm-linux-gnueabihf]
+  collapse library dir [/usr/lib/arm-linux-gnueabihf] ==> [/usr/lib/arm-linux-gnueabihf]
+  implicit libs: [stdc++;m;c]
+  implicit dirs: [/usr/lib/gcc/arm-linux-gnueabihf/6;/usr/lib/arm-linux-gnueabihf;/usr/lib;/lib/arm-linux-gnueabihf]
+  implicit fwks: []
+
+
+
+
+Detecting CXX [-std=c++14] compiler features compiled with the following output:
+Change Dir: /home/pi/scream/rtsp/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_20eff/fast"
+/usr/bin/make -f CMakeFiles/cmTC_20eff.dir/build.make CMakeFiles/cmTC_20eff.dir/build
+make[1]: Entering directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_20eff.dir/feature_tests.cxx.o
+/usr/bin/c++     -std=c++14 -o CMakeFiles/cmTC_20eff.dir/feature_tests.cxx.o -c /home/pi/scream/rtsp/CMakeFiles/feature_tests.cxx
+Linking CXX executable cmTC_20eff
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_20eff.dir/link.txt --verbose=1
+/usr/bin/c++        CMakeFiles/cmTC_20eff.dir/feature_tests.cxx.o  -o cmTC_20eff -rdynamic 
+make[1]: Leaving directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+
+
+    Feature record: CXX_FEATURE:1cxx_aggregate_default_initializers
+    Feature record: CXX_FEATURE:1cxx_alias_templates
+    Feature record: CXX_FEATURE:1cxx_alignas
+    Feature record: CXX_FEATURE:1cxx_alignof
+    Feature record: CXX_FEATURE:1cxx_attributes
+    Feature record: CXX_FEATURE:1cxx_attribute_deprecated
+    Feature record: CXX_FEATURE:1cxx_auto_type
+    Feature record: CXX_FEATURE:1cxx_binary_literals
+    Feature record: CXX_FEATURE:1cxx_constexpr
+    Feature record: CXX_FEATURE:1cxx_contextual_conversions
+    Feature record: CXX_FEATURE:1cxx_decltype
+    Feature record: CXX_FEATURE:1cxx_decltype_auto
+    Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types
+    Feature record: CXX_FEATURE:1cxx_default_function_template_args
+    Feature record: CXX_FEATURE:1cxx_defaulted_functions
+    Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers
+    Feature record: CXX_FEATURE:1cxx_delegating_constructors
+    Feature record: CXX_FEATURE:1cxx_deleted_functions
+    Feature record: CXX_FEATURE:1cxx_digit_separators
+    Feature record: CXX_FEATURE:1cxx_enum_forward_declarations
+    Feature record: CXX_FEATURE:1cxx_explicit_conversions
+    Feature record: CXX_FEATURE:1cxx_extended_friend_declarations
+    Feature record: CXX_FEATURE:1cxx_extern_templates
+    Feature record: CXX_FEATURE:1cxx_final
+    Feature record: CXX_FEATURE:1cxx_func_identifier
+    Feature record: CXX_FEATURE:1cxx_generalized_initializers
+    Feature record: CXX_FEATURE:1cxx_generic_lambdas
+    Feature record: CXX_FEATURE:1cxx_inheriting_constructors
+    Feature record: CXX_FEATURE:1cxx_inline_namespaces
+    Feature record: CXX_FEATURE:1cxx_lambdas
+    Feature record: CXX_FEATURE:1cxx_lambda_init_captures
+    Feature record: CXX_FEATURE:1cxx_local_type_template_args
+    Feature record: CXX_FEATURE:1cxx_long_long_type
+    Feature record: CXX_FEATURE:1cxx_noexcept
+    Feature record: CXX_FEATURE:1cxx_nonstatic_member_init
+    Feature record: CXX_FEATURE:1cxx_nullptr
+    Feature record: CXX_FEATURE:1cxx_override
+    Feature record: CXX_FEATURE:1cxx_range_for
+    Feature record: CXX_FEATURE:1cxx_raw_string_literals
+    Feature record: CXX_FEATURE:1cxx_reference_qualified_functions
+    Feature record: CXX_FEATURE:1cxx_relaxed_constexpr
+    Feature record: CXX_FEATURE:1cxx_return_type_deduction
+    Feature record: CXX_FEATURE:1cxx_right_angle_brackets
+    Feature record: CXX_FEATURE:1cxx_rvalue_references
+    Feature record: CXX_FEATURE:1cxx_sizeof_member
+    Feature record: CXX_FEATURE:1cxx_static_assert
+    Feature record: CXX_FEATURE:1cxx_strong_enums
+    Feature record: CXX_FEATURE:1cxx_template_template_parameters
+    Feature record: CXX_FEATURE:1cxx_thread_local
+    Feature record: CXX_FEATURE:1cxx_trailing_return_types
+    Feature record: CXX_FEATURE:1cxx_unicode_literals
+    Feature record: CXX_FEATURE:1cxx_uniform_initialization
+    Feature record: CXX_FEATURE:1cxx_unrestricted_unions
+    Feature record: CXX_FEATURE:1cxx_user_literals
+    Feature record: CXX_FEATURE:1cxx_variable_templates
+    Feature record: CXX_FEATURE:1cxx_variadic_macros
+    Feature record: CXX_FEATURE:1cxx_variadic_templates
+
+
+Detecting CXX [-std=c++11] compiler features compiled with the following output:
+Change Dir: /home/pi/scream/rtsp/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_e00cf/fast"
+/usr/bin/make -f CMakeFiles/cmTC_e00cf.dir/build.make CMakeFiles/cmTC_e00cf.dir/build
+make[1]: Entering directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_e00cf.dir/feature_tests.cxx.o
+/usr/bin/c++     -std=c++11 -o CMakeFiles/cmTC_e00cf.dir/feature_tests.cxx.o -c /home/pi/scream/rtsp/CMakeFiles/feature_tests.cxx
+Linking CXX executable cmTC_e00cf
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_e00cf.dir/link.txt --verbose=1
+/usr/bin/c++        CMakeFiles/cmTC_e00cf.dir/feature_tests.cxx.o  -o cmTC_e00cf -rdynamic 
+make[1]: Leaving directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+
+
+    Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers
+    Feature record: CXX_FEATURE:1cxx_alias_templates
+    Feature record: CXX_FEATURE:1cxx_alignas
+    Feature record: CXX_FEATURE:1cxx_alignof
+    Feature record: CXX_FEATURE:1cxx_attributes
+    Feature record: CXX_FEATURE:0cxx_attribute_deprecated
+    Feature record: CXX_FEATURE:1cxx_auto_type
+    Feature record: CXX_FEATURE:0cxx_binary_literals
+    Feature record: CXX_FEATURE:1cxx_constexpr
+    Feature record: CXX_FEATURE:0cxx_contextual_conversions
+    Feature record: CXX_FEATURE:1cxx_decltype
+    Feature record: CXX_FEATURE:0cxx_decltype_auto
+    Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types
+    Feature record: CXX_FEATURE:1cxx_default_function_template_args
+    Feature record: CXX_FEATURE:1cxx_defaulted_functions
+    Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers
+    Feature record: CXX_FEATURE:1cxx_delegating_constructors
+    Feature record: CXX_FEATURE:1cxx_deleted_functions
+    Feature record: CXX_FEATURE:0cxx_digit_separators
+    Feature record: CXX_FEATURE:1cxx_enum_forward_declarations
+    Feature record: CXX_FEATURE:1cxx_explicit_conversions
+    Feature record: CXX_FEATURE:1cxx_extended_friend_declarations
+    Feature record: CXX_FEATURE:1cxx_extern_templates
+    Feature record: CXX_FEATURE:1cxx_final
+    Feature record: CXX_FEATURE:1cxx_func_identifier
+    Feature record: CXX_FEATURE:1cxx_generalized_initializers
+    Feature record: CXX_FEATURE:0cxx_generic_lambdas
+    Feature record: CXX_FEATURE:1cxx_inheriting_constructors
+    Feature record: CXX_FEATURE:1cxx_inline_namespaces
+    Feature record: CXX_FEATURE:1cxx_lambdas
+    Feature record: CXX_FEATURE:0cxx_lambda_init_captures
+    Feature record: CXX_FEATURE:1cxx_local_type_template_args
+    Feature record: CXX_FEATURE:1cxx_long_long_type
+    Feature record: CXX_FEATURE:1cxx_noexcept
+    Feature record: CXX_FEATURE:1cxx_nonstatic_member_init
+    Feature record: CXX_FEATURE:1cxx_nullptr
+    Feature record: CXX_FEATURE:1cxx_override
+    Feature record: CXX_FEATURE:1cxx_range_for
+    Feature record: CXX_FEATURE:1cxx_raw_string_literals
+    Feature record: CXX_FEATURE:1cxx_reference_qualified_functions
+    Feature record: CXX_FEATURE:0cxx_relaxed_constexpr
+    Feature record: CXX_FEATURE:0cxx_return_type_deduction
+    Feature record: CXX_FEATURE:1cxx_right_angle_brackets
+    Feature record: CXX_FEATURE:1cxx_rvalue_references
+    Feature record: CXX_FEATURE:1cxx_sizeof_member
+    Feature record: CXX_FEATURE:1cxx_static_assert
+    Feature record: CXX_FEATURE:1cxx_strong_enums
+    Feature record: CXX_FEATURE:1cxx_template_template_parameters
+    Feature record: CXX_FEATURE:1cxx_thread_local
+    Feature record: CXX_FEATURE:1cxx_trailing_return_types
+    Feature record: CXX_FEATURE:1cxx_unicode_literals
+    Feature record: CXX_FEATURE:1cxx_uniform_initialization
+    Feature record: CXX_FEATURE:1cxx_unrestricted_unions
+    Feature record: CXX_FEATURE:1cxx_user_literals
+    Feature record: CXX_FEATURE:0cxx_variable_templates
+    Feature record: CXX_FEATURE:1cxx_variadic_macros
+    Feature record: CXX_FEATURE:1cxx_variadic_templates
+
+
+Detecting CXX [-std=c++98] compiler features compiled with the following output:
+Change Dir: /home/pi/scream/rtsp/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_18ac0/fast"
+/usr/bin/make -f CMakeFiles/cmTC_18ac0.dir/build.make CMakeFiles/cmTC_18ac0.dir/build
+make[1]: Entering directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_18ac0.dir/feature_tests.cxx.o
+/usr/bin/c++     -std=c++98 -o CMakeFiles/cmTC_18ac0.dir/feature_tests.cxx.o -c /home/pi/scream/rtsp/CMakeFiles/feature_tests.cxx
+Linking CXX executable cmTC_18ac0
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_18ac0.dir/link.txt --verbose=1
+/usr/bin/c++        CMakeFiles/cmTC_18ac0.dir/feature_tests.cxx.o  -o cmTC_18ac0 -rdynamic 
+make[1]: Leaving directory '/home/pi/scream/rtsp/CMakeFiles/CMakeTmp'
+
+
+    Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers
+    Feature record: CXX_FEATURE:0cxx_alias_templates
+    Feature record: CXX_FEATURE:0cxx_alignas
+    Feature record: CXX_FEATURE:0cxx_alignof
+    Feature record: CXX_FEATURE:0cxx_attributes
+    Feature record: CXX_FEATURE:0cxx_attribute_deprecated
+    Feature record: CXX_FEATURE:0cxx_auto_type
+    Feature record: CXX_FEATURE:0cxx_binary_literals
+    Feature record: CXX_FEATURE:0cxx_constexpr
+    Feature record: CXX_FEATURE:0cxx_contextual_conversions
+    Feature record: CXX_FEATURE:0cxx_decltype
+    Feature record: CXX_FEATURE:0cxx_decltype_auto
+    Feature record: CXX_FEATURE:0cxx_decltype_incomplete_return_types
+    Feature record: CXX_FEATURE:0cxx_default_function_template_args
+    Feature record: CXX_FEATURE:0cxx_defaulted_functions
+    Feature record: CXX_FEATURE:0cxx_defaulted_move_initializers
+    Feature record: CXX_FEATURE:0cxx_delegating_constructors
+    Feature record: CXX_FEATURE:0cxx_deleted_functions
+    Feature record: CXX_FEATURE:0cxx_digit_separators
+    Feature record: CXX_FEATURE:0cxx_enum_forward_declarations
+    Feature record: CXX_FEATURE:0cxx_explicit_conversions
+    Feature record: CXX_FEATURE:0cxx_extended_friend_declarations
+    Feature record: CXX_FEATURE:0cxx_extern_templates
+    Feature record: CXX_FEATURE:0cxx_final
+    Feature record: CXX_FEATURE:0cxx_func_identifier
+    Feature record: CXX_FEATURE:0cxx_generalized_initializers
+    Feature record: CXX_FEATURE:0cxx_generic_lambdas
+    Feature record: CXX_FEATURE:0cxx_inheriting_constructors
+    Feature record: CXX_FEATURE:0cxx_inline_namespaces
+    Feature record: CXX_FEATURE:0cxx_lambdas
+    Feature record: CXX_FEATURE:0cxx_lambda_init_captures
+    Feature record: CXX_FEATURE:0cxx_local_type_template_args
+    Feature record: CXX_FEATURE:0cxx_long_long_type
+    Feature record: CXX_FEATURE:0cxx_noexcept
+    Feature record: CXX_FEATURE:0cxx_nonstatic_member_init
+    Feature record: CXX_FEATURE:0cxx_nullptr
+    Feature record: CXX_FEATURE:0cxx_override
+    Feature record: CXX_FEATURE:0cxx_range_for
+    Feature record: CXX_FEATURE:0cxx_raw_string_literals
+    Feature record: CXX_FEATURE:0cxx_reference_qualified_functions
+    Feature record: CXX_FEATURE:0cxx_relaxed_constexpr
+    Feature record: CXX_FEATURE:0cxx_return_type_deduction
+    Feature record: CXX_FEATURE:0cxx_right_angle_brackets
+    Feature record: CXX_FEATURE:0cxx_rvalue_references
+    Feature record: CXX_FEATURE:0cxx_sizeof_member
+    Feature record: CXX_FEATURE:0cxx_static_assert
+    Feature record: CXX_FEATURE:0cxx_strong_enums
+    Feature record: CXX_FEATURE:1cxx_template_template_parameters
+    Feature record: CXX_FEATURE:0cxx_thread_local
+    Feature record: CXX_FEATURE:0cxx_trailing_return_types
+    Feature record: CXX_FEATURE:0cxx_unicode_literals
+    Feature record: CXX_FEATURE:0cxx_uniform_initialization
+    Feature record: CXX_FEATURE:0cxx_unrestricted_unions
+    Feature record: CXX_FEATURE:0cxx_user_literals
+    Feature record: CXX_FEATURE:0cxx_variable_templates
+    Feature record: CXX_FEATURE:0cxx_variadic_macros
+    Feature record: CXX_FEATURE:0cxx_variadic_templates
diff --git a/RPI/scream/rtsp/CMakeFiles/Makefile.cmake b/RPI/scream/rtsp/CMakeFiles/Makefile.cmake
new file mode 100644
index 0000000..dab302d
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeFiles/Makefile.cmake
@@ -0,0 +1,47 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# The generator used is:
+set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles")
+
+# The top level Makefile was generated from the following files:
+set(CMAKE_MAKEFILE_DEPENDS
+  "CMakeCache.txt"
+  "CMakeFiles/3.7.2/CMakeCCompiler.cmake"
+  "CMakeFiles/3.7.2/CMakeCXXCompiler.cmake"
+  "CMakeFiles/3.7.2/CMakeSystem.cmake"
+  "CMakeLists.txt"
+  "code/CMakeLists.txt"
+  "/usr/share/cmake-3.7/Modules/CMakeCInformation.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeCXXInformation.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeCommonLanguageInclude.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeGenericSystem.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeLanguageInformation.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeSystemSpecificInformation.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeSystemSpecificInitialize.cmake"
+  "/usr/share/cmake-3.7/Modules/Compiler/GNU-C.cmake"
+  "/usr/share/cmake-3.7/Modules/Compiler/GNU-CXX.cmake"
+  "/usr/share/cmake-3.7/Modules/Compiler/GNU.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/Linux-GNU-C.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/Linux-GNU-CXX.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/Linux-GNU.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/Linux.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/UnixPaths.cmake"
+  )
+
+# The corresponding makefile is:
+set(CMAKE_MAKEFILE_OUTPUTS
+  "Makefile"
+  "CMakeFiles/cmake.check_cache"
+  )
+
+# Byproducts of CMake generate step:
+set(CMAKE_MAKEFILE_PRODUCTS
+  "CMakeFiles/CMakeDirectoryInformation.cmake"
+  "code/CMakeFiles/CMakeDirectoryInformation.cmake"
+  )
+
+# Dependency information for all targets:
+set(CMAKE_DEPEND_INFO_FILES
+  "code/CMakeFiles/rtsp.dir/DependInfo.cmake"
+  )
diff --git a/RPI/scream/rtsp/CMakeFiles/Makefile2 b/RPI/scream/rtsp/CMakeFiles/Makefile2
new file mode 100644
index 0000000..b383e4c
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeFiles/Makefile2
@@ -0,0 +1,126 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# The main recursive all target
+all:
+
+.PHONY : all
+
+# The main recursive preinstall target
+preinstall:
+
+.PHONY : preinstall
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/pi/scream/rtsp
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/pi/scream/rtsp
+
+#=============================================================================
+# Directory level rules for directory code
+
+# Convenience name for "all" pass in the directory.
+code/all: code/CMakeFiles/rtsp.dir/all
+
+.PHONY : code/all
+
+# Convenience name for "clean" pass in the directory.
+code/clean: code/CMakeFiles/rtsp.dir/clean
+
+.PHONY : code/clean
+
+# Convenience name for "preinstall" pass in the directory.
+code/preinstall:
+
+.PHONY : code/preinstall
+
+#=============================================================================
+# Target rules for target code/CMakeFiles/rtsp.dir
+
+# All Build rule for target.
+code/CMakeFiles/rtsp.dir/all:
+	$(MAKE) -f code/CMakeFiles/rtsp.dir/build.make code/CMakeFiles/rtsp.dir/depend
+	$(MAKE) -f code/CMakeFiles/rtsp.dir/build.make code/CMakeFiles/rtsp.dir/build
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/pi/scream/rtsp/CMakeFiles --progress-num=1,2 "Built target rtsp"
+.PHONY : code/CMakeFiles/rtsp.dir/all
+
+# Include target in all.
+all: code/CMakeFiles/rtsp.dir/all
+
+.PHONY : all
+
+# Build rule for subdir invocation for target.
+code/CMakeFiles/rtsp.dir/rule: cmake_check_build_system
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/pi/scream/rtsp/CMakeFiles 2
+	$(MAKE) -f CMakeFiles/Makefile2 code/CMakeFiles/rtsp.dir/all
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/pi/scream/rtsp/CMakeFiles 0
+.PHONY : code/CMakeFiles/rtsp.dir/rule
+
+# Convenience name for target.
+rtsp: code/CMakeFiles/rtsp.dir/rule
+
+.PHONY : rtsp
+
+# clean rule for target.
+code/CMakeFiles/rtsp.dir/clean:
+	$(MAKE) -f code/CMakeFiles/rtsp.dir/build.make code/CMakeFiles/rtsp.dir/clean
+.PHONY : code/CMakeFiles/rtsp.dir/clean
+
+# clean rule for target.
+clean: code/CMakeFiles/rtsp.dir/clean
+
+.PHONY : clean
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+	$(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/RPI/scream/rtsp/CMakeFiles/TargetDirectories.txt b/RPI/scream/rtsp/CMakeFiles/TargetDirectories.txt
new file mode 100644
index 0000000..11d3adf
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeFiles/TargetDirectories.txt
@@ -0,0 +1,5 @@
+/home/pi/scream/rtsp/CMakeFiles/rebuild_cache.dir
+/home/pi/scream/rtsp/CMakeFiles/edit_cache.dir
+/home/pi/scream/rtsp/code/CMakeFiles/rebuild_cache.dir
+/home/pi/scream/rtsp/code/CMakeFiles/edit_cache.dir
+/home/pi/scream/rtsp/code/CMakeFiles/rtsp.dir
diff --git a/RPI/scream/rtsp/CMakeFiles/cmake.check_cache b/RPI/scream/rtsp/CMakeFiles/cmake.check_cache
new file mode 100644
index 0000000..3dccd73
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeFiles/cmake.check_cache
@@ -0,0 +1 @@
+# This file is generated by cmake for dependency checking of the CMakeCache.txt file
diff --git a/RPI/scream/rtsp/CMakeFiles/feature_tests.bin b/RPI/scream/rtsp/CMakeFiles/feature_tests.bin
new file mode 100755
index 0000000000000000000000000000000000000000..84991f587d37cb14867348f1a90ee5ebb0aecbbf
GIT binary patch
literal 12376
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
H2dM)9>jc)T

literal 0
HcmV?d00001

diff --git a/RPI/scream/rtsp/CMakeFiles/feature_tests.c b/RPI/scream/rtsp/CMakeFiles/feature_tests.c
new file mode 100644
index 0000000..6590dde
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeFiles/feature_tests.c
@@ -0,0 +1,34 @@
+
+  const char features[] = {"\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404
+"1"
+#else
+"0"
+#endif
+"c_function_prototypes\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+"1"
+#else
+"0"
+#endif
+"c_restrict\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201000L
+"1"
+#else
+"0"
+#endif
+"c_static_assert\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+"1"
+#else
+"0"
+#endif
+"c_variadic_macros\n"
+
+};
+
+int main(int argc, char** argv) { (void)argv; return features[argc]; }
diff --git a/RPI/scream/rtsp/CMakeFiles/feature_tests.cxx b/RPI/scream/rtsp/CMakeFiles/feature_tests.cxx
new file mode 100644
index 0000000..b93418c
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeFiles/feature_tests.cxx
@@ -0,0 +1,405 @@
+
+  const char features[] = {"\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
+"1"
+#else
+"0"
+#endif
+"cxx_aggregate_default_initializers\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_alias_templates\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_alignas\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_alignof\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_attributes\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_attribute_deprecated\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_auto_type\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_binary_literals\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_constexpr\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_contextual_conversions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_decltype\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_decltype_auto\n"
+"CXX_FEATURE:"
+#if ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40801) && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_decltype_incomplete_return_types\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_default_function_template_args\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_defaulted_functions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_defaulted_move_initializers\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_delegating_constructors\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_deleted_functions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_digit_separators\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_enum_forward_declarations\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_explicit_conversions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_extended_friend_declarations\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_extern_templates\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_final\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_func_identifier\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_generalized_initializers\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_generic_lambdas\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_inheriting_constructors\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_inline_namespaces\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_lambdas\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_lambda_init_captures\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_local_type_template_args\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_long_long_type\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_noexcept\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_nonstatic_member_init\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_nullptr\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_override\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_range_for\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_raw_string_literals\n"
+"CXX_FEATURE:"
+#if ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40801) && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_reference_qualified_functions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
+"1"
+#else
+"0"
+#endif
+"cxx_relaxed_constexpr\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_return_type_deduction\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_right_angle_brackets\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_rvalue_references\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_sizeof_member\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_static_assert\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_strong_enums\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && __cplusplus
+"1"
+#else
+"0"
+#endif
+"cxx_template_template_parameters\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_thread_local\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_trailing_return_types\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_unicode_literals\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_uniform_initialization\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_unrestricted_unions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_user_literals\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
+"1"
+#else
+"0"
+#endif
+"cxx_variable_templates\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_variadic_macros\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_variadic_templates\n"
+
+};
+
+int main(int argc, char** argv) { (void)argv; return features[argc]; }
diff --git a/RPI/scream/rtsp/CMakeFiles/progress.marks b/RPI/scream/rtsp/CMakeFiles/progress.marks
new file mode 100644
index 0000000..0cfbf08
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+2
diff --git a/RPI/scream/rtsp/CMakeLists.txt b/RPI/scream/rtsp/CMakeLists.txt
new file mode 100644
index 0000000..56e5847
--- /dev/null
+++ b/RPI/scream/rtsp/CMakeLists.txt
@@ -0,0 +1,83 @@
+cmake_minimum_required(VERSION 2.6)
+
+PROJECT( scream )
+
+message("Source Dir:" ${scream_SOURCE_DIR})
+
+SET(EXECUTABLE_OUTPUT_PATH ${scream_SOURCE_DIR}/bin)
+SET(LIBRARY_OUTPUT_PATH ${scream_SOURCE_DIR}/lib)
+SET(RUNTIME_OUTPUT_DIRECTORY ${scream_SOURCE_DIR}/bin)
+
+SET(scream_BIN ${scream_SOURCE_DIR}/bin)
+
+message("scream_SOURCE_DIR directories:" ${scream_SOURCE_DIR})
+
+IF(UNIX)
+add_definitions(-std=c++0x)
+ENDIF(UNIX)
+
+IF(WIN32)
+IF(MSVC12)
+message("Detected MSVC12 compiler")
+set(MSVC_VER VC12)
+ELSEIF(MSVC11)
+message("Detected MSVC11 compiler")
+set(MSVC_VER VC11)
+ELSEIF(MSVC10)
+message("Detected MSVC10 compiler")
+set(MSVC_VER VC10)
+ELSEIF(MSVC14)
+message("Detected MSVC14 compiler")
+set(MSVC_VER VC14)
+ELSE(MSVC12)
+message("WARNING: Unknown/unsupported MSVC version")
+ENDIF(MSVC12)
+ENDIF(WIN32)
+
+if( CMAKE_SIZEOF_VOID_P EQUAL 8 )
+# 64bit
+  message("Detected 64-bit build - compiling with -fPIC")
+  SET(CMAKE_CXX_FLAGS "-fPIC -fpermissive -pthread")
+else( CMAKE_SIZEOF_VOID_P EQUAL 8 )
+# 32 bit
+message("Detected 32-bit build")
+SET(CMAKE_CXX_FLAGS "-fpermissive -pthread")
+endif( CMAKE_SIZEOF_VOID_P EQUAL 8 )
+
+#SET(LDFLAGS "-lrt -pthread -lpthread -lncurses")
+
+SET(screamIncludes
+${scream_SOURCE_DIR}
+${scream_SOURCE_DIR}/code
+)
+
+message("screamIncludes directories:" ${screamIncludes})
+
+# lib directories
+IF(WIN32)
+SET(screamLink
+${scream_SOURCE_DIR}/../lib
+)
+ELSEIF(UNIX)
+SET(screamLink
+${scream_SOURCE_DIR}/../lib
+/usr/local/lib
+/usr/lib
+)
+ENDIF(WIN32)
+
+SET(LibDir
+${scream_SOURCE_DIR}/../lib
+)
+
+
+set(LIBS ${LIBS} -lncurses)
+
+message("LibDir directories:" ${LibDir})
+
+# Include directories
+INCLUDE_DIRECTORIES(
+${scream_SOURCE_DIR}/../include
+)
+
+ADD_SUBDIRECTORY( code)
diff --git a/RPI/scream/rtsp/Makefile b/RPI/scream/rtsp/Makefile
new file mode 100644
index 0000000..babea5d
--- /dev/null
+++ b/RPI/scream/rtsp/Makefile
@@ -0,0 +1,148 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/pi/scream/rtsp
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/pi/scream/rtsp
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+	/usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+
+.PHONY : rebuild_cache/fast
+
+# Special rule for the target edit_cache
+edit_cache:
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+	/usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+
+.PHONY : edit_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/pi/scream/rtsp/CMakeFiles /home/pi/scream/rtsp/CMakeFiles/progress.marks
+	$(MAKE) -f CMakeFiles/Makefile2 all
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/pi/scream/rtsp/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+	$(MAKE) -f CMakeFiles/Makefile2 clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+	$(MAKE) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+	$(MAKE) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+	$(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+#=============================================================================
+# Target rules for targets named rtsp
+
+# Build rule for target.
+rtsp: cmake_check_build_system
+	$(MAKE) -f CMakeFiles/Makefile2 rtsp
+.PHONY : rtsp
+
+# fast build rule for target.
+rtsp/fast:
+	$(MAKE) -f code/CMakeFiles/rtsp.dir/build.make code/CMakeFiles/rtsp.dir/build
+.PHONY : rtsp/fast
+
+# Help Target
+help:
+	@echo "The following are some of the valid targets for this Makefile:"
+	@echo "... all (the default if no target is provided)"
+	@echo "... clean"
+	@echo "... depend"
+	@echo "... rebuild_cache"
+	@echo "... edit_cache"
+	@echo "... rtsp"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+	$(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/RPI/scream/rtsp/SSRC.txt b/RPI/scream/rtsp/SSRC.txt
new file mode 100644
index 0000000..f8c595e
--- /dev/null
+++ b/RPI/scream/rtsp/SSRC.txt
@@ -0,0 +1 @@
+e9aa6b02
diff --git a/RPI/scream/rtsp/bin/rtsp b/RPI/scream/rtsp/bin/rtsp
new file mode 100755
index 0000000000000000000000000000000000000000..3736f0aceb9a195f2a682700b275f44458af6c2e
GIT binary patch
literal 18880
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/rtsp/cmake_install.cmake b/RPI/scream/rtsp/cmake_install.cmake
new file mode 100644
index 0000000..e21cf61
--- /dev/null
+++ b/RPI/scream/rtsp/cmake_install.cmake
@@ -0,0 +1,50 @@
+# Install script for directory: /home/pi/scream/rtsp
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+  set(CMAKE_INSTALL_PREFIX "/usr/local")
+endif()
+string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+  if(BUILD_TYPE)
+    string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+           CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+  else()
+    set(CMAKE_INSTALL_CONFIG_NAME "")
+  endif()
+  message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+endif()
+
+# Set the component getting installed.
+if(NOT CMAKE_INSTALL_COMPONENT)
+  if(COMPONENT)
+    message(STATUS "Install component: \"${COMPONENT}\"")
+    set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+  else()
+    set(CMAKE_INSTALL_COMPONENT)
+  endif()
+endif()
+
+# Install shared libraries without execute permission?
+if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
+  set(CMAKE_INSTALL_SO_NO_EXE "1")
+endif()
+
+if(NOT CMAKE_INSTALL_LOCAL_ONLY)
+  # Include the install script for each subdirectory.
+  include("/home/pi/scream/rtsp/code/cmake_install.cmake")
+
+endif()
+
+if(CMAKE_INSTALL_COMPONENT)
+  set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
+else()
+  set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
+endif()
+
+string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
+       "${CMAKE_INSTALL_MANIFEST_FILES}")
+file(WRITE "/home/pi/scream/rtsp/${CMAKE_INSTALL_MANIFEST}"
+     "${CMAKE_INSTALL_MANIFEST_CONTENT}")
diff --git a/RPI/scream/rtsp/code/CMakeFiles/CMakeDirectoryInformation.cmake b/RPI/scream/rtsp/code/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 0000000..3cc4bcd
--- /dev/null
+++ b/RPI/scream/rtsp/code/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/pi/scream/rtsp")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/pi/scream/rtsp")
+
+# Force unix paths in dependencies.
+set(CMAKE_FORCE_UNIX_PATHS 1)
+
+
+# The C and CXX include file regular expressions for this directory.
+set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/RPI/scream/rtsp/code/CMakeFiles/progress.marks b/RPI/scream/rtsp/code/CMakeFiles/progress.marks
new file mode 100644
index 0000000..0cfbf08
--- /dev/null
+++ b/RPI/scream/rtsp/code/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+2
diff --git a/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/CXX.includecache b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/CXX.includecache
new file mode 100644
index 0000000..b0e7f84
--- /dev/null
+++ b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/CXX.includecache
@@ -0,0 +1,10 @@
+#IncludeRegexLine: ^[ 	]*#[ 	]*(include|import)[ 	]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform: 
+
+/home/pi/scream/rtsp/code/rtsp.cpp
+
diff --git a/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/DependInfo.cmake b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/DependInfo.cmake
new file mode 100644
index 0000000..b264771
--- /dev/null
+++ b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/DependInfo.cmake
@@ -0,0 +1,23 @@
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+  "CXX"
+  )
+# The set of files for implicit dependencies of each language:
+set(CMAKE_DEPENDS_CHECK_CXX
+  "/home/pi/scream/rtsp/code/rtsp.cpp" "/home/pi/scream/rtsp/code/CMakeFiles/rtsp.dir/rtsp.cpp.o"
+  )
+set(CMAKE_CXX_COMPILER_ID "GNU")
+
+# The include file search paths:
+set(CMAKE_CXX_TARGET_INCLUDE_PATH
+  "../include"
+  "."
+  "code"
+  )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+  )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/build.make b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/build.make
new file mode 100644
index 0000000..b06a806
--- /dev/null
+++ b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/build.make
@@ -0,0 +1,113 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/pi/scream/rtsp
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/pi/scream/rtsp
+
+# Include any dependencies generated for this target.
+include code/CMakeFiles/rtsp.dir/depend.make
+
+# Include the progress variables for this target.
+include code/CMakeFiles/rtsp.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include code/CMakeFiles/rtsp.dir/flags.make
+
+code/CMakeFiles/rtsp.dir/rtsp.cpp.o: code/CMakeFiles/rtsp.dir/flags.make
+code/CMakeFiles/rtsp.dir/rtsp.cpp.o: code/rtsp.cpp
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pi/scream/rtsp/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object code/CMakeFiles/rtsp.dir/rtsp.cpp.o"
+	cd /home/pi/scream/rtsp/code && /usr/bin/c++   $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/rtsp.dir/rtsp.cpp.o -c /home/pi/scream/rtsp/code/rtsp.cpp
+
+code/CMakeFiles/rtsp.dir/rtsp.cpp.i: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/rtsp.dir/rtsp.cpp.i"
+	cd /home/pi/scream/rtsp/code && /usr/bin/c++  $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/pi/scream/rtsp/code/rtsp.cpp > CMakeFiles/rtsp.dir/rtsp.cpp.i
+
+code/CMakeFiles/rtsp.dir/rtsp.cpp.s: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/rtsp.dir/rtsp.cpp.s"
+	cd /home/pi/scream/rtsp/code && /usr/bin/c++  $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/pi/scream/rtsp/code/rtsp.cpp -o CMakeFiles/rtsp.dir/rtsp.cpp.s
+
+code/CMakeFiles/rtsp.dir/rtsp.cpp.o.requires:
+
+.PHONY : code/CMakeFiles/rtsp.dir/rtsp.cpp.o.requires
+
+code/CMakeFiles/rtsp.dir/rtsp.cpp.o.provides: code/CMakeFiles/rtsp.dir/rtsp.cpp.o.requires
+	$(MAKE) -f code/CMakeFiles/rtsp.dir/build.make code/CMakeFiles/rtsp.dir/rtsp.cpp.o.provides.build
+.PHONY : code/CMakeFiles/rtsp.dir/rtsp.cpp.o.provides
+
+code/CMakeFiles/rtsp.dir/rtsp.cpp.o.provides.build: code/CMakeFiles/rtsp.dir/rtsp.cpp.o
+
+
+# Object files for target rtsp
+rtsp_OBJECTS = \
+"CMakeFiles/rtsp.dir/rtsp.cpp.o"
+
+# External object files for target rtsp
+rtsp_EXTERNAL_OBJECTS =
+
+bin/rtsp: code/CMakeFiles/rtsp.dir/rtsp.cpp.o
+bin/rtsp: code/CMakeFiles/rtsp.dir/build.make
+bin/rtsp: code/CMakeFiles/rtsp.dir/link.txt
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/pi/scream/rtsp/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX executable ../bin/rtsp"
+	cd /home/pi/scream/rtsp/code && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/rtsp.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+code/CMakeFiles/rtsp.dir/build: bin/rtsp
+
+.PHONY : code/CMakeFiles/rtsp.dir/build
+
+code/CMakeFiles/rtsp.dir/requires: code/CMakeFiles/rtsp.dir/rtsp.cpp.o.requires
+
+.PHONY : code/CMakeFiles/rtsp.dir/requires
+
+code/CMakeFiles/rtsp.dir/clean:
+	cd /home/pi/scream/rtsp/code && $(CMAKE_COMMAND) -P CMakeFiles/rtsp.dir/cmake_clean.cmake
+.PHONY : code/CMakeFiles/rtsp.dir/clean
+
+code/CMakeFiles/rtsp.dir/depend:
+	cd /home/pi/scream/rtsp && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/pi/scream/rtsp /home/pi/scream/rtsp/code /home/pi/scream/rtsp /home/pi/scream/rtsp/code /home/pi/scream/rtsp/code/CMakeFiles/rtsp.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : code/CMakeFiles/rtsp.dir/depend
+
diff --git a/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/cmake_clean.cmake b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/cmake_clean.cmake
new file mode 100644
index 0000000..10971da
--- /dev/null
+++ b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/cmake_clean.cmake
@@ -0,0 +1,10 @@
+file(REMOVE_RECURSE
+  "CMakeFiles/rtsp.dir/rtsp.cpp.o"
+  "../bin/rtsp.pdb"
+  "../bin/rtsp"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+  include(CMakeFiles/rtsp.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/depend.internal b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/depend.internal
new file mode 100644
index 0000000..04b8392
--- /dev/null
+++ b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/depend.internal
@@ -0,0 +1,5 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+code/CMakeFiles/rtsp.dir/rtsp.cpp.o
+ /home/pi/scream/rtsp/code/rtsp.cpp
diff --git a/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/depend.make b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/depend.make
new file mode 100644
index 0000000..b001b20
--- /dev/null
+++ b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/depend.make
@@ -0,0 +1,5 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+code/CMakeFiles/rtsp.dir/rtsp.cpp.o: code/rtsp.cpp
+
diff --git a/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/flags.make b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/flags.make
new file mode 100644
index 0000000..128f254
--- /dev/null
+++ b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -fpermissive -pthread   -std=c++0x
+
+CXX_DEFINES = 
+
+CXX_INCLUDES = -I/home/pi/scream/rtsp/../include -I/home/pi/scream/rtsp -I/home/pi/scream/rtsp/code 
+
diff --git a/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/link.txt b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/link.txt
new file mode 100644
index 0000000..b4e8e7e
--- /dev/null
+++ b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/link.txt
@@ -0,0 +1 @@
+/usr/bin/c++   -fpermissive -pthread   CMakeFiles/rtsp.dir/rtsp.cpp.o  -o ../bin/rtsp  -L/home/pi/scream/rtsp/../lib  -L/usr/local/lib -rdynamic 
diff --git a/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/progress.make b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/progress.make
new file mode 100644
index 0000000..abadeb0
--- /dev/null
+++ b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/progress.make
@@ -0,0 +1,3 @@
+CMAKE_PROGRESS_1 = 1
+CMAKE_PROGRESS_2 = 2
+
diff --git a/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/rtsp.cpp.o b/RPI/scream/rtsp/code/CMakeFiles/rtsp.dir/rtsp.cpp.o
new file mode 100644
index 0000000000000000000000000000000000000000..0fff40bdcf090891af4e2fd64e43e409e66fd792
GIT binary patch
literal 8584
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
O<QN$GK@2E{sRIB*pGT_z

literal 0
HcmV?d00001

diff --git a/RPI/scream/rtsp/code/CMakeLists.txt b/RPI/scream/rtsp/code/CMakeLists.txt
new file mode 100644
index 0000000..e799387
--- /dev/null
+++ b/RPI/scream/rtsp/code/CMakeLists.txt
@@ -0,0 +1,28 @@
+# source files
+SET(SRCS
+rtsp.cpp
+)
+
+SET(HEADERS
+)
+
+SET(SRC_1
+${SRCS}
+rtsp.cpp
+)
+
+INCLUDE_DIRECTORIES(
+${screamIncludes}
+)
+
+LINK_DIRECTORIES(
+${screamLink}
+)
+
+ADD_EXECUTABLE(rtsp ${SRC_1} ${HEADERS})
+
+
+TARGET_LINK_LIBRARIES (
+rtsp
+${screamLibs}
+)
diff --git a/RPI/scream/rtsp/code/Makefile b/RPI/scream/rtsp/code/Makefile
new file mode 100644
index 0000000..0930198
--- /dev/null
+++ b/RPI/scream/rtsp/code/Makefile
@@ -0,0 +1,180 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/pi/scream/rtsp
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/pi/scream/rtsp
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+	/usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+
+.PHONY : rebuild_cache/fast
+
+# Special rule for the target edit_cache
+edit_cache:
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+	/usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+
+.PHONY : edit_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+	cd /home/pi/scream/rtsp && $(CMAKE_COMMAND) -E cmake_progress_start /home/pi/scream/rtsp/CMakeFiles /home/pi/scream/rtsp/code/CMakeFiles/progress.marks
+	cd /home/pi/scream/rtsp && $(MAKE) -f CMakeFiles/Makefile2 code/all
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/pi/scream/rtsp/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+	cd /home/pi/scream/rtsp && $(MAKE) -f CMakeFiles/Makefile2 code/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+	cd /home/pi/scream/rtsp && $(MAKE) -f CMakeFiles/Makefile2 code/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+	cd /home/pi/scream/rtsp && $(MAKE) -f CMakeFiles/Makefile2 code/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+	cd /home/pi/scream/rtsp && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+code/CMakeFiles/rtsp.dir/rule:
+	cd /home/pi/scream/rtsp && $(MAKE) -f CMakeFiles/Makefile2 code/CMakeFiles/rtsp.dir/rule
+.PHONY : code/CMakeFiles/rtsp.dir/rule
+
+# Convenience name for target.
+rtsp: code/CMakeFiles/rtsp.dir/rule
+
+.PHONY : rtsp
+
+# fast build rule for target.
+rtsp/fast:
+	cd /home/pi/scream/rtsp && $(MAKE) -f code/CMakeFiles/rtsp.dir/build.make code/CMakeFiles/rtsp.dir/build
+.PHONY : rtsp/fast
+
+rtsp.o: rtsp.cpp.o
+
+.PHONY : rtsp.o
+
+# target to build an object file
+rtsp.cpp.o:
+	cd /home/pi/scream/rtsp && $(MAKE) -f code/CMakeFiles/rtsp.dir/build.make code/CMakeFiles/rtsp.dir/rtsp.cpp.o
+.PHONY : rtsp.cpp.o
+
+rtsp.i: rtsp.cpp.i
+
+.PHONY : rtsp.i
+
+# target to preprocess a source file
+rtsp.cpp.i:
+	cd /home/pi/scream/rtsp && $(MAKE) -f code/CMakeFiles/rtsp.dir/build.make code/CMakeFiles/rtsp.dir/rtsp.cpp.i
+.PHONY : rtsp.cpp.i
+
+rtsp.s: rtsp.cpp.s
+
+.PHONY : rtsp.s
+
+# target to generate assembly for a file
+rtsp.cpp.s:
+	cd /home/pi/scream/rtsp && $(MAKE) -f code/CMakeFiles/rtsp.dir/build.make code/CMakeFiles/rtsp.dir/rtsp.cpp.s
+.PHONY : rtsp.cpp.s
+
+# Help Target
+help:
+	@echo "The following are some of the valid targets for this Makefile:"
+	@echo "... all (the default if no target is provided)"
+	@echo "... clean"
+	@echo "... depend"
+	@echo "... rebuild_cache"
+	@echo "... edit_cache"
+	@echo "... rtsp"
+	@echo "... rtsp.o"
+	@echo "... rtsp.i"
+	@echo "... rtsp.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+	cd /home/pi/scream/rtsp && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/RPI/scream/rtsp/code/cmake_install.cmake b/RPI/scream/rtsp/code/cmake_install.cmake
new file mode 100644
index 0000000..64fefd3
--- /dev/null
+++ b/RPI/scream/rtsp/code/cmake_install.cmake
@@ -0,0 +1,34 @@
+# Install script for directory: /home/pi/scream/rtsp/code
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+  set(CMAKE_INSTALL_PREFIX "/usr/local")
+endif()
+string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+  if(BUILD_TYPE)
+    string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+           CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+  else()
+    set(CMAKE_INSTALL_CONFIG_NAME "")
+  endif()
+  message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+endif()
+
+# Set the component getting installed.
+if(NOT CMAKE_INSTALL_COMPONENT)
+  if(COMPONENT)
+    message(STATUS "Install component: \"${COMPONENT}\"")
+    set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+  else()
+    set(CMAKE_INSTALL_COMPONENT)
+  endif()
+endif()
+
+# Install shared libraries without execute permission?
+if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
+  set(CMAKE_INSTALL_SO_NO_EXE "1")
+endif()
+
diff --git a/RPI/scream/rtsp/code/rtsp.cpp b/RPI/scream/rtsp/code/rtsp.cpp
new file mode 100644
index 0000000..cf89e86
--- /dev/null
+++ b/RPI/scream/rtsp/code/rtsp.cpp
@@ -0,0 +1 @@
+// Scream sender side wrapper
#include "sys/socket.h"
#include "sys/types.h"
#include "netinet/in.h"
#include <string.h> /* needed for memset */
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <sys/time.h>
#include <iostream>
#include <pthread.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/time.h>
#include <signal.h>
struct itimerval timer;
struct sigaction sa;

using namespace std;

#define BUF_SIZE 10000
char buf[BUF_SIZE];

uint32_t ssrc = 0;
// We don't bother about ssrc in this implementation, it is only one stream

char *ENCODER_IP = "192.168.0.10";

struct sockaddr_in http_addr;
int http_sock = 0;
/*
* Create socket to Video encoder
* for rate commands etc.
*/
int create_tcp_socket() {
	int sock;
	if ((sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0){
		cerr << "Can't create TCP socket" << endl;
		exit(1);
	}
	return sock;
}

int setup_rtsp() {
	http_addr.sin_family = AF_INET;
	http_addr.sin_addr.s_addr = htonl(INADDR_ANY);
	inet_aton(ENCODER_IP, (in_addr*)&http_addr.sin_addr.s_addr);
	http_addr.sin_port = htons(554);
	if (connect(http_sock, (struct sockaddr *)&http_addr, sizeof(struct sockaddr)) < 0){
		cerr << "Could not connect to Video coder HTTP server" << endl;
		exit(1);
	}
}

bool verbose = true;
const void sendRtspCommand() {

  int sent = 0;
  int tmpres = 0;
	if (verbose) {
    cerr << "--------------------------------------------" << endl;
    cerr << "Send RTSP : " << endl << buf << endl;
  }
  bool errSend = false;
  /*
  * Send HTTP GET
  */
  while (sent < strlen(buf)) {
    tmpres = send(http_sock, buf + sent, strlen(buf) - sent, 0);
    if (tmpres == -1){
      cerr << "Can't send RTSP" << endl;
      errSend = true;
    }
    sent += tmpres;
  }
  if (true && !errSend) {
    memset(buf, 0, sizeof(buf));
    tmpres = recv(http_sock, buf, BUF_SIZE, 0);

	  if (verbose) {
      cerr << "response: " << endl << buf << endl;
	  }
  }
  if (strstr(buf,"Bad Request")) {
    close(http_sock);
    cerr << "Dishonorable discharge due to malformed request" << endl;
    exit(0);
  }
}

long getTimeInUs(){
  struct timeval tp;
  gettimeofday(&tp, NULL);
  long us = tp.tv_sec * 1000000 + tp.tv_usec;
  return us;
}

// ROberts ugly hacks
#include <signal.h> //  our new library 
volatile sig_atomic_t flag = 0;
void my_function(int sig){ // can be called asynchronously
  flag = 1; // set flag
}


// this fiunction below is badly hijacked by robert to support ctrl-c
bool terminateRtsp = false;
const void *keyboardThread(void *arg) {
    cerr << "RTSP streaming started, press ctrl+c to stop" << endl;
	//	cin.ignore();
	signal(SIGINT, my_function);
	 //  Which-Signal   |-- which user defined function registered
  	while(1){
    		if(flag){ // my action when signal set it 1
        		printf("\n Signal caught!\n");
        		printf("\n default action it not termination!\n");
        		flag = 0;
        		break;
    		}
		usleep(10000);
	}
  	//return 0;
	terminateRtsp = true;
}


//#include <curses.h>
char session[100];
int iter = 0;
int INCOMING_RTP_PORT = 30120;
int main(int argc, char* argv[]) {
  int ix = 1;
  int cSeq = 1;
  uint64_t t0 = getTimeInUs();

  /*
  * Parse command line
  */
  if (argc <= 1) {
    cerr << "Usage : " << endl << " > rtsp encoder_ip client_rtp_port" << endl;
    exit(-1);
  }
  ENCODER_IP = argv[ix];ix++;
  INCOMING_RTP_PORT = atoi(argv[ix]);ix++;

  http_sock = create_tcp_socket();
  setup_rtsp();

  sprintf(buf, "OPTIONS rtsp://%s/MediaInput/h264 RTSP/1.0\r\nCSeq: %d\r\nUser-Agent: Dummy SCReAM RTSP client\r\n\r\n",ENCODER_IP,cSeq++);
  sendRtspCommand();

  sprintf(buf, "DESCRIBE rtsp://%s/MediaInput/h264 RTSP/1.0\r\nCSeq: %d\r\nUser-Agent: Dummy SCReAM RTSP client\r\nAccept: application/sdp\r\n\r\n",ENCODER_IP,cSeq++);
  sendRtspCommand();

  sprintf(buf, "SETUP rtsp://%s/MediaInput/h264/trackID=1 RTSP/1.0\r\nCSeq: %d\r\nUser-Agent: Dummy SCReAM RTSP client\r\nTransport: RTP/AVP;unicast;client_port=%d-%d\r\n\r\n",ENCODER_IP,cSeq++,INCOMING_RTP_PORT,INCOMING_RTP_PORT+1);
  sendRtspCommand();

  char ssrc[100];
  if (strlen(buf) > 0) {
    char *sp = strstr(buf,"ssrc=");
		if (sp) {
			strcpy(ssrc,sp+5);
		}
    sp = strstr(buf,"Session:");
    sp = strtok(sp," ;\r\n");
    sp = strtok(0," ;\r\n");
    strcpy(session,sp);
  }

  sprintf(buf, "PLAY rtsp://%s/MediaInput/h264 RTSP/1.0\r\nCSeq: %d\r\nUser-Agent: Dummy SCReAM RTSP client\r\nSession: %s\r\nRange: npt=0.000-\r\n\r\n",ENCODER_IP,cSeq++,session);
  sendRtspCommand();
  sprintf(buf, "GET_PARAMETER rtsp://%s/MediaInput/h264 RTSP/1.0\r\nCSeq: %d\r\nUser-Agent: Dummy SCReAM RTSP client\r\nSession: %s\r\n\r\n",ENCODER_IP,cSeq++,session);
  sendRtspCommand();

  pthread_t keyboard_thread;
    /* Create keyboard thread */
  pthread_create(&keyboard_thread,NULL,keyboardThread,"Keybaord thread...");

  verbose = false;

  cerr << "Streaming started. IP:" << ENCODER_IP << " port:" << INCOMING_RTP_PORT << " SSRC:" << ssrc << endl;
  while (!terminateRtsp) {
    //if (getch() != 0) {
    //  exit = true;
    //}
    sleep(1);
    if (getTimeInUs()-t0 > 1000000) {
			 iter++;
			 if (iter % 30 == 0) {
				 cerr << "Send GET_PARAMETER keep-alive message to keep RTSP session running.\n Press ENTER to stop RTSP" << endl;
         sprintf(buf, "GET_PARAMETER rtsp://%s/MediaInput/h264 RTSP/1.0\r\nCSeq: %d\r\nUser-Agent: Dummy SCReAM RTSP client\r\nSession: %s\r\n\r\n",ENCODER_IP,cSeq++,session);
         sendRtspCommand();
		   }
       t0 = getTimeInUs();
    }
  }
  verbose = true;

  sprintf(buf, "TEARDOWN rtsp://%s/MediaInput/h264 RTSP/1.0\r\nCSeq: %d\r\nUser-Agent: Dummy SCReAM RTSP client\r\nSession: %s\r\n\r\n",ENCODER_IP,cSeq++,session);
  sendRtspCommand();

  close(http_sock);

}
\ No newline at end of file
diff --git a/RPI/scream/rtsp/rtspOut.txt b/RPI/scream/rtsp/rtspOut.txt
new file mode 100644
index 0000000..ab539a0
--- /dev/null
+++ b/RPI/scream/rtsp/rtspOut.txt
@@ -0,0 +1,105 @@
+--------------------------------------------
+Send RTSP : 
+OPTIONS rtsp://10.180.65.28/MediaInput/h264 RTSP/1.0
+CSeq: 1
+User-Agent: Dummy SCReAM RTSP client
+
+
+response: 
+RTSP/1.0 200 OK
+CSeq: 1
+Connection: Keep-Alive
+Date: Tue, 03 Oct 2017 09:37:23 GMT
+Public: OPTIONS, DESCRIBE, SETUP, PLAY, PAUSE, GET_PARAMETER, TEARDOWN, SET_PARAMETER
+
+
+--------------------------------------------
+Send RTSP : 
+DESCRIBE rtsp://10.180.65.28/MediaInput/h264 RTSP/1.0
+CSeq: 2
+User-Agent: Dummy SCReAM RTSP client
+Accept: application/sdp
+
+
+response: 
+RTSP/1.0 200 OK
+CSeq: 2
+Connection: Keep-Alive
+Date: Tue, 03 Oct 2017 09:37:23 GMT
+Content-Base: rtsp://10.180.65.28/MediaInput/h264/
+Content-Type: application/sdp
+Content-Length: 555
+
+v=0
+o=- 1 1 IN IP4 10.180.65.28
+s=Media Presentation
+e=NONE
+c=IN IP4 0.0.0.0
+b=AS:256
+t=0 0
+a=control:*
+a=range:npt=now-
+m=video 0 RTP/AVP 98
+b=AS:256
+a=framerate:30.0
+a=control:trackID=1
+a=rtpmap:98 H264/90000
+a=fmtp:98 packetization-mode=1; profile-level-id=640028; sprop-parameter-sets=Z2QAKK2UREYjgkwJEDdQyKxXC2B4g+lCkOYJODDA3AP+EAQQUYLOBqAf8oUhzBJwYYG4B/wgCCCjBZwNQD/lJJk6rJtyJLm7bYgggREwgMGDRo0MAsAgQIIEAHwPwIIEAHwD/oRI0Tk8lXJW5KVuaIxMQCAEEEIIQIAEDAggfgH/2AoA8/4CoQAAC7gAAV+Q6MAA/NAAFh8h/+NGAAfmgACw+Q//Cg==,aO4xkhk=
+a=h264-esid:201
+
+--------------------------------------------
+Send RTSP : 
+SETUP rtsp://10.180.65.28/MediaInput/h264/trackID=1 RTSP/1.0
+CSeq: 3
+User-Agent: Dummy SCReAM RTSP client
+Transport: RTP/AVP;unicast;client_port=31111-31112
+
+
+response: 
+RTSP/1.0 200 OK
+CSeq: 3
+Connection: Keep-Alive
+Date: Tue, 03 Oct 2017 09:37:24 GMT
+Session: 275215953682947025671726956429;timeout=120
+Transport: RTP/AVP/UDP;unicast;client_port=31111-31112;server_port=59010-59011;ssrc=e9aa6b02
+
+
+--------------------------------------------
+Send RTSP : 
+PLAY rtsp://10.180.65.28/MediaInput/h264 RTSP/1.0
+CSeq: 4
+User-Agent: Dummy SCReAM RTSP client
+Session: 275215953682947025671726956429
+Range: npt=0.000-
+
+
+response: 
+RTSP/1.0 200 OK
+CSeq: 4
+Connection: Keep-Alive
+Date: Tue, 03 Oct 2017 09:37:24 GMT
+Session: 275215953682947025671726956429
+Range: clock=20171003T093724Z-
+RTP-Info: url=trackID=1;seq=65164;rtptime=19485048
+
+
+--------------------------------------------
+Send RTSP : 
+GET_PARAMETER rtsp://10.180.65.28/MediaInput/h264 RTSP/1.0
+CSeq: 5
+User-Agent: Dummy SCReAM RTSP client
+Session: 275215953682947025671726956429
+
+
+response: 
+RTSP/1.0 200 OK
+CSeq: 5
+Connection: Keep-Alive
+Date: Tue, 03 Oct 2017 09:37:24 GMT
+Session: 275215953682947025671726956429
+
+
+Streaming started. IP:10.180.65.28RTSP streaming started, press ENTER to stop
+ port:31111 SSRC:e9aa6b02
+
+
diff --git a/RPI/scream/rtsp/test.txt b/RPI/scream/rtsp/test.txt
new file mode 100644
index 0000000..9a003b5
--- /dev/null
+++ b/RPI/scream/rtsp/test.txt
@@ -0,0 +1,231 @@
+--------------------------------------------
+Send RTSP : 
+OPTIONS rtsp://10.180.65.28/MediaInput/h264 RTSP/1.0
+CSeq: 1
+User-Agent: Dummy SCReAM RTSP client
+
+
+response: 
+RTSP/1.0 200 OK
+CSeq: 1
+Connection: Keep-Alive
+Date: Tue, 03 Oct 2017 09:20:15 GMT
+Public: OPTIONS, DESCRIBE, SETUP, PLAY, PAUSE, GET_PARAMETER, TEARDOWN, SET_PARAMETER
+
+
+--------------------------------------------
+Send RTSP : 
+DESCRIBE rtsp://10.180.65.28/MediaInput/h264 RTSP/1.0
+CSeq: 2
+User-Agent: Dummy SCReAM RTSP client
+Accept: application/sdp
+
+
+response: 
+RTSP/1.0 200 OK
+CSeq: 2
+Connection: Keep-Alive
+Date: Tue, 03 Oct 2017 09:20:15 GMT
+Content-Base: rtsp://10.180.65.28/MediaInput/h264/
+Content-Type: application/sdp
+Content-Length: 555
+
+v=0
+o=- 1 1 IN IP4 10.180.65.28
+s=Media Presentation
+e=NONE
+c=IN IP4 0.0.0.0
+b=AS:256
+t=0 0
+a=control:*
+a=range:npt=now-
+m=video 0 RTP/AVP 98
+b=AS:256
+a=framerate:30.0
+a=control:trackID=1
+a=rtpmap:98 H264/90000
+a=fmtp:98 packetization-mode=1; profile-level-id=640028; sprop-parameter-sets=Z2QAKK2UREYjgkwJEDdQyKxXC2B4g+lCkOYJODDA3AP+EAQQUYLOBqAf8oUhzBJwYYG4B/wgCCCjBZwNQD/lJJk6rJtyJLm7bYgggREwgMGDRo0MAsAgQIIEAHwPwIIEAHwD/oRI0Tk8lXJW5KVuaIxMQCAEEEIIQIAEDAggfgH/2AoA8/4CoQAAC7gAAV+Q6MAA/NAAFh8h/+NGAAfmgACw+Q//Cg==,aO4xkhk=
+a=h264-esid:201
+
+--------------------------------------------
+Send RTSP : 
+SETUP rtsp://10.180.65.28/MediaInput/h264/trackID=1 RTSP/1.0
+CSeq: 3
+User-Agent: Dummy SCReAM RTSP client
+Transport: RTP/AVP;unicast;client_port=31111-31112
+
+
+response: 
+RTSP/1.0 200 OK
+CSeq: 3
+Connection: Keep-Alive
+Date: Tue, 03 Oct 2017 09:20:15 GMT
+Session: 5011025200592044897763196751392;timeout=120
+Transport: RTP/AVP/UDP;unicast;client_port=31111-31112;server_port=59006-59007;ssrc=5a72e81d
+
+
+--------------------------------------------
+Send RTSP : 
+PLAY rtsp://10.180.65.28/MediaInput/h264 RTSP/1.0
+CSeq: 4
+User-Agent: Dummy SCReAM RTSP client
+Session: 5011025200592044897763196751392
+Range: npt=0.000-
+
+
+response: 
+RTSP/1.0 200 OK
+CSeq: 4
+Connection: Keep-Alive
+Date: Tue, 03 Oct 2017 09:20:15 GMT
+Session: 5011025200592044897763196751392
+Range: clock=20171003T092015Z-
+RTP-Info: url=trackID=1;seq=10378;rtptime=150517560
+
+
+--------------------------------------------
+Send RTSP : 
+GET_PARAMETER rtsp://10.180.65.28/MediaInput/h264 RTSP/1.0
+CSeq: 5
+User-Agent: Dummy SCReAM RTSP client
+Session: 5011025200592044897763196751392
+
+
+response: 
+RTSP/1.0 200 OK
+CSeq: 5
+Connection: Keep-Alive
+Date: Tue, 03 Oct 2017 09:20:15 GMT
+Session: 5011025200592044897763196751392
+
+
+Streaming started. IP:10.180.65.28RTSP streaming started, press ENTER to stop
+ port:31111 SSRC:5a72e81d
+
+
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
+Send GET_PARAMETER keep-alive message to keep RTSP session running.
+ Press ENTER to stop RTSP
diff --git a/RPI/scream/scream_receiver/CMakeCache.txt b/RPI/scream/scream_receiver/CMakeCache.txt
new file mode 100644
index 0000000..eaf5d48
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeCache.txt
@@ -0,0 +1,255 @@
+# This is the CMakeCache file.
+# For build in directory: /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver
+# It was generated by CMake: /usr/bin/cmake
+# You can edit this file to change values found and used by cmake.
+# If you do not want to change any of the values, simply exit the editor.
+# If you do want to change a value, simply edit, save, and exit the editor.
+# The syntax for the file is as follows:
+# KEY:TYPE=VALUE
+# KEY is the name of a variable in the cache.
+# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
+# VALUE is the current value for the KEY.
+
+########################
+# EXTERNAL cache entries
+########################
+
+//Choose the type of build, options are: None(CMAKE_CXX_FLAGS or
+// CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel.
+CMAKE_BUILD_TYPE:STRING=
+
+//Enable/Disable color output during build.
+CMAKE_COLOR_MAKEFILE:BOOL=ON
+
+//Flags used by the compiler during all build types.
+CMAKE_CXX_FLAGS:STRING=
+
+//Flags used by the compiler during debug builds.
+CMAKE_CXX_FLAGS_DEBUG:STRING=-g
+
+//Flags used by the compiler during release builds for minimum
+// size.
+CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
+
+//Flags used by the compiler during release builds.
+CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
+
+//Flags used by the compiler during release builds with debug info.
+CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
+
+//Flags used by the compiler during all build types.
+CMAKE_C_FLAGS:STRING=
+
+//Flags used by the compiler during debug builds.
+CMAKE_C_FLAGS_DEBUG:STRING=-g
+
+//Flags used by the compiler during release builds for minimum
+// size.
+CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
+
+//Flags used by the compiler during release builds.
+CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
+
+//Flags used by the compiler during release builds with debug info.
+CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
+
+//Flags used by the linker.
+CMAKE_EXE_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during debug builds.
+CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during release minsize builds.
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during release builds.
+CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during Release with Debug Info builds.
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Enable/Disable output of compile commands during generation.
+CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF
+
+//Install path prefix, prepended onto install directories.
+CMAKE_INSTALL_PREFIX:PATH=/usr/local
+
+//Path to a program.
+CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make
+
+//Flags used by the linker during the creation of modules.
+CMAKE_MODULE_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during debug builds.
+CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during release minsize builds.
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during release builds.
+CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during Release with Debug Info builds.
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Value Computed by CMake
+CMAKE_PROJECT_NAME:STATIC=scream
+
+//Flags used by the linker during the creation of dll's.
+CMAKE_SHARED_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during debug builds.
+CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during release minsize builds.
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during release builds.
+CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during Release with Debug Info builds.
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//If set, runtime paths are not added when installing shared libraries,
+// but are added when building.
+CMAKE_SKIP_INSTALL_RPATH:BOOL=NO
+
+//If set, runtime paths are not added when using shared libraries.
+CMAKE_SKIP_RPATH:BOOL=NO
+
+//Flags used by the linker during the creation of static libraries.
+CMAKE_STATIC_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during debug builds.
+CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during release minsize builds.
+CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during release builds.
+CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during Release with Debug Info builds.
+CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//If this value is on, makefiles will be generated without the
+// .SILENT directive, and all commands will be echoed to the console
+// during the make.  This is useful for debugging only. With Visual
+// Studio IDE projects all commands are done without /nologo.
+CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE
+
+//Value Computed by CMake
+scream_BINARY_DIR:STATIC=/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver
+
+//Value Computed by CMake
+scream_SOURCE_DIR:STATIC=/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver
+
+
+########################
+# INTERNAL cache entries
+########################
+
+//This is the directory where this CMakeCache.txt was created
+CMAKE_CACHEFILE_DIR:INTERNAL=/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver
+//Major version of cmake used to create the current loaded cache
+CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
+//Minor version of cmake used to create the current loaded cache
+CMAKE_CACHE_MINOR_VERSION:INTERNAL=7
+//Patch version of cmake used to create the current loaded cache
+CMAKE_CACHE_PATCH_VERSION:INTERNAL=2
+//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE
+CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1
+//Path to CMake executable.
+CMAKE_COMMAND:INTERNAL=/usr/bin/cmake
+//Path to cpack program executable.
+CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack
+//Path to ctest program executable.
+CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest
+//ADVANCED property for variable: CMAKE_CXX_FLAGS
+CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG
+CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL
+CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE
+CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO
+CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS
+CMAKE_C_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG
+CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL
+CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE
+CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO
+CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
+CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG
+CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE
+CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
+CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
+//Name of external makefile project generator.
+CMAKE_EXTRA_GENERATOR:INTERNAL=
+//Name of generator.
+CMAKE_GENERATOR:INTERNAL=Unix Makefiles
+//Name of generator platform.
+CMAKE_GENERATOR_PLATFORM:INTERNAL=
+//Name of generator toolset.
+CMAKE_GENERATOR_TOOLSET:INTERNAL=
+//Source directory with the top level CMakeLists.txt file for this
+// project
+CMAKE_HOME_DIRECTORY:INTERNAL=/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver
+//Install .so files without execute permission.
+CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MAKE_PROGRAM
+CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
+CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
+CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE
+CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//number of local generators
+CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=2
+//Path to CMake installation.
+CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.7
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
+CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
+CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE
+CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
+CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_RPATH
+CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS
+CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG
+CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL
+CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE
+CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
+CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
+
diff --git a/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeCCompiler.cmake b/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeCCompiler.cmake
new file mode 100644
index 0000000..d628b11
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeCCompiler.cmake
@@ -0,0 +1,68 @@
+set(CMAKE_C_COMPILER "/usr/bin/cc")
+set(CMAKE_C_COMPILER_ARG1 "")
+set(CMAKE_C_COMPILER_ID "GNU")
+set(CMAKE_C_COMPILER_VERSION "6.3.0")
+set(CMAKE_C_COMPILER_WRAPPER "")
+set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "11")
+set(CMAKE_C_COMPILE_FEATURES "c_function_prototypes;c_restrict;c_variadic_macros;c_static_assert")
+set(CMAKE_C90_COMPILE_FEATURES "c_function_prototypes")
+set(CMAKE_C99_COMPILE_FEATURES "c_restrict;c_variadic_macros")
+set(CMAKE_C11_COMPILE_FEATURES "c_static_assert")
+
+set(CMAKE_C_PLATFORM_ID "Linux")
+set(CMAKE_C_SIMULATE_ID "")
+set(CMAKE_C_SIMULATE_VERSION "")
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_COMPILER_IS_GNUCC 1)
+set(CMAKE_C_COMPILER_LOADED 1)
+set(CMAKE_C_COMPILER_WORKS TRUE)
+set(CMAKE_C_ABI_COMPILED TRUE)
+set(CMAKE_COMPILER_IS_MINGW )
+set(CMAKE_COMPILER_IS_CYGWIN )
+if(CMAKE_COMPILER_IS_CYGWIN)
+  set(CYGWIN 1)
+  set(UNIX 1)
+endif()
+
+set(CMAKE_C_COMPILER_ENV_VAR "CC")
+
+if(CMAKE_COMPILER_IS_MINGW)
+  set(MINGW 1)
+endif()
+set(CMAKE_C_COMPILER_ID_RUN 1)
+set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m)
+set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
+set(CMAKE_C_LINKER_PREFERENCE 10)
+
+# Save compiler ABI information.
+set(CMAKE_C_SIZEOF_DATA_PTR "8")
+set(CMAKE_C_COMPILER_ABI "ELF")
+set(CMAKE_C_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+
+if(CMAKE_C_SIZEOF_DATA_PTR)
+  set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_C_COMPILER_ABI)
+  set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
+endif()
+
+if(CMAKE_C_LIBRARY_ARCHITECTURE)
+  set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+endif()
+
+set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_C_CL_SHOWINCLUDES_PREFIX)
+  set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "c")
+set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/6;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
+set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeCXXCompiler.cmake b/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeCXXCompiler.cmake
new file mode 100644
index 0000000..0018983
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeCXXCompiler.cmake
@@ -0,0 +1,69 @@
+set(CMAKE_CXX_COMPILER "/usr/bin/c++")
+set(CMAKE_CXX_COMPILER_ARG1 "")
+set(CMAKE_CXX_COMPILER_ID "GNU")
+set(CMAKE_CXX_COMPILER_VERSION "6.3.0")
+set(CMAKE_CXX_COMPILER_WRAPPER "")
+set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "14")
+set(CMAKE_CXX_COMPILE_FEATURES "cxx_template_template_parameters;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
+set(CMAKE_CXX98_COMPILE_FEATURES "cxx_template_template_parameters")
+set(CMAKE_CXX11_COMPILE_FEATURES "cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
+set(CMAKE_CXX14_COMPILE_FEATURES "cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
+
+set(CMAKE_CXX_PLATFORM_ID "Linux")
+set(CMAKE_CXX_SIMULATE_ID "")
+set(CMAKE_CXX_SIMULATE_VERSION "")
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_COMPILER_IS_GNUCXX 1)
+set(CMAKE_CXX_COMPILER_LOADED 1)
+set(CMAKE_CXX_COMPILER_WORKS TRUE)
+set(CMAKE_CXX_ABI_COMPILED TRUE)
+set(CMAKE_COMPILER_IS_MINGW )
+set(CMAKE_COMPILER_IS_CYGWIN )
+if(CMAKE_COMPILER_IS_CYGWIN)
+  set(CYGWIN 1)
+  set(UNIX 1)
+endif()
+
+set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
+
+if(CMAKE_COMPILER_IS_MINGW)
+  set(MINGW 1)
+endif()
+set(CMAKE_CXX_COMPILER_ID_RUN 1)
+set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
+set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;mm;CPP)
+set(CMAKE_CXX_LINKER_PREFERENCE 30)
+set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
+
+# Save compiler ABI information.
+set(CMAKE_CXX_SIZEOF_DATA_PTR "8")
+set(CMAKE_CXX_COMPILER_ABI "ELF")
+set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+
+if(CMAKE_CXX_SIZEOF_DATA_PTR)
+  set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_CXX_COMPILER_ABI)
+  set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
+endif()
+
+if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
+  set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+endif()
+
+set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
+  set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;c")
+set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/6;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
+set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_C.bin b/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_C.bin
new file mode 100755
index 0000000000000000000000000000000000000000..49ad92475e2dff2eb841033d3871ac56f77ac402
GIT binary patch
literal 8464
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_CXX.bin b/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_CXX.bin
new file mode 100755
index 0000000000000000000000000000000000000000..400f61846d12c9d5edfdb261fe337d9ea54ece55
GIT binary patch
literal 8472
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
P`X<zZe=q?kjjkU6ISZ}t

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeSystem.cmake b/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeSystem.cmake
new file mode 100644
index 0000000..ee8af32
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CMakeSystem.cmake
@@ -0,0 +1,15 @@
+set(CMAKE_HOST_SYSTEM "Linux-4.10.0-35-generic")
+set(CMAKE_HOST_SYSTEM_NAME "Linux")
+set(CMAKE_HOST_SYSTEM_VERSION "4.10.0-35-generic")
+set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64")
+
+
+
+set(CMAKE_SYSTEM "Linux-4.10.0-35-generic")
+set(CMAKE_SYSTEM_NAME "Linux")
+set(CMAKE_SYSTEM_VERSION "4.10.0-35-generic")
+set(CMAKE_SYSTEM_PROCESSOR "x86_64")
+
+set(CMAKE_CROSSCOMPILING "FALSE")
+
+set(CMAKE_SYSTEM_LOADED 1)
diff --git a/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CompilerIdC/CMakeCCompilerId.c b/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CompilerIdC/CMakeCCompilerId.c
new file mode 100644
index 0000000..512e360
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CompilerIdC/CMakeCCompilerId.c
@@ -0,0 +1,561 @@
+#ifdef __cplusplus
+# error "A C++ compiler has been selected for C."
+#endif
+
+#if defined(__18CXX)
+# define ID_VOID_MAIN
+#endif
+#if defined(__CLASSIC_C__)
+/* cv-qualifiers did not exist in K&R C */
+# define const
+# define volatile
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+   Version date components:   YYYY=Year, MM=Month,   DD=Day  */
+
+#if defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+  /* __INTEL_COMPILER = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+# if defined(__INTEL_COMPILER_UPDATE)
+#  define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+# else
+#  define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER   % 10)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+  /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+#  define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__     & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+  /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+   /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+   /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_C)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_C >= 0x5100
+   /* __SUNPRO_C = 0xVRRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_C    & 0xF)
+# else
+   /* __SUNPRO_CC = 0xVRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_C    & 0xF)
+# endif
+
+#elif defined(__HP_cc)
+# define COMPILER_ID "HP"
+  /* __HP_cc = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_cc     % 100)
+
+#elif defined(__DECC)
+# define COMPILER_ID "Compaq"
+  /* __DECC_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000  % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECC_VER         % 10000)
+
+#elif defined(__IBMC__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800
+# define COMPILER_ID "XL"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800
+# define COMPILER_ID "VisualAge"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+  /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000   % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__        % 1000)
+
+#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version)
+# define COMPILER_ID "Fujitsu"
+
+#elif defined(__TINYC__)
+# define COMPILER_ID "TinyCC"
+
+#elif defined(__BCC__)
+# define COMPILER_ID "Bruce"
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__GNUC__)
+# define COMPILER_ID "GNU"
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# if defined(__GNUC_MINOR__)
+#  define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+  /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+#  if _MSC_VER >= 1400
+    /* _MSC_FULL_VER = VVRRPPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+#  else
+    /* _MSC_FULL_VER = VVRRPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+#  endif
+# endif
+# if defined(_MSC_BUILD)
+#  define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+  /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8  & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__ ) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+
+#elif defined(__ARMCC_VERSION)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+  /* __ARMCC_VERSION = VRRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION     % 10000)
+#else
+  /* __ARMCC_VERSION = VRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION    % 10000)
+#endif
+
+
+#elif defined(SDCC)
+# define COMPILER_ID "SDCC"
+  /* SDCC = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(SDCC/100)
+#  define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(SDCC    % 10)
+
+#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION)
+# define COMPILER_ID "MIPSpro"
+# if defined(_SGI_COMPILER_VERSION)
+  /* _SGI_COMPILER_VERSION = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100)
+#  define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION    % 10)
+# else
+  /* _COMPILER_VERSION = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100)
+#  define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION    % 10)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+  identification macro.  Try to identify the platform and guess that
+  it is the native compiler.  */
+#elif defined(__sgi)
+# define COMPILER_ID "MIPSpro"
+
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXE) || defined(__CRAYXC)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name.  */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__sgi) || defined(__sgi__) || defined(_SGI)
+# define PLATFORM_ID "IRIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+#  define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+#  define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+#  define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+#  define PLATFORM_ID "Windows3x"
+
+# else /* unknown platform */
+#  define PLATFORM_ID
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+   the architecture of the compiler being used.  This is because
+   the compilers do not have flags that can change the architecture,
+   but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+#  define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+#  define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM)
+#  if _M_ARM == 4
+#   define ARCHITECTURE_ID "ARMV4I"
+#  elif _M_ARM == 5
+#   define ARCHITECTURE_ID "ARMV5I"
+#  else
+#   define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+#  endif
+
+# elif defined(_M_MIPS)
+#  define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+#  define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+#  define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#else
+#  define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals.  */
+#define DEC(n)                   \
+  ('0' + (((n) / 10000000)%10)), \
+  ('0' + (((n) / 1000000)%10)),  \
+  ('0' + (((n) / 100000)%10)),   \
+  ('0' + (((n) / 10000)%10)),    \
+  ('0' + (((n) / 1000)%10)),     \
+  ('0' + (((n) / 100)%10)),      \
+  ('0' + (((n) / 10)%10)),       \
+  ('0' +  ((n) % 10))
+
+/* Convert integer to hex digit literals.  */
+#define HEX(n)             \
+  ('0' + ((n)>>28 & 0xF)), \
+  ('0' + ((n)>>24 & 0xF)), \
+  ('0' + ((n)>>20 & 0xF)), \
+  ('0' + ((n)>>16 & 0xF)), \
+  ('0' + ((n)>>12 & 0xF)), \
+  ('0' + ((n)>>8  & 0xF)), \
+  ('0' + ((n)>>4  & 0xF)), \
+  ('0' + ((n)     & 0xF))
+
+/* Construct a string literal encoding the version number components. */
+#ifdef COMPILER_VERSION_MAJOR
+char const info_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+  COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+  '.', COMPILER_VERSION_MINOR,
+#  ifdef COMPILER_VERSION_PATCH
+   '.', COMPILER_VERSION_PATCH,
+#   ifdef COMPILER_VERSION_TWEAK
+    '.', COMPILER_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+  SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+  '.', SIMULATE_VERSION_MINOR,
+#  ifdef SIMULATE_VERSION_PATCH
+   '.', SIMULATE_VERSION_PATCH,
+#   ifdef SIMULATE_VERSION_TWEAK
+    '.', SIMULATE_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+
+#if !defined(__STDC__)
+# if defined(_MSC_VER) && !defined(__clang__)
+#  define C_DIALECT "90"
+# else
+#  define C_DIALECT
+# endif
+#elif __STDC_VERSION__ >= 201000L
+# define C_DIALECT "11"
+#elif __STDC_VERSION__ >= 199901L
+# define C_DIALECT "99"
+#else
+# define C_DIALECT "90"
+#endif
+const char* info_language_dialect_default =
+  "INFO" ":" "dialect_default[" C_DIALECT "]";
+
+/*--------------------------------------------------------------------------*/
+
+#ifdef ID_VOID_MAIN
+void main() {}
+#else
+# if defined(__CLASSIC_C__)
+int main(argc, argv) int argc; char *argv[];
+# else
+int main(int argc, char* argv[])
+# endif
+{
+  int require = 0;
+  require += info_compiler[argc];
+  require += info_platform[argc];
+  require += info_arch[argc];
+#ifdef COMPILER_VERSION_MAJOR
+  require += info_version[argc];
+#endif
+#ifdef SIMULATE_ID
+  require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+  require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXE) || defined(__CRAYXC)
+  require += info_cray[argc];
+#endif
+  require += info_language_dialect_default[argc];
+  (void)argv;
+  return require;
+}
+#endif
diff --git a/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CompilerIdC/a.out b/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CompilerIdC/a.out
new file mode 100755
index 0000000000000000000000000000000000000000..2c9d824bf34e6384541157ce258ad086b4372b81
GIT binary patch
literal 8616
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CompilerIdCXX/CMakeCXXCompilerId.cpp b/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CompilerIdCXX/CMakeCXXCompilerId.cpp
new file mode 100644
index 0000000..a6e6bed
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CompilerIdCXX/CMakeCXXCompilerId.cpp
@@ -0,0 +1,533 @@
+/* This source file must have a .cpp extension so that all C++ compilers
+   recognize the extension without flags.  Borland does not know .cxx for
+   example.  */
+#ifndef __cplusplus
+# error "A C compiler has been selected for C++."
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+   Version date components:   YYYY=Year, MM=Month,   DD=Day  */
+
+#if defined(__COMO__)
+# define COMPILER_ID "Comeau"
+  /* __COMO_VERSION__ = VRR */
+# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100)
+# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100)
+
+#elif defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+  /* __INTEL_COMPILER = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+# if defined(__INTEL_COMPILER_UPDATE)
+#  define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+# else
+#  define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER   % 10)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+  /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+#  define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__     & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+  /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+   /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+   /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_CC)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_CC >= 0x5100
+   /* __SUNPRO_CC = 0xVRRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC    & 0xF)
+# else
+   /* __SUNPRO_CC = 0xVRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC    & 0xF)
+# endif
+
+#elif defined(__HP_aCC)
+# define COMPILER_ID "HP"
+  /* __HP_aCC = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_aCC     % 100)
+
+#elif defined(__DECCXX)
+# define COMPILER_ID "Compaq"
+  /* __DECCXX_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000  % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER         % 10000)
+
+#elif defined(__IBMCPP__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800
+# define COMPILER_ID "XL"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800
+# define COMPILER_ID "VisualAge"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+  /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000   % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__        % 1000)
+
+#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version)
+# define COMPILER_ID "Fujitsu"
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__GNUC__)
+# define COMPILER_ID "GNU"
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# if defined(__GNUC_MINOR__)
+#  define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+  /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+#  if _MSC_VER >= 1400
+    /* _MSC_FULL_VER = VVRRPPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+#  else
+    /* _MSC_FULL_VER = VVRRPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+#  endif
+# endif
+# if defined(_MSC_BUILD)
+#  define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+  /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8  & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__ ) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+
+#elif defined(__ARMCC_VERSION)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+  /* __ARMCC_VERSION = VRRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION     % 10000)
+#else
+  /* __ARMCC_VERSION = VRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION    % 10000)
+#endif
+
+
+#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION)
+# define COMPILER_ID "MIPSpro"
+# if defined(_SGI_COMPILER_VERSION)
+  /* _SGI_COMPILER_VERSION = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100)
+#  define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION    % 10)
+# else
+  /* _COMPILER_VERSION = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100)
+#  define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION    % 10)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+  identification macro.  Try to identify the platform and guess that
+  it is the native compiler.  */
+#elif defined(__sgi)
+# define COMPILER_ID "MIPSpro"
+
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXE) || defined(__CRAYXC)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name.  */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__sgi) || defined(__sgi__) || defined(_SGI)
+# define PLATFORM_ID "IRIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+#  define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+#  define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+#  define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+#  define PLATFORM_ID "Windows3x"
+
+# else /* unknown platform */
+#  define PLATFORM_ID
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+   the architecture of the compiler being used.  This is because
+   the compilers do not have flags that can change the architecture,
+   but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+#  define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+#  define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM)
+#  if _M_ARM == 4
+#   define ARCHITECTURE_ID "ARMV4I"
+#  elif _M_ARM == 5
+#   define ARCHITECTURE_ID "ARMV5I"
+#  else
+#   define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+#  endif
+
+# elif defined(_M_MIPS)
+#  define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+#  define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+#  define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#else
+#  define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals.  */
+#define DEC(n)                   \
+  ('0' + (((n) / 10000000)%10)), \
+  ('0' + (((n) / 1000000)%10)),  \
+  ('0' + (((n) / 100000)%10)),   \
+  ('0' + (((n) / 10000)%10)),    \
+  ('0' + (((n) / 1000)%10)),     \
+  ('0' + (((n) / 100)%10)),      \
+  ('0' + (((n) / 10)%10)),       \
+  ('0' +  ((n) % 10))
+
+/* Convert integer to hex digit literals.  */
+#define HEX(n)             \
+  ('0' + ((n)>>28 & 0xF)), \
+  ('0' + ((n)>>24 & 0xF)), \
+  ('0' + ((n)>>20 & 0xF)), \
+  ('0' + ((n)>>16 & 0xF)), \
+  ('0' + ((n)>>12 & 0xF)), \
+  ('0' + ((n)>>8  & 0xF)), \
+  ('0' + ((n)>>4  & 0xF)), \
+  ('0' + ((n)     & 0xF))
+
+/* Construct a string literal encoding the version number components. */
+#ifdef COMPILER_VERSION_MAJOR
+char const info_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+  COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+  '.', COMPILER_VERSION_MINOR,
+#  ifdef COMPILER_VERSION_PATCH
+   '.', COMPILER_VERSION_PATCH,
+#   ifdef COMPILER_VERSION_TWEAK
+    '.', COMPILER_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+  SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+  '.', SIMULATE_VERSION_MINOR,
+#  ifdef SIMULATE_VERSION_PATCH
+   '.', SIMULATE_VERSION_PATCH,
+#   ifdef SIMULATE_VERSION_TWEAK
+    '.', SIMULATE_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+
+const char* info_language_dialect_default = "INFO" ":" "dialect_default["
+#if __cplusplus >= 201402L
+  "14"
+#elif __cplusplus >= 201103L
+  "11"
+#else
+  "98"
+#endif
+"]";
+
+/*--------------------------------------------------------------------------*/
+
+int main(int argc, char* argv[])
+{
+  int require = 0;
+  require += info_compiler[argc];
+  require += info_platform[argc];
+#ifdef COMPILER_VERSION_MAJOR
+  require += info_version[argc];
+#endif
+#ifdef SIMULATE_ID
+  require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+  require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXE) || defined(__CRAYXC)
+  require += info_cray[argc];
+#endif
+  require += info_language_dialect_default[argc];
+  (void)argv;
+  return require;
+}
diff --git a/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CompilerIdCXX/a.out b/RPI/scream/scream_receiver/CMakeFiles/3.7.2/CompilerIdCXX/a.out
new file mode 100755
index 0000000000000000000000000000000000000000..4097f848338f087c6f6ac761ebbf3ee0ce882766
GIT binary patch
literal 8632
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_receiver/CMakeFiles/CMakeDirectoryInformation.cmake b/RPI/scream/scream_receiver/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 0000000..cf91cfa
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver")
+
+# Force unix paths in dependencies.
+set(CMAKE_FORCE_UNIX_PATHS 1)
+
+
+# The C and CXX include file regular expressions for this directory.
+set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/RPI/scream/scream_receiver/CMakeFiles/CMakeOutput.log b/RPI/scream/scream_receiver/CMakeFiles/CMakeOutput.log
new file mode 100644
index 0000000..fbc5e17
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeFiles/CMakeOutput.log
@@ -0,0 +1,560 @@
+The system is: Linux - 4.10.0-35-generic - x86_64
+Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
+Compiler: /usr/bin/cc 
+Build flags: 
+Id flags: 
+
+The output was:
+0
+
+
+Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out"
+
+The C compiler identification is GNU, found in "/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/3.7.2/CompilerIdC/a.out"
+
+Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
+Compiler: /usr/bin/c++ 
+Build flags: 
+Id flags: 
+
+The output was:
+0
+
+
+Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out"
+
+The CXX compiler identification is GNU, found in "/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/3.7.2/CompilerIdCXX/a.out"
+
+Determining if the C compiler works passed with the following output:
+Change Dir: /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_24c26/fast"
+/usr/bin/make -f CMakeFiles/cmTC_24c26.dir/build.make CMakeFiles/cmTC_24c26.dir/build
+make[1]: Entering directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_24c26.dir/testCCompiler.c.o
+/usr/bin/cc     -o CMakeFiles/cmTC_24c26.dir/testCCompiler.c.o   -c /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp/testCCompiler.c
+Linking C executable cmTC_24c26
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_24c26.dir/link.txt --verbose=1
+/usr/bin/cc       CMakeFiles/cmTC_24c26.dir/testCCompiler.c.o  -o cmTC_24c26 -rdynamic 
+make[1]: Leaving directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+
+
+Detecting C compiler ABI info compiled with the following output:
+Change Dir: /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_c8162/fast"
+/usr/bin/make -f CMakeFiles/cmTC_c8162.dir/build.make CMakeFiles/cmTC_c8162.dir/build
+make[1]: Entering directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_c8162.dir/CMakeCCompilerABI.c.o
+/usr/bin/cc     -o CMakeFiles/cmTC_c8162.dir/CMakeCCompilerABI.c.o   -c /usr/share/cmake-3.7/Modules/CMakeCCompilerABI.c
+Linking C executable cmTC_c8162
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_c8162.dir/link.txt --verbose=1
+/usr/bin/cc      -v CMakeFiles/cmTC_c8162.dir/CMakeCCompilerABI.c.o  -o cmTC_c8162 -rdynamic  
+Using built-in specs.
+COLLECT_GCC=/usr/bin/cc
+COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper
+Target: x86_64-linux-gnu
+Configured with: ../src/configure -v --with-pkgversion='Ubuntu 6.3.0-12ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
+Thread model: posix
+gcc version 6.3.0 20170406 (Ubuntu 6.3.0-12ubuntu2) 
+COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/
+LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../:/lib/:/usr/lib/
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_c8162' '-rdynamic' '-mtune=generic' '-march=x86-64'
+ /usr/lib/gcc/x86_64-linux-gnu/6/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/6/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper -plugin-opt=-fresolution=/tmp/cce5EGm0.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_c8162 /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/6/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/6 -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/6/../../.. CMakeFiles/cmTC_c8162.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-linux-gnu/6/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crtn.o
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_c8162' '-rdynamic' '-mtune=generic' '-march=x86-64'
+make[1]: Leaving directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+
+
+Parsed C implicit link information from above output:
+  link line regex: [^( *|.*[/\])(ld|([^/\]+-)?ld|collect2)[^/\]*( |$)]
+  ignore line: [Change Dir: /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp]
+  ignore line: []
+  ignore line: [Run Build Command:"/usr/bin/make" "cmTC_c8162/fast"]
+  ignore line: [/usr/bin/make -f CMakeFiles/cmTC_c8162.dir/build.make CMakeFiles/cmTC_c8162.dir/build]
+  ignore line: [make[1]: Entering directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp']
+  ignore line: [Building C object CMakeFiles/cmTC_c8162.dir/CMakeCCompilerABI.c.o]
+  ignore line: [/usr/bin/cc     -o CMakeFiles/cmTC_c8162.dir/CMakeCCompilerABI.c.o   -c /usr/share/cmake-3.7/Modules/CMakeCCompilerABI.c]
+  ignore line: [Linking C executable cmTC_c8162]
+  ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_c8162.dir/link.txt --verbose=1]
+  ignore line: [/usr/bin/cc      -v CMakeFiles/cmTC_c8162.dir/CMakeCCompilerABI.c.o  -o cmTC_c8162 -rdynamic  ]
+  ignore line: [Using built-in specs.]
+  ignore line: [COLLECT_GCC=/usr/bin/cc]
+  ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper]
+  ignore line: [Target: x86_64-linux-gnu]
+  ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 6.3.0-12ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu]
+  ignore line: [Thread model: posix]
+  ignore line: [gcc version 6.3.0 20170406 (Ubuntu 6.3.0-12ubuntu2) ]
+  ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/]
+  ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../:/lib/:/usr/lib/]
+  ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_c8162' '-rdynamic' '-mtune=generic' '-march=x86-64']
+  link line: [ /usr/lib/gcc/x86_64-linux-gnu/6/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/6/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper -plugin-opt=-fresolution=/tmp/cce5EGm0.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_c8162 /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/6/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/6 -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/6/../../.. CMakeFiles/cmTC_c8162.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-linux-gnu/6/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crtn.o]
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/collect2] ==> ignore
+    arg [-plugin] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/liblto_plugin.so] ==> ignore
+    arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper] ==> ignore
+    arg [-plugin-opt=-fresolution=/tmp/cce5EGm0.res] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+    arg [-plugin-opt=-pass-through=-lc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+    arg [--sysroot=/] ==> ignore
+    arg [--build-id] ==> ignore
+    arg [--eh-frame-hdr] ==> ignore
+    arg [-m] ==> ignore
+    arg [elf_x86_64] ==> ignore
+    arg [--hash-style=gnu] ==> ignore
+    arg [--as-needed] ==> ignore
+    arg [-export-dynamic] ==> ignore
+    arg [-dynamic-linker] ==> ignore
+    arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
+    arg [-pie] ==> ignore
+    arg [-znow] ==> ignore
+    arg [-zrelro] ==> ignore
+    arg [-o] ==> ignore
+    arg [cmTC_c8162] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crti.o] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/crtbeginS.o] ==> ignore
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6]
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu]
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib]
+    arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu]
+    arg [-L/lib/../lib] ==> dir [/lib/../lib]
+    arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
+    arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../..]
+    arg [CMakeFiles/cmTC_c8162.dir/CMakeCCompilerABI.c.o] ==> ignore
+    arg [-lgcc] ==> lib [gcc]
+    arg [--as-needed] ==> ignore
+    arg [-lgcc_s] ==> lib [gcc_s]
+    arg [--no-as-needed] ==> ignore
+    arg [-lc] ==> lib [c]
+    arg [-lgcc] ==> lib [gcc]
+    arg [--as-needed] ==> ignore
+    arg [-lgcc_s] ==> lib [gcc_s]
+    arg [--no-as-needed] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/crtendS.o] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crtn.o] ==> ignore
+  remove lib [gcc]
+  remove lib [gcc_s]
+  remove lib [gcc]
+  remove lib [gcc_s]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6] ==> [/usr/lib/gcc/x86_64-linux-gnu/6]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib] ==> [/usr/lib]
+  collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu]
+  collapse library dir [/lib/../lib] ==> [/lib]
+  collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+  collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../..] ==> [/usr/lib]
+  implicit libs: [c]
+  implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/6;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
+  implicit fwks: []
+
+
+
+
+Detecting C [-std=c11] compiler features compiled with the following output:
+Change Dir: /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_201be/fast"
+/usr/bin/make -f CMakeFiles/cmTC_201be.dir/build.make CMakeFiles/cmTC_201be.dir/build
+make[1]: Entering directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_201be.dir/feature_tests.c.o
+/usr/bin/cc    -std=c11 -o CMakeFiles/cmTC_201be.dir/feature_tests.c.o   -c /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/feature_tests.c
+Linking C executable cmTC_201be
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_201be.dir/link.txt --verbose=1
+/usr/bin/cc       CMakeFiles/cmTC_201be.dir/feature_tests.c.o  -o cmTC_201be -rdynamic 
+make[1]: Leaving directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+
+
+    Feature record: C_FEATURE:1c_function_prototypes
+    Feature record: C_FEATURE:1c_restrict
+    Feature record: C_FEATURE:1c_static_assert
+    Feature record: C_FEATURE:1c_variadic_macros
+
+
+Detecting C [-std=c99] compiler features compiled with the following output:
+Change Dir: /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_5d61b/fast"
+/usr/bin/make -f CMakeFiles/cmTC_5d61b.dir/build.make CMakeFiles/cmTC_5d61b.dir/build
+make[1]: Entering directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_5d61b.dir/feature_tests.c.o
+/usr/bin/cc    -std=c99 -o CMakeFiles/cmTC_5d61b.dir/feature_tests.c.o   -c /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/feature_tests.c
+Linking C executable cmTC_5d61b
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_5d61b.dir/link.txt --verbose=1
+/usr/bin/cc       CMakeFiles/cmTC_5d61b.dir/feature_tests.c.o  -o cmTC_5d61b -rdynamic 
+make[1]: Leaving directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+
+
+    Feature record: C_FEATURE:1c_function_prototypes
+    Feature record: C_FEATURE:1c_restrict
+    Feature record: C_FEATURE:0c_static_assert
+    Feature record: C_FEATURE:1c_variadic_macros
+
+
+Detecting C [-std=c90] compiler features compiled with the following output:
+Change Dir: /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_a3c73/fast"
+/usr/bin/make -f CMakeFiles/cmTC_a3c73.dir/build.make CMakeFiles/cmTC_a3c73.dir/build
+make[1]: Entering directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_a3c73.dir/feature_tests.c.o
+/usr/bin/cc    -std=c90 -o CMakeFiles/cmTC_a3c73.dir/feature_tests.c.o   -c /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/feature_tests.c
+Linking C executable cmTC_a3c73
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a3c73.dir/link.txt --verbose=1
+/usr/bin/cc       CMakeFiles/cmTC_a3c73.dir/feature_tests.c.o  -o cmTC_a3c73 -rdynamic 
+make[1]: Leaving directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+
+
+    Feature record: C_FEATURE:1c_function_prototypes
+    Feature record: C_FEATURE:0c_restrict
+    Feature record: C_FEATURE:0c_static_assert
+    Feature record: C_FEATURE:0c_variadic_macros
+Determining if the CXX compiler works passed with the following output:
+Change Dir: /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_a39b5/fast"
+/usr/bin/make -f CMakeFiles/cmTC_a39b5.dir/build.make CMakeFiles/cmTC_a39b5.dir/build
+make[1]: Entering directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_a39b5.dir/testCXXCompiler.cxx.o
+/usr/bin/c++      -o CMakeFiles/cmTC_a39b5.dir/testCXXCompiler.cxx.o -c /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp/testCXXCompiler.cxx
+Linking CXX executable cmTC_a39b5
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a39b5.dir/link.txt --verbose=1
+/usr/bin/c++        CMakeFiles/cmTC_a39b5.dir/testCXXCompiler.cxx.o  -o cmTC_a39b5 -rdynamic 
+make[1]: Leaving directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+
+
+Detecting CXX compiler ABI info compiled with the following output:
+Change Dir: /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_e997c/fast"
+/usr/bin/make -f CMakeFiles/cmTC_e997c.dir/build.make CMakeFiles/cmTC_e997c.dir/build
+make[1]: Entering directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_e997c.dir/CMakeCXXCompilerABI.cpp.o
+/usr/bin/c++      -o CMakeFiles/cmTC_e997c.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.7/Modules/CMakeCXXCompilerABI.cpp
+Linking CXX executable cmTC_e997c
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_e997c.dir/link.txt --verbose=1
+/usr/bin/c++       -v CMakeFiles/cmTC_e997c.dir/CMakeCXXCompilerABI.cpp.o  -o cmTC_e997c -rdynamic  
+Using built-in specs.
+COLLECT_GCC=/usr/bin/c++
+COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper
+Target: x86_64-linux-gnu
+Configured with: ../src/configure -v --with-pkgversion='Ubuntu 6.3.0-12ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
+Thread model: posix
+gcc version 6.3.0 20170406 (Ubuntu 6.3.0-12ubuntu2) 
+COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/
+LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../:/lib/:/usr/lib/
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_e997c' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
+ /usr/lib/gcc/x86_64-linux-gnu/6/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/6/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper -plugin-opt=-fresolution=/tmp/ccPzJgyp.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_e997c /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/6/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/6 -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/6/../../.. CMakeFiles/cmTC_e997c.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/6/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crtn.o
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_e997c' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
+make[1]: Leaving directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+
+
+Parsed CXX implicit link information from above output:
+  link line regex: [^( *|.*[/\])(ld|([^/\]+-)?ld|collect2)[^/\]*( |$)]
+  ignore line: [Change Dir: /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp]
+  ignore line: []
+  ignore line: [Run Build Command:"/usr/bin/make" "cmTC_e997c/fast"]
+  ignore line: [/usr/bin/make -f CMakeFiles/cmTC_e997c.dir/build.make CMakeFiles/cmTC_e997c.dir/build]
+  ignore line: [make[1]: Entering directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp']
+  ignore line: [Building CXX object CMakeFiles/cmTC_e997c.dir/CMakeCXXCompilerABI.cpp.o]
+  ignore line: [/usr/bin/c++      -o CMakeFiles/cmTC_e997c.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.7/Modules/CMakeCXXCompilerABI.cpp]
+  ignore line: [Linking CXX executable cmTC_e997c]
+  ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_e997c.dir/link.txt --verbose=1]
+  ignore line: [/usr/bin/c++       -v CMakeFiles/cmTC_e997c.dir/CMakeCXXCompilerABI.cpp.o  -o cmTC_e997c -rdynamic  ]
+  ignore line: [Using built-in specs.]
+  ignore line: [COLLECT_GCC=/usr/bin/c++]
+  ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper]
+  ignore line: [Target: x86_64-linux-gnu]
+  ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 6.3.0-12ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu]
+  ignore line: [Thread model: posix]
+  ignore line: [gcc version 6.3.0 20170406 (Ubuntu 6.3.0-12ubuntu2) ]
+  ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/]
+  ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../:/lib/:/usr/lib/]
+  ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_e997c' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64']
+  link line: [ /usr/lib/gcc/x86_64-linux-gnu/6/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/6/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper -plugin-opt=-fresolution=/tmp/ccPzJgyp.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_e997c /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/6/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/6 -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/6/../../.. CMakeFiles/cmTC_e997c.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/6/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crtn.o]
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/collect2] ==> ignore
+    arg [-plugin] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/liblto_plugin.so] ==> ignore
+    arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper] ==> ignore
+    arg [-plugin-opt=-fresolution=/tmp/ccPzJgyp.res] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+    arg [--sysroot=/] ==> ignore
+    arg [--build-id] ==> ignore
+    arg [--eh-frame-hdr] ==> ignore
+    arg [-m] ==> ignore
+    arg [elf_x86_64] ==> ignore
+    arg [--hash-style=gnu] ==> ignore
+    arg [--as-needed] ==> ignore
+    arg [-export-dynamic] ==> ignore
+    arg [-dynamic-linker] ==> ignore
+    arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
+    arg [-pie] ==> ignore
+    arg [-znow] ==> ignore
+    arg [-zrelro] ==> ignore
+    arg [-o] ==> ignore
+    arg [cmTC_e997c] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crti.o] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/crtbeginS.o] ==> ignore
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6]
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu]
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib]
+    arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu]
+    arg [-L/lib/../lib] ==> dir [/lib/../lib]
+    arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
+    arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../..]
+    arg [CMakeFiles/cmTC_e997c.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
+    arg [-lstdc++] ==> lib [stdc++]
+    arg [-lm] ==> lib [m]
+    arg [-lgcc_s] ==> lib [gcc_s]
+    arg [-lgcc] ==> lib [gcc]
+    arg [-lc] ==> lib [c]
+    arg [-lgcc_s] ==> lib [gcc_s]
+    arg [-lgcc] ==> lib [gcc]
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/crtendS.o] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crtn.o] ==> ignore
+  remove lib [gcc_s]
+  remove lib [gcc]
+  remove lib [gcc_s]
+  remove lib [gcc]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6] ==> [/usr/lib/gcc/x86_64-linux-gnu/6]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib] ==> [/usr/lib]
+  collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu]
+  collapse library dir [/lib/../lib] ==> [/lib]
+  collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+  collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../..] ==> [/usr/lib]
+  implicit libs: [stdc++;m;c]
+  implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/6;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
+  implicit fwks: []
+
+
+
+
+Detecting CXX [-std=c++14] compiler features compiled with the following output:
+Change Dir: /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_d8ed4/fast"
+/usr/bin/make -f CMakeFiles/cmTC_d8ed4.dir/build.make CMakeFiles/cmTC_d8ed4.dir/build
+make[1]: Entering directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_d8ed4.dir/feature_tests.cxx.o
+/usr/bin/c++     -std=c++14 -o CMakeFiles/cmTC_d8ed4.dir/feature_tests.cxx.o -c /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/feature_tests.cxx
+Linking CXX executable cmTC_d8ed4
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_d8ed4.dir/link.txt --verbose=1
+/usr/bin/c++        CMakeFiles/cmTC_d8ed4.dir/feature_tests.cxx.o  -o cmTC_d8ed4 -rdynamic 
+make[1]: Leaving directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+
+
+    Feature record: CXX_FEATURE:1cxx_aggregate_default_initializers
+    Feature record: CXX_FEATURE:1cxx_alias_templates
+    Feature record: CXX_FEATURE:1cxx_alignas
+    Feature record: CXX_FEATURE:1cxx_alignof
+    Feature record: CXX_FEATURE:1cxx_attributes
+    Feature record: CXX_FEATURE:1cxx_attribute_deprecated
+    Feature record: CXX_FEATURE:1cxx_auto_type
+    Feature record: CXX_FEATURE:1cxx_binary_literals
+    Feature record: CXX_FEATURE:1cxx_constexpr
+    Feature record: CXX_FEATURE:1cxx_contextual_conversions
+    Feature record: CXX_FEATURE:1cxx_decltype
+    Feature record: CXX_FEATURE:1cxx_decltype_auto
+    Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types
+    Feature record: CXX_FEATURE:1cxx_default_function_template_args
+    Feature record: CXX_FEATURE:1cxx_defaulted_functions
+    Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers
+    Feature record: CXX_FEATURE:1cxx_delegating_constructors
+    Feature record: CXX_FEATURE:1cxx_deleted_functions
+    Feature record: CXX_FEATURE:1cxx_digit_separators
+    Feature record: CXX_FEATURE:1cxx_enum_forward_declarations
+    Feature record: CXX_FEATURE:1cxx_explicit_conversions
+    Feature record: CXX_FEATURE:1cxx_extended_friend_declarations
+    Feature record: CXX_FEATURE:1cxx_extern_templates
+    Feature record: CXX_FEATURE:1cxx_final
+    Feature record: CXX_FEATURE:1cxx_func_identifier
+    Feature record: CXX_FEATURE:1cxx_generalized_initializers
+    Feature record: CXX_FEATURE:1cxx_generic_lambdas
+    Feature record: CXX_FEATURE:1cxx_inheriting_constructors
+    Feature record: CXX_FEATURE:1cxx_inline_namespaces
+    Feature record: CXX_FEATURE:1cxx_lambdas
+    Feature record: CXX_FEATURE:1cxx_lambda_init_captures
+    Feature record: CXX_FEATURE:1cxx_local_type_template_args
+    Feature record: CXX_FEATURE:1cxx_long_long_type
+    Feature record: CXX_FEATURE:1cxx_noexcept
+    Feature record: CXX_FEATURE:1cxx_nonstatic_member_init
+    Feature record: CXX_FEATURE:1cxx_nullptr
+    Feature record: CXX_FEATURE:1cxx_override
+    Feature record: CXX_FEATURE:1cxx_range_for
+    Feature record: CXX_FEATURE:1cxx_raw_string_literals
+    Feature record: CXX_FEATURE:1cxx_reference_qualified_functions
+    Feature record: CXX_FEATURE:1cxx_relaxed_constexpr
+    Feature record: CXX_FEATURE:1cxx_return_type_deduction
+    Feature record: CXX_FEATURE:1cxx_right_angle_brackets
+    Feature record: CXX_FEATURE:1cxx_rvalue_references
+    Feature record: CXX_FEATURE:1cxx_sizeof_member
+    Feature record: CXX_FEATURE:1cxx_static_assert
+    Feature record: CXX_FEATURE:1cxx_strong_enums
+    Feature record: CXX_FEATURE:1cxx_template_template_parameters
+    Feature record: CXX_FEATURE:1cxx_thread_local
+    Feature record: CXX_FEATURE:1cxx_trailing_return_types
+    Feature record: CXX_FEATURE:1cxx_unicode_literals
+    Feature record: CXX_FEATURE:1cxx_uniform_initialization
+    Feature record: CXX_FEATURE:1cxx_unrestricted_unions
+    Feature record: CXX_FEATURE:1cxx_user_literals
+    Feature record: CXX_FEATURE:1cxx_variable_templates
+    Feature record: CXX_FEATURE:1cxx_variadic_macros
+    Feature record: CXX_FEATURE:1cxx_variadic_templates
+
+
+Detecting CXX [-std=c++11] compiler features compiled with the following output:
+Change Dir: /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_5cbc3/fast"
+/usr/bin/make -f CMakeFiles/cmTC_5cbc3.dir/build.make CMakeFiles/cmTC_5cbc3.dir/build
+make[1]: Entering directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_5cbc3.dir/feature_tests.cxx.o
+/usr/bin/c++     -std=c++11 -o CMakeFiles/cmTC_5cbc3.dir/feature_tests.cxx.o -c /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/feature_tests.cxx
+Linking CXX executable cmTC_5cbc3
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_5cbc3.dir/link.txt --verbose=1
+/usr/bin/c++        CMakeFiles/cmTC_5cbc3.dir/feature_tests.cxx.o  -o cmTC_5cbc3 -rdynamic 
+make[1]: Leaving directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+
+
+    Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers
+    Feature record: CXX_FEATURE:1cxx_alias_templates
+    Feature record: CXX_FEATURE:1cxx_alignas
+    Feature record: CXX_FEATURE:1cxx_alignof
+    Feature record: CXX_FEATURE:1cxx_attributes
+    Feature record: CXX_FEATURE:0cxx_attribute_deprecated
+    Feature record: CXX_FEATURE:1cxx_auto_type
+    Feature record: CXX_FEATURE:0cxx_binary_literals
+    Feature record: CXX_FEATURE:1cxx_constexpr
+    Feature record: CXX_FEATURE:0cxx_contextual_conversions
+    Feature record: CXX_FEATURE:1cxx_decltype
+    Feature record: CXX_FEATURE:0cxx_decltype_auto
+    Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types
+    Feature record: CXX_FEATURE:1cxx_default_function_template_args
+    Feature record: CXX_FEATURE:1cxx_defaulted_functions
+    Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers
+    Feature record: CXX_FEATURE:1cxx_delegating_constructors
+    Feature record: CXX_FEATURE:1cxx_deleted_functions
+    Feature record: CXX_FEATURE:0cxx_digit_separators
+    Feature record: CXX_FEATURE:1cxx_enum_forward_declarations
+    Feature record: CXX_FEATURE:1cxx_explicit_conversions
+    Feature record: CXX_FEATURE:1cxx_extended_friend_declarations
+    Feature record: CXX_FEATURE:1cxx_extern_templates
+    Feature record: CXX_FEATURE:1cxx_final
+    Feature record: CXX_FEATURE:1cxx_func_identifier
+    Feature record: CXX_FEATURE:1cxx_generalized_initializers
+    Feature record: CXX_FEATURE:0cxx_generic_lambdas
+    Feature record: CXX_FEATURE:1cxx_inheriting_constructors
+    Feature record: CXX_FEATURE:1cxx_inline_namespaces
+    Feature record: CXX_FEATURE:1cxx_lambdas
+    Feature record: CXX_FEATURE:0cxx_lambda_init_captures
+    Feature record: CXX_FEATURE:1cxx_local_type_template_args
+    Feature record: CXX_FEATURE:1cxx_long_long_type
+    Feature record: CXX_FEATURE:1cxx_noexcept
+    Feature record: CXX_FEATURE:1cxx_nonstatic_member_init
+    Feature record: CXX_FEATURE:1cxx_nullptr
+    Feature record: CXX_FEATURE:1cxx_override
+    Feature record: CXX_FEATURE:1cxx_range_for
+    Feature record: CXX_FEATURE:1cxx_raw_string_literals
+    Feature record: CXX_FEATURE:1cxx_reference_qualified_functions
+    Feature record: CXX_FEATURE:0cxx_relaxed_constexpr
+    Feature record: CXX_FEATURE:0cxx_return_type_deduction
+    Feature record: CXX_FEATURE:1cxx_right_angle_brackets
+    Feature record: CXX_FEATURE:1cxx_rvalue_references
+    Feature record: CXX_FEATURE:1cxx_sizeof_member
+    Feature record: CXX_FEATURE:1cxx_static_assert
+    Feature record: CXX_FEATURE:1cxx_strong_enums
+    Feature record: CXX_FEATURE:1cxx_template_template_parameters
+    Feature record: CXX_FEATURE:1cxx_thread_local
+    Feature record: CXX_FEATURE:1cxx_trailing_return_types
+    Feature record: CXX_FEATURE:1cxx_unicode_literals
+    Feature record: CXX_FEATURE:1cxx_uniform_initialization
+    Feature record: CXX_FEATURE:1cxx_unrestricted_unions
+    Feature record: CXX_FEATURE:1cxx_user_literals
+    Feature record: CXX_FEATURE:0cxx_variable_templates
+    Feature record: CXX_FEATURE:1cxx_variadic_macros
+    Feature record: CXX_FEATURE:1cxx_variadic_templates
+
+
+Detecting CXX [-std=c++98] compiler features compiled with the following output:
+Change Dir: /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_2c2d6/fast"
+/usr/bin/make -f CMakeFiles/cmTC_2c2d6.dir/build.make CMakeFiles/cmTC_2c2d6.dir/build
+make[1]: Entering directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_2c2d6.dir/feature_tests.cxx.o
+/usr/bin/c++     -std=c++98 -o CMakeFiles/cmTC_2c2d6.dir/feature_tests.cxx.o -c /home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/feature_tests.cxx
+Linking CXX executable cmTC_2c2d6
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_2c2d6.dir/link.txt --verbose=1
+/usr/bin/c++        CMakeFiles/cmTC_2c2d6.dir/feature_tests.cxx.o  -o cmTC_2c2d6 -rdynamic 
+make[1]: Leaving directory '/home/robert/Downloads/panasonic-ip-cam/scream_receiver/CMakeFiles/CMakeTmp'
+
+
+    Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers
+    Feature record: CXX_FEATURE:0cxx_alias_templates
+    Feature record: CXX_FEATURE:0cxx_alignas
+    Feature record: CXX_FEATURE:0cxx_alignof
+    Feature record: CXX_FEATURE:0cxx_attributes
+    Feature record: CXX_FEATURE:0cxx_attribute_deprecated
+    Feature record: CXX_FEATURE:0cxx_auto_type
+    Feature record: CXX_FEATURE:0cxx_binary_literals
+    Feature record: CXX_FEATURE:0cxx_constexpr
+    Feature record: CXX_FEATURE:0cxx_contextual_conversions
+    Feature record: CXX_FEATURE:0cxx_decltype
+    Feature record: CXX_FEATURE:0cxx_decltype_auto
+    Feature record: CXX_FEATURE:0cxx_decltype_incomplete_return_types
+    Feature record: CXX_FEATURE:0cxx_default_function_template_args
+    Feature record: CXX_FEATURE:0cxx_defaulted_functions
+    Feature record: CXX_FEATURE:0cxx_defaulted_move_initializers
+    Feature record: CXX_FEATURE:0cxx_delegating_constructors
+    Feature record: CXX_FEATURE:0cxx_deleted_functions
+    Feature record: CXX_FEATURE:0cxx_digit_separators
+    Feature record: CXX_FEATURE:0cxx_enum_forward_declarations
+    Feature record: CXX_FEATURE:0cxx_explicit_conversions
+    Feature record: CXX_FEATURE:0cxx_extended_friend_declarations
+    Feature record: CXX_FEATURE:0cxx_extern_templates
+    Feature record: CXX_FEATURE:0cxx_final
+    Feature record: CXX_FEATURE:0cxx_func_identifier
+    Feature record: CXX_FEATURE:0cxx_generalized_initializers
+    Feature record: CXX_FEATURE:0cxx_generic_lambdas
+    Feature record: CXX_FEATURE:0cxx_inheriting_constructors
+    Feature record: CXX_FEATURE:0cxx_inline_namespaces
+    Feature record: CXX_FEATURE:0cxx_lambdas
+    Feature record: CXX_FEATURE:0cxx_lambda_init_captures
+    Feature record: CXX_FEATURE:0cxx_local_type_template_args
+    Feature record: CXX_FEATURE:0cxx_long_long_type
+    Feature record: CXX_FEATURE:0cxx_noexcept
+    Feature record: CXX_FEATURE:0cxx_nonstatic_member_init
+    Feature record: CXX_FEATURE:0cxx_nullptr
+    Feature record: CXX_FEATURE:0cxx_override
+    Feature record: CXX_FEATURE:0cxx_range_for
+    Feature record: CXX_FEATURE:0cxx_raw_string_literals
+    Feature record: CXX_FEATURE:0cxx_reference_qualified_functions
+    Feature record: CXX_FEATURE:0cxx_relaxed_constexpr
+    Feature record: CXX_FEATURE:0cxx_return_type_deduction
+    Feature record: CXX_FEATURE:0cxx_right_angle_brackets
+    Feature record: CXX_FEATURE:0cxx_rvalue_references
+    Feature record: CXX_FEATURE:0cxx_sizeof_member
+    Feature record: CXX_FEATURE:0cxx_static_assert
+    Feature record: CXX_FEATURE:0cxx_strong_enums
+    Feature record: CXX_FEATURE:1cxx_template_template_parameters
+    Feature record: CXX_FEATURE:0cxx_thread_local
+    Feature record: CXX_FEATURE:0cxx_trailing_return_types
+    Feature record: CXX_FEATURE:0cxx_unicode_literals
+    Feature record: CXX_FEATURE:0cxx_uniform_initialization
+    Feature record: CXX_FEATURE:0cxx_unrestricted_unions
+    Feature record: CXX_FEATURE:0cxx_user_literals
+    Feature record: CXX_FEATURE:0cxx_variable_templates
+    Feature record: CXX_FEATURE:0cxx_variadic_macros
+    Feature record: CXX_FEATURE:0cxx_variadic_templates
diff --git a/RPI/scream/scream_receiver/CMakeFiles/Makefile.cmake b/RPI/scream/scream_receiver/CMakeFiles/Makefile.cmake
new file mode 100644
index 0000000..35fa7f0
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeFiles/Makefile.cmake
@@ -0,0 +1,47 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# The generator used is:
+set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles")
+
+# The top level Makefile was generated from the following files:
+set(CMAKE_MAKEFILE_DEPENDS
+  "CMakeCache.txt"
+  "CMakeFiles/3.7.2/CMakeCCompiler.cmake"
+  "CMakeFiles/3.7.2/CMakeCXXCompiler.cmake"
+  "CMakeFiles/3.7.2/CMakeSystem.cmake"
+  "CMakeLists.txt"
+  "code/CMakeLists.txt"
+  "/usr/share/cmake-3.7/Modules/CMakeCInformation.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeCXXInformation.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeCommonLanguageInclude.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeGenericSystem.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeLanguageInformation.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeSystemSpecificInformation.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeSystemSpecificInitialize.cmake"
+  "/usr/share/cmake-3.7/Modules/Compiler/GNU-C.cmake"
+  "/usr/share/cmake-3.7/Modules/Compiler/GNU-CXX.cmake"
+  "/usr/share/cmake-3.7/Modules/Compiler/GNU.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/Linux-GNU-C.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/Linux-GNU-CXX.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/Linux-GNU.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/Linux.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/UnixPaths.cmake"
+  )
+
+# The corresponding makefile is:
+set(CMAKE_MAKEFILE_OUTPUTS
+  "Makefile"
+  "CMakeFiles/cmake.check_cache"
+  )
+
+# Byproducts of CMake generate step:
+set(CMAKE_MAKEFILE_PRODUCTS
+  "CMakeFiles/CMakeDirectoryInformation.cmake"
+  "code/CMakeFiles/CMakeDirectoryInformation.cmake"
+  )
+
+# Dependency information for all targets:
+set(CMAKE_DEPEND_INFO_FILES
+  "code/CMakeFiles/scream_receiver.dir/DependInfo.cmake"
+  )
diff --git a/RPI/scream/scream_receiver/CMakeFiles/Makefile2 b/RPI/scream/scream_receiver/CMakeFiles/Makefile2
new file mode 100644
index 0000000..3da6183
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeFiles/Makefile2
@@ -0,0 +1,126 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# The main recursive all target
+all:
+
+.PHONY : all
+
+# The main recursive preinstall target
+preinstall:
+
+.PHONY : preinstall
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver
+
+#=============================================================================
+# Directory level rules for directory code
+
+# Convenience name for "all" pass in the directory.
+code/all: code/CMakeFiles/scream_receiver.dir/all
+
+.PHONY : code/all
+
+# Convenience name for "clean" pass in the directory.
+code/clean: code/CMakeFiles/scream_receiver.dir/clean
+
+.PHONY : code/clean
+
+# Convenience name for "preinstall" pass in the directory.
+code/preinstall:
+
+.PHONY : code/preinstall
+
+#=============================================================================
+# Target rules for target code/CMakeFiles/scream_receiver.dir
+
+# All Build rule for target.
+code/CMakeFiles/scream_receiver.dir/all:
+	$(MAKE) -f code/CMakeFiles/scream_receiver.dir/build.make code/CMakeFiles/scream_receiver.dir/depend
+	$(MAKE) -f code/CMakeFiles/scream_receiver.dir/build.make code/CMakeFiles/scream_receiver.dir/build
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/CMakeFiles --progress-num=1,2,3 "Built target scream_receiver"
+.PHONY : code/CMakeFiles/scream_receiver.dir/all
+
+# Include target in all.
+all: code/CMakeFiles/scream_receiver.dir/all
+
+.PHONY : all
+
+# Build rule for subdir invocation for target.
+code/CMakeFiles/scream_receiver.dir/rule: cmake_check_build_system
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/CMakeFiles 3
+	$(MAKE) -f CMakeFiles/Makefile2 code/CMakeFiles/scream_receiver.dir/all
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/CMakeFiles 0
+.PHONY : code/CMakeFiles/scream_receiver.dir/rule
+
+# Convenience name for target.
+scream_receiver: code/CMakeFiles/scream_receiver.dir/rule
+
+.PHONY : scream_receiver
+
+# clean rule for target.
+code/CMakeFiles/scream_receiver.dir/clean:
+	$(MAKE) -f code/CMakeFiles/scream_receiver.dir/build.make code/CMakeFiles/scream_receiver.dir/clean
+.PHONY : code/CMakeFiles/scream_receiver.dir/clean
+
+# clean rule for target.
+clean: code/CMakeFiles/scream_receiver.dir/clean
+
+.PHONY : clean
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+	$(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/RPI/scream/scream_receiver/CMakeFiles/TargetDirectories.txt b/RPI/scream/scream_receiver/CMakeFiles/TargetDirectories.txt
new file mode 100644
index 0000000..368ba43
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeFiles/TargetDirectories.txt
@@ -0,0 +1,5 @@
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/CMakeFiles/rebuild_cache.dir
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/CMakeFiles/edit_cache.dir
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/CMakeFiles/rebuild_cache.dir
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/CMakeFiles/edit_cache.dir
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/CMakeFiles/scream_receiver.dir
diff --git a/RPI/scream/scream_receiver/CMakeFiles/cmake.check_cache b/RPI/scream/scream_receiver/CMakeFiles/cmake.check_cache
new file mode 100644
index 0000000..3dccd73
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeFiles/cmake.check_cache
@@ -0,0 +1 @@
+# This file is generated by cmake for dependency checking of the CMakeCache.txt file
diff --git a/RPI/scream/scream_receiver/CMakeFiles/feature_tests.bin b/RPI/scream/scream_receiver/CMakeFiles/feature_tests.bin
new file mode 100755
index 0000000000000000000000000000000000000000..6585c4b8a6e80e339754221bccf8504f68df0e72
GIT binary patch
literal 12520
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
V8;ec<QVozS1H(TE1t-z<0{~bDZFK+u

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_receiver/CMakeFiles/feature_tests.c b/RPI/scream/scream_receiver/CMakeFiles/feature_tests.c
new file mode 100644
index 0000000..6590dde
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeFiles/feature_tests.c
@@ -0,0 +1,34 @@
+
+  const char features[] = {"\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404
+"1"
+#else
+"0"
+#endif
+"c_function_prototypes\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+"1"
+#else
+"0"
+#endif
+"c_restrict\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201000L
+"1"
+#else
+"0"
+#endif
+"c_static_assert\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+"1"
+#else
+"0"
+#endif
+"c_variadic_macros\n"
+
+};
+
+int main(int argc, char** argv) { (void)argv; return features[argc]; }
diff --git a/RPI/scream/scream_receiver/CMakeFiles/feature_tests.cxx b/RPI/scream/scream_receiver/CMakeFiles/feature_tests.cxx
new file mode 100644
index 0000000..b93418c
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeFiles/feature_tests.cxx
@@ -0,0 +1,405 @@
+
+  const char features[] = {"\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
+"1"
+#else
+"0"
+#endif
+"cxx_aggregate_default_initializers\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_alias_templates\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_alignas\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_alignof\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_attributes\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_attribute_deprecated\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_auto_type\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_binary_literals\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_constexpr\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_contextual_conversions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_decltype\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_decltype_auto\n"
+"CXX_FEATURE:"
+#if ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40801) && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_decltype_incomplete_return_types\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_default_function_template_args\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_defaulted_functions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_defaulted_move_initializers\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_delegating_constructors\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_deleted_functions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_digit_separators\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_enum_forward_declarations\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_explicit_conversions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_extended_friend_declarations\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_extern_templates\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_final\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_func_identifier\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_generalized_initializers\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_generic_lambdas\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_inheriting_constructors\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_inline_namespaces\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_lambdas\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_lambda_init_captures\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_local_type_template_args\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_long_long_type\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_noexcept\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_nonstatic_member_init\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_nullptr\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_override\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_range_for\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_raw_string_literals\n"
+"CXX_FEATURE:"
+#if ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40801) && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_reference_qualified_functions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
+"1"
+#else
+"0"
+#endif
+"cxx_relaxed_constexpr\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_return_type_deduction\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_right_angle_brackets\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_rvalue_references\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_sizeof_member\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_static_assert\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_strong_enums\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && __cplusplus
+"1"
+#else
+"0"
+#endif
+"cxx_template_template_parameters\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_thread_local\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_trailing_return_types\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_unicode_literals\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_uniform_initialization\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_unrestricted_unions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_user_literals\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
+"1"
+#else
+"0"
+#endif
+"cxx_variable_templates\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_variadic_macros\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_variadic_templates\n"
+
+};
+
+int main(int argc, char** argv) { (void)argv; return features[argc]; }
diff --git a/RPI/scream/scream_receiver/CMakeFiles/progress.marks b/RPI/scream/scream_receiver/CMakeFiles/progress.marks
new file mode 100644
index 0000000..00750ed
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+3
diff --git a/RPI/scream/scream_receiver/CMakeLists.txt b/RPI/scream/scream_receiver/CMakeLists.txt
new file mode 100644
index 0000000..b60cc6e
--- /dev/null
+++ b/RPI/scream/scream_receiver/CMakeLists.txt
@@ -0,0 +1,78 @@
+cmake_minimum_required(VERSION 2.6)
+
+PROJECT( scream )
+
+message("Source Dir:" ${scream_SOURCE_DIR})
+
+SET(EXECUTABLE_OUTPUT_PATH ${scream_SOURCE_DIR}/bin)
+SET(LIBRARY_OUTPUT_PATH ${scream_SOURCE_DIR}/lib)
+SET(RUNTIME_OUTPUT_DIRECTORY ${scream_SOURCE_DIR}/bin)
+
+SET(scream_BIN ${scream_SOURCE_DIR}/bin)
+
+message("scream_SOURCE_DIR directories:" ${scream_SOURCE_DIR})
+
+IF(UNIX)
+add_definitions(-std=c++0x)
+ENDIF(UNIX)
+
+IF(WIN32)
+IF(MSVC12)
+message("Detected MSVC12 compiler")
+set(MSVC_VER VC12)
+ELSEIF(MSVC11)
+message("Detected MSVC11 compiler")
+set(MSVC_VER VC11)
+ELSEIF(MSVC10)
+message("Detected MSVC10 compiler")
+set(MSVC_VER VC10)
+ELSEIF(MSVC14)
+message("Detected MSVC14 compiler")
+set(MSVC_VER VC14)
+ELSE(MSVC12)
+message("WARNING: Unknown/unsupported MSVC version")
+ENDIF(MSVC12)
+ENDIF(WIN32)
+
+if( CMAKE_SIZEOF_VOID_P EQUAL 8 )
+# 64bit
+  message("Detected 64-bit build - compiling with -fPIC")
+  SET(CMAKE_CXX_FLAGS "-fPIC -fpermissive -pthread")
+else( CMAKE_SIZEOF_VOID_P EQUAL 8 )
+# 32 bit
+  message("Detected 32-bit build")
+  SET(CMAKE_CXX_FLAGS "-fPIC -fpermissive -pthread")
+endif( CMAKE_SIZEOF_VOID_P EQUAL 8 )
+
+SET(screamIncludes
+${scream_SOURCE_DIR}
+${scream_SOURCE_DIR}/code
+)
+
+message("screamIncludes directories:" ${screamIncludes})
+
+# lib directories
+IF(WIN32)
+SET(screamLink
+${scream_SOURCE_DIR}/../lib
+)
+ELSEIF(UNIX)
+SET(screamLink
+${scream_SOURCE_DIR}/../lib
+/usr/local/lib
+/usr/lib
+)
+ENDIF(WIN32)
+
+SET(LibDir
+${scream_SOURCE_DIR}/../lib
+)
+
+message("LibDir directories:" ${LibDir})
+
+# Include directories
+INCLUDE_DIRECTORIES(
+${scream_SOURCE_DIR}/../include
+)
+
+ADD_SUBDIRECTORY( code) 
diff --git a/RPI/scream/scream_receiver/Makefile b/RPI/scream/scream_receiver/Makefile
new file mode 100644
index 0000000..03866c0
--- /dev/null
+++ b/RPI/scream/scream_receiver/Makefile
@@ -0,0 +1,148 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+	/usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+
+.PHONY : rebuild_cache/fast
+
+# Special rule for the target edit_cache
+edit_cache:
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+	/usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+
+.PHONY : edit_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/CMakeFiles /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/CMakeFiles/progress.marks
+	$(MAKE) -f CMakeFiles/Makefile2 all
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+	$(MAKE) -f CMakeFiles/Makefile2 clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+	$(MAKE) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+	$(MAKE) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+	$(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+#=============================================================================
+# Target rules for targets named scream_receiver
+
+# Build rule for target.
+scream_receiver: cmake_check_build_system
+	$(MAKE) -f CMakeFiles/Makefile2 scream_receiver
+.PHONY : scream_receiver
+
+# fast build rule for target.
+scream_receiver/fast:
+	$(MAKE) -f code/CMakeFiles/scream_receiver.dir/build.make code/CMakeFiles/scream_receiver.dir/build
+.PHONY : scream_receiver/fast
+
+# Help Target
+help:
+	@echo "The following are some of the valid targets for this Makefile:"
+	@echo "... all (the default if no target is provided)"
+	@echo "... clean"
+	@echo "... depend"
+	@echo "... rebuild_cache"
+	@echo "... edit_cache"
+	@echo "... scream_receiver"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+	$(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/RPI/scream/scream_receiver/bin/scream_receiver b/RPI/scream/scream_receiver/bin/scream_receiver
new file mode 100755
index 0000000000000000000000000000000000000000..c47b99cdac96e737a6236524ac3e10cb45293a67
GIT binary patch
literal 44120
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_receiver/cmake_install.cmake b/RPI/scream/scream_receiver/cmake_install.cmake
new file mode 100644
index 0000000..9750c26
--- /dev/null
+++ b/RPI/scream/scream_receiver/cmake_install.cmake
@@ -0,0 +1,50 @@
+# Install script for directory: /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+  set(CMAKE_INSTALL_PREFIX "/usr/local")
+endif()
+string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+  if(BUILD_TYPE)
+    string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+           CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+  else()
+    set(CMAKE_INSTALL_CONFIG_NAME "")
+  endif()
+  message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+endif()
+
+# Set the component getting installed.
+if(NOT CMAKE_INSTALL_COMPONENT)
+  if(COMPONENT)
+    message(STATUS "Install component: \"${COMPONENT}\"")
+    set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+  else()
+    set(CMAKE_INSTALL_COMPONENT)
+  endif()
+endif()
+
+# Install shared libraries without execute permission?
+if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
+  set(CMAKE_INSTALL_SO_NO_EXE "1")
+endif()
+
+if(NOT CMAKE_INSTALL_LOCAL_ONLY)
+  # Include the install script for each subdirectory.
+  include("/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/cmake_install.cmake")
+
+endif()
+
+if(CMAKE_INSTALL_COMPONENT)
+  set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
+else()
+  set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
+endif()
+
+string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
+       "${CMAKE_INSTALL_MANIFEST_FILES}")
+file(WRITE "/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/${CMAKE_INSTALL_MANIFEST}"
+     "${CMAKE_INSTALL_MANIFEST_CONTENT}")
diff --git a/RPI/scream/scream_receiver/code/CMakeFiles/CMakeDirectoryInformation.cmake b/RPI/scream/scream_receiver/code/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 0000000..cf91cfa
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver")
+
+# Force unix paths in dependencies.
+set(CMAKE_FORCE_UNIX_PATHS 1)
+
+
+# The C and CXX include file regular expressions for this directory.
+set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/RPI/scream/scream_receiver/code/CMakeFiles/progress.marks b/RPI/scream/scream_receiver/code/CMakeFiles/progress.marks
new file mode 100644
index 0000000..00750ed
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+3
diff --git a/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/CXX.includecache b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/CXX.includecache
new file mode 100644
index 0000000..eb75b98
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/CXX.includecache
@@ -0,0 +1,68 @@
+#IncludeRegexLine: ^[ 	]*#[ 	]*(include|import)[ 	]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform: 
+
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/ScreamRx.cpp
+ScreamRx.h
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/ScreamRx.h
+ScreamTx.h
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/ScreamTx.h
+WinSock2.h
+-
+arpa/inet.h
+-
+string.h
+-
+climits
+-
+algorithm
+-
+iostream
+-
+
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/ScreamRx.h
+cstdint
+-
+list
+-
+
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/ScreamTx.h
+string.h
+-
+iostream
+-
+cstdint
+-
+
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/scream_receiver.cpp
+ScreamRx.h
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/ScreamRx.h
+sys/socket.h
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/sys/socket.h
+sys/types.h
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/sys/types.h
+netinet/in.h
+/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/netinet/in.h
+string.h
+-
+sys/socket.h
+-
+netinet/in.h
+-
+arpa/inet.h
+-
+sys/time.h
+-
+iostream
+-
+fcntl.h
+-
+unistd.h
+-
+pthread.h
+-
+
diff --git a/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/DependInfo.cmake b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/DependInfo.cmake
new file mode 100644
index 0000000..a68b657
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/DependInfo.cmake
@@ -0,0 +1,24 @@
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+  "CXX"
+  )
+# The set of files for implicit dependencies of each language:
+set(CMAKE_DEPENDS_CHECK_CXX
+  "/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/ScreamRx.cpp" "/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o"
+  "/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/scream_receiver.cpp" "/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o"
+  )
+set(CMAKE_CXX_COMPILER_ID "GNU")
+
+# The include file search paths:
+set(CMAKE_CXX_TARGET_INCLUDE_PATH
+  "../include"
+  "."
+  "code"
+  )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+  )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o
new file mode 100644
index 0000000000000000000000000000000000000000..a598f59386942976b3168bccf0cc162aa3b0a117
GIT binary patch
literal 35968
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/build.make b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/build.make
new file mode 100644
index 0000000..0e923a8
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/build.make
@@ -0,0 +1,140 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver
+
+# Include any dependencies generated for this target.
+include code/CMakeFiles/scream_receiver.dir/depend.make
+
+# Include the progress variables for this target.
+include code/CMakeFiles/scream_receiver.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include code/CMakeFiles/scream_receiver.dir/flags.make
+
+code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o: code/CMakeFiles/scream_receiver.dir/flags.make
+code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o: code/ScreamRx.cpp
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o"
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code && /usr/bin/c++   $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o -c /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/ScreamRx.cpp
+
+code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.i: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/scream_receiver.dir/ScreamRx.cpp.i"
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code && /usr/bin/c++  $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/ScreamRx.cpp > CMakeFiles/scream_receiver.dir/ScreamRx.cpp.i
+
+code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.s: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/scream_receiver.dir/ScreamRx.cpp.s"
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code && /usr/bin/c++  $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/ScreamRx.cpp -o CMakeFiles/scream_receiver.dir/ScreamRx.cpp.s
+
+code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o.requires:
+
+.PHONY : code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o.requires
+
+code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o.provides: code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o.requires
+	$(MAKE) -f code/CMakeFiles/scream_receiver.dir/build.make code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o.provides.build
+.PHONY : code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o.provides
+
+code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o.provides.build: code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o
+
+
+code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o: code/CMakeFiles/scream_receiver.dir/flags.make
+code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o: code/scream_receiver.cpp
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o"
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code && /usr/bin/c++   $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o -c /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/scream_receiver.cpp
+
+code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.i: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/scream_receiver.dir/scream_receiver.cpp.i"
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code && /usr/bin/c++  $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/scream_receiver.cpp > CMakeFiles/scream_receiver.dir/scream_receiver.cpp.i
+
+code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.s: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/scream_receiver.dir/scream_receiver.cpp.s"
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code && /usr/bin/c++  $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/scream_receiver.cpp -o CMakeFiles/scream_receiver.dir/scream_receiver.cpp.s
+
+code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o.requires:
+
+.PHONY : code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o.requires
+
+code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o.provides: code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o.requires
+	$(MAKE) -f code/CMakeFiles/scream_receiver.dir/build.make code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o.provides.build
+.PHONY : code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o.provides
+
+code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o.provides.build: code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o
+
+
+# Object files for target scream_receiver
+scream_receiver_OBJECTS = \
+"CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o" \
+"CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o"
+
+# External object files for target scream_receiver
+scream_receiver_EXTERNAL_OBJECTS =
+
+bin/scream_receiver: code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o
+bin/scream_receiver: code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o
+bin/scream_receiver: code/CMakeFiles/scream_receiver.dir/build.make
+bin/scream_receiver: code/CMakeFiles/scream_receiver.dir/link.txt
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Linking CXX executable ../bin/scream_receiver"
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/scream_receiver.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+code/CMakeFiles/scream_receiver.dir/build: bin/scream_receiver
+
+.PHONY : code/CMakeFiles/scream_receiver.dir/build
+
+code/CMakeFiles/scream_receiver.dir/requires: code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o.requires
+code/CMakeFiles/scream_receiver.dir/requires: code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o.requires
+
+.PHONY : code/CMakeFiles/scream_receiver.dir/requires
+
+code/CMakeFiles/scream_receiver.dir/clean:
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code && $(CMAKE_COMMAND) -P CMakeFiles/scream_receiver.dir/cmake_clean.cmake
+.PHONY : code/CMakeFiles/scream_receiver.dir/clean
+
+code/CMakeFiles/scream_receiver.dir/depend:
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/CMakeFiles/scream_receiver.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : code/CMakeFiles/scream_receiver.dir/depend
+
diff --git a/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/cmake_clean.cmake b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/cmake_clean.cmake
new file mode 100644
index 0000000..3424e1a
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/cmake_clean.cmake
@@ -0,0 +1,11 @@
+file(REMOVE_RECURSE
+  "CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o"
+  "CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o"
+  "../bin/scream_receiver.pdb"
+  "../bin/scream_receiver"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+  include(CMakeFiles/scream_receiver.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/depend.internal b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/depend.internal
new file mode 100644
index 0000000..15dd4ba
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/depend.internal
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o
+ /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/ScreamRx.cpp
+ /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/ScreamRx.h
+ /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/ScreamTx.h
+code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o
+ /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/ScreamRx.h
+ /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/scream_receiver.cpp
diff --git a/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/depend.make b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/depend.make
new file mode 100644
index 0000000..6ec4d46
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/depend.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o: code/ScreamRx.cpp
+code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o: code/ScreamRx.h
+code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o: code/ScreamTx.h
+
+code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o: code/ScreamRx.h
+code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o: code/scream_receiver.cpp
+
diff --git a/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/flags.make b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/flags.make
new file mode 100644
index 0000000..51f56cd
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -fPIC -fpermissive -pthread   -std=c++0x
+
+CXX_DEFINES = 
+
+CXX_INCLUDES = -I/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/../include -I/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver -I/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code 
+
diff --git a/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/link.txt b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/link.txt
new file mode 100644
index 0000000..d355ab8
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/link.txt
@@ -0,0 +1 @@
+/usr/bin/c++   -fPIC -fpermissive -pthread   CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o  -o ../bin/scream_receiver  -L/home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/../lib  -L/usr/local/lib -rdynamic 
diff --git a/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/progress.make b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/progress.make
new file mode 100644
index 0000000..6a9dc74
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/progress.make
@@ -0,0 +1,4 @@
+CMAKE_PROGRESS_1 = 1
+CMAKE_PROGRESS_2 = 2
+CMAKE_PROGRESS_3 = 3
+
diff --git a/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o b/RPI/scream/scream_receiver/code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o
new file mode 100644
index 0000000000000000000000000000000000000000..b4503a98a7fc89d72ef9d6a7f3b79c2688a918af
GIT binary patch
literal 23304
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_receiver/code/CMakeLists.txt b/RPI/scream/scream_receiver/code/CMakeLists.txt
new file mode 100644
index 0000000..b1a64ce
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/CMakeLists.txt
@@ -0,0 +1,30 @@
+# source files
+SET(SRCS
+ScreamRx.cpp
+scream_receiver.cpp
+)
+
+SET(HEADERS
+ScreamRx.h
+)
+
+SET(SRC_1
+${SRCS}
+scream_receiver.cpp
+)
+
+INCLUDE_DIRECTORIES(
+${screamIncludes}
+)
+
+LINK_DIRECTORIES(
+${screamLink}
+)
+
+ADD_EXECUTABLE(scream_receiver ${SRC_1} ${HEADERS})
+
+
+TARGET_LINK_LIBRARIES (
+scream_receiver
+${screamLibs}
+)
diff --git a/RPI/scream/scream_receiver/code/Makefile b/RPI/scream/scream_receiver/code/Makefile
new file mode 100644
index 0000000..26d444d
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/Makefile
@@ -0,0 +1,210 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+	/usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+
+.PHONY : rebuild_cache/fast
+
+# Special rule for the target edit_cache
+edit_cache:
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+	/usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+
+.PHONY : edit_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(CMAKE_COMMAND) -E cmake_progress_start /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/CMakeFiles /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code/CMakeFiles/progress.marks
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(MAKE) -f CMakeFiles/Makefile2 code/all
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(MAKE) -f CMakeFiles/Makefile2 code/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(MAKE) -f CMakeFiles/Makefile2 code/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(MAKE) -f CMakeFiles/Makefile2 code/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+code/CMakeFiles/scream_receiver.dir/rule:
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(MAKE) -f CMakeFiles/Makefile2 code/CMakeFiles/scream_receiver.dir/rule
+.PHONY : code/CMakeFiles/scream_receiver.dir/rule
+
+# Convenience name for target.
+scream_receiver: code/CMakeFiles/scream_receiver.dir/rule
+
+.PHONY : scream_receiver
+
+# fast build rule for target.
+scream_receiver/fast:
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(MAKE) -f code/CMakeFiles/scream_receiver.dir/build.make code/CMakeFiles/scream_receiver.dir/build
+.PHONY : scream_receiver/fast
+
+ScreamRx.o: ScreamRx.cpp.o
+
+.PHONY : ScreamRx.o
+
+# target to build an object file
+ScreamRx.cpp.o:
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(MAKE) -f code/CMakeFiles/scream_receiver.dir/build.make code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.o
+.PHONY : ScreamRx.cpp.o
+
+ScreamRx.i: ScreamRx.cpp.i
+
+.PHONY : ScreamRx.i
+
+# target to preprocess a source file
+ScreamRx.cpp.i:
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(MAKE) -f code/CMakeFiles/scream_receiver.dir/build.make code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.i
+.PHONY : ScreamRx.cpp.i
+
+ScreamRx.s: ScreamRx.cpp.s
+
+.PHONY : ScreamRx.s
+
+# target to generate assembly for a file
+ScreamRx.cpp.s:
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(MAKE) -f code/CMakeFiles/scream_receiver.dir/build.make code/CMakeFiles/scream_receiver.dir/ScreamRx.cpp.s
+.PHONY : ScreamRx.cpp.s
+
+scream_receiver.o: scream_receiver.cpp.o
+
+.PHONY : scream_receiver.o
+
+# target to build an object file
+scream_receiver.cpp.o:
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(MAKE) -f code/CMakeFiles/scream_receiver.dir/build.make code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.o
+.PHONY : scream_receiver.cpp.o
+
+scream_receiver.i: scream_receiver.cpp.i
+
+.PHONY : scream_receiver.i
+
+# target to preprocess a source file
+scream_receiver.cpp.i:
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(MAKE) -f code/CMakeFiles/scream_receiver.dir/build.make code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.i
+.PHONY : scream_receiver.cpp.i
+
+scream_receiver.s: scream_receiver.cpp.s
+
+.PHONY : scream_receiver.s
+
+# target to generate assembly for a file
+scream_receiver.cpp.s:
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(MAKE) -f code/CMakeFiles/scream_receiver.dir/build.make code/CMakeFiles/scream_receiver.dir/scream_receiver.cpp.s
+.PHONY : scream_receiver.cpp.s
+
+# Help Target
+help:
+	@echo "The following are some of the valid targets for this Makefile:"
+	@echo "... all (the default if no target is provided)"
+	@echo "... clean"
+	@echo "... depend"
+	@echo "... rebuild_cache"
+	@echo "... edit_cache"
+	@echo "... scream_receiver"
+	@echo "... ScreamRx.o"
+	@echo "... ScreamRx.i"
+	@echo "... ScreamRx.s"
+	@echo "... scream_receiver.o"
+	@echo "... scream_receiver.i"
+	@echo "... scream_receiver.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+	cd /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/RPI/scream/scream_receiver/code/ScreamRx.cpp b/RPI/scream/scream_receiver/code/ScreamRx.cpp
new file mode 100644
index 0000000..8f43c82
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/ScreamRx.cpp
@@ -0,0 +1,305 @@
+#include "ScreamRx.h"
+#include "ScreamTx.h"
+#ifdef _MSC_VER
+#define NOMINMAX
+#include <WinSock2.h>
+#else
+#include <arpa/inet.h>
+#endif
+#include <string.h>
+#include <climits>
+#include <algorithm>
+#include <iostream>
+using namespace std;
+
+
+ScreamRx::Stream::Stream(uint32_t ssrc_) {
+    ssrc = ssrc_;
+    ackVector = 0;
+    receiveTimestamp = 0x0;
+    highestSeqNr = 0x0;
+    highestSeqNrTx = 0x0;
+    lastFeedbackT_us = 0;
+    nRtpSinceLastRtcp = 0;
+    firstReceived = false;
+    ecnCeMarkedBytes = 0;
+}
+
+bool ScreamRx::Stream::checkIfFlushAck() {
+    int diff = highestSeqNr - highestSeqNrTx;
+    return (diff > (kAckVectorBits / 4));
+}
+
+void ScreamRx::Stream::receive(uint64_t time_us,
+    void* rtpPacket,
+    int size,
+    uint16_t seqNr,
+    bool isEcnCe) {
+    nRtpSinceLastRtcp++;
+    /*
+    * Make things wrap-around safe
+    */
+    if (firstReceived == false) {
+        highestSeqNr = seqNr;
+        highestSeqNr--;
+        firstReceived = true;
+    }
+
+    uint32_t seqNrExt = seqNr;
+    uint32_t highestSeqNrExt = highestSeqNr;
+    if (seqNr < highestSeqNr) {
+        if (highestSeqNr - seqNr > 16384)
+            seqNrExt += 65536;
+    }
+    if (highestSeqNr < seqNr) {
+        if (seqNr - highestSeqNr > 16384)
+            highestSeqNrExt += 65536;
+    }
+
+    /*
+    * Update the ACK vector that indicates receiption '=1' of RTP packets prior to
+    * the highest received sequence number. 
+    * The next highest SN is indicated by the least significant bit,
+    * this means that for the first received RTP, the ACK vector is
+    * 0x0, for the second received RTP, the ACK vector it is 0x1, for the third 0x3 and so
+    * on, provided that no packets are lost.
+    * A 64 bit ACK vector means that it theory it is possible to send one feedback every
+    * 64 RTP packets, while this can possibly work at low bitrates, it is less likely to work
+    * at high bitrates because the ACK clocking in SCReAM is disturbed then.
+    */
+    if (seqNrExt >= highestSeqNrExt) {
+        /*
+        * Normal in-order reception
+        */
+        uint16_t diff = seqNrExt - highestSeqNrExt;
+        if (diff != 0) {
+            if (diff >= kAckVectorBits) {
+                ackVector = 0x0000;
+            }
+            else {
+                // Fill with potential zeros
+                ackVector = ackVector << diff;
+                // Add previous highest seq nr to ack vector
+                ackVector |= (INT64_C(1) << (diff - 1));
+            }
+        }
+        highestSeqNr = seqNr;
+    }
+    else {
+        /*
+        * Out-of-order reception
+        */
+        uint16_t diff = highestSeqNrExt - seqNrExt;
+        if (diff < kAckVectorBits) {
+            ackVector = ackVector | (INT64_C(1) << (diff - 1));
+        }
+    }
+    receiveTimestamp = (uint32_t)(time_us / 1000);
+
+    if (isEcnCe)
+        ecnCeMarkedBytes += size;
+}
+
+ScreamRx::ScreamRx(uint32_t ssrc_) {
+    lastFeedbackT_us = 0;
+    bytesReceived = 0;
+    lastRateComputeT_us = 0;
+    averageReceivedRate = 1e5;
+    rtcpFbInterval_us = 20000;
+    ssrc = ssrc_;
+    ix = 0;
+}
+
+bool ScreamRx::checkIfFlushAck() {
+    if (!streams.empty()) {
+        for (auto it = streams.begin(); it != streams.end(); ++it) {
+            if ((*it)->checkIfFlushAck())
+               return true; 
+        }
+    }
+    return false;
+}
+
+void ScreamRx::receive(uint64_t time_us,
+    void* rtpPacket,
+    uint32_t ssrc,
+    int size,
+    uint16_t seqNr,
+    bool isEcnCe) {
+    bytesReceived += size;
+    if (lastRateComputeT_us == 0)
+        lastRateComputeT_us = time_us;
+
+    if (time_us - lastRateComputeT_us > 100000) {
+        /*
+        * Media rate computation (for all medias) is done at least every 100ms
+        * This is used for RTCP feedback rate calculation
+        */
+        float delta = (time_us - lastRateComputeT_us) * 1e-6f;
+        lastRateComputeT_us = time_us;
+        averageReceivedRate = std::max(0.95f*averageReceivedRate, bytesReceived * 8 / delta);
+        bytesReceived = 0;
+        /*
+        * The RTCP feedback rate depends on the received media date
+        * Target ~2% overhead but with feedback interval limited
+        *  to the range [2ms,100ms]
+        */
+        float rate = 0.02*averageReceivedRate / (70.0f * 8.0f); // RTCP overhead
+        rate = std::min(500.0f, std::max(10.0f, rate));
+        /*
+        * More than one stream ?, increase the feedback rate as
+        *  we currently don't bundle feedback packets
+        */
+        rate *= streams.size();
+        rtcpFbInterval_us = uint64_t(1000000.0f / rate);
+    }
+
+    if (!streams.empty()) {
+        for (auto it = streams.begin(); it != streams.end(); ++it) {
+            if ((*it)->isMatch(ssrc)) {
+                /*
+                * Packets for this SSRC received earlier
+                * stream is thus already in list
+                */
+                (*it)->receive(time_us, rtpPacket, size, seqNr, isEcnCe);
+                return;
+
+            }
+        }
+    }
+    /*
+    * New {SSRC,PT}
+    */
+    Stream *stream = new Stream(ssrc);
+    stream->ix = ix++;
+    stream->receive(time_us, rtpPacket, size, seqNr, isEcnCe);
+    streams.push_back(stream);
+}
+
+
+uint64_t ScreamRx::getRtcpFbInterval() {
+    return rtcpFbInterval_us;
+}
+
+bool ScreamRx::isFeedback(uint64_t time_us) {
+    if (!streams.empty()) {
+        for (auto it = streams.begin(); it != streams.end(); ++it) {
+            Stream *stream = (*it);
+            if (stream->nRtpSinceLastRtcp >= 1) {
+                return true;
+            }
+        }
+    }
+    return false;
+}
+
+int ScreamRx::getIx(uint32_t ssrc) {
+    if (!streams.empty()) {
+        for (auto it = streams.begin(); it != streams.end(); ++it) {
+            Stream *stream = (*it);
+            if (ssrc == stream->ssrc)
+                return stream->ix;
+        }
+    }
+    return -1;
+}
+
+bool ScreamRx::getFeedback(uint64_t time_us,
+    uint32_t &ssrc,
+    uint32_t &receiveTimestamp,
+    uint16_t &highestSeqNr,
+    uint64_t &ackVector,
+    uint16_t &ecnCeMarkedBytes) {
+
+    Stream *stream = NULL;
+    uint64_t minT_us = ULLONG_MAX;
+    for (auto it = streams.begin(); it != streams.end(); ++it) {
+        if ((*it)->nRtpSinceLastRtcp > 0 && (*it)->lastFeedbackT_us < minT_us) {
+            stream = *it;
+            minT_us = (*it)->lastFeedbackT_us;
+
+        }
+    }
+
+    if (stream == NULL)
+        return false;
+
+    receiveTimestamp = stream->receiveTimestamp;
+    highestSeqNr = stream->highestSeqNr;
+    stream->highestSeqNrTx = highestSeqNr;
+    ssrc = stream->ssrc;
+    ackVector = stream->ackVector;
+    ecnCeMarkedBytes = stream->ecnCeMarkedBytes;
+    stream->lastFeedbackT_us = time_us;
+    stream->nRtpSinceLastRtcp = 0;
+    lastFeedbackT_us = time_us;
+    return true;
+}
+
+/*
+* Create feedback according to the format below. It is up to the
+* wrapper application to prepend this RTCP with SR or RR when needed
+* BT = 255, means that this is experimental use
+* The code currently only handles one SSRC source per IP packet
+*
+* 0                   1                   2                   3
+* 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |V=2|P|reserved |   PT=XR=207   |           length=6            |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                              SSRC                             |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |     BT=255    |    reserved   |         block length=4        |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                        SSRC of source                         |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* | Highest recv. seq. nr. (16b)  |         ECN_CE_bytes          |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                     Ack vector (b0-31)                        |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                     Ack vector (b32-63)                       |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                    Timestamp (32bits)                         |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+*/
+bool ScreamRx::createFeedback(uint64_t time_us, unsigned char *buf, int &size) {
+
+    if (!isFeedback(time_us))
+        return false;
+    uint32_t timeStamp;
+    uint16_t seqNr;
+    uint64_t ackVector;
+    uint16_t ecnCeMarkedBytes;
+    uint32_t ssrc_src;
+    size = 32;
+    if (getFeedback(time_us, ssrc_src, timeStamp, seqNr, ackVector, ecnCeMarkedBytes)) {
+        uint16_t tmp_s;
+        uint32_t tmp_l;
+        buf[0] = 0x80;
+        buf[1] = 207;
+        tmp_s = htons(6);
+        memcpy(buf + 2, &tmp_s, 2);
+        tmp_l = htonl(ssrc);
+        memcpy(buf + 4, &tmp_l, 4);
+        buf[8] = 0xFF; // BT=255
+        buf[9] = 0x00;
+        tmp_s = htons(4);
+        memcpy(buf + 10, &tmp_s, 2);
+        tmp_l = htonl(ssrc_src);
+        memcpy(buf + 12, &tmp_l, 4);
+        tmp_s = htons(seqNr);
+        memcpy(buf + 16, &tmp_s, 2);
+        tmp_s = htons(ecnCeMarkedBytes);
+        memcpy(buf + 18, &tmp_s, 2);
+        tmp_l = uint32_t((ackVector >> 32) & 0xFFFFFFFF);
+        tmp_l = htonl(tmp_l);
+        memcpy(buf + 20, &tmp_l, 4);
+        tmp_l = uint32_t(ackVector & 0xFFFFFFFF);
+        tmp_l = htonl(tmp_l);
+        memcpy(buf + 24, &tmp_l, 4);
+        tmp_l = htonl(timeStamp);
+        memcpy(buf + 28, &tmp_l, 4);
+        return true;
+    }
+    return false;
+}
diff --git a/RPI/scream/scream_receiver/code/ScreamRx.h b/RPI/scream/scream_receiver/code/ScreamRx.h
new file mode 100644
index 0000000..f1d9e83
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/ScreamRx.h
@@ -0,0 +1,146 @@
+#ifndef SCREAM_RX
+#define SCREAM_RX
+#include <cstdint>
+#include <list>
+const int kAckVectorBits = 64;
+
+/*
+* This module implements the receiver side of SCReAM.
+* As SCReAM is a sender based congestion control, the receiver side is
+*  actually dumber than dumb. In essense the only thing that it does is to
+*  + Record receive time stamps and RTP sequence numbers for incoming RTP packets
+*  + Generate RTCP feedback elements
+*  + Calculate an appropriate RTCP feedback interval
+* See https://github.com/EricssonResearch/scream/blob/master/SCReAM-description.pdf
+*  for details on how it is integrated in audio/video platforms.
+* A full implementation needs the additional code for
+*  + RTCP feedback (e.g using RFC3611 XR elements)
+*  + Other obvious stuff such as RTP payload depacketizer, video+audio deoders, rendering, dejitterbuffers
+* It is recommended that RTCP feedback for multiple streams are bundled in one RTCP packet.
+*  However as low bitrate media (e.g audio) requires a lower feedback rate than high bitrate media (e.g video)
+*  it is possible to include RTCP feedback for the audio stream more seldom. The code for this is T.B.D
+*/
+class ScreamRx {
+public:
+    ScreamRx(uint32_t ssrc); // SSRC of this RTCP session
+    /*
+    * One instance is created for each source SSRC
+    */
+    class Stream {
+    public:
+        Stream(uint32_t ssrc);
+
+        bool isMatch(uint32_t ssrc_) { return ssrc == ssrc_; };
+
+        bool checkIfFlushAck();
+        /*
+        * Receive RTP packet
+        */
+        void receive(uint64_t time_us,
+            void *rtpPacket,
+            int size,
+            uint16_t seqNr,
+            bool isEcnCe);
+
+        uint32_t ssrc;                // SSRC of stream (source SSRC)
+        uint16_t highestSeqNr;        // Highest received sequence number
+        uint16_t highestSeqNrTx;      // Highest fed back sequence number
+        uint32_t receiveTimestamp;    // Wall clock time
+        uint64_t ackVector;           // List of received packets
+        uint16_t ecnCeMarkedBytes;    // Number of ECN-CE marked bytes
+                                      //  (i.e size of RTP packets with CE set in IP header)
+
+        uint64_t lastFeedbackT_us;    // Last time feedback transmitted for
+                                      //  this SSRC
+        int nRtpSinceLastRtcp;        // Number of RTP packets since last transmitted RTCP
+
+        bool firstReceived;
+
+        float timeStampConversionFactor;
+
+        int ix;
+    };
+
+    /*
+    * Check to ensure that ACK vector can cover also large holes in
+    *  in the received sequence number space. These cases can frequently occur when
+    *  SCReAM is used in frame discard mode i.e. when real video rate control is
+    *  not possible 
+    */
+    bool checkIfFlushAck();
+
+    /*
+    * Function is called each time an RTP packet is received
+    */
+    void receive(uint64_t time_us,
+        void* rtpPacket,
+        uint32_t ssrc,
+        int size,
+        uint16_t seqNr,
+        bool isEcnCe = false);
+
+    /*
+    * Return TRUE if an RTP packet has been received and there is
+    * pending feedback
+    */
+    bool isFeedback(uint64_t time_us);
+
+    uint64_t getRtcpFbInterval();
+
+    /*
+    * Get SCReAM RTCP feedback elements
+    * return FALSE if no pending feedback available
+    */
+    bool getFeedback(uint64_t time_us,
+        uint32_t &ssrc,
+        uint32_t &receiveTimestamp,
+        uint16_t &highestSeqNr,
+        uint64_t &ackVector,
+        uint16_t &ecnCeMarkedBytes);
+
+    /*
+    * Create feedback according to the format below. It is up to the
+    * wrapper application to prepend this RTCP with SR or RR when needed
+    * BT = 255, means that this is experimental use
+    *
+    * 0                   1                   2                   3
+    * 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |V=2|P|reserved |   PT=XR=207   |           length=6            |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                              SSRC                             |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |     BT=255    |    reserved   |         block length=4        |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                        SSRC of source                         |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * | Highest recv. seq. nr. (16b)  |         ECN_CE_bytes          |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                     Ack vector (b0-31)                        |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                     Ack vector (b32-63)                       |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                    Timestamp (32bits)                         |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    */
+    bool createFeedback(uint64_t time_us, unsigned char *buf, int &size);
+
+    uint64_t getLastFeedbackT() { return lastFeedbackT_us; };
+
+    uint64_t lastFeedbackT_us;
+    int bytesReceived;
+    uint64_t lastRateComputeT_us;
+    float averageReceivedRate;
+    uint64_t rtcpFbInterval_us;
+    uint32_t ssrc;
+
+    int getIx(uint32_t ssrc);
+    int ix;
+
+    /*
+    * Variables for multiple steams handling
+    */
+    std::list<Stream*> streams;
+};
+
+#endif
diff --git a/RPI/scream/scream_receiver/code/ScreamTx.cpp b/RPI/scream/scream_receiver/code/ScreamTx.cpp
new file mode 100644
index 0000000..9017d69
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/ScreamTx.cpp
@@ -0,0 +1,1859 @@
+#include "RtpQueue.h"
+#include "ScreamTx.h"
+#include "ScreamRx.h"
+#ifdef _MSC_VER
+#define NOMINMAX
+#include <winSock2.h>
+#else
+#include <arpa/inet.h>
+#endif
+#include <cstdint>
+#include <cmath>
+#include <string.h>
+#include <iostream>
+#include <algorithm>
+#include <stdio.h>
+#include <stdlib.h>
+#include <math.h>
+
+// === Some good to have features, SCReAM works also
+//     with these disabled
+// Fast start can resume if little or no congestion detected
+static const bool kEnableConsecutiveFastStart = true;
+// Packet pacing reduces jitter
+static const bool kEnablePacketPacing = true;
+static const float kPacketPacingHeadRoom = 1.25f;
+
+// Rate update interval
+static const uint64_t kRateAdjustInterval_us = 200000; // 200ms
+
+// ==== Less important tuning parameters ====
+// Min pacing interval and min pacing rate
+static const float kMinPaceInterval = 0.000f;
+static const float kMinimumBandwidth = 5000.0f; // bps
+// Initial MSS, this is set quite low in order to make it possible to
+//  use SCReAM with audio only
+static const int kInitMss = 100;
+
+// Min and max queue delay target
+static const float kQueueDelayTargetMax = 0.3f; //ms
+
+// Congestion window validation
+static const float kBytesInFlightHistInterval_us = 1000000; // Time (s) between stores 1s
+static const float kMaxBytesInFlightHeadRoom = 1.1f;
+// Queue delay trend and shared bottleneck detection
+static const uint64_t kQueueDelayFractionHistInterval_us = 50000; // 50ms
+// video rate estimation update period
+static const uint64_t kRateUpdateInterval_us = 50000;  // 50ms
+
+// Packet reordering margin (us)
+static const uint64_t kReorderTime_us = 20000;
+static const uint64_t kMinRtpQueueDiscardInterval_us = 1000000;
+
+// Update interval for base delay history
+static const uint64_t kBaseDelayUpdateInterval_us = 10000000;
+
+// Min CWND in MSS
+static int kMinCwndMss = 3;
+
+ScreamTx::ScreamTx(float lossBeta_,
+    float ecnCeBeta_,
+    float queueDelayTargetMin_,
+    bool enableSbd_,
+    float gainUp_,
+    float gainDown_,
+    int cwnd_,
+    float cautiousPacing_,
+    int bytesInFlightHistSize_,
+    bool openWindow_
+    )
+    : sRttSh_us(0),
+    lossBeta(lossBeta_),
+    ecnCeBeta(ecnCeBeta_),
+    queueDelayTargetMin(queueDelayTargetMin_),
+    enableSbd(enableSbd_),
+    gainUp(gainUp_),
+    gainDown(gainDown_),
+    cautiousPacing(cautiousPacing_),
+    bytesInFlightHistSize(bytesInFlightHistSize_),
+    openWindow(openWindow_),
+    sRtt_us(0),
+    sRtt(0.0f),
+    ackedOwd(0),
+    baseOwd(UINT32_MAX),
+    queueDelay(0.0),
+    queueDelayFractionAvg(0.0),
+    queueDelayTrend(0.0),
+    queueDelayTarget(queueDelayTargetMin),
+    queueDelaySbdVar(0.0),
+    queueDelaySbdMean(0.0),
+    queueDelaySbdMeanSh(0.0),
+
+    bytesNewlyAcked(0),
+    mss(kInitMss),
+    cwnd(kInitMss * 2),
+    cwndMin(kInitMss * 2),
+    lastBytesInFlightT_us(0),
+    bytesInFlightMaxLo(0),
+    bytesInFlightMaxHi(0),
+    bytesInFlightHistLoMem(0),
+    bytesInFlightHistHiMem(0),
+    maxBytesInFlight(0.0f),
+
+    lossEvent(false),
+    wasLossEvent(false),
+    lossEventRate(0.0),
+    ecnCeEvent(false),
+
+    inFastStart(true),
+
+    paceInterval_us(0),
+    paceInterval(0.0),
+    rateTransmittedAvg(0.0),
+
+    isInitialized(false),
+    lastSRttUpdateT_us(0),
+    lastBaseOwdAddT_us(0),
+    baseOwdResetT_us(0),
+    lastAddToQueueDelayFractionHistT_us(0),
+    lastLossEventT_us(0),
+    lastTransmitT_us(0),
+    nextTransmitT_us(0),
+    lastRateUpdateT_us(0),
+    accBytesInFlightMax(0),
+    nAccBytesInFlightMax(0),
+    rateTransmitted(0.0f),
+    rateAcked(0.0f),
+    queueDelayTrendMem(0.0f),
+    lastCwndUpdateT_us(0),
+    bytesInFlight(0),
+    lastBaseDelayRefreshT_us(0),
+    maxRate(0.0f),
+    baseOwdHistMin(UINT32_MAX)
+{
+    if (cwnd_ == 0) {
+        cwnd = kInitMss * 2;
+    }
+    else {
+        cwnd = cwnd_;
+    }
+    if (openWindow) {
+        cwndMin = 10000000;
+        cwnd = cwndMin;
+    }
+
+    for (int n = 0; n < kBaseOwdHistSize; n++)
+        baseOwdHist[n] = UINT32_MAX;
+    baseOwdHistPtr = 0;
+    for (int n = 0; n < kQueueDelayFractionHistSize; n++)
+        queueDelayFractionHist[n] = 0.0f;
+    queueDelayFractionHistPtr = 0;
+    for (int n = 0; n < kQueueDelayNormHistSize; n++)
+        queueDelayNormHist[n] = 0.0f;
+    queueDelayNormHistPtr = 0;
+    for (int n = 0; n < kBytesInFlightHistSizeMax; n++) {
+        bytesInFlightHistLo[n] = 0;
+        bytesInFlightHistHi[n] = 0;
+    }
+    bytesInFlightHistPtr = 0;
+    nStreams = 0;
+    for (int n = 0; n < kMaxStreams; n++)
+        streams[n] = NULL;
+
+    queueDelayMax = 0.0f;
+    queueDelayMinAvg = 0.0f;
+    queueDelayMin = 1000.0;
+
+    statistics = new Statistics();
+}
+
+ScreamTx::~ScreamTx() {
+    for (int n = 0; n < nStreams; n++)
+        delete streams[n];
+    delete statistics;
+}
+
+ScreamTx::Statistics::Statistics() {
+    sumRateTx = 0.0f;
+    sumRateLost = 0.0f;
+    avgRateTx = 0.0f;
+    avgRtt = 0.0f;
+    avgQueueDelay = 0.0f;
+    rateLostAcc = 0.0f;
+    rateLostN = 0;
+    for (int n = 0; n < kLossRateHistSize; n++) {
+        lossRateHist[n] = 0.0f;
+    }
+    lossRateHistPtr = 0;
+}
+
+void ScreamTx::Statistics::add(float rateTx, float rateLost, float rtt, float queueDelay) {
+    const float alpha = 0.98f;
+    sumRateTx += rateTx;
+    sumRateLost += rateLost;
+    if (avgRateTx == 0.0f) {
+        avgRateTx = rateTx;
+        avgRtt = rtt;
+        avgQueueDelay = queueDelay;
+    }
+    else {
+        avgRateTx = alpha*avgRateTx + (1.0f - alpha)*rateTx;
+        rateLostAcc += rateLost;
+        rateLostN++;
+        if (rateLostN == 10) {
+            rateLostAcc /= 10;
+            rateLostN = 0;
+            float lossRate = 0.0f;
+            if (rateTx > 0)
+                lossRate = rateLostAcc / rateTx*100.0f;
+            lossRateHist[lossRateHistPtr] = lossRate;
+            lossRateHistPtr = (lossRateHistPtr + 1) % kLossRateHistSize;
+        }
+        avgRtt = alpha*avgRtt + (1.0f - alpha)*rtt;
+        avgQueueDelay = alpha*avgQueueDelay + (1.0f - alpha)*queueDelay;
+    }
+}
+
+void ScreamTx::Statistics::getSummary(float time, char s[]) {
+    float lossRate = 0.0f;
+    for (int n = 0; n < kLossRateHistSize; n++)
+        lossRate += lossRateHist[n];
+    lossRate /= kLossRateHistSize;
+    float lossRateLong = 0.0f;
+    if (sumRateTx > 100000.0f) {
+        lossRateLong = sumRateLost / sumRateTx*100.0f;
+    }
+    sprintf(s, "%5.1f  Transmit rate = %5.0fkbps, PLR = %5.2f%%(%5.2f%%), RTT = %5.3fs, Queue delay = %5.3fs",
+        time,
+        avgRateTx / 1000.0f,
+        lossRate,
+        lossRateLong,
+        avgRtt,
+        avgQueueDelay);
+}
+
+/*
+* Register new stream
+*/
+void ScreamTx::registerNewStream(RtpQueueIface *rtpQueue,
+    uint32_t ssrc,
+    float priority,
+    float minBitrate,
+    float startBitrate,
+    float maxBitrate,
+    float rampUpSpeed,
+    float maxRtpQueueDelay,
+    float txQueueSizeFactor,
+    float queueDelayGuard,
+    float lossEventRateScale,
+    float ecnCeEventRateScale) {
+    Stream *stream = new Stream(this,
+        rtpQueue,
+        ssrc,
+        priority,
+        minBitrate,
+        startBitrate,
+        maxBitrate,
+        rampUpSpeed,
+        maxRtpQueueDelay,
+        txQueueSizeFactor,
+        queueDelayGuard,
+        lossEventRateScale,
+        ecnCeEventRateScale);
+    streams[nStreams++] = stream;
+}
+
+void ScreamTx::updateBitrateStream(uint32_t ssrc,
+    float minBitrate,
+    float maxBitrate) {
+    Stream *stream = getStream(ssrc);
+    stream->minBitrate = minBitrate;
+    stream->maxBitrate = maxBitrate;
+}
+
+RtpQueueIface * ScreamTx::getStreamQueue(uint32_t ssrc) {
+    Stream* stream = getStream(ssrc);
+    return stream->rtpQueue;
+}
+
+
+/*
+* New media frame
+*/
+void ScreamTx::newMediaFrame(uint64_t time_us, uint32_t ssrc, int bytesRtp) {
+    if (!isInitialized) initialize(time_us);
+
+    Stream *stream = getStream(ssrc);
+    stream->updateTargetBitrate(time_us);
+    if (time_us - lastCwndUpdateT_us < 500000) {
+        /*
+        * We expect feedback at least every 500ms
+        * to update the target rate.
+        */
+        stream->updateTargetBitrate(time_us);
+    }
+    if (time_us - lastBaseDelayRefreshT_us < sRtt_us * 2) {
+        /*
+        * _Very_ long periods of congestion can cause the base delay to increase
+        * with the effect that the queue delay is estimated wrong, therefore we seek to
+        * refresh the whole thing by deliberately allowing the network queue to drain
+        * Clear the RTP queue for 2 RTTs, this will allow the queue to drain so that we
+        * get a good estimate for the min queue delay.
+        * This funtion is executed very seldom so it should not affect overall experience too much
+        */
+        stream->rtpQueue->clear();
+    }
+    else {
+        stream->bytesRtp += bytesRtp;
+        /*
+        * Need to update MSS here, otherwise it will be nearly impossible to
+        * transmit video packets, this because of the small initial MSS
+        * which is necessary to make SCReAM work with audio only
+        */
+        int sizeOfNextRtp = stream->rtpQueue->sizeOfNextRtp();
+        mss = std::max(mss, sizeOfNextRtp);
+        if (!openWindow)
+            cwndMin = 2 * mss;
+        cwnd = max(cwnd, cwndMin);
+    }
+}
+
+/*
+* Determine if OK to transmit RTP packet
+*/
+float ScreamTx::isOkToTransmit(uint64_t time_us, uint32_t &ssrc) {
+    if (!isInitialized) initialize(time_us);
+    /*
+    * Update rateTransmitted and rateAcked if time for it
+    * This is used in video rate computation
+    * The update interval is doubled at very low bitrates,
+    * the reason is that the feedback interval is very low then and
+    * a longer window is needed to avoid aliasing effects
+    */
+    uint64_t tmp = kRateUpdateInterval_us;
+
+    if (rateAcked < 50000.0f) {
+        tmp *= 2;
+    }
+
+    if (time_us - lastRateUpdateT_us > tmp) {
+        rateTransmitted = 0.0;
+        rateAcked = 0.0;
+        for (int n = 0; n < nStreams; n++) {
+            streams[n]->updateRate(time_us);
+            rateTransmitted += streams[n]->rateTransmitted;
+            rateTransmittedAvg = 0.8*rateTransmittedAvg + 0.2*rateTransmitted;
+            rateAcked += streams[n]->rateAcked;
+            if (n == 0)
+                statistics->add(streams[0]->rateTransmitted, streams[0]->rateLost, sRtt, queueDelay);
+        }
+        lastRateUpdateT_us = time_us;
+        /*
+        * Adjust stream priorities
+        */
+        adjustPriorities(time_us);
+
+        /*
+        * Update maxRate
+        */
+        maxRate = 0.0f;
+        for (int n = 0; n < nStreams; n++)
+            maxRate += streams[n]->getMaxRate();
+    }
+
+    /*
+    * Get index to the prioritized RTP queue
+    */
+    Stream* stream = getPrioritizedStream(time_us);
+
+    if (stream == NULL)
+        /*
+        * No RTP packets to transmit
+        */
+        return -1.0f;
+    ssrc = stream->ssrc;
+
+    bytesInFlightMaxHi = std::max(bytesInFlight, bytesInFlightMaxHi);
+
+    /*
+    * Update bytes in flight history for congestion window validation
+    */
+    if (time_us - lastBytesInFlightT_us > kBytesInFlightHistInterval_us) {
+        bytesInFlightMaxLo = 0;
+        if (nAccBytesInFlightMax > 0) {
+            bytesInFlightMaxLo = accBytesInFlightMax / nAccBytesInFlightMax;
+        }
+        bytesInFlightHistLo[bytesInFlightHistPtr] = bytesInFlightMaxLo;
+        bytesInFlightHistHi[bytesInFlightHistPtr] = bytesInFlightMaxHi;
+        bytesInFlightHistPtr = (bytesInFlightHistPtr + 1) % bytesInFlightHistSize;
+        lastBytesInFlightT_us = time_us;
+        accBytesInFlightMax = 0;
+        nAccBytesInFlightMax = 0;
+        bytesInFlightMaxHi = 0;
+        bytesInFlightHistLoMem = 0;
+        bytesInFlightHistHiMem = 0;
+        for (int n = 0; n < bytesInFlightHistSize; n++) {
+            bytesInFlightHistLoMem = std::max(bytesInFlightHistLoMem, bytesInFlightHistLo[n]);
+            bytesInFlightHistHiMem = std::max(bytesInFlightHistHiMem, bytesInFlightHistHi[n]);
+        }
+
+        /*
+        * In addition, reset MSS, this is useful in case for instance
+        * a video stream is put on hold, leaving only audio packets to be
+        * transmitted
+        */
+        mss = kInitMss;
+        if (!openWindow)
+            cwndMin = kMinCwndMss * mss;
+        cwnd = max(cwnd, cwndMin);
+    }
+
+    int sizeOfNextRtp = stream->rtpQueue->sizeOfNextRtp();
+    if (sizeOfNextRtp == -1){
+        return -1.0f;
+    }
+    /*
+    * Determine if window is large enough to transmit
+    * an RTP packet
+    */
+    bool exit = false;
+    if (queueDelay < queueDelayTarget)
+        exit = (bytesInFlight + sizeOfNextRtp) > cwnd + mss;
+    else
+        exit = (bytesInFlight + sizeOfNextRtp) > cwnd;
+    /*
+    * Enforce packet pacing
+    */
+    float retVal = 0.0f;
+    if (kEnablePacketPacing && nextTransmitT_us > time_us){
+        retVal = (nextTransmitT_us - time_us) * 1e-6f;
+    }
+
+    /*
+    * A retransmission time out mechanism to avoid deadlock
+    */
+    if (time_us - lastTransmitT_us > 500000 && lastTransmitT_us < time_us) { // 200ms
+        for (int n = 0; n < kMaxTxPackets; n++) {
+            stream->txPackets[n].isUsed = false;
+        }
+        bytesInFlight = 0;
+        exit = false;
+        retVal = 0.0f;
+    }
+
+    if (!exit) {
+        /*
+        * Return value 0.0 = RTP packet can be immediately transmitted
+        */
+        return retVal;
+    }
+
+    return -1.0f;
+}
+
+/*
+* RTP packet transmitted
+*/
+float ScreamTx::addTransmitted(uint64_t time_us,
+    uint32_t ssrc,
+    int size,
+    uint16_t seqNr) {
+    if (!isInitialized)
+        initialize(time_us);
+
+    Stream *stream = getStream(ssrc);
+
+    int ix = seqNr % kMaxTxPackets;
+    Transmitted *txPacket = &(stream->txPackets[ix]);
+    if (txPacket->isUsed) {
+        /*
+        * This event should occur quite rarely.
+        * The most likely reason is that thoughput has dropped
+        * considerably.
+        * Therefore we clean the list and set cwnd and bitrate low
+        */
+        for (int n = 0; n < kMaxTxPackets; n++) {
+            stream->txPackets[n].isUsed = false;
+        }
+        bytesInFlight = 0;//-= txPacket->size;
+        cwnd = cwndMin;
+        stream->targetBitrate = stream->minBitrate;
+    }
+    stream->hiSeqTx = seqNr;
+    txPacket->timestamp = (uint32_t)(time_us / 1000);
+    txPacket->timeTx_us = time_us;
+    txPacket->size = size;
+    txPacket->seqNr = seqNr;
+    txPacket->isUsed = true;
+    txPacket->isAcked = false;
+    txPacket->isAfterReceivedEdge = false;
+
+    /*
+    * Update bytesInFlight
+    */
+    bytesInFlight += size;
+
+    stream->bytesTransmitted += size;
+    lastTransmitT_us = time_us;
+    /*
+    * Add credit to unserved streams
+    */
+    addCredit(time_us, stream, size);
+    /*
+    * Reduce used credit for served stream
+    */
+    subtractCredit(time_us, stream, size);
+
+    /*
+    * Update MSS and cwndMin
+    */
+    mss = std::max(mss, size);
+    if (!openWindow)
+        cwndMin = 2 * mss;
+    cwnd = max(cwnd, cwndMin);
+
+    /*
+    * Determine when next RTP packet can be transmitted
+    */
+    if (kEnablePacketPacing)
+        nextTransmitT_us = time_us + paceInterval_us;
+    else
+        nextTransmitT_us = time_us;
+
+    return paceInterval;
+}
+
+/*
+* Parse feedback according to the format below. It is up to the
+* wrapper application this RTCP from a compound RTCP if needed
+* BT = 255, means that this is experimental use.
+* The code currently only handles one SSRC source per IP packet
+*
+* 0                   1                   2                   3
+* 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |V=2|P|reserved |   PT=XR=207   |           length=6            |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                              SSRC                             |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |     BT=255    |    reserved   |         block length=4        |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                        SSRC of source                         |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* | Highest recv. seq. nr. (16b)  |         ECN_CE_bytes          |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                     Ack vector (b0-31)                        |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                     Ack vector (b32-63)                       |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                    Timestamp (32bits)                         |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+*/
+void ScreamTx::incomingFeedback(uint64_t time_us,
+    unsigned char* buf,
+    int size) {
+    if (!(size == 32 && buf[0] == 0x80 && buf[1] == 207 && buf[8] == 255)) {
+        // This does not seem as a valid size, exit function
+        return;
+    }
+    uint32_t tmp_l_1;
+    uint16_t tmp_s;
+    uint32_t tmp_l_2;
+    uint32_t timeStamp;
+    uint16_t seqNr;
+    uint64_t ackVector;
+    uint16_t ecnCeMarkedBytes;
+    uint32_t ssrc;
+    uint16_t rawSeq;
+    memcpy(&tmp_l_1, buf + 12, 4);
+    ssrc = ntohl(tmp_l_1);
+    memcpy(&seqNr, buf + 16, 2);
+    seqNr = ntohs(seqNr);
+    memcpy(&ecnCeMarkedBytes, buf + 18, 2);
+    ecnCeMarkedBytes = ntohs(ecnCeMarkedBytes);
+    memcpy(&tmp_l_1, buf + 20, 4);
+    memcpy(&tmp_l_2, buf + 24, 4);
+    tmp_l_1 = ntohl(tmp_l_1);
+    tmp_l_2 = ntohl(tmp_l_2);
+    ackVector = ((uint64_t(tmp_l_1)) << 32) | tmp_l_2;
+    memcpy(&timeStamp, buf + 28, 4);
+    timeStamp = ntohl(timeStamp);
+    incomingFeedback(time_us, ssrc, timeStamp, seqNr, ackVector, ecnCeMarkedBytes);
+}
+/*
+* New incoming feedback
+*/
+void ScreamTx::incomingFeedback(uint64_t time_us,
+    uint32_t ssrc,
+    uint32_t timestamp,
+    uint16_t highestSeqNr,
+    uint64_t ackVector,
+    uint16_t ecnCeMarkedBytes) {
+
+    if (!isInitialized) initialize(time_us);
+    Stream *stream = getStream(ssrc);
+    if (stream == 0) {
+        // Bogus RTCP?, the SSRC is wrong anyway, Skip
+        return;
+    }
+
+    uint16_t diff = highestSeqNr - stream->hiSeqAck;
+    if (diff > 65000 && stream->hiSeqAck != 0 && stream->timeTxAck_us != 0) {
+        /*
+        * Out of order received ACKs are ignored
+        */
+        return;
+    }
+    accBytesInFlightMax += bytesInFlight;
+    nAccBytesInFlightMax++;
+    Transmitted *txPackets = stream->txPackets;
+    /*
+    * Mark received packets, given by the ACK vector
+    */
+    markAcked(time_us, txPackets, highestSeqNr, ackVector, timestamp, stream);
+
+    /*
+    * Detect lost pakcets
+    */
+    detectLoss(time_us, txPackets, highestSeqNr, stream);
+
+    if (ecnCeMarkedBytes != stream->ecnCeMarkedBytes && time_us - lastLossEventT_us > sRtt_us) {
+        ecnCeEvent = true;
+        lastLossEventT_us = time_us;
+    }
+    stream->ecnCeMarkedBytes = ecnCeMarkedBytes;
+
+    if (lossEvent || ecnCeEvent) {
+        lastLossEventT_us = time_us;
+        for (int n = 0; n < nStreams; n++) {
+            Stream *tmp = streams[n];
+            if (lossEvent)
+                tmp->lossEventFlag = true;
+            else
+                tmp->ecnCeEventFlag = true;
+        }
+    }
+
+    if (lastCwndUpdateT_us == 0)
+        lastCwndUpdateT_us = time_us;
+
+    if (time_us - lastCwndUpdateT_us > 10000) {
+        /*
+        * There is no gain with a too frequent CWND update
+        * An update every 10ms is fast enough even at very high high bitrates
+        */
+        updateCwnd(time_us);
+        lastCwndUpdateT_us = time_us;
+    }
+}
+
+/*
+*  Mark ACKed RTP packets
+*/
+void ScreamTx::markAcked(uint64_t time_us, struct Transmitted *txPackets, uint16_t highestSeqNr, uint64_t ackVector, uint32_t timestamp, Stream *stream) {
+    /*
+    * Loop only through the packets that are covered by the last highest ACK, this saves complexity
+    */
+    int ix1 = highestSeqNr; ix1 = ix1 % kMaxTxPackets;
+    int ix0 = stream->hiSeqAck + 1;
+    if (ix0 < 0) ix0 += kMaxTxPackets;
+    while (ix1 < ix0)
+        ix1 += kMaxTxPackets;
+    for (int m = ix0; m <= ix1; m++) {
+        int n = m % kMaxTxPackets;
+        /*
+        * Loop through TX packets
+        */
+        if (txPackets[n].isUsed) {
+            /*
+            * RTP packet is in flight
+            */
+            Transmitted *tmp = &txPackets[n];
+
+            /*
+            * Compute SN difference
+            */
+            uint16_t diff = highestSeqNr - tmp->seqNr;
+            diff -= 1;
+
+            if (diff <= kAckVectorBits) {
+                if (ackVector & (INT64_C(1) << diff)) {
+                    /*
+                    * SN marked as received
+                    */
+                    tmp->isAcked = true;
+                }
+            }
+
+            /*
+            * Receiption of packet given by highestSeqNr
+            */
+            if (tmp->seqNr == highestSeqNr) {
+                tmp->isAcked = true;
+                ackedOwd = timestamp - tmp->timestamp;
+                /*
+                * Compute the queue delay
+                */
+                uint32_t qDel = estimateOwd(time_us);
+                qDel -= getBaseOwd();
+
+                /*
+                * Convert from [jiffy] OWD to an OWD in [s]
+                */
+                queueDelay = qDel / kTimestampRate;
+
+                uint64_t rtt = time_us - tmp->timeTx_us;
+
+                sRttSh_us = (7 * sRttSh_us + rtt) / 8;
+                if (time_us - lastSRttUpdateT_us > sRttSh_us) {
+                    sRtt_us = (7 * sRtt_us + sRttSh_us) / 8;
+                    lastSRttUpdateT_us = time_us;
+                    sRtt = sRtt_us*1e-6f;
+                }
+                stream->timeTxAck_us = tmp->timeTx_us;
+            }
+        }
+    }
+}
+
+/*
+* Detect lost RTP packets
+*/
+void ScreamTx::detectLoss(uint64_t time_us, struct Transmitted *txPackets, uint16_t highestSeqNr, Stream *stream) {
+    /*
+    * Loop only through the packets that are covered by the last highest ACK, this saves complexity
+    * There is a faint possibility that we miss to detect large bursts of lost packets with this fix
+    */
+    int ix1 = highestSeqNr; ix1 = ix1 % kMaxTxPackets;
+    int ix0 = stream->hiSeqAck + 1;
+    stream->hiSeqAck = highestSeqNr;
+    if (ix0 < 0) ix0 += kMaxTxPackets;
+    while (ix1 < ix0)
+        ix1 += kMaxTxPackets;
+
+    /*
+    * Mark packets outside the 64 bit ACK vector range as forever lost
+    */
+    if (stream->lastLossDetectIx >= 0) {
+        int ix0_ = ix0;
+        if (stream->lastLossDetectIx > ix0_) ix0_ += kMaxTxPackets;
+        for (int m = stream->lastLossDetectIx; m < ix0_; m++) {
+            int n = m % kMaxTxPackets;
+            if (txPackets[n].isUsed) {
+                Transmitted *tmp = &txPackets[n];
+                if (time_us - lastLossEventT_us > sRtt_us && lossBeta < 1.0f) {
+                    lossEvent = true;
+                }
+                stream->bytesLost += tmp->size;
+                tmp->isUsed = false;
+                stream->repairLoss = true;
+            }
+        }
+    }
+    stream->lastLossDetectIx = ix0;
+
+    /*
+    * Mark late packets as lost
+    */
+    for (int m = ix0; m <= ix1; m++) {
+        int n = m % kMaxTxPackets;
+        /*
+        * Loop through TX packets
+        */
+        if (txPackets[n].isUsed) {
+            Transmitted *tmp = &txPackets[n];
+            /*
+            * RTP packet is in flight
+            */
+            /*
+            * Wrap-around safety net
+            */
+            uint32_t seqNrExt = tmp->seqNr;
+            uint32_t highestSeqNrExt = highestSeqNr;
+            if (seqNrExt < highestSeqNrExt && highestSeqNrExt - seqNrExt > 20000)
+                seqNrExt += 65536;
+            else if (seqNrExt > highestSeqNrExt && seqNrExt - highestSeqNrExt > 20000)
+                highestSeqNrExt += 65536;
+
+            /*
+            * RTP packets with a sequence number lower
+            * than or equal to the highest received sequence number
+            * are treated as received even though they are not
+            * This advances the send window, similar to what
+            * SACK does in TCP
+            */
+            if (seqNrExt <= highestSeqNrExt && tmp->isAfterReceivedEdge == false) {
+                bytesNewlyAcked += tmp->size;
+                bytesInFlight -= tmp->size;
+                if (bytesInFlight < 0)
+                    bytesInFlight = 0;
+                stream->bytesAcked += tmp->size;
+                tmp->isAfterReceivedEdge = true;
+            }
+
+            if (tmp->timeTx_us + kReorderTime_us < stream->timeTxAck_us && !tmp->isAcked) {
+                /*
+                * Packet ACK is delayed more than kReorderTime_us after an ACK of a higher SN packet
+                * raise a loss event and remove from TX list
+                */
+                if (time_us - lastLossEventT_us > sRtt_us && lossBeta < 1.0f) {
+                    lossEvent = true;
+                }
+                stream->bytesLost += tmp->size;
+                tmp->isUsed = false;
+                stream->repairLoss = true;
+            }
+            else if (tmp->isAcked) {
+                tmp->isUsed = false;
+            }
+        }
+    }
+
+}
+
+float ScreamTx::getTargetBitrate(uint32_t ssrc) {
+    return  getStream(ssrc)->getTargetBitrate();
+}
+
+void ScreamTx::setTargetPriority(uint32_t ssrc, float priority) {
+    Stream *stream = getStream(ssrc);
+    if (queueDelayTrend > 0.02) {
+        stream->targetBitrate *= priority / stream->targetPriority;
+        stream->targetBitrate = std::min(std::max(stream->targetBitrate, stream->minBitrate), stream->maxBitrate);
+    }
+    stream->targetPriority = priority;
+    stream->targetPriorityInv = 1.0f / priority;
+}
+
+void ScreamTx::getLog(float time, char *s) {
+    int inFlightMax = std::max(bytesInFlight, bytesInFlightHistHiMem);
+    sprintf(s, "%4.3f, %4.3f, %4.3f, %4.3f, %6d, %6d, %6.0f, %1d, ",
+        queueDelay, queueDelayMax, queueDelayMinAvg, sRtt,
+        cwnd, bytesInFlight, rateTransmitted / 1000.0f, isInFastStart());
+
+    queueDelayMax = 0.0;
+    for (int n = 0; n < nStreams; n++) {
+        Stream *tmp = streams[n];
+        char s2[200];
+        sprintf(s2, "%4.3f, %6.0f, %6.0f, %6.0f, %6.0f, %5.0f, %5d, ",
+            std::max(0.0f, tmp->rtpQueue->getDelay(time)),
+            tmp->targetBitrate / 1000.0f, tmp->rateRtp / 1000.0f,
+            tmp->rateTransmitted / 1000.0f, tmp->rateAcked / 1000.0f,
+            tmp->rateLost / 1000.0f,
+            tmp->hiSeqAck);
+        strcat(s, s2);
+    }
+}
+
+void ScreamTx::getShortLog(float time, char *s) {
+    int inFlightMax = std::max(bytesInFlight, bytesInFlightHistHiMem);
+    sprintf(s, "%4.3f, %4.3f, %6d, %6d, %6.0f, ",
+        queueDelayMax, sRtt,
+        cwnd, bytesInFlight, rateTransmitted / 1000.0f);
+
+    queueDelayMax = 0.0;
+    for (int n = 0; n < nStreams; n++) {
+        Stream *tmp = streams[n];
+        char s2[200];
+        sprintf(s2, "%4.3f, %6.0f, %6.0f, %6.0f, %5.0f, ",
+            std::max(0.0f, tmp->rtpQueue->getDelay(time)),
+            tmp->targetBitrate / 1000.0f, tmp->rateRtp / 1000.0f,
+            tmp->rateTransmitted / 1000.0f,
+            tmp->rateLost / 1000.0f);
+        strcat(s, s2);
+    }
+}
+
+void ScreamTx::getStatistics(float time, char *s) {
+    statistics->getSummary(time, s);
+}
+
+void ScreamTx::initialize(uint64_t time_us) {
+    isInitialized = true;
+    lastSRttUpdateT_us = time_us;
+    lastBaseOwdAddT_us = time_us;
+    baseOwdResetT_us = time_us;
+    lastAddToQueueDelayFractionHistT_us = time_us;
+    lastLossEventT_us = time_us;
+    lastTransmitT_us = time_us;
+    nextTransmitT_us = time_us;
+    lastRateUpdateT_us = time_us;
+    lastAdjustPrioritiesT_us = time_us;
+    lastRttT_us = time_us;
+    lastBaseDelayRefreshT_us = time_us + 1000000;
+    initTime_us = time_us;
+}
+
+/*
+* Update the  congestion window
+*/
+void ScreamTx::updateCwnd(uint64_t time_us) {
+    float dT = 0.001;
+    if (lastCwndUpdateT_us == 0)
+        lastCwndUpdateT_us = time_us;
+    else
+        dT = (time_us - lastCwndUpdateT_us) * 1e-6f;
+
+    /*
+    * This adds a limit to how much the CWND can grow, it is particularly useful
+    * in case of short gliches in the transmission, in which a large chunk of data is delivered
+    * in a burst with the effect that the estimated queue delay is low because it typically depict the queue
+    * delay for the last non-delayed RTP packet. The rule is that the CWND cannot grow faster
+    * than the 1.25 times the average amount of bytes that transmitted in the given feedback interval
+    */
+    float bytesNewlyAckedLimited = bytesNewlyAcked;
+    if (maxRate > 1.0e5f)
+        bytesNewlyAckedLimited = std::min(bytesNewlyAckedLimited, 1.25f*maxRate*dT / 8.0f);
+    else
+        bytesNewlyAckedLimited = 2.0f*mss;
+
+    queueDelayMin = std::min(queueDelayMin, queueDelay);
+
+    queueDelayMax = std::max(queueDelayMax, queueDelay);
+
+    float time = time_us*1e-6;
+    if (queueDelayMinAvg > 0.25f*queueDelayTarget && time_us - baseOwdResetT_us > 20000000) {
+        /*
+        * The base OWD is likely wrong, for instance due to
+        * a channel change or clock drift, reset base OWD history
+        */
+        queueDelayMinAvg = 0.0f;
+        queueDelay = 0.0f;
+        for (int n = 0; n < kBaseOwdHistSize; n++)
+            baseOwdHist[n] = UINT32_MAX;
+        baseOwd = UINT32_MAX;
+        baseOwdHistMin = UINT32_MAX;
+        baseOwdResetT_us = time_us;
+    }
+    /*
+    * An averaged version of the queue delay fraction
+    * neceassary in order to make video rate control robust
+    * against jitter
+    */
+    queueDelayFractionAvg = 0.9f*queueDelayFractionAvg + 0.1f*getQueueDelayFraction();
+
+    /*
+    * Less frequent updates here
+    * + Compute pacing interval
+    * + Save to queue delay fraction history
+    *   used in computeQueueDelayTrend()
+    * + Update queueDelayTarget
+    */
+    if ((time_us - lastAddToQueueDelayFractionHistT_us) >
+        kQueueDelayFractionHistInterval_us) {
+
+        /*
+        * compute paceInterval, we assume a min bw of 50kbps and a min tp of 1ms
+        * for stable operation
+        * this function implements the packet pacing
+        */
+        paceInterval = kMinPaceInterval;
+        if (queueDelayFractionAvg > 0.05f && kEnablePacketPacing) {
+            /*
+            * The cautiousPacing parameter restricts transmission of large key frames when the parameter is set to a value closer to 1.0
+            */
+            float pacingBitrate = (1.0 - cautiousPacing)*cwnd * 8.0f / std::max(0.001f, sRtt) + cautiousPacing*rateTransmittedAvg;
+            pacingBitrate = kPacketPacingHeadRoom*std::max(kMinimumBandwidth, pacingBitrate);
+            float tp = (mss * 8.0f) / pacingBitrate;
+            paceInterval = std::max(kMinPaceInterval, tp);
+        }
+        paceInterval_us = (uint64_t)(paceInterval * 1000000);
+
+        if (queueDelayMin < queueDelayMinAvg)
+            queueDelayMinAvg = queueDelayMin;
+        else
+            queueDelayMinAvg = 0.001f*queueDelayMin + 0.999f*queueDelayMinAvg;
+        queueDelayMin = 1000.0f;
+        /*
+        * Need to duplicate insertion incase the feedback is sparse
+        */
+        int nIter = (int)(time_us - lastAddToQueueDelayFractionHistT_us) / kQueueDelayFractionHistInterval_us;
+        for (int n = 0; n < nIter; n++) {
+            queueDelayFractionHist[queueDelayFractionHistPtr] = getQueueDelayFraction();
+            queueDelayFractionHistPtr = (queueDelayFractionHistPtr + 1) % kQueueDelayFractionHistSize;
+        }
+
+        if (time_us - initTime_us > 2000000) {
+            /*
+            * Queue delay trend calculations are reliable after ~2s
+            */
+            computeQueueDelayTrend();
+        }
+
+        queueDelayTrendMem = std::max(queueDelayTrendMem*0.98f, queueDelayTrend);
+
+        /*
+        * Compute bytes in flight limitation
+        */
+        int maxBytesInFlightHi = (int)(std::max(bytesInFlightMaxHi, bytesInFlightHistHiMem));
+        int maxBytesInFlightLo = (int)(std::max(bytesInFlight, bytesInFlightHistLoMem));
+
+        float alpha = std::max(queueDelayTrend, cautiousPacing);
+        maxBytesInFlight =
+            (maxBytesInFlightHi*(1.0f - alpha) + maxBytesInFlightLo*alpha)*
+            kMaxBytesInFlightHeadRoom;
+
+        if (enableSbd) {
+            /*
+            * Shared bottleneck detection,
+            */
+            float queueDelayNorm = queueDelay / queueDelayTargetMin;
+            queueDelayNormHist[queueDelayNormHistPtr] = queueDelayNorm;
+            queueDelayNormHistPtr = (queueDelayNormHistPtr + 1) % kQueueDelayNormHistSize;
+            /*
+            * Compute shared bottleneck detection and update queue delay target
+            * if queue dela variance is sufficienctly low
+            */
+            computeSbd();
+            /*
+            * This function avoids the adjustment of queueDelayTarget when
+            * congestion occurs (indicated by high queueDelaydSbdVar and queueDelaySbdSkew)
+            */
+            float oh = queueDelayTargetMin*(queueDelaySbdMeanSh + sqrt(queueDelaySbdVar));
+            if (lossEventRate > 0.002 && queueDelaySbdMeanSh > 0.5 && queueDelaySbdVar < 0.2) {
+                queueDelayTarget = std::min(kQueueDelayTargetMax, oh*1.5f);
+            }
+            else {
+                if (queueDelaySbdVar < 0.2 && queueDelaySbdSkew < 0.05) {
+                    queueDelayTarget = std::max(queueDelayTargetMin, std::min(kQueueDelayTargetMax, oh));
+                }
+                else {
+                    if (oh < queueDelayTarget)
+                        queueDelayTarget = std::max(queueDelayTargetMin, std::max(queueDelayTarget*0.99f, oh));
+                    else
+                        queueDelayTarget = std::max(queueDelayTargetMin, queueDelayTarget*0.999f);
+                }
+            }
+        }
+        lastAddToQueueDelayFractionHistT_us = time_us;
+    }
+    /*
+    * offTarget is a normalized deviation from the queue delay target
+    */
+    float offTarget = (queueDelayTarget - queueDelay) / float(queueDelayTarget);
+
+    if (lossEvent) {
+        /*
+        * loss event detected, decrease congestion window
+        */
+        cwnd = std::max(cwndMin, (int)(lossBeta*cwnd));
+        lossEvent = false;
+        lastCongestionDetectedT_us = time_us;
+
+        inFastStart = false;
+        wasLossEvent = true;
+    }
+    else if (ecnCeEvent) {
+        /*
+        * loss event detected, decrease congestion window
+        */
+        cwnd = std::max(cwndMin, (int)(ecnCeBeta*cwnd));
+        ecnCeEvent = false;
+        lastCongestionDetectedT_us = time_us;
+
+        inFastStart = false;
+        wasLossEvent = true;
+    }
+    else {
+
+        if (time_us - lastRttT_us > sRtt_us) {
+            if (wasLossEvent)
+                lossEventRate = 0.99f*lossEventRate + 0.01f;
+            else
+                lossEventRate *= 0.99f;
+            wasLossEvent = false;
+            lastRttT_us = time_us;
+        }
+
+        if (inFastStart) {
+            /*
+            * In fast start
+            */
+            if (queueDelayTrend < 0.2) {
+                /*
+                * CWND is increased by the number of ACKed bytes if
+                * window is used to 1/1.5 = 67%
+                * We need to relax the rule a bit for the case that
+                * feedback may be sparse due to limited RTCP report interval
+                * In addition we put a limit for the cases where feedback becomes
+                * piled up (sometimes happens with e.g LTE)
+                */
+                if (bytesInFlight*1.5 + bytesNewlyAcked > cwnd) {
+                    cwnd += bytesNewlyAckedLimited;
+                }
+            }
+            else {
+                inFastStart = false;
+            }
+        }
+        else {
+            if (offTarget > 0.0f) {
+                /*
+                * queue delay below target, increase CWND if window
+                * is used to 1/1.2 = 83%
+                */
+                if (bytesInFlight*1.2 + bytesNewlyAcked > cwnd) {
+                    float increment = gainUp * offTarget * bytesNewlyAckedLimited * mss / cwnd;
+                    cwnd += (int)(increment + 0.5f);
+                }
+            }
+            else {
+                /*
+                * Queue delay above target.
+                * Limit the CWND reduction to at most a quarter window
+                *  this avoids unduly large reductions for the cases
+                *  where data is queued up e.g because of retransmissions
+                *  on lower protocol layers.
+                */
+                float delta = -(gainDown * offTarget * bytesNewlyAcked * mss / cwnd);
+                delta = std::min((int)delta, cwnd / 4);
+                cwnd -= (int)(delta);
+
+                /*
+                * Especially when running over low bitrate bottlenecks, it is
+                *  beneficial to reduce the target bitrate a little, it limits
+                *  possible RTP queue delay spikes when congestion window is reduced
+                */
+                float rateTotal = 0.0f;
+                for (int n = 0; n < nStreams; n++)
+                    rateTotal += streams[n]->getMaxRate();
+                if (rateTotal < 1.0e5f) {
+                    delta = delta / cwnd;
+                    float rateAdjustFactor = (1.0f - delta);
+                    for (int n = 0; n < nStreams; n++) {
+                        Stream *tmp = streams[n];
+                        tmp->targetBitrate = std::max(tmp->minBitrate,
+                            std::min(tmp->maxBitrate,
+                            tmp->targetBitrate*rateAdjustFactor));
+                    }
+                }
+                lastCongestionDetectedT_us = time_us;
+
+            }
+        }
+    }
+    /*
+    * Congestion window validation, checks that the congestion window is
+    * not considerably higher than the actual number of bytes in flight
+    */
+    if (maxBytesInFlight > 5000) {
+        cwnd = std::min(cwnd, (int)maxBytesInFlight);
+    }
+
+    if (sRtt < 0.01f && queueDelayTrend < 0.1) {
+        int tmp = int(rateTransmitted*0.01f / 8);
+        tmp = std::max(tmp, (int)(maxBytesInFlight*1.5f));
+        cwnd = std::max(cwnd, tmp);
+    }
+    cwnd = std::max(cwndMin, cwnd);
+
+    /*
+    * Make possible to enter fast start if OWD has been low for a while
+    */
+    if (queueDelayTrend > 0.2) {
+        lastCongestionDetectedT_us = time_us;
+    }
+    else if (time_us - lastCongestionDetectedT_us > 5000000 &&
+        !inFastStart && kEnableConsecutiveFastStart) {
+        /*
+        * The queue delay trend has been low for more than 5.0s, resume fast start
+        */
+        inFastStart = true;
+        lastCongestionDetectedT_us = time_us;
+    }
+    bytesNewlyAcked = 0;
+}
+
+/*
+* Update base OWD (if needed) and return the
+* last estimated OWD (without offset compensation)
+*/
+uint32_t ScreamTx::estimateOwd(uint64_t time_us) {
+    baseOwd = std::min(baseOwd, ackedOwd);
+    if (time_us - lastBaseOwdAddT_us >= kBaseDelayUpdateInterval_us) {
+        baseOwdHist[baseOwdHistPtr] = baseOwd;
+        baseOwdHistPtr = (baseOwdHistPtr + 1) % kBaseOwdHistSize;
+        lastBaseOwdAddT_us = time_us;
+        baseOwd = UINT32_MAX;
+        baseOwdHistMin = UINT32_MAX;
+        for (int n = 0; n < kBaseOwdHistSize; n++)
+            baseOwdHistMin = std::min(baseOwdHistMin, baseOwdHist[n]);
+        /*
+        * _Very_ long periods of congestion can cause the base delay to increase
+        * with the effect that the queue delay is estimated wrong, therefore we seek to
+        * refresh the whole thing by deliberately allowing the network queue to drain
+        */
+        if (time_us - lastBaseDelayRefreshT_us > kBaseDelayUpdateInterval_us*(kBaseOwdHistSize - 1)) {
+            lastBaseDelayRefreshT_us = time_us;
+        }
+    }
+    return ackedOwd;
+}
+
+/*
+* Get the base one way delay
+*/
+uint32_t ScreamTx::getBaseOwd() {
+    return  std::min(baseOwd, baseOwdHistMin);
+}
+
+/*
+* Get the queue delay fraction
+*/
+float ScreamTx::getQueueDelayFraction() {
+    return queueDelay / queueDelayTarget;
+}
+
+/*
+* Compute congestion indicator
+*/
+void ScreamTx::computeQueueDelayTrend() {
+    queueDelayTrend = 0.0;
+    int ptr = queueDelayFractionHistPtr;
+    float avg = 0.0f, x1, x2, a0, a1;
+
+    for (int n = 0; n < kQueueDelayFractionHistSize; n++) {
+        avg += queueDelayFractionHist[ptr];
+        ptr = (ptr + 1) % kQueueDelayFractionHistSize;
+    }
+    avg /= kQueueDelayFractionHistSize;
+
+    ptr = queueDelayFractionHistPtr;
+    x2 = 0.0f;
+    a0 = 0.0f;
+    a1 = 0.0f;
+    for (int n = 0; n < kQueueDelayFractionHistSize; n++) {
+        x1 = queueDelayFractionHist[ptr] - avg;
+        a0 += x1 * x1;
+        a1 += x1 * x2;
+        x2 = x1;
+        ptr = (ptr + 1) % kQueueDelayFractionHistSize;
+    }
+    if (a0 > 0) {
+        queueDelayTrend = std::max(0.0f, std::min(1.0f, (a1 / a0)*queueDelayFractionAvg));
+    }
+}
+
+/*
+* Compute indicators of shared bottleneck
+*/
+void ScreamTx::computeSbd() {
+    float queueDelayNorm, tmp;
+    queueDelaySbdMean = 0.0;
+    queueDelaySbdMeanSh = 0.0;
+    queueDelaySbdVar = 0.0;
+    int ptr = queueDelayNormHistPtr;
+    for (int n = 0; n < kQueueDelayNormHistSize; n++) {
+        queueDelayNorm = queueDelayNormHist[ptr];
+        queueDelaySbdMean += queueDelayNorm;
+        if (n >= kQueueDelayNormHistSize - kQueueDelayNormHistSizeSh) {
+            queueDelaySbdMeanSh += queueDelayNorm;
+        }
+        ptr = (ptr + 1) % kQueueDelayNormHistSize;
+    }
+    queueDelaySbdMean /= kQueueDelayNormHistSize;
+    queueDelaySbdMeanSh /= kQueueDelayNormHistSizeSh;
+
+    ptr = queueDelayNormHistPtr;
+    for (int n = 0; n < kQueueDelayNormHistSize; n++) {
+        queueDelayNorm = queueDelayNormHist[ptr];
+        tmp = queueDelayNorm - queueDelaySbdMean;
+        queueDelaySbdVar += tmp * tmp;
+        queueDelaySbdSkew += tmp * tmp * tmp;
+        ptr = (ptr + 1) % kQueueDelayNormHistSize;
+    }
+    queueDelaySbdVar /= kQueueDelayNormHistSize;
+    queueDelaySbdSkew /= kQueueDelayNormHistSize;
+}
+
+/*
+* true if the queueDelayTarget is increased due to
+* detected competing flows
+*/
+bool ScreamTx::isCompetingFlows() {
+    return queueDelayTarget > queueDelayTargetMin;
+}
+
+/*
+* Get queue delay trend
+*/
+float ScreamTx::getQueueDelayTrend() {
+    return queueDelayTrend;
+}
+
+/*
+* Determine active streams
+*/
+void ScreamTx::determineActiveStreams(uint64_t time_us) {
+    float surplusBitrate = 0.0f;
+    float sumPrio = 0.0;
+    bool streamSetInactive = false;
+    for (int n = 0; n < nStreams; n++) {
+        if (time_us - streams[n]->lastFrameT_us > 1000000 && streams[n]->isActive) {
+            streams[n]->isActive = false;
+            surplusBitrate += streams[n]->targetBitrate;
+            streams[n]->targetBitrate = streams[n]->minBitrate;
+            streamSetInactive = true;
+        }
+        else {
+            sumPrio += streams[n]->targetPriority;
+        }
+    }
+    if (streamSetInactive) {
+        for (int n = 0; n < nStreams; n++) {
+            if (streams[n]->isActive) {
+                streams[n]->targetBitrate = std::min(streams[n]->maxBitrate,
+                    streams[n]->targetBitrate +
+                    surplusBitrate*streams[n]->targetPriority / sumPrio);
+            }
+        }
+    }
+}
+
+/*
+* Add credit to streams that was not served
+*/
+void ScreamTx::addCredit(uint64_t time_us, Stream* servedStream, int transmittedBytes) {
+    /*
+    * Add a credit to stream(s) that did not get priority to transmit RTP packets
+    */
+    if (nStreams == 1)
+        /*
+        * Skip if only one stream to save CPU
+        */
+        return;
+    int maxCredit = 10 * mss;
+    for (int n = 0; n < nStreams; n++) {
+        Stream *tmp = streams[n];
+        if (tmp != servedStream) {
+            int credit = (int)(transmittedBytes*tmp->targetPriority * servedStream->targetPriorityInv);
+            if (tmp->rtpQueue->sizeOfQueue() > 0) {
+                tmp->credit += credit;
+            }
+            else {
+                tmp->credit += credit;
+                if (tmp->credit > maxCredit) {
+                    tmp->creditLost += tmp->credit - maxCredit;
+                    tmp->credit = maxCredit;
+                }
+                //tmp->credit = std::min(10 * mss, tmp->credit + credit);
+            }
+        }
+    }
+}
+
+/*
+* Subtract credit from served stream
+*/
+void ScreamTx::subtractCredit(uint64_t time_us, Stream* servedStream, int transmittedBytes) {
+    /*
+    * Subtract a credit equal to the number of transmitted bytes from the stream that
+    * transmitted a packet
+    */
+    if (nStreams == 1)
+        /*
+        * Skip if only one stream to save CPU
+        */
+        return;
+    servedStream->credit = std::max(0, servedStream->credit - transmittedBytes);
+}
+ScreamTx::Stream::Stream(ScreamTx *parent_,
+    RtpQueueIface *rtpQueue_,
+    uint32_t ssrc_,
+    float priority_,
+    float minBitrate_,
+    float startBitrate_,
+    float maxBitrate_,
+    float rampUpSpeed_,
+    float maxRtpQueueDelay_,
+    float txQueueSizeFactor_,
+    float queueDelayGuard_,
+    float lossEventRateScale_,
+    float ecnCeEventRateScale_) {
+    parent = parent_;
+    rtpQueue = rtpQueue_;
+    ssrc = ssrc_;
+    targetPriority = priority_;
+    targetPriorityInv = 1.0f / targetPriority;
+    minBitrate = minBitrate_;
+    maxBitrate = maxBitrate_;
+    targetBitrate = std::min(maxBitrate, std::max(minBitrate, startBitrate_));
+    rampUpSpeed = rampUpSpeed_;
+    maxRtpQueueDelay = maxRtpQueueDelay_;
+    txQueueSizeFactor = txQueueSizeFactor_;
+    queueDelayGuard = queueDelayGuard_;
+    lossEventRateScale = lossEventRateScale_;
+    ecnCeEventRateScale = ecnCeEventRateScale_;
+    targetBitrateHistUpdateT_us = 0;
+    targetBitrateI = 1.0f;
+    credit = 0;
+    creditLost = 0;
+    bytesTransmitted = 0;
+    bytesAcked = 0;
+    bytesLost = 0;
+    hiSeqAck = 0;
+    hiSeqTx = 0;
+    rateTransmitted = 0.0f;
+    rateAcked = 0.0f;
+    rateLost = 0.0f;
+    lossEventFlag = false;
+    ecnCeEventFlag = false;
+    txSizeBitsAvg = 0.0f;
+    lastRateUpdateT_us = 0;
+    lastBitrateAdjustT_us = 0;
+    lastTargetBitrateIUpdateT_us = 0;
+    bytesRtp = 0;
+    rateRtp = 0.0f;
+    lastLossDetectIx = -1;
+    ecnCeMarkedBytes = 0;
+    timeTxAck_us = 0;
+
+    for (int n = 0; n < kRateUpDateSize; n++) {
+        rateRtpHist[n] = 0.0f;
+        rateAckedHist[n] = 0.0f;
+        rateLostHist[n] = 0.0f;
+        rateTransmittedHist[n] = 0.0f;
+    }
+    rateUpdateHistPtr = 0;
+    for (int n = 0; n < kTargetBitrateHistSize; n++) {
+        targetBitrateHist[n] = 0;
+    }
+    targetBitrateHistPtr = 0;
+    targetRateScale = 1.0;
+    isActive = false;
+    lastFrameT_us = 0;
+    initTime_us = 0;
+    rtpQueueDiscard = false;
+    lastRtpQueueDiscardT_us = 0;
+    rateLost = 0.0;
+    bytesLost = 0;
+    wasRepairLoss = false;
+    repairLoss = false;
+    for (int n = 0; n < kMaxTxPackets; n++)
+        txPackets[n].isUsed = false;
+    txPacketsPtr = 0;
+}
+
+/*
+* Update the estimated max media rate
+*/
+void ScreamTx::Stream::updateRate(uint64_t time_us) {
+    if (lastRateUpdateT_us != 0) {
+        float tDelta = (time_us - lastRateUpdateT_us) * 1e-6f;
+
+        rateTransmittedHist[rateUpdateHistPtr] = bytesTransmitted*8.0f / tDelta;
+        rateAckedHist[rateUpdateHistPtr] = bytesAcked*8.0f / tDelta;
+        rateLostHist[rateUpdateHistPtr] = bytesLost*8.0f / tDelta;
+        rateRtpHist[rateUpdateHistPtr] = bytesRtp * 8.0f / tDelta;
+        rateUpdateHistPtr = (rateUpdateHistPtr + 1) % kRateUpDateSize;
+        rateTransmitted = 0.0f;
+        rateAcked = 0.0f;
+        rateLost = 0.0f;
+        rateRtp = 0.0f;
+        for (int n = 0; n < kRateUpDateSize; n++) {
+            rateTransmitted += rateTransmittedHist[n];
+            rateAcked += rateAckedHist[n];
+            rateLost += rateLostHist[n];
+            rateRtp += rateRtpHist[n];
+        }
+        rateTransmitted /= kRateUpDateSize;
+        rateAcked /= kRateUpDateSize;
+        rateLost /= kRateUpDateSize;
+        rateRtp /= kRateUpDateSize;
+        if (rateRtp > 0) {
+            /*
+            * Video coders are strange animals.. In certain cases the average bitrate is
+            * consistently lower or higher than the target bitare. This additonal scaling compensates
+            * for this anomaly.
+            */
+            const float alpha = 0.05f;
+            targetRateScale *= (1.0f - alpha);
+            targetRateScale += alpha*targetBitrate / rateRtp;
+            targetRateScale = std::min(1.25f, std::max(0.8f, targetRateScale));
+        }
+    }
+
+    bytesTransmitted = 0;
+    bytesAcked = 0;
+    bytesRtp = 0;
+    bytesLost = 0;
+    lastRateUpdateT_us = time_us;
+}
+
+/*
+* Get the estimated maximum media rate
+*/
+float ScreamTx::Stream::getMaxRate() {
+    return std::max(rateTransmitted, rateAcked);
+}
+
+/*
+* The the stream that matches SSRC
+*/
+ScreamTx::Stream* ScreamTx::getStream(uint32_t ssrc) {
+    for (int n = 0; n < nStreams; n++) {
+        if (streams[n]->isMatch(ssrc)) {
+            return streams[n];
+        }
+    }
+    return NULL;
+}
+
+/*
+* Get the target bitrate.
+* This function returns a value -1 if loss of RTP packets is detected,
+*  either because of loss in network or RTP queue discard
+*/
+float ScreamTx::Stream::getTargetBitrate() {
+
+    bool requestRefresh = isRtpQueueDiscard() || repairLoss;
+    repairLoss = false;
+    if (requestRefresh  && !wasRepairLoss) {
+        wasRepairLoss = true;
+        return -1.0;
+    }
+    float rate = targetRateScale*targetBitrate;
+    /*
+    * Video coders are strange animals.. In certain cases a very frequent rate requests can confuse the
+    * rate control logic in the coder
+    */
+    wasRepairLoss = false;
+    return rate;
+}
+
+/*
+* A small history of past max bitrates is maintained and the max value is picked.
+* This solves a problem where consequtive rate decreases can give too low
+*  targetBitrateI values.
+*/
+void ScreamTx::Stream::updateTargetBitrateI(float br) {
+    targetBitrateHist[targetBitrateHistPtr] = std::min(br, targetBitrate);
+    targetBitrateHistPtr = (targetBitrateHistPtr + 1) % kTargetBitrateHistSize;
+    targetBitrateI = std::min(br, targetBitrate);
+    for (int n = 0; n < kTargetBitrateHistSize; n++) {
+        targetBitrateI = std::max(targetBitrateI, targetBitrateHist[n]);
+    }
+
+}
+
+/*
+* Update the target bitrate, the target bitrate includes the RTP overhead
+*/
+void ScreamTx::Stream::updateTargetBitrate(uint64_t time_us) {
+    /*
+    * Compute a maximum bitrate, this bitrates includes the RTP overhead
+    */
+    float br = getMaxRate();
+    float rateRtpLimit = br;
+    if (initTime_us == 0) {
+        /*
+        * Initialize if the first time
+        */
+        initTime_us = time_us;
+        lastRtpQueueDiscardT_us = time_us;
+    }
+
+    if (lastBitrateAdjustT_us == 0) lastBitrateAdjustT_us = time_us;
+    isActive = true;
+    lastFrameT_us = time_us;
+
+    if (lossEventFlag || ecnCeEventFlag) {
+        /*
+        * Loss event handling
+        * Rate is reduced slightly to avoid that more frames than necessary
+        * queue up in the sender queue
+        */
+        if (time_us - lastTargetBitrateIUpdateT_us > 2000000) {
+            /*
+            * The timing constraint avoids that targetBitrateI
+            *  is set too low in cases where a congestion event is prolonged.
+            * An accurate targetBitrateI is not of extreme importance
+            *  but helps to avoid jitter spikes when SCReAM operates
+            *  over fixed bandwidth or slowly varying links.
+            */
+            updateTargetBitrateI(br);
+            lastTargetBitrateIUpdateT_us = time_us;
+        }
+        if (lossEventFlag)
+            targetBitrate = std::max(minBitrate, targetBitrate*lossEventRateScale);
+        else if (ecnCeEventFlag)
+            targetBitrate = std::max(minBitrate, targetBitrate*ecnCeEventRateScale);
+
+        lossEventFlag = false;
+        ecnCeEventFlag = false;
+        lastBitrateAdjustT_us = time_us;
+    }
+    else {
+        if (time_us - lastBitrateAdjustT_us < kRateAdjustInterval_us)
+            return;
+        /*
+        * A scale factor that is dependent on the inflection point
+        * i.e the last known highest video bitrate
+        */
+        float sclI = (targetBitrate - targetBitrateI) / targetBitrateI;
+        sclI *= 4;
+        sclI = std::max(0.2f, std::min(1.0f, sclI*sclI));
+        float increment = 0.0f;
+
+        /*
+        * Size of RTP queue [bits]
+        * As this function is called immediately after a
+        * video frame is produced, we need to accept the new
+        * RTP packets in the queue, we subtract a number of bytes correspoding to the size
+        * of the last frame (including RTP overhead), this is simply the aggregated size
+        * of the RTP packets with the highest RTP timestamp
+        */
+        int lastBytes = rtpQueue->getSizeOfLastFrame();
+        int txSizeBits = std::max(0, rtpQueue->bytesInQueue() - lastBytes) * 8;
+
+        float alpha = 0.5f;
+
+        txSizeBitsAvg = txSizeBitsAvg*alpha + txSizeBits*(1.0f - alpha);
+        /*
+        * tmp is a local scaling factor that makes rate adaptation sligthly more
+        * aggressive when competing flows (e.g file transfers) are detected
+        */
+        float rampUpSpeedTmp = std::min(rampUpSpeed, targetBitrate*0.5f);
+        if (parent->isCompetingFlows()) {
+            rampUpSpeedTmp *= 2.0f;
+        }
+
+        float rtpQueueDelay = rtpQueue->getDelay(time_us * 1e-6f);
+        if (rtpQueueDelay > maxRtpQueueDelay &&
+            (time_us - lastRtpQueueDiscardT_us > kMinRtpQueueDiscardInterval_us)) {
+            /*
+            * RTP queue is cleared as it is becoming too large,
+            * Function is however disabled initially as there is no reliable estimate of the
+            * throughput in the initial phase.
+            */
+            rtpQueue->clear();
+
+            rtpQueueDiscard = true;
+            //parent->bytesInFlight = 0;
+
+            lastRtpQueueDiscardT_us = time_us;
+            targetRateScale = 1.0;
+            txSizeBitsAvg = 0.0f;
+        }
+        else if (parent->inFastStart && rtpQueueDelay < 0.1f) {
+            /*
+            * Increment bitrate, limited by the rampUpSpeed
+            */
+            increment = rampUpSpeedTmp*(kRateAdjustInterval_us * 1e-6f);
+            /*
+            * Limit increase rate near the last known highest bitrate or if priority is low
+            */
+            increment *= sclI*sqrt(targetPriority);
+            /*
+            * No increase if the actual coder rate is lower than the target
+            */
+            if (targetBitrate > rateRtpLimit*1.5f)
+                increment = 0;
+            /*
+            * Add increment
+            */
+            targetBitrate += increment;
+            wasFastStart = true;
+        }
+        else {
+            if (wasFastStart) {
+                wasFastStart = false;
+                if (time_us - lastTargetBitrateIUpdateT_us > 2000000) {
+                    /*
+                    * The timing constraint avoids that targetBitrateI
+                    * is set too low in cases where a
+                    * congestion event is prolonged
+                    */
+                    updateTargetBitrateI(br);
+                    lastTargetBitrateIUpdateT_us = time_us;
+                }
+            }
+            /*
+            * scl is based on the queue delay trend
+            */
+            float scl = queueDelayGuard*parent->getQueueDelayTrend();
+            if (parent->isCompetingFlows())
+                scl *= 0.05f;
+
+            /*
+            * Update target rate
+            * At very low bitrates it is necessary to actively try to push the
+            *  the bitrate up some extra
+            */
+            float incrementScale = 1.0f + 0.05f*std::min(1.0f, 50000.0f / targetBitrate);
+
+            float increment = incrementScale*br*(1.0f - scl) -
+                txQueueSizeFactor*txSizeBitsAvg - targetBitrate;
+            if (txSizeBits > 12000 && increment > 0)
+                increment = 0;
+
+            if (increment > 0) {
+                wasFastStart = true;
+                if (!parent->isCompetingFlows()) {
+                    /*
+                    * Limit the bitrate increase so that it does not go faster than rampUpSpeedTmp
+                    * This limitation is not in effect if competing flows are detected
+                    */
+                    increment *= sclI;
+                    increment = std::min(increment, (float)(rampUpSpeedTmp*(kRateAdjustInterval_us * 1e-6)));
+                }
+                if (targetBitrate > rateRtpLimit*1.5f)
+                    increment = 0;
+            }
+            else {
+                /*
+                * Avoid that the target bitrate is reduced if it actually is the media
+                * coder that limits the output rate e.g due to inactivity
+                */
+                if (rateRtp < targetBitrate*0.8f)
+                    increment = 0.0f;
+                /*
+                * Also avoid that the target bitrate is reduced if
+                * the coder bitrate is higher
+                * than the target.
+                * The possible reason is that a large I frame is transmitted, another reason is
+                * complex dynamic content.
+                */
+                if (rateRtp > targetBitrate*2.0f)
+                    increment = 0.0f;
+            }
+            targetBitrate += increment;
+        }
+        lastBitrateAdjustT_us = time_us;
+    }
+
+    targetBitrate = std::min(maxBitrate, std::max(minBitrate, targetBitrate));
+}
+
+bool ScreamTx::Stream::isRtpQueueDiscard() {
+    bool tmp = rtpQueueDiscard;
+    rtpQueueDiscard = false;
+    return tmp;
+}
+
+/*
+* Adjust (enforce) proper prioritization between active streams
+* at regular intervals. This is a necessary addon to mitigate
+* issues that VBR media brings
+* The function consists of equal measures or rational thinking and
+* black magic, which means that there is no 100% guarantee that
+* will always work.
+*/
+void ScreamTx::adjustPriorities(uint64_t time_us) {
+    if (nStreams == 1 || time_us - lastAdjustPrioritiesT_us < 1000000) {
+        /*
+        * Skip if only one stream or if adjustment done less than 5s ago
+        */
+        return;
+    }
+
+    if (queueDelayTrend > 0.02) {
+        /*
+        * Adjust only if there is some evidence of congestion
+        */
+        int avgCreditLost = 0;
+        int avgCreditLostN = 0;
+        for (int n = 0; n < nStreams; n++) {
+            avgCreditLost += streams[n]->creditLost;
+            if (streams[n]->isActive)
+                avgCreditLostN++;
+        }
+        if (avgCreditLostN <= 1) {
+            /*
+            * At the most 1 steam active, skip adjustment
+            */
+            return;
+        }
+
+        avgCreditLost /= avgCreditLostN;
+        for (int n = 0; n < nStreams; n++) {
+            if (true && streams[n]->isActive) {
+                if (streams[n]->creditLost < avgCreditLost &&
+                    streams[n]->targetBitrate > streams[n]->rateRtp) {
+                    /*
+                    * Stream is using more of its share than the average
+                    * bitrate is likelky too high, reduce target bitrate
+                    * This algorithm works best when we want to ensure
+                    * different priorities
+                    */
+                    streams[n]->targetBitrate = std::max(streams[n]->minBitrate, streams[n]->targetBitrate*0.9f);
+                }
+            }
+        }
+
+        for (int n = 0; n < nStreams; n++)
+            streams[n]->creditLost = 0;
+
+
+        lastAdjustPrioritiesT_us = time_us;
+
+    }
+    if (time_us - lastAdjustPrioritiesT_us < 20000000) {
+        /*
+        * Clear old statistics of unused credits
+        */
+        for (int n = 0; n < nStreams; n++)
+            streams[n]->creditLost = 0;
+
+
+        lastAdjustPrioritiesT_us = time_us;
+    }
+}
+
+/*
+* Get the prioritized stream
+*/
+ScreamTx::Stream* ScreamTx::getPrioritizedStream(uint64_t time_us) {
+    /*
+    * Function that prioritizes between streams, this function may need
+    * to be modified to handle the prioritization better for e.g
+    * FEC, SVC etc.
+    */
+    if (nStreams == 1)
+        /*
+        * Skip if only one stream to save CPU
+        */
+        return streams[0];
+
+    int maxCredit = 1;
+    Stream *stream = NULL;
+    /*
+    * Pick a stream with credit higher or equal to
+    * the size of the next RTP packet in queue for the given stream.
+    */
+    for (int n = 0; n < nStreams; n++) {
+        Stream *tmp = streams[n];
+        if (tmp->rtpQueue->sizeOfQueue() == 0) {
+            /*
+            * Queue empty
+            */
+        }
+        else {
+            /*
+            * Pick stream if it has the highest credit so far
+            */
+            if (tmp->credit >= std::max(maxCredit, tmp->rtpQueue->sizeOfNextRtp())) {
+                stream = tmp;
+                maxCredit = tmp->credit;
+            }
+        }
+    }
+    if (stream != NULL) {
+        return stream;
+    }
+    /*
+    * If the above doesn't give a candidate..
+    * Pick the stream with the highest priority that also
+    * has at least one RTP packet in queue.
+    */
+    float maxPrio = 0.0;
+    for (int n = 0; n < nStreams; n++) {
+        Stream *tmp = streams[n];
+        float priority = tmp->targetPriority;
+        if (tmp->rtpQueue->sizeOfQueue() > 0 && priority > maxPrio) {
+            maxPrio = priority;
+            stream = tmp;
+        }
+    }
+    return stream;
+}
diff --git a/RPI/scream/scream_receiver/code/ScreamTx.h b/RPI/scream/scream_receiver/code/ScreamTx.h
new file mode 100644
index 0000000..786f465
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/ScreamTx.h
@@ -0,0 +1,618 @@
+#ifndef SCREAM_TX
+#define SCREAM_TX
+
+#include <string.h>
+#include <iostream>
+#include <cstdint>
+using namespace std;
+
+/*
+* This module implements the sender side of SCReAM,
+*  see https://github.com/EricssonResearch/scream/blob/master/SCReAM-description.pdf
+*  for details on how it is integrated in audio/video platforms
+* A full implementation needs the additional code for
+*  + RTCP feedback (e.g using RFC3611 XR elements)
+*  + RTP queue(s), one queue per stream, see SCReAM description for interface description
+*  + Other obvious stuff such as RTP payload packetizer, video+audio capture, coders....
+*
+*/
+
+// ==== Default parameters (if tuning necessary) ====
+// Connection related default parameters
+// CWND scale factor upon loss event
+static const float kLossBeta = 0.8f;
+// CWND scale factor upon ECN-CE event
+static const float kEcnCeBeta = 0.9f;
+// Min and max queue delay target
+static const float kQueueDelayTargetMin = 0.1f; //ms
+// Enable shared botleneck detection and queue delay target adjustement
+// good if SCReAM needs to compete with e.g FTP but
+// Can in some cases cause self-inflicted congestion
+//  i.e the e2e delay can become large even though
+//  there is no competing traffic present
+//  For some reason, self-inflicted congestion is easily triggered
+//  when an audio + video stream is run, so bottomline is that
+//  this feature is a bit shaky
+static const bool kEnableSbd = false;
+// CWND up and down gain factors
+static const float kGainUp = 1.0f;
+static const float kGainDown = 2.0f;
+
+// Stream related default parameters
+// Max video rampup speed in bps/s (bits per second increase per second)
+static const float kRampUpSpeed = 200000.0f; // bps/s
+// Max RTP queue delay, RTP queue is cleared if this value is exceeded
+static const float kMaxRtpQueueDelay = 0.1;  // 0.1s
+// Compensation factor for RTP queue size
+// A higher value such as 0.2 gives less jitter esp. in wireless (LTE)
+// but potentially also lower link utilization
+static const float kTxQueueSizeFactor = 0.2f;
+// Compensation factor for detected congestion in rate computation
+// A higher value such as 0.5 gives less jitter esp. in wireless (LTE)
+// but potentially also lower link utilization
+static const float kQueueDelayGuard = 0.1f;
+// Video rate scaling due to loss events
+static const float kLossEventRateScale = 0.9f;
+// Video rate scaling due to ECN marking events
+static const float kEcnCeEventRateScale = 0.95f;
+
+
+
+// Constants
+/*
+* Timestamp sampling rate for SCReAM feedback
+*/
+static const float kTimestampRate = 1000.0f;
+/*
+* Max number of RTP packets in flight
+* With and MSS = 1200 byte and an RTT = 200ms
+* this is enount to support media bitrates of ~50Mbps
+* Note, 65536 % kMaxTxPackets must be zero
+*/
+static const int kMaxTxPackets = 2048;
+/*
+* Max number of streams
+*/
+static const int kMaxStreams = 10;
+/*
+* History vectors
+*/
+static const int kBaseOwdHistSize = 50;
+static const int kQueueDelayNormHistSize = 200;
+static const int kQueueDelayNormHistSizeSh = 50;
+static const int kQueueDelayFractionHistSize = 20;
+static const int kBytesInFlightHistSizeMax = 60;
+static const int kRateUpDateSize = 4;
+static const int kTargetBitrateHistSize = 3;
+static const int kLossRateHistSize = 10;
+
+class RtpQueueIface;
+class ScreamTx {
+public:
+    /*
+    * Constructor, see constant definitions above for an explanation of parameters
+    * cwnd > 0 sets a different initial congestion window, for example it can be set to
+    *  initialrate/8*rtt
+    * cautiousPacing is set in the range [0.0..1.0]. A higher values restricts the transmission rate of large key frames
+    *  which can be beneficial if it is evident that large key frames cause packet drops, for instance due to
+    *  reduced buffer size in wireless modems.
+    *  This is however at the potential cost of an overall increased transmission delay also when links are uncongested
+    *  as the RTP packets are more likely to be buffered up on the sender side when cautiousPacing is set close to 1.0.
+    * lossBeta == 1.0 means that packet losses are ignored by the congestion control
+    */
+    ScreamTx(float lossBeta = kLossBeta,
+        float ecnCeBeta = kEcnCeBeta,
+        float queueDelayTargetMin = kQueueDelayTargetMin,
+        bool enableSbd = kEnableSbd,
+        float gainUp = kGainUp,
+        float gainDown = kGainDown,
+        int cwnd = 0,  // An initial cwnd larger than 2*mss
+        float cautiousPacing = 0.0f,
+        int bytesInFlightHistSize = 5,
+        bool openWindow = false);
+
+    ~ScreamTx();
+
+    /*
+    * Register a new stream {SSRC,PT} tuple,
+    *  with a priority value in the range ]0.0..1.0]
+    *  where 1.0 denotes the highest priority.
+    * It is recommended that at least one stream has prioritity 1.0.
+    * Bitrates are specified in bps
+    * See constant definitions above for an explanation of other default parameters
+    */
+    void registerNewStream(RtpQueueIface *rtpQueue,
+        uint32_t ssrc,
+        float priority,     // priority in range ]0.0 .. 1.0], 1.0 is highest
+        float minBitrate,   // Min target bitrate
+        float startBitrate, // Starting bitrate
+        float maxBitrate,   // Max target bitrate
+        float rampUpSpeed = kRampUpSpeed,
+        float maxRtpQueueDelay = kMaxRtpQueueDelay,
+        float txQueueSizeFactor = kTxQueueSizeFactor,
+        float queueDelayGuard = kQueueDelayGuard,
+        float lossEventRateScale = kLossEventRateScale,
+        float ecnCeEventRateScale = kEcnCeEventRateScale);
+
+    /*
+     * Updates the min and max bitrates for an existing stream
+     */
+    void updateBitrateStream(uint32_t ssrc,
+        float minBitrate,
+        float maxBitrate);
+
+    /*
+     * Access the configured RtpQueue of an existing stream
+     */
+    RtpQueueIface * getStreamQueue(uint32_t ssrc);
+
+    /*
+    * Call this function for each new video frame
+    *  Note : isOkToTransmit should be called after newMediaFrame
+    */
+    void newMediaFrame(uint64_t time_us, uint32_t ssrc, int bytesRtp);
+
+    /*
+    * Function determines if an RTP packet with SSRC can be transmitted
+    * Return values :
+    * 0.0  : RTP packet with SSRC can be immediately transmitted
+    *  addTransmitted must be called if packet is transmitted as a result of this
+    * >0.0 : Time [s] until this function should be called again
+    *   This can be used to start a timer
+    *   Note that a call to newMediaFrame or incomingFeedback should
+    *    cause an immediate call to isOkToTransmit
+    * -1.0 : No RTP packet available to transmit or send window is not large enough
+    */
+    float isOkToTransmit(uint64_t time_us, uint32_t &ssrc);
+
+    /*
+    * Add packet to list of transmitted packets
+    * should be called when an RTP packet transmitted
+    * Return time until isOkToTransmit can be called again
+    */
+    float addTransmitted(uint64_t timestamp_us, // Wall clock ts when packet is transmitted
+        uint32_t ssrc,
+        int size,
+        uint16_t seqNr);
+
+    /*
+    * New incoming feedback, this function
+    * triggers a CWND update
+    * The SCReAM timestamp is in jiffies, where the frequency is controlled
+    * by the timestamp clock frequency (default 1000Hz)
+    * The ackVector indicates recption of the 64 RTP SN prior to highestSeqNr
+    *  Note : isOkToTransmit should be called after incomingFeedback
+    * ecnCeMarkedBytes indicates the cumulative number of bytes that are ECN-CE marked
+    */
+    void incomingFeedback(uint64_t time_us,
+        uint32_t ssrc,         // SSRC of stream
+        uint32_t timestamp,    // SCReAM FB timestamp [jiffy]
+        uint16_t highestSeqNr, // Highest ACKed RTP sequence number
+        uint64_t ackVector,   // ACK vector
+        uint16_t ecnCeMarkedBytes = 0); // Number of ECN marked bytes
+
+    /*
+    * Parse feedback according to the format below. It is up to the
+    * wrapper application this RTCP from a compound RTCP if needed
+    * BT = 255, means that this is experimental use
+    *
+    * 0                   1                   2                   3
+    * 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |V=2|P|reserved |   PT=XR=207   |           length=6            |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                              SSRC                             |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |     BT=255    |    reserved   |         block length=4        |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                        SSRC of source                         |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * | Highest recv. seq. nr. (16b)  |         ECN_CE_bytes          |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                     Ack vector (b0-31)                        |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                     Ack vector (b32-63)                       |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                    Timestamp (32bits)                         |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    */
+    void incomingFeedback(uint64_t time_us,
+        unsigned char* buf,
+        int size);
+
+    /*
+    * Get the target bitrate for stream with SSRC
+    * NOTE!, Because SCReAM operates on RTP packets, the target bitrate will
+    *  also include the RTP overhead. This means that a subsequent call to set the
+    *  media coder target bitrate must subtract an estimate of the RTP + framing
+    *  overhead. This is not critical for Video bitrates but can be important
+    *  when SCReAM is used to congestion control e.g low bitrate audio streams
+    * Function returns -1 if a loss is detected, this signal can be used to
+    *  request a new key frame from a video encoder
+    */
+    float getTargetBitrate(uint32_t ssrc);
+
+    /*
+    * Set target priority for a given stream, priority value should be in range ]0.0..1.0]
+    */
+    void setTargetPriority(uint32_t ssrc, float aPriority);
+
+    /*
+    * Get verbose log information
+    */
+    void getLog(float time, char *s);
+
+    /*
+    * Get verbose log information
+    */
+    void getShortLog(float time, char *s);
+
+    /*
+    * Get overall simplified statistics
+    */
+    void getStatistics(float time, char *s);
+
+
+private:
+    /*
+    * Struct for list of RTP packets in flight
+    */
+    struct Transmitted {
+        uint64_t timeTx_us;
+        uint32_t timestamp;
+        int size;
+        uint16_t seqNr;
+        bool isUsed;
+        bool isAcked;
+        bool isAfterReceivedEdge;
+
+    };
+
+    /*
+      * Statistics for the network congestion control and the
+      *  stream[0]
+      */
+    class Statistics {
+    public:
+        Statistics();
+        void getSummary(float time, char s[]);
+        void add(float rateTx, float rateLost, float rtt, float queueDelay);
+    private:
+        float lossRateHist[kLossRateHistSize];
+        float rateLostAcc;
+        int rateLostN;
+        int lossRateHistPtr;
+        float avgRateTx;
+        float avgRtt;
+        float avgQueueDelay;
+        float sumRateTx;
+        float sumRateLost;
+
+    };
+
+
+    /*
+    * One instance is created for each {SSRC,PT} tuple
+    */
+    class Stream {
+    public:
+        Stream(ScreamTx *parent,
+            RtpQueueIface *rtpQueue,
+            uint32_t ssrc,
+            float priority,
+            float minBitrate,
+            float startBitrate,
+            float maxBitrate,
+            float rampUpSpeed,
+            float maxRtpQueueDelay,
+            float txQueueSizeFactor,
+            float queueDelayGuard,
+            float lossEventRateScale,
+            float ecnCeEventRateScale);
+
+        float getMaxRate();
+
+        float getTargetBitrate();
+
+        void updateRate(uint64_t time_us);
+
+        void updateTargetBitrateI(float br);
+
+        void updateTargetBitrate(uint64_t time_us);
+
+        bool isRtpQueueDiscard();
+
+        bool isMatch(uint32_t ssrc_) { return ssrc == ssrc_; };
+        ScreamTx *parent;
+        RtpQueueIface *rtpQueue;      // RTP Packet queue
+        uint32_t ssrc;            // SSRC of stream
+        float rampUpSpeed;
+        float maxRtpQueueDelay;
+        float txQueueSizeFactor;
+        float queueDelayGuard;
+        float lossEventRateScale;
+        float ecnCeEventRateScale;
+
+        int credit;             // Credit that is received if another stream gets
+        //  priority to transmit
+        int creditLost;         // Amount of lost (unused) credit, input to
+        //  adjustPriorities function
+        float targetPriority;   // Stream target priority
+        float targetPriorityInv;// Stream target priority inverted
+        int bytesTransmitted;   // Number of bytes transmitted
+        int bytesAcked;         // Number of ACKed bytes
+        int bytesLost;          // Number of lost bytes
+        float rateTransmitted;  // Transmitted rate
+        float rateAcked;        // ACKed rate
+        float rateLost;         // Lost packets (bit)rate
+        uint16_t hiSeqAck;      // Highest sequence number ACKed
+        uint16_t hiSeqTx;       // Highest sequence number transmitted
+        float minBitrate;       // Min bitrate
+        float maxBitrate;       // Max bitrate
+        float targetBitrate;    // Target bitrate
+        float targetBitrateI;   // Target bitrate inflection point
+        bool wasFastStart;      // Was fast start
+        bool lossEventFlag;     // Was loss event
+        bool ecnCeEventFlag;    // Was ECN mark event
+        float txSizeBitsAvg;    // Avergage nymber of bits in RTP queue
+        uint64_t lastBitrateAdjustT_us; // Last time rate was updated for this stream
+        uint64_t lastRateUpdateT_us;    // Last time rate estimate was updated
+        uint64_t lastTargetBitrateIUpdateT_us;    // Last time rate estimate was updated
+
+        uint64_t timeTxAck_us;  // timestamp when higest ACKed SN was transmitted
+
+        int bytesRtp;           // Number of RTP bytes from media coder
+        float rateRtp;          // Media bitrate
+        float rateRtpHist[kRateUpDateSize];
+        float rateAckedHist[kRateUpDateSize];
+        float rateLostHist[kRateUpDateSize];
+        float rateTransmittedHist[kRateUpDateSize];
+        int rateUpdateHistPtr;
+        float targetBitrateHist[kTargetBitrateHistSize];
+        int targetBitrateHistPtr;
+        uint64_t targetBitrateHistUpdateT_us;
+        float targetRateScale;
+
+        bool isActive;
+        uint64_t lastFrameT_us;
+        uint64_t initTime_us;
+        bool rtpQueueDiscard;
+        uint64_t lastRtpQueueDiscardT_us;
+        bool wasRepairLoss;
+        bool repairLoss;
+        int lastLossDetectIx;
+        uint16_t ecnCeMarkedBytes;
+
+
+        Transmitted txPackets[kMaxTxPackets];
+        int txPacketsPtr;
+
+    };
+
+    /*
+    * Initialize values
+    */
+    void initialize(uint64_t time_us);
+
+    /*
+    * Mark ACKed RTP packets
+    */
+    void markAcked(uint64_t time_us, struct Transmitted *txPackets, uint16_t highestSeqNr, uint64_t ackVector, uint32_t timestamp, Stream *stream);
+
+    /*
+    * Update CWND
+    */
+    void updateCwnd(uint64_t time_us);
+
+    /*
+    * Detect lost RTP packets
+    */
+    void detectLoss(uint64_t time_us, struct Transmitted *txPackets, uint16_t highestSeqNr, Stream *stream);
+
+    /*
+    * Call this function at regular intervals to determine active streams
+    */
+    void determineActiveStreams(uint64_t time_us);
+
+    /*
+    * Compute 1st order prediction coefficient of queue delay multiplied by the queue delay fraction
+    * A value [0.0..1.0] indicates if queue delay is increasing
+    * This gives a rough estimate of how the queuing delay delay evolves
+    */
+    void computeQueueDelayTrend();
+
+    /*
+    * Estimate one way delay [jiffy] and updated base delay
+    * Base delay is not subtracted
+    */
+    uint32_t estimateOwd(uint64_t time_us);
+
+    /*
+    * return base delay [jiffy]
+    */
+    uint32_t getBaseOwd();
+
+    /*
+    * Compute indicators of shared bottleneck
+    */
+    void computeSbd();
+
+    /*
+    * True if competing (TCP)flows detected
+    */
+    bool isCompetingFlows();
+
+    /*
+    * Get stream with corresponding SSRC
+    */
+    Stream* getStream(uint32_t ssrc);
+
+    /*
+    * Get matching stream index for this SSRC tuple,
+    *  return -1 if no match
+    */
+    int getStreamIndex(uint32_t ssrc);
+
+    /*
+    * Adjust stream bitrates to reflect priorities
+    */
+    void adjustPriorities(uint64_t time_us);
+
+    /*
+    * Get the prioritized stream
+    *  Return NULL if no stream with
+    *  with RTP packets
+    */
+    Stream* getPrioritizedStream(uint64_t time_us);
+
+    /*
+    * Add credit to unserved streams
+    */
+    void addCredit(uint64_t time_us,
+        Stream* servedStream,
+        int transmittedBytes);
+
+    /*
+    * Subtract used credit
+    */
+    void subtractCredit(uint64_t time_us,
+        Stream* servedStream,
+        int transmittedBytes);
+
+    /*
+    * return 1 if in fast start
+    */
+    int isInFastStart() { return inFastStart ? 1 : 0; };
+
+    /*
+    * Get the fraction between queue delay and the queue delay target
+    */
+    float getQueueDelayFraction();
+
+    /*
+    * Get the queuing delay trend
+    */
+    float getQueueDelayTrend();
+
+    /*
+    * Variables for network congestion control
+    */
+
+    /*
+    * Related to computation of queue delay and target queuing delay
+    */
+    float lossBeta;
+    float ecnCeBeta;
+    float queueDelayTargetMin;
+    bool enableSbd;
+    float gainUp;
+    float gainDown;
+    float cautiousPacing;
+
+    uint64_t sRttSh_us;
+    uint64_t sRtt_us;
+    float sRtt;
+    uint32_t ackedOwd;
+    uint32_t baseOwd;
+
+    uint32_t baseOwdHist[kBaseOwdHistSize];
+    int baseOwdHistPtr;
+    uint32_t baseOwdHistMin;
+    float queueDelay;
+    float queueDelayFractionAvg;
+    float queueDelayFractionHist[kQueueDelayFractionHistSize];
+    int queueDelayFractionHistPtr;
+    float queueDelayTrend;
+    float queueDelayTarget;
+    float queueDelayNormHist[kQueueDelayNormHistSize];
+    int queueDelayNormHistPtr;
+    float queueDelaySbdVar;
+    float queueDelaySbdMean;
+    float queueDelaySbdSkew;
+    float queueDelaySbdMeanSh;
+    float queueDelayMax;
+
+    /*
+    * CWND management
+    */
+    int bytesNewlyAcked;
+    int mss; // Maximum Segment Size
+    int cwnd; // congestion window
+    int cwndMin;
+    bool openWindow;
+    int bytesInFlight;
+    int bytesInFlightHistLo[kBytesInFlightHistSizeMax];
+    int bytesInFlightHistHi[kBytesInFlightHistSizeMax];
+    int bytesInFlightHistSize;
+    int bytesInFlightHistPtr;
+    int bytesInFlightMaxLo;
+    int bytesInFlightHistLoMem;
+    int bytesInFlightMaxHi;
+    int bytesInFlightHistHiMem;
+    float maxBytesInFlight;
+    int accBytesInFlightMax;
+    int nAccBytesInFlightMax;
+    float rateTransmitted;
+    float rateAcked;
+    float queueDelayTrendMem;
+    float maxRate;
+    uint64_t lastCwndUpdateT_us;
+
+    /*
+    * Loss event
+    */
+    bool lossEvent;
+    bool wasLossEvent;
+    float lossEventRate;
+
+    /*
+    * ECN-CE
+    */
+    bool ecnCeEvent;
+
+    /*
+    * Fast start
+    */
+    bool inFastStart;
+
+    /*
+    * Transmission scheduling
+    */
+    uint64_t paceInterval_us;
+    float paceInterval;
+    float rateTransmittedAvg;
+
+    /*
+    * Update control variables
+    */
+    bool isInitialized;
+    uint64_t lastSRttUpdateT_us;
+    uint64_t lastBaseOwdAddT_us;
+    uint64_t baseOwdResetT_us;
+    uint64_t lastAddToQueueDelayFractionHistT_us;
+    uint64_t lastBytesInFlightT_us;
+    uint64_t lastCongestionDetectedT_us;
+    uint64_t lastLossEventT_us;
+    uint64_t lastTransmitT_us;
+    uint64_t nextTransmitT_us;
+    uint64_t lastRateUpdateT_us;
+    uint64_t lastAdjustPrioritiesT_us;
+    uint64_t lastRttT_us;
+    uint64_t lastBaseDelayRefreshT_us;
+    uint64_t initTime_us;
+    float queueDelayMin;
+    float queueDelayMinAvg;
+
+    /*
+    * Variables for multiple steams handling
+    */
+    Stream *streams[kMaxStreams];
+    int nStreams;
+
+    /*
+      * Statistics
+      */
+    Statistics *statistics;
+
+};
+#endif
diff --git a/RPI/scream/scream_receiver/code/cmake_install.cmake b/RPI/scream/scream_receiver/code/cmake_install.cmake
new file mode 100644
index 0000000..e6a060c
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/cmake_install.cmake
@@ -0,0 +1,34 @@
+# Install script for directory: /home/robert/Downloads/panasonic-ip-cam_new/scream_receiver/code
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+  set(CMAKE_INSTALL_PREFIX "/usr/local")
+endif()
+string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+  if(BUILD_TYPE)
+    string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+           CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+  else()
+    set(CMAKE_INSTALL_CONFIG_NAME "")
+  endif()
+  message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+endif()
+
+# Set the component getting installed.
+if(NOT CMAKE_INSTALL_COMPONENT)
+  if(COMPONENT)
+    message(STATUS "Install component: \"${COMPONENT}\"")
+    set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+  else()
+    set(CMAKE_INSTALL_COMPONENT)
+  endif()
+endif()
+
+# Install shared libraries without execute permission?
+if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
+  set(CMAKE_INSTALL_SO_NO_EXE "1")
+endif()
+
diff --git a/RPI/scream/scream_receiver/code/scream_receiver.cpp b/RPI/scream/scream_receiver/code/scream_receiver.cpp
new file mode 100644
index 0000000..33da685
--- /dev/null
+++ b/RPI/scream/scream_receiver/code/scream_receiver.cpp
@@ -0,0 +1,317 @@
+// Scream sender side wrapper
+#include "ScreamRx.h"
+#include "sys/socket.h"
+#include "sys/types.h"
+#include "netinet/in.h"
+#include <string.h> /* needed for memset */
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+#include <sys/time.h>
+#include <iostream>
+#include <fcntl.h>
+#include <unistd.h>
+#include <pthread.h>
+using namespace std;
+
+/*
+* Scream receiver side wrapper
+* Receives SCReAM congestion controlled RTP media and
+*  generates RTCP feedback to the sender, over the same RTP port
+* Media sources (max 6) are demultiplexed and forwarded to local RTP ports
+*  given by local_port list
+*/
+
+#define BUFSIZE 2048
+
+#define MAX_SOURCES 6
+uint32_t SSRC_RTCP=10;
+
+
+// Input UDP socket, RTP packets come here and we send RTCP packets in the
+// reverse direction through this socket
+int fd_in_rtp;
+
+ScreamRx *screamRx = 0;
+
+
+int fd_local_rtp[MAX_SOURCES];
+uint32_t ssrcMap[MAX_SOURCES];
+
+char* in_ip = "192.168.0.20";
+int in_port = 30122;
+struct sockaddr_in in_rtp_addr, out_rtcp_addr, sender_rtcp_addr;
+struct sockaddr_in local_rtp_addr[MAX_SOURCES];
+
+char* local_ip = "127.0.0.1";
+int local_port[MAX_SOURCES] = {30130,30132,30134,30136,30138,30140};
+int nSources = 0;
+
+pthread_mutex_t lock_scream;
+
+long getTimeInUs(){
+  struct timeval tp;
+  gettimeofday(&tp, NULL);
+  long us = tp.tv_sec * 1000000 + tp.tv_usec;
+  return us;
+}
+
+/*
+Extract the sequence number and the timestamp from the RTP header
+0                   1                   2                   3
+0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+|V=2|P|X|  CC   |M|     PT      |       sequence number         |
++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+|                           timestamp                           |
++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+|           synchronization source (SSRC) identifier            |
++=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
+|            contributing source (CSRC) identifiers             |
+|                             ....                              |
++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+*/
+
+void parseRtp(unsigned char *buf, uint16_t* seqNr, uint32_t* timeStamp, uint32_t* ssrc) {
+  uint16_t tmp_s;
+  uint32_t tmp_l;
+  memcpy(&tmp_s, buf + 2, 2);
+  *seqNr = ntohs(tmp_s);
+  memcpy(&tmp_l, buf + 4, 4);
+  *timeStamp  = ntohl(tmp_l);
+  memcpy(&tmp_l, buf + 8, 4);
+  *ssrc  = ntohl(tmp_l);
+}
+
+uint64_t lastPunchNatT_us = 0;
+
+#define KEEP_ALIVE_PKT_SIZE 1
+    
+void *rtcpPeriodicThread(void *arg) {
+  unsigned char buf[BUFSIZE];
+  int rtcpSize;
+  uint64_t rtcpFbInterval_us = screamRx->getRtcpFbInterval(); 
+  for (;;) {
+    uint64_t time_us = getTimeInUs();
+
+    if (getTimeInUs() - lastPunchNatT_us > 500000) {
+      /*
+      * Send a small packet just to punch open a hole in the NAT,
+      *  just one single byte will do.
+      * This makes in possible to receive packets on the same port
+      */
+      int ret = sendto(fd_in_rtp, buf, KEEP_ALIVE_PKT_SIZE, 0, (struct sockaddr *)&out_rtcp_addr, sizeof(out_rtcp_addr));
+      lastPunchNatT_us = getTimeInUs();
+      cerr << "." << endl;
+    }
+
+    if (screamRx->isFeedback(time_us) && 
+         (screamRx->checkIfFlushAck() ||
+         (time_us - screamRx->getLastFeedbackT() > rtcpFbInterval_us))) {
+      rtcpFbInterval_us = screamRx->getRtcpFbInterval();
+
+      pthread_mutex_lock(&lock_scream);
+      screamRx->createFeedback(time_us, buf, rtcpSize);
+      pthread_mutex_unlock(&lock_scream);
+      sendto(fd_in_rtp, buf, rtcpSize, 0, (struct sockaddr *)&out_rtcp_addr, sizeof(out_rtcp_addr));
+      lastPunchNatT_us = getTimeInUs();
+    }
+    usleep(500);
+  }
+}
+
+#define MAX_CTRL_SIZE 8192
+#define MAX_BUF_SIZE 65536
+#define ALL_CODE
+
+int main(int argc, char* argv[])
+{
+  unsigned char bufRtp[BUFSIZE];
+  if (argc <= 1) {
+    cerr << "Usage :" << endl << " >scream_receiver incoming_ip incoming_port" << endl;
+    exit(-1);
+  }
+  in_ip = argv[1];
+  in_port = atoi(argv[2]);
+
+
+  screamRx = new ScreamRx(SSRC_RTCP);
+
+  in_rtp_addr.sin_family = AF_INET;
+  in_rtp_addr.sin_addr.s_addr = htonl(INADDR_ANY);
+  in_rtp_addr.sin_port = htons(in_port);
+
+  if ((fd_in_rtp = socket(AF_INET, SOCK_DGRAM, 0)) < 0) {
+    perror("cannot create socket for incoming RTP packets");
+    return 0;
+  }
+
+  out_rtcp_addr.sin_family = AF_INET;
+  inet_aton(in_ip,(in_addr*) &out_rtcp_addr.sin_addr.s_addr);
+  out_rtcp_addr.sin_port = htons(in_port);
+
+  for (int n=0; n < MAX_SOURCES; n++) {
+    local_rtp_addr[n].sin_family = AF_INET;
+    inet_aton(local_ip,(in_addr*) &local_rtp_addr[n].sin_addr.s_addr);
+    local_rtp_addr[n].sin_port = htons(local_port[n]);
+    if ((fd_local_rtp[n] = socket(AF_INET, SOCK_DGRAM, 0)) < 0) {
+      perror("cannot create socket for outgoing RTP packets to renderer (video decoder)");
+      return 0;
+    }
+  }
+
+  int enable = 1;
+  if (setsockopt(fd_in_rtp, SOL_SOCKET, SO_REUSEADDR, &enable, sizeof(int)) < 0) {
+    perror("setsockopt(SO_REUSEADDR) failed");
+  }
+  unsigned char set = 0x03;
+  if (setsockopt(fd_in_rtp, IPPROTO_IP, IP_RECVTOS, &set,sizeof(set)) < 0) {
+    cerr << "cannot set recvtos on incoming socket" << endl;
+  } else {
+    cerr << "socket set to recvtos" << endl;
+  }
+
+  if (bind(fd_in_rtp, (struct sockaddr *)&in_rtp_addr, sizeof(in_rtp_addr)) < 0) {
+    perror("bind incoming_rtp_addr failed");
+    return 0;
+  } else{
+    cerr << "Listen on port " << in_port <<" to receive RTP from sender, this is the new version " << endl;
+  }
+
+  struct sockaddr_in sender_rtp_addr;
+  socklen_t addrlen_sender_rtp_addr = sizeof(sender_rtp_addr);
+
+  int recvlen;
+
+  uint64_t last_received_time = 0;
+  uint32_t receivedRtp = 0;
+
+  /*
+  * Send a small packet just to punch open a hole in the NAT,
+  *  just one single byte will do.
+  * This makes in possible to receive packets on the same port
+  */
+  sendto(fd_in_rtp, bufRtp, KEEP_ALIVE_PKT_SIZE, 0, (struct sockaddr *)&out_rtcp_addr, sizeof(out_rtcp_addr));
+  lastPunchNatT_us = getTimeInUs();
+
+  pthread_t rtcp_thread;
+  pthread_mutex_init(&lock_scream, NULL);
+  pthread_create(&rtcp_thread, NULL, rtcpPeriodicThread, "Periodic RTCP thread...");
+
+  int *ecnptr;
+  unsigned char received_ecn;
+
+  struct msghdr rcv_msg;
+  struct iovec rcv_iov[1];
+  char rcv_ctrl_data[MAX_CTRL_SIZE];
+  char rcv_buf[MAX_BUF_SIZE];
+
+   /* Prepare message for receiving */
+  rcv_iov[0].iov_base = rcv_buf;
+  rcv_iov[0].iov_len = MAX_BUF_SIZE;
+
+  rcv_msg.msg_name = NULL;	// Socket is connected
+  rcv_msg.msg_namelen = 0;
+  rcv_msg.msg_iov = rcv_iov;
+  rcv_msg.msg_iovlen = 1;
+  rcv_msg.msg_control = rcv_ctrl_data;
+  rcv_msg.msg_controllen = MAX_CTRL_SIZE;
+
+  for (;;) {
+    /*
+    * Wait for incoing RTP packet, this call can be blocking
+    */
+
+    /*
+    * Extract ECN bits
+    */
+    int recvlen = recvmsg(fd_in_rtp, &rcv_msg, 0);
+    bool isEcnCe = false;
+    if (recvlen == -1) {
+	    perror("recvmsg()");
+	    close(fd_in_rtp);
+	    return EXIT_FAILURE;
+    } else {
+	    struct cmsghdr *cmptr;
+	    int *ecnptr;
+	    unsigned char received_ecn;
+	    for (cmptr = CMSG_FIRSTHDR(&rcv_msg);
+			  cmptr != NULL;
+			  cmptr = CMSG_NXTHDR(&rcv_msg, cmptr)) {
+		    if (cmptr->cmsg_level == IPPROTO_IP && cmptr->cmsg_type == IP_TOS) {
+			    ecnptr = (int*)CMSG_DATA(cmptr);
+			    received_ecn = *ecnptr;
+          if (received_ecn == 0x3)
+            isEcnCe = true;
+		    }
+	    }
+      memcpy(bufRtp,rcv_msg.msg_iov[0].iov_base,recvlen);
+    }
+    uint64_t time_us = getTimeInUs();
+    if (recvlen > 1) {
+      if (bufRtp[1] == 0x7F) {
+        // Packet contains statistics
+        recvlen -= 2; // 2 bytes
+        char s[1000];
+        memcpy(s,&bufRtp[2],recvlen);
+        s[recvlen] = 0x00;
+        cout << s << endl;
+      } else if (bufRtp[1] == 0x7E) {
+        // Packet contains an SSRC map
+	nSources = (recvlen-2)/4;
+        for (int n=0; n < nSources; n++) {
+          uint32_t tmp_l; 
+          memcpy(&tmp_l, bufRtp+2+n*4, 4);
+          ssrcMap[n] = ntohl(tmp_l);
+	}
+      } else {
+        if (time_us - last_received_time > 2000000) {
+          /*
+          * It's been more than 5 seconds since we last received an RTP packet
+          *  let's reset everything to be on the safe side
+          */
+          receivedRtp = 0;
+          pthread_mutex_lock(&lock_scream);
+          delete screamRx;
+          screamRx = new ScreamRx(SSRC_RTCP);
+          pthread_mutex_unlock(&lock_scream);
+          cerr << "Receiver state reset due to idle input" << endl;
+        }
+        last_received_time = time_us;
+        receivedRtp++;
+
+        /*
+        * Parse RTP header
+        */
+        uint16_t seqNr;
+        uint32_t ts;
+        uint32_t ssrc;
+        parseRtp(bufRtp,&seqNr, &ts, &ssrc);
+
+        /*
+        * Map the RTP packets to correct display by means of the ssrcMap
+        */
+        int ix = -1;
+        for (int n=0; n < nSources; n++) {
+           if (ssrc == ssrcMap[n]) {
+             ix = n;
+             break;
+           }
+        }
+        if (ix != -1) {
+          /*
+          * Forward RTP packet to the correct internal port, for e.g GStreamer playout
+          */
+          sendto(fd_local_rtp[ix], bufRtp, recvlen, 0, (struct sockaddr *)&local_rtp_addr[ix], sizeof(local_rtp_addr[ix]));
+	}
+
+        /*
+        * Register received RTP packet with ScreamRx
+        */
+        pthread_mutex_lock(&lock_scream);
+        screamRx->receive(time_us, 0, ssrc, recvlen, seqNr, isEcnCe);
+        pthread_mutex_unlock(&lock_scream);
+      }
+    }
+  }
+}
diff --git a/RPI/scream/scream_sender/CMakeCache.txt b/RPI/scream/scream_sender/CMakeCache.txt
new file mode 100644
index 0000000..01b7fee
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeCache.txt
@@ -0,0 +1,255 @@
+# This is the CMakeCache file.
+# For build in directory: /home/pi/scream/scream_sender
+# It was generated by CMake: /usr/bin/cmake
+# You can edit this file to change values found and used by cmake.
+# If you do not want to change any of the values, simply exit the editor.
+# If you do want to change a value, simply edit, save, and exit the editor.
+# The syntax for the file is as follows:
+# KEY:TYPE=VALUE
+# KEY is the name of a variable in the cache.
+# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
+# VALUE is the current value for the KEY.
+
+########################
+# EXTERNAL cache entries
+########################
+
+//Choose the type of build, options are: None(CMAKE_CXX_FLAGS or
+// CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel.
+CMAKE_BUILD_TYPE:STRING=
+
+//Enable/Disable color output during build.
+CMAKE_COLOR_MAKEFILE:BOOL=ON
+
+//Flags used by the compiler during all build types.
+CMAKE_CXX_FLAGS:STRING=
+
+//Flags used by the compiler during debug builds.
+CMAKE_CXX_FLAGS_DEBUG:STRING=-g
+
+//Flags used by the compiler during release builds for minimum
+// size.
+CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
+
+//Flags used by the compiler during release builds.
+CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
+
+//Flags used by the compiler during release builds with debug info.
+CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
+
+//Flags used by the compiler during all build types.
+CMAKE_C_FLAGS:STRING=
+
+//Flags used by the compiler during debug builds.
+CMAKE_C_FLAGS_DEBUG:STRING=-g
+
+//Flags used by the compiler during release builds for minimum
+// size.
+CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
+
+//Flags used by the compiler during release builds.
+CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
+
+//Flags used by the compiler during release builds with debug info.
+CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
+
+//Flags used by the linker.
+CMAKE_EXE_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during debug builds.
+CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during release minsize builds.
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during release builds.
+CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during Release with Debug Info builds.
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Enable/Disable output of compile commands during generation.
+CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF
+
+//Install path prefix, prepended onto install directories.
+CMAKE_INSTALL_PREFIX:PATH=/usr/local
+
+//Path to a program.
+CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make
+
+//Flags used by the linker during the creation of modules.
+CMAKE_MODULE_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during debug builds.
+CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during release minsize builds.
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during release builds.
+CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during Release with Debug Info builds.
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Value Computed by CMake
+CMAKE_PROJECT_NAME:STATIC=scream
+
+//Flags used by the linker during the creation of dll's.
+CMAKE_SHARED_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during debug builds.
+CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during release minsize builds.
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during release builds.
+CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during Release with Debug Info builds.
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//If set, runtime paths are not added when installing shared libraries,
+// but are added when building.
+CMAKE_SKIP_INSTALL_RPATH:BOOL=NO
+
+//If set, runtime paths are not added when using shared libraries.
+CMAKE_SKIP_RPATH:BOOL=NO
+
+//Flags used by the linker during the creation of static libraries.
+CMAKE_STATIC_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during debug builds.
+CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during release minsize builds.
+CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during release builds.
+CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during Release with Debug Info builds.
+CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//If this value is on, makefiles will be generated without the
+// .SILENT directive, and all commands will be echoed to the console
+// during the make.  This is useful for debugging only. With Visual
+// Studio IDE projects all commands are done without /nologo.
+CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE
+
+//Value Computed by CMake
+scream_BINARY_DIR:STATIC=/home/pi/scream/scream_sender
+
+//Value Computed by CMake
+scream_SOURCE_DIR:STATIC=/home/pi/scream/scream_sender
+
+
+########################
+# INTERNAL cache entries
+########################
+
+//This is the directory where this CMakeCache.txt was created
+CMAKE_CACHEFILE_DIR:INTERNAL=/home/pi/scream/scream_sender
+//Major version of cmake used to create the current loaded cache
+CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
+//Minor version of cmake used to create the current loaded cache
+CMAKE_CACHE_MINOR_VERSION:INTERNAL=7
+//Patch version of cmake used to create the current loaded cache
+CMAKE_CACHE_PATCH_VERSION:INTERNAL=2
+//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE
+CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1
+//Path to CMake executable.
+CMAKE_COMMAND:INTERNAL=/usr/bin/cmake
+//Path to cpack program executable.
+CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack
+//Path to ctest program executable.
+CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest
+//ADVANCED property for variable: CMAKE_CXX_FLAGS
+CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG
+CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL
+CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE
+CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO
+CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS
+CMAKE_C_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG
+CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL
+CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE
+CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO
+CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
+CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG
+CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE
+CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
+CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
+//Name of external makefile project generator.
+CMAKE_EXTRA_GENERATOR:INTERNAL=
+//Name of generator.
+CMAKE_GENERATOR:INTERNAL=Unix Makefiles
+//Name of generator platform.
+CMAKE_GENERATOR_PLATFORM:INTERNAL=
+//Name of generator toolset.
+CMAKE_GENERATOR_TOOLSET:INTERNAL=
+//Source directory with the top level CMakeLists.txt file for this
+// project
+CMAKE_HOME_DIRECTORY:INTERNAL=/home/pi/scream/scream_sender
+//Install .so files without execute permission.
+CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MAKE_PROGRAM
+CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
+CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
+CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE
+CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//number of local generators
+CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=2
+//Path to CMake installation.
+CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.7
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
+CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
+CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE
+CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
+CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_RPATH
+CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS
+CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG
+CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL
+CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE
+CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
+CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
+
diff --git a/RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeCCompiler.cmake b/RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeCCompiler.cmake
new file mode 100644
index 0000000..d628b11
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeCCompiler.cmake
@@ -0,0 +1,68 @@
+set(CMAKE_C_COMPILER "/usr/bin/cc")
+set(CMAKE_C_COMPILER_ARG1 "")
+set(CMAKE_C_COMPILER_ID "GNU")
+set(CMAKE_C_COMPILER_VERSION "6.3.0")
+set(CMAKE_C_COMPILER_WRAPPER "")
+set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "11")
+set(CMAKE_C_COMPILE_FEATURES "c_function_prototypes;c_restrict;c_variadic_macros;c_static_assert")
+set(CMAKE_C90_COMPILE_FEATURES "c_function_prototypes")
+set(CMAKE_C99_COMPILE_FEATURES "c_restrict;c_variadic_macros")
+set(CMAKE_C11_COMPILE_FEATURES "c_static_assert")
+
+set(CMAKE_C_PLATFORM_ID "Linux")
+set(CMAKE_C_SIMULATE_ID "")
+set(CMAKE_C_SIMULATE_VERSION "")
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_COMPILER_IS_GNUCC 1)
+set(CMAKE_C_COMPILER_LOADED 1)
+set(CMAKE_C_COMPILER_WORKS TRUE)
+set(CMAKE_C_ABI_COMPILED TRUE)
+set(CMAKE_COMPILER_IS_MINGW )
+set(CMAKE_COMPILER_IS_CYGWIN )
+if(CMAKE_COMPILER_IS_CYGWIN)
+  set(CYGWIN 1)
+  set(UNIX 1)
+endif()
+
+set(CMAKE_C_COMPILER_ENV_VAR "CC")
+
+if(CMAKE_COMPILER_IS_MINGW)
+  set(MINGW 1)
+endif()
+set(CMAKE_C_COMPILER_ID_RUN 1)
+set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m)
+set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
+set(CMAKE_C_LINKER_PREFERENCE 10)
+
+# Save compiler ABI information.
+set(CMAKE_C_SIZEOF_DATA_PTR "8")
+set(CMAKE_C_COMPILER_ABI "ELF")
+set(CMAKE_C_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+
+if(CMAKE_C_SIZEOF_DATA_PTR)
+  set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_C_COMPILER_ABI)
+  set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
+endif()
+
+if(CMAKE_C_LIBRARY_ARCHITECTURE)
+  set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+endif()
+
+set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_C_CL_SHOWINCLUDES_PREFIX)
+  set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "c")
+set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/6;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
+set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeCXXCompiler.cmake b/RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeCXXCompiler.cmake
new file mode 100644
index 0000000..0018983
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeCXXCompiler.cmake
@@ -0,0 +1,69 @@
+set(CMAKE_CXX_COMPILER "/usr/bin/c++")
+set(CMAKE_CXX_COMPILER_ARG1 "")
+set(CMAKE_CXX_COMPILER_ID "GNU")
+set(CMAKE_CXX_COMPILER_VERSION "6.3.0")
+set(CMAKE_CXX_COMPILER_WRAPPER "")
+set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "14")
+set(CMAKE_CXX_COMPILE_FEATURES "cxx_template_template_parameters;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
+set(CMAKE_CXX98_COMPILE_FEATURES "cxx_template_template_parameters")
+set(CMAKE_CXX11_COMPILE_FEATURES "cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
+set(CMAKE_CXX14_COMPILE_FEATURES "cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
+
+set(CMAKE_CXX_PLATFORM_ID "Linux")
+set(CMAKE_CXX_SIMULATE_ID "")
+set(CMAKE_CXX_SIMULATE_VERSION "")
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_COMPILER_IS_GNUCXX 1)
+set(CMAKE_CXX_COMPILER_LOADED 1)
+set(CMAKE_CXX_COMPILER_WORKS TRUE)
+set(CMAKE_CXX_ABI_COMPILED TRUE)
+set(CMAKE_COMPILER_IS_MINGW )
+set(CMAKE_COMPILER_IS_CYGWIN )
+if(CMAKE_COMPILER_IS_CYGWIN)
+  set(CYGWIN 1)
+  set(UNIX 1)
+endif()
+
+set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
+
+if(CMAKE_COMPILER_IS_MINGW)
+  set(MINGW 1)
+endif()
+set(CMAKE_CXX_COMPILER_ID_RUN 1)
+set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
+set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;mm;CPP)
+set(CMAKE_CXX_LINKER_PREFERENCE 30)
+set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
+
+# Save compiler ABI information.
+set(CMAKE_CXX_SIZEOF_DATA_PTR "8")
+set(CMAKE_CXX_COMPILER_ABI "ELF")
+set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+
+if(CMAKE_CXX_SIZEOF_DATA_PTR)
+  set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_CXX_COMPILER_ABI)
+  set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
+endif()
+
+if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
+  set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+endif()
+
+set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
+  set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;c")
+set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/6;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
+set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_C.bin b/RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_C.bin
new file mode 100644
index 0000000000000000000000000000000000000000..49ad92475e2dff2eb841033d3871ac56f77ac402
GIT binary patch
literal 8464
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_CXX.bin b/RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeDetermineCompilerABI_CXX.bin
new file mode 100644
index 0000000000000000000000000000000000000000..400f61846d12c9d5edfdb261fe337d9ea54ece55
GIT binary patch
literal 8472
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
P`X<zZe=q?kjjkU6ISZ}t

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeSystem.cmake b/RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeSystem.cmake
new file mode 100644
index 0000000..50dad55
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeFiles/3.7.2/CMakeSystem.cmake
@@ -0,0 +1,15 @@
+set(CMAKE_HOST_SYSTEM "Linux-4.10.0-37-generic")
+set(CMAKE_HOST_SYSTEM_NAME "Linux")
+set(CMAKE_HOST_SYSTEM_VERSION "4.10.0-37-generic")
+set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64")
+
+
+
+set(CMAKE_SYSTEM "Linux-4.10.0-37-generic")
+set(CMAKE_SYSTEM_NAME "Linux")
+set(CMAKE_SYSTEM_VERSION "4.10.0-37-generic")
+set(CMAKE_SYSTEM_PROCESSOR "x86_64")
+
+set(CMAKE_CROSSCOMPILING "FALSE")
+
+set(CMAKE_SYSTEM_LOADED 1)
diff --git a/RPI/scream/scream_sender/CMakeFiles/3.7.2/CompilerIdC/CMakeCCompilerId.c b/RPI/scream/scream_sender/CMakeFiles/3.7.2/CompilerIdC/CMakeCCompilerId.c
new file mode 100644
index 0000000..512e360
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeFiles/3.7.2/CompilerIdC/CMakeCCompilerId.c
@@ -0,0 +1,561 @@
+#ifdef __cplusplus
+# error "A C++ compiler has been selected for C."
+#endif
+
+#if defined(__18CXX)
+# define ID_VOID_MAIN
+#endif
+#if defined(__CLASSIC_C__)
+/* cv-qualifiers did not exist in K&R C */
+# define const
+# define volatile
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+   Version date components:   YYYY=Year, MM=Month,   DD=Day  */
+
+#if defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+  /* __INTEL_COMPILER = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+# if defined(__INTEL_COMPILER_UPDATE)
+#  define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+# else
+#  define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER   % 10)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+  /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+#  define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__     & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+  /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+   /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+   /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_C)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_C >= 0x5100
+   /* __SUNPRO_C = 0xVRRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_C    & 0xF)
+# else
+   /* __SUNPRO_CC = 0xVRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_C    & 0xF)
+# endif
+
+#elif defined(__HP_cc)
+# define COMPILER_ID "HP"
+  /* __HP_cc = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_cc     % 100)
+
+#elif defined(__DECC)
+# define COMPILER_ID "Compaq"
+  /* __DECC_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000  % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECC_VER         % 10000)
+
+#elif defined(__IBMC__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800
+# define COMPILER_ID "XL"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800
+# define COMPILER_ID "VisualAge"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+  /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000   % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__        % 1000)
+
+#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version)
+# define COMPILER_ID "Fujitsu"
+
+#elif defined(__TINYC__)
+# define COMPILER_ID "TinyCC"
+
+#elif defined(__BCC__)
+# define COMPILER_ID "Bruce"
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__GNUC__)
+# define COMPILER_ID "GNU"
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# if defined(__GNUC_MINOR__)
+#  define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+  /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+#  if _MSC_VER >= 1400
+    /* _MSC_FULL_VER = VVRRPPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+#  else
+    /* _MSC_FULL_VER = VVRRPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+#  endif
+# endif
+# if defined(_MSC_BUILD)
+#  define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+  /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8  & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__ ) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+
+#elif defined(__ARMCC_VERSION)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+  /* __ARMCC_VERSION = VRRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION     % 10000)
+#else
+  /* __ARMCC_VERSION = VRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION    % 10000)
+#endif
+
+
+#elif defined(SDCC)
+# define COMPILER_ID "SDCC"
+  /* SDCC = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(SDCC/100)
+#  define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(SDCC    % 10)
+
+#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION)
+# define COMPILER_ID "MIPSpro"
+# if defined(_SGI_COMPILER_VERSION)
+  /* _SGI_COMPILER_VERSION = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100)
+#  define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION    % 10)
+# else
+  /* _COMPILER_VERSION = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100)
+#  define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION    % 10)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+  identification macro.  Try to identify the platform and guess that
+  it is the native compiler.  */
+#elif defined(__sgi)
+# define COMPILER_ID "MIPSpro"
+
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXE) || defined(__CRAYXC)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name.  */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__sgi) || defined(__sgi__) || defined(_SGI)
+# define PLATFORM_ID "IRIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+#  define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+#  define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+#  define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+#  define PLATFORM_ID "Windows3x"
+
+# else /* unknown platform */
+#  define PLATFORM_ID
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+   the architecture of the compiler being used.  This is because
+   the compilers do not have flags that can change the architecture,
+   but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+#  define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+#  define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM)
+#  if _M_ARM == 4
+#   define ARCHITECTURE_ID "ARMV4I"
+#  elif _M_ARM == 5
+#   define ARCHITECTURE_ID "ARMV5I"
+#  else
+#   define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+#  endif
+
+# elif defined(_M_MIPS)
+#  define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+#  define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+#  define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#else
+#  define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals.  */
+#define DEC(n)                   \
+  ('0' + (((n) / 10000000)%10)), \
+  ('0' + (((n) / 1000000)%10)),  \
+  ('0' + (((n) / 100000)%10)),   \
+  ('0' + (((n) / 10000)%10)),    \
+  ('0' + (((n) / 1000)%10)),     \
+  ('0' + (((n) / 100)%10)),      \
+  ('0' + (((n) / 10)%10)),       \
+  ('0' +  ((n) % 10))
+
+/* Convert integer to hex digit literals.  */
+#define HEX(n)             \
+  ('0' + ((n)>>28 & 0xF)), \
+  ('0' + ((n)>>24 & 0xF)), \
+  ('0' + ((n)>>20 & 0xF)), \
+  ('0' + ((n)>>16 & 0xF)), \
+  ('0' + ((n)>>12 & 0xF)), \
+  ('0' + ((n)>>8  & 0xF)), \
+  ('0' + ((n)>>4  & 0xF)), \
+  ('0' + ((n)     & 0xF))
+
+/* Construct a string literal encoding the version number components. */
+#ifdef COMPILER_VERSION_MAJOR
+char const info_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+  COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+  '.', COMPILER_VERSION_MINOR,
+#  ifdef COMPILER_VERSION_PATCH
+   '.', COMPILER_VERSION_PATCH,
+#   ifdef COMPILER_VERSION_TWEAK
+    '.', COMPILER_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+  SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+  '.', SIMULATE_VERSION_MINOR,
+#  ifdef SIMULATE_VERSION_PATCH
+   '.', SIMULATE_VERSION_PATCH,
+#   ifdef SIMULATE_VERSION_TWEAK
+    '.', SIMULATE_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+
+#if !defined(__STDC__)
+# if defined(_MSC_VER) && !defined(__clang__)
+#  define C_DIALECT "90"
+# else
+#  define C_DIALECT
+# endif
+#elif __STDC_VERSION__ >= 201000L
+# define C_DIALECT "11"
+#elif __STDC_VERSION__ >= 199901L
+# define C_DIALECT "99"
+#else
+# define C_DIALECT "90"
+#endif
+const char* info_language_dialect_default =
+  "INFO" ":" "dialect_default[" C_DIALECT "]";
+
+/*--------------------------------------------------------------------------*/
+
+#ifdef ID_VOID_MAIN
+void main() {}
+#else
+# if defined(__CLASSIC_C__)
+int main(argc, argv) int argc; char *argv[];
+# else
+int main(int argc, char* argv[])
+# endif
+{
+  int require = 0;
+  require += info_compiler[argc];
+  require += info_platform[argc];
+  require += info_arch[argc];
+#ifdef COMPILER_VERSION_MAJOR
+  require += info_version[argc];
+#endif
+#ifdef SIMULATE_ID
+  require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+  require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXE) || defined(__CRAYXC)
+  require += info_cray[argc];
+#endif
+  require += info_language_dialect_default[argc];
+  (void)argv;
+  return require;
+}
+#endif
diff --git a/RPI/scream/scream_sender/CMakeFiles/3.7.2/CompilerIdC/a.out b/RPI/scream/scream_sender/CMakeFiles/3.7.2/CompilerIdC/a.out
new file mode 100644
index 0000000000000000000000000000000000000000..2c9d824bf34e6384541157ce258ad086b4372b81
GIT binary patch
literal 8616
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_sender/CMakeFiles/3.7.2/CompilerIdCXX/CMakeCXXCompilerId.cpp b/RPI/scream/scream_sender/CMakeFiles/3.7.2/CompilerIdCXX/CMakeCXXCompilerId.cpp
new file mode 100644
index 0000000..a6e6bed
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeFiles/3.7.2/CompilerIdCXX/CMakeCXXCompilerId.cpp
@@ -0,0 +1,533 @@
+/* This source file must have a .cpp extension so that all C++ compilers
+   recognize the extension without flags.  Borland does not know .cxx for
+   example.  */
+#ifndef __cplusplus
+# error "A C compiler has been selected for C++."
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+   Version date components:   YYYY=Year, MM=Month,   DD=Day  */
+
+#if defined(__COMO__)
+# define COMPILER_ID "Comeau"
+  /* __COMO_VERSION__ = VRR */
+# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100)
+# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100)
+
+#elif defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+  /* __INTEL_COMPILER = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+# if defined(__INTEL_COMPILER_UPDATE)
+#  define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+# else
+#  define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER   % 10)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+  /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+#  define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__     & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+  /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+   /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+   /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_CC)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_CC >= 0x5100
+   /* __SUNPRO_CC = 0xVRRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC    & 0xF)
+# else
+   /* __SUNPRO_CC = 0xVRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC    & 0xF)
+# endif
+
+#elif defined(__HP_aCC)
+# define COMPILER_ID "HP"
+  /* __HP_aCC = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_aCC     % 100)
+
+#elif defined(__DECCXX)
+# define COMPILER_ID "Compaq"
+  /* __DECCXX_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000  % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER         % 10000)
+
+#elif defined(__IBMCPP__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800
+# define COMPILER_ID "XL"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800
+# define COMPILER_ID "VisualAge"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+  /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000   % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__        % 1000)
+
+#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version)
+# define COMPILER_ID "Fujitsu"
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__GNUC__)
+# define COMPILER_ID "GNU"
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# if defined(__GNUC_MINOR__)
+#  define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+  /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+#  if _MSC_VER >= 1400
+    /* _MSC_FULL_VER = VVRRPPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+#  else
+    /* _MSC_FULL_VER = VVRRPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+#  endif
+# endif
+# if defined(_MSC_BUILD)
+#  define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+  /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8  & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__ ) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+
+#elif defined(__ARMCC_VERSION)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+  /* __ARMCC_VERSION = VRRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION     % 10000)
+#else
+  /* __ARMCC_VERSION = VRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION    % 10000)
+#endif
+
+
+#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION)
+# define COMPILER_ID "MIPSpro"
+# if defined(_SGI_COMPILER_VERSION)
+  /* _SGI_COMPILER_VERSION = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100)
+#  define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION    % 10)
+# else
+  /* _COMPILER_VERSION = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100)
+#  define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION    % 10)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+  identification macro.  Try to identify the platform and guess that
+  it is the native compiler.  */
+#elif defined(__sgi)
+# define COMPILER_ID "MIPSpro"
+
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXE) || defined(__CRAYXC)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name.  */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__sgi) || defined(__sgi__) || defined(_SGI)
+# define PLATFORM_ID "IRIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+#  define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+#  define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+#  define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+#  define PLATFORM_ID "Windows3x"
+
+# else /* unknown platform */
+#  define PLATFORM_ID
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+   the architecture of the compiler being used.  This is because
+   the compilers do not have flags that can change the architecture,
+   but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+#  define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+#  define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM)
+#  if _M_ARM == 4
+#   define ARCHITECTURE_ID "ARMV4I"
+#  elif _M_ARM == 5
+#   define ARCHITECTURE_ID "ARMV5I"
+#  else
+#   define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+#  endif
+
+# elif defined(_M_MIPS)
+#  define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+#  define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+#  define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#else
+#  define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals.  */
+#define DEC(n)                   \
+  ('0' + (((n) / 10000000)%10)), \
+  ('0' + (((n) / 1000000)%10)),  \
+  ('0' + (((n) / 100000)%10)),   \
+  ('0' + (((n) / 10000)%10)),    \
+  ('0' + (((n) / 1000)%10)),     \
+  ('0' + (((n) / 100)%10)),      \
+  ('0' + (((n) / 10)%10)),       \
+  ('0' +  ((n) % 10))
+
+/* Convert integer to hex digit literals.  */
+#define HEX(n)             \
+  ('0' + ((n)>>28 & 0xF)), \
+  ('0' + ((n)>>24 & 0xF)), \
+  ('0' + ((n)>>20 & 0xF)), \
+  ('0' + ((n)>>16 & 0xF)), \
+  ('0' + ((n)>>12 & 0xF)), \
+  ('0' + ((n)>>8  & 0xF)), \
+  ('0' + ((n)>>4  & 0xF)), \
+  ('0' + ((n)     & 0xF))
+
+/* Construct a string literal encoding the version number components. */
+#ifdef COMPILER_VERSION_MAJOR
+char const info_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+  COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+  '.', COMPILER_VERSION_MINOR,
+#  ifdef COMPILER_VERSION_PATCH
+   '.', COMPILER_VERSION_PATCH,
+#   ifdef COMPILER_VERSION_TWEAK
+    '.', COMPILER_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+  SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+  '.', SIMULATE_VERSION_MINOR,
+#  ifdef SIMULATE_VERSION_PATCH
+   '.', SIMULATE_VERSION_PATCH,
+#   ifdef SIMULATE_VERSION_TWEAK
+    '.', SIMULATE_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+
+const char* info_language_dialect_default = "INFO" ":" "dialect_default["
+#if __cplusplus >= 201402L
+  "14"
+#elif __cplusplus >= 201103L
+  "11"
+#else
+  "98"
+#endif
+"]";
+
+/*--------------------------------------------------------------------------*/
+
+int main(int argc, char* argv[])
+{
+  int require = 0;
+  require += info_compiler[argc];
+  require += info_platform[argc];
+#ifdef COMPILER_VERSION_MAJOR
+  require += info_version[argc];
+#endif
+#ifdef SIMULATE_ID
+  require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+  require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXE) || defined(__CRAYXC)
+  require += info_cray[argc];
+#endif
+  require += info_language_dialect_default[argc];
+  (void)argv;
+  return require;
+}
diff --git a/RPI/scream/scream_sender/CMakeFiles/3.7.2/CompilerIdCXX/a.out b/RPI/scream/scream_sender/CMakeFiles/3.7.2/CompilerIdCXX/a.out
new file mode 100644
index 0000000000000000000000000000000000000000..4097f848338f087c6f6ac761ebbf3ee0ce882766
GIT binary patch
literal 8632
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_sender/CMakeFiles/CMakeDirectoryInformation.cmake b/RPI/scream/scream_sender/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 0000000..0ec4406
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/pi/scream/scream_sender")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/pi/scream/scream_sender")
+
+# Force unix paths in dependencies.
+set(CMAKE_FORCE_UNIX_PATHS 1)
+
+
+# The C and CXX include file regular expressions for this directory.
+set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/RPI/scream/scream_sender/CMakeFiles/CMakeOutput.log b/RPI/scream/scream_sender/CMakeFiles/CMakeOutput.log
new file mode 100644
index 0000000..c3698a8
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeFiles/CMakeOutput.log
@@ -0,0 +1,560 @@
+The system is: Linux - 4.10.0-37-generic - x86_64
+Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
+Compiler: /usr/bin/cc 
+Build flags: 
+Id flags: 
+
+The output was:
+0
+
+
+Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out"
+
+The C compiler identification is GNU, found in "/home/user/scream_panasonic/scream_sender/CMakeFiles/3.7.2/CompilerIdC/a.out"
+
+Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
+Compiler: /usr/bin/c++ 
+Build flags: 
+Id flags: 
+
+The output was:
+0
+
+
+Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out"
+
+The CXX compiler identification is GNU, found in "/home/user/scream_panasonic/scream_sender/CMakeFiles/3.7.2/CompilerIdCXX/a.out"
+
+Determining if the C compiler works passed with the following output:
+Change Dir: /home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_d13ba/fast"
+/usr/bin/make -f CMakeFiles/cmTC_d13ba.dir/build.make CMakeFiles/cmTC_d13ba.dir/build
+make[1]: Entering directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_d13ba.dir/testCCompiler.c.o
+/usr/bin/cc     -o CMakeFiles/cmTC_d13ba.dir/testCCompiler.c.o   -c /home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp/testCCompiler.c
+Linking C executable cmTC_d13ba
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_d13ba.dir/link.txt --verbose=1
+/usr/bin/cc       CMakeFiles/cmTC_d13ba.dir/testCCompiler.c.o  -o cmTC_d13ba -rdynamic 
+make[1]: Leaving directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+
+
+Detecting C compiler ABI info compiled with the following output:
+Change Dir: /home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_2a927/fast"
+/usr/bin/make -f CMakeFiles/cmTC_2a927.dir/build.make CMakeFiles/cmTC_2a927.dir/build
+make[1]: Entering directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_2a927.dir/CMakeCCompilerABI.c.o
+/usr/bin/cc     -o CMakeFiles/cmTC_2a927.dir/CMakeCCompilerABI.c.o   -c /usr/share/cmake-3.7/Modules/CMakeCCompilerABI.c
+Linking C executable cmTC_2a927
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_2a927.dir/link.txt --verbose=1
+/usr/bin/cc      -v CMakeFiles/cmTC_2a927.dir/CMakeCCompilerABI.c.o  -o cmTC_2a927 -rdynamic  
+Using built-in specs.
+COLLECT_GCC=/usr/bin/cc
+COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper
+Target: x86_64-linux-gnu
+Configured with: ../src/configure -v --with-pkgversion='Ubuntu 6.3.0-12ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
+Thread model: posix
+gcc version 6.3.0 20170406 (Ubuntu 6.3.0-12ubuntu2) 
+COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/
+LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../:/lib/:/usr/lib/
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_2a927' '-rdynamic' '-mtune=generic' '-march=x86-64'
+ /usr/lib/gcc/x86_64-linux-gnu/6/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/6/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper -plugin-opt=-fresolution=/tmp/cciIeLsA.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_2a927 /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/6/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/6 -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/6/../../.. CMakeFiles/cmTC_2a927.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-linux-gnu/6/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crtn.o
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_2a927' '-rdynamic' '-mtune=generic' '-march=x86-64'
+make[1]: Leaving directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+
+
+Parsed C implicit link information from above output:
+  link line regex: [^( *|.*[/\])(ld|([^/\]+-)?ld|collect2)[^/\]*( |$)]
+  ignore line: [Change Dir: /home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp]
+  ignore line: []
+  ignore line: [Run Build Command:"/usr/bin/make" "cmTC_2a927/fast"]
+  ignore line: [/usr/bin/make -f CMakeFiles/cmTC_2a927.dir/build.make CMakeFiles/cmTC_2a927.dir/build]
+  ignore line: [make[1]: Entering directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp']
+  ignore line: [Building C object CMakeFiles/cmTC_2a927.dir/CMakeCCompilerABI.c.o]
+  ignore line: [/usr/bin/cc     -o CMakeFiles/cmTC_2a927.dir/CMakeCCompilerABI.c.o   -c /usr/share/cmake-3.7/Modules/CMakeCCompilerABI.c]
+  ignore line: [Linking C executable cmTC_2a927]
+  ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_2a927.dir/link.txt --verbose=1]
+  ignore line: [/usr/bin/cc      -v CMakeFiles/cmTC_2a927.dir/CMakeCCompilerABI.c.o  -o cmTC_2a927 -rdynamic  ]
+  ignore line: [Using built-in specs.]
+  ignore line: [COLLECT_GCC=/usr/bin/cc]
+  ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper]
+  ignore line: [Target: x86_64-linux-gnu]
+  ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 6.3.0-12ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu]
+  ignore line: [Thread model: posix]
+  ignore line: [gcc version 6.3.0 20170406 (Ubuntu 6.3.0-12ubuntu2) ]
+  ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/]
+  ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../:/lib/:/usr/lib/]
+  ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_2a927' '-rdynamic' '-mtune=generic' '-march=x86-64']
+  link line: [ /usr/lib/gcc/x86_64-linux-gnu/6/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/6/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper -plugin-opt=-fresolution=/tmp/cciIeLsA.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_2a927 /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/6/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/6 -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/6/../../.. CMakeFiles/cmTC_2a927.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-linux-gnu/6/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crtn.o]
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/collect2] ==> ignore
+    arg [-plugin] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/liblto_plugin.so] ==> ignore
+    arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper] ==> ignore
+    arg [-plugin-opt=-fresolution=/tmp/cciIeLsA.res] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+    arg [-plugin-opt=-pass-through=-lc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+    arg [--sysroot=/] ==> ignore
+    arg [--build-id] ==> ignore
+    arg [--eh-frame-hdr] ==> ignore
+    arg [-m] ==> ignore
+    arg [elf_x86_64] ==> ignore
+    arg [--hash-style=gnu] ==> ignore
+    arg [--as-needed] ==> ignore
+    arg [-export-dynamic] ==> ignore
+    arg [-dynamic-linker] ==> ignore
+    arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
+    arg [-pie] ==> ignore
+    arg [-znow] ==> ignore
+    arg [-zrelro] ==> ignore
+    arg [-o] ==> ignore
+    arg [cmTC_2a927] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crti.o] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/crtbeginS.o] ==> ignore
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6]
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu]
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib]
+    arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu]
+    arg [-L/lib/../lib] ==> dir [/lib/../lib]
+    arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
+    arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../..]
+    arg [CMakeFiles/cmTC_2a927.dir/CMakeCCompilerABI.c.o] ==> ignore
+    arg [-lgcc] ==> lib [gcc]
+    arg [--as-needed] ==> ignore
+    arg [-lgcc_s] ==> lib [gcc_s]
+    arg [--no-as-needed] ==> ignore
+    arg [-lc] ==> lib [c]
+    arg [-lgcc] ==> lib [gcc]
+    arg [--as-needed] ==> ignore
+    arg [-lgcc_s] ==> lib [gcc_s]
+    arg [--no-as-needed] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/crtendS.o] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crtn.o] ==> ignore
+  remove lib [gcc]
+  remove lib [gcc_s]
+  remove lib [gcc]
+  remove lib [gcc_s]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6] ==> [/usr/lib/gcc/x86_64-linux-gnu/6]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib] ==> [/usr/lib]
+  collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu]
+  collapse library dir [/lib/../lib] ==> [/lib]
+  collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+  collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../..] ==> [/usr/lib]
+  implicit libs: [c]
+  implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/6;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
+  implicit fwks: []
+
+
+
+
+Detecting C [-std=c11] compiler features compiled with the following output:
+Change Dir: /home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_bf6b4/fast"
+/usr/bin/make -f CMakeFiles/cmTC_bf6b4.dir/build.make CMakeFiles/cmTC_bf6b4.dir/build
+make[1]: Entering directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_bf6b4.dir/feature_tests.c.o
+/usr/bin/cc    -std=c11 -o CMakeFiles/cmTC_bf6b4.dir/feature_tests.c.o   -c /home/user/scream_panasonic/scream_sender/CMakeFiles/feature_tests.c
+Linking C executable cmTC_bf6b4
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_bf6b4.dir/link.txt --verbose=1
+/usr/bin/cc       CMakeFiles/cmTC_bf6b4.dir/feature_tests.c.o  -o cmTC_bf6b4 -rdynamic 
+make[1]: Leaving directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+
+
+    Feature record: C_FEATURE:1c_function_prototypes
+    Feature record: C_FEATURE:1c_restrict
+    Feature record: C_FEATURE:1c_static_assert
+    Feature record: C_FEATURE:1c_variadic_macros
+
+
+Detecting C [-std=c99] compiler features compiled with the following output:
+Change Dir: /home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_89a4a/fast"
+/usr/bin/make -f CMakeFiles/cmTC_89a4a.dir/build.make CMakeFiles/cmTC_89a4a.dir/build
+make[1]: Entering directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_89a4a.dir/feature_tests.c.o
+/usr/bin/cc    -std=c99 -o CMakeFiles/cmTC_89a4a.dir/feature_tests.c.o   -c /home/user/scream_panasonic/scream_sender/CMakeFiles/feature_tests.c
+Linking C executable cmTC_89a4a
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_89a4a.dir/link.txt --verbose=1
+/usr/bin/cc       CMakeFiles/cmTC_89a4a.dir/feature_tests.c.o  -o cmTC_89a4a -rdynamic 
+make[1]: Leaving directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+
+
+    Feature record: C_FEATURE:1c_function_prototypes
+    Feature record: C_FEATURE:1c_restrict
+    Feature record: C_FEATURE:0c_static_assert
+    Feature record: C_FEATURE:1c_variadic_macros
+
+
+Detecting C [-std=c90] compiler features compiled with the following output:
+Change Dir: /home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_bf412/fast"
+/usr/bin/make -f CMakeFiles/cmTC_bf412.dir/build.make CMakeFiles/cmTC_bf412.dir/build
+make[1]: Entering directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_bf412.dir/feature_tests.c.o
+/usr/bin/cc    -std=c90 -o CMakeFiles/cmTC_bf412.dir/feature_tests.c.o   -c /home/user/scream_panasonic/scream_sender/CMakeFiles/feature_tests.c
+Linking C executable cmTC_bf412
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_bf412.dir/link.txt --verbose=1
+/usr/bin/cc       CMakeFiles/cmTC_bf412.dir/feature_tests.c.o  -o cmTC_bf412 -rdynamic 
+make[1]: Leaving directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+
+
+    Feature record: C_FEATURE:1c_function_prototypes
+    Feature record: C_FEATURE:0c_restrict
+    Feature record: C_FEATURE:0c_static_assert
+    Feature record: C_FEATURE:0c_variadic_macros
+Determining if the CXX compiler works passed with the following output:
+Change Dir: /home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_ea3ab/fast"
+/usr/bin/make -f CMakeFiles/cmTC_ea3ab.dir/build.make CMakeFiles/cmTC_ea3ab.dir/build
+make[1]: Entering directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_ea3ab.dir/testCXXCompiler.cxx.o
+/usr/bin/c++      -o CMakeFiles/cmTC_ea3ab.dir/testCXXCompiler.cxx.o -c /home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp/testCXXCompiler.cxx
+Linking CXX executable cmTC_ea3ab
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_ea3ab.dir/link.txt --verbose=1
+/usr/bin/c++        CMakeFiles/cmTC_ea3ab.dir/testCXXCompiler.cxx.o  -o cmTC_ea3ab -rdynamic 
+make[1]: Leaving directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+
+
+Detecting CXX compiler ABI info compiled with the following output:
+Change Dir: /home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_9a8a9/fast"
+/usr/bin/make -f CMakeFiles/cmTC_9a8a9.dir/build.make CMakeFiles/cmTC_9a8a9.dir/build
+make[1]: Entering directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_9a8a9.dir/CMakeCXXCompilerABI.cpp.o
+/usr/bin/c++      -o CMakeFiles/cmTC_9a8a9.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.7/Modules/CMakeCXXCompilerABI.cpp
+Linking CXX executable cmTC_9a8a9
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_9a8a9.dir/link.txt --verbose=1
+/usr/bin/c++       -v CMakeFiles/cmTC_9a8a9.dir/CMakeCXXCompilerABI.cpp.o  -o cmTC_9a8a9 -rdynamic  
+Using built-in specs.
+COLLECT_GCC=/usr/bin/c++
+COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper
+Target: x86_64-linux-gnu
+Configured with: ../src/configure -v --with-pkgversion='Ubuntu 6.3.0-12ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
+Thread model: posix
+gcc version 6.3.0 20170406 (Ubuntu 6.3.0-12ubuntu2) 
+COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/
+LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../:/lib/:/usr/lib/
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_9a8a9' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
+ /usr/lib/gcc/x86_64-linux-gnu/6/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/6/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper -plugin-opt=-fresolution=/tmp/ccuqNCoS.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_9a8a9 /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/6/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/6 -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/6/../../.. CMakeFiles/cmTC_9a8a9.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/6/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crtn.o
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_9a8a9' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
+make[1]: Leaving directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+
+
+Parsed CXX implicit link information from above output:
+  link line regex: [^( *|.*[/\])(ld|([^/\]+-)?ld|collect2)[^/\]*( |$)]
+  ignore line: [Change Dir: /home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp]
+  ignore line: []
+  ignore line: [Run Build Command:"/usr/bin/make" "cmTC_9a8a9/fast"]
+  ignore line: [/usr/bin/make -f CMakeFiles/cmTC_9a8a9.dir/build.make CMakeFiles/cmTC_9a8a9.dir/build]
+  ignore line: [make[1]: Entering directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp']
+  ignore line: [Building CXX object CMakeFiles/cmTC_9a8a9.dir/CMakeCXXCompilerABI.cpp.o]
+  ignore line: [/usr/bin/c++      -o CMakeFiles/cmTC_9a8a9.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.7/Modules/CMakeCXXCompilerABI.cpp]
+  ignore line: [Linking CXX executable cmTC_9a8a9]
+  ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_9a8a9.dir/link.txt --verbose=1]
+  ignore line: [/usr/bin/c++       -v CMakeFiles/cmTC_9a8a9.dir/CMakeCXXCompilerABI.cpp.o  -o cmTC_9a8a9 -rdynamic  ]
+  ignore line: [Using built-in specs.]
+  ignore line: [COLLECT_GCC=/usr/bin/c++]
+  ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper]
+  ignore line: [Target: x86_64-linux-gnu]
+  ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 6.3.0-12ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu]
+  ignore line: [Thread model: posix]
+  ignore line: [gcc version 6.3.0 20170406 (Ubuntu 6.3.0-12ubuntu2) ]
+  ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/]
+  ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/6/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/6/../../../:/lib/:/usr/lib/]
+  ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_9a8a9' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64']
+  link line: [ /usr/lib/gcc/x86_64-linux-gnu/6/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/6/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper -plugin-opt=-fresolution=/tmp/ccuqNCoS.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_9a8a9 /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/6/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/6 -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/6/../../.. CMakeFiles/cmTC_9a8a9.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/6/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crtn.o]
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/collect2] ==> ignore
+    arg [-plugin] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/liblto_plugin.so] ==> ignore
+    arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper] ==> ignore
+    arg [-plugin-opt=-fresolution=/tmp/ccuqNCoS.res] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lc] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+    arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+    arg [--sysroot=/] ==> ignore
+    arg [--build-id] ==> ignore
+    arg [--eh-frame-hdr] ==> ignore
+    arg [-m] ==> ignore
+    arg [elf_x86_64] ==> ignore
+    arg [--hash-style=gnu] ==> ignore
+    arg [--as-needed] ==> ignore
+    arg [-export-dynamic] ==> ignore
+    arg [-dynamic-linker] ==> ignore
+    arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
+    arg [-pie] ==> ignore
+    arg [-znow] ==> ignore
+    arg [-zrelro] ==> ignore
+    arg [-o] ==> ignore
+    arg [cmTC_9a8a9] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crti.o] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/crtbeginS.o] ==> ignore
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6]
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu]
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib]
+    arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu]
+    arg [-L/lib/../lib] ==> dir [/lib/../lib]
+    arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
+    arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
+    arg [-L/usr/lib/gcc/x86_64-linux-gnu/6/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../..]
+    arg [CMakeFiles/cmTC_9a8a9.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
+    arg [-lstdc++] ==> lib [stdc++]
+    arg [-lm] ==> lib [m]
+    arg [-lgcc_s] ==> lib [gcc_s]
+    arg [-lgcc] ==> lib [gcc]
+    arg [-lc] ==> lib [c]
+    arg [-lgcc_s] ==> lib [gcc_s]
+    arg [-lgcc] ==> lib [gcc]
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/crtendS.o] ==> ignore
+    arg [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crtn.o] ==> ignore
+  remove lib [gcc_s]
+  remove lib [gcc]
+  remove lib [gcc_s]
+  remove lib [gcc]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6] ==> [/usr/lib/gcc/x86_64-linux-gnu/6]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../../../lib] ==> [/usr/lib]
+  collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu]
+  collapse library dir [/lib/../lib] ==> [/lib]
+  collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+  collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
+  collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/6/../../..] ==> [/usr/lib]
+  implicit libs: [stdc++;m;c]
+  implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/6;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
+  implicit fwks: []
+
+
+
+
+Detecting CXX [-std=c++14] compiler features compiled with the following output:
+Change Dir: /home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_de348/fast"
+/usr/bin/make -f CMakeFiles/cmTC_de348.dir/build.make CMakeFiles/cmTC_de348.dir/build
+make[1]: Entering directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_de348.dir/feature_tests.cxx.o
+/usr/bin/c++     -std=c++14 -o CMakeFiles/cmTC_de348.dir/feature_tests.cxx.o -c /home/user/scream_panasonic/scream_sender/CMakeFiles/feature_tests.cxx
+Linking CXX executable cmTC_de348
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_de348.dir/link.txt --verbose=1
+/usr/bin/c++        CMakeFiles/cmTC_de348.dir/feature_tests.cxx.o  -o cmTC_de348 -rdynamic 
+make[1]: Leaving directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+
+
+    Feature record: CXX_FEATURE:1cxx_aggregate_default_initializers
+    Feature record: CXX_FEATURE:1cxx_alias_templates
+    Feature record: CXX_FEATURE:1cxx_alignas
+    Feature record: CXX_FEATURE:1cxx_alignof
+    Feature record: CXX_FEATURE:1cxx_attributes
+    Feature record: CXX_FEATURE:1cxx_attribute_deprecated
+    Feature record: CXX_FEATURE:1cxx_auto_type
+    Feature record: CXX_FEATURE:1cxx_binary_literals
+    Feature record: CXX_FEATURE:1cxx_constexpr
+    Feature record: CXX_FEATURE:1cxx_contextual_conversions
+    Feature record: CXX_FEATURE:1cxx_decltype
+    Feature record: CXX_FEATURE:1cxx_decltype_auto
+    Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types
+    Feature record: CXX_FEATURE:1cxx_default_function_template_args
+    Feature record: CXX_FEATURE:1cxx_defaulted_functions
+    Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers
+    Feature record: CXX_FEATURE:1cxx_delegating_constructors
+    Feature record: CXX_FEATURE:1cxx_deleted_functions
+    Feature record: CXX_FEATURE:1cxx_digit_separators
+    Feature record: CXX_FEATURE:1cxx_enum_forward_declarations
+    Feature record: CXX_FEATURE:1cxx_explicit_conversions
+    Feature record: CXX_FEATURE:1cxx_extended_friend_declarations
+    Feature record: CXX_FEATURE:1cxx_extern_templates
+    Feature record: CXX_FEATURE:1cxx_final
+    Feature record: CXX_FEATURE:1cxx_func_identifier
+    Feature record: CXX_FEATURE:1cxx_generalized_initializers
+    Feature record: CXX_FEATURE:1cxx_generic_lambdas
+    Feature record: CXX_FEATURE:1cxx_inheriting_constructors
+    Feature record: CXX_FEATURE:1cxx_inline_namespaces
+    Feature record: CXX_FEATURE:1cxx_lambdas
+    Feature record: CXX_FEATURE:1cxx_lambda_init_captures
+    Feature record: CXX_FEATURE:1cxx_local_type_template_args
+    Feature record: CXX_FEATURE:1cxx_long_long_type
+    Feature record: CXX_FEATURE:1cxx_noexcept
+    Feature record: CXX_FEATURE:1cxx_nonstatic_member_init
+    Feature record: CXX_FEATURE:1cxx_nullptr
+    Feature record: CXX_FEATURE:1cxx_override
+    Feature record: CXX_FEATURE:1cxx_range_for
+    Feature record: CXX_FEATURE:1cxx_raw_string_literals
+    Feature record: CXX_FEATURE:1cxx_reference_qualified_functions
+    Feature record: CXX_FEATURE:1cxx_relaxed_constexpr
+    Feature record: CXX_FEATURE:1cxx_return_type_deduction
+    Feature record: CXX_FEATURE:1cxx_right_angle_brackets
+    Feature record: CXX_FEATURE:1cxx_rvalue_references
+    Feature record: CXX_FEATURE:1cxx_sizeof_member
+    Feature record: CXX_FEATURE:1cxx_static_assert
+    Feature record: CXX_FEATURE:1cxx_strong_enums
+    Feature record: CXX_FEATURE:1cxx_template_template_parameters
+    Feature record: CXX_FEATURE:1cxx_thread_local
+    Feature record: CXX_FEATURE:1cxx_trailing_return_types
+    Feature record: CXX_FEATURE:1cxx_unicode_literals
+    Feature record: CXX_FEATURE:1cxx_uniform_initialization
+    Feature record: CXX_FEATURE:1cxx_unrestricted_unions
+    Feature record: CXX_FEATURE:1cxx_user_literals
+    Feature record: CXX_FEATURE:1cxx_variable_templates
+    Feature record: CXX_FEATURE:1cxx_variadic_macros
+    Feature record: CXX_FEATURE:1cxx_variadic_templates
+
+
+Detecting CXX [-std=c++11] compiler features compiled with the following output:
+Change Dir: /home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_df609/fast"
+/usr/bin/make -f CMakeFiles/cmTC_df609.dir/build.make CMakeFiles/cmTC_df609.dir/build
+make[1]: Entering directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_df609.dir/feature_tests.cxx.o
+/usr/bin/c++     -std=c++11 -o CMakeFiles/cmTC_df609.dir/feature_tests.cxx.o -c /home/user/scream_panasonic/scream_sender/CMakeFiles/feature_tests.cxx
+Linking CXX executable cmTC_df609
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_df609.dir/link.txt --verbose=1
+/usr/bin/c++        CMakeFiles/cmTC_df609.dir/feature_tests.cxx.o  -o cmTC_df609 -rdynamic 
+make[1]: Leaving directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+
+
+    Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers
+    Feature record: CXX_FEATURE:1cxx_alias_templates
+    Feature record: CXX_FEATURE:1cxx_alignas
+    Feature record: CXX_FEATURE:1cxx_alignof
+    Feature record: CXX_FEATURE:1cxx_attributes
+    Feature record: CXX_FEATURE:0cxx_attribute_deprecated
+    Feature record: CXX_FEATURE:1cxx_auto_type
+    Feature record: CXX_FEATURE:0cxx_binary_literals
+    Feature record: CXX_FEATURE:1cxx_constexpr
+    Feature record: CXX_FEATURE:0cxx_contextual_conversions
+    Feature record: CXX_FEATURE:1cxx_decltype
+    Feature record: CXX_FEATURE:0cxx_decltype_auto
+    Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types
+    Feature record: CXX_FEATURE:1cxx_default_function_template_args
+    Feature record: CXX_FEATURE:1cxx_defaulted_functions
+    Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers
+    Feature record: CXX_FEATURE:1cxx_delegating_constructors
+    Feature record: CXX_FEATURE:1cxx_deleted_functions
+    Feature record: CXX_FEATURE:0cxx_digit_separators
+    Feature record: CXX_FEATURE:1cxx_enum_forward_declarations
+    Feature record: CXX_FEATURE:1cxx_explicit_conversions
+    Feature record: CXX_FEATURE:1cxx_extended_friend_declarations
+    Feature record: CXX_FEATURE:1cxx_extern_templates
+    Feature record: CXX_FEATURE:1cxx_final
+    Feature record: CXX_FEATURE:1cxx_func_identifier
+    Feature record: CXX_FEATURE:1cxx_generalized_initializers
+    Feature record: CXX_FEATURE:0cxx_generic_lambdas
+    Feature record: CXX_FEATURE:1cxx_inheriting_constructors
+    Feature record: CXX_FEATURE:1cxx_inline_namespaces
+    Feature record: CXX_FEATURE:1cxx_lambdas
+    Feature record: CXX_FEATURE:0cxx_lambda_init_captures
+    Feature record: CXX_FEATURE:1cxx_local_type_template_args
+    Feature record: CXX_FEATURE:1cxx_long_long_type
+    Feature record: CXX_FEATURE:1cxx_noexcept
+    Feature record: CXX_FEATURE:1cxx_nonstatic_member_init
+    Feature record: CXX_FEATURE:1cxx_nullptr
+    Feature record: CXX_FEATURE:1cxx_override
+    Feature record: CXX_FEATURE:1cxx_range_for
+    Feature record: CXX_FEATURE:1cxx_raw_string_literals
+    Feature record: CXX_FEATURE:1cxx_reference_qualified_functions
+    Feature record: CXX_FEATURE:0cxx_relaxed_constexpr
+    Feature record: CXX_FEATURE:0cxx_return_type_deduction
+    Feature record: CXX_FEATURE:1cxx_right_angle_brackets
+    Feature record: CXX_FEATURE:1cxx_rvalue_references
+    Feature record: CXX_FEATURE:1cxx_sizeof_member
+    Feature record: CXX_FEATURE:1cxx_static_assert
+    Feature record: CXX_FEATURE:1cxx_strong_enums
+    Feature record: CXX_FEATURE:1cxx_template_template_parameters
+    Feature record: CXX_FEATURE:1cxx_thread_local
+    Feature record: CXX_FEATURE:1cxx_trailing_return_types
+    Feature record: CXX_FEATURE:1cxx_unicode_literals
+    Feature record: CXX_FEATURE:1cxx_uniform_initialization
+    Feature record: CXX_FEATURE:1cxx_unrestricted_unions
+    Feature record: CXX_FEATURE:1cxx_user_literals
+    Feature record: CXX_FEATURE:0cxx_variable_templates
+    Feature record: CXX_FEATURE:1cxx_variadic_macros
+    Feature record: CXX_FEATURE:1cxx_variadic_templates
+
+
+Detecting CXX [-std=c++98] compiler features compiled with the following output:
+Change Dir: /home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp
+
+Run Build Command:"/usr/bin/make" "cmTC_bda1a/fast"
+/usr/bin/make -f CMakeFiles/cmTC_bda1a.dir/build.make CMakeFiles/cmTC_bda1a.dir/build
+make[1]: Entering directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_bda1a.dir/feature_tests.cxx.o
+/usr/bin/c++     -std=c++98 -o CMakeFiles/cmTC_bda1a.dir/feature_tests.cxx.o -c /home/user/scream_panasonic/scream_sender/CMakeFiles/feature_tests.cxx
+Linking CXX executable cmTC_bda1a
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_bda1a.dir/link.txt --verbose=1
+/usr/bin/c++        CMakeFiles/cmTC_bda1a.dir/feature_tests.cxx.o  -o cmTC_bda1a -rdynamic 
+make[1]: Leaving directory '/home/user/scream_panasonic/scream_sender/CMakeFiles/CMakeTmp'
+
+
+    Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers
+    Feature record: CXX_FEATURE:0cxx_alias_templates
+    Feature record: CXX_FEATURE:0cxx_alignas
+    Feature record: CXX_FEATURE:0cxx_alignof
+    Feature record: CXX_FEATURE:0cxx_attributes
+    Feature record: CXX_FEATURE:0cxx_attribute_deprecated
+    Feature record: CXX_FEATURE:0cxx_auto_type
+    Feature record: CXX_FEATURE:0cxx_binary_literals
+    Feature record: CXX_FEATURE:0cxx_constexpr
+    Feature record: CXX_FEATURE:0cxx_contextual_conversions
+    Feature record: CXX_FEATURE:0cxx_decltype
+    Feature record: CXX_FEATURE:0cxx_decltype_auto
+    Feature record: CXX_FEATURE:0cxx_decltype_incomplete_return_types
+    Feature record: CXX_FEATURE:0cxx_default_function_template_args
+    Feature record: CXX_FEATURE:0cxx_defaulted_functions
+    Feature record: CXX_FEATURE:0cxx_defaulted_move_initializers
+    Feature record: CXX_FEATURE:0cxx_delegating_constructors
+    Feature record: CXX_FEATURE:0cxx_deleted_functions
+    Feature record: CXX_FEATURE:0cxx_digit_separators
+    Feature record: CXX_FEATURE:0cxx_enum_forward_declarations
+    Feature record: CXX_FEATURE:0cxx_explicit_conversions
+    Feature record: CXX_FEATURE:0cxx_extended_friend_declarations
+    Feature record: CXX_FEATURE:0cxx_extern_templates
+    Feature record: CXX_FEATURE:0cxx_final
+    Feature record: CXX_FEATURE:0cxx_func_identifier
+    Feature record: CXX_FEATURE:0cxx_generalized_initializers
+    Feature record: CXX_FEATURE:0cxx_generic_lambdas
+    Feature record: CXX_FEATURE:0cxx_inheriting_constructors
+    Feature record: CXX_FEATURE:0cxx_inline_namespaces
+    Feature record: CXX_FEATURE:0cxx_lambdas
+    Feature record: CXX_FEATURE:0cxx_lambda_init_captures
+    Feature record: CXX_FEATURE:0cxx_local_type_template_args
+    Feature record: CXX_FEATURE:0cxx_long_long_type
+    Feature record: CXX_FEATURE:0cxx_noexcept
+    Feature record: CXX_FEATURE:0cxx_nonstatic_member_init
+    Feature record: CXX_FEATURE:0cxx_nullptr
+    Feature record: CXX_FEATURE:0cxx_override
+    Feature record: CXX_FEATURE:0cxx_range_for
+    Feature record: CXX_FEATURE:0cxx_raw_string_literals
+    Feature record: CXX_FEATURE:0cxx_reference_qualified_functions
+    Feature record: CXX_FEATURE:0cxx_relaxed_constexpr
+    Feature record: CXX_FEATURE:0cxx_return_type_deduction
+    Feature record: CXX_FEATURE:0cxx_right_angle_brackets
+    Feature record: CXX_FEATURE:0cxx_rvalue_references
+    Feature record: CXX_FEATURE:0cxx_sizeof_member
+    Feature record: CXX_FEATURE:0cxx_static_assert
+    Feature record: CXX_FEATURE:0cxx_strong_enums
+    Feature record: CXX_FEATURE:1cxx_template_template_parameters
+    Feature record: CXX_FEATURE:0cxx_thread_local
+    Feature record: CXX_FEATURE:0cxx_trailing_return_types
+    Feature record: CXX_FEATURE:0cxx_unicode_literals
+    Feature record: CXX_FEATURE:0cxx_uniform_initialization
+    Feature record: CXX_FEATURE:0cxx_unrestricted_unions
+    Feature record: CXX_FEATURE:0cxx_user_literals
+    Feature record: CXX_FEATURE:0cxx_variable_templates
+    Feature record: CXX_FEATURE:0cxx_variadic_macros
+    Feature record: CXX_FEATURE:0cxx_variadic_templates
diff --git a/RPI/scream/scream_sender/CMakeFiles/Makefile.cmake b/RPI/scream/scream_sender/CMakeFiles/Makefile.cmake
new file mode 100644
index 0000000..7c9aa76
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeFiles/Makefile.cmake
@@ -0,0 +1,48 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# The generator used is:
+set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles")
+
+# The top level Makefile was generated from the following files:
+set(CMAKE_MAKEFILE_DEPENDS
+  "CMakeCache.txt"
+  "CMakeFiles/3.7.2/CMakeCCompiler.cmake"
+  "CMakeFiles/3.7.2/CMakeCXXCompiler.cmake"
+  "CMakeFiles/3.7.2/CMakeSystem.cmake"
+  "CMakeLists.txt"
+  "code/CMakeLists.txt"
+  "/usr/share/cmake-3.7/Modules/CMakeCInformation.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeCXXInformation.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeCommonLanguageInclude.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeGenericSystem.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeLanguageInformation.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeSystemSpecificInformation.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeSystemSpecificInitialize.cmake"
+  "/usr/share/cmake-3.7/Modules/CMakeUnixFindMake.cmake"
+  "/usr/share/cmake-3.7/Modules/Compiler/GNU-C.cmake"
+  "/usr/share/cmake-3.7/Modules/Compiler/GNU-CXX.cmake"
+  "/usr/share/cmake-3.7/Modules/Compiler/GNU.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/Linux-GNU-C.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/Linux-GNU-CXX.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/Linux-GNU.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/Linux.cmake"
+  "/usr/share/cmake-3.7/Modules/Platform/UnixPaths.cmake"
+  )
+
+# The corresponding makefile is:
+set(CMAKE_MAKEFILE_OUTPUTS
+  "Makefile"
+  "CMakeFiles/cmake.check_cache"
+  )
+
+# Byproducts of CMake generate step:
+set(CMAKE_MAKEFILE_PRODUCTS
+  "CMakeFiles/CMakeDirectoryInformation.cmake"
+  "code/CMakeFiles/CMakeDirectoryInformation.cmake"
+  )
+
+# Dependency information for all targets:
+set(CMAKE_DEPEND_INFO_FILES
+  "code/CMakeFiles/scream_sender.dir/DependInfo.cmake"
+  )
diff --git a/RPI/scream/scream_sender/CMakeFiles/Makefile2 b/RPI/scream/scream_sender/CMakeFiles/Makefile2
new file mode 100644
index 0000000..b0a6b8d
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeFiles/Makefile2
@@ -0,0 +1,126 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# The main recursive all target
+all:
+
+.PHONY : all
+
+# The main recursive preinstall target
+preinstall:
+
+.PHONY : preinstall
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/pi/scream/scream_sender
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/pi/scream/scream_sender
+
+#=============================================================================
+# Directory level rules for directory code
+
+# Convenience name for "all" pass in the directory.
+code/all: code/CMakeFiles/scream_sender.dir/all
+
+.PHONY : code/all
+
+# Convenience name for "clean" pass in the directory.
+code/clean: code/CMakeFiles/scream_sender.dir/clean
+
+.PHONY : code/clean
+
+# Convenience name for "preinstall" pass in the directory.
+code/preinstall:
+
+.PHONY : code/preinstall
+
+#=============================================================================
+# Target rules for target code/CMakeFiles/scream_sender.dir
+
+# All Build rule for target.
+code/CMakeFiles/scream_sender.dir/all:
+	$(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/depend
+	$(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/build
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/pi/scream/scream_sender/CMakeFiles --progress-num=1,2,3,4 "Built target scream_sender"
+.PHONY : code/CMakeFiles/scream_sender.dir/all
+
+# Include target in all.
+all: code/CMakeFiles/scream_sender.dir/all
+
+.PHONY : all
+
+# Build rule for subdir invocation for target.
+code/CMakeFiles/scream_sender.dir/rule: cmake_check_build_system
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/pi/scream/scream_sender/CMakeFiles 4
+	$(MAKE) -f CMakeFiles/Makefile2 code/CMakeFiles/scream_sender.dir/all
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/pi/scream/scream_sender/CMakeFiles 0
+.PHONY : code/CMakeFiles/scream_sender.dir/rule
+
+# Convenience name for target.
+scream_sender: code/CMakeFiles/scream_sender.dir/rule
+
+.PHONY : scream_sender
+
+# clean rule for target.
+code/CMakeFiles/scream_sender.dir/clean:
+	$(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/clean
+.PHONY : code/CMakeFiles/scream_sender.dir/clean
+
+# clean rule for target.
+clean: code/CMakeFiles/scream_sender.dir/clean
+
+.PHONY : clean
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+	$(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/RPI/scream/scream_sender/CMakeFiles/TargetDirectories.txt b/RPI/scream/scream_sender/CMakeFiles/TargetDirectories.txt
new file mode 100644
index 0000000..dfd9217
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeFiles/TargetDirectories.txt
@@ -0,0 +1,5 @@
+/home/pi/scream/scream_sender/CMakeFiles/rebuild_cache.dir
+/home/pi/scream/scream_sender/CMakeFiles/edit_cache.dir
+/home/pi/scream/scream_sender/code/CMakeFiles/rebuild_cache.dir
+/home/pi/scream/scream_sender/code/CMakeFiles/edit_cache.dir
+/home/pi/scream/scream_sender/code/CMakeFiles/scream_sender.dir
diff --git a/RPI/scream/scream_sender/CMakeFiles/cmake.check_cache b/RPI/scream/scream_sender/CMakeFiles/cmake.check_cache
new file mode 100644
index 0000000..3dccd73
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeFiles/cmake.check_cache
@@ -0,0 +1 @@
+# This file is generated by cmake for dependency checking of the CMakeCache.txt file
diff --git a/RPI/scream/scream_sender/CMakeFiles/feature_tests.bin b/RPI/scream/scream_sender/CMakeFiles/feature_tests.bin
new file mode 100644
index 0000000000000000000000000000000000000000..6585c4b8a6e80e339754221bccf8504f68df0e72
GIT binary patch
literal 12520
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
V8;ec<QVozS1H(TE1t-z<0{~bDZFK+u

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_sender/CMakeFiles/feature_tests.c b/RPI/scream/scream_sender/CMakeFiles/feature_tests.c
new file mode 100644
index 0000000..6590dde
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeFiles/feature_tests.c
@@ -0,0 +1,34 @@
+
+  const char features[] = {"\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404
+"1"
+#else
+"0"
+#endif
+"c_function_prototypes\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+"1"
+#else
+"0"
+#endif
+"c_restrict\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201000L
+"1"
+#else
+"0"
+#endif
+"c_static_assert\n"
+"C_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+"1"
+#else
+"0"
+#endif
+"c_variadic_macros\n"
+
+};
+
+int main(int argc, char** argv) { (void)argv; return features[argc]; }
diff --git a/RPI/scream/scream_sender/CMakeFiles/feature_tests.cxx b/RPI/scream/scream_sender/CMakeFiles/feature_tests.cxx
new file mode 100644
index 0000000..b93418c
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeFiles/feature_tests.cxx
@@ -0,0 +1,405 @@
+
+  const char features[] = {"\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
+"1"
+#else
+"0"
+#endif
+"cxx_aggregate_default_initializers\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_alias_templates\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_alignas\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_alignof\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_attributes\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_attribute_deprecated\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_auto_type\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_binary_literals\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_constexpr\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_contextual_conversions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_decltype\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_decltype_auto\n"
+"CXX_FEATURE:"
+#if ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40801) && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_decltype_incomplete_return_types\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_default_function_template_args\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_defaulted_functions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_defaulted_move_initializers\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_delegating_constructors\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_deleted_functions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_digit_separators\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_enum_forward_declarations\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_explicit_conversions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_extended_friend_declarations\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_extern_templates\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_final\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_func_identifier\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_generalized_initializers\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_generic_lambdas\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_inheriting_constructors\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_inline_namespaces\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_lambdas\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_lambda_init_captures\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_local_type_template_args\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_long_long_type\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_noexcept\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_nonstatic_member_init\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_nullptr\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_override\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_range_for\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 405 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_raw_string_literals\n"
+"CXX_FEATURE:"
+#if ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40801) && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_reference_qualified_functions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
+"1"
+#else
+"0"
+#endif
+"cxx_relaxed_constexpr\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_return_type_deduction\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_right_angle_brackets\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_rvalue_references\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_sizeof_member\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_static_assert\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_strong_enums\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && __cplusplus
+"1"
+#else
+"0"
+#endif
+"cxx_template_template_parameters\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_thread_local\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_trailing_return_types\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_unicode_literals\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_uniform_initialization\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_unrestricted_unions\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 407 && __cplusplus >= 201103L
+"1"
+#else
+"0"
+#endif
+"cxx_user_literals\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 500 && __cplusplus >= 201402L
+"1"
+#else
+"0"
+#endif
+"cxx_variable_templates\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_variadic_macros\n"
+"CXX_FEATURE:"
+#if (__GNUC__ * 100 + __GNUC_MINOR__) >= 404 && (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
+"1"
+#else
+"0"
+#endif
+"cxx_variadic_templates\n"
+
+};
+
+int main(int argc, char** argv) { (void)argv; return features[argc]; }
diff --git a/RPI/scream/scream_sender/CMakeFiles/progress.marks b/RPI/scream/scream_sender/CMakeFiles/progress.marks
new file mode 100644
index 0000000..b8626c4
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+4
diff --git a/RPI/scream/scream_sender/CMakeLists.txt b/RPI/scream/scream_sender/CMakeLists.txt
new file mode 100644
index 0000000..2b4e245
--- /dev/null
+++ b/RPI/scream/scream_sender/CMakeLists.txt
@@ -0,0 +1,83 @@
+cmake_minimum_required(VERSION 2.6)
+
+PROJECT( scream )
+
+message("Source Dir:" ${scream_SOURCE_DIR})
+
+SET(EXECUTABLE_OUTPUT_PATH ${scream_SOURCE_DIR}/bin)
+SET(LIBRARY_OUTPUT_PATH ${scream_SOURCE_DIR}/lib)
+SET(RUNTIME_OUTPUT_DIRECTORY ${scream_SOURCE_DIR}/bin)
+
+SET(scream_BIN ${scream_SOURCE_DIR}/bin)
+
+message("scream_SOURCE_DIR directories:" ${scream_SOURCE_DIR})
+
+IF(UNIX)
+add_definitions(-std=c++0x)
+ENDIF(UNIX)
+
+IF(WIN32)
+IF(MSVC12)
+message("Detected MSVC12 compiler")
+set(MSVC_VER VC12)
+ELSEIF(MSVC11)
+message("Detected MSVC11 compiler")
+set(MSVC_VER VC11)
+ELSEIF(MSVC10)
+message("Detected MSVC10 compiler")
+set(MSVC_VER VC10)
+ELSEIF(MSVC14)
+message("Detected MSVC14 compiler")
+set(MSVC_VER VC14)
+ELSE(MSVC12)
+message("WARNING: Unknown/unsupported MSVC version")
+ENDIF(MSVC12)
+ENDIF(WIN32)
+
+if( CMAKE_SIZEOF_VOID_P EQUAL 8 )
+# 64bit
+  message("Detected 64-bit build - compiling with -fPIC")
+  SET(CMAKE_CXX_FLAGS "-fPIC -fpermissive -pthread")
+else( CMAKE_SIZEOF_VOID_P EQUAL 8 )
+# 32 bit
+message("Detected 32-bit build")
+SET(CMAKE_CXX_FLAGS "-fpermissive -pthread")
+endif( CMAKE_SIZEOF_VOID_P EQUAL 8 )
+
+#SET(LDFLAGS "-lrt -pthread -lpthread")
+
+SET(screamIncludes
+${scream_SOURCE_DIR}
+${scream_SOURCE_DIR}/code
+)
+
+message("screamIncludes directories:" ${screamIncludes})
+
+# lib directories
+IF(WIN32)
+SET(screamLink
+${scream_SOURCE_DIR}/../lib
+)
+ELSEIF(UNIX)
+SET(screamLink
+${scream_SOURCE_DIR}/../lib
+/usr/local/lib
+/usr/lib
+)
+ENDIF(WIN32)
+
+SET(LibDir
+${scream_SOURCE_DIR}/../lib
+)
+
+
+set(LIBS ${LIBS} -lrt -pthread)
+
+message("LibDir directories:" ${LibDir})
+
+# Include directories
+INCLUDE_DIRECTORIES(
+${scream_SOURCE_DIR}/../include
+)
+
+ADD_SUBDIRECTORY( code)
diff --git a/RPI/scream/scream_sender/Makefile b/RPI/scream/scream_sender/Makefile
new file mode 100644
index 0000000..8f3cf80
--- /dev/null
+++ b/RPI/scream/scream_sender/Makefile
@@ -0,0 +1,148 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/pi/scream/scream_sender
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/pi/scream/scream_sender
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+	/usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+
+.PHONY : rebuild_cache/fast
+
+# Special rule for the target edit_cache
+edit_cache:
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+	/usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+
+.PHONY : edit_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/pi/scream/scream_sender/CMakeFiles /home/pi/scream/scream_sender/CMakeFiles/progress.marks
+	$(MAKE) -f CMakeFiles/Makefile2 all
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/pi/scream/scream_sender/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+	$(MAKE) -f CMakeFiles/Makefile2 clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+	$(MAKE) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+	$(MAKE) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+	$(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+#=============================================================================
+# Target rules for targets named scream_sender
+
+# Build rule for target.
+scream_sender: cmake_check_build_system
+	$(MAKE) -f CMakeFiles/Makefile2 scream_sender
+.PHONY : scream_sender
+
+# fast build rule for target.
+scream_sender/fast:
+	$(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/build
+.PHONY : scream_sender/fast
+
+# Help Target
+help:
+	@echo "The following are some of the valid targets for this Makefile:"
+	@echo "... all (the default if no target is provided)"
+	@echo "... clean"
+	@echo "... depend"
+	@echo "... rebuild_cache"
+	@echo "... edit_cache"
+	@echo "... scream_sender"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+	$(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/RPI/scream/scream_sender/bin/scream_sender b/RPI/scream/scream_sender/bin/scream_sender
new file mode 100755
index 0000000000000000000000000000000000000000..2716fd7fc63730fdf6efbe8e9342721aa5a5d932
GIT binary patch
literal 78988
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
MJw^uPlNw;^0L&(u4gdfE

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_sender/cmake_install.cmake b/RPI/scream/scream_sender/cmake_install.cmake
new file mode 100644
index 0000000..846ae66
--- /dev/null
+++ b/RPI/scream/scream_sender/cmake_install.cmake
@@ -0,0 +1,50 @@
+# Install script for directory: /home/pi/scream/scream_sender
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+  set(CMAKE_INSTALL_PREFIX "/usr/local")
+endif()
+string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+  if(BUILD_TYPE)
+    string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+           CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+  else()
+    set(CMAKE_INSTALL_CONFIG_NAME "")
+  endif()
+  message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+endif()
+
+# Set the component getting installed.
+if(NOT CMAKE_INSTALL_COMPONENT)
+  if(COMPONENT)
+    message(STATUS "Install component: \"${COMPONENT}\"")
+    set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+  else()
+    set(CMAKE_INSTALL_COMPONENT)
+  endif()
+endif()
+
+# Install shared libraries without execute permission?
+if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
+  set(CMAKE_INSTALL_SO_NO_EXE "1")
+endif()
+
+if(NOT CMAKE_INSTALL_LOCAL_ONLY)
+  # Include the install script for each subdirectory.
+  include("/home/pi/scream/scream_sender/code/cmake_install.cmake")
+
+endif()
+
+if(CMAKE_INSTALL_COMPONENT)
+  set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
+else()
+  set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
+endif()
+
+string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
+       "${CMAKE_INSTALL_MANIFEST_FILES}")
+file(WRITE "/home/pi/scream/scream_sender/${CMAKE_INSTALL_MANIFEST}"
+     "${CMAKE_INSTALL_MANIFEST_CONTENT}")
diff --git a/RPI/scream/scream_sender/code/CMakeFiles/CMakeDirectoryInformation.cmake b/RPI/scream/scream_sender/code/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 0000000..0ec4406
--- /dev/null
+++ b/RPI/scream/scream_sender/code/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/pi/scream/scream_sender")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/pi/scream/scream_sender")
+
+# Force unix paths in dependencies.
+set(CMAKE_FORCE_UNIX_PATHS 1)
+
+
+# The C and CXX include file regular expressions for this directory.
+set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/RPI/scream/scream_sender/code/CMakeFiles/progress.marks b/RPI/scream/scream_sender/code/CMakeFiles/progress.marks
new file mode 100644
index 0000000..b8626c4
--- /dev/null
+++ b/RPI/scream/scream_sender/code/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+4
diff --git a/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/CXX.includecache b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/CXX.includecache
new file mode 100644
index 0000000..8325fd4
--- /dev/null
+++ b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/CXX.includecache
@@ -0,0 +1,62 @@
+#IncludeRegexLine: ^[ 	]*#[ 	]*(include|import)[ 	]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform: 
+
+/home/pi/scream/scream_sender/code/RtpQueue.cpp
+RtpQueue.h
+/home/pi/scream/scream_sender/code/RtpQueue.h
+iostream
+-
+string.h
+-
+
+/home/pi/scream/scream_sender/code/RtpQueue.h
+
+/home/pi/scream/scream_sender/code/ScreamRx.h
+cstdint
+-
+list
+-
+
+/home/pi/scream/scream_sender/code/ScreamTx.cpp
+RtpQueue.h
+/home/pi/scream/scream_sender/code/RtpQueue.h
+ScreamTx.h
+/home/pi/scream/scream_sender/code/ScreamTx.h
+ScreamRx.h
+/home/pi/scream/scream_sender/code/ScreamRx.h
+winSock2.h
+-
+arpa/inet.h
+-
+cstdint
+-
+cmath
+-
+string.h
+-
+iostream
+-
+algorithm
+-
+stdio.h
+-
+stdlib.h
+-
+math.h
+-
+
+/home/pi/scream/scream_sender/code/ScreamTx.h
+string.h
+-
+iostream
+-
+cstdint
+-
+
+/home/pi/scream/scream_sender/code/scream_sender.cpp
+
diff --git a/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/DependInfo.cmake b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/DependInfo.cmake
new file mode 100644
index 0000000..3c3288c
--- /dev/null
+++ b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/DependInfo.cmake
@@ -0,0 +1,25 @@
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+  "CXX"
+  )
+# The set of files for implicit dependencies of each language:
+set(CMAKE_DEPENDS_CHECK_CXX
+  "/home/pi/scream/scream_sender/code/RtpQueue.cpp" "/home/pi/scream/scream_sender/code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o"
+  "/home/pi/scream/scream_sender/code/ScreamTx.cpp" "/home/pi/scream/scream_sender/code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o"
+  "/home/pi/scream/scream_sender/code/scream_sender.cpp" "/home/pi/scream/scream_sender/code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o"
+  )
+set(CMAKE_CXX_COMPILER_ID "GNU")
+
+# The include file search paths:
+set(CMAKE_CXX_TARGET_INCLUDE_PATH
+  "../include"
+  "."
+  "code"
+  )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+  )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o
new file mode 100644
index 0000000000000000000000000000000000000000..57ed2b0231188518261dfe63677a9b6c500fca61
GIT binary patch
literal 7976
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o
new file mode 100644
index 0000000000000000000000000000000000000000..7f7e674ae3d05fed89c1bbf8d0ee6edb4bb96c39
GIT binary patch
literal 40828
zcmb<-^>JflWMqH=Mg|QA1doBiWg1w9)dWmwFjzBKf#vxa7#R2&7#IW?7{GiX1_lOU
z1_lNZC|`_$fkA?Sfk6_=muFyLP+(wSP=xZ885kH;7#J8-p?q})1_liV1_n(iUz>q}
zL5G2XK^Mx`XJBA3U|?V{1iOQQLBK=zCC7%|M=lq9A89afKjr4)e#^t<{gzjX`z^ne
z_geui?zb)q+)stHyx;m5a6e@<Sn$x)!279&f%H=y1?i^@3e8})fr9i?7AV_9LHa2N
zlx?aI{gg-HFj$R^g7i}XsJMfI^ivTi+e1P6sRW2E05WgEV+Ml-k3T3Ke5irM{{i9~
zK;#WTYN2csIQzk43nVs&BE($`3JV_dAh89I*cnhZhr(pA`*NUsPrK$vEC$VwKzd>R
z1Br2<iFw(fssX8Ap#rftMPb3?HBj~mg$0i{AhEYV*&GVDpYBkBgbhgV9;i5oeE`b#
zQILMRL=9plNPG<vdjk@C3le(=l$~wY{D=q5%^))lK;=Q~BT%-qZSx~^|AEBN_2;7b
z8N^2qt312rN6Z2X9)ipV#pMqL$A_Tw!lH2d=>s*0e?e+M`UF(w!_yE*{R^mjK<qbA
zc0QVU9~2IP%>$|V0W}ZA{t0D+)T6r_B+sA@v71q0!DB`!yAaK6m|H>OU_H<@1>%F;
zi!26WOF+#jLNf>E#$q&anEB}9F!i#w*uxH89Hzb$&3u@68JalEUUYGo`f?oV<<Q&%
zQttxFdkn#knHd<QK=BGo-%Jb)uRwek1?i`-^uEL7@>2$e;KytX3|t^N6{Y!4Vd;O1
z3MAiw)PmB9fC2YY0R!o$h77@vxfmEuX@JTL1L>!H2F;I{4HrCQHfValpzz=^sGI?*
zV>D=f1k&^I|9`N(p!i@>Y<>zdOT>WtsfdB}Q(=bS$J|h}KztV@vykHxBnL7Nr0)Zg
zc_~oyBn-HpN*G8#J&xoy5I@EM*=-9RgUSn#ILIuJ9%Q#oP=UBj#(?{&jDhr1Ylh&*
zf>5`C_`;w#fctX+*q@*<0Lew$quK)s1CTh#9*}vjklefinr}eiaX=knr-A|ZQw0O*
zr<@GIk2#@sg7}s8&5xKsWrV<j$IOCF&p~1!GePP<LCpk}bI4%@ipNSUWh6+<LjjVX
zJs1`|{`dd?YX*Y_51AbnJY->5@DRiY={@2ODbGOZ1tt!XV`f<JkmG{)BY}>+FV3Dh
zW7{xo1_J{_l?#K1?n{;py^jPg_&yR~;0DJp2Q;l5P@nvi!$A5eGegirE(V5M0-(Cb
zK>BGV)L+bolb(aj1(^?02l5+8@B9D%UxCul5%bAUVe%k8h|O}r`w>IO-WMzzbe}S8
z=zSytwHG803R4G#W^g(Mv0aeZpt=aA22>Zp*fvONG?3Uj3Xr$~xd-GnSlqz;fJpO@
zbOllab3Z6<VCIABLl7I}c7_Yxk61R$eIoZ?{~^r%Dp2>ca&f<9<MMvXF2((pL(2Q@
z2gCVKd7$AaP&N52YgP1H^{VoBAhQIj4!;G_f>o2>vLT5JLdAKjF28lC`ua}b*T;99
z3=C2rwIT}APhnvoqaghh76u9m(oaEQ5W&Cz4s(#+$g25o+pE;yf$R*=y8m`rRr))a
z-MmmcxX|q8f{N=HOn%C!0LuHIHV7mxKw?}B!H>0}ZUO0a%DVqnt?D?~KQO(ZI71G1
zko^as{$K;89|P&9Tv?ajvQ|mIZLd1^&Is(z^mj~E-r(>sFqr%l6hE-I;efV*K>i2G
zF$y$4nqx5k>14&j51bVjJUnQ>;32bu(*q_@J}_MHkjbF=K{JT0;P?Qn2bv!EsxH43
z0o$eij=d`Stq@w6@In2~Uv>E{7gQZbRrFg9G<Ez{hu<<VEO>~V4m=)K*)v>UY{S5y
z;K;ym!U@DrPfJUK<tvX1zK<jrxSz6falcg%K;$n_ISNW2JkW9jRE|n0NIwPfVg6^R
zy8M=@N*bJQKw$)u1Eo=rK2SLdlGBIA14tfZCaBB?m5~Bfm)~ku&3}8m>I*m>u`@8-
z0*MP|U49FqL1_{c2Z~_-roUsU@_q{no99~F-+|<Lt0updhMN7nYWq8;tmwDTvbMit
ziHd&vGzy}I&+GErCteUXzt!cpkFB=9<FM|1%jVttmL<CPEmL;yTZZc1w?f*%Z&U>4
zKV=l?f1to1{S;JQfWi@07J$Pp;IKO={6J;W9Z;JcsqG93KN$h;rwR((PdT}`-*Rzz
zzvY(Ve#;}}{gzjY`z@cA_gj7|?zaL~-fsoHxZetSdB5#om=CcBlpY)wJQVVZek<rD
z{Z_y#`Ypee^jkiy=(oID(r<aBqTg~$Nx$Xdihj$<CH)puMuYN~gn;x@Sota70I8o2
zm`{ERN`s(yIw0Qk6hy<yLIDBkr=T((z1)SBxdsOr7+`5a0$OH>2yj1T<KlkH&gK19
zL_qqf04!__7CeNNTOd0E6q>>1FvwjYpmL32!9#f1p_ShtGjW;4VgM<R(e=XI^GDJ9
zAt>KSm|uR%XrTP4*x>y$Q2T<3fr0A|NDk^g7J=CqZUxD6K;=PZfZCup6r3O4Vf22;
zq!93c+2G)VAo>1B7Z?scWMl|_$iNW9$i%?Vg{}|OCc2<-7^06M-~qG1L2zEap>+5m
zlftA2%m#}eFf#-`WMT+l<X~XX0+rh!e=!(LehR{%GJ{27(o-ge1rLq?>pwJNV0Z;m
z)1d&W%Vs}iR%m(v;X}d{rWafX8%%zRt{+s#g7O>4PoTOQ)b{03@P5Q3u;3x6P5`H6
z15kT>GPvFX^-Dl%L2WbSFl1q1-~x%SF`4|dSz!S<oI!0hkeIg~q`dWp*88CLJ;?p&
zW`o;uNO3Q}kR8&~gr)(D3%-vG7`UJQQTBdlU?BYzYdnJFpz(A@X+F5V|Dym=5ATyy
zU4FY7sqA28V2HY-0E$OQ_`}qL+O^;~X7&cf2RN=k>R|EH!@w{L<PMOz$o(If7$_`3
zbq1(i2P?Zka-enxC|p48jvxkxTcG|gh!4wa%z~4i-%<8{$Ovusfb_uasG9s1L%rdo
z=b-WsR0pD}J^U8Lhxb3KF24npbs5?7-?C+^zXQo3%!SA$N6&xDTCM($z1r;E@#^nj
zH3<C>^FVsQe#7Aw!K%yPG96|<L@lIE0LpKI3=C2rxg+Y6pMvNa=98a-+z(?5fy_0K
ze#(<|8SH-NtjTZPq&~b$liKjko$JH9bgm8WVCe@GZlF2?R4*+5|Nj-p3{bp*(ikWV
zL46kxZ2(OZAbIqDCn#<}ZFi6yC~iRQc~IPlK;s6)hsO<4o6w<Z12}x(=2cyO+g??U
zCU*EONI%GpAUmG^|NjcvJ)r!jVZaR@LjZ*h4+Ddgg2DW!`iu;(&Yl5*H}<n;g1}CD
zh5%>xfWr(7Er0+2R{-aYhW!jGC7yfD+e|@iW6)Rxi@|JgpBUs9P<{i2Jt)0o>oq-M
zQE0-NuR&@-V*nr;)K>(TPoOjpE!RL{4GK?Ceih(ie<xoR|Mq#+7I3}W2?`@npAIx;
zq1FtJ&m(4&!TmN+n;K;10X0ZGgTz7RfXoA#1@b$y!UAw!28~UC)UGg_{1oKgHENTd
z8VE=~Mf7VLAAtHT$ZEDg)gbyesA@p%JdpY&W|N;H+Y1_pg4qk|?|{^R{0&kAiW^Wr
z6(k1AyP)w77#lR+0b|3$3#0}#mI4z8jh}$h6R7_N5?i7+8Qk{+r6)ybSY`7yKLWKu
zV15Jn7t}ummC+zKz`}+>0TOO7^Fd=WpmGLOXGZHcJz`Q^@DLP6ObQ@><BnU9n?Uw~
z(jdrPH=y|hHqHccCwh6#&cMJ05(ky%6-x3?nH2gTFeprVI*FO-0Z1HFwu5L;*$$@h
zl<gpSP}vSjqv-V!sE>+VpMlbZjsf>m9Rum7j10w(85tO)J{ZYA&1PVD1qxS518;B|
zbB2}?(cm%-k`{Rx7@|OS?NONw)(@%+LHrFOkZ=U~h1sC-0VpmQ4Hg_`Fj#OIWF992
z1GwD4&}RZ_PXs+gRts_isDBGG7c?Gnf#L8&P?~|&2|Um`0a*^#J^-bASp0(W(TA$|
zx9U~t?>MTw!Q~uC54^sC=DiQh@=qBA7CeTvDHM^+zro;)Vz(3ngBHkrDhAw7RScw`
zGI0k#=3`)31sV%gQILKL>PLY358!?Tc&woDfgiN53rfcf3Wve^K<NZz##?AQ0m*^J
z7eQu&!V5%$!a&j>8l@e@$iTn_YF{!iFuYn~BL8%P6+5`BMsJU4K>G||l)N8;(j~Tf
z{0c}8T4saVV-ip{D1Ct1D|-xXKWw&I@NlsesI9>b?pLAv&&$5~5s!lOQ&8RlmA#;H
zSjYe}rX<I}zy<OLtQ`sqD;@#R_%m@~1!`x3!U|*tD6Bw!frS-_4H}~Y(V(;s>e~b;
zOa}LVA{3gz^d5!V5BI4Yet3n+`{6Hr$k;VF?<*_-rMZV7_kza4LG4{oc!0_!4u#p^
zu_+#fW-tvhV}s&huv*aAq>#d4usFya!bofpg~Q--2$aS-3?S`9klR4<3ZjK|A!QP*
z&H$xTP<jQs2ipDvsRNBIgZyHG)ZT>fo5ALT(lAIb$i1Mt7i1TUK`+?93<kYVLE^Bu
z#3u)`3)UXxQ0T^5Z-LZ++M^&Ez5D{TM?vDCJP&G*g4m!k3q*s;EHI6y%mT@S;tfQD
z+CQMY268)t!lVa`28$nn`cGwYjgLTa0#gHOpQERF0}tJoJR5o+1t7IuLH<@?2!0&P
zz#s*#uMI9gZD0s~90}!v(iDTi<)`Nvf**%K#X#jgNbEmD@MC|d7^rRs*$K*vpnL~w
zuY<<9K;{Y<G(Xy4aQR`e!T)EwjJzN2GKxlN(}To7>V%Ng?J@FxxCc!gNDQP-1T@xX
zF!?FSJ`i65$_JGd$o7NsC`b*c41&1{BnDTfu;3vm?=b}|c*x+e;4xSoRE$NT=^?8@
z^FvTy4P=K5)DBo13E4cbn1J-tT};tnH%l1wJ_Yr+J}91j$idM2ltrKy+-Cu$J5U)7
zYXgGHCs6;K=YsbmgO0r~VEtCmSO#bw>x;5Cc#Z&Txdf7fmPMd)Ndw9T`43bsf${>V
z9ruWVfeXamV{-W+D33B5I6c^B;Qer)LG;58<@ryU7=j<NGceqOsR8L>hU&SXarhy#
z!K8<mp=0Er_7kY?+yknQ6q+7@*r0X^hz7N(K<ykbTMbgKfXY2kc?U9E#Gv;nD7^`Q
z@}A=9hd&g~J_MDWpgajGUqE4V1<6k!JsbwTPYJ0JvV)|pJ&Ly<g6dNt=omd{P65<@
zyaH-JLi@KMw}JY%usV{RfngR%3{+mh=2bxYz~zRr_d`&g0?9uxgOt@S&~QPq)4=J$
zHbY1}y-=I{bem!HLr{GW(g&LddZPxJBUphHZpiaOpt>96cP1R}RD-$`G$(}awl~l=
zt}Fw?EwG(tlfm`f^Q<55Kzxuqs4RG1wc{OV9Eu$}{*(wFk5UJ#0gWMm+I*mKuo$GV
zIFNpX+~Kz%KBzp0xgEp?`4JRXpfCZ&!3KrH;57RK8fLKh6$W!i7%Cve53*lC`4Cip
zf$RYFeL!^@C_X`bA5hy2#7FM?fbum+Es{OpIv*65i3*3Gg2snHWdVqvq;MEKt^+F1
zKz4xoJ|Mjyzk%90pft_`P2(Ujn7csr2C_PET7tHR0vP6_w1>DE7-oUu5S9;N`jE{6
zxe1itVfh~39${dxV_-<IfAN=rK|q~>;e)sCOPLM5k3i*s2Lt!hFRI=TcNpA$2=X(?
zPlxpvJY1v&9fyUsJ(vufAAsZ~3}!zC<#mu>LFF8%OatX<CI*I8AU2bA^COTrXgnLl
z2Zb>+1H&qixga@^8Q=f^e+7~Qmum{r;5iqNx^<vA7X#_1xa<eFm$9|)6c#)Lm7$>a
z9<1Fnoq>T1H203)Rs!{hU}_BvxWR4g4ThH=?ohb>5L9+;GWLGB$vFBUqk;1y7~6p%
z_^}WJ!>LWe(GNlK4N6N22OJ+MFeE+_4qWh1D5mwHQ9$cMAxFp@4y(X|hj$cCKV(o~
zdcbJF`~VdHps_blTN<Pv)LsFx;r22FJ<NuV6(GxV7)*XDq5x{cI6d$%fXo|QQT2Z4
zfm9Y-7;ry@^A#36v;eh-4V)i<#6fIO-b}CB@h%EF1`IOCxe7AA0WQB-LE}M?alJ1p
z-VZ_Y7nlx%=B2@Hv*v>f9!4DCej0H=`st!`Jz#c|;ev-T2Ha2YsCt9O{~j<39DZ;`
z#rq+w&9EqO!Ncafwug%g7l6(CkaQSKgXVwXc0$V{uzgC0AHvE^RR)GxAh8>0Zb&%5
z{WJmU1`r$Mh7<$tr&rVvZUE`KpagO|r0ue(alympzK(~BCqmruqY2>-aK2H6l))f<
zpmH134g`sV+Jc~d3t!cJaK8m4&w~_Z5(2ZIe$ar-uY>XdC>{I!|Njb<_hc@3Kl;$U
z_XTMD8#G=4n_mL09kBrAH5Eu+1C<k?G6z>$2g&mw<uyp1JNqdpo$gUN{18+o!tx!6
z4a!>}HK1`%5FeDEK=}@22S^TN9w^^|%#<;Nj9UaUFzf=U1&t|z#T6lApCG+V(0Lw^
zUbwvB<foweRzyJ>+};4Gb6{Xt1*%_h`2$oIVC|D($+Maa3|xfNg2Eb<u0i!EI4!Xt
z#w<bNpm>C(B@PCLSs*b`y>kp{9F&QHAqpf8%4?vt5g@<YK-ahMfX3DpnjS#Jnjzy=
z3JV^C`WqlIkRC}zNZ$h#_n`3D_5c4XkQ}HFCZh;xn}Eh2K;svn@CSv{A_j(2p!PGa
za3ZB_>n5>m1I>NI%6HJ*1E?$pxrvj3K?_t)gXYLVW#11)NPCT$fngR%jM1X`5lAl&
z1H&t1eV}lK^9`IH9DwR$VqlmBG8?21RL;ZIFa$kRVPNP2m3bltsB;pa{wXLfR;WP6
zE@0sg5o>-5qCtH*kY0$K(*uYYRL%sFmO=FoNF3B=0QL1i@nHcSSAyt+#3^XL6=W7D
z9zlIY5F3<^{y^(nCWZ+Qm<1Ms;~(5Uh0al^Gcag@)C!}yUy*@<3uG^;=~0P@^a!#K
z+3leDVUQTekLc-<4LY_1av!u@0FP_I)Pm9;D7}KxWdyXWLZ1I*U}&&c@I%aPaa{0y
z#KFM*lt%!BrJus)gh1_oSl`5<3Nl6wZ)ZT~FJSXfpgAniycnook3J^`8qbabk7;dx
zr;$DX?Xhae*p?&%!!1yr5v!W~7DRJrU4F}!CH+>d>exH*7?OeXQ?aVUV7Ul|=0_kk
z0ig9I0t+63%5PBF&7c69cawe^f-Vm2--Gmk#wI{CD35~Xx;eA%zh#5YXM@B+<vpl8
zhx?6T!NY2ib?y(Vrr3kR3e?}_>ehX0vZ42p&^_Nr5{%qW-9dB1g4|Cf45gpK#up?M
zrJsVvq&cvSNgGUlY6Ds`V<`R9859<$w!Z`E1&s&5+RM+oAY!0(BXF@<5HTK*o>dU`
z2A9cTdk=&_XwcjRxG!Bb`E4Gw?ti{(`#T9n=)A4Lf`=NQKGW{rw=w~}PbD0BpR%m(
zeakev_bo$r?^_w|;5RLT(79fy9+2BWc@ac|#z#Oj+^q_b^%tPF5vc6}k^{A~Euia8
zJVEo;iqhcxjNHz4Fo4XZdl+y(buf^A3L7_t^}#`FAVK4%?p)GuLGcTk3k0P*!7A^!
zE(+d{JPfeR;eo<MYx_Hpd7yNp2lIawL`*qr@>|WQ`)^gVj=clTg@e=yL`{CH;&uP6
zO4QMJpm}kSn4s6>xAIo^-zs|@c?X&w2Z;$;O@1pSb^ooR)!}!bd2)~#s68ym=luvA
zo;c>sZJ_h!p!6wd=M7%_rvMFCP#A&oCMeuCK=Y=_1@A{(-Fx4F`|S)>E_0X|7&<_U
zWubXY@Sg9Z7Yy7_t+}}0eh}b(`oaK_=3Xe^PjjGl0!TeP?m*!cwf!AP44kH_AnXk)
zlfmX55P{I}G?g{^Z5$}9py9`o-TRhDp!X?<Lhn=1IssAb;5RYQwDSSlRt1?2N;@DL
zly*Qg+<v6A18S#$<UnZ$ln+7mlmi39Es&o;eB`tPYL|f08>mbZz>;=AYfwOG#~Ll|
zuvU4$6;behB!MgKSZxQdhXJJ>6{NHSvICTM<dM=2NDP#Aq(I>TO*<elA+O1AMYZm~
zRf49S2Mpei(AQH4YX`rvKuQ-63?S(O7G@y-g3<*jOm;%k1)@Bva=F38z;FdAO@P*Z
zfy!)VF7CGi0^Hy}DQN8$cufPB^jlcDja;t5+NYrPTOhq(6ulpU?NwOt7_@E^#0It7
znFSU+yrKwcFN4HjYcoM&pnfd67-(z*BnF#rLRJT=E78q^kEbenKZKcwECw?VHs^_K
z9<mrr9ccXl%np!wAoV`bIv&<f;Si91DklpW+XT54KK_B^Pf)pwYz`>wkn2qcCw}ny
zaHekEw*nh_AFa9I`)C7b?q1vbVT{rIr=YaC!9e;csNWA83t(knkb;SU%)X-y@iVBM
z1rrCUy~B;@n}NzckXlgr0qUDnL;EIdRo-twdO%}8puXPosvqyvp<>AMwFOA+4Pgd`
zTOd8i@|n=_8pt{}^>=B|bgx$B{dR_e_oF%3@`}Oar*jOrpRzJAyaJgA8iR(pVR=<K
z+#QvApfNP*r_P}DnaK4tv_1yu1%)$c{Q!s!D;G8>NI!K3&HrIpqk*grqz@EUps*3+
zc6?({J^w9xwc0z-ygm;!EI{T%>d(pG@B+=Jf$9a&nmX7VuQfDWKxrG)CIp!Yo6{;0
zKwa}<z`!sI<OaC8&@v1p25NJG*3*N^CQ$ns)RqRV*Og#kI0f<(h>vZ(E=U}d-$8mn
zYhrufZe8&G*akZWT|-bVX8`pl8NlnS7T7Z|FgP+WG}z?}HCut^%G1))>_O{6xvnp^
zfw%#()*r?Ot@Q`7L4E_JBT$+H<rR>aOV#DKLRIo_+q=}?ZGe{7pgDgr=)9eJRmD4q
zy2IeG1LbM-^x4CJI)8VR5fVP2IR#L7fZ_;Z#^tx#Rr2ulY|NlAF_3-=8v}J@VBi9&
zV*}MmRomY!&Yu6)J=+Xy{{|E2*kkpMccA#42U_3Jt^TgZX#UeF2Ha0U`V17BA5FoQ
zR-xvxXLo?jVyl9r1CaY5=>oKtBmEs{-3V+=h(?w7+Xc`vS;uJpQ)Ywy2k<f!ly<8w
zzpV%7oAh@ewIKVE^FSp?E(;_FStqGk<^6UE)Vv3VSj<zH4E6)aO|b9+v#Tz@O$V7(
zmHuu5m-stSItR6JLG$|?1f-u9$~8U$m2n{ZLFthJ>NgM@<~LXxXJ=rDf~$kt2Un-i
z{FEP>mqB8nezO<YUUhJofy7|uxgw3@!pwunLDC3FErTLto%0?6X|TUw=>{|=$86vT
z4$A}bps_N@`Xyw4fz+5l+lHXNB&eTi0&PngF)*wG*_q-v`6(j3es~AUTP_AI@OALW
z?nyC(tobW}t~))9W8En;Xuep%@d4O;#b)r>Bq&dU+;A6K2SXNXeE{V_&`u)<28IJ5
zwj*eb3MfC8@2j^5(My;Z7($pps;gW;c{DvOEv=zNjzPZlbs%VcDX1TD_DqjG$SzQL
zq30<Rv^>QKDs!Ou6Ql=JeuLsj6qI+X(%-2-%epB2=0_8-<pF4XgY_vigX09W)&dkx
zps>T&PXV`0k=mFr^%(2tpnV#U`#|mh(V+P=P?-a&!@zM2$~y*=pMu){ptdih&e-wJ
zEi3-5KvneH=T&9z)T`9r*%(N}=Ndrb%d67B>!1Ch{soy0azA)}unLmyc%bv%3!vqQ
zbJk^WnZ;B!8N5~*)NcUkn_x2eDaa4VdlNu=GGO@*BoCTz+F~gGbh6Ol2hPF^9v%X%
zQ#NpXa6(|g<B80mab2eeATuVIG{Ms$$ZV!ANZA6a#~8XG_Jj6Dfx;OSU!Zke|Nj4f
z4eG}%uc~;bUX}4q3mSKzHVDK&kacQrk^07R(E15%Zq?<tZ;<MAai|=!J)pAeK9YVu
z28JlDs_3`(!Ff9UopP1;+a73nRAG#}JOb_c@`08M=;j|sGG7u}wt&<i`{4kR8Ud&p
z4u|GPE1-5WV6hvNUSR8XL1PY}HA0}U1-V5N>XzuL$!|gaft78bxg3xhkl7#_RL6tX
zKekt;zf-F6e!D`!`%wp$e1Xp{KB!$B3XnDo$jk}Q@Kdbve%k`|14`P4<};96LGA#R
zdmuYNbuO%&2Du$12kQ5yXO)A?SCANJ4owJ}7GQHv%Fwh78dCtJAyArQsG9T^L~l@;
z^mKw2`#VUx4^)5seK$c%{9S_r_tOR(>svwgg68}|G^lO{je&yLuy#4JJ3;cGePAGY
z(3lx$|5zy_q`e25a|?#L4_1duL;0Zf2cWfhAibdWFUakny2&vMvgg2|YW~~wDs!;k
z;dMK>{R;JmmH4|F1Ma6ac)}Ru4-se_A%_nmf$*tN;C@;`WcYyQZb5z^Hhgp$8NhP^
ze^!3H<eQWLUDtRLO0NXf751Py15{5iFfcfP>VY533=9pRiSg^oHcJX>!F2+t4+F0g
zpz|dlcOZ{(D}m|+1L>zf%^>riJkYR5E=R<m<)tK;hNLxw{NcBtbzvZL5n`9$DudOg
zgX0Dv4k=?nX#$iEKzcxKL{Hm{(79O9cs@uCY@F{FQaK>Uz!3G{birfLep!$j(40T4
z9uNlarGd0LQ2RBQX$6+|FF?ybL^|5>P91Dc`Mc*;kURmh2b5lpLemS#AE2~-kb&Wq
zP*wC>*d7;s28LS~jOITLfVL@--6jGylQg%jgu0ETYVuo<J)pV`;x>pm$ZbaTEJ&Cm
z`vX)ah(gN*kho}7^xIBw8HDf~lR`7N%>wdYFVugmNcMsJjvAK4+nrwZ@ts(e_ggV=
z-Te361S|1(CD5<|xrbSy`4M=`*<is&W`hL_oedW}EHL1HTA<+ls02%S3tGzqiR&L=
zb3twcnFBXpOZ**^f-~Gdpneo+9tlK)=6^uyLE}T9IdIVU5FaRf6{Nv)HOS*bu(mp=
zFT+_C4PLX%S>+90X8>x`fy{dS|NkqHoEcJGY5}dIKyHG#bH_WeERg<VVE5`&%?F1?
zdR6&5@hb1PAa{Z0Z(!~Mt?2~0OAYES5FgoH2?pFx6AYxE1~@c70?{D~5E?YzBo0nr
z>F=bgyx-<vDfd8m4ZU6jnE@Kl2H6Ah7sxHQ|NnmlSx<cuQr>|3jSZkO$ezJrjw{!7
zWpF<cTbYJvQ(b<`i_}*W0Qm>h288zKk=23on3edu3<K_`8Ccv6tG_|%6BJIMaYj%X
z1KZc60}XRnS&@iTR;WVd;Ny=~m*2*N)4%$=IA~o0vwsaVT_U?J46GJWr-0^-Qxv=(
zt-+BtVP=5plQl%t5g>J-x(!qxd+T9epA7Od%<nKiY9aZN6&kka@gV`t%OG)hT>xDp
zQh+ul!3(VmK;<v;o)yp<XOR7%`WsZ<f!HAPKxqlRt_SVS2aRzFT=0Ix)V=o&XrC!0
z9qk0AotZOdp0s!H_5pQj7(i(VG7fRT9=5g&HunQs*9IB~wSewHG{G?!162c_PX>)m
zfc=QH*C-HeuaP?g!z_><7DLD$LkopTPeJ3Gi18HA8ga;eN01s&8(zS0KBNsVglNMX
zA+_Pb<HUwda5sR%1v(B1vJ14I8Z>VRV}r(0KzSZCE(;nr1dZ*0_9%noo%kVhQZV;`
z%w{%ddH_lvAag<Oepq`Jq#k4z$P7@v1(^rhqYM%U)vMq!D5S7(K#Ok{Xjp*Mg3Jc5
z2~;=;-jiekn#V@kV+4xRdhlLh28M=nCbFOi1ocB<@dlgk1GxnhXCT@M+jt$Cxv=qL
z9_V}_NFQj;I*10fmDRJ3ze|J86C#hB!t4d@bpox60QCbw^)cwY2@o69Uk8N;D4ap_
z6(AZkE(RJS1MOFrVqiFB0o})pv0uIF@>^!;eoN*mZ}40pC>^YTrh~(R&~zZ+_y9D9
z0_yWK8Z<uu(V%&7ki8&#Kyd=H^Wp#huR!KSLdzPEndokW%|(FL1AyEL8uta!pm77x
zoH)qM8hG72`7Lu*^jlD!0;;1ptEAt8>Lt*eCupB7XwMU9-U1}f0<9xJ^OYcR&=@di
zJr&3epl}EIbq{EqL+J1WV*CnnAIPsDw_g7L{}u9nUk1>+1?Zjx(0ZwVrVAc}>KC@G
zXz*U><yCF(Kw$wILj<{%3sk=<ct6rXFI&O;U$D&8DNF{>34-DsltvNr8w(sk<0Y{4
z1=^pjzyR5w59(in=Qg2Zt|0e=`@~3mkQz{)1EncYpB|(J)Tal<Eht_<X$rLV1$0({
z76Zd6(D)K4?2yL;K<yMze1i0X%mdqrv<Dnj{P0_lc~cpJAA{Drg5<z%LQ@YBgUnxp
z!u*Ef{HK$I4?S=aUhojKHiSt5I=;Zf^Z>Nx4&+{txgfP5H(&h!{}sq=WcMUP(<Q3-
zVelSUh<%gaMkA?#h(Y9$!vvImKxGdoOw33M6Ubh0P}&8hMVLFl;SbuMo)rz=9}gS9
zL6wKN1LPmbn8D<?ptQwS75#R3R@yr-4ITG^>4T_4gy9qg!eI#V7bpxtemsg4hA=mR
z_L774!Ncr;h-119w3i%N9n3ADw2M-{F?cvLFnBnD%2-$$MlK^keSJ`RV*-y$L)JdP
z_TPZ^>w?;@$mU@)Bf}6f9u68$LRJequSf@aUJ+=WHz>`6{0^c)X&OX}8hC^Eje^QJ
zP+J<*rUsRJpth?cXuYq3H24e-<hJV#{lgED*QuUiL|vx}UQ3Kc-xuh(9B91{XuU1S
z9%OSt`Sc6u3?wXi#i}m9Wr3FGp#AL_`V}WV*APH=>%`{)29uvg7&L*-V|onoD+lQ8
z6)fg+S3%M*s4NAQu^_jB(h4YCcKrYUO4J}4ywA@Rx|ar2PQt<qlwLsLr3Vc!5FgoJ
zFn=q7)+IyNy29lhCp`!G1zk@FL-QkS;-LNkHgV7z8Bm?DJWK5zYgROLtxWklP(7jo
zZHvR(9pEr&K^fOR4IS5p?QsXqX~ODf1++a(;Jxz<!H+{37`Q-diq@!12Jg25)t#XA
zx1fDjpmGY7zCdLcNDU}mfzmoCoIF75K%n(DJRCs#dO>GwfX>GP?b%@ndT7bOzy(^*
z59@z{@-HZ!Kz(P>`dv`}0aV|>+Wnw34N?PJKOz9#PXTIwfz|+k#^*q5N5E|_hTzA@
zc@5Ne1)aSE(yyWbTH`1U-d_&kH$N4Fp2>kt4x(l<c;64mf85Y@lNt(;wUjCXP&v?i
zhe8v04?OIA6VQ4=73i4&p!5a`uT9XnfY*c2^&aT$YFIo7K+_~B%t7G-aw90*VC@(V
z1@A{Z=yfq@{9R%4Q;7QJr|9d&VdaO<1>Z-YI#)%2`>BQkXs;soQywnvx4c~5Z~2hU
zJ`>dPek)|f{Z`n@`>lu<_ghgfZ*biMTFVKmdqL?Iw67JE)<NsCLHoTxY|x%i(E2M7
zo4acA+s|3|!Q=EGK4=XVhz6aN20A+d#0H&@20A+d#13(2egvXH>%T0p^wU6XV)VW;
zNIj^p45C46i$MF!Ky1+1Kj_>w5F2#X8tB|L5F2#180g$J5IX==b|^sRghD`h8N^0D
ze@*Y;Ly)?EstX>+faIY2g+Xx)5(kxWpty&zLFd50*r5Iej15}n2V;ZQ`oh?tJ#;WO
z=zJX*8+5)7jO~GBFKC|vOdPaF0me=NsX=o02layw6_EHp)X?}Kd8l7HKzgC<9yt5K
zW6-)+koll}8X$jy_GuuS30f}=Dic6;5Gc<uGXy`Dhqf_5d=*gt5H$A&KEDdGmJHM;
z1IcONk<-B=XMjZxWF9E5f!uKi+71A@_X6lV4ub`cLFEW&Ju?&ZOe~NaKzwlj73w~4
z+W^|u1j&KS1L*^u<pK%=ka-WFVFOAFAE0cIIH-<84woPLkTk<+gL<YJXl@>67Kh?t
zaCt2VI{OOg%s6B<$nlPxek7oJL3V@IEra3!)HeZ@%dowmAoqaQL4xL7LFG5N90&Uq
zbKfjTAIQHTGeCPmL2hKWY<>jVR{=6x!>|eLR#5u|R-b^zw_)`OXiqGtO!=ea4bCeU
z)FFGou0!|Kg7|lsaIbs04_)^H>Vtvoz5v>%2R>5?F%NPbG~Sby{tnb<1C5=6;t(Y*
zR6*KxFukBL1lSzP2`qY1(jS^$8wG^DJF)0RNuOwXJCO9Q!lD-?Pax?9_3uD)k;<U?
zNQI^c%nD48K;=Cs4!~i8l-`IbCqVfa6nCKd2U1T5Kh_83O#|ttp!0=5;Rg~&4MWg+
ziSl<K`#|SlfoRY<STMDyVTMo(IvWe57IgLnOf6~{A=C;%{j6Ly`7KN>YM3C@Dnr)<
zgVH9*A7`L>8|3~Fq`nWbTm6v4k=^BiB#!I`*jZU1_k-+%(3j!!2B7iY4+is}g31<<
zoK4l`x1e!l(EKBW4@q}6Apd~ZF<*WQI`?T=mO3~bm9s9x+io!ROAH`u$QBsP2k*TA
ziGNUNek6ikrz<RYh;==q0%#wr^i$+A2v@y>T(*PD5CQ3@ca*#zg6aoQ{|4430k1=X
ztUq!H+EHiEb$zil2s1D&us?go2R;^vJf`FTU8@Zqt3h7_W`O9&!0dpP7oatbpnbj~
zNM~+=%5da1C1~Ck)XoE?QRFryXx%xe9D=uf8G;|Pg3j;3(*9(Do-YJTKcGE)pgaN6
zkIPNSYuZ6=NYGwHklQ2;A#-t{a{?F*7CZ*GuM8GEW;O5zk1@i^VpeFsf(zs(&^bSb
zsCy$od%HpAfyQk?<+z2x{HLI~I*=GB4S{G--w4zW29<{(KFDm4TF{sQsO=2u8^Ybs
z(6ArYwgavAlz^UR1}f7ZI6%(t0IjK)K~G!I_9AF6xCwlHO(S?r6V$!~>j#}TCjgow
zpZ|2S;h_h}XS%`a6lMj-2Vk`dkUjKx?J|&l3Ti`v;sBJNKz;+&$)IsokQp%y&5uB0
zuzDF(f8iQu1*?aiAqR?Ika?hSR#2LT)lp%gp`oBP{h)Q6A{%-i6<qLrQ~}zrrQ!Xs
z0=nh~v|a<!rvlA2aX+m9o!w#6{0KBo3)<rcI^z!}25Ng=(SWR%1&P7xZe+0=YLL2*
ziGe|?LO}W{NDkEY0;vbZIjF4w7uP@d5G0-m?MH*s8i=0+<;OEHaDn(Y)DJ(r!hxti
zJy=lt=d272vq0yg!Tba_UmewaP`?6XUVuXLBM=ShdxB_o@R>*H?_{dH-xfgomY}{B
zJdY_%28Ro%jcvfd@Cu{{=0+W;8$si0u(bl>P%(6SKx*J?2C^={y`44xZCll`cTckJ
zL)Qo4o+AUzHG%8}xdF7E4a7z_p9AU-sVeWcxaO-s`aouYXi&ZawWnchP<t94c4`M7
zE@6cD6%?n);lCPf{$dRy!z_>)u<#TIt?kPye+Lp1hptiLuJV4%T^0Ry9;i)FmHrOI
zuP~bb6f|!I8h-`NA97bogVliYK4=ayM#1}00(!nxSnx0fT?~|$4M69{K=xgL+HoMe
zVf|*%S}jo6SAhEBNawGC`puy6Ur>IGFo2|em>%#Ln8D<y7<#~CzMykSoF0T2a6b)E
z@O~75!#&N03m$^j``Mc;cnn%=26B^R)#SH);IVG?cc8U@pz;i~?>sqcK3F`xs_Y$X
zOcA2~@LLeg15dM;-}*trP^8NHZ2-3PYB2dJXq*S659Du9c@Iy^48f0?7#O%f=P82L
zGlTZFgVe$N4c?>T07>sG0h6DC;vJ+Hv_9Jq+D-+PzpM-k9-92ue+Vi+_^Z6ZZUn6b
z;I9I$b%Tuk=`%1yfy@S#6QJ@0WEO1gaRYSSI_zv56$VHeg1H0aZuGDRnFT6CKz#=g
z8)PnenFQ;bfaF2x8`Lj+&%p4?o|hRkJ;cDk(BQzpz+exm@6Vp`u>*|@HMGbvfYup<
z_@Ff`ptHKpp7F5-wei8`fa(G0`VTb*1}=~v`H<$26&V<!K;a2qZ(NoB4m4g2(gzyb
z0fiMP{6O>dp!5$)+mJa9ggQ{Z;i`&$tC$rJJ`WYP{)3T$;T9-u!qPKH9cb(rG^PhK
zAGBu-M1#U4LE-Szt<bV50a|{7&UFCEgTetM4`QR2r7Vo7Yn<_wrJ#HYTH69L2jmu?
zta$La254=Uhl2MbA8h%c>hjxA=(?LQFkSvm0Cc7*(p-=%H2r|$98`uP&-23SACMfp
z>;#W5Z+|x#X|7own%3C5CWF%=NIfjwgVHEyJtF9=CXm~a<v?Wsw4KAnQ5F5R37WS+
zY8$HNzXgeb)^o{1^DIa|Yu0739g<a---7ZgXpR8n2iYoVusEpw0uuw}@gvZ^q@ek5
zkU6k5Ik5Nztvf*$*I;0{1+oVguOK$Mn~}pvkb!{<WH&5*f!qR0kD#@ZKA`pF)#~7V
z1E6)Hp#5dI)~|rv0kR7ex1jV0TGNKSmjJXL6O<l7>Okw$Kx#q#7!VEevl(>#G*bGF
zf~g0oK~@VYdyv$D(>cgokUEh4pzuIR=V)yS&^Q@LEvycV0F8^FwZTDU1NvAQNDrv~
z1Girp7CaPzt_gtbNn7v`vc4_A9&~Eo%$X-aZGUh%04f(i{eTC03=FV&3s8F#)Q$(W
z**FX@KSgc}gUTpSTNsoEvCU(cAe|`$+W!h0``isZyA8De2UKR>0iDGHT^q3zt=`=L
zJx>g__F^+qerSW19iVn0C=NhlIUpKTmVoV3hqR4B<GY}E1&vvP+LXwB4Gq|t#|EG=
zUT*N&e&}joa{-__1$o>Eqz=?B1=;uL|NmEDIfmfJtqcseKz$hGeg@2qpgIfYHqd+p
z$ZfWubN4`FlxSyr!|XK#g%=ii*jP2l3=IZ`RUrR?%tZDdD4k&wR|c0akU9*scNasA
z<D};pVuq8R2QV~0!X^&N8v)RA1w5Awt+PS(0=WEv&R>As2MRM#IP3w9nHwy444RjL
zg$byi4Dt{7Y(~&nEn1j>%6ZsWEXW*?UeI~xApM~91j-Mfvy?z%Y%nqOG&TWkJ%$tm
zLl-FBfYz#k^nm)PD$qR(Fn56X$l(fe2S^;`4v=14?qCAV!-LMPhSIRUi@g)*b`%B%
z*#6}II*|QBpglpb{+`VR-$$Tz7N9deK=bvmJOt`{fcT)ZNh=u`UV-|nuy!6St%33b
zNDat8ptK1JR|^J)TcGt9AU?8xK;Z}qdsy2<06Gr?8o$9Y55vr0us|3z=LxD?<iO{G
zN<UR`fQ(zf%mI(NLdW{h%>k`P&{6PyWPq(s1+P~L0i9*Cn89GdW|%#ozBS05AU}d=
z6$8-u1CaX=K=A<b^FiqO_aJwH`tqQ%3)H6p#W5(af@o0sgM|$!O@hJ(G!6s`8xS8k
zY(Q}fif7O{>>ALs3t|3)g%fDb1l@li`$6Zfb5%)$=h2bt0#JN`%V+R7Lon#R3Gf{f
zAoqdn0{IW*4v?QfZUwFH0Qmz{*22;cERBHXr$J>jXsji{Vg6GVhko#U6(i&h1}RWn
z`zS!ph~Q;lka96V-7^3hp8)TX0=N4?a#Nmz@{tCbI^=$L3<Cqh|Nr1c&<v1!e;{}D
zz{Y<#K>K4E7CgQRx+kGy?+cJxSnHI51=36f)it2B4r-S|L>fSA9vv70oIOBdptdTA
z2B|SNF181q&BDL|nmA)%Fk)a}IKcp+LH7ySFff3P1=+y`S)9!Pxw7bhy#u^m43e1R
zn!>=qFl**aJJ7x#&^{i}9v_hXFdBTG0!S$|e?snR0I6WGQ#I8yOjA$@DN4*M&dn@Q
zC`v3zRj^f1HPtgn%T6jN)=>!X34#b1rKzfFsG915XiXi3ppX!VxN%ysjzVB*YH6xM
zN@`AGC0rC_gQ|(1ahi?-cFHV8M?n=r=ox@i8K&qcFfhOrn?VGzQXu!~D5#o(G{DqD
zt%4W`HX3XIe)Av(!P^I*v<KRM3_5QDG>!*4;}<lB1<Fs11`FV21T(1oL%P2K<X6z<
zNLV`qW)8><&^ky^-T~!Z<a~n540xKm;QNS)i~B7Tm-Jguy#s0!gZd_jaWu$1R3N)s
z9A`6b*s!7T|9?h-J3K553~zW?8h9Bxc%f+%NuJ+@1+<5sWe+365k`=-!)(UJ4I3I-
zK<1Fjb^_~d#?b2q7T=E{j%>cqY{tgsmX?$F>~)^a*x1<8fLDzR*c^x&N3gw(V0%I4
zg76YHNI1!`L+CqD`VS|BZ^I3_r%QkblK)e97#Kh+OBe7kFhnpgFl6vCFo5!yffxfr
z0q71dNd|@*P=1wSVCZ0AV7MU1z%Ye@fx$)zV%{4y28IQoyS>yI7}kL92h(6+*ulWS
z(4)n`aD;(@VSx?<!vzKghC4bC^$L0n44^v-R2(7vJ5CT<#u-9~K<OG+2;ad2LbpKa
z4N&@v7X!l!1_p*2ABg-1DD4sm;TwcP=n^Q+5yrsqg@J+LOc+G`ML6W*F`GmPzXD3{
zNnv2%VPs%<kOmPiNr%wrX&shlK;vGZJOk<f1U+PAU|0p_L&vsprF)#_RZRx3X#?$9
zL#lJ4$TbtJ4|=W(Rm}vS(JBqTHvn8-P~dN{8!^q(0*ey}M^Kt)aCdgLQqTxWEG|gO
zOw3a-(=*mH&^5HsE-J`0)P!&qj0_CT4NMKq7##H&7#I>$6O%F-7(qAGv6?Zkv2ieR
zGIB8qv4}8=GKw=xFiJ8?G08B>u_=MdIj|i_L@1~rf$~`xKK_R?!4xwCCzys2%naNx
zCYWYs-~rPxf|-FAe7_!y&%nS7t_wkYkTr}9ybR*d`Vr(75Fb>3g5)859yI+tpiSza
zsupYxNWDJ;1K3uWdGVk-Lf~fdGE{={EhIZIfYf(F@AiYKpUS|%AcLfSF=z)a5`QbG
zoIv8A0hI?x{3p=6{$S?)g5LE9;|nt~fZHK3zAhsJg9Va)M@9w)SQ`Q4z7R%8*#%Rd
z%E-Xrf~3Bhk%7Sji9dr8QpUm5Z)ap+2tbm*!N|Z6g2eyM2q_C;>Uo$L7(i_%7+-^l
zfgu4&Jt!_<n3;i(!5+N-7$yR`NfE|oU|<H{s))=NK#M=njf=?gLTKiJZem212i?ku
z%ojm3PlUmV2~wuR+>cNVa*r6A`JkH}5h|F$w>%>ACDF{6WC&woV8}p9Kjlme44Fv$
z2}}$OIY{BPnh8?3aDdhDG8|`OV5mTnzsm%vb71cM!o<MPfF#ez%)kJu^kDMR%#gYX
z#<yc;VCX?oAIr?ZFoA&qoF_o(r<Iw3VFnU^Av2^7gSlrLGXuj4B>7v+3=A8P_`jJU
zbsWq-P(DP25H|xWNCIv@H(K~|g2QhH8%zg!c_9s!hsiQ9NF$gGp!kwSla~dX532Ve
z3L)k{fg8&SmIu}U$nqNSVhJJ-Y8N2O^T3NKh&-shfGnQ?Pu385P`d#|UJ$}#V1UT?
zAn`%rbwCbP9@MUYh(O$Lq6Fc=^n=<P5D|#{6Ez4ACJ$<dKtv$&92yWFOkM<u53;{O
z3soM}UV(@}^iKg@P6`%)xF6Jx0dpB3@-m=W1S|lN2eoU!T&R2n=rU8V07QNR5+7v0
z0IcH$4W9%gK1kle3aps{=Kc~SK1hCt9jg2dBtA$UTnT`cK<o##x4>Me`%XAPcrf!p
z?J$T4#D68O5FSh()E<L~K;%t81uR$qVm_#y2IfM||KJ7T!SsXLYY-8LeuqE^4<-+4
zw?RZ8@&cg{9!wt8o`Z-$<WGb_crbZTyAC1(k$(be-+=`n?gO{?pnOpHd;k^bP(G-<
z)`$gjz~K#&mq<kLLGqw>B18mY{sK@V87u%XAJlFHb1~|Fd2s%N$bm@EO}QW%f|<d$
z=0eyYl9@pfEq{Y<)CI{vFf)TPnt7m`b|G>gk{NvKE{Fxe%nYh%=7DbHg~)+OW(IXM
z^FTNCf@C0=8GLImgbgB@88p$%1KsEgl7V1m25mI+KsWtD<Uk}d13Y7axD3n;x@hKs
zZUhEPfeB^?eKhkxHwA;Gzyve+)?hFbOfWMTqM2vNAjSe|&x86cOwjZhlMYr6j&D%>
zg4+2I5l#j-76t|oAJpc7sqaBj4^ampnHh}H>@$W)KuKl>Gbjr}F*BG#7*LX#!5qqh
zP|RqiF*BevCK#9*K%*oOwIGri+{y#7Aefnf6~cg$%na~~1}wtN0KNAL%mdXY91Ka&
z`U*7hsKmg>&;aFw+FVKuLJaeud{7ap#30777|I730cx$Rgz`akkPrhW!x1PSCVz^B
zfdSMXJ;1=g0Fr->CjSnNkL(4I`JzxS!OS;cWnciYL2U+*d5&oOAXZfS@>v-e?yxg3
zC@?|npUBF<0ICli7$N*!Q1fB#J;chu0ICnKK;8R~m4N}&zYJl4s5fR~U;x#Jpf)4O
z{zx_k22ei}l)gaxBBUS(xxbT*fdSOd28Aa`egzu?1E{}!0&4#WHc0>21<D6qN((Bl
zLO3Dz@j;^uROBi#$TO%w`7rkyqVes}_<rn=e*Fn{h<W+!3=E+1_6;+HKarh*0o4C>
zf$}%8GcbV4TTq)C<lZan3=E+1O$8c$KhezR;$UC^jTeC0X(07F91IMg@*Z?{B8VTv
z0qLigK*O_+gMmRsl7V3f)W3^B4KI*qp#72+X#8~?3=Aiv7#KL9;eUk#G7gagbuS+$
zWISR6RNjM=fdNz>vj{`{m(0n)0IL6XK<%sNWMBZ*ccAnRa^EaY1_n_30Tw^IIT;v0
z;{~Ac3y?hMVp<J#28K6K_p^ZpDH$Mr3MB?*1{oB-I)f1x0|ThNQ2`AvFQ`1oi=gxn
z$ORc65rN9*b1{I&NnrN(qp6>R#$Uz7zyKOA0rinU?z_OnzyKOI0rg8j{O?>0450e@
z2-JKbXj>1GezX~2Z9fQKpTUlsfdN#1!{R%hn}Go|-U2GALFP4aGcbV0U0k5%t>i|{
z5BInk7(n$S%>C><kZ~3nXm}gL+mev`<h{}OQE2=EWIhuELoG5N6o@J*4DnGuhQ`@J
zB?aKY*x<~nREGGd;1VB0%Yw|*<ka%a;?(%${Ji3lqSE9Nh?GTqd}e-TUM7g^W0~!f
zUtH{zT9ODh${^b{InOy2#y2v^2Ak^w8siN~EJ{x;@y*PGsmx1E%1I4Q0z1My+dVNe
zFSGz8X9;Gz<d;KK8f6D1<`#q&1Q(>Hg4G(DXZt2rz}yTr8>G$9B0Ho4Y#qoOZi&ey
z`9)xHGbBg2mnIfL41u`ZwJbHSBq*^YH8?pj2jq7jBd8xRWeiQSLo#zyi%Sx73qV@H
zh8u(25>gS6n4FzjQVbR{1PKL~6s0ESLIljRof3;v{mWB4GK)(<jsqz(GDdQiUw%<8
ziliwH$>0pIUUMXAx1z-4lFa-(H2qGMC8@=pd2TtG=@}(3Ip4$zkbXncY>)>+3tT`x
zheW!Mkx@1zikvb_KtuX4Jzx#y;CKdUf(xraqTD3gF*!Rd6%^V|nUD}LGS7AeN3L^z
zUU6!2X-Q^Ts#{`lNpMMG5jfQtT0#{-f-N91IWsREWRH<yHnNaMYGO)Iets@k3X~2?
zQXNyWN{dT8^GZ^S$`W(pOJO1Go0%7on4Aie0O<gwlgzx#+|pd9#JrU9%#;#v;8|pQ
z=4F=n7K3$SOQDc3GP2CZ2tt_YP-~4$K{1W03dzOBCOBdV-57|^LJLw7OW+=WS^<iw
z)cm59)FM#Qg9;iOWcz03!81T+adKi&3c8`@;6w+`9av2^&Gs=Vb_a)(A;>uA^1KvC
zpqLoO#}}6*mSiT!gR*&MVoqjNA}EE$C+4NZr=&s(gUtNAc!SJLhIn@$e<w$u`1s<|
zq<GKx;ABv`52?^gE&yd_KMR<E86-!TXBPV=mLzAmW--J^A!H4WGeL<JmPlO7z-5g|
zabZzO8j3<^BiFRFw4}7O%(Tp;B!>8?ymB;?41z&!FD}VUE_OBq8<dh0P{t4+pIng`
zpPH8vpPZALm{(fB5FejjQ4wE|T2!2$mza}TQW;-nfNGZ^nq3I@x)^~?MiPKng%B`A
zb_cp@WJ%-1loXIXsQyG&VQ7$^S`u8Eo10iv>6#Xh%urlVl$nPXFoxzusp*-;C8<Sz
zspXKcb`3BzhNTkEw8Z4ptTZ@4@hCKIoDE$Ag5!zRWN29mPO;G90%~Pe8md1mK~4vk
zg`gOZ2M-v>m*$mcf+C`zAiki;5XC8mCU6blvK*ufC7tA@miwlrWG1>5CFZ8OR%T_Q
zYBzu<*;Lm`6e*}DVa`S=>%dBbON?_9D?Bq@gS<oHgN;ClAs*)99HTTiCo?4zl%61d
z0daEkL3IjJ+?!+;`)7yb!=^}GD}zuIDa<VfkRSw=t6(P}8DW+PF6jb_GV_ZvOEOc7
z(G<Xq09C4q6<{Mkxdvf`5h&Tf^jD>(Kx3#9?vK)(l*}?rw<o5gz#LwZngR-9P@#=5
z*D^6B#knXoC9}k}GQcl59_kWTw3sj{E=?){)lEdGHOtIP&d<%vOLt36O-V{j&UUQ~
z$jD^KE6LBu0h6G@8sP#%Eb6neN-ELZnVVPys+>T60J+o95ZPNLm02J`nB!5BilISD
zYDsEx38-xY@gtgEJUSsU3Mx&}BFxY*wYVfRH?aiN5<r&&MHRG>fL5>=nx&_fpe9!A
zX$eyuYH~0%FNPTeO%#=`S)j}cP4{Ui={^c1nwjT`CW?pykaa%!>5%fMq$oKNHSi4$
zLHRf%zo-PJ2(`Ee$->KNupvlUEd`!L(~L@Us!-y_2xKt0XaLu3u+|S+s2Le0=jRrb
zmZTz7h7_gdrJyM@G=M4#PJ&25eT`ZMz``O6HG~jhVQ7|F?3|xlkXiyt!a4cn#pw1}
zq^FkPcZ!h_D9sh+X6B_jCWBf`knD;h+dCVPQdC0|xuJPxF|0mtfwUUX+zC}^1TB|P
zlAWh3D6#kjmsn)x7sn?h7N?qk8d8ut7FtXumZVmIItI`-fxnwuuxm(sh@+E_Ydk}I
zd`fYCd`4nk3b>_>VUi1|3T0qmh+$)3klD<@kOQK(Ffg=$=&cM49Uyue1H%gty_JE1
zgPnmvW-9}O1UCbN%svJN3vLDmW>yA<1`vNU1H%yzeSm@C4~Pa$uJJH1$ZTU^Fagnr
z7#JF$^c4_&jDg_+h(5%?@C8I4XJF9bWnhpw&cN^lM4w<_aNuKLkU7D?Fb6~*V_-<(
zXJC*y%fQeez`!80hk;=Oh(5=_@CQVnXJBv;WMGiFz`#%;$iTqN%)qb*#6Q8n@Bu`h
zWMHrnVqlOt#lWxyM4x70h!BRDKLbk3h(P!jq6`c&Cm9%0#26T4jxjJ4fapUE3?bqS
z3^ErP7@mOW6ATPC5)2G7ml+r$K=c&`h7u5cf`Q=zl%68Vz#wytfnf)TzRtk#07{EU
zLButnbOn^&0-|p)F#G}0#~2tmq!}1w4lyuX0MR!Y7`}k$TMP^n<QN!aZZj}UQD9(@
zxx>J)1VrCuVECX2aW{uLM4t$VzR$qm0iq8vFsuR54;dJafapgI3;`Mt|6Tym>lqkW
zG$HZ20z^M#VDQm`@MA#q69$GBEl7NKK<OhOaZo&IL)1M1(GM9IQgk5v5)l1_fnkOY
zMBf}JeFh}Hmw};258_?{eFg@ZM+^)hP`U#|KV)E70ivHXFnlmzV32vqz_7=VfkEaW
z1A~AOgie6c6F~F}28Ik{Nc=1S(JvVoEKDHw+Cb?ECJYQRuNW8(far$|3_n2h2?hog
zQ%E@Yfar$|3>sz(3^K177(zhw1_p)?Ao>vlLykGboi!l(Ap^q=DE$ITYgj<sbp%A8
zU|{I6gqZsTN~c&s+>-&NJ!}~mWZp0^>;ci|85mmZAm&d2(GM9IZ0sTOPeAku1_llX
zh<O%JI>3>ELFO$3gO3x0W^snl4z3V$LO?VqzP%v)Gd>Xg8+;+|JOH8}F)*|QLgHaT
z2t<4fh<?Pt5D^OD9{|zo7#L*27#L(eF);iA(T^AyGQuI|ZUNB`85me17#L*EGceo$
z(VrO@R3ahzS3v1EP<l%gMBfPz{g8nnA{yeZD<Jw21H%Up{f>b_CkEoKoLB}1nGFmK
zDsc=9GM^b35<v7L28I_P`aJ^!OFRRE%sU2#9Z;Gh0b>3g5dDyW;SGoe`7;TU|67tF
z?%I+Hu~#LXfkEaA1A`BU{>s1r8e^CI#=wx0&cMLT!oZLLqQ5gR<fJn&Nc~`7C;;)H
zW4~I^`93Xm1_scYK$(r8fgT11E$DQB)^^CcB@hjg(PDzE8Psxv%<F>qps_U&Ey2LR
z0HPJ3G-%u!#0QOMfz*Sh;y`>5&2Sj9_5dUf8czd>gT}Eye9-tHhz}YU1MxxQWgtFi
zy%dNKT0;QhgT{eDe9-zS5Fa$P1mc6%2!QyYsUi>`G)E5NgXY3Pe9-zT5Fa#-4WdEo
ztU%(Rxo!|2G{+6%gVtSv_@Fs$5Fa#`4dR2wn?ZcgTsDY52jpKj$Xqsv51PXU(V%r%
zAa$TQY!Dx`J_|&H#^XUWXe}m)2CdTq(KkTmFflMZfYP9KRv_^YP(ElK70A3FP(EnN
z0wmAD2nlxqC@le{6`-^Vh<0OO&;Zd)3=9TP+5|+qF)&zwXeI^*(6~IvJP#<}2SmFu
zFa&^TCI*HGC=E^r%^;G2K?@W}Aouh_`IDgZbO_BfpMilvuedU|Br%CWuehWLLTA8O
zMX5P@C8-r940<VvC5a4rNyWtsdPVsVj$@FoUTQ^2ViH)19&&@w4AR;`8XeFB83oai
znNmTN4v1>3=3|a85HcT!4v^>cKtrU^u?am4OM^>bQdoU}O&T1CD5@E-nTy#y#qJ4E
zBNn|Qi_<)m20mW%P*q~_w{b3dhXJ>F7%Fj@htd?sYaXgfT;`!P;_;e?sS-4{5T967
zlvv52mz<xQo0?a`pqH0llB(zK7phxal9-$giMYg)lA_F{(vs9-2EFv6{8CU61<61}
zkb2Av4De+h43KgaR3?MU)pgMIFreZdT^*==g{fPQM;)k~g{cFTWgxRa7~MQjc?(kq
zD%(J6Kp0&eXg&(2?jas~LFF(^-6K5eK;<z^9cZoyWG4ut+q(oh&jkvXw@BuJRtA99
z9>As#LFM!W_`EZuo&!Y#Xhjfcc@L<50`YUY85k^BA#3J9;vhRgQ)r->evo;v8DozO
zNSz7N1HvG6AR0774^j_P=aT_h^9qs!VVF8leF-uTHX|L7!N70?BmhzbT^|Kvf|izm
zgxR19MY164^+0kU3^Nbpe~>yRsJf6WkSqd&<Ul--Fe3v)K@*ZXkb7ZEkYMJeF@RQs
zAnaN)0TN~)dqD95QU}tv2)yo$fdS^em@LTpLXce`3{nT8LG>!g4KVl3067FC0mUFW
z5c3qoJh=Nn>Ol6uR_ejbJBH@IHAwCQwRu45K>EZPA>j{m--0X#lvNlYbs&2|^)D#C
zVd-ECl6jz2d?0lo^LU}=!TfOohd*>6>frtWsRQW;nFX>BWFCkH)!)eW?m@Cw5}KYt
z`n)0L!B;R`$YNjswFy9GfH2HFcSh8BJ2C+>PY8-PP+AA61DO{EF|VKrq?v(%;YBtB
zLjqJUNC>13M2A7eVBvBF<US@y{s0}q3sMI%FCStaJRNxCLe`Cf%m87KIuH$7UkZwA
zSolrI1&JasNDjp7hnNQsKae_*J)nFIl82esjpn{PlMv}t5h?ukL(GG_Z$>U;&KYDD
z2*b?V3RMSl-xD0}yAM$ZcOOU{$bGOCL@@Jiqq*-1lKVhq3P>GDA3qanI(>t~eXLM*
zF!x#Hfn1Nku<+A|sDrx?qz+^cY()~tUXU(rCe-xu2FZP()kq+9Abs%=^Wfp<kcT~f
zL!s(m?(4wezIuo{xcflrK=y#jPmsGn_JZhYH1~Z$av!KW15yXlw;p01+<g;pxNj*`
z9n5_<aJcV0L>=6HAax*nU@N9T_JZ7Z8qIxwklbg8l>UA)F))D2SXjOAAP=+t0Gas}
z%{-RLi1Z9v4FysIatA9jB)x#@5s*8c<S{V7mr+8>P*7Kbfe)$<qy~hA@<Aj5!_tc!
zGid!1c$*4X5~L31SC9Zq9f*cj9Ux%_mwX0>3H%HUmJAFGuyzTkegKteFu#HnUa4bX
bn2NOa0AvnG9Mr}^R>w1$fx#3>0HzKA2g|dt

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/build.make b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/build.make
new file mode 100644
index 0000000..1bf79ff
--- /dev/null
+++ b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/build.make
@@ -0,0 +1,167 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/pi/scream/scream_sender
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/pi/scream/scream_sender
+
+# Include any dependencies generated for this target.
+include code/CMakeFiles/scream_sender.dir/depend.make
+
+# Include the progress variables for this target.
+include code/CMakeFiles/scream_sender.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include code/CMakeFiles/scream_sender.dir/flags.make
+
+code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o: code/CMakeFiles/scream_sender.dir/flags.make
+code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o: code/RtpQueue.cpp
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pi/scream/scream_sender/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o"
+	cd /home/pi/scream/scream_sender/code && /usr/bin/c++   $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/scream_sender.dir/RtpQueue.cpp.o -c /home/pi/scream/scream_sender/code/RtpQueue.cpp
+
+code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.i: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/scream_sender.dir/RtpQueue.cpp.i"
+	cd /home/pi/scream/scream_sender/code && /usr/bin/c++  $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/pi/scream/scream_sender/code/RtpQueue.cpp > CMakeFiles/scream_sender.dir/RtpQueue.cpp.i
+
+code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.s: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/scream_sender.dir/RtpQueue.cpp.s"
+	cd /home/pi/scream/scream_sender/code && /usr/bin/c++  $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/pi/scream/scream_sender/code/RtpQueue.cpp -o CMakeFiles/scream_sender.dir/RtpQueue.cpp.s
+
+code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o.requires:
+
+.PHONY : code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o.requires
+
+code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o.provides: code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o.requires
+	$(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o.provides.build
+.PHONY : code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o.provides
+
+code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o.provides.build: code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o
+
+
+code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o: code/CMakeFiles/scream_sender.dir/flags.make
+code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o: code/ScreamTx.cpp
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pi/scream/scream_sender/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o"
+	cd /home/pi/scream/scream_sender/code && /usr/bin/c++   $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/scream_sender.dir/ScreamTx.cpp.o -c /home/pi/scream/scream_sender/code/ScreamTx.cpp
+
+code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.i: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/scream_sender.dir/ScreamTx.cpp.i"
+	cd /home/pi/scream/scream_sender/code && /usr/bin/c++  $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/pi/scream/scream_sender/code/ScreamTx.cpp > CMakeFiles/scream_sender.dir/ScreamTx.cpp.i
+
+code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.s: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/scream_sender.dir/ScreamTx.cpp.s"
+	cd /home/pi/scream/scream_sender/code && /usr/bin/c++  $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/pi/scream/scream_sender/code/ScreamTx.cpp -o CMakeFiles/scream_sender.dir/ScreamTx.cpp.s
+
+code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o.requires:
+
+.PHONY : code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o.requires
+
+code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o.provides: code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o.requires
+	$(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o.provides.build
+.PHONY : code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o.provides
+
+code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o.provides.build: code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o
+
+
+code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o: code/CMakeFiles/scream_sender.dir/flags.make
+code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o: code/scream_sender.cpp
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/pi/scream/scream_sender/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o"
+	cd /home/pi/scream/scream_sender/code && /usr/bin/c++   $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/scream_sender.dir/scream_sender.cpp.o -c /home/pi/scream/scream_sender/code/scream_sender.cpp
+
+code/CMakeFiles/scream_sender.dir/scream_sender.cpp.i: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/scream_sender.dir/scream_sender.cpp.i"
+	cd /home/pi/scream/scream_sender/code && /usr/bin/c++  $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/pi/scream/scream_sender/code/scream_sender.cpp > CMakeFiles/scream_sender.dir/scream_sender.cpp.i
+
+code/CMakeFiles/scream_sender.dir/scream_sender.cpp.s: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/scream_sender.dir/scream_sender.cpp.s"
+	cd /home/pi/scream/scream_sender/code && /usr/bin/c++  $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/pi/scream/scream_sender/code/scream_sender.cpp -o CMakeFiles/scream_sender.dir/scream_sender.cpp.s
+
+code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o.requires:
+
+.PHONY : code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o.requires
+
+code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o.provides: code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o.requires
+	$(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o.provides.build
+.PHONY : code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o.provides
+
+code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o.provides.build: code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o
+
+
+# Object files for target scream_sender
+scream_sender_OBJECTS = \
+"CMakeFiles/scream_sender.dir/RtpQueue.cpp.o" \
+"CMakeFiles/scream_sender.dir/ScreamTx.cpp.o" \
+"CMakeFiles/scream_sender.dir/scream_sender.cpp.o"
+
+# External object files for target scream_sender
+scream_sender_EXTERNAL_OBJECTS =
+
+bin/scream_sender: code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o
+bin/scream_sender: code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o
+bin/scream_sender: code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o
+bin/scream_sender: code/CMakeFiles/scream_sender.dir/build.make
+bin/scream_sender: code/CMakeFiles/scream_sender.dir/link.txt
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/pi/scream/scream_sender/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Linking CXX executable ../bin/scream_sender"
+	cd /home/pi/scream/scream_sender/code && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/scream_sender.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+code/CMakeFiles/scream_sender.dir/build: bin/scream_sender
+
+.PHONY : code/CMakeFiles/scream_sender.dir/build
+
+code/CMakeFiles/scream_sender.dir/requires: code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o.requires
+code/CMakeFiles/scream_sender.dir/requires: code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o.requires
+code/CMakeFiles/scream_sender.dir/requires: code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o.requires
+
+.PHONY : code/CMakeFiles/scream_sender.dir/requires
+
+code/CMakeFiles/scream_sender.dir/clean:
+	cd /home/pi/scream/scream_sender/code && $(CMAKE_COMMAND) -P CMakeFiles/scream_sender.dir/cmake_clean.cmake
+.PHONY : code/CMakeFiles/scream_sender.dir/clean
+
+code/CMakeFiles/scream_sender.dir/depend:
+	cd /home/pi/scream/scream_sender && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/pi/scream/scream_sender /home/pi/scream/scream_sender/code /home/pi/scream/scream_sender /home/pi/scream/scream_sender/code /home/pi/scream/scream_sender/code/CMakeFiles/scream_sender.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : code/CMakeFiles/scream_sender.dir/depend
+
diff --git a/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/cmake_clean.cmake b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/cmake_clean.cmake
new file mode 100644
index 0000000..045d102
--- /dev/null
+++ b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/cmake_clean.cmake
@@ -0,0 +1,12 @@
+file(REMOVE_RECURSE
+  "CMakeFiles/scream_sender.dir/RtpQueue.cpp.o"
+  "CMakeFiles/scream_sender.dir/ScreamTx.cpp.o"
+  "CMakeFiles/scream_sender.dir/scream_sender.cpp.o"
+  "../bin/scream_sender.pdb"
+  "../bin/scream_sender"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+  include(CMakeFiles/scream_sender.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/depend.internal b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/depend.internal
new file mode 100644
index 0000000..34cc2de
--- /dev/null
+++ b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/depend.internal
@@ -0,0 +1,13 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o
+ /home/pi/scream/scream_sender/code/RtpQueue.cpp
+ /home/pi/scream/scream_sender/code/RtpQueue.h
+code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o
+ /home/pi/scream/scream_sender/code/RtpQueue.h
+ /home/pi/scream/scream_sender/code/ScreamRx.h
+ /home/pi/scream/scream_sender/code/ScreamTx.cpp
+ /home/pi/scream/scream_sender/code/ScreamTx.h
+code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o
+ /home/pi/scream/scream_sender/code/scream_sender.cpp
diff --git a/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/depend.make b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/depend.make
new file mode 100644
index 0000000..6ebc7b0
--- /dev/null
+++ b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/depend.make
@@ -0,0 +1,13 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o: code/RtpQueue.cpp
+code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o: code/RtpQueue.h
+
+code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o: code/RtpQueue.h
+code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o: code/ScreamRx.h
+code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o: code/ScreamTx.cpp
+code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o: code/ScreamTx.h
+
+code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o: code/scream_sender.cpp
+
diff --git a/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/flags.make b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/flags.make
new file mode 100644
index 0000000..c981ec6
--- /dev/null
+++ b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -fPIC -fpermissive -pthread   -std=c++0x
+
+CXX_DEFINES = 
+
+CXX_INCLUDES = -I/home/pi/scream/scream_sender/../include -I/home/pi/scream/scream_sender -I/home/pi/scream/scream_sender/code 
+
diff --git a/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/link.txt b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/link.txt
new file mode 100644
index 0000000..8940f42
--- /dev/null
+++ b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/link.txt
@@ -0,0 +1 @@
+/usr/bin/c++   -fPIC -fpermissive -pthread   CMakeFiles/scream_sender.dir/RtpQueue.cpp.o CMakeFiles/scream_sender.dir/ScreamTx.cpp.o CMakeFiles/scream_sender.dir/scream_sender.cpp.o  -o ../bin/scream_sender  -L/home/pi/scream/scream_sender/../lib  -L/usr/local/lib -rdynamic 
diff --git a/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/progress.make b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/progress.make
new file mode 100644
index 0000000..a69a57e
--- /dev/null
+++ b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/progress.make
@@ -0,0 +1,5 @@
+CMAKE_PROGRESS_1 = 1
+CMAKE_PROGRESS_2 = 2
+CMAKE_PROGRESS_3 = 3
+CMAKE_PROGRESS_4 = 4
+
diff --git a/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o b/RPI/scream/scream_sender/code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o
new file mode 100644
index 0000000000000000000000000000000000000000..34426e56f872faf61374de4738f53aa2c4ebc01f
GIT binary patch
literal 28328
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

literal 0
HcmV?d00001

diff --git a/RPI/scream/scream_sender/code/CMakeLists.txt b/RPI/scream/scream_sender/code/CMakeLists.txt
new file mode 100644
index 0000000..a3a4646
--- /dev/null
+++ b/RPI/scream/scream_sender/code/CMakeLists.txt
@@ -0,0 +1,33 @@
+# source files
+SET(SRCS
+RtpQueue.cpp
+ScreamTx.cpp
+scream_sender.cpp
+)
+
+SET(HEADERS
+RtpQueue.h
+ScreamRx.h
+ScreamTx.h
+)
+
+SET(SRC_1
+${SRCS}
+scream_sender.cpp
+)
+
+INCLUDE_DIRECTORIES(
+${screamIncludes}
+)
+
+LINK_DIRECTORIES(
+${screamLink}
+)
+
+ADD_EXECUTABLE(scream_sender ${SRC_1} ${HEADERS})
+
+
+TARGET_LINK_LIBRARIES (
+scream_sender
+${screamLibs}
+)
diff --git a/RPI/scream/scream_sender/code/Makefile b/RPI/scream/scream_sender/code/Makefile
new file mode 100644
index 0000000..8d64f4d
--- /dev/null
+++ b/RPI/scream/scream_sender/code/Makefile
@@ -0,0 +1,240 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.7
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/pi/scream/scream_sender
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/pi/scream/scream_sender
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+	/usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+
+.PHONY : rebuild_cache/fast
+
+# Special rule for the target edit_cache
+edit_cache:
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+	/usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+
+.PHONY : edit_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+	cd /home/pi/scream/scream_sender && $(CMAKE_COMMAND) -E cmake_progress_start /home/pi/scream/scream_sender/CMakeFiles /home/pi/scream/scream_sender/code/CMakeFiles/progress.marks
+	cd /home/pi/scream/scream_sender && $(MAKE) -f CMakeFiles/Makefile2 code/all
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/pi/scream/scream_sender/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+	cd /home/pi/scream/scream_sender && $(MAKE) -f CMakeFiles/Makefile2 code/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+	cd /home/pi/scream/scream_sender && $(MAKE) -f CMakeFiles/Makefile2 code/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+	cd /home/pi/scream/scream_sender && $(MAKE) -f CMakeFiles/Makefile2 code/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+	cd /home/pi/scream/scream_sender && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+code/CMakeFiles/scream_sender.dir/rule:
+	cd /home/pi/scream/scream_sender && $(MAKE) -f CMakeFiles/Makefile2 code/CMakeFiles/scream_sender.dir/rule
+.PHONY : code/CMakeFiles/scream_sender.dir/rule
+
+# Convenience name for target.
+scream_sender: code/CMakeFiles/scream_sender.dir/rule
+
+.PHONY : scream_sender
+
+# fast build rule for target.
+scream_sender/fast:
+	cd /home/pi/scream/scream_sender && $(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/build
+.PHONY : scream_sender/fast
+
+RtpQueue.o: RtpQueue.cpp.o
+
+.PHONY : RtpQueue.o
+
+# target to build an object file
+RtpQueue.cpp.o:
+	cd /home/pi/scream/scream_sender && $(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.o
+.PHONY : RtpQueue.cpp.o
+
+RtpQueue.i: RtpQueue.cpp.i
+
+.PHONY : RtpQueue.i
+
+# target to preprocess a source file
+RtpQueue.cpp.i:
+	cd /home/pi/scream/scream_sender && $(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.i
+.PHONY : RtpQueue.cpp.i
+
+RtpQueue.s: RtpQueue.cpp.s
+
+.PHONY : RtpQueue.s
+
+# target to generate assembly for a file
+RtpQueue.cpp.s:
+	cd /home/pi/scream/scream_sender && $(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/RtpQueue.cpp.s
+.PHONY : RtpQueue.cpp.s
+
+ScreamTx.o: ScreamTx.cpp.o
+
+.PHONY : ScreamTx.o
+
+# target to build an object file
+ScreamTx.cpp.o:
+	cd /home/pi/scream/scream_sender && $(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.o
+.PHONY : ScreamTx.cpp.o
+
+ScreamTx.i: ScreamTx.cpp.i
+
+.PHONY : ScreamTx.i
+
+# target to preprocess a source file
+ScreamTx.cpp.i:
+	cd /home/pi/scream/scream_sender && $(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.i
+.PHONY : ScreamTx.cpp.i
+
+ScreamTx.s: ScreamTx.cpp.s
+
+.PHONY : ScreamTx.s
+
+# target to generate assembly for a file
+ScreamTx.cpp.s:
+	cd /home/pi/scream/scream_sender && $(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/ScreamTx.cpp.s
+.PHONY : ScreamTx.cpp.s
+
+scream_sender.o: scream_sender.cpp.o
+
+.PHONY : scream_sender.o
+
+# target to build an object file
+scream_sender.cpp.o:
+	cd /home/pi/scream/scream_sender && $(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/scream_sender.cpp.o
+.PHONY : scream_sender.cpp.o
+
+scream_sender.i: scream_sender.cpp.i
+
+.PHONY : scream_sender.i
+
+# target to preprocess a source file
+scream_sender.cpp.i:
+	cd /home/pi/scream/scream_sender && $(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/scream_sender.cpp.i
+.PHONY : scream_sender.cpp.i
+
+scream_sender.s: scream_sender.cpp.s
+
+.PHONY : scream_sender.s
+
+# target to generate assembly for a file
+scream_sender.cpp.s:
+	cd /home/pi/scream/scream_sender && $(MAKE) -f code/CMakeFiles/scream_sender.dir/build.make code/CMakeFiles/scream_sender.dir/scream_sender.cpp.s
+.PHONY : scream_sender.cpp.s
+
+# Help Target
+help:
+	@echo "The following are some of the valid targets for this Makefile:"
+	@echo "... all (the default if no target is provided)"
+	@echo "... clean"
+	@echo "... depend"
+	@echo "... rebuild_cache"
+	@echo "... edit_cache"
+	@echo "... scream_sender"
+	@echo "... RtpQueue.o"
+	@echo "... RtpQueue.i"
+	@echo "... RtpQueue.s"
+	@echo "... ScreamTx.o"
+	@echo "... ScreamTx.i"
+	@echo "... ScreamTx.s"
+	@echo "... scream_sender.o"
+	@echo "... scream_sender.i"
+	@echo "... scream_sender.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+	cd /home/pi/scream/scream_sender && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/RPI/scream/scream_sender/code/RtpQueue.cpp b/RPI/scream/scream_sender/code/RtpQueue.cpp
new file mode 100644
index 0000000..47c1fb4
--- /dev/null
+++ b/RPI/scream/scream_sender/code/RtpQueue.cpp
@@ -0,0 +1,121 @@
+#include "RtpQueue.h"
+#include <iostream>
+#include <string.h>
+using namespace std;
+/*
+* Implements a simple RTP packet queue
+*/
+
+RtpQueueItem::RtpQueueItem() {
+    used = false;
+    size = 0;
+    seqNr = 0;
+}
+
+
+RtpQueue::RtpQueue() {
+    for (int n=0; n < kRtpQueueSize; n++) {
+        items[n] = new RtpQueueItem();
+    }
+    head = -1;
+    tail = 0;
+    nItems = 0;
+    sizeOfLastFrame = 0;
+    bytesInQueue_ = 0;
+    sizeOfQueue_ = 0;
+    sizeOfNextRtp_ = -1;
+}
+
+void RtpQueue::push(void *rtpPacket, int size, unsigned short seqNr, float ts) {
+    int ix = head+1;
+    if (ix == kRtpQueueSize) ix = 0;
+    if (items[ix]->used) {
+      /*
+      * RTP queue is full, do a drop tail i.e ignore new RTP packets
+      */
+      return;
+    }
+    head = ix;
+
+    memcpy(items[head]->packet, rtpPacket, size);
+    items[head]->seqNr = seqNr;
+    items[head]->size = size;
+    items[head]->ts = ts;
+    items[head]->used = true;
+    bytesInQueue_ += size;
+    sizeOfQueue_ += 1;
+    computeSizeOfNextRtp();
+}
+
+bool RtpQueue::pop(void *rtpPacket, int& size, unsigned short& seqNr) {
+    if (items[tail]->used == false) {
+        return false;
+        sizeOfNextRtp_ = -1;
+    } else {
+        size = items[tail]->size;
+        memcpy(rtpPacket,items[tail]->packet,size);
+        seqNr = items[tail]->seqNr;
+        items[tail]->used = false;
+        tail++; if (tail == kRtpQueueSize) tail = 0;
+        bytesInQueue_ -= size;
+        sizeOfQueue_ -= 1;
+        computeSizeOfNextRtp();
+        return true;
+    }
+}
+
+void RtpQueue::computeSizeOfNextRtp() {
+    if (!items[tail]->used) {
+        sizeOfNextRtp_ = - 1;
+    } else {
+        sizeOfNextRtp_ = items[tail]->size;
+    }
+}
+
+int RtpQueue::sizeOfNextRtp() {
+    return sizeOfNextRtp_;
+}
+
+int RtpQueue::seqNrOfNextRtp() {
+    if (!items[tail]->used) {
+        return -1;
+    } else {
+        return items[tail]->seqNr;
+    }
+}
+
+int RtpQueue::bytesInQueue() {
+    return bytesInQueue_;
+}
+
+int RtpQueue::sizeOfQueue() {
+    return sizeOfQueue_;
+}
+
+float RtpQueue::getDelay(float currTs) {
+    if (items[tail]->used == false) {
+        return 0;
+    } else {
+        return currTs-items[tail]->ts;
+    }
+}
+
+bool RtpQueue::sendPacket(void *rtpPacket, int& size, unsigned short& seqNr) {
+    if (sizeOfQueue() > 0) {
+        pop(rtpPacket, size, seqNr);
+        return true;
+    }
+    return false;
+}
+
+void RtpQueue::clear() {
+    for (int n=0; n < kRtpQueueSize; n++) {
+        items[n]->used = false;
+    }
+    head = -1;
+    tail = 0;
+    nItems = 0;
+    bytesInQueue_ = 0;
+    sizeOfQueue_ = 0;
+    sizeOfNextRtp_ = -1;
+}
diff --git a/RPI/scream/scream_sender/code/RtpQueue.h b/RPI/scream/scream_sender/code/RtpQueue.h
new file mode 100644
index 0000000..82c6ac8
--- /dev/null
+++ b/RPI/scream/scream_sender/code/RtpQueue.h
@@ -0,0 +1,59 @@
+#ifndef RTP_QUEUE
+#define RTP_QUEUE
+
+/*
+* Implements a simple RTP packet queue, one RTP queue
+* per stream {SSRC,PT}
+*/
+
+class RtpQueueIface {
+public:
+    virtual void clear() = 0;
+    virtual int sizeOfNextRtp() = 0;
+    virtual int seqNrOfNextRtp() = 0;
+    virtual int bytesInQueue() = 0; // Number of bytes in queue
+    virtual int sizeOfQueue() = 0;  // Number of items in queue
+    virtual float getDelay(float currTs) = 0;
+    virtual int getSizeOfLastFrame() = 0;
+};
+
+class RtpQueueItem {
+public:
+    RtpQueueItem();
+    char packet[2000];
+    int size;
+    unsigned short seqNr;
+    float ts;
+    bool used;
+};
+
+const int kRtpQueueSize = 1024;
+class RtpQueue : public RtpQueueIface {
+public:
+    RtpQueue();
+
+    void push(void *rtpPacket, int size, unsigned short seqNr, float ts);
+    bool pop(void *rtpPacket, int &size, unsigned short &seqNr);
+    int sizeOfNextRtp();
+    int seqNrOfNextRtp();
+    int bytesInQueue(); // Number of bytes in queue
+    int sizeOfQueue();  // Number of items in queue
+    float getDelay(float currTs);
+    bool sendPacket(void *rtpPacket, int &size, unsigned short &seqNr);
+    void clear();
+    int getSizeOfLastFrame() {return sizeOfLastFrame;};
+    void setSizeOfLastFrame(int sz) {sizeOfLastFrame=sz;};
+    void computeSizeOfNextRtp();
+
+    RtpQueueItem *items[kRtpQueueSize];
+    int head; // Pointer to last inserted item
+    int tail; // Pointer to the oldest item
+    int nItems;
+    int sizeOfLastFrame;
+
+    int bytesInQueue_;
+    int sizeOfQueue_;
+    int sizeOfNextRtp_;
+};
+
+#endif
diff --git a/RPI/scream/scream_sender/code/ScreamRx.h b/RPI/scream/scream_sender/code/ScreamRx.h
new file mode 100644
index 0000000..f1d9e83
--- /dev/null
+++ b/RPI/scream/scream_sender/code/ScreamRx.h
@@ -0,0 +1,146 @@
+#ifndef SCREAM_RX
+#define SCREAM_RX
+#include <cstdint>
+#include <list>
+const int kAckVectorBits = 64;
+
+/*
+* This module implements the receiver side of SCReAM.
+* As SCReAM is a sender based congestion control, the receiver side is
+*  actually dumber than dumb. In essense the only thing that it does is to
+*  + Record receive time stamps and RTP sequence numbers for incoming RTP packets
+*  + Generate RTCP feedback elements
+*  + Calculate an appropriate RTCP feedback interval
+* See https://github.com/EricssonResearch/scream/blob/master/SCReAM-description.pdf
+*  for details on how it is integrated in audio/video platforms.
+* A full implementation needs the additional code for
+*  + RTCP feedback (e.g using RFC3611 XR elements)
+*  + Other obvious stuff such as RTP payload depacketizer, video+audio deoders, rendering, dejitterbuffers
+* It is recommended that RTCP feedback for multiple streams are bundled in one RTCP packet.
+*  However as low bitrate media (e.g audio) requires a lower feedback rate than high bitrate media (e.g video)
+*  it is possible to include RTCP feedback for the audio stream more seldom. The code for this is T.B.D
+*/
+class ScreamRx {
+public:
+    ScreamRx(uint32_t ssrc); // SSRC of this RTCP session
+    /*
+    * One instance is created for each source SSRC
+    */
+    class Stream {
+    public:
+        Stream(uint32_t ssrc);
+
+        bool isMatch(uint32_t ssrc_) { return ssrc == ssrc_; };
+
+        bool checkIfFlushAck();
+        /*
+        * Receive RTP packet
+        */
+        void receive(uint64_t time_us,
+            void *rtpPacket,
+            int size,
+            uint16_t seqNr,
+            bool isEcnCe);
+
+        uint32_t ssrc;                // SSRC of stream (source SSRC)
+        uint16_t highestSeqNr;        // Highest received sequence number
+        uint16_t highestSeqNrTx;      // Highest fed back sequence number
+        uint32_t receiveTimestamp;    // Wall clock time
+        uint64_t ackVector;           // List of received packets
+        uint16_t ecnCeMarkedBytes;    // Number of ECN-CE marked bytes
+                                      //  (i.e size of RTP packets with CE set in IP header)
+
+        uint64_t lastFeedbackT_us;    // Last time feedback transmitted for
+                                      //  this SSRC
+        int nRtpSinceLastRtcp;        // Number of RTP packets since last transmitted RTCP
+
+        bool firstReceived;
+
+        float timeStampConversionFactor;
+
+        int ix;
+    };
+
+    /*
+    * Check to ensure that ACK vector can cover also large holes in
+    *  in the received sequence number space. These cases can frequently occur when
+    *  SCReAM is used in frame discard mode i.e. when real video rate control is
+    *  not possible 
+    */
+    bool checkIfFlushAck();
+
+    /*
+    * Function is called each time an RTP packet is received
+    */
+    void receive(uint64_t time_us,
+        void* rtpPacket,
+        uint32_t ssrc,
+        int size,
+        uint16_t seqNr,
+        bool isEcnCe = false);
+
+    /*
+    * Return TRUE if an RTP packet has been received and there is
+    * pending feedback
+    */
+    bool isFeedback(uint64_t time_us);
+
+    uint64_t getRtcpFbInterval();
+
+    /*
+    * Get SCReAM RTCP feedback elements
+    * return FALSE if no pending feedback available
+    */
+    bool getFeedback(uint64_t time_us,
+        uint32_t &ssrc,
+        uint32_t &receiveTimestamp,
+        uint16_t &highestSeqNr,
+        uint64_t &ackVector,
+        uint16_t &ecnCeMarkedBytes);
+
+    /*
+    * Create feedback according to the format below. It is up to the
+    * wrapper application to prepend this RTCP with SR or RR when needed
+    * BT = 255, means that this is experimental use
+    *
+    * 0                   1                   2                   3
+    * 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |V=2|P|reserved |   PT=XR=207   |           length=6            |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                              SSRC                             |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |     BT=255    |    reserved   |         block length=4        |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                        SSRC of source                         |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * | Highest recv. seq. nr. (16b)  |         ECN_CE_bytes          |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                     Ack vector (b0-31)                        |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                     Ack vector (b32-63)                       |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                    Timestamp (32bits)                         |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    */
+    bool createFeedback(uint64_t time_us, unsigned char *buf, int &size);
+
+    uint64_t getLastFeedbackT() { return lastFeedbackT_us; };
+
+    uint64_t lastFeedbackT_us;
+    int bytesReceived;
+    uint64_t lastRateComputeT_us;
+    float averageReceivedRate;
+    uint64_t rtcpFbInterval_us;
+    uint32_t ssrc;
+
+    int getIx(uint32_t ssrc);
+    int ix;
+
+    /*
+    * Variables for multiple steams handling
+    */
+    std::list<Stream*> streams;
+};
+
+#endif
diff --git a/RPI/scream/scream_sender/code/ScreamTx.cpp b/RPI/scream/scream_sender/code/ScreamTx.cpp
new file mode 100644
index 0000000..d638130
--- /dev/null
+++ b/RPI/scream/scream_sender/code/ScreamTx.cpp
@@ -0,0 +1,1912 @@
+#include "RtpQueue.h"
+#include "ScreamTx.h"
+#include "ScreamRx.h"
+#ifdef _MSC_VER
+#define NOMINMAX
+#include <winSock2.h>
+#else
+#include <arpa/inet.h>
+#endif
+#include <cstdint>
+#include <cmath>
+#include <string.h>
+#include <iostream>
+#include <algorithm>
+#include <stdio.h>
+#include <stdlib.h>
+#include <math.h>
+
+// === Some good to have features, SCReAM works also
+//     with these disabled
+// Fast start can resume if little or no congestion detected
+static const bool kEnableConsecutiveFastStart = true;
+// Packet pacing reduces jitter
+static const bool kEnablePacketPacing = true;
+static const float kPacketPacingHeadRoom = 1.5f;
+
+// Rate update interval
+static const uint64_t kRateAdjustInterval_us = 200000; // 200ms
+
+// ==== Less important tuning parameters ====
+// Min pacing interval and min pacing rate
+static const float kMinPaceInterval = 0.000f;
+static const float kMinimumBandwidth = 5000.0f; // bps
+// Initial MSS, this is set quite low in order to make it possible to
+//  use SCReAM with audio only
+static const int kInitMss = 100;
+
+// Min and max queue delay target
+static const float kQueueDelayTargetMax = 0.3f; //ms
+
+// Congestion window validation
+static const float kBytesInFlightHistInterval_us = 1000000; // Time (s) between stores 1s
+static const float kMaxBytesInFlightHeadRoom = 1.1f;
+// Queue delay trend and shared bottleneck detection
+static const uint64_t kQueueDelayFractionHistInterval_us = 50000; // 50ms
+// video rate estimation update period
+static const uint64_t kRateUpdateInterval_us = 50000;  // 50ms
+
+// Packet reordering margin (us)
+static const uint64_t kReorderTime_us = 20000;
+static const uint64_t kMinRtpQueueDiscardInterval_us = 1000000;
+
+// Update interval for base delay history
+static const uint64_t kBaseDelayUpdateInterval_us = 10000000;
+
+// L4S alpha gain factor, for scalable congestion control
+static const float kL4sG = 0.125f;
+
+// Min CWND in MSS
+static int kMinCwndMss = 3;
+
+ScreamTx::ScreamTx(float lossBeta_,
+    float ecnCeBeta_,
+    float queueDelayTargetMin_,
+    bool enableSbd_,
+    float gainUp_,
+    float gainDown_,
+    int cwnd_,
+    float cautiousPacing_,
+    int bytesInFlightHistSize_,
+    bool isL4s_,
+    bool openWindow_
+    ) :
+    sRttSh_us(0),
+    lossBeta(lossBeta_),
+    ecnCeBeta(ecnCeBeta_),
+    queueDelayTargetMin(queueDelayTargetMin_),
+    enableSbd(enableSbd_),
+    gainUp(gainUp_),
+    gainDown(gainDown_),
+    cautiousPacing(cautiousPacing_),
+    bytesInFlightHistSize(bytesInFlightHistSize_),
+    openWindow(openWindow_),
+    isL4s(isL4s_),
+    sRtt_us(0),
+    sRtt(0.0f),
+    ackedOwd(0),
+    baseOwd(UINT32_MAX),
+    queueDelay(0.0),
+    queueDelayFractionAvg(0.0),
+    queueDelayTrend(0.0),
+    queueDelayTarget(queueDelayTargetMin),
+    queueDelaySbdVar(0.0),
+    queueDelaySbdMean(0.0),
+    queueDelaySbdMeanSh(0.0),
+
+    bytesNewlyAcked(0),
+    mss(kInitMss),
+    cwnd(kInitMss * 2),
+    cwndMin(kInitMss * 2),
+    lastBytesInFlightT_us(0),
+    bytesInFlightMaxLo(0),
+    bytesInFlightMaxHi(0),
+    bytesInFlightHistLoMem(0),
+    bytesInFlightHistHiMem(0),
+    maxBytesInFlight(0.0f),
+
+    lossEvent(false),
+    wasLossEvent(false),
+    lossEventRate(0.0),
+    ecnCeEvent(false),
+    l4sAlpha(0.1f),
+    bytesMarkedThisRtt(0),
+    bytesDeliveredThisRtt(0),
+    lastL4sAlphaUpdateT_us(0),
+    inFastStart(true),
+
+    paceInterval_us(0),
+    paceInterval(0.0),
+    rateTransmittedAvg(0.0),
+
+    isInitialized(false),
+    lastSRttUpdateT_us(0),
+    lastBaseOwdAddT_us(0),
+    baseOwdResetT_us(0),
+    lastAddToQueueDelayFractionHistT_us(0),
+    lastLossEventT_us(0),
+    lastTransmitT_us(0),
+    nextTransmitT_us(0),
+    lastRateUpdateT_us(0),
+    accBytesInFlightMax(0),
+    nAccBytesInFlightMax(0),
+    rateTransmitted(0.0f),
+    rateAcked(0.0f),
+    queueDelayTrendMem(0.0f),
+    lastCwndUpdateT_us(0),
+    bytesInFlight(0),
+    bytesInFlightLog(0),
+    lastBaseDelayRefreshT_us(0),
+    maxRate(0.0f),
+    baseOwdHistMin(UINT32_MAX)
+{
+    if (cwnd_ == 0) {
+        cwnd = kInitMss * 2;
+    }
+    else {
+        cwnd = cwnd_;
+    }
+    if (openWindow) {
+        cwndMin = 10000000;
+        cwnd = cwndMin;
+    }
+
+    for (int n = 0; n < kBaseOwdHistSize; n++)
+        baseOwdHist[n] = UINT32_MAX;
+    baseOwdHistPtr = 0;
+    for (int n = 0; n < kQueueDelayFractionHistSize; n++)
+        queueDelayFractionHist[n] = 0.0f;
+    queueDelayFractionHistPtr = 0;
+    for (int n = 0; n < kQueueDelayNormHistSize; n++)
+        queueDelayNormHist[n] = 0.0f;
+    queueDelayNormHistPtr = 0;
+    for (int n = 0; n < kBytesInFlightHistSizeMax; n++) {
+        bytesInFlightHistLo[n] = 0;
+        bytesInFlightHistHi[n] = 0;
+    }
+    bytesInFlightHistPtr = 0;
+    nStreams = 0;
+    for (int n = 0; n < kMaxStreams; n++)
+        streams[n] = NULL;
+
+    queueDelayMax = 0.0f;
+    queueDelayMinAvg = 0.0f;
+    queueDelayMin = 1000.0;
+
+    statistics = new Statistics();
+}
+
+ScreamTx::~ScreamTx() {
+    for (int n = 0; n < nStreams; n++)
+        delete streams[n];
+    delete statistics;
+}
+
+ScreamTx::Statistics::Statistics() {
+    sumRateTx = 0.0f;
+    sumRateLost = 0.0f;
+    avgRateTx = 0.0f;
+    avgRtt = 0.0f;
+    avgQueueDelay = 0.0f;
+    rateLostAcc = 0.0f;
+    rateLostN = 0;
+    for (int n = 0; n < kLossRateHistSize; n++) {
+        lossRateHist[n] = 0.0f;
+    }
+    lossRateHistPtr = 0;
+}
+
+void ScreamTx::Statistics::add(float rateTx, float rateLost, float rtt, float queueDelay) {
+    const float alpha = 0.98f;
+    sumRateTx += rateTx;
+    sumRateLost += rateLost;
+    if (avgRateTx == 0.0f) {
+        avgRateTx = rateTx;
+        avgRtt = rtt;
+        avgQueueDelay = queueDelay;
+    }
+    else {
+        avgRateTx = alpha*avgRateTx + (1.0f - alpha)*rateTx;
+        rateLostAcc += rateLost;
+        rateLostN++;
+        if (rateLostN == 10) {
+            rateLostAcc /= 10;
+            rateLostN = 0;
+            float lossRate = 0.0f;
+            if (rateTx > 0)
+                lossRate = rateLostAcc / rateTx*100.0f;
+            lossRateHist[lossRateHistPtr] = lossRate;
+            lossRateHistPtr = (lossRateHistPtr + 1) % kLossRateHistSize;
+        }
+        avgRtt = alpha*avgRtt + (1.0f - alpha)*rtt;
+        avgQueueDelay = alpha*avgQueueDelay + (1.0f - alpha)*queueDelay;
+    }
+}
+
+void ScreamTx::Statistics::getSummary(float time, char s[]) {
+    float lossRate = 0.0f;
+    for (int n = 0; n < kLossRateHistSize; n++)
+        lossRate += lossRateHist[n];
+    lossRate /= kLossRateHistSize;
+    float lossRateLong = 0.0f;
+    if (sumRateTx > 100000.0f) {
+        lossRateLong = sumRateLost / sumRateTx*100.0f;
+    }
+    sprintf(s, "%5.1f  Transmit rate = %5.0fkbps, PLR = %5.2f%%(%5.2f%%), RTT = %5.3fs, Queue delay = %5.3fs",
+        time,
+        avgRateTx / 1000.0f,
+        lossRate,
+        lossRateLong,
+        avgRtt,
+        avgQueueDelay);
+}
+
+/*
+* Register new stream
+*/
+void ScreamTx::registerNewStream(RtpQueueIface *rtpQueue,
+    uint32_t ssrc,
+    float priority,
+    float minBitrate,
+    float startBitrate,
+    float maxBitrate,
+    float rampUpSpeed,
+    float maxRtpQueueDelay,
+    float txQueueSizeFactor,
+    float queueDelayGuard,
+    float lossEventRateScale,
+    float ecnCeEventRateScale) {
+    Stream *stream = new Stream(this,
+        rtpQueue,
+        ssrc,
+        priority,
+        minBitrate,
+        startBitrate,
+        maxBitrate,
+        rampUpSpeed,
+        maxRtpQueueDelay,
+        txQueueSizeFactor,
+        queueDelayGuard,
+        lossEventRateScale,
+        ecnCeEventRateScale);
+    streams[nStreams++] = stream;
+}
+
+void ScreamTx::updateBitrateStream(uint32_t ssrc,
+    float minBitrate,
+    float maxBitrate) {
+    Stream *stream = getStream(ssrc);
+    stream->minBitrate = minBitrate;
+    stream->maxBitrate = maxBitrate;
+}
+
+RtpQueueIface * ScreamTx::getStreamQueue(uint32_t ssrc) {
+    Stream* stream = getStream(ssrc);
+    return stream->rtpQueue;
+}
+
+
+/*
+* New media frame
+*/
+void ScreamTx::newMediaFrame(uint64_t time_us, uint32_t ssrc, int bytesRtp) {
+    if (!isInitialized) initialize(time_us);
+
+    Stream *stream = getStream(ssrc);
+    stream->updateTargetBitrate(time_us);
+    if (time_us - lastCwndUpdateT_us < 500000) {
+        /*
+        * We expect feedback at least every 500ms
+        * to update the target rate.
+        */
+        stream->updateTargetBitrate(time_us);
+    }
+    if (time_us - lastBaseDelayRefreshT_us < sRtt_us * 2) {
+        /*
+        * _Very_ long periods of congestion can cause the base delay to increase
+        * with the effect that the queue delay is estimated wrong, therefore we seek to
+        * refresh the whole thing by deliberately allowing the network queue to drain
+        * Clear the RTP queue for 2 RTTs, this will allow the queue to drain so that we
+        * get a good estimate for the min queue delay.
+        * This funtion is executed very seldom so it should not affect overall experience too much
+        */
+        stream->rtpQueue->clear();
+    }
+    else {
+        stream->bytesRtp += bytesRtp;
+        /*
+        * Need to update MSS here, otherwise it will be nearly impossible to
+        * transmit video packets, this because of the small initial MSS
+        * which is necessary to make SCReAM work with audio only
+        */
+        int sizeOfNextRtp = stream->rtpQueue->sizeOfNextRtp();
+        mss = std::max(mss, sizeOfNextRtp);
+        if (!openWindow)
+            cwndMin = 2 * mss;
+        cwnd = max(cwnd, cwndMin);
+    }
+}
+
+/*
+* Determine if OK to transmit RTP packet
+*/
+float ScreamTx::isOkToTransmit(uint64_t time_us, uint32_t &ssrc) {
+    if (!isInitialized) initialize(time_us);
+    /*
+    * Update rateTransmitted and rateAcked if time for it
+    * This is used in video rate computation
+    * The update interval is doubled at very low bitrates,
+    * the reason is that the feedback interval is very low then and
+    * a longer window is needed to avoid aliasing effects
+    */
+    uint64_t tmp = kRateUpdateInterval_us;
+
+    if (rateAcked < 50000.0f) {
+        tmp *= 2;
+    }
+
+    if (time_us - lastRateUpdateT_us > tmp) {
+        rateTransmitted = 0.0;
+        rateAcked = 0.0;
+        for (int n = 0; n < nStreams; n++) {
+            streams[n]->updateRate(time_us);
+            rateTransmitted += streams[n]->rateTransmitted;
+            rateTransmittedAvg = 0.9*rateTransmittedAvg + 0.1*rateTransmitted;
+            rateAcked += streams[n]->rateAcked;
+            if (n == 0)
+                statistics->add(streams[0]->rateTransmitted, streams[0]->rateLost, sRtt, queueDelay);
+        }
+        lastRateUpdateT_us = time_us;
+        /*
+        * Adjust stream priorities
+        */
+        adjustPriorities(time_us);
+
+        /*
+        * Update maxRate
+        */
+        maxRate = 0.0f;
+        for (int n = 0; n < nStreams; n++)
+            maxRate += streams[n]->getMaxRate();
+    }
+
+    /*
+    * Get index to the prioritized RTP queue
+    */
+    Stream* stream = getPrioritizedStream(time_us);
+
+    if (stream == NULL)
+        /*
+        * No RTP packets to transmit
+        */
+        return -1.0f;
+    ssrc = stream->ssrc;
+
+    bytesInFlightMaxHi = std::max(bytesInFlight, bytesInFlightMaxHi);
+
+    /*
+    * Update bytes in flight history for congestion window validation
+    */
+    if (time_us - lastBytesInFlightT_us > kBytesInFlightHistInterval_us) {
+        bytesInFlightMaxLo = 0;
+        if (nAccBytesInFlightMax > 0) {
+            bytesInFlightMaxLo = accBytesInFlightMax / nAccBytesInFlightMax;
+        }
+        bytesInFlightHistLo[bytesInFlightHistPtr] = bytesInFlightMaxLo;
+        bytesInFlightHistHi[bytesInFlightHistPtr] = bytesInFlightMaxHi;
+        bytesInFlightHistPtr = (bytesInFlightHistPtr + 1) % bytesInFlightHistSize;
+        lastBytesInFlightT_us = time_us;
+        accBytesInFlightMax = 0;
+        nAccBytesInFlightMax = 0;
+        bytesInFlightMaxHi = 0;
+        bytesInFlightHistLoMem = 0;
+        bytesInFlightHistHiMem = 0;
+        for (int n = 0; n < bytesInFlightHistSize; n++) {
+            bytesInFlightHistLoMem = std::max(bytesInFlightHistLoMem, bytesInFlightHistLo[n]);
+            bytesInFlightHistHiMem = std::max(bytesInFlightHistHiMem, bytesInFlightHistHi[n]);
+        }
+
+        /*
+        * In addition, reset MSS, this is useful in case for instance
+        * a video stream is put on hold, leaving only audio packets to be
+        * transmitted
+        */
+        mss = kInitMss;
+        if (!openWindow)
+            cwndMin = kMinCwndMss * mss;
+        cwnd = max(cwnd, cwndMin);
+    }
+
+    int sizeOfNextRtp = stream->rtpQueue->sizeOfNextRtp();
+    if (sizeOfNextRtp == -1){
+        return -1.0f;
+    }
+    /*
+    * Determine if window is large enough to transmit
+    * an RTP packet
+    */
+    bool exit = false;
+    if (queueDelay < queueDelayTarget)
+        exit = (bytesInFlight + sizeOfNextRtp) > cwnd + mss;
+    else
+        exit = (bytesInFlight + sizeOfNextRtp) > cwnd;
+    /*
+    * Enforce packet pacing
+    */
+    float retVal = 0.0f;
+    if (kEnablePacketPacing && nextTransmitT_us > time_us){
+        retVal = (nextTransmitT_us - time_us) * 1e-6f;
+    }
+
+    /*
+    * A retransmission time out mechanism to avoid deadlock
+    */
+    if (time_us - lastTransmitT_us > 500000 && lastTransmitT_us < time_us) { // 200ms
+        for (int n = 0; n < kMaxTxPackets; n++) {
+            stream->txPackets[n].isUsed = false;
+        }
+        bytesInFlight = 0;
+        exit = false;
+        retVal = 0.0f;
+    }
+
+    if (!exit) {
+        /*
+        * Return value 0.0 = RTP packet can be immediately transmitted
+        */
+        return retVal;
+    }
+
+    return -1.0f;
+}
+
+/*
+* RTP packet transmitted
+*/
+float ScreamTx::addTransmitted(uint64_t time_us,
+    uint32_t ssrc,
+    int size,
+    uint16_t seqNr) {
+    if (!isInitialized)
+        initialize(time_us);
+
+    Stream *stream = getStream(ssrc);
+
+    int ix = seqNr % kMaxTxPackets;
+    Transmitted *txPacket = &(stream->txPackets[ix]);
+    if (txPacket->isUsed) {
+        /*
+        * This event should occur quite rarely.
+        * The most likely reason is that thoughput has dropped
+        * considerably.
+        * Therefore we clean the list and set cwnd and bitrate low
+        */
+        for (int n = 0; n < kMaxTxPackets; n++) {
+            stream->txPackets[n].isUsed = false;
+        }
+        bytesInFlight = 0;//-= txPacket->size;
+        cwnd = cwndMin;
+        stream->targetBitrate = stream->minBitrate;
+    }
+    stream->hiSeqTx = seqNr;
+    txPacket->timestamp = (uint32_t)(time_us / 1000);
+    txPacket->timeTx_us = time_us;
+    txPacket->size = size;
+    txPacket->seqNr = seqNr;
+    txPacket->isUsed = true;
+    txPacket->isAcked = false;
+    txPacket->isAfterReceivedEdge = false;
+
+    /*
+    * Update bytesInFlight
+    */
+    bytesInFlight += size;
+    bytesInFlightLog = std::max(bytesInFlightLog, bytesInFlight);
+
+    stream->bytesTransmitted += size;
+    lastTransmitT_us = time_us;
+    /*
+    * Add credit to unserved streams
+    */
+    addCredit(time_us, stream, size);
+    /*
+    * Reduce used credit for served stream
+    */
+    subtractCredit(time_us, stream, size);
+
+    /*
+    * Update MSS and cwndMin
+    */
+    mss = std::max(mss, size);
+    if (!openWindow)
+        cwndMin = 2 * mss;
+    cwnd = max(cwnd, cwndMin);
+
+    /*
+    * Determine when next RTP packet can be transmitted
+    */
+    if (kEnablePacketPacing)
+        nextTransmitT_us = time_us + paceInterval_us;
+    else
+        nextTransmitT_us = time_us;
+
+    return paceInterval;
+}
+
+/*
+* Parse feedback according to the format below. It is up to the
+* wrapper application this RTCP from a compound RTCP if needed
+* BT = 255, means that this is experimental use.
+* The code currently only handles one SSRC source per IP packet
+*
+* 0                   1                   2                   3
+* 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |V=2|P|reserved |   PT=XR=207   |           length=6            |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                              SSRC                             |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |     BT=255    |    reserved   |         block length=4        |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                        SSRC of source                         |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* | Highest recv. seq. nr. (16b)  |         ECN_CE_bytes          |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                     Ack vector (b0-31)                        |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                     Ack vector (b32-63)                       |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+* |                    Timestamp (32bits)                         |
+* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+*/
+void ScreamTx::incomingFeedback(uint64_t time_us,
+    unsigned char* buf,
+    int size) {
+    if (!(size == 32 && buf[0] == 0x80 && buf[1] == 207 && buf[8] == 255)) {
+        // This does not seem as a valid size, exit function
+        return;
+    }
+    uint32_t tmp_l_1;
+    uint16_t tmp_s;
+    uint32_t tmp_l_2;
+    uint32_t timeStamp;
+    uint16_t seqNr;
+    uint64_t ackVector;
+    uint16_t ecnCeMarkedBytes;
+    uint32_t ssrc;
+    uint16_t rawSeq;
+    memcpy(&tmp_l_1, buf + 12, 4);
+    ssrc = ntohl(tmp_l_1);
+    memcpy(&seqNr, buf + 16, 2);
+    seqNr = ntohs(seqNr);
+    memcpy(&ecnCeMarkedBytes, buf + 18, 2);
+    ecnCeMarkedBytes = ntohs(ecnCeMarkedBytes);
+    memcpy(&tmp_l_1, buf + 20, 4);
+    memcpy(&tmp_l_2, buf + 24, 4);
+    tmp_l_1 = ntohl(tmp_l_1);
+    tmp_l_2 = ntohl(tmp_l_2);
+    ackVector = ((uint64_t(tmp_l_1)) << 32) | tmp_l_2;
+    memcpy(&timeStamp, buf + 28, 4);
+    timeStamp = ntohl(timeStamp);
+    incomingFeedback(time_us, ssrc, timeStamp, seqNr, ackVector, ecnCeMarkedBytes);
+}
+/*
+* New incoming feedback
+*/
+void ScreamTx::incomingFeedback(uint64_t time_us,
+    uint32_t ssrc,
+    uint32_t timestamp,
+    uint16_t highestSeqNr,
+    uint64_t ackVector,
+    uint16_t ecnCeMarkedBytes) {
+
+    if (!isInitialized) initialize(time_us);
+    Stream *stream = getStream(ssrc);
+    if (stream == 0) {
+        // Bogus RTCP?, the SSRC is wrong anyway, Skip
+        return;
+    }
+
+    uint16_t diff = highestSeqNr - stream->hiSeqAck;
+    if (diff > 65000 && stream->hiSeqAck != 0 && stream->timeTxAck_us != 0) {
+        /*
+        * Out of order received ACKs are ignored
+        */
+        return;
+    }
+    accBytesInFlightMax += bytesInFlight;
+    nAccBytesInFlightMax++;
+    Transmitted *txPackets = stream->txPackets;
+    /*
+    * Mark received packets, given by the ACK vector
+    */
+    markAcked(time_us, txPackets, highestSeqNr, ackVector, timestamp, stream);
+
+    /*
+    * Detect lost pakcets
+    */
+    detectLoss(time_us, txPackets, highestSeqNr, stream);
+
+    if (ecnCeMarkedBytes != stream->ecnCeMarkedBytes && time_us - lastLossEventT_us > sRtt_us) {
+        ecnCeEvent = true;
+        lastLossEventT_us = time_us;
+    }
+
+    if (isL4s) {
+        /*
+        * L4S mode compute a congestion scaling factor that is dependent on the fraction 
+        *  of ECN marked packets
+        */
+        uint16_t marked = ecnCeMarkedBytes - stream->ecnCeMarkedBytes;
+        bytesMarkedThisRtt += marked;
+        bytesDeliveredThisRtt += bytesNewlyAcked;
+        if (lastL4sAlphaUpdateT_us - time_us > sRtt_us) {
+            lastL4sAlphaUpdateT_us = time_us;
+            if (bytesDeliveredThisRtt > 0) {
+                float F = float(bytesMarkedThisRtt) / float(bytesDeliveredThisRtt);
+                l4sAlpha = kL4sG*F + (1.0f - kL4sG)*l4sAlpha;
+                bytesDeliveredThisRtt = 0;
+                bytesMarkedThisRtt = 0;
+            }
+        }
+    }
+
+    stream->ecnCeMarkedBytes = ecnCeMarkedBytes;
+
+    if (lossEvent || ecnCeEvent) {
+        lastLossEventT_us = time_us;
+        for (int n = 0; n < nStreams; n++) {
+            Stream *tmp = streams[n];
+            if (lossEvent)
+                tmp->lossEventFlag = true;
+            else
+                tmp->ecnCeEventFlag = true;
+        }
+    }
+
+    if (lastCwndUpdateT_us == 0)
+        lastCwndUpdateT_us = time_us;
+
+    if (time_us - lastCwndUpdateT_us > 10000) {
+        /*
+        * There is no gain with a too frequent CWND update
+        * An update every 10ms is fast enough even at very high high bitrates
+        */
+        updateCwnd(time_us);
+        lastCwndUpdateT_us = time_us;
+    }
+}
+
+/*
+*  Mark ACKed RTP packets
+*/
+void ScreamTx::markAcked(uint64_t time_us, struct Transmitted *txPackets, uint16_t highestSeqNr, uint64_t ackVector, uint32_t timestamp, Stream *stream) {
+    /*
+    * Loop only through the packets that are covered by the last highest ACK, this saves complexity
+    */
+    int ix1 = highestSeqNr; ix1 = ix1 % kMaxTxPackets;
+    int ix0 = stream->hiSeqAck + 1;
+    if (ix0 < 0) ix0 += kMaxTxPackets;
+    while (ix1 < ix0)
+        ix1 += kMaxTxPackets;
+    for (int m = ix0; m <= ix1; m++) {
+        int n = m % kMaxTxPackets;
+        /*
+        * Loop through TX packets
+        */
+        if (txPackets[n].isUsed) {
+            /*
+            * RTP packet is in flight
+            */
+            Transmitted *tmp = &txPackets[n];
+
+            /*
+            * Compute SN difference
+            */
+            uint16_t diff = highestSeqNr - tmp->seqNr;
+            diff -= 1;
+
+            if (diff <= kAckVectorBits) {
+                if (ackVector & (INT64_C(1) << diff)) {
+                    /*
+                    * SN marked as received
+                    */
+                    tmp->isAcked = true;
+                }
+            }
+
+            /*
+            * Receiption of packet given by highestSeqNr
+            */
+            if (tmp->seqNr == highestSeqNr) {
+                tmp->isAcked = true;
+                ackedOwd = timestamp - tmp->timestamp;
+                /*
+                * Compute the queue delay
+                */
+                uint32_t qDel = estimateOwd(time_us);
+                qDel -= getBaseOwd();
+
+                /*
+                * Convert from [jiffy] OWD to an OWD in [s]
+                */
+                queueDelay = qDel / kTimestampRate;
+
+                uint64_t rtt = time_us - tmp->timeTx_us;
+
+                sRttSh_us = (7 * sRttSh_us + rtt) / 8;
+                if (time_us - lastSRttUpdateT_us > sRttSh_us) {
+                    sRtt_us = (7 * sRtt_us + sRttSh_us) / 8;
+                    lastSRttUpdateT_us = time_us;
+                    sRtt = sRtt_us*1e-6f;
+                }
+                stream->timeTxAck_us = tmp->timeTx_us;
+            }
+        }
+    }
+}
+
+/*
+* Detect lost RTP packets
+*/
+void ScreamTx::detectLoss(uint64_t time_us, struct Transmitted *txPackets, uint16_t highestSeqNr, Stream *stream) {
+    /*
+    * Loop only through the packets that are covered by the last highest ACK, this saves complexity
+    * There is a faint possibility that we miss to detect large bursts of lost packets with this fix
+    */
+    int ix1 = highestSeqNr; ix1 = ix1 % kMaxTxPackets;
+    int ix0 = stream->hiSeqAck + 1;
+    stream->hiSeqAck = highestSeqNr;
+    if (ix0 < 0) ix0 += kMaxTxPackets;
+    while (ix1 < ix0)
+        ix1 += kMaxTxPackets;
+
+    /*
+    * Mark packets outside the 64 bit ACK vector range as forever lost
+    */
+    if (stream->lastLossDetectIx >= 0) {
+        int ix0_ = ix0;
+        if (stream->lastLossDetectIx > ix0_) ix0_ += kMaxTxPackets;
+        for (int m = stream->lastLossDetectIx; m < ix0_; m++) {
+            int n = m % kMaxTxPackets;
+            if (txPackets[n].isUsed) {
+                Transmitted *tmp = &txPackets[n];
+                if (time_us - lastLossEventT_us > sRtt_us && lossBeta < 1.0f) {
+                    lossEvent = true;
+                }
+                stream->bytesLost += tmp->size;
+                tmp->isUsed = false;
+                stream->repairLoss = true;
+            }
+        }
+    }
+    stream->lastLossDetectIx = ix0;
+
+    /*
+    * Mark late packets as lost
+    */
+    for (int m = ix0; m <= ix1; m++) {
+        int n = m % kMaxTxPackets;
+        /*
+        * Loop through TX packets
+        */
+        if (txPackets[n].isUsed) {
+            Transmitted *tmp = &txPackets[n];
+            /*
+            * RTP packet is in flight
+            */
+            /*
+            * Wrap-around safety net
+            */
+            uint32_t seqNrExt = tmp->seqNr;
+            uint32_t highestSeqNrExt = highestSeqNr;
+            if (seqNrExt < highestSeqNrExt && highestSeqNrExt - seqNrExt > 20000)
+                seqNrExt += 65536;
+            else if (seqNrExt > highestSeqNrExt && seqNrExt - highestSeqNrExt > 20000)
+                highestSeqNrExt += 65536;
+
+            /*
+            * RTP packets with a sequence number lower
+            * than or equal to the highest received sequence number
+            * are treated as received even though they are not
+            * This advances the send window, similar to what
+            * SACK does in TCP
+            */
+            if (seqNrExt <= highestSeqNrExt && tmp->isAfterReceivedEdge == false) {
+                bytesNewlyAcked += tmp->size;
+                bytesInFlight -= tmp->size;
+                if (bytesInFlight < 0)
+                    bytesInFlight = 0;
+                stream->bytesAcked += tmp->size;
+                tmp->isAfterReceivedEdge = true;
+            }
+
+            if (tmp->timeTx_us + kReorderTime_us < stream->timeTxAck_us && !tmp->isAcked) {
+                /*
+                * Packet ACK is delayed more than kReorderTime_us after an ACK of a higher SN packet
+                * raise a loss event and remove from TX list
+                */
+                if (time_us - lastLossEventT_us > sRtt_us && lossBeta < 1.0f) {
+                    lossEvent = true;
+                }
+                stream->bytesLost += tmp->size;
+                tmp->isUsed = false;
+                stream->repairLoss = true;
+            }
+            else if (tmp->isAcked) {
+                tmp->isUsed = false;
+            }
+        }
+    }
+
+}
+
+float ScreamTx::getTargetBitrate(uint32_t ssrc) {
+    return  getStream(ssrc)->getTargetBitrate();
+}
+
+void ScreamTx::setTargetPriority(uint32_t ssrc, float priority) {
+    Stream *stream = getStream(ssrc);
+    if (queueDelayTrend > 0.02) {
+        stream->targetBitrate *= priority / stream->targetPriority;
+        stream->targetBitrate = std::min(std::max(stream->targetBitrate, stream->minBitrate), stream->maxBitrate);
+    }
+    stream->targetPriority = priority;
+    stream->targetPriorityInv = 1.0f / priority;
+}
+
+void ScreamTx::getLog(float time, char *s) {
+    int inFlightMax = std::max(bytesInFlight, bytesInFlightHistHiMem);
+    sprintf(s, "%4.3f, %4.3f, %4.3f, %4.3f, %6d, %6d, %6.0f, %1d, ",
+        queueDelay, queueDelayMax, queueDelayMinAvg, sRtt,
+        cwnd, bytesInFlightLog, rateTransmitted / 1000.0f, isInFastStart());
+    bytesInFlightLog = bytesInFlight;
+    queueDelayMax = 0.0;
+    for (int n = 0; n < nStreams; n++) {
+        Stream *tmp = streams[n];
+        char s2[200];
+        sprintf(s2, "%4.3f, %6.0f, %6.0f, %6.0f, %6.0f, %5.0f, %5d, ",
+            std::max(0.0f, tmp->rtpQueue->getDelay(time)),
+            tmp->targetBitrate / 1000.0f, tmp->rateRtp / 1000.0f,
+            tmp->rateTransmitted / 1000.0f, tmp->rateAcked / 1000.0f,
+            tmp->rateLost / 1000.0f,
+            tmp->hiSeqAck);
+        strcat(s, s2);
+    }
+}
+
+void ScreamTx::getShortLog(float time, char *s) {
+    int inFlightMax = std::max(bytesInFlight, bytesInFlightHistHiMem);
+    sprintf(s, "%4.3f, %4.3f, %6d, %6d, %6.0f, ",
+        queueDelayMax, sRtt,
+        cwnd, bytesInFlightLog, rateTransmitted / 1000.0f);
+    bytesInFlightLog = bytesInFlight;
+    queueDelayMax = 0.0;
+    for (int n = 0; n < nStreams; n++) {
+        Stream *tmp = streams[n];
+        char s2[200];
+        sprintf(s2, "%4.3f, %6.0f, %6.0f, %6.0f, %5.0f, ",
+            std::max(0.0f, tmp->rtpQueue->getDelay(time)),
+            tmp->targetBitrate / 1000.0f, tmp->rateRtp / 1000.0f,
+            tmp->rateTransmitted / 1000.0f,
+            tmp->rateLost / 1000.0f);
+        strcat(s, s2);
+    }
+}
+
+void ScreamTx::getStatistics(float time, char *s) {
+    statistics->getSummary(time, s);
+}
+
+void ScreamTx::initialize(uint64_t time_us) {
+    isInitialized = true;
+    lastSRttUpdateT_us = time_us;
+    lastBaseOwdAddT_us = time_us;
+    baseOwdResetT_us = time_us;
+    lastAddToQueueDelayFractionHistT_us = time_us;
+    lastLossEventT_us = time_us;
+    lastTransmitT_us = time_us;
+    nextTransmitT_us = time_us;
+    lastRateUpdateT_us = time_us;
+    lastAdjustPrioritiesT_us = time_us;
+    lastRttT_us = time_us;
+    lastBaseDelayRefreshT_us = time_us + 1000000;
+    lastL4sAlphaUpdateT_us = time_us;
+    initTime_us = time_us;
+}
+
+/*
+* Update the  congestion window
+*/
+void ScreamTx::updateCwnd(uint64_t time_us) {
+    float dT = 0.001;
+    if (lastCwndUpdateT_us == 0)
+        lastCwndUpdateT_us = time_us;
+    else
+        dT = (time_us - lastCwndUpdateT_us) * 1e-6f;
+
+    /*
+    * This adds a limit to how much the CWND can grow, it is particularly useful
+    * in case of short gliches in the transmission, in which a large chunk of data is delivered
+    * in a burst with the effect that the estimated queue delay is low because it typically depict the queue
+    * delay for the last non-delayed RTP packet. The rule is that the CWND cannot grow faster
+    * than the 1.25 times the average amount of bytes that transmitted in the given feedback interval
+    */
+    float bytesNewlyAckedLimited = bytesNewlyAcked;
+    if (maxRate > 1.0e5f)
+        bytesNewlyAckedLimited = std::min(bytesNewlyAckedLimited, 1.25f*maxRate*dT / 8.0f);
+    else
+        bytesNewlyAckedLimited = 2.0f*mss;
+
+    queueDelayMin = std::min(queueDelayMin, queueDelay);
+
+    queueDelayMax = std::max(queueDelayMax, queueDelay);
+
+    float time = time_us*1e-6;
+    if (queueDelayMinAvg > 0.25f*queueDelayTarget && time_us - baseOwdResetT_us > 20000000) {
+        /*
+        * The base OWD is likely wrong, for instance due to
+        * a channel change or clock drift, reset base OWD history
+        */
+        queueDelayMinAvg = 0.0f;
+        queueDelay = 0.0f;
+        for (int n = 0; n < kBaseOwdHistSize; n++)
+            baseOwdHist[n] = UINT32_MAX;
+        baseOwd = UINT32_MAX;
+        baseOwdHistMin = UINT32_MAX;
+        baseOwdResetT_us = time_us;
+    }
+    /*
+    * An averaged version of the queue delay fraction
+    * neceassary in order to make video rate control robust
+    * against jitter
+    */
+    queueDelayFractionAvg = 0.9f*queueDelayFractionAvg + 0.1f*getQueueDelayFraction();
+
+    /*
+    * Less frequent updates here
+    * + Compute pacing interval
+    * + Save to queue delay fraction history
+    *   used in computeQueueDelayTrend()
+    * + Update queueDelayTarget
+    */
+    if ((time_us - lastAddToQueueDelayFractionHistT_us) >
+        kQueueDelayFractionHistInterval_us) {
+
+        /*
+        * compute paceInterval, we assume a min bw of 50kbps and a min tp of 1ms
+        * for stable operation
+        * this function implements the packet pacing
+        */
+        paceInterval = kMinPaceInterval;
+        if ((queueDelayFractionAvg > 0.02f || isL4s) && kEnablePacketPacing) {
+            /*
+            * The cautiousPacing parameter restricts transmission of large key frames when the parameter is set to a value closer to 1.0
+            */
+            float pacingBitrate = (1.0 - cautiousPacing)*cwnd * 8.0f / std::max(0.001f, sRtt) + cautiousPacing*rateTransmittedAvg;
+            pacingBitrate = kPacketPacingHeadRoom*std::max(kMinimumBandwidth, pacingBitrate);
+            float tp = (mss * 8.0f) / pacingBitrate;
+            paceInterval = std::max(kMinPaceInterval, tp);
+        }
+        paceInterval_us = (uint64_t)(paceInterval * 1000000);
+
+        if (queueDelayMin < queueDelayMinAvg)
+            queueDelayMinAvg = queueDelayMin;
+        else
+            queueDelayMinAvg = 0.001f*queueDelayMin + 0.999f*queueDelayMinAvg;
+        queueDelayMin = 1000.0f;
+        /*
+        * Need to duplicate insertion incase the feedback is sparse
+        */
+        int nIter = (int)(time_us - lastAddToQueueDelayFractionHistT_us) / kQueueDelayFractionHistInterval_us;
+        for (int n = 0; n < nIter; n++) {
+            queueDelayFractionHist[queueDelayFractionHistPtr] = getQueueDelayFraction();
+            queueDelayFractionHistPtr = (queueDelayFractionHistPtr + 1) % kQueueDelayFractionHistSize;
+        }
+
+        if (time_us - initTime_us > 2000000) {
+            /*
+            * Queue delay trend calculations are reliable after ~2s
+            */
+            computeQueueDelayTrend();
+        }
+
+        queueDelayTrendMem = std::max(queueDelayTrendMem*0.98f, queueDelayTrend);
+
+        /*
+        * Compute bytes in flight limitation
+        */
+        int maxBytesInFlightHi = (int)(std::max(bytesInFlightMaxHi, bytesInFlightHistHiMem));
+        int maxBytesInFlightLo = (int)(std::max(bytesInFlight, bytesInFlightHistLoMem));
+
+        float alpha = std::max(queueDelayTrend, cautiousPacing);
+        maxBytesInFlight =
+                (maxBytesInFlightHi*(1.0f - alpha) + maxBytesInFlightLo*alpha)*
+                kMaxBytesInFlightHeadRoom;
+        if (enableSbd) {
+            /*
+            * Shared bottleneck detection,
+            */
+            float queueDelayNorm = queueDelay / queueDelayTargetMin;
+            queueDelayNormHist[queueDelayNormHistPtr] = queueDelayNorm;
+            queueDelayNormHistPtr = (queueDelayNormHistPtr + 1) % kQueueDelayNormHistSize;
+            /*
+            * Compute shared bottleneck detection and update queue delay target
+            * if queue dela variance is sufficienctly low
+            */
+            computeSbd();
+            /*
+            * This function avoids the adjustment of queueDelayTarget when
+            * congestion occurs (indicated by high queueDelaydSbdVar and queueDelaySbdSkew)
+            */
+            float oh = queueDelayTargetMin*(queueDelaySbdMeanSh + sqrt(queueDelaySbdVar));
+            if (lossEventRate > 0.002 && queueDelaySbdMeanSh > 0.5 && queueDelaySbdVar < 0.2) {
+                queueDelayTarget = std::min(kQueueDelayTargetMax, oh*1.5f);
+            }
+            else {
+                if (queueDelaySbdVar < 0.2 && queueDelaySbdSkew < 0.05) {
+                    queueDelayTarget = std::max(queueDelayTargetMin, std::min(kQueueDelayTargetMax, oh));
+                }
+                else {
+                    if (oh < queueDelayTarget)
+                        queueDelayTarget = std::max(queueDelayTargetMin, std::max(queueDelayTarget*0.99f, oh));
+                    else
+                        queueDelayTarget = std::max(queueDelayTargetMin, queueDelayTarget*0.999f);
+                }
+            }
+        }
+        lastAddToQueueDelayFractionHistT_us = time_us;
+    }
+    /*
+    * offTarget is a normalized deviation from the queue delay target
+    */
+    float offTarget = (queueDelayTarget - queueDelay) / float(queueDelayTarget);
+
+    if (lossEvent) {
+        /*
+        * loss event detected, decrease congestion window
+        */
+        cwnd = std::max(cwndMin, (int)(lossBeta*cwnd));
+        lossEvent = false;
+        lastCongestionDetectedT_us = time_us;
+
+        inFastStart = false;
+        wasLossEvent = true;
+    }
+    else if (ecnCeEvent) {
+        /*
+        * loss event detected, decrease congestion window
+        */
+        if (isL4s) {
+            cwnd = std::max(cwndMin, (int)((1.0f - l4sAlpha / 2.0f)*cwnd));
+        }
+        else {
+            cwnd = std::max(cwndMin, (int)(ecnCeBeta*cwnd));
+        }
+        ecnCeEvent = false;
+        lastCongestionDetectedT_us = time_us;
+
+        inFastStart = false;
+        wasLossEvent = true;
+    }
+    else {
+
+        if (time_us - lastRttT_us > sRtt_us) {
+            if (wasLossEvent)
+                lossEventRate = 0.99f*lossEventRate + 0.01f;
+            else
+                lossEventRate *= 0.99f;
+            wasLossEvent = false;
+            lastRttT_us = time_us;
+        }
+
+        if (inFastStart) {
+            /*
+            * In fast start
+            */
+            if (queueDelayTrend < 0.2) {
+                /*
+                * CWND is increased by the number of ACKed bytes if
+                * window is used to 1/1.5 = 67%
+                * We need to relax the rule a bit for the case that
+                * feedback may be sparse due to limited RTCP report interval
+                * In addition we put a limit for the cases where feedback becomes
+                * piled up (sometimes happens with e.g LTE)
+                */
+                float bytesInFlightMargin = 1.5f;
+                if (bytesInFlight*bytesInFlightMargin + bytesNewlyAcked > cwnd) {
+                    cwnd += bytesNewlyAckedLimited;
+                }
+            }
+            else {
+                inFastStart = false;
+            }
+        }
+        else {
+            if (offTarget > 0.0f) {
+                /*
+                * queue delay below target, increase CWND if window
+                * is used to 1/1.2 = 83%
+                */
+                float bytesInFlightMargin = 1.2f;
+                if (bytesInFlight*bytesInFlightMargin + bytesNewlyAcked > cwnd) {
+                    float increment = gainUp * offTarget * bytesNewlyAckedLimited * mss / cwnd;
+                    cwnd += (int)(increment + 0.5f);
+                }
+            }
+            else {
+                /*
+                * Queue delay above target.
+                * Limit the CWND reduction to at most a quarter window
+                *  this avoids unduly large reductions for the cases
+                *  where data is queued up e.g because of retransmissions
+                *  on lower protocol layers.
+                */
+                float delta = -(gainDown * offTarget * bytesNewlyAcked * mss / cwnd);
+                delta = std::min((int)delta, cwnd / 4);
+                cwnd -= (int)(delta);
+
+                /*
+                * Especially when running over low bitrate bottlenecks, it is
+                *  beneficial to reduce the target bitrate a little, it limits
+                *  possible RTP queue delay spikes when congestion window is reduced
+                */
+                float rateTotal = 0.0f;
+                for (int n = 0; n < nStreams; n++)
+                    rateTotal += streams[n]->getMaxRate();
+                if (rateTotal < 1.0e5f) {
+                    delta = delta / cwnd;
+                    float rateAdjustFactor = (1.0f - delta);
+                    for (int n = 0; n < nStreams; n++) {
+                        Stream *tmp = streams[n];
+                        tmp->targetBitrate = std::max(tmp->minBitrate,
+                            std::min(tmp->maxBitrate,
+                            tmp->targetBitrate*rateAdjustFactor));
+                    }
+                }
+                lastCongestionDetectedT_us = time_us;
+
+            }
+        }
+    }
+    /*
+    * Congestion window validation, checks that the congestion window is
+    * not considerably higher than the actual number of bytes in flight
+    */
+    if (maxBytesInFlight > 5000) {
+        cwnd = std::min(cwnd, (int)maxBytesInFlight);
+    }
+
+    if (sRtt < 0.01f && queueDelayTrend < 0.1) {
+        int tmp = int(rateTransmitted*0.01f / 8);
+        tmp = std::max(tmp, (int)(maxBytesInFlight*1.5f));
+        cwnd = std::max(cwnd, tmp);
+    }
+    cwnd = std::max(cwndMin, cwnd);
+
+    /*
+    * Make possible to enter fast start if OWD has been low for a while
+    */
+    if (queueDelayTrend > 0.2) {
+        lastCongestionDetectedT_us = time_us;
+    }
+    else if (time_us - lastCongestionDetectedT_us > 5000000 &&
+        !inFastStart && kEnableConsecutiveFastStart) {
+        /*
+        * The queue delay trend has been low for more than 5.0s, resume fast start
+        */
+        inFastStart = true;
+        lastCongestionDetectedT_us = time_us;
+    }
+    bytesNewlyAcked = 0;
+}
+
+/*
+* Update base OWD (if needed) and return the
+* last estimated OWD (without offset compensation)
+*/
+uint32_t ScreamTx::estimateOwd(uint64_t time_us) {
+    baseOwd = std::min(baseOwd, ackedOwd);
+    if (time_us - lastBaseOwdAddT_us >= kBaseDelayUpdateInterval_us) {
+        baseOwdHist[baseOwdHistPtr] = baseOwd;
+        baseOwdHistPtr = (baseOwdHistPtr + 1) % kBaseOwdHistSize;
+        lastBaseOwdAddT_us = time_us;
+        baseOwd = UINT32_MAX;
+        baseOwdHistMin = UINT32_MAX;
+        for (int n = 0; n < kBaseOwdHistSize; n++)
+            baseOwdHistMin = std::min(baseOwdHistMin, baseOwdHist[n]);
+        /*
+        * _Very_ long periods of congestion can cause the base delay to increase
+        * with the effect that the queue delay is estimated wrong, therefore we seek to
+        * refresh the whole thing by deliberately allowing the network queue to drain
+        */
+        if (time_us - lastBaseDelayRefreshT_us > kBaseDelayUpdateInterval_us*(kBaseOwdHistSize - 1)) {
+            lastBaseDelayRefreshT_us = time_us;
+        }
+    }
+    return ackedOwd;
+}
+
+/*
+* Get the base one way delay
+*/
+uint32_t ScreamTx::getBaseOwd() {
+    return  std::min(baseOwd, baseOwdHistMin);
+}
+
+/*
+* Get the queue delay fraction
+*/
+float ScreamTx::getQueueDelayFraction() {
+    return queueDelay / queueDelayTarget;
+}
+
+/*
+* Compute congestion indicator
+*/
+void ScreamTx::computeQueueDelayTrend() {
+    queueDelayTrend = 0.0;
+    int ptr = queueDelayFractionHistPtr;
+    float avg = 0.0f, x1, x2, a0, a1;
+
+    for (int n = 0; n < kQueueDelayFractionHistSize; n++) {
+        avg += queueDelayFractionHist[ptr];
+        ptr = (ptr + 1) % kQueueDelayFractionHistSize;
+    }
+    avg /= kQueueDelayFractionHistSize;
+
+    ptr = queueDelayFractionHistPtr;
+    x2 = 0.0f;
+    a0 = 0.0f;
+    a1 = 0.0f;
+    for (int n = 0; n < kQueueDelayFractionHistSize; n++) {
+        x1 = queueDelayFractionHist[ptr] - avg;
+        a0 += x1 * x1;
+        a1 += x1 * x2;
+        x2 = x1;
+        ptr = (ptr + 1) % kQueueDelayFractionHistSize;
+    }
+    if (a0 > 0) {
+        queueDelayTrend = std::max(0.0f, std::min(1.0f, (a1 / a0)*queueDelayFractionAvg));
+    }
+}
+
+/*
+* Compute indicators of shared bottleneck
+*/
+void ScreamTx::computeSbd() {
+    float queueDelayNorm, tmp;
+    queueDelaySbdMean = 0.0;
+    queueDelaySbdMeanSh = 0.0;
+    queueDelaySbdVar = 0.0;
+    int ptr = queueDelayNormHistPtr;
+    for (int n = 0; n < kQueueDelayNormHistSize; n++) {
+        queueDelayNorm = queueDelayNormHist[ptr];
+        queueDelaySbdMean += queueDelayNorm;
+        if (n >= kQueueDelayNormHistSize - kQueueDelayNormHistSizeSh) {
+            queueDelaySbdMeanSh += queueDelayNorm;
+        }
+        ptr = (ptr + 1) % kQueueDelayNormHistSize;
+    }
+    queueDelaySbdMean /= kQueueDelayNormHistSize;
+    queueDelaySbdMeanSh /= kQueueDelayNormHistSizeSh;
+
+    ptr = queueDelayNormHistPtr;
+    for (int n = 0; n < kQueueDelayNormHistSize; n++) {
+        queueDelayNorm = queueDelayNormHist[ptr];
+        tmp = queueDelayNorm - queueDelaySbdMean;
+        queueDelaySbdVar += tmp * tmp;
+        queueDelaySbdSkew += tmp * tmp * tmp;
+        ptr = (ptr + 1) % kQueueDelayNormHistSize;
+    }
+    queueDelaySbdVar /= kQueueDelayNormHistSize;
+    queueDelaySbdSkew /= kQueueDelayNormHistSize;
+}
+
+/*
+* true if the queueDelayTarget is increased due to
+* detected competing flows
+*/
+bool ScreamTx::isCompetingFlows() {
+    return queueDelayTarget > queueDelayTargetMin;
+}
+
+/*
+* Get queue delay trend
+*/
+float ScreamTx::getQueueDelayTrend() {
+    return queueDelayTrend;
+}
+
+/*
+* Determine active streams
+*/
+void ScreamTx::determineActiveStreams(uint64_t time_us) {
+    float surplusBitrate = 0.0f;
+    float sumPrio = 0.0;
+    bool streamSetInactive = false;
+    for (int n = 0; n < nStreams; n++) {
+        if (time_us - streams[n]->lastFrameT_us > 1000000 && streams[n]->isActive) {
+            streams[n]->isActive = false;
+            surplusBitrate += streams[n]->targetBitrate;
+            streams[n]->targetBitrate = streams[n]->minBitrate;
+            streamSetInactive = true;
+        }
+        else {
+            sumPrio += streams[n]->targetPriority;
+        }
+    }
+    if (streamSetInactive) {
+        for (int n = 0; n < nStreams; n++) {
+            if (streams[n]->isActive) {
+                streams[n]->targetBitrate = std::min(streams[n]->maxBitrate,
+                    streams[n]->targetBitrate +
+                    surplusBitrate*streams[n]->targetPriority / sumPrio);
+            }
+        }
+    }
+}
+
+/*
+* Add credit to streams that was not served
+*/
+void ScreamTx::addCredit(uint64_t time_us, Stream* servedStream, int transmittedBytes) {
+    /*
+    * Add a credit to stream(s) that did not get priority to transmit RTP packets
+    */
+    if (nStreams == 1)
+        /*
+        * Skip if only one stream to save CPU
+        */
+        return;
+    int maxCredit = 10 * mss;
+    for (int n = 0; n < nStreams; n++) {
+        Stream *tmp = streams[n];
+        if (tmp != servedStream) {
+            int credit = (int)(transmittedBytes*tmp->targetPriority * servedStream->targetPriorityInv);
+            if (tmp->rtpQueue->sizeOfQueue() > 0) {
+                tmp->credit += credit;
+            }
+            else {
+                tmp->credit += credit;
+                if (tmp->credit > maxCredit) {
+                    tmp->creditLost += tmp->credit - maxCredit;
+                    tmp->credit = maxCredit;
+                }
+                //tmp->credit = std::min(10 * mss, tmp->credit + credit);
+            }
+        }
+    }
+}
+
+/*
+* Subtract credit from served stream
+*/
+void ScreamTx::subtractCredit(uint64_t time_us, Stream* servedStream, int transmittedBytes) {
+    /*
+    * Subtract a credit equal to the number of transmitted bytes from the stream that
+    * transmitted a packet
+    */
+    if (nStreams == 1)
+        /*
+        * Skip if only one stream to save CPU
+        */
+        return;
+    servedStream->credit = std::max(0, servedStream->credit - transmittedBytes);
+}
+ScreamTx::Stream::Stream(ScreamTx *parent_,
+    RtpQueueIface *rtpQueue_,
+    uint32_t ssrc_,
+    float priority_,
+    float minBitrate_,
+    float startBitrate_,
+    float maxBitrate_,
+    float rampUpSpeed_,
+    float maxRtpQueueDelay_,
+    float txQueueSizeFactor_,
+    float queueDelayGuard_,
+    float lossEventRateScale_,
+    float ecnCeEventRateScale_) {
+    parent = parent_;
+    rtpQueue = rtpQueue_;
+    ssrc = ssrc_;
+    targetPriority = priority_;
+    targetPriorityInv = 1.0f / targetPriority;
+    minBitrate = minBitrate_;
+    maxBitrate = maxBitrate_;
+    targetBitrate = std::min(maxBitrate, std::max(minBitrate, startBitrate_));
+    rampUpSpeed = rampUpSpeed_;
+    maxRtpQueueDelay = maxRtpQueueDelay_;
+    txQueueSizeFactor = txQueueSizeFactor_;
+    queueDelayGuard = queueDelayGuard_;
+    lossEventRateScale = lossEventRateScale_;
+    ecnCeEventRateScale = ecnCeEventRateScale_;
+    targetBitrateHistUpdateT_us = 0;
+    targetBitrateI = 1.0f;
+    credit = 0;
+    creditLost = 0;
+    bytesTransmitted = 0;
+    bytesAcked = 0;
+    bytesLost = 0;
+    hiSeqAck = 0;
+    hiSeqTx = 0;
+    rateTransmitted = 0.0f;
+    rateAcked = 0.0f;
+    rateLost = 0.0f;
+    lossEventFlag = false;
+    ecnCeEventFlag = false;
+    txSizeBitsAvg = 0.0f;
+    lastRateUpdateT_us = 0;
+    lastBitrateAdjustT_us = 0;
+    lastTargetBitrateIUpdateT_us = 0;
+    bytesRtp = 0;
+    rateRtp = 0.0f;
+    lastLossDetectIx = -1;
+    ecnCeMarkedBytes = 0;
+    timeTxAck_us = 0;
+
+    for (int n = 0; n < kRateUpDateSize; n++) {
+        rateRtpHist[n] = 0.0f;
+        rateAckedHist[n] = 0.0f;
+        rateLostHist[n] = 0.0f;
+        rateTransmittedHist[n] = 0.0f;
+    }
+    rateUpdateHistPtr = 0;
+    for (int n = 0; n < kTargetBitrateHistSize; n++) {
+        targetBitrateHist[n] = 0;
+    }
+    targetBitrateHistPtr = 0;
+    targetRateScale = 1.0;
+    isActive = false;
+    lastFrameT_us = 0;
+    initTime_us = 0;
+    rtpQueueDiscard = false;
+    lastRtpQueueDiscardT_us = 0;
+    rateLost = 0.0;
+    bytesLost = 0;
+    wasRepairLoss = false;
+    repairLoss = false;
+    for (int n = 0; n < kMaxTxPackets; n++)
+        txPackets[n].isUsed = false;
+    txPacketsPtr = 0;
+}
+
+/*
+* Update the estimated max media rate
+*/
+void ScreamTx::Stream::updateRate(uint64_t time_us) {
+    if (lastRateUpdateT_us != 0) {
+        float tDelta = (time_us - lastRateUpdateT_us) * 1e-6f;
+
+        rateTransmittedHist[rateUpdateHistPtr] = bytesTransmitted*8.0f / tDelta;
+        rateAckedHist[rateUpdateHistPtr] = bytesAcked*8.0f / tDelta;
+        rateLostHist[rateUpdateHistPtr] = bytesLost*8.0f / tDelta;
+        rateRtpHist[rateUpdateHistPtr] = bytesRtp * 8.0f / tDelta;
+        rateUpdateHistPtr = (rateUpdateHistPtr + 1) % kRateUpDateSize;
+        rateTransmitted = 0.0f;
+        rateAcked = 0.0f;
+        rateLost = 0.0f;
+        rateRtp = 0.0f;
+        for (int n = 0; n < kRateUpDateSize; n++) {
+            rateTransmitted += rateTransmittedHist[n];
+            rateAcked += rateAckedHist[n];
+            rateLost += rateLostHist[n];
+            rateRtp += rateRtpHist[n];
+        }
+        rateTransmitted /= kRateUpDateSize;
+        rateAcked /= kRateUpDateSize;
+        rateLost /= kRateUpDateSize;
+        rateRtp /= kRateUpDateSize;
+        if (rateRtp > 0) {
+            /*
+            * Video coders are strange animals.. In certain cases the average bitrate is
+            * consistently lower or higher than the target bitare. This additonal scaling compensates
+            * for this anomaly.
+            */
+            const float alpha = 0.005f;
+            targetRateScale *= (1.0f - alpha);
+            targetRateScale += alpha*targetBitrate / rateRtp;
+            targetRateScale = std::min(1.25f, std::max(0.8f, targetRateScale));
+        }
+    }
+
+    bytesTransmitted = 0;
+    bytesAcked = 0;
+    bytesRtp = 0;
+    bytesLost = 0;
+    lastRateUpdateT_us = time_us;
+}
+
+/*
+* Get the estimated maximum media rate
+*/
+float ScreamTx::Stream::getMaxRate() {
+    return std::max(rateTransmitted, rateAcked);
+}
+
+/*
+* The the stream that matches SSRC
+*/
+ScreamTx::Stream* ScreamTx::getStream(uint32_t ssrc) {
+    for (int n = 0; n < nStreams; n++) {
+        if (streams[n]->isMatch(ssrc)) {
+            return streams[n];
+        }
+    }
+    return NULL;
+}
+
+/*
+* Get the target bitrate.
+* This function returns a value -1 if loss of RTP packets is detected,
+*  either because of loss in network or RTP queue discard
+*/
+float ScreamTx::Stream::getTargetBitrate() {
+
+    bool requestRefresh = isRtpQueueDiscard() || repairLoss;
+    repairLoss = false;
+    if (requestRefresh  && !wasRepairLoss) {
+        wasRepairLoss = true;
+        return -1.0;
+    }
+    float rate = targetRateScale*targetBitrate;
+    /*
+    * Video coders are strange animals.. In certain cases a very frequent rate requests can confuse the
+    * rate control logic in the coder
+    */
+    wasRepairLoss = false;
+    return rate;
+}
+
+/*
+* A small history of past max bitrates is maintained and the max value is picked.
+* This solves a problem where consequtive rate decreases can give too low
+*  targetBitrateI values.
+*/
+void ScreamTx::Stream::updateTargetBitrateI(float br) {
+    targetBitrateHist[targetBitrateHistPtr] = std::min(br, targetBitrate);
+    targetBitrateHistPtr = (targetBitrateHistPtr + 1) % kTargetBitrateHistSize;
+    targetBitrateI = std::min(br, targetBitrate);
+    for (int n = 0; n < kTargetBitrateHistSize; n++) {
+        targetBitrateI = std::max(targetBitrateI, targetBitrateHist[n]);
+    }
+
+}
+
+/*
+* Update the target bitrate, the target bitrate includes the RTP overhead
+*/
+void ScreamTx::Stream::updateTargetBitrate(uint64_t time_us) {
+    /*
+    * Compute a maximum bitrate, this bitrates includes the RTP overhead
+    */
+    float br = getMaxRate();
+    float rateRtpLimit = br;
+    if (initTime_us == 0) {
+        /*
+        * Initialize if the first time
+        */
+        initTime_us = time_us;
+        lastRtpQueueDiscardT_us = time_us;
+    }
+
+    if (lastBitrateAdjustT_us == 0) lastBitrateAdjustT_us = time_us;
+    isActive = true;
+    lastFrameT_us = time_us;
+
+    if (lossEventFlag || ecnCeEventFlag) {
+        /*
+        * Loss event handling
+        * Rate is reduced slightly to avoid that more frames than necessary
+        * queue up in the sender queue
+        */
+        if (time_us - lastTargetBitrateIUpdateT_us > 2000000) {
+            /*
+            * The timing constraint avoids that targetBitrateI
+            *  is set too low in cases where a congestion event is prolonged.
+            * An accurate targetBitrateI is not of extreme importance
+            *  but helps to avoid jitter spikes when SCReAM operates
+            *  over fixed bandwidth or slowly varying links.
+            */
+            updateTargetBitrateI(br);
+            lastTargetBitrateIUpdateT_us = time_us;
+        }
+        if (lossEventFlag)
+            targetBitrate = std::max(minBitrate, targetBitrate*lossEventRateScale);
+        else if (ecnCeEventFlag) {
+            if (parent->isL4s) {
+                targetBitrate = std::max(minBitrate, targetBitrate*(1.0f - parent->l4sAlpha / 4.0f));
+                //updateTargetBitrateI(targetBitrate);
+            }
+            else {
+                targetBitrate = std::max(minBitrate, targetBitrate*ecnCeEventRateScale);
+            }
+        }
+        lossEventFlag = false;
+        ecnCeEventFlag = false;
+        lastBitrateAdjustT_us = time_us;
+    }
+    else {
+        if (time_us - lastBitrateAdjustT_us < kRateAdjustInterval_us)
+            return;
+        /*
+        * A scale factor that is dependent on the inflection point
+        * i.e the last known highest video bitrate
+        */
+        float sclI = (targetBitrate - targetBitrateI) / targetBitrateI;
+        sclI *= 4;
+        sclI = std::max(0.2f, std::min(1.0f, sclI*sclI));
+        float increment = 0.0f;
+
+        /*
+        * Size of RTP queue [bits]
+        * As this function is called immediately after a
+        * video frame is produced, we need to accept the new
+        * RTP packets in the queue, we subtract a number of bytes correspoding to the size
+        * of the last frame (including RTP overhead), this is simply the aggregated size
+        * of the RTP packets with the highest RTP timestamp
+        */
+        int lastBytes = rtpQueue->getSizeOfLastFrame();
+        int txSizeBits = std::max(0, rtpQueue->bytesInQueue() - lastBytes) * 8;
+
+        float alpha = 0.5f;
+
+        txSizeBitsAvg = txSizeBitsAvg*alpha + txSizeBits*(1.0f - alpha);
+        /*
+        * tmp is a local scaling factor that makes rate adaptation sligthly more
+        * aggressive when competing flows (e.g file transfers) are detected
+        */
+        float rampUpSpeedTmp = std::min(rampUpSpeed, targetBitrate*0.5f);
+        if (parent->isCompetingFlows()) {
+            rampUpSpeedTmp *= 2.0f;
+        }
+
+        float rtpQueueDelay = rtpQueue->getDelay(time_us * 1e-6f);
+        if (rtpQueueDelay > maxRtpQueueDelay &&
+            (time_us - lastRtpQueueDiscardT_us > kMinRtpQueueDiscardInterval_us)) {
+            /*
+            * RTP queue is cleared as it is becoming too large,
+            * Function is however disabled initially as there is no reliable estimate of the
+            * throughput in the initial phase.
+            */
+            rtpQueue->clear();
+
+            rtpQueueDiscard = true;
+
+            lastRtpQueueDiscardT_us = time_us;
+            targetRateScale = 1.0;
+            txSizeBitsAvg = 0.0f;
+        }
+        else if (parent->inFastStart && rtpQueueDelay < 0.1f) {
+            /*
+            * Increment bitrate, limited by the rampUpSpeed
+            */
+            increment = rampUpSpeedTmp*(kRateAdjustInterval_us * 1e-6f);
+            /*
+            * Limit increase rate near the last known highest bitrate or if priority is low
+            */
+            increment *= sclI*sqrt(targetPriority);
+            /*
+            * No increase if the actual coder rate is lower than the target
+            */
+            if (targetBitrate > rateRtpLimit*1.5f)
+                increment = 0;
+            /*
+            * Add increment
+            */
+            targetBitrate += increment;
+            wasFastStart = true;
+        }
+        else {
+            if (wasFastStart) {
+                wasFastStart = false;
+                if (time_us - lastTargetBitrateIUpdateT_us > 2000000) {
+                    /*
+                    * The timing constraint avoids that targetBitrateI
+                    * is set too low in cases where a
+                    * congestion event is prolonged
+                    */
+                    updateTargetBitrateI(br);
+                    lastTargetBitrateIUpdateT_us = time_us;
+                }
+            }
+
+            /*
+            * Update target rate
+            * At very low bitrates it is necessary to actively try to push the
+            *  the bitrate up some extra
+            */
+            float incrementScale = 1.0f + 0.05f*std::min(1.0f, 50000.0f / targetBitrate);
+
+            float increment = incrementScale*br;
+            if (!parent->isL4s || parent->l4sAlpha < 0.001) {
+                /*
+                * Apply the extra precaution with respect to queue delay and 
+                * RTP queue only if L4S is not running or when ECN marking does not occur for a longer period
+                * scl is based on the queue delay trend
+                */
+                float scl = queueDelayGuard*parent->getQueueDelayTrend();
+                if (parent->isCompetingFlows())
+                    scl *= 0.05f;
+                increment = increment*(1.0f - scl) - txQueueSizeFactor*txSizeBitsAvg;
+            }
+            increment -= targetBitrate;
+            if (txSizeBits > 12000 && increment > 0)
+                    increment = 0;
+
+            if (increment > 0) {
+                wasFastStart = true;
+                if (!parent->isCompetingFlows()) {
+                    /*
+                    * Limit the bitrate increase so that it does not go faster than rampUpSpeedTmp
+                    * This limitation is not in effect if competing flows are detected
+                    */
+                    increment *= sclI;
+                    increment = std::min(increment, (float)(rampUpSpeedTmp*(kRateAdjustInterval_us * 1e-6)));
+                }
+                if (targetBitrate > rateRtpLimit*1.5f) {
+                    /*
+                    * Limit increase if the target bitrate is considerably higher than the actual 
+                    *  bitrate, this is an indication of an idle source.
+                    */
+                    increment = 0;
+                }
+            }
+            else {
+                /*
+                * Avoid that the target bitrate is reduced if it actually is the media
+                * coder that limits the output rate e.g due to inactivity
+                */
+                if (rateRtp < targetBitrate*0.8f)
+                    increment = 0.0f;
+                /*
+                * Also avoid that the target bitrate is reduced if
+                * the coder bitrate is higher
+                * than the target.
+                * The possible reason is that a large I frame is transmitted, another reason is
+                * complex dynamic content.
+                */
+                if (rateRtp > targetBitrate*2.0f)
+                    increment = 0.0f;
+            }
+            targetBitrate += increment;
+
+        }
+        lastBitrateAdjustT_us = time_us;
+    }
+
+    targetBitrate = std::min(maxBitrate, std::max(minBitrate, targetBitrate));
+}
+
+bool ScreamTx::Stream::isRtpQueueDiscard() {
+    bool tmp = rtpQueueDiscard;
+    rtpQueueDiscard = false;
+    return tmp;
+}
+
+/*
+* Adjust (enforce) proper prioritization between active streams
+* at regular intervals. This is a necessary addon to mitigate
+* issues that VBR media brings
+* The function consists of equal measures or rational thinking and
+* black magic, which means that there is no 100% guarantee that
+* will always work.
+*/
+void ScreamTx::adjustPriorities(uint64_t time_us) {
+    if (nStreams == 1 || time_us - lastAdjustPrioritiesT_us < 1000000) {
+        /*
+        * Skip if only one stream or if adjustment done less than 5s ago
+        */
+        return;
+    }
+
+    if (queueDelayTrend > 0.02) {
+        /*
+        * Adjust only if there is some evidence of congestion
+        */
+        int avgCreditLost = 0;
+        int avgCreditLostN = 0;
+        for (int n = 0; n < nStreams; n++) {
+            avgCreditLost += streams[n]->creditLost;
+            if (streams[n]->isActive)
+                avgCreditLostN++;
+        }
+        if (avgCreditLostN <= 1) {
+            /*
+            * At the most 1 steam active, skip adjustment
+            */
+            return;
+        }
+
+        avgCreditLost /= avgCreditLostN;
+        for (int n = 0; n < nStreams; n++) {
+            if (streams[n]->isActive) {
+                if (streams[n]->creditLost < avgCreditLost &&
+                    streams[n]->targetBitrate > streams[n]->rateRtp) {
+                    /*
+                    * Stream is using more of its share than the average
+                    * bitrate is likelky too high, reduce target bitrate
+                    * This algorithm works best when we want to ensure
+                    * different priorities
+                    */
+                    streams[n]->targetBitrate = std::max(streams[n]->minBitrate, streams[n]->targetBitrate*0.9f);
+                }
+            }
+        }
+
+        for (int n = 0; n < nStreams; n++)
+            streams[n]->creditLost = 0;
+
+
+        lastAdjustPrioritiesT_us = time_us;
+
+    }
+    if (time_us - lastAdjustPrioritiesT_us < 20000000) {
+        /*
+        * Clear old statistics of unused credits
+        */
+        for (int n = 0; n < nStreams; n++)
+            streams[n]->creditLost = 0;
+
+
+        lastAdjustPrioritiesT_us = time_us;
+    }
+}
+
+/*
+* Get the prioritized stream
+*/
+ScreamTx::Stream* ScreamTx::getPrioritizedStream(uint64_t time_us) {
+    /*
+    * Function that prioritizes between streams, this function may need
+    * to be modified to handle the prioritization better for e.g
+    * FEC, SVC etc.
+    */
+    if (nStreams == 1)
+        /*
+        * Skip if only one stream to save CPU
+        */
+        return streams[0];
+
+    int maxCredit = 1;
+    Stream *stream = NULL;
+    /*
+    * Pick a stream with credit higher or equal to
+    * the size of the next RTP packet in queue for the given stream.
+    */
+    for (int n = 0; n < nStreams; n++) {
+        Stream *tmp = streams[n];
+        if (tmp->rtpQueue->sizeOfQueue() == 0) {
+            /*
+            * Queue empty
+            */
+        }
+        else {
+            /*
+            * Pick stream if it has the highest credit so far
+            */
+            if (tmp->credit >= std::max(maxCredit, tmp->rtpQueue->sizeOfNextRtp())) {
+                stream = tmp;
+                maxCredit = tmp->credit;
+            }
+        }
+    }
+    if (stream != NULL) {
+        return stream;
+    }
+    /*
+    * If the above doesn't give a candidate..
+    * Pick the stream with the highest priority that also
+    * has at least one RTP packet in queue.
+    */
+    float maxPrio = 0.0;
+    for (int n = 0; n < nStreams; n++) {
+        Stream *tmp = streams[n];
+        float priority = tmp->targetPriority;
+        if (tmp->rtpQueue->sizeOfQueue() > 0 && priority > maxPrio) {
+            maxPrio = priority;
+            stream = tmp;
+        }
+    }
+    return stream;
+}
diff --git a/RPI/scream/scream_sender/code/ScreamTx.h b/RPI/scream/scream_sender/code/ScreamTx.h
new file mode 100644
index 0000000..3c802fb
--- /dev/null
+++ b/RPI/scream/scream_sender/code/ScreamTx.h
@@ -0,0 +1,627 @@
+#ifndef SCREAM_TX
+#define SCREAM_TX
+
+#include <string.h>
+#include <iostream>
+#include <cstdint>
+using namespace std;
+
+/*
+* This module implements the sender side of SCReAM,
+*  see https://github.com/EricssonResearch/scream/blob/master/SCReAM-description.pdf
+*  for details on how it is integrated in audio/video platforms
+* A full implementation needs the additional code for
+*  + RTCP feedback (e.g using RFC3611 XR elements)
+*  + RTP queue(s), one queue per stream, see SCReAM description for interface description
+*  + Other obvious stuff such as RTP payload packetizer, video+audio capture, coders....
+*
+*/
+
+// ==== Default parameters (if tuning necessary) ====
+// Connection related default parameters
+// CWND scale factor upon loss event
+static const float kLossBeta = 0.8f;
+// CWND scale factor upon ECN-CE event
+static const float kEcnCeBeta = 0.9f;
+// Min and max queue delay target
+static const float kQueueDelayTargetMin = 0.1f; //ms
+// Enable shared botleneck detection and queue delay target adjustement
+// good if SCReAM needs to compete with e.g FTP but
+// Can in some cases cause self-inflicted congestion
+//  i.e the e2e delay can become large even though
+//  there is no competing traffic present
+//  For some reason, self-inflicted congestion is easily triggered
+//  when an audio + video stream is run, so bottomline is that
+//  this feature is a bit shaky
+static const bool kEnableSbd = false;
+// CWND up and down gain factors
+static const float kGainUp = 1.0f;
+static const float kGainDown = 2.0f;
+
+// Stream related default parameters
+// Max video rampup speed in bps/s (bits per second increase per second)
+static const float kRampUpSpeed = 200000.0f; // bps/s
+// Max RTP queue delay, RTP queue is cleared if this value is exceeded
+static const float kMaxRtpQueueDelay = 0.1;  // 0.1s
+// Compensation factor for RTP queue size
+// A higher value such as 0.2 gives less jitter esp. in wireless (LTE)
+// but potentially also lower link utilization
+static const float kTxQueueSizeFactor = 0.2f;
+// Compensation factor for detected congestion in rate computation
+// A higher value such as 0.5 gives less jitter esp. in wireless (LTE)
+// but potentially also lower link utilization
+static const float kQueueDelayGuard = 0.1f;
+// Video rate scaling due to loss events
+static const float kLossEventRateScale = 0.9f;
+// Video rate scaling due to ECN marking events
+static const float kEcnCeEventRateScale = 0.95f;
+
+
+
+// Constants
+/*
+* Timestamp sampling rate for SCReAM feedback
+*/
+static const float kTimestampRate = 1000.0f;
+/*
+* Max number of RTP packets in flight
+* With and MSS = 1200 byte and an RTT = 200ms
+* this is enount to support media bitrates of ~50Mbps
+* Note, 65536 % kMaxTxPackets must be zero
+*/
+static const int kMaxTxPackets = 2048;
+/*
+* Max number of streams
+*/
+static const int kMaxStreams = 10;
+/*
+* History vectors
+*/
+static const int kBaseOwdHistSize = 50;
+static const int kQueueDelayNormHistSize = 200;
+static const int kQueueDelayNormHistSizeSh = 50;
+static const int kQueueDelayFractionHistSize = 20;
+static const int kBytesInFlightHistSizeMax = 60;
+static const int kRateUpDateSize = 4;
+static const int kTargetBitrateHistSize = 3;
+static const int kLossRateHistSize = 10;
+
+class RtpQueueIface;
+class ScreamTx {
+public:
+    /*
+    * Constructor, see constant definitions above for an explanation of parameters
+    * cwnd > 0 sets a different initial congestion window, for example it can be set to
+    *  initialrate/8*rtt
+    * cautiousPacing is set in the range [0.0..1.0]. A higher values restricts the transmission rate of large key frames
+    *  which can be beneficial if it is evident that large key frames cause packet drops, for instance due to
+    *  reduced buffer size in wireless modems.
+    *  This is however at the potential cost of an overall increased transmission delay also when links are uncongested
+    *  as the RTP packets are more likely to be buffered up on the sender side when cautiousPacing is set close to 1.0.
+    * lossBeta == 1.0 means that packet losses are ignored by the congestion control
+    * bytesInFlightHistSize can be set to a larger value than 5(s) for enhanced robustness to media coders that are idle
+    *  for long periods
+    * isL4s = true changes congestion window reaction to ECN marking to a scalable function, similar to DCTCP
+    */
+    ScreamTx(float lossBeta = kLossBeta,
+        float ecnCeBeta = kEcnCeBeta,
+        float queueDelayTargetMin = kQueueDelayTargetMin,
+        bool enableSbd = kEnableSbd,
+        float gainUp = kGainUp,
+        float gainDown = kGainDown,
+        int cwnd = 0,  // An initial cwnd larger than 2*mss
+        float cautiousPacing = 0.0f,
+        int bytesInFlightHistSize = 5,
+        bool isL4s = false,
+        bool openWindow = false);
+
+    ~ScreamTx();
+
+    /*
+    * Register a new stream {SSRC,PT} tuple,
+    *  with a priority value in the range ]0.0..1.0]
+    *  where 1.0 denotes the highest priority.
+    * It is recommended that at least one stream has prioritity 1.0.
+    * Bitrates are specified in bps
+    * See constant definitions above for an explanation of other default parameters
+    */
+    void registerNewStream(RtpQueueIface *rtpQueue,
+        uint32_t ssrc,
+        float priority,     // priority in range ]0.0 .. 1.0], 1.0 is highest
+        float minBitrate,   // Min target bitrate
+        float startBitrate, // Starting bitrate
+        float maxBitrate,   // Max target bitrate
+        float rampUpSpeed = kRampUpSpeed,
+        float maxRtpQueueDelay = kMaxRtpQueueDelay,
+        float txQueueSizeFactor = kTxQueueSizeFactor,
+        float queueDelayGuard = kQueueDelayGuard,
+        float lossEventRateScale = kLossEventRateScale,
+        float ecnCeEventRateScale = kEcnCeEventRateScale);
+
+    /*
+     * Updates the min and max bitrates for an existing stream
+     */
+    void updateBitrateStream(uint32_t ssrc,
+        float minBitrate,
+        float maxBitrate);
+
+    /*
+     * Access the configured RtpQueue of an existing stream
+     */
+    RtpQueueIface * getStreamQueue(uint32_t ssrc);
+
+    /*
+    * Call this function for each new video frame
+    *  Note : isOkToTransmit should be called after newMediaFrame
+    */
+    void newMediaFrame(uint64_t time_us, uint32_t ssrc, int bytesRtp);
+
+    /*
+    * Function determines if an RTP packet with SSRC can be transmitted
+    * Return values :
+    * 0.0  : RTP packet with SSRC can be immediately transmitted
+    *  addTransmitted must be called if packet is transmitted as a result of this
+    * >0.0 : Time [s] until this function should be called again
+    *   This can be used to start a timer
+    *   Note that a call to newMediaFrame or incomingFeedback should
+    *    cause an immediate call to isOkToTransmit
+    * -1.0 : No RTP packet available to transmit or send window is not large enough
+    */
+    float isOkToTransmit(uint64_t time_us, uint32_t &ssrc);
+
+    /*
+    * Add packet to list of transmitted packets
+    * should be called when an RTP packet transmitted
+    * Return time until isOkToTransmit can be called again
+    */
+    float addTransmitted(uint64_t timestamp_us, // Wall clock ts when packet is transmitted
+        uint32_t ssrc,
+        int size,
+        uint16_t seqNr);
+
+    /*
+    * New incoming feedback, this function
+    * triggers a CWND update
+    * The SCReAM timestamp is in jiffies, where the frequency is controlled
+    * by the timestamp clock frequency (default 1000Hz)
+    * The ackVector indicates recption of the 64 RTP SN prior to highestSeqNr
+    *  Note : isOkToTransmit should be called after incomingFeedback
+    * ecnCeMarkedBytes indicates the cumulative number of bytes that are ECN-CE marked
+    */
+    void incomingFeedback(uint64_t time_us,
+        uint32_t ssrc,         // SSRC of stream
+        uint32_t timestamp,    // SCReAM FB timestamp [jiffy]
+        uint16_t highestSeqNr, // Highest ACKed RTP sequence number
+        uint64_t ackVector,   // ACK vector
+        uint16_t ecnCeMarkedBytes = 0); // Number of ECN marked bytes
+
+    /*
+    * Parse feedback according to the format below. It is up to the
+    * wrapper application this RTCP from a compound RTCP if needed
+    * BT = 255, means that this is experimental use
+    *
+    * 0                   1                   2                   3
+    * 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |V=2|P|reserved |   PT=XR=207   |           length=6            |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                              SSRC                             |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |     BT=255    |    reserved   |         block length=4        |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                        SSRC of source                         |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * | Highest recv. seq. nr. (16b)  |         ECN_CE_bytes          |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                     Ack vector (b0-31)                        |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                     Ack vector (b32-63)                       |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    * |                    Timestamp (32bits)                         |
+    * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+    */
+    void incomingFeedback(uint64_t time_us,
+        unsigned char* buf,
+        int size);
+
+    /*
+    * Get the target bitrate for stream with SSRC
+    * NOTE!, Because SCReAM operates on RTP packets, the target bitrate will
+    *  also include the RTP overhead. This means that a subsequent call to set the
+    *  media coder target bitrate must subtract an estimate of the RTP + framing
+    *  overhead. This is not critical for Video bitrates but can be important
+    *  when SCReAM is used to congestion control e.g low bitrate audio streams
+    * Function returns -1 if a loss is detected, this signal can be used to
+    *  request a new key frame from a video encoder
+    */
+    float getTargetBitrate(uint32_t ssrc);
+
+    /*
+    * Set target priority for a given stream, priority value should be in range ]0.0..1.0]
+    */
+    void setTargetPriority(uint32_t ssrc, float aPriority);
+
+    /*
+    * Get verbose log information
+    */
+    void getLog(float time, char *s);
+
+    /*
+    * Get verbose log information
+    */
+    void getShortLog(float time, char *s);
+
+    /*
+    * Get overall simplified statistics
+    */
+    void getStatistics(float time, char *s);
+
+
+private:
+    /*
+    * Struct for list of RTP packets in flight
+    */
+    struct Transmitted {
+        uint64_t timeTx_us;
+        uint32_t timestamp;
+        int size;
+        uint16_t seqNr;
+        bool isUsed;
+        bool isAcked;
+        bool isAfterReceivedEdge;
+
+    };
+
+    /*
+      * Statistics for the network congestion control and the
+      *  stream[0]
+      */
+    class Statistics {
+    public:
+        Statistics();
+        void getSummary(float time, char s[]);
+        void add(float rateTx, float rateLost, float rtt, float queueDelay);
+    private:
+        float lossRateHist[kLossRateHistSize];
+        float rateLostAcc;
+        int rateLostN;
+        int lossRateHistPtr;
+        float avgRateTx;
+        float avgRtt;
+        float avgQueueDelay;
+        float sumRateTx;
+        float sumRateLost;
+
+    };
+
+
+    /*
+    * One instance is created for each {SSRC,PT} tuple
+    */
+    class Stream {
+    public:
+        Stream(ScreamTx *parent,
+            RtpQueueIface *rtpQueue,
+            uint32_t ssrc,
+            float priority,
+            float minBitrate,
+            float startBitrate,
+            float maxBitrate,
+            float rampUpSpeed,
+            float maxRtpQueueDelay,
+            float txQueueSizeFactor,
+            float queueDelayGuard,
+            float lossEventRateScale,
+            float ecnCeEventRateScale);
+
+        float getMaxRate();
+
+        float getTargetBitrate();
+
+        void updateRate(uint64_t time_us);
+
+        void updateTargetBitrateI(float br);
+
+        void updateTargetBitrate(uint64_t time_us);
+
+        bool isRtpQueueDiscard();
+
+        bool isMatch(uint32_t ssrc_) { return ssrc == ssrc_; };
+        ScreamTx *parent;
+        RtpQueueIface *rtpQueue;      // RTP Packet queue
+        uint32_t ssrc;            // SSRC of stream
+        float rampUpSpeed;
+        float maxRtpQueueDelay;
+        float txQueueSizeFactor;
+        float queueDelayGuard;
+        float lossEventRateScale;
+        float ecnCeEventRateScale;
+
+        int credit;             // Credit that is received if another stream gets
+        //  priority to transmit
+        int creditLost;         // Amount of lost (unused) credit, input to
+        //  adjustPriorities function
+        float targetPriority;   // Stream target priority
+        float targetPriorityInv;// Stream target priority inverted
+        int bytesTransmitted;   // Number of bytes transmitted
+        int bytesAcked;         // Number of ACKed bytes
+        int bytesLost;          // Number of lost bytes
+        float rateTransmitted;  // Transmitted rate
+        float rateAcked;        // ACKed rate
+        float rateLost;         // Lost packets (bit)rate
+        uint16_t hiSeqAck;      // Highest sequence number ACKed
+        uint16_t hiSeqTx;       // Highest sequence number transmitted
+        float minBitrate;       // Min bitrate
+        float maxBitrate;       // Max bitrate
+        float targetBitrate;    // Target bitrate
+        float targetBitrateI;   // Target bitrate inflection point
+        bool wasFastStart;      // Was fast start
+        bool lossEventFlag;     // Was loss event
+        bool ecnCeEventFlag;    // Was ECN mark event
+        float txSizeBitsAvg;    // Avergage nymber of bits in RTP queue
+        uint64_t lastBitrateAdjustT_us; // Last time rate was updated for this stream
+        uint64_t lastRateUpdateT_us;    // Last time rate estimate was updated
+        uint64_t lastTargetBitrateIUpdateT_us;    // Last time rate estimate was updated
+
+        uint64_t timeTxAck_us;  // timestamp when higest ACKed SN was transmitted
+
+        int bytesRtp;           // Number of RTP bytes from media coder
+        float rateRtp;          // Media bitrate
+        float rateRtpHist[kRateUpDateSize];
+        float rateAckedHist[kRateUpDateSize];
+        float rateLostHist[kRateUpDateSize];
+        float rateTransmittedHist[kRateUpDateSize];
+        int rateUpdateHistPtr;
+        float targetBitrateHist[kTargetBitrateHistSize];
+        int targetBitrateHistPtr;
+        uint64_t targetBitrateHistUpdateT_us;
+        float targetRateScale;
+
+        bool isActive;
+        uint64_t lastFrameT_us;
+        uint64_t initTime_us;
+        bool rtpQueueDiscard;
+        uint64_t lastRtpQueueDiscardT_us;
+        bool wasRepairLoss;
+        bool repairLoss;
+        int lastLossDetectIx;
+        uint16_t ecnCeMarkedBytes;
+
+
+        Transmitted txPackets[kMaxTxPackets];
+        int txPacketsPtr;
+
+    };
+
+    /*
+    * Initialize values
+    */
+    void initialize(uint64_t time_us);
+
+    /*
+    * Mark ACKed RTP packets
+    */
+    void markAcked(uint64_t time_us, struct Transmitted *txPackets, uint16_t highestSeqNr, uint64_t ackVector, uint32_t timestamp, Stream *stream);
+
+    /*
+    * Update CWND
+    */
+    void updateCwnd(uint64_t time_us);
+
+    /*
+    * Detect lost RTP packets
+    */
+    void detectLoss(uint64_t time_us, struct Transmitted *txPackets, uint16_t highestSeqNr, Stream *stream);
+
+    /*
+    * Call this function at regular intervals to determine active streams
+    */
+    void determineActiveStreams(uint64_t time_us);
+
+    /*
+    * Compute 1st order prediction coefficient of queue delay multiplied by the queue delay fraction
+    * A value [0.0..1.0] indicates if queue delay is increasing
+    * This gives a rough estimate of how the queuing delay delay evolves
+    */
+    void computeQueueDelayTrend();
+
+    /*
+    * Estimate one way delay [jiffy] and updated base delay
+    * Base delay is not subtracted
+    */
+    uint32_t estimateOwd(uint64_t time_us);
+
+    /*
+    * return base delay [jiffy]
+    */
+    uint32_t getBaseOwd();
+
+    /*
+    * Compute indicators of shared bottleneck
+    */
+    void computeSbd();
+
+    /*
+    * True if competing (TCP)flows detected
+    */
+    bool isCompetingFlows();
+
+    /*
+    * Get stream with corresponding SSRC
+    */
+    Stream* getStream(uint32_t ssrc);
+
+    /*
+    * Get matching stream index for this SSRC tuple,
+    *  return -1 if no match
+    */
+    int getStreamIndex(uint32_t ssrc);
+
+    /*
+    * Adjust stream bitrates to reflect priorities
+    */
+    void adjustPriorities(uint64_t time_us);
+
+    /*
+    * Get the prioritized stream
+    *  Return NULL if no stream with
+    *  with RTP packets
+    */
+    Stream* getPrioritizedStream(uint64_t time_us);
+
+    /*
+    * Add credit to unserved streams
+    */
+    void addCredit(uint64_t time_us,
+        Stream* servedStream,
+        int transmittedBytes);
+
+    /*
+    * Subtract used credit
+    */
+    void subtractCredit(uint64_t time_us,
+        Stream* servedStream,
+        int transmittedBytes);
+
+    /*
+    * return 1 if in fast start
+    */
+    int isInFastStart() { return inFastStart ? 1 : 0; };
+
+    /*
+    * Get the fraction between queue delay and the queue delay target
+    */
+    float getQueueDelayFraction();
+
+    /*
+    * Get the queuing delay trend
+    */
+    float getQueueDelayTrend();
+
+    /*
+    * Variables for network congestion control
+    */
+
+    /*
+    * Related to computation of queue delay and target queuing delay
+    */
+    float lossBeta;
+    float ecnCeBeta;
+    float queueDelayTargetMin;
+    bool enableSbd;
+    float gainUp;
+    float gainDown;
+    float cautiousPacing;
+
+    uint64_t sRttSh_us;
+    uint64_t sRtt_us;
+    float sRtt;
+    uint32_t ackedOwd;
+    uint32_t baseOwd;
+
+    uint32_t baseOwdHist[kBaseOwdHistSize];
+    int baseOwdHistPtr;
+    uint32_t baseOwdHistMin;
+    float queueDelay;
+    float queueDelayFractionAvg;
+    float queueDelayFractionHist[kQueueDelayFractionHistSize];
+    int queueDelayFractionHistPtr;
+    float queueDelayTrend;
+    float queueDelayTarget;
+    float queueDelayNormHist[kQueueDelayNormHistSize];
+    int queueDelayNormHistPtr;
+    float queueDelaySbdVar;
+    float queueDelaySbdMean;
+    float queueDelaySbdSkew;
+    float queueDelaySbdMeanSh;
+    float queueDelayMax;
+
+    /*
+    * CWND management
+    */
+    int bytesNewlyAcked;
+    int mss; // Maximum Segment Size
+    int cwnd; // congestion window
+    int cwndMin;
+    bool openWindow;
+    int bytesInFlight;
+    int bytesInFlightLog;
+    int bytesInFlightHistLo[kBytesInFlightHistSizeMax];
+    int bytesInFlightHistHi[kBytesInFlightHistSizeMax];
+    int bytesInFlightHistSize;
+    int bytesInFlightHistPtr;
+    int bytesInFlightMaxLo;
+    int bytesInFlightHistLoMem;
+    int bytesInFlightMaxHi;
+    int bytesInFlightHistHiMem;
+    float maxBytesInFlight;
+    int accBytesInFlightMax;
+    int nAccBytesInFlightMax;
+    float rateTransmitted;
+    float rateAcked;
+    float queueDelayTrendMem;
+    float maxRate;
+    uint64_t lastCwndUpdateT_us;
+    bool isL4s;
+    float l4sAlpha;
+    int bytesMarkedThisRtt;
+    int bytesDeliveredThisRtt;
+    uint64_t lastL4sAlphaUpdateT_us;
+    /*
+    * Loss event
+    */
+    bool lossEvent;
+    bool wasLossEvent;
+    float lossEventRate;
+
+    /*
+    * ECN-CE
+    */
+    bool ecnCeEvent;
+
+    /*
+    * Fast start
+    */
+    bool inFastStart;
+
+    /*
+    * Transmission scheduling
+    */
+    uint64_t paceInterval_us;
+    float paceInterval;
+    float rateTransmittedAvg;
+
+    /*
+    * Update control variables
+    */
+    bool isInitialized;
+    uint64_t lastSRttUpdateT_us;
+    uint64_t lastBaseOwdAddT_us;
+    uint64_t baseOwdResetT_us;
+    uint64_t lastAddToQueueDelayFractionHistT_us;
+    uint64_t lastBytesInFlightT_us;
+    uint64_t lastCongestionDetectedT_us;
+    uint64_t lastLossEventT_us;
+    uint64_t lastTransmitT_us;
+    uint64_t nextTransmitT_us;
+    uint64_t lastRateUpdateT_us;
+    uint64_t lastAdjustPrioritiesT_us;
+    uint64_t lastRttT_us;
+    uint64_t lastBaseDelayRefreshT_us;
+    uint64_t initTime_us;
+    float queueDelayMin;
+    float queueDelayMinAvg;
+
+    /*
+    * Variables for multiple steams handling
+    */
+    Stream *streams[kMaxStreams];
+    int nStreams;
+
+    /*
+      * Statistics
+      */
+    Statistics *statistics;
+
+};
+#endif
diff --git a/RPI/scream/scream_sender/code/cmake_install.cmake b/RPI/scream/scream_sender/code/cmake_install.cmake
new file mode 100644
index 0000000..beeac27
--- /dev/null
+++ b/RPI/scream/scream_sender/code/cmake_install.cmake
@@ -0,0 +1,34 @@
+# Install script for directory: /home/pi/scream/scream_sender/code
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+  set(CMAKE_INSTALL_PREFIX "/usr/local")
+endif()
+string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+  if(BUILD_TYPE)
+    string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+           CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+  else()
+    set(CMAKE_INSTALL_CONFIG_NAME "")
+  endif()
+  message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+endif()
+
+# Set the component getting installed.
+if(NOT CMAKE_INSTALL_COMPONENT)
+  if(COMPONENT)
+    message(STATUS "Install component: \"${COMPONENT}\"")
+    set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+  else()
+    set(CMAKE_INSTALL_COMPONENT)
+  endif()
+endif()
+
+# Install shared libraries without execute permission?
+if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
+  set(CMAKE_INSTALL_SO_NO_EXE "1")
+endif()
+
diff --git a/RPI/scream/scream_sender/code/scream_sender.cpp b/RPI/scream/scream_sender/code/scream_sender.cpp
new file mode 100644
index 0000000..ef05df1
--- /dev/null
+++ b/RPI/scream/scream_sender/code/scream_sender.cpp
@@ -0,0 +1 @@
+// Scream sender side wrapper
#include "ScreamTx.h"
#include "RtpQueue.h"
#include "sys/socket.h"
#include "sys/types.h"
#include "netinet/in.h"
#include <string.h> /* needed for memset */
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <sys/time.h>
#include <iostream>
#include <pthread.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/time.h>
#include <signal.h>
#include <math.h>
struct itimerval timer;
struct sigaction sa;

using namespace std;

#define BUFSIZE 2048
#define MIN_PACE_INTERVAL 0.001
#define HTTP_BUF_SIZE 10000
#define MAX_SOURCES 6
#define KEEP_ALIVE_PKT_SIZE 1

int PT = 98;
int http_sock = 0;
int fd_out_rtp;
int fd_in_rtp[MAX_SOURCES];
ScreamTx *screamTx = 0;
RtpQueue *rtpQueue[MAX_SOURCES] = {0,0,0,0,0,0};
int nSources = 0;
float delayTarget = 0.1f;

char *auth;

#define ECN_CAPABLE
/*
* ECN capable
* 0 = Not-ECT
* 1 = ECT(0)
* 2 = ECT(1)
*/
int ect = 0;

char *out_ip = "192.168.0.21";
int out_port = 30110;
char *in_ip[MAX_SOURCES];
int in_port[MAX_SOURCES];
uint32_t in_ssrc[MAX_SOURCES];
float priority[MAX_SOURCES] = {1.0,1.0,1.0,1.0,1.0,1.0};
float congestionScaleFactor = 0.9;
int bytesInFlightHistSize = 5;
float maxRate = 8192e3f;

struct sockaddr_in in_rtp_addr[MAX_SOURCES];
struct sockaddr_in out_rtp_addr;
struct sockaddr_in in_rtcp_addr;
struct sockaddr_in http_addr;

socklen_t addrlen_out_rtp;
socklen_t addrlen_dummy_rtcp;
uint64_t lastLogT = 0;

socklen_t addrlen_in_rtp[MAX_SOURCES] = {
  sizeof(in_rtp_addr[0]),
  sizeof(in_rtp_addr[1]),
  sizeof(in_rtp_addr[2]),
  sizeof(in_rtp_addr[3]),
  sizeof(in_rtp_addr[4]),
  sizeof(in_rtp_addr[5])};
socklen_t addrlen_in_rtcp = sizeof(in_rtcp_addr);
pthread_mutex_t lock_scream;
pthread_mutex_t lock_rtp_queue;

// Accumulated pace time, used to avoid starting very short pace timers
//  this can save some complexity at very higfh bitrates
float accumulatedPaceTime = 0.0f;
bool paceTimerRunning = false;

int lastQuantRate[MAX_SOURCES] = {0,0,0,0,0,0};

const void sendCoderCommand(char *buf, char *ip);
void *txRtpThread(void *arg);
void *videoControlThread(void *arg);
int setup();
void *rxRtcpThread(void *arg);
void *rxRtpThread5(void *arg);
void *rxRtpThread4(void *arg);
void *rxRtpThread3(void *arg);
void *rxRtpThread2(void *arg);
void *rxRtpThread1(void *arg);
void *rxRtpThread0(void *arg);
void trySendRtp(uint64_t time);
long getTimeInUs(){
  struct timeval tp;
  gettimeofday(&tp, NULL);
  long us = tp.tv_sec * 1000000 + tp.tv_usec;
  return us;
}
uint64_t t0 = getTimeInUs();
uint64_t lastT = getTimeInUs();

volatile sig_atomic_t done = 0;
bool stopThread = false;
void stopAll(int signum)
{
  stopThread = true;
}

void closeSockets(int signum)
{
    exit(0);
}

/*
* Send a packet
*/
void sendPacket(char* buf, int size) {
  sendto(fd_out_rtp, buf, size, 0, (struct sockaddr *)&out_rtp_addr, sizeof(out_rtp_addr));
}

int main(int argc, char* argv[]) {
  /*
  * Parse command line
  */
  if (argc <= 1) {
    cerr << "Usage : " << endl << " scream_sender <options> auth nsources out_ip out_port in_ip_1 in_port_1 in_ssrc_1 prio_1 .. in_ip_n in_port_n in_ssrc_n prio_n" << endl;
    cerr << " -ect n       : ECN capable transport, n = 1 or 2 for ECT(0) or ECT(1), 0 for not-ECT" << endl;
    cerr << " -scale val   : Congestion scale factor, range [0.5..1.0], default = 0.9" << endl;
    cerr << "                 it can be necessary to set scale 1.0 if the LTE modem drops packets" << endl;
    cerr << "                 already at low congestion levels." << endl;
    cerr << " -delaytarget : Sets a queue delay target (default = 0.1s) " << endl;
    cerr << " -cwvmem      : Sets the memory of the congestion window validation (default 5s), max 60s" << endl;
    cerr << "                 a larger memory can be beneficial in remote applications where the video input" << endl;
    cerr << "                 is static for long periods. " << endl; 
    cerr << " -maxrate     : Set max rate [kbps], default 8192." << endl;
    cerr << " auth         : User authorization string base64 encoded version of user:password of IP camera" << endl;
    cerr << "                 use eg. the Linux command " << endl;
    cerr << "                 echo -n auser:apassword | base64 " << endl;
    cerr << " nsources     : Number of sources, min=1, max=" << MAX_SOURCES << endl;
    cerr << " out_ip       : remote (SCReAM receiver) IP address" << endl;
    cerr << " out_port     : remote (SCReAM receiver) port" << endl;
    cerr << " in_ip_1      : IP address for video coder 1 " << endl;
    cerr << " in_port_1    : port for RTP media from video coder 1 " << endl;
    cerr << " in_ssrc_1    : SSRC (hexadecimal) for RTP media from video coder 1 " << endl;
    cerr << " prio_1       : Bitrate priority for video coder 1, range [0.1..1.0] " << endl;
    cerr << " ." << endl;
    cerr << " ." << endl;
    cerr << " in_ip_n      : IP address for video coder n " << endl;
    cerr << " in_port_n    : port for RTP media from video coder n " << endl;
    cerr << " in_ssrc_n    : SSRC (hexadecimal) for RTP media from video coder n " << endl;
    cerr << " prio_n       : Bitrate priority for video coder n, range [0.1..1.0] " << endl;
    exit(-1);
  }
  int ix = 1;
  int nExpectedArgs = 2+2+1;
  while (strstr(argv[ix],"-")) {
    if (strstr(argv[ix],"-ect")) {
      ect = atoi(argv[ix+1]);
      ix+=2;
      nExpectedArgs += 2;
      if (ect < 0 || ect > 2) {
        cerr << "ect must be 0, 1 or 2 " << endl;
        exit(0);
      }
    }
    if (strstr(argv[ix],"-scale")) {
      congestionScaleFactor = atof(argv[ix+1]);
      ix+=2;
      nExpectedArgs += 2;
    }
    if (strstr(argv[ix],"-delaytarget")) {
      delayTarget = atof(argv[ix+1]);
      ix+=2;
      nExpectedArgs += 2;
    }
    if (strstr(argv[ix],"-cwvmem")) {
      bytesInFlightHistSize = atoi(argv[ix+1]);
      ix+=2;
      nExpectedArgs += 2;
      if (bytesInFlightHistSize > kBytesInFlightHistSizeMax || bytesInFlightHistSize < 2) {
        cerr << "cwvmem must be in range [2 .. " << kBytesInFlightHistSizeMax << "]" << endl;
        exit(0);
      }
    }
    if (strstr(argv[ix],"-maxrate")) {
      maxRate = atoi(argv[ix+1])*1000.0f;
      ix+=2;
      nExpectedArgs += 2;
    }
  }
  auth = argv[ix]; ix++;
  nSources = atoi(argv[ix]);
  nExpectedArgs += nSources*4;
  ix++;
  if (nSources < 1 || nSources > MAX_SOURCES) {
    cerr << "number of sources must be in interval [0.." << MAX_SOURCES << "]" << endl;
    exit(0);
  }
  if (argc-1 != nExpectedArgs-1) {
    cerr << "expected " << (nExpectedArgs-1) << " arguments, but see " << (argc-1) << " ditto ?" << endl;
    exit(0);
  }
  out_ip = argv[ix];ix++;
  out_port = atoi(argv[ix]);ix++;
  for (int n=0; n < nSources; n++) {
    char s[20];
    in_ip[n] = argv[ix];ix++;
    in_port[n] = atoi(argv[ix]);ix++;
    strcpy(s, argv[ix]);ix++;
    sscanf(s,"%x",&in_ssrc[n]);
    priority[n] = atof(argv[ix]);ix++;
  }

  if (setup() == 0)
    return 0;

  struct sigaction action;
  memset(&action, 0, sizeof(struct sigaction));
  action.sa_handler = stopAll;
  sigaction(SIGTERM, &action, NULL);
  sigaction(SIGINT, &action, NULL);

  char buf[HTTP_BUF_SIZE];

  cerr << "Configure media sources  "<<endl;
  for (int n=0; n < nSources; n++) {
    sprintf(buf, "GET /cgi-bin/set_h264?nr_h264_bandwidth=%d HTTP/1.0\r\nHost: %s\r\nAuthorization: Basic %s\r\n\r\n",
      1024, in_ip[n], auth);
      sendCoderCommand(buf, in_ip[n]);
    sprintf(buf, "GET /cgi-bin/set_h264?nr_h264_quality=9 HTTP/1.0\r\nHost: %s\r\nAuthorization: Basic %s\r\n\r\n",
      in_ip[n],auth);
    sendCoderCommand(buf, in_ip[n]);
  }

  cerr << "Scream sender started "<<endl;
  pthread_mutex_init(&lock_scream, NULL);

  pthread_t tx_rtp_thread;
  pthread_t rx_rtp_thread[MAX_SOURCES];
  pthread_t rx_rtcp_thread;
  pthread_t video_thread;

  /* Create Transmit RTP thread */
  pthread_create(&tx_rtp_thread,NULL,txRtpThread,"RTCP thread...");
  cerr << "RX RTP thread(s) started" << endl;

  /* Create Receive RTP thread(s) */
  pthread_create(&rx_rtp_thread[0],NULL,rxRtpThread0,"RTP thread 0...");
  if (nSources > 1)
    pthread_create(&rx_rtp_thread[1],NULL,rxRtpThread1,"RTP thread 1...");
  if (nSources > 2)
    pthread_create(&rx_rtp_thread[2],NULL,rxRtpThread2,"RTP thread 2...");
  if (nSources > 3)
    pthread_create(&rx_rtp_thread[3],NULL,rxRtpThread3,"RTP thread 3...");
  if (nSources > 4)
    pthread_create(&rx_rtp_thread[4],NULL,rxRtpThread4,"RTP thread 4...");
  if (nSources > 5)
    pthread_create(&rx_rtp_thread[5],NULL,rxRtpThread5,"RTP thread 5...");
  cerr << "RX RTP thread(s) started" << endl;

  /* Create RTCP thread */
  pthread_create(&rx_rtcp_thread,NULL,rxRtcpThread,"RTCP thread...");
  cerr << "RTCP thread started" << endl;

  /* Create Video control thread */
  pthread_create(&video_thread, NULL, videoControlThread, "Video control thread...");
  cerr << "Media control thread started" << endl;

  while(!stopThread) {
    uint64_t time_us = getTimeInUs()-t0;
    if (time_us-lastLogT > 200000) {
      char s[1000];
      char s1[1000];
      float time_s = (time_us)/1e6f;
      screamTx->getShortLog(time_s, s1);
      sprintf(s,"%8.3f, %s ", time_s, s1);
      cout << s << endl;

      
      /*
      * Send statistics to receiver this can be used to 
      * verify reliability of remote control 
      */
      s1[0] = 0x80;
      s1[1] = 0x7F; // Set PT = 0x7F for statistics packet
      memcpy(&s1[2],s,strlen(s));
      sendPacket(s1, strlen(s)+2);
    
      /* 
      * Send SSRC map to receiver to enable 
      * correct mapping of cameras to displays
      */
      s1[0] = 0x80;
      s1[1] = 0x7E; // Set PT = 0x7E for SSRC map
      for (int n=0; n < nSources; n++) {
         /*
         * Write the SSRCs (in network byte order)
         */ 
         uint32_t tmp_l;
         tmp_l = htonl(in_ssrc[n]);
         memcpy(s1 + 2 + n*4, &tmp_l, 4);
      }
      sendPacket(s1, 2+nSources*4);

      lastLogT = time_us;
    }

    usleep(10000);
  };

  usleep(500000);
  close(fd_out_rtp);
  for (int n = 0; n < nSources; n++)
    close(fd_in_rtp[n]);
}

/*
* Lotsalotsa functions...
*/

/*
* Quantize table for Pansonic WV-SBV111M at 1280*960 resolution
*/
int panasonicRates[] =  { 256, 384, 512, 768,1024,1536,2048,3072,4096,6144,8192};
int panasonicQuality[] = { 9,    9,   9,   7,   5,   3,   3,   3,   1,   1,   1};
int panasonicRatesN = 11;
/*
* Quantize the target bitrate to the closest value in a geometric sense
*/
int panasonicQuantizeRate(int rate) {
  int ix = 0;
  double minErr = 1e6;

  while (rate > panasonicRates[ix+1])
  ix++;
  if (ix > 0) {

    double r1 = panasonicRates[ix];
    double r2 = panasonicRates[ix+1];

    double d1 = (rate-r1)/(r2-r1);
    double d2 = (r2-rate)/(r2-r1);

    if (d1*4 > d2)
    ix++;
  }
  return panasonicRates[ix];
}

/*
* Get the appropriate quality setting for the given target bitrate
*/
int panasonicGetQuality(int rate) {
  for (int n=0; n < panasonicRatesN; n++) {
    if (rate == panasonicRates[n])
      return panasonicQuality[n];
  }
}

/*
  Extract the sequence number and the timestamp from the RTP header
    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |V=2|P|X|  CC   |M|     PT      |       sequence number         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                           timestamp                           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |           synchronization source (SSRC) identifier            |
   +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
   |            contributing source -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
*/
void parseRtp(unsigned char *buf, uint16_t* seqNr, uint32_t* timeStamp, unsigned char *pt) {
  uint16_t rawSeq;
  uint32_t rawTs;
  memcpy(&rawSeq, buf + 2, 2);
  memcpy(&rawTs, buf + 4, 4);
  memcpy(pt,buf+1,1);
  *seqNr = ntohs(rawSeq);
  *timeStamp  = ntohl(rawTs);
}

/*
 * Transmit a packet if possible.
 * If not allowed due to packet pacing restrictions,
 * then sleep
 */
void *txRtpThread(void *arg) {
  int size;
  uint16_t seqNr;
  char buf[2000];
  uint64_t time_us = getTimeInUs()-t0;
  int sleepTime_us = 10;
  float retVal = 0.0f;
  int sizeOfQueue;
  uint32_t ssrc;

  for (;;) {
    if (stopThread) {
      return NULL;
    }  
    time_us = getTimeInUs()-t0;
    sleepTime_us = 10;
    retVal = 0.0f;

    /*
    * Check if send window allows transmission and there is atleast one stream 
    *  with RTP packets in queue
    */
    pthread_mutex_lock(&lock_scream);
    retVal = screamTx->isOkToTransmit(time_us, ssrc);
    pthread_mutex_unlock(&lock_scream);

    if (retVal != -1.0f) {
      /* 
      * Send window allows transmission and atleast one stream has packets in RTP queue
      * Get RTP queue for selected stream (ssrc)
      */ 
      RtpQueue *rtpQueue = (RtpQueue*) screamTx->getStreamQueue(ssrc);

      pthread_mutex_lock(&lock_rtp_queue);
      sizeOfQueue = rtpQueue->sizeOfQueue();
      pthread_mutex_unlock(&lock_rtp_queue);
      do {
         if (retVal == -1.0f) {
            sizeOfQueue = 0;
         } else {
            if (retVal > 0.0f )
               accumulatedPaceTime += retVal;
            if (retVal != -1.0 && accumulatedPaceTime <= MIN_PACE_INTERVAL) {
               /*
               * Get RTP packet from the selected RTP queue 
               */
               pthread_mutex_lock(&lock_rtp_queue);
               rtpQueue->pop(buf, size, seqNr);
               pthread_mutex_unlock(&lock_rtp_queue);

               /*
               * Transmit RTP packet
               */
               sendPacket(buf,size);

               /*
               * Register transmitted RTP packet
               */
               pthread_mutex_lock(&lock_scream);
               retVal = screamTx->addTransmitted(time_us, ssrc, size, seqNr);
               pthread_mutex_unlock(&lock_scream);
            }
       
            /*
            * Check if send window allows transmission and there is atleast one stream 
            *  with RTP packets in queue
            */
            retVal = screamTx->isOkToTransmit(time_us, ssrc);
            if (retVal == -1.0f) {
               /*
               * Send window full or no packets in any RTP queue
               */
               sizeOfQueue = 0;
            } else {
               /* 
               * Send window allows transmission and atleast one stream has packets in RTP queue
               * Get RTP queue for selected stream (ssrc)
               */ 
               rtpQueue = (RtpQueue*) screamTx->getStreamQueue(ssrc);
               pthread_mutex_lock(&lock_rtp_queue);
               sizeOfQueue = rtpQueue->sizeOfQueue();
               pthread_mutex_unlock(&lock_rtp_queue);
            }
         }
      } while (accumulatedPaceTime <= MIN_PACE_INTERVAL &&
           retVal != -1.0f &&
           sizeOfQueue > 0);

      if (accumulatedPaceTime > 0) {
        /*
        * Sleep for a while, this paces out packets
        */
	sleepTime_us = int (accumulatedPaceTime*1e6f);
	accumulatedPaceTime = 0.0f;
      }
    }
    usleep(sleepTime_us);
  }	
  return NULL;
}


int recvRtp(unsigned char *buf_rtp, int ix) {
  /*
  * Wait for RTP packets from the coder
  */
  int recvlen = recvfrom(fd_in_rtp[ix],
                         buf_rtp,
                         BUFSIZE,
                         0,
                         (struct sockaddr *)&in_rtp_addr[ix], &addrlen_in_rtp[ix]);
  if (stopThread)
    return 0;

  return recvlen;
}

void processRtp(unsigned char *buf_rtp, int recvlen, int ix) {
  uint64_t time_us = getTimeInUs();
  time_us = getTimeInUs()-t0; // We need time in microseconds, roughly ms granularity is OK
  uint16_t seqNr;
  uint32_t ts;
  unsigned char pt;

  parseRtp(buf_rtp, &seqNr, &ts, &pt);
  uint32_t pt_ = pt & 0x7F;
  if ((pt & 0x7F)==PT) {
    pthread_mutex_lock(&lock_rtp_queue);
    rtpQueue[ix]->push(buf_rtp, recvlen, seqNr, (time_us)*1e-6f);
    pthread_mutex_unlock(&lock_rtp_queue);

    pthread_mutex_lock(&lock_scream);
    screamTx->newMediaFrame(time_us, in_ssrc[ix], recvlen);
    pthread_mutex_unlock(&lock_scream);
  }
}

/*
* One thread for each media source (camera)
*/
void *rxRtpThread0(void *arg) {
  unsigned char buf_rtp[BUFSIZE];
  for (;;) {
    int len = recvRtp(buf_rtp,0);
    if (len > 0) {
      processRtp(buf_rtp, len, 0);
    }
  }
  return NULL;
}
void *rxRtpThread1(void *arg) {
  unsigned char buf_rtp[BUFSIZE];
  for (;;) {
    int len = recvRtp(buf_rtp,1);
    if (len > 0) {
      processRtp(buf_rtp, len, 1);
    }
  }
  return NULL;
}
void *rxRtpThread2(void *arg) {
  unsigned char buf_rtp[BUFSIZE];
  for (;;) {
    int len = recvRtp(buf_rtp,2);
    if (len > 0) {
      processRtp(buf_rtp, len, 2);
    }
  }
  return NULL;
}
void *rxRtpThread3(void *arg) {
  unsigned char buf_rtp[BUFSIZE];
  for (;;) {
    int len = recvRtp(buf_rtp,3);
    if (len > 0) {
      processRtp(buf_rtp, len, 3);
    }
  }
  return NULL;
}
void *rxRtpThread4(void *arg) {
  unsigned char buf_rtp[BUFSIZE];
  for (;;) {
    int len = recvRtp(buf_rtp,4);
    if (len > 0) {
      pthread_mutex_lock(&lock_scream);
      processRtp(buf_rtp, len, 4);
      pthread_mutex_unlock(&lock_scream);
    }
  }
  return NULL;
}
void *rxRtpThread5(void *arg) {
  unsigned char buf_rtp[BUFSIZE];
  for (;;) {
    int len = recvRtp(buf_rtp,5);
    if (len > 0) {
      processRtp(buf_rtp, len, 5);
    }
  }
  return NULL;
}

void *rxRtcpThread(void *arg) {
  /*
  * Wait for RTCP packets from receiver
  */
  unsigned char buf_rtcp[BUFSIZE];
  for (;;) {
    int recvlen = recvfrom(fd_out_rtp, buf_rtcp, BUFSIZE, 0, (struct sockaddr *)&in_rtcp_addr, &addrlen_in_rtcp);
    if (stopThread)
      return;
    uint64_t time_us = getTimeInUs()-t0; // We need time in microseconds, roughly ms granularity is OK

    if (recvlen > KEEP_ALIVE_PKT_SIZE) {
      pthread_mutex_lock(&lock_scream);
      screamTx->incomingFeedback(time_us, buf_rtcp, recvlen);
      pthread_mutex_unlock(&lock_scream);
    }
  }
  return NULL;
}

int setup() {
  for (int n=0; n < nSources; n++) {
    in_rtp_addr[n].sin_family = AF_INET;
    in_rtp_addr[n].sin_addr.s_addr = htonl(INADDR_ANY);
    in_rtp_addr[n].sin_port = htons(in_port[n]);
    if ((fd_in_rtp[n] = socket(AF_INET, SOCK_DGRAM, 0)) < 0) {
       char s[100];
       sprintf(s,"cannot create socket for incoming RTP media %d", n+1);
       perror(s);
       return 0;
    }
    if (bind(fd_in_rtp[n], (struct sockaddr *)&in_rtp_addr[n], sizeof(in_rtp_addr[n])) < 0) {
       char s[100];
       sprintf(s,"bind incoming_rtp_addr %d failed", n+1);
       perror(s);
       return 0;
    } else{
      cerr << "Listen on port " << in_port[n] << " to receive RTP media " << (n+1) << endl;
    }
  }

  memset(&out_rtp_addr,0,sizeof(struct sockaddr_in));
  out_rtp_addr.sin_family = AF_INET;
  inet_aton(out_ip, (in_addr*)&out_rtp_addr.sin_addr.s_addr);
  out_rtp_addr.sin_port = htons(out_port);
  addrlen_out_rtp = sizeof(out_rtp_addr);

  if ((fd_out_rtp = socket(AF_INET, SOCK_DGRAM, 0)) < 0) {
     perror("cannot create socket for outgoing RTP media");
     return 0;
  }

  /*
  * Set send buf reasonably high to avoid socket blocking
  */
  int sendBuff = 1000000;
  int res = setsockopt(fd_out_rtp, SOL_SOCKET, SO_SNDBUF, &sendBuff, sizeof(sendBuff));

  /*
  * Set ECN capability for outgoing socket using IP_TOS
  */
#ifdef ECN_CAPABLE
  int iptos = ect; // Check with wireshark
  res = setsockopt(fd_out_rtp, IPPROTO_IP, IP_TOS,  &iptos, sizeof(iptos));
  if (res < 0) {
      cerr << "Not possible to set ECN bits" << endl;
  }
  int tmp = 0;
  res = getsockopt(fd_out_rtp, IPPROTO_IP, IP_TOS,  &tmp, sizeof(tmp));
  if (iptos == tmp) {
      cerr << "ECN set successfully" << endl;
  } else {
      cerr << "ECN bits _not_ set successfully ? " << iptos  << " " << tmp << endl;
  }
#endif
  /*
  * Socket for incoming RTP media
  */
  in_rtcp_addr.sin_family = AF_INET;
  in_rtcp_addr.sin_port = htons(out_port);
  in_rtcp_addr.sin_addr.s_addr = htonl(INADDR_ANY);

  if (bind(fd_out_rtp, (struct sockaddr *)&in_rtcp_addr, sizeof(in_rtcp_addr)) < 0) {
      perror("bind outgoing_rtp_addr failed");
      return 0;
  } else {
    cerr<< "Listen on port "<< out_port <<" to receive RTCP from encoder "<<endl;
  }

  screamTx = new ScreamTx(congestionScaleFactor,
                          congestionScaleFactor,
                          delayTarget,
                          false,
                          1.0f,
                          10.0f,
                          12500,
                          false,
                          bytesInFlightHistSize, 
                          false,
                          false); 
  for (int n=0; n < nSources; n++) {
    rtpQueue[n] = new RtpQueue();

    screamTx->registerNewStream(rtpQueue[n],
                                in_ssrc[n], priority[n],
                                256e3f, 1000e3f, maxRate, 500e5f,
                                0.5f, 0.1f, 0.05f,
                                congestionScaleFactor, congestionScaleFactor);
  }
  return 1;
}

/*
* Create socket to Video encoder
* for rate commands etc.
*/
int create_tcp_socket() {
	int sock;
	if ((sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0){
		cerr << "Can't create TCP socket" << endl;
		exit(1);
	}
	return sock;
}

int setup_http(char *ip) {
	http_addr.sin_family = AF_INET;
	http_addr.sin_addr.s_addr = htonl(INADDR_ANY);
	inet_aton(ip, (in_addr*)&http_addr.sin_addr.s_addr);
	http_addr.sin_port = htons(80);
	if (connect(http_sock, (struct sockaddr *)&http_addr, sizeof(struct sockaddr)) < 0){
		cerr << "Could not connect to Video coder HTTP server " << ip << endl;
		exit(1);
	}
}

/*
* Send rate change request [bps]
*/
const void sendCoderCommand(char *buf, char *ip) {
  http_sock = create_tcp_socket();
  setup_http(ip);
  //Send the query to the server
  int sent = 0;
  int tmpres = 0;
  //cerr << "Send HTTP : " << buf << endl;
  bool errSend = false;
  /*
  * Send HTTP GET
  */
  while (sent < strlen(buf)) {
    tmpres = send(http_sock, buf + sent, strlen(buf) - sent, 0);
    if (tmpres == -1){
      cerr << "Can't send HTTP GET" << endl;
      errSend = true;
    }
    sent += tmpres;
  }
  if (true && !errSend) {
    memset(buf, 0, sizeof(buf));
    tmpres = recv(http_sock, buf, HTTP_BUF_SIZE, 0);
    if (tmpres > 0) {
      //cout << "HTTP response: " << buf << endl;
    }
  }
  close(http_sock);
}

void *videoControlThread(void *arg) {

  char buf[HTTP_BUF_SIZE];
  while (!stopThread) {
    for (int n=0; n < nSources; n++) {
      /*
      * Poll rate change for all media sources
      */
      float rate = screamTx->getTargetBitrate(in_ssrc[n]);
      if (rate > 0) {
        int rateQ = (int)(std::min(8192.0f,rate/1000.0f)+0.5f);
        rateQ = panasonicQuantizeRate(rateQ);
        if (lastQuantRate[n] != rateQ) {
           /*
           * HTTP access to media coder is slow, send command only if rate is changed
           */
           lastQuantRate[n] = rateQ;
           sprintf(buf, "GET /cgi-bin/set_h264?nr_h264_bandwidth=%d HTTP/1.0\r\nHost: %s\r\nAuthorization: Basic %s\r\n\r\n",
                   rateQ, in_ip[n],auth);
           sendCoderCommand(buf, in_ip[n]);
           sprintf(buf, "GET /cgi-bin/set_h264?nr_h264_quality=%d HTTP/1.0\r\nHost: %s\r\nAuthorization: Basic %s\r\n\r\n",
                   panasonicGetQuality(rateQ), in_ip[n],auth);
           sendCoderCommand(buf, in_ip[n]);
        }
      }
    }
    usleep(10000);
  }
}
\ No newline at end of file
diff --git a/RPI/talk.sh b/RPI/talk.sh
new file mode 100755
index 0000000..3721c4d
--- /dev/null
+++ b/RPI/talk.sh
@@ -0,0 +1,3 @@
+#!/bin/bash
+say() { local IFS=+;/usr/bin/mplayer -ao alsa -really-quiet -noconsolecontrols "http://translate.google.com/translate_tts?ie=UTF-8&client=tw-ob&q=$*&tl=en"; }
+say $*
-- 
GitLab