From 51d92e14aa20a85da739530aaa24ae7daaa6f8c2 Mon Sep 17 00:00:00 2001
From: Alkaid <zgf574564920@gmail.com>
Date: Sun, 11 Apr 2021 13:05:45 -0400
Subject: [PATCH] Add LICENSE and tune artifact README.txt for artifact
 submission (to publisher).

---
 LICENSE.TXT => KLEE-LICENSE.txt |  0
 LICENSE                         | 38 +++++++++++++++++++++++++++++++++
 artifact/README.txt             |  8 +++----
 3 files changed, 42 insertions(+), 4 deletions(-)
 rename LICENSE.TXT => KLEE-LICENSE.txt (100%)
 create mode 100644 LICENSE

diff --git a/LICENSE.TXT b/KLEE-LICENSE.txt
similarity index 100%
rename from LICENSE.TXT
rename to KLEE-LICENSE.txt
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 00000000..5a9ad393
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,38 @@
+MIT License
+
+Copyright (c) 2021 Gefei Zuo, efeslab, University of Michigan
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+==============================================================================
+
+Execution Reconstruction is built upon KLEE, adapts Cloud 9 Parallel Symbolic
+Execution Engine and uses third party software (e.g. stp, z3, klee-uclibc,
+etc.)
+They have additional or alternative copyrights, licenses, and/or retrictions:
+
+Program            License
+-------            -------
+KLEE               KLEE-LICENSE.txt
+Cloud9             CLOUD9-LICENSE
+klee-uclibc        third-party/klee-uclibc/COPYING.LIB
+stp                third-party/stp/{LICENSE, LICENSE_COMPONENTS}
+z3                 third-party/z3/LICENSE.txt
+minisat            third-party/minisat/LICENSE
+cryptominisat      third-party/cryptominisat/LICENSE.txt
diff --git a/artifact/README.txt b/artifact/README.txt
index 9086d1eb..774c9254 100644
--- a/artifact/README.txt
+++ b/artifact/README.txt
@@ -1,4 +1,4 @@
-* Artifact for submission "Reproducing Production Failures with Execution Reconstruction"
+* Artifact for submission "Execution Reconstruction: Harnessing Failure Reoccurrences for Failure Reproduction"
 
 Thank you for evaluating the software artifact of ER. This artifact is designed for the ACM Artifacts Available and Functional Badge.
 
@@ -10,10 +10,10 @@ Throughout this README, all commands should be executed in a terminal will be en
 
 ** Setup
 
-First, please download our artifact package paper618.tar.gz using the link provided on HotCrp and load it into docker.
+First, the docker image "er-docker.tar.gz" should be available in the same directory of this README.txt, Please load it into docker.
 E.g. on linux, run
 ```bash
-gzip -c -d paper618.tar.gz | docker load
+gzip -c -d er-docker.tar.gz | docker load
 ```
 Alternatively, if permitted to use external files from dockerhub, you can also simply pull our artifact image:
 ```bash
@@ -216,7 +216,7 @@ This is exactly what `/ER/third-party/bugbasev2/utils/run-er.sh` does.
 * List of claims from the paper supported by this artifact
 
 1. At the end of Introduction: Shepherded Symbolic Execution plus Key Data Value Selection can overcome solver bottlenecks.
-  Supported by ER can reproduce the failure with control-flow and selected data value. However, simply running KLEE, even with full control-flow trace but without data values, cannot reproduce the same failure.
+  ER can reproduce the failure with control-flow and selected data value. However, simply running KLEE, even with full control-flow trace but without data values, cannot reproduce the same failure.
   To compare ER with KLEE+control-flow trace, you need to disable the solver timeout detection so that you can symbolically replay the first iteration (which does not record data values) as long as possible.
   ```bash
   make replay.1.klee-out ENABLETIMEOUT=0