summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTCWG BuildSlave <tcwg-buildslave@linaro.org>2023-10-28 13:27:29 +0000
committerTCWG BuildSlave <tcwg-buildslave@linaro.org>2023-10-28 13:27:29 +0000
commit07e6f2efe94a639a5db04053e0d4831ace433498 (patch)
tree0c887efd1558cac83bf43b158a6ddbcb001fd578
parente446428b0a2982116fefb4c99919f05f73592526 (diff)
force: #507: 1: [TCWG CI] https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/507/
Results : | # reset_artifacts: | -10 | # build_aosp_toolchain: | -3 | # build_shadow_llvm: | -2 | # build_aosp: | -1 | # shadow build has no errors | 0 | # shadow.size present | 1 check_regression status : 0
-rw-r--r--01-reset_artifacts/console.log.xzbin2256 -> 2248 bytes
-rw-r--r--02-build_aosp_toolchain/console.log.xzbin273348 -> 274736 bytes
-rw-r--r--03-build_shadow_llvm/console.log.xzbin210596 -> 209756 bytes
-rw-r--r--04-build_aosp/console.log.xzbin43128 -> 41516 bytes
-rw-r--r--05-process_shadow_data/console.log.xzbin268 -> 268 bytes
-rw-r--r--06-check_regression/binary.improvements4
-rw-r--r--06-check_regression/console.log.xzbin3260 -> 3148 bytes
-rw-r--r--git/llvm_rev2
-rw-r--r--jenkins/build-name2
-rw-r--r--jenkins/notify-full.log6157
-rw-r--r--jenkins/notify-init.log171
-rw-r--r--jenkins/rewrite.log22
-rw-r--r--jenkins/run-build.env12
-rw-r--r--manifest.sh10
-rw-r--r--notify/jira/comment-template.txt2
-rw-r--r--notify/mail-body.txt24
-rw-r--r--notify/mail-recipients.txt2
-rw-r--r--notify/mail-subject.txt2
-rw-r--r--results-vs-first/results.csv30
-rw-r--r--results-vs-prev/results.csv36
-rw-r--r--size.csv34
21 files changed, 6124 insertions, 386 deletions
diff --git a/01-reset_artifacts/console.log.xz b/01-reset_artifacts/console.log.xz
index cc374b7..ce5cd35 100644
--- a/01-reset_artifacts/console.log.xz
+++ b/01-reset_artifacts/console.log.xz
Binary files differ
diff --git a/02-build_aosp_toolchain/console.log.xz b/02-build_aosp_toolchain/console.log.xz
index d5505d1..db87c4b 100644
--- a/02-build_aosp_toolchain/console.log.xz
+++ b/02-build_aosp_toolchain/console.log.xz
Binary files differ
diff --git a/03-build_shadow_llvm/console.log.xz b/03-build_shadow_llvm/console.log.xz
index c773481..a751e0d 100644
--- a/03-build_shadow_llvm/console.log.xz
+++ b/03-build_shadow_llvm/console.log.xz
Binary files differ
diff --git a/04-build_aosp/console.log.xz b/04-build_aosp/console.log.xz
index 33c9395..eef1242 100644
--- a/04-build_aosp/console.log.xz
+++ b/04-build_aosp/console.log.xz
Binary files differ
diff --git a/05-process_shadow_data/console.log.xz b/05-process_shadow_data/console.log.xz
index acfe491..935db2d 100644
--- a/05-process_shadow_data/console.log.xz
+++ b/05-process_shadow_data/console.log.xz
Binary files differ
diff --git a/06-check_regression/binary.improvements b/06-check_regression/binary.improvements
index 7d41987..3aefa32 100644
--- a/06-check_regression/binary.improvements
+++ b/06-check_regression/binary.improvements
@@ -1,3 +1 @@
--1,out/soong/.intermediates/system/libbase/libbase/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/libbase.so now builds successfully
--1,out/soong/.intermediates/external/libcxx/libc++/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/libc++.so now builds successfully
--1,out/soong/.intermediates/external/boringssl/libcrypto/android_arm64_armv8-2a_cortex-a55_shared_apex31/unhashed/libcrypto.so now builds successfully
+-1,out/soong/.intermediates/art/sigchainlib/libsigchain/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libsigchain.so reduced in size by -1% from 21580 to 21464
diff --git a/06-check_regression/console.log.xz b/06-check_regression/console.log.xz
index bc550b9..4707a9b 100644
--- a/06-check_regression/console.log.xz
+++ b/06-check_regression/console.log.xz
Binary files differ
diff --git a/git/llvm_rev b/git/llvm_rev
index 0c7943b..d05e08f 100644
--- a/git/llvm_rev
+++ b/git/llvm_rev
@@ -1 +1 @@
-3f4bf998e897274758006f8423f2bdcd68cb2d55
+c249e2778602207f1e770c57123d14bdf078308f
diff --git a/jenkins/build-name b/jenkins/build-name
index 6d0072c..70ec796 100644
--- a/jenkins/build-name
+++ b/jenkins/build-name
@@ -1 +1 @@
-#505-aosp_superproject-toolchain_superproject-R1
+#507-llvm-R1-force
diff --git a/jenkins/notify-full.log b/jenkins/notify-full.log
index 4a7cade..7e3758c 100644
--- a/jenkins/notify-full.log
+++ b/jenkins/notify-full.log
@@ -1,25 +1,25 @@
++ pwd
++ cat
-+ remote_exec build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075: ./jenkins-scripts/round-robin-notify.sh '@@rr[top_artifacts]' artifacts __TCWG_JIRA_TOKEN ijQW9spm0p7HwZnUtLFx7CCA __stage full __verbose true __build_script tcwg_aosp-build.sh
++ remote_exec build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224: ./jenkins-scripts/round-robin-notify.sh '@@rr[top_artifacts]' artifacts __TCWG_JIRA_TOKEN ijQW9spm0p7HwZnUtLFx7CCA __stage full __verbose true __build_script tcwg_aosp-build.sh
+ set -euf -o pipefail
+ local host
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -d: -f 1
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
-+ host=build-08.tcwglab
++ host=build-05.tcwglab
+ local port
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -s -d: -f 2
+ port=
+ local dir
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -s -d: -f 3
-+ dir=/home/tcwg-buildslave/workspace/tcwg_aosp_0
++ dir=/home/tcwg-buildslave/workspace/tcwg_aosp_1
+ local opts
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -s -d: -f 4
-+ opts=-p50075
++ opts=-p52224
+ local env_vars
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -s -d: -f 5
+ env_vars=
+ shift
@@ -58,10 +58,10 @@
+ for i in "$@"
+ cmd+=("$(printf '%q' "$i")")
++ printf %q tcwg_aosp-build.sh
-++ printf %q /home/tcwg-buildslave/workspace/tcwg_aosp_0
-+ ssh -p50075 build-08.tcwglab 'cd /home/tcwg-buildslave/workspace/tcwg_aosp_0 && exec ./jenkins-scripts/round-robin-notify.sh @@rr\[top_artifacts\] artifacts __TCWG_JIRA_TOKEN ijQW9spm0p7HwZnUtLFx7CCA __stage full __verbose true __build_script tcwg_aosp-build.sh'
+++ printf %q /home/tcwg-buildslave/workspace/tcwg_aosp_1
++ ssh -p52224 build-05.tcwglab 'cd /home/tcwg-buildslave/workspace/tcwg_aosp_1 && exec ./jenkins-scripts/round-robin-notify.sh @@rr\[top_artifacts\] artifacts __TCWG_JIRA_TOKEN ijQW9spm0p7HwZnUtLFx7CCA __stage full __verbose true __build_script tcwg_aosp-build.sh'
-/home/tcwg-buildslave/workspace/tcwg_aosp_0/jenkins-scripts/round-robin-notify.sh @@rr[top_artifacts] artifacts __TCWG_JIRA_TOKEN ijQW9spm0p7HwZnUtLFx7CCA __stage full __verbose true __build_script tcwg_aosp-build.sh
+/home/tcwg-buildslave/workspace/tcwg_aosp_1/jenkins-scripts/round-robin-notify.sh @@rr[top_artifacts] artifacts __TCWG_JIRA_TOKEN ijQW9spm0p7HwZnUtLFx7CCA __stage full __verbose true __build_script tcwg_aosp-build.sh
+ false
+ dryrun=
@@ -87,17 +87,17 @@
++ get_baseline_manifest BUILD_URL
++ get_manifest base-artifacts/manifest.sh BUILD_URL false
++ set +x
-# Baseline : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/502/
+# Baseline : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/
# Using dir : base-artifacts
-+ echo '# Baseline : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/502/'
++ echo '# Baseline : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/'
+ echo '# Using dir : base-artifacts'
++ get_current_manifest BUILD_URL
++ get_manifest artifacts/manifest.sh BUILD_URL
++ set +x
-# Artifacts : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/
+# Artifacts : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/507/
# Using dir : artifacts
-+ echo '# Artifacts : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/'
++ echo '# Artifacts : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/507/'
+ echo '# Using dir : artifacts'
+ echo ''
+ mkdir -p artifacts/notify
@@ -111,7 +111,7 @@
++ get_current_manifest '{rr[update_baseline]}'
++ get_manifest artifacts/manifest.sh '{rr[update_baseline]}'
++ set +x
-+ '[' onsuccess '!=' init ']'
++ '[' force '!=' init ']'
+ IFS=' '
+ read -r -a changed_components
++ print_changed_components
@@ -121,93 +121,98 @@
+++ set -euf -o pipefail
+++ local c delim=
+++ for c in ${rr[components]}
-+++ '[' xhttps://android.googlesource.com/platform/superproject/main.git#main '!=' xbaseline ']'
-+++ echo -ne aosp_superproject
-+++ delim=' '
-+++ for c in ${rr[components]}
+++ '[' xbaseline '!=' xbaseline ']'
+++ for c in ${rr[components]}
-+++ '[' xhttps://android.googlesource.com/platform/superproject#llvm-toolchain '!=' xbaseline ']'
-+++ echo -ne ' toolchain_superproject'
++++ '[' xhttps://github.com/llvm/llvm-project.git#c249e2778602207f1e770c57123d14bdf078308f '!=' xbaseline ']'
++++ echo -ne llvm
+++ delim=' '
++++ for c in ${rr[components]}
++++ '[' xbaseline '!=' xbaseline ']'
+++ echo
++ for c in $(print_updated_components)
-+++ get_current_git aosp_superproject_rev
-+++ set -euf -o pipefail
-+++ assert_with_msg 'ERROR: No aosp_superproject_rev in current git' '[' -f artifacts/git/aosp_superproject_rev ']'
-+++ set -euf -o pipefail +x
-+++ cat artifacts/git/aosp_superproject_rev
-+++ get_baseline_git aosp_superproject_rev
-+++ set -euf -o pipefail
-+++ local base_artifacts=base-artifacts
-+++ assert_with_msg 'ERROR: No aosp_superproject_rev in baseline git' '[' -f base-artifacts/git/aosp_superproject_rev ']'
-+++ set -euf -o pipefail +x
-+++ cat base-artifacts/git/aosp_superproject_rev
-++ '[' x6cf5486b8925224e179123015e7b72d494fa53bd '!=' xb556fc4dba3748c57d6a77b44ab9f5d75d099356 ']'
-++ echo -ne aosp_superproject
-++ delim=' '
-++ for c in $(print_updated_components)
-+++ get_current_git toolchain_superproject_rev
++++ get_current_git llvm_rev
+++ set -euf -o pipefail
-+++ assert_with_msg 'ERROR: No toolchain_superproject_rev in current git' '[' -f artifacts/git/toolchain_superproject_rev ']'
++++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
-+++ cat artifacts/git/toolchain_superproject_rev
-+++ get_baseline_git toolchain_superproject_rev
++++ cat artifacts/git/llvm_rev
++++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
-+++ assert_with_msg 'ERROR: No toolchain_superproject_rev in baseline git' '[' -f base-artifacts/git/toolchain_superproject_rev ']'
++++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
-+++ cat base-artifacts/git/toolchain_superproject_rev
-++ '[' xd35df4f57e24bb369f7da08bccb9ca02542bb785 '!=' x9098f4a1f73318d21def20b564aeac2059806a00 ']'
-++ echo -ne ' toolchain_superproject'
++++ cat base-artifacts/git/llvm_rev
+++ '[' xc249e2778602207f1e770c57123d14bdf078308f '!=' x3f4bf998e897274758006f8423f2bdcd68cb2d55 ']'
+++ echo -ne llvm
++ delim=' '
++ echo
-# Debug traces :
-# change_kind=multiple_components : aosp_superproject toolchain_superproject
+ local c base_rev cur_rev c_commits
-+ '[' 2 = 0 ']'
-+ '[' 2 = 1 ']'
-+ change_kind=multiple_components
-+ changed_single_component=
-+ echo '# Debug traces :'
-+ echo '# change_kind=multiple_components : aosp_superproject toolchain_superproject'
-+ for c in "${changed_components[@]}"
-++ get_baseline_git aosp_superproject_rev
++ '[' 1 = 0 ']'
++ '[' 1 = 1 ']'
++ changed_single_component=llvm
+++ get_current_git llvm_rev
+++ set -euf -o pipefail
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat artifacts/git/llvm_rev
++ first_bad=c249e2778602207f1e770c57123d14bdf078308f
+++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat base-artifacts/git/llvm_rev
++ last_good=3f4bf998e897274758006f8423f2bdcd68cb2d55
++ local res
++ res=0
++ wait 19872
++ git -C llvm rev-parse --verify HEAD
++ assert_with_msg 'Cannot parse HEAD in repo llvm' '[' 0 = 0 ']'
++ set -euf -o pipefail +x
++ single_commit_p llvm
++ set -euf -o pipefail
++ local c=llvm
++ local base_rev cur_rev sha1
+++ get_baseline_git llvm_rev
++ set -euf -o pipefail
++ local base_artifacts=base-artifacts
-++ assert_with_msg 'ERROR: No aosp_superproject_rev in baseline git' '[' -f base-artifacts/git/aosp_superproject_rev ']'
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
++ set -euf -o pipefail +x
-++ cat base-artifacts/git/aosp_superproject_rev
-+ base_rev=b556fc4dba3748c57d6a77b44ab9f5d75d099356
-++ get_current_git aosp_superproject_rev
+++ cat base-artifacts/git/llvm_rev
++ base_rev=3f4bf998e897274758006f8423f2bdcd68cb2d55
+++ get_current_git llvm_rev
++ set -euf -o pipefail
-++ assert_with_msg 'ERROR: No aosp_superproject_rev in current git' '[' -f artifacts/git/aosp_superproject_rev ']'
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
++ set -euf -o pipefail +x
-++ cat artifacts/git/aosp_superproject_rev
-+ cur_rev=6cf5486b8925224e179123015e7b72d494fa53bd
-++ git -C aosp_superproject rev-list --count b556fc4dba3748c57d6a77b44ab9f5d75d099356..6cf5486b8925224e179123015e7b72d494fa53bd
-# rev for aosp_superproject : b556fc4dba3748c57d6a77b44ab9f5d75d099356..6cf5486b8925224e179123015e7b72d494fa53bd (185 commits)
-+ c_commits=185
-+ echo '# rev for aosp_superproject : b556fc4dba3748c57d6a77b44ab9f5d75d099356..6cf5486b8925224e179123015e7b72d494fa53bd (185 commits)'
+++ cat artifacts/git/llvm_rev
++ cur_rev=c249e2778602207f1e770c57123d14bdf078308f
+++ git -C llvm rev-parse 'c249e2778602207f1e770c57123d14bdf078308f^@'
++ for sha1 in $(git -C "$c" rev-parse "$cur_rev^@")
++ '[' 7e8eccd990d37d2771ca5ad7a84f54c3cfc4a5e1 = 3f4bf998e897274758006f8423f2bdcd68cb2d55 ']'
++ return 1
+# Debug traces :
+# change_kind=single_component : llvm
++ change_kind=single_component
++ echo '# Debug traces :'
++ echo '# change_kind=single_component : llvm'
+ for c in "${changed_components[@]}"
-++ get_baseline_git toolchain_superproject_rev
+++ get_baseline_git llvm_rev
++ set -euf -o pipefail
++ local base_artifacts=base-artifacts
-++ assert_with_msg 'ERROR: No toolchain_superproject_rev in baseline git' '[' -f base-artifacts/git/toolchain_superproject_rev ']'
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
++ set -euf -o pipefail +x
-++ cat base-artifacts/git/toolchain_superproject_rev
-+ base_rev=9098f4a1f73318d21def20b564aeac2059806a00
-++ get_current_git toolchain_superproject_rev
+++ cat base-artifacts/git/llvm_rev
++ base_rev=3f4bf998e897274758006f8423f2bdcd68cb2d55
+++ get_current_git llvm_rev
++ set -euf -o pipefail
-++ assert_with_msg 'ERROR: No toolchain_superproject_rev in current git' '[' -f artifacts/git/toolchain_superproject_rev ']'
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
++ set -euf -o pipefail +x
-++ cat artifacts/git/toolchain_superproject_rev
-+ cur_rev=d35df4f57e24bb369f7da08bccb9ca02542bb785
-++ git -C toolchain_superproject rev-list --count 9098f4a1f73318d21def20b564aeac2059806a00..d35df4f57e24bb369f7da08bccb9ca02542bb785
-# rev for toolchain_superproject : 9098f4a1f73318d21def20b564aeac2059806a00..d35df4f57e24bb369f7da08bccb9ca02542bb785 (6 commits)
+++ cat artifacts/git/llvm_rev
++ cur_rev=c249e2778602207f1e770c57123d14bdf078308f
+++ git -C llvm rev-list --count 3f4bf998e897274758006f8423f2bdcd68cb2d55..c249e2778602207f1e770c57123d14bdf078308f
+# rev for llvm : 3f4bf998e897274758006f8423f2bdcd68cb2d55..c249e2778602207f1e770c57123d14bdf078308f (1079 commits)
-+ c_commits=6
-+ echo '# rev for toolchain_superproject : 9098f4a1f73318d21def20b564aeac2059806a00..d35df4f57e24bb369f7da08bccb9ca02542bb785 (6 commits)'
++ c_commits=1079
++ echo '# rev for llvm : 3f4bf998e897274758006f8423f2bdcd68cb2d55..c249e2778602207f1e770c57123d14bdf078308f (1079 commits)'
+ echo ''
+ setup_stages_to_run
+ '[' ignore = onregression ']'
@@ -227,11 +232,11 @@
+ generate_extra_details_f=generate_extra_details
+ case "$ci_project" in
+ post_interesting_commits init
+# post_interesting_commits
+ set -euf -o pipefail
+ echo '# post_interesting_commits'
-# post_interesting_commits
+ local stage=init
-+ '[' multiple_components '!=' single_commit ']'
++ '[' single_component '!=' single_commit ']'
+ return
+ '[' full '!=' full ']'
+ generate_extra_details
@@ -239,14 +244,14 @@
+ check_if_first_report
+ declare -g first_icommit_to_report
+ first_icommit_to_report=false
-+ '[' xmultiple_components '!=' xsingle_commit ']'
++ '[' xsingle_component '!=' xsingle_commit ']'
+ return
+ post_interesting_commits full
# post_interesting_commits
+ set -euf -o pipefail
+ echo '# post_interesting_commits'
+ local stage=full
-+ '[' multiple_components '!=' single_commit ']'
++ '[' single_component '!=' single_commit ']'
+ return
+ true
+ generate_jira_dir
@@ -257,7 +262,7 @@
++ set -euf -o pipefail
++ local print_arg=--entry
++ shift 1
-++ '[' xmultiple_components '!=' xsingle_commit ']'
+++ '[' xsingle_component '!=' xsingle_commit ']'
++ return 0
+ icommit_entry=
+ '[' '' '!=' '' ']'
@@ -280,9 +285,9 @@
+++ get_current_manifest BUILD_URL
+++ get_manifest artifacts/manifest.sh BUILD_URL
+++ set +x
-++ url=https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/artifact/artifacts
+++ url=https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/507/artifact/artifacts
++ '[' '' '!=' '' ']'
-++ echo 'https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/artifact/artifacts/notify/mail-body.txt/*view*/'
+++ echo 'https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/507/artifact/artifacts/notify/mail-body.txt/*view*/'
# print all notification files
+ echo '# print all notification files'
+ true
@@ -290,62 +295,5839 @@
+ set -euf -o pipefail
+ print_mail_recipients
+ set -euf -o pipefail
-+ local c=
++ local c=llvm
++ '[' llvm = '' ']'
++ local -A emails
++ emails["tcwg-validation@linaro.org"]=bcc
++ emails["author"]=cc
++ emails["committer"]=to
++ case "$ci_project/$ci_config:$c" in
++ emails["author"]=no
++ emails["committer"]=no
++ emails["antoine.moynault@linaro.org"]=to
++ local c email base_rev cur_rev
+++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat base-artifacts/git/llvm_rev
++ base_rev=3f4bf998e897274758006f8423f2bdcd68cb2d55
+++ get_current_git llvm_rev
+++ set -euf -o pipefail
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat artifacts/git/llvm_rev
++ cur_rev=c249e2778602207f1e770c57123d14bdf078308f
++ read -r email
+++ git -C llvm log --pretty=%ae 3f4bf998e897274758006f8423f2bdcd68cb2d55..c249e2778602207f1e770c57123d14bdf078308f
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ local precommit_postcommit=postcommit
+ '[' '' = '' ']'
-+ echo bcc:tcwg-validation@linaro.org
-+ return 0
+++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat base-artifacts/git/llvm_rev
++ base_rev=3f4bf998e897274758006f8423f2bdcd68cb2d55
+++ get_current_git llvm_rev
+++ set -euf -o pipefail
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat artifacts/git/llvm_rev
++ cur_rev=c249e2778602207f1e770c57123d14bdf078308f
++ read -r email
+++ git -C llvm log --pretty=%ce 3f4bf998e897274758006f8423f2bdcd68cb2d55..c249e2778602207f1e770c57123d14bdf078308f
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ unset 'emails[author]' 'emails[committer]'
++ local type
++ recipients=()
++ local -a recipients
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=bcc
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ recipients+=("$type:$email")
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=to
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ recipients+=("$email")
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ IFS=,
++ echo bcc:tcwg-validation@linaro.org,antoine.moynault@linaro.org
++ print_commits --oneline
++ set -euf -o pipefail
++ false
++ local print_arg=--oneline
-++ '[' multiple_components = no_change ']'
+++ '[' single_component = no_change ']'
++ local more_lines
-++ '[' multiple_components = single_commit ']'
-++ '[' multiple_components = single_component ']'
-++ '[' multiple_components = multiple_components ']'
+++ '[' single_component = single_commit ']'
+++ '[' single_component = single_component ']'
++ local new_commits c base_rev cur_rev c_commits components
++ local commits_or_patches
++ '[' '' '!=' '' ']'
++ commits_or_patches=commits
++ new_commits=0
++ for c in "${changed_components[@]}"
-+++ get_baseline_git aosp_superproject_rev
-+++ set -euf -o pipefail
-+++ local base_artifacts=base-artifacts
-+++ assert_with_msg 'ERROR: No aosp_superproject_rev in baseline git' '[' -f base-artifacts/git/aosp_superproject_rev ']'
-+++ set -euf -o pipefail +x
-+++ cat base-artifacts/git/aosp_superproject_rev
-++ base_rev=b556fc4dba3748c57d6a77b44ab9f5d75d099356
-+++ get_current_git aosp_superproject_rev
-+++ set -euf -o pipefail
-+++ assert_with_msg 'ERROR: No aosp_superproject_rev in current git' '[' -f artifacts/git/aosp_superproject_rev ']'
-+++ set -euf -o pipefail +x
-+++ cat artifacts/git/aosp_superproject_rev
-++ cur_rev=6cf5486b8925224e179123015e7b72d494fa53bd
-+++ git -C aosp_superproject rev-list --count b556fc4dba3748c57d6a77b44ab9f5d75d099356..6cf5486b8925224e179123015e7b72d494fa53bd
-++ c_commits=185
-++ new_commits=185
-++ for c in "${changed_components[@]}"
-+++ get_baseline_git toolchain_superproject_rev
++++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
-+++ assert_with_msg 'ERROR: No toolchain_superproject_rev in baseline git' '[' -f base-artifacts/git/toolchain_superproject_rev ']'
++++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
-+++ cat base-artifacts/git/toolchain_superproject_rev
-++ base_rev=9098f4a1f73318d21def20b564aeac2059806a00
-+++ get_current_git toolchain_superproject_rev
++++ cat base-artifacts/git/llvm_rev
+++ base_rev=3f4bf998e897274758006f8423f2bdcd68cb2d55
++++ get_current_git llvm_rev
+++ set -euf -o pipefail
-+++ assert_with_msg 'ERROR: No toolchain_superproject_rev in current git' '[' -f artifacts/git/toolchain_superproject_rev ']'
++++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
-+++ cat artifacts/git/toolchain_superproject_rev
-++ cur_rev=d35df4f57e24bb369f7da08bccb9ca02542bb785
-+++ git -C toolchain_superproject rev-list --count 9098f4a1f73318d21def20b564aeac2059806a00..d35df4f57e24bb369f7da08bccb9ca02542bb785
-++ c_commits=6
-++ new_commits=191
-+++ echo aosp_superproject toolchain_superproject
++++ cat artifacts/git/llvm_rev
+++ cur_rev=c249e2778602207f1e770c57123d14bdf078308f
++++ git -C llvm rev-list --count 3f4bf998e897274758006f8423f2bdcd68cb2d55..c249e2778602207f1e770c57123d14bdf078308f
+++ c_commits=1079
+++ new_commits=1079
++++ echo llvm
+++ tr ' ' ,
-++ components=aosp_superproject,toolchain_superproject
-++ echo '191 commits in aosp_superproject,toolchain_superproject'
+++ components=llvm
+++ echo '1079 commits in llvm'
++ '[' --oneline = --oneline ']'
++ return 0
++ print_result --oneline
@@ -360,17 +6142,17 @@
++ case "$print_arg" in
++ case "$ci_config" in
++ echo oriole-master
-+ echo '[Linaro-TCWG-CI]' '191 commits in aosp_superproject,toolchain_superproject: Success on oriole-master'
++ echo '[Linaro-TCWG-CI]' '1079 commits in llvm: Success on oriole-master'
+ print_mail_body
+ local bad_artifacts_url good_artifacts_url
++ get_current_manifest BUILD_URL
++ get_manifest artifacts/manifest.sh BUILD_URL
++ set +x
-+ bad_artifacts_url=https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/artifact/artifacts
++ bad_artifacts_url=https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/507/artifact/artifacts
++ get_baseline_manifest BUILD_URL
++ get_manifest base-artifacts/manifest.sh BUILD_URL false
++ set +x
-+ good_artifacts_url=https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/502/artifact/artifacts
++ good_artifacts_url=https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/artifact/artifacts
+ cat
++ print_config --short
++ false
@@ -382,96 +6164,57 @@
++ set -euf -o pipefail
++ false
++ local print_arg=--short
-++ '[' multiple_components = no_change ']'
+++ '[' single_component = no_change ']'
++ local more_lines
-++ '[' multiple_components = single_commit ']'
-++ '[' multiple_components = single_component ']'
-++ '[' multiple_components = multiple_components ']'
+++ '[' single_component = single_commit ']'
+++ '[' single_component = single_component ']'
++ local new_commits c base_rev cur_rev c_commits components
++ local commits_or_patches
++ '[' '' '!=' '' ']'
++ commits_or_patches=commits
++ new_commits=0
++ for c in "${changed_components[@]}"
-+++ get_baseline_git aosp_superproject_rev
-+++ set -euf -o pipefail
-+++ local base_artifacts=base-artifacts
-+++ assert_with_msg 'ERROR: No aosp_superproject_rev in baseline git' '[' -f base-artifacts/git/aosp_superproject_rev ']'
-+++ set -euf -o pipefail +x
-+++ cat base-artifacts/git/aosp_superproject_rev
-++ base_rev=b556fc4dba3748c57d6a77b44ab9f5d75d099356
-+++ get_current_git aosp_superproject_rev
-+++ set -euf -o pipefail
-+++ assert_with_msg 'ERROR: No aosp_superproject_rev in current git' '[' -f artifacts/git/aosp_superproject_rev ']'
-+++ set -euf -o pipefail +x
-+++ cat artifacts/git/aosp_superproject_rev
-++ cur_rev=6cf5486b8925224e179123015e7b72d494fa53bd
-+++ git -C aosp_superproject rev-list --count b556fc4dba3748c57d6a77b44ab9f5d75d099356..6cf5486b8925224e179123015e7b72d494fa53bd
-++ c_commits=185
-++ new_commits=185
-++ for c in "${changed_components[@]}"
-+++ get_baseline_git toolchain_superproject_rev
++++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
-+++ assert_with_msg 'ERROR: No toolchain_superproject_rev in baseline git' '[' -f base-artifacts/git/toolchain_superproject_rev ']'
++++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
-+++ cat base-artifacts/git/toolchain_superproject_rev
-++ base_rev=9098f4a1f73318d21def20b564aeac2059806a00
-+++ get_current_git toolchain_superproject_rev
++++ cat base-artifacts/git/llvm_rev
+++ base_rev=3f4bf998e897274758006f8423f2bdcd68cb2d55
++++ get_current_git llvm_rev
+++ set -euf -o pipefail
-+++ assert_with_msg 'ERROR: No toolchain_superproject_rev in current git' '[' -f artifacts/git/toolchain_superproject_rev ']'
++++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
-+++ cat artifacts/git/toolchain_superproject_rev
-++ cur_rev=d35df4f57e24bb369f7da08bccb9ca02542bb785
-+++ git -C toolchain_superproject rev-list --count 9098f4a1f73318d21def20b564aeac2059806a00..d35df4f57e24bb369f7da08bccb9ca02542bb785
-++ c_commits=6
-++ new_commits=191
-+++ echo aosp_superproject toolchain_superproject
++++ cat artifacts/git/llvm_rev
+++ cur_rev=c249e2778602207f1e770c57123d14bdf078308f
++++ git -C llvm rev-list --count 3f4bf998e897274758006f8423f2bdcd68cb2d55..c249e2778602207f1e770c57123d14bdf078308f
+++ c_commits=1079
+++ new_commits=1079
++++ echo llvm
+++ tr ' ' ,
-++ components=aosp_superproject,toolchain_superproject
-++ echo '191 commits in aosp_superproject,toolchain_superproject'
+++ components=llvm
+++ echo '1079 commits in llvm'
++ '[' --short = --oneline ']'
++ for c in "${changed_components[@]}"
-+++ get_baseline_git aosp_superproject_rev
-+++ set -euf -o pipefail
-+++ local base_artifacts=base-artifacts
-+++ assert_with_msg 'ERROR: No aosp_superproject_rev in baseline git' '[' -f base-artifacts/git/aosp_superproject_rev ']'
-+++ set -euf -o pipefail +x
-+++ cat base-artifacts/git/aosp_superproject_rev
-++ base_rev=b556fc4dba3748c57d6a77b44ab9f5d75d099356
-+++ get_current_git aosp_superproject_rev
-+++ set -euf -o pipefail
-+++ assert_with_msg 'ERROR: No aosp_superproject_rev in current git' '[' -f artifacts/git/aosp_superproject_rev ']'
-+++ set -euf -o pipefail +x
-+++ cat artifacts/git/aosp_superproject_rev
-++ cur_rev=6cf5486b8925224e179123015e7b72d494fa53bd
-+++ git -C aosp_superproject rev-list --count b556fc4dba3748c57d6a77b44ab9f5d75d099356..6cf5486b8925224e179123015e7b72d494fa53bd
-++ c_commits=185
-++ '[' '' '!=' '' ']'
-++ git -C aosp_superproject log -n 5 --oneline b556fc4dba3748c57d6a77b44ab9f5d75d099356..6cf5486b8925224e179123015e7b72d494fa53bd
-++ '[' 185 -gt 5 ']'
-++ echo '... and 180 more commits in aosp_superproject'
-++ '[' '' '!=' '' ']'
-++ for c in "${changed_components[@]}"
-+++ get_baseline_git toolchain_superproject_rev
++++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
-+++ assert_with_msg 'ERROR: No toolchain_superproject_rev in baseline git' '[' -f base-artifacts/git/toolchain_superproject_rev ']'
++++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
-+++ cat base-artifacts/git/toolchain_superproject_rev
-++ base_rev=9098f4a1f73318d21def20b564aeac2059806a00
-+++ get_current_git toolchain_superproject_rev
++++ cat base-artifacts/git/llvm_rev
+++ base_rev=3f4bf998e897274758006f8423f2bdcd68cb2d55
++++ get_current_git llvm_rev
+++ set -euf -o pipefail
-+++ assert_with_msg 'ERROR: No toolchain_superproject_rev in current git' '[' -f artifacts/git/toolchain_superproject_rev ']'
++++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
-+++ cat artifacts/git/toolchain_superproject_rev
-++ cur_rev=d35df4f57e24bb369f7da08bccb9ca02542bb785
-+++ git -C toolchain_superproject rev-list --count 9098f4a1f73318d21def20b564aeac2059806a00..d35df4f57e24bb369f7da08bccb9ca02542bb785
-++ c_commits=6
++++ cat artifacts/git/llvm_rev
+++ cur_rev=c249e2778602207f1e770c57123d14bdf078308f
++++ git -C llvm rev-list --count 3f4bf998e897274758006f8423f2bdcd68cb2d55..c249e2778602207f1e770c57123d14bdf078308f
+++ c_commits=1079
++ '[' '' '!=' '' ']'
-++ git -C toolchain_superproject log -n 5 --oneline 9098f4a1f73318d21def20b564aeac2059806a00..d35df4f57e24bb369f7da08bccb9ca02542bb785
-++ '[' 6 -gt 5 ']'
-++ echo '... and 1 more commits in toolchain_superproject'
+++ git -C llvm log -n 5 --oneline 3f4bf998e897274758006f8423f2bdcd68cb2d55..c249e2778602207f1e770c57123d14bdf078308f
+++ '[' 1079 -gt 5 ']'
+++ echo '... and 1074 more commits in llvm'
++ '[' '' '!=' '' ']'
++ return 0
++ print_result --short
@@ -495,6 +6238,15 @@
++ echo ''
++ echo From
+++ cat base-artifacts/results
+# generate dashboard
+# generate_dashboard_squad
+... Skipping
+# post_dashboard_squad
+... Skipping
+# generate_lnt_report
+... Skipping
+# post_to_jira
+Full stage ran successfully.
++ echo '# reset_artifacts:
-10
# build_aosp_toolchain:
@@ -512,13 +6264,8 @@
++ local print_arg=--long
++ case "$print_arg" in
++ echo 'CI config tcwg_aosp-code_size-dex2oat/oriole-master'
-+ '[' multiple_components '!=' single_commit ']'
++ '[' single_component '!=' single_commit ']'
+ return
-# generate dashboard
-# generate_dashboard_squad
-... Skipping
-# post_dashboard_squad
-... Skipping
+ echo '# generate dashboard'
+ generate_dashboard_squad
+ local results_date
@@ -532,10 +6279,8 @@
+ echo '... Skipping'
+ return
+ generate_lnt_report
-+ wait 666268
++ wait 20004
+ set -euf -o pipefail
-# generate_lnt_report
-... Skipping
+ echo '# generate_lnt_report'
+ true
+ case "$ci_project" in
@@ -543,7 +6288,6 @@
+ return
+ false
+ post_to_jira
-# post_to_jira
+ set -euf -o pipefail
+ echo '# post_to_jira'
+ local post_card_comment=false
@@ -551,5 +6295,4 @@
+ false
+ false
+ false
-Full stage ran successfully.
+ echo 'Full stage ran successfully.'
diff --git a/jenkins/notify-init.log b/jenkins/notify-init.log
index 086757f..8cde9f2 100644
--- a/jenkins/notify-init.log
+++ b/jenkins/notify-init.log
@@ -1,25 +1,25 @@
++ pwd
++ cat
-+ remote_exec build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075: ./jenkins-scripts/round-robin-notify.sh '@@rr[top_artifacts]' artifacts --notify ignore __stage init __verbose true __build_script tcwg_aosp-build.sh
++ remote_exec build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224: ./jenkins-scripts/round-robin-notify.sh '@@rr[top_artifacts]' artifacts --notify ignore __stage init __verbose true __build_script tcwg_aosp-build.sh
+ set -euf -o pipefail
+ local host
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -d: -f 1
-+ host=build-08.tcwglab
++ host=build-05.tcwglab
+ local port
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -s -d: -f 2
+ port=
+ local dir
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -s -d: -f 3
-+ dir=/home/tcwg-buildslave/workspace/tcwg_aosp_0
++ dir=/home/tcwg-buildslave/workspace/tcwg_aosp_1
+ local opts
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -s -d: -f 4
-+ opts=-p50075
++ opts=-p52224
+ local env_vars
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -s -d: -f 5
+ env_vars=
+ shift
@@ -58,10 +58,10 @@
+ for i in "$@"
+ cmd+=("$(printf '%q' "$i")")
++ printf %q tcwg_aosp-build.sh
-++ printf %q /home/tcwg-buildslave/workspace/tcwg_aosp_0
-+ ssh -p50075 build-08.tcwglab 'cd /home/tcwg-buildslave/workspace/tcwg_aosp_0 && exec ./jenkins-scripts/round-robin-notify.sh @@rr\[top_artifacts\] artifacts --notify ignore __stage init __verbose true __build_script tcwg_aosp-build.sh'
+++ printf %q /home/tcwg-buildslave/workspace/tcwg_aosp_1
++ ssh -p52224 build-05.tcwglab 'cd /home/tcwg-buildslave/workspace/tcwg_aosp_1 && exec ./jenkins-scripts/round-robin-notify.sh @@rr\[top_artifacts\] artifacts --notify ignore __stage init __verbose true __build_script tcwg_aosp-build.sh'
-/home/tcwg-buildslave/workspace/tcwg_aosp_0/jenkins-scripts/round-robin-notify.sh @@rr[top_artifacts] artifacts --notify ignore __stage init __verbose true __build_script tcwg_aosp-build.sh
+/home/tcwg-buildslave/workspace/tcwg_aosp_1/jenkins-scripts/round-robin-notify.sh @@rr[top_artifacts] artifacts --notify ignore __stage init __verbose true __build_script tcwg_aosp-build.sh
+ false
+ dryrun=
@@ -75,35 +75,35 @@
+ echo '# setup_notify_environment'
+ top_artifacts=artifacts
++ get_current_manifest '{rr[ci_project]}'
-# Debug traces :
++ get_manifest artifacts/manifest.sh '{rr[ci_project]}'
++ set +x
+ ci_project=tcwg_aosp-code_size-dex2oat
++ get_current_manifest '{rr[ci_config]}'
++ get_manifest artifacts/manifest.sh '{rr[ci_config]}'
++ set +x
+# Debug traces :
+ ci_config=oriole-master
+ echo '# Debug traces :'
++ get_baseline_manifest BUILD_URL
++ get_manifest base-artifacts/manifest.sh BUILD_URL false
++ set +x
-# Baseline : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/502/
+# Baseline : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/
# Using dir : base-artifacts
-+ echo '# Baseline : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/502/'
++ echo '# Baseline : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/'
+ echo '# Using dir : base-artifacts'
++ get_current_manifest BUILD_URL
++ get_manifest artifacts/manifest.sh BUILD_URL
++ set +x
-# Artifacts : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/
+# Artifacts : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/507/
# Using dir : artifacts
-+ echo '# Artifacts : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/'
++ echo '# Artifacts : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/507/'
+ echo '# Using dir : artifacts'
+ echo ''
+ mkdir -p artifacts/notify
+ '[' -f /home/tcwg-buildslave/.jipdate.yml ']'
-# check_source_changes
+ set +x
+# check_source_changes
+ declare -Ag pw
+ '[' ignore = precommit ']'
+ check_source_changes
@@ -111,7 +111,7 @@
++ get_current_manifest '{rr[update_baseline]}'
++ get_manifest artifacts/manifest.sh '{rr[update_baseline]}'
++ set +x
-+ '[' onsuccess '!=' init ']'
++ '[' force '!=' init ']'
+ IFS=' '
+ read -r -a changed_components
++ print_changed_components
@@ -121,94 +121,98 @@
+++ set -euf -o pipefail
+++ local c delim=
+++ for c in ${rr[components]}
-+++ '[' xhttps://android.googlesource.com/platform/superproject/main.git#main '!=' xbaseline ']'
-+++ echo -ne aosp_superproject
-+++ delim=' '
-+++ for c in ${rr[components]}
+++ '[' xbaseline '!=' xbaseline ']'
+++ for c in ${rr[components]}
-+++ '[' xhttps://android.googlesource.com/platform/superproject#llvm-toolchain '!=' xbaseline ']'
-+++ echo -ne ' toolchain_superproject'
++++ '[' xhttps://github.com/llvm/llvm-project.git#c249e2778602207f1e770c57123d14bdf078308f '!=' xbaseline ']'
++++ echo -ne llvm
+++ delim=' '
++++ for c in ${rr[components]}
++++ '[' xbaseline '!=' xbaseline ']'
+++ echo
++ for c in $(print_updated_components)
-+++ get_current_git aosp_superproject_rev
-+++ set -euf -o pipefail
-+++ assert_with_msg 'ERROR: No aosp_superproject_rev in current git' '[' -f artifacts/git/aosp_superproject_rev ']'
-+++ set -euf -o pipefail +x
-+++ cat artifacts/git/aosp_superproject_rev
-+++ get_baseline_git aosp_superproject_rev
-+++ set -euf -o pipefail
-+++ local base_artifacts=base-artifacts
-+++ assert_with_msg 'ERROR: No aosp_superproject_rev in baseline git' '[' -f base-artifacts/git/aosp_superproject_rev ']'
-+++ set -euf -o pipefail +x
-+++ cat base-artifacts/git/aosp_superproject_rev
-++ '[' x6cf5486b8925224e179123015e7b72d494fa53bd '!=' xb556fc4dba3748c57d6a77b44ab9f5d75d099356 ']'
-++ echo -ne aosp_superproject
-# Debug traces :
-# change_kind=multiple_components : aosp_superproject toolchain_superproject
-++ delim=' '
-++ for c in $(print_updated_components)
-+++ get_current_git toolchain_superproject_rev
++++ get_current_git llvm_rev
+++ set -euf -o pipefail
-+++ assert_with_msg 'ERROR: No toolchain_superproject_rev in current git' '[' -f artifacts/git/toolchain_superproject_rev ']'
++++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
-+++ cat artifacts/git/toolchain_superproject_rev
-+++ get_baseline_git toolchain_superproject_rev
++++ cat artifacts/git/llvm_rev
++++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
-+++ assert_with_msg 'ERROR: No toolchain_superproject_rev in baseline git' '[' -f base-artifacts/git/toolchain_superproject_rev ']'
++++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
-+++ cat base-artifacts/git/toolchain_superproject_rev
-++ '[' xd35df4f57e24bb369f7da08bccb9ca02542bb785 '!=' x9098f4a1f73318d21def20b564aeac2059806a00 ']'
-++ echo -ne ' toolchain_superproject'
++++ cat base-artifacts/git/llvm_rev
+++ '[' xc249e2778602207f1e770c57123d14bdf078308f '!=' x3f4bf998e897274758006f8423f2bdcd68cb2d55 ']'
+++ echo -ne llvm
++ delim=' '
++ echo
+ local c base_rev cur_rev c_commits
-+ '[' 2 = 0 ']'
-+ '[' 2 = 1 ']'
-+ change_kind=multiple_components
-+ changed_single_component=
-+ echo '# Debug traces :'
-+ echo '# change_kind=multiple_components : aosp_superproject toolchain_superproject'
-+ for c in "${changed_components[@]}"
-++ get_baseline_git aosp_superproject_rev
++ '[' 1 = 0 ']'
++ '[' 1 = 1 ']'
++ changed_single_component=llvm
+++ get_current_git llvm_rev
+++ set -euf -o pipefail
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat artifacts/git/llvm_rev
++ first_bad=c249e2778602207f1e770c57123d14bdf078308f
+++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat base-artifacts/git/llvm_rev
++ last_good=3f4bf998e897274758006f8423f2bdcd68cb2d55
++ local res
++ res=0
++ wait 19759
++ git -C llvm rev-parse --verify HEAD
++ assert_with_msg 'Cannot parse HEAD in repo llvm' '[' 0 = 0 ']'
++ set -euf -o pipefail +x
++ single_commit_p llvm
++ set -euf -o pipefail
++ local c=llvm
++ local base_rev cur_rev sha1
+++ get_baseline_git llvm_rev
++ set -euf -o pipefail
++ local base_artifacts=base-artifacts
-++ assert_with_msg 'ERROR: No aosp_superproject_rev in baseline git' '[' -f base-artifacts/git/aosp_superproject_rev ']'
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
++ set -euf -o pipefail +x
-++ cat base-artifacts/git/aosp_superproject_rev
-+ base_rev=b556fc4dba3748c57d6a77b44ab9f5d75d099356
-++ get_current_git aosp_superproject_rev
+++ cat base-artifacts/git/llvm_rev
++ base_rev=3f4bf998e897274758006f8423f2bdcd68cb2d55
+++ get_current_git llvm_rev
++ set -euf -o pipefail
-++ assert_with_msg 'ERROR: No aosp_superproject_rev in current git' '[' -f artifacts/git/aosp_superproject_rev ']'
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
++ set -euf -o pipefail +x
-++ cat artifacts/git/aosp_superproject_rev
-+ cur_rev=6cf5486b8925224e179123015e7b72d494fa53bd
-++ git -C aosp_superproject rev-list --count b556fc4dba3748c57d6a77b44ab9f5d75d099356..6cf5486b8925224e179123015e7b72d494fa53bd
-# rev for aosp_superproject : b556fc4dba3748c57d6a77b44ab9f5d75d099356..6cf5486b8925224e179123015e7b72d494fa53bd (185 commits)
-+ c_commits=185
-+ echo '# rev for aosp_superproject : b556fc4dba3748c57d6a77b44ab9f5d75d099356..6cf5486b8925224e179123015e7b72d494fa53bd (185 commits)'
+++ cat artifacts/git/llvm_rev
++ cur_rev=c249e2778602207f1e770c57123d14bdf078308f
+++ git -C llvm rev-parse 'c249e2778602207f1e770c57123d14bdf078308f^@'
++ for sha1 in $(git -C "$c" rev-parse "$cur_rev^@")
++ '[' 7e8eccd990d37d2771ca5ad7a84f54c3cfc4a5e1 = 3f4bf998e897274758006f8423f2bdcd68cb2d55 ']'
++ return 1
+# Debug traces :
+# change_kind=single_component : llvm
++ change_kind=single_component
++ echo '# Debug traces :'
++ echo '# change_kind=single_component : llvm'
+ for c in "${changed_components[@]}"
-++ get_baseline_git toolchain_superproject_rev
+++ get_baseline_git llvm_rev
++ set -euf -o pipefail
++ local base_artifacts=base-artifacts
-++ assert_with_msg 'ERROR: No toolchain_superproject_rev in baseline git' '[' -f base-artifacts/git/toolchain_superproject_rev ']'
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
++ set -euf -o pipefail +x
-++ cat base-artifacts/git/toolchain_superproject_rev
-+ base_rev=9098f4a1f73318d21def20b564aeac2059806a00
-++ get_current_git toolchain_superproject_rev
+++ cat base-artifacts/git/llvm_rev
++ base_rev=3f4bf998e897274758006f8423f2bdcd68cb2d55
+++ get_current_git llvm_rev
++ set -euf -o pipefail
-++ assert_with_msg 'ERROR: No toolchain_superproject_rev in current git' '[' -f artifacts/git/toolchain_superproject_rev ']'
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
++ set -euf -o pipefail +x
-++ cat artifacts/git/toolchain_superproject_rev
-+ cur_rev=d35df4f57e24bb369f7da08bccb9ca02542bb785
-++ git -C toolchain_superproject rev-list --count 9098f4a1f73318d21def20b564aeac2059806a00..d35df4f57e24bb369f7da08bccb9ca02542bb785
-# rev for toolchain_superproject : 9098f4a1f73318d21def20b564aeac2059806a00..d35df4f57e24bb369f7da08bccb9ca02542bb785 (6 commits)
+++ cat artifacts/git/llvm_rev
++ cur_rev=c249e2778602207f1e770c57123d14bdf078308f
+++ git -C llvm rev-list --count 3f4bf998e897274758006f8423f2bdcd68cb2d55..c249e2778602207f1e770c57123d14bdf078308f
+# rev for llvm : 3f4bf998e897274758006f8423f2bdcd68cb2d55..c249e2778602207f1e770c57123d14bdf078308f (1079 commits)
-# post_interesting_commits
-+ c_commits=6
-+ echo '# rev for toolchain_superproject : 9098f4a1f73318d21def20b564aeac2059806a00..d35df4f57e24bb369f7da08bccb9ca02542bb785 (6 commits)'
++ c_commits=1079
++ echo '# rev for llvm : 3f4bf998e897274758006f8423f2bdcd68cb2d55..c249e2778602207f1e770c57123d14bdf078308f (1079 commits)'
+ echo ''
+ setup_stages_to_run
+ '[' ignore = onregression ']'
@@ -228,10 +232,11 @@
+ generate_extra_details_f=generate_extra_details
+ case "$ci_project" in
+ post_interesting_commits init
+# post_interesting_commits
+ set -euf -o pipefail
+ echo '# post_interesting_commits'
+ local stage=init
-+ '[' multiple_components '!=' single_commit ']'
++ '[' single_component '!=' single_commit ']'
+ return
Init stage ran successfully.
+ '[' init '!=' full ']'
diff --git a/jenkins/rewrite.log b/jenkins/rewrite.log
index 4177ef5..c1108b3 100644
--- a/jenkins/rewrite.log
+++ b/jenkins/rewrite.log
@@ -1,25 +1,25 @@
++ pwd
++ cat
-+ remote_exec build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075: ./jenkins-scripts/round-robin-baseline.sh '@@rr[top_artifacts]' artifacts __build_script tcwg_aosp-build.sh __push_base_artifacts true __rewrite_base_artifacts true __rewrite_num 100
++ remote_exec build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224: ./jenkins-scripts/round-robin-baseline.sh '@@rr[top_artifacts]' artifacts __build_script tcwg_aosp-build.sh __push_base_artifacts true __rewrite_base_artifacts true __rewrite_num 100
+ set -euf -o pipefail
+ local host
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -d: -f 1
-+ host=build-08.tcwglab
++ host=build-05.tcwglab
+ local port
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -s -d: -f 2
+ port=
+ local dir
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -s -d: -f 3
-+ dir=/home/tcwg-buildslave/workspace/tcwg_aosp_0
++ dir=/home/tcwg-buildslave/workspace/tcwg_aosp_1
+ local opts
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -s -d: -f 4
-+ opts=-p50075
++ opts=-p52224
+ local env_vars
-++ echo build-08.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_0:-p50075:
+++ echo build-05.tcwglab::/home/tcwg-buildslave/workspace/tcwg_aosp_1:-p52224:
++ cut -s -d: -f 5
+ env_vars=
+ shift
@@ -58,8 +58,8 @@
+ for i in "$@"
+ cmd+=("$(printf '%q' "$i")")
++ printf %q 100
-++ printf %q /home/tcwg-buildslave/workspace/tcwg_aosp_0
-+ ssh -p50075 build-08.tcwglab 'cd /home/tcwg-buildslave/workspace/tcwg_aosp_0 && exec ./jenkins-scripts/round-robin-baseline.sh @@rr\[top_artifacts\] artifacts __build_script tcwg_aosp-build.sh __push_base_artifacts true __rewrite_base_artifacts true __rewrite_num 100'
+++ printf %q /home/tcwg-buildslave/workspace/tcwg_aosp_1
++ ssh -p52224 build-05.tcwglab 'cd /home/tcwg-buildslave/workspace/tcwg_aosp_1 && exec ./jenkins-scripts/round-robin-baseline.sh @@rr\[top_artifacts\] artifacts __build_script tcwg_aosp-build.sh __push_base_artifacts true __rewrite_base_artifacts true __rewrite_num 100'
+ declare -g rewrite_base_artifacts_first=true
+ true
+ update_baseline
diff --git a/jenkins/run-build.env b/jenkins/run-build.env
index 6fa92fa..791ff54 100644
--- a/jenkins/run-build.env
+++ b/jenkins/run-build.env
@@ -1,11 +1,9 @@
-build_name="#505"
+build_name="#507"
docker_opts=(--distro
default )
source build_container.sh
trap "cleanup_all_containers" EXIT
-build_name="#505-aosp_superproject-toolchain_superproject"
-branch_opt=(==rr\[aosp_superproject_git\]
-https://android.googlesource.com/platform/superproject/main.git#main
-==rr\[toolchain_superproject_git\]
-https://android.googlesource.com/platform/superproject#llvm-toolchain )
-build_name="#505-aosp_superproject-toolchain_superproject-R1"
+build_name="#507-llvm"
+branch_opt=(==rr\[llvm_git\]
+https://github.com/llvm/llvm-project.git#c249e2778602207f1e770c57123d14bdf078308f )
+build_name="#507-llvm-R1-force"
diff --git a/manifest.sh b/manifest.sh
index ed64dcb..d43f8ce 100644
--- a/manifest.sh
+++ b/manifest.sh
@@ -6,21 +6,21 @@ rr[ci_config]="oriole-master"
declare -g "bmk_branch=master"
declare -g "scripts_branch=master"
rr[mode]="build"
-rr[update_baseline]="onsuccess"
-declare -g "BUILD_URL=https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/"
+rr[update_baseline]="force"
+declare -g "BUILD_URL=https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/507/"
declare -g "SQUAD_GRP=tcwg"
-rr[aosp_superproject_git]="https://android.googlesource.com/platform/superproject/main.git#main"
-rr[toolchain_superproject_git]="https://android.googlesource.com/platform/superproject#llvm-toolchain"
+rr[llvm_git]="https://github.com/llvm/llvm-project.git#c249e2778602207f1e770c57123d14bdf078308f"
# Saving rr[] in the manifest
rr[abe_branch]="master"
rr[abe_repo]="https://git-us.linaro.org/toolchain/abe.git"
+rr[aosp_superproject_git]="baseline"
rr[baseline_branch]="linaro-local/ci/tcwg_aosp-code_size-dex2oat/oriole-master"
rr[breakup_changed_components]="breakup_changed_components llvm"
rr[components]="aosp_superproject llvm toolchain_superproject"
rr[host_c++]="/usr/bin/g++"
rr[host_cc]="/usr/bin/gcc"
-rr[llvm_git]="baseline"
rr[no_regression_p]="no_regression_p"
rr[no_regression_result]="0"
rr[old_format_baseline_branch]="linaro-local/ci/tcwg_aosp-code_size-dex2oat/oriole-master"
+rr[toolchain_superproject_git]="baseline"
declare -g "notify=ignore"
diff --git a/notify/jira/comment-template.txt b/notify/jira/comment-template.txt
index afe592c..480161d 100644
--- a/notify/jira/comment-template.txt
+++ b/notify/jira/comment-template.txt
@@ -1,3 +1,3 @@
[GNU-692]
Success
-Details: https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/artifact/artifacts/notify/mail-body.txt/*view*/
+Details: https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/507/artifact/artifacts/notify/mail-body.txt/*view*/
diff --git a/notify/mail-body.txt b/notify/mail-body.txt
index 77a2791..1ee495b 100644
--- a/notify/mail-body.txt
+++ b/notify/mail-body.txt
@@ -2,19 +2,13 @@ Dear contributor, our automatic CI has detected problems related to your patch(e
In CI config tcwg_aosp-code_size-dex2oat/oriole-master after:
- | 191 commits in aosp_superproject,toolchain_superproject
- | 6cf5486b892 Relocating proto enums to stats_log_enums.proto
- | e773a286a26 Add operation progress check to runTimed().
- | c02a08dfeb9 Merge "bt_trace: Delete ScopedIndent" into main
- | 6d841cb3718 Fix logic for device image change
- | 105b4cf16dd [Thread] rename attach to join and detach to leave
- | ... and 180 more commits in aosp_superproject
- | d35df4f57e2 Merge "Fix riscv64 stpcpy()." into main
- | bc3f7a2d0f0 Merge "Invoke check_call when creating/extracting tars" into main
- | f4ea116650a Merge "Sort lines in clang_source_info.md" into main
- | 1cf79a800eb Merge "Explain why system(3)'s argument is marked _Nonnull." into main
- | 17c267d731e Merge "Build musl libc++ for MuslHostRuntimeBuilder's sake" into main
- | ... and 1 more commits in toolchain_superproject
+ | 1079 commits in llvm
+ | c249e2778602 [RISCV] Add missing break in switch-case in convertToThreeAddress function. NFC.
+ | 7e8eccd990d3 [AArch64] Move SLS later in pass pipeline
+ | 419c6da3d763 [mlir][LLVM] Verify too many indices in GEP verifier (#70174)
+ | 2399c77c8593 [Clang][DebugInfo] Clang generates an extra spurious unnamed 'dbg.declare' (#69681)
+ | c912f88c2177 [InstCombine] Remove false commutativity from processUMulZExtIdiom() (NFCI)
+ | ... and 1074 more commits in llvm
Results changed to
# reset_artifacts:
@@ -50,6 +44,6 @@ CI config tcwg_aosp-code_size-dex2oat/oriole-master
-----------------8<--------------------------8<--------------------------8<--------------------------
The information below can be used to reproduce a debug environment:
-Current build : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/artifact/artifacts
-Reference build : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/502/artifact/artifacts
+Current build : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/507/artifact/artifacts
+Reference build : https://ci.linaro.org/job/tcwg_aosp-code_size-dex2oat--oriole-master-build/505/artifact/artifacts
diff --git a/notify/mail-recipients.txt b/notify/mail-recipients.txt
index aa219ef..ba925c1 100644
--- a/notify/mail-recipients.txt
+++ b/notify/mail-recipients.txt
@@ -1 +1 @@
-bcc:tcwg-validation@linaro.org
+bcc:tcwg-validation@linaro.org,antoine.moynault@linaro.org
diff --git a/notify/mail-subject.txt b/notify/mail-subject.txt
index b5561b3..6f5b89b 100644
--- a/notify/mail-subject.txt
+++ b/notify/mail-subject.txt
@@ -1 +1 @@
-[Linaro-TCWG-CI] 191 commits in aosp_superproject,toolchain_superproject: Success on oriole-master
+[Linaro-TCWG-CI] 1079 commits in llvm: Success on oriole-master
diff --git a/results-vs-first/results.csv b/results-vs-first/results.csv
index 361ead7..fab2b21 100644
--- a/results-vs-first/results.csv
+++ b/results-vs-first/results.csv
@@ -6,20 +6,20 @@ out/soong/.intermediates/packages/modules/StatsD/lib/libstatssocket/libstatssock
out/soong/.intermediates/bionic/libm/libm/android_arm64_armv8-2a_cortex-a55_shared_current/libm.so,binary,100,24046,24046
out/soong/.intermediates/external/zlib/libz/android_arm64_armv8-2a_cortex-a55_shared_current/libz.so,binary,100,9027,9027
out/soong/.intermediates/bionic/libc/libc/android_arm64_armv8-2a_cortex-a55_shared_current/libc.so,binary,101,126883,128193
-out/soong/.intermediates/external/lzma/C/liblzma/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/liblzma.so,binary,99,175487,173243
-out/soong/.intermediates/external/lz4/lib/liblz4/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/liblz4.so,binary,101,160379,162651
-out/soong/.intermediates/external/boringssl/libcrypto/android_arm64_armv8-2a_cortex-a55_shared_apex31/unhashed/libcrypto.so,binary,n/a,-1,1357637
-out/soong/.intermediates/external/libcxx/libc++/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/libc++.so,binary,n/a,-1,698050
+out/soong/.intermediates/external/lzma/C/liblzma/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/liblzma.so,binary,99,175487,173919
+out/soong/.intermediates/external/lz4/lib/liblz4/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/liblz4.so,binary,101,160379,162415
+out/soong/.intermediates/external/boringssl/libcrypto/android_arm64_armv8-2a_cortex-a55_shared_apex31/unhashed/libcrypto.so,binary,n/a,-1,1357933
+out/soong/.intermediates/external/libcxx/libc++/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/libc++.so,binary,n/a,-1,697778
out/soong/.intermediates/art/libartpalette/libartpalette/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libartpalette.so,binary,n/a,-1,7541
-out/soong/.intermediates/art/libnativebridge/libnativebridge/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libnativebridge.so,binary,n/a,-1,13181
-out/soong/.intermediates/system/libbase/libbase/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/libbase.so,binary,n/a,-1,267096
-out/soong/.intermediates/art/libartbase/libartbase/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libartbase.so,binary,n/a,-1,332794
-out/soong/.intermediates/art/libnativeloader/libnativeloader/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libnativeloader.so,binary,n/a,-1,124128
-out/soong/.intermediates/art/libdexfile/libdexfile/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libdexfile.so,binary,n/a,-1,214568
-out/soong/.intermediates/art/libprofile/libprofile/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libprofile.so,binary,n/a,-1,130948
+out/soong/.intermediates/system/libbase/libbase/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/libbase.so,binary,n/a,-1,266720
+out/soong/.intermediates/art/libartbase/libartbase/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libartbase.so,binary,n/a,-1,332686
+out/soong/.intermediates/art/libnativebridge/libnativebridge/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libnativebridge.so,binary,n/a,-1,13197
+out/soong/.intermediates/art/libdexfile/libdexfile/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libdexfile.so,binary,n/a,-1,214460
+out/soong/.intermediates/art/libnativeloader/libnativeloader/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libnativeloader.so,binary,n/a,-1,124152
+out/soong/.intermediates/art/libprofile/libprofile/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libprofile.so,binary,n/a,-1,130916
out/soong/.intermediates/external/perfetto/heapprofd_client_api/android_arm64_armv8-2a_cortex-a55_shared_current/e4694d05f1cb76fefd10c9c37c092ec4/heapprofd_client_api.so,binary,n/a,-1,1048
-out/soong/.intermediates/art/sigchainlib/libsigchain/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libsigchain.so,binary,n/a,-1,21580
-out/soong/.intermediates/system/unwinding/libunwindstack/libunwindstack/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libunwindstack.so,binary,n/a,-1,721015
-out/soong/.intermediates/art/dexlayout/libart-dexlayout/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libart-dexlayout.so,binary,n/a,-1,320778
-out/soong/.intermediates/art/runtime/libart/android_arm64_armv8-2a_cortex-a55_shared_apex31/85eaf79f2cdb3360398d24cccc67f3ae/unstripped/libart.so,binary,n/a,-1,11078050
-out/soong/.intermediates/art/dex2oat/dex2oat/android_arm64_armv8-2a_cortex-a55_apex31/85eaf79f2cdb3360398d24cccc67f3ae/unstripped/dex2oat64,binary,n/a,-1,1037926
+out/soong/.intermediates/art/sigchainlib/libsigchain/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libsigchain.so,binary,n/a,-1,21464
+out/soong/.intermediates/system/unwinding/libunwindstack/libunwindstack/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libunwindstack.so,binary,n/a,-1,721175
+out/soong/.intermediates/art/dexlayout/libart-dexlayout/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libart-dexlayout.so,binary,n/a,-1,320682
+out/soong/.intermediates/art/runtime/libart/android_arm64_armv8-2a_cortex-a55_shared_apex31/85eaf79f2cdb3360398d24cccc67f3ae/unstripped/libart.so,binary,n/a,-1,11084470
+out/soong/.intermediates/art/dex2oat/dex2oat/android_arm64_armv8-2a_cortex-a55_apex31/85eaf79f2cdb3360398d24cccc67f3ae/unstripped/dex2oat64,binary,n/a,-1,1035502
diff --git a/results-vs-prev/results.csv b/results-vs-prev/results.csv
index 4e94c67..db17530 100644
--- a/results-vs-prev/results.csv
+++ b/results-vs-prev/results.csv
@@ -1,25 +1,25 @@
benchmark,symbol,rel_size,size_x,size_y
-out/soong/.intermediates/bionic/libdl/libdl/android_arm64_armv8-2a_cortex-a55_shared_current/libdl.so,binary,100,1352,1352
out/soong/.intermediates/bionic/libm/libm/android_arm64_armv8-2a_cortex-a55_shared_current/libm.so,binary,100,24046,24046
-out/soong/.intermediates/system/logging/liblog/liblog/android_arm64_armv8-2a_cortex-a55_shared_current/liblog.so,binary,100,4867,4867
+out/soong/.intermediates/bionic/libdl/libdl/android_arm64_armv8-2a_cortex-a55_shared_current/libdl.so,binary,100,1352,1352
out/soong/.intermediates/bionic/libc/libc/android_arm64_armv8-2a_cortex-a55_shared_current/libc.so,binary,100,128193,128193
+out/soong/.intermediates/system/logging/liblog/liblog/android_arm64_armv8-2a_cortex-a55_shared_current/liblog.so,binary,100,4867,4867
+out/soong/.intermediates/external/boringssl/libcrypto/android_arm64_armv8-2a_cortex-a55_shared_apex31/unhashed/libcrypto.so,binary,100,1357637,1357933
+out/soong/.intermediates/external/libcxx/libc++/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/libc++.so,binary,100,698050,697778
+out/soong/.intermediates/art/libartpalette/libartpalette/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libartpalette.so,binary,100,7541,7541
out/soong/.intermediates/external/zlib/libz/android_arm64_armv8-2a_cortex-a55_shared_current/libz.so,binary,100,9027,9027
out/soong/.intermediates/bionic/libdl/libdl_android/android_arm64_armv8-2a_cortex-a55_shared_current/libdl_android.so,binary,100,926,926
-out/soong/.intermediates/art/libartpalette/libartpalette/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libartpalette.so,binary,100,7541,7541
-out/soong/.intermediates/art/libnativebridge/libnativebridge/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libnativebridge.so,binary,100,13181,13181
-out/soong/.intermediates/art/libartbase/libartbase/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libartbase.so,binary,100,332794,332794
-out/soong/.intermediates/art/libdexfile/libdexfile/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libdexfile.so,binary,100,214532,214568
-out/soong/.intermediates/art/libnativeloader/libnativeloader/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libnativeloader.so,binary,100,124128,124128
-out/soong/.intermediates/art/libprofile/libprofile/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libprofile.so,binary,100,130948,130948
-out/soong/.intermediates/external/lzma/C/liblzma/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/liblzma.so,binary,100,173243,173243
+out/soong/.intermediates/art/libnativebridge/libnativebridge/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libnativebridge.so,binary,100,13181,13197
+out/soong/.intermediates/system/libbase/libbase/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/libbase.so,binary,100,267096,266720
+out/soong/.intermediates/art/libartbase/libartbase/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libartbase.so,binary,100,332794,332686
+out/soong/.intermediates/art/libnativeloader/libnativeloader/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libnativeloader.so,binary,100,124128,124152
+out/soong/.intermediates/art/libdexfile/libdexfile/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libdexfile.so,binary,100,214568,214460
+out/soong/.intermediates/art/libprofile/libprofile/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libprofile.so,binary,100,130948,130916
+out/soong/.intermediates/external/lzma/C/liblzma/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/liblzma.so,binary,100,173243,173919
out/soong/.intermediates/external/perfetto/heapprofd_client_api/android_arm64_armv8-2a_cortex-a55_shared_current/e4694d05f1cb76fefd10c9c37c092ec4/heapprofd_client_api.so,binary,100,1048,1048
out/soong/.intermediates/packages/modules/StatsD/lib/libstatssocket/libstatssocket/android_arm64_armv8-2a_cortex-a55_shared_current/libstatssocket.so,binary,100,2217,2217
-out/soong/.intermediates/art/sigchainlib/libsigchain/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libsigchain.so,binary,100,21580,21580
-out/soong/.intermediates/external/lz4/lib/liblz4/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/liblz4.so,binary,100,162651,162651
-out/soong/.intermediates/system/unwinding/libunwindstack/libunwindstack/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libunwindstack.so,binary,100,721015,721015
-out/soong/.intermediates/art/dexlayout/libart-dexlayout/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libart-dexlayout.so,binary,100,320778,320778
-out/soong/.intermediates/art/runtime/libart/android_arm64_armv8-2a_cortex-a55_shared_apex31/85eaf79f2cdb3360398d24cccc67f3ae/unstripped/libart.so,binary,100,11076962,11078050
-out/soong/.intermediates/art/dex2oat/dex2oat/android_arm64_armv8-2a_cortex-a55_apex31/85eaf79f2cdb3360398d24cccc67f3ae/unstripped/dex2oat64,binary,100,1037926,1037926
-out/soong/.intermediates/external/boringssl/libcrypto/android_arm64_armv8-2a_cortex-a55_shared_apex31/unhashed/libcrypto.so,binary,n/a,-1,1357637
-out/soong/.intermediates/external/libcxx/libc++/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/libc++.so,binary,n/a,-1,698050
-out/soong/.intermediates/system/libbase/libbase/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/libbase.so,binary,n/a,-1,267096
+out/soong/.intermediates/art/sigchainlib/libsigchain/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libsigchain.so,binary,99,21580,21464
+out/soong/.intermediates/system/unwinding/libunwindstack/libunwindstack/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libunwindstack.so,binary,100,721015,721175
+out/soong/.intermediates/external/lz4/lib/liblz4/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/liblz4.so,binary,100,162651,162415
+out/soong/.intermediates/art/dexlayout/libart-dexlayout/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libart-dexlayout.so,binary,100,320778,320682
+out/soong/.intermediates/art/runtime/libart/android_arm64_armv8-2a_cortex-a55_shared_apex31/85eaf79f2cdb3360398d24cccc67f3ae/unstripped/libart.so,binary,100,11078050,11084470
+out/soong/.intermediates/art/dex2oat/dex2oat/android_arm64_armv8-2a_cortex-a55_apex31/85eaf79f2cdb3360398d24cccc67f3ae/unstripped/dex2oat64,binary,100,1037926,1035502
diff --git a/size.csv b/size.csv
index 22044ff..fb98511 100644
--- a/size.csv
+++ b/size.csv
@@ -1,25 +1,25 @@
benchmark,symbol,size
-out/soong/.intermediates/bionic/libm/libm/android_arm64_armv8-2a_cortex-a55_shared_current/libm.so,binary,24046
-out/soong/.intermediates/bionic/libdl/libdl/android_arm64_armv8-2a_cortex-a55_shared_current/libdl.so,binary,1352
out/soong/.intermediates/bionic/libc/libc/android_arm64_armv8-2a_cortex-a55_shared_current/libc.so,binary,128193
+out/soong/.intermediates/bionic/libdl/libdl/android_arm64_armv8-2a_cortex-a55_shared_current/libdl.so,binary,1352
+out/soong/.intermediates/bionic/libm/libm/android_arm64_armv8-2a_cortex-a55_shared_current/libm.so,binary,24046
+out/soong/.intermediates/external/boringssl/libcrypto/android_arm64_armv8-2a_cortex-a55_shared_apex31/unhashed/libcrypto.so,binary,1357933
out/soong/.intermediates/system/logging/liblog/liblog/android_arm64_armv8-2a_cortex-a55_shared_current/liblog.so,binary,4867
-out/soong/.intermediates/external/boringssl/libcrypto/android_arm64_armv8-2a_cortex-a55_shared_apex31/unhashed/libcrypto.so,binary,1357637
-out/soong/.intermediates/external/libcxx/libc++/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/libc++.so,binary,698050
+out/soong/.intermediates/external/libcxx/libc++/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/libc++.so,binary,697778
out/soong/.intermediates/art/libartpalette/libartpalette/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libartpalette.so,binary,7541
out/soong/.intermediates/external/zlib/libz/android_arm64_armv8-2a_cortex-a55_shared_current/libz.so,binary,9027
+out/soong/.intermediates/system/libbase/libbase/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/libbase.so,binary,266720
+out/soong/.intermediates/art/libartbase/libartbase/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libartbase.so,binary,332686
out/soong/.intermediates/bionic/libdl/libdl_android/android_arm64_armv8-2a_cortex-a55_shared_current/libdl_android.so,binary,926
-out/soong/.intermediates/art/libnativebridge/libnativebridge/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libnativebridge.so,binary,13181
-out/soong/.intermediates/system/libbase/libbase/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/libbase.so,binary,267096
-out/soong/.intermediates/art/libartbase/libartbase/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libartbase.so,binary,332794
-out/soong/.intermediates/art/libnativeloader/libnativeloader/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libnativeloader.so,binary,124128
-out/soong/.intermediates/art/libdexfile/libdexfile/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libdexfile.so,binary,214568
-out/soong/.intermediates/art/libprofile/libprofile/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libprofile.so,binary,130948
-out/soong/.intermediates/external/lzma/C/liblzma/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/liblzma.so,binary,173243
+out/soong/.intermediates/art/libnativebridge/libnativebridge/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libnativebridge.so,binary,13197
+out/soong/.intermediates/art/libdexfile/libdexfile/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libdexfile.so,binary,214460
+out/soong/.intermediates/art/libnativeloader/libnativeloader/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libnativeloader.so,binary,124152
+out/soong/.intermediates/art/libprofile/libprofile/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libprofile.so,binary,130916
+out/soong/.intermediates/external/lzma/C/liblzma/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/liblzma.so,binary,173919
out/soong/.intermediates/external/perfetto/heapprofd_client_api/android_arm64_armv8-2a_cortex-a55_shared_current/e4694d05f1cb76fefd10c9c37c092ec4/heapprofd_client_api.so,binary,1048
+out/soong/.intermediates/art/sigchainlib/libsigchain/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libsigchain.so,binary,21464
out/soong/.intermediates/packages/modules/StatsD/lib/libstatssocket/libstatssocket/android_arm64_armv8-2a_cortex-a55_shared_current/libstatssocket.so,binary,2217
-out/soong/.intermediates/art/sigchainlib/libsigchain/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libsigchain.so,binary,21580
-out/soong/.intermediates/system/unwinding/libunwindstack/libunwindstack/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libunwindstack.so,binary,721015
-out/soong/.intermediates/external/lz4/lib/liblz4/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/liblz4.so,binary,162651
-out/soong/.intermediates/art/dexlayout/libart-dexlayout/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libart-dexlayout.so,binary,320778
-out/soong/.intermediates/art/runtime/libart/android_arm64_armv8-2a_cortex-a55_shared_apex31/85eaf79f2cdb3360398d24cccc67f3ae/unstripped/libart.so,binary,11078050
-out/soong/.intermediates/art/dex2oat/dex2oat/android_arm64_armv8-2a_cortex-a55_apex31/85eaf79f2cdb3360398d24cccc67f3ae/unstripped/dex2oat64,binary,1037926
+out/soong/.intermediates/system/unwinding/libunwindstack/libunwindstack/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libunwindstack.so,binary,721175
+out/soong/.intermediates/external/lz4/lib/liblz4/android_arm64_armv8-2a_cortex-a55_shared_apex31/unstripped/liblz4.so,binary,162415
+out/soong/.intermediates/art/dexlayout/libart-dexlayout/android_arm64_armv8-2a_cortex-a55_shared_apex31/e4694d05f1cb76fefd10c9c37c092ec4/unstripped/libart-dexlayout.so,binary,320682
+out/soong/.intermediates/art/runtime/libart/android_arm64_armv8-2a_cortex-a55_shared_apex31/85eaf79f2cdb3360398d24cccc67f3ae/unstripped/libart.so,binary,11084470
+out/soong/.intermediates/art/dex2oat/dex2oat/android_arm64_armv8-2a_cortex-a55_apex31/85eaf79f2cdb3360398d24cccc67f3ae/unstripped/dex2oat64,binary,1035502