CC BY-NC-SA 4.0 DOI

Cara menyitir/mengutip R Notebook, data dan makalah lengkapnya

Kutipan untuk data dan R Notebook ini:

Rajeg, Gede Primahadi Wijaya. 2020: Data dan R Notebook untuk Linguistik Korpus Kuantitatif dan Kajian Semantik Leksikal Sinonim Emosi Bahasa Indonesia. figshare. Dataset. https://doi.org/10.6084/m9.figshare.12073065.

Kutipan untuk makalah terbitnya:

Rajeg, Gede Primahadi Wijaya. 2020. Linguistik korpus kuantitatif dan kajian semantik leksikal sinonim emosi bahasa Indonesia. Linguistik Indonesia 38(2). 123–150. https://doi.org/10.26499/li.v38i2.155.

library(remotes) # if 'remotes' package is not available, install it by typing: install.packages("remotes")
remotes::install_github("gederajeg/happyr")

1 Kode analisis MDCA

Nukilan kode berikut menunjukkan penghitungan Multiple Distinctive Collexeme Analysis menggunakan fungsi mdca() dan data kolokat dari modul R happyr (Rajeg, 2019). Perlu dicatat bahwa pengguna dan pembaca perlu juga menginstal modul happyr (lihat nukilan kode sebelumnya) dan modul tidyverse (Wickham et al., 2019) untuk dapat menjalankan kode analisis berikut. Data lain untuk makalah ini beserta R Notebook-nya juga tersedia secara terbuka (Rajeg, 2020).

library(happyr)
library(tidyverse)
Registered S3 methods overwritten by 'dbplyr':
  method         from
  print.tbl_lazy     
  print.tbl_sql      
── Attaching packages ─────────────────────────────────────────────────── tidyverse 1.3.1 ──
✓ ggplot2 3.3.3     ✓ purrr   0.3.4
✓ tibble  3.1.0     ✓ dplyr   1.0.5
✓ tidyr   1.1.3     ✓ stringr 1.4.0
✓ readr   1.4.0     ✓ forcats 0.5.1
── Conflicts ────────────────────────────────────────────────────── tidyverse_conflicts() ──
x dplyr::filter() masks stats::filter()
x dplyr::lag()    masks stats::lag()
source("scripts/script_for-retrieving-ngrams.R")
knitr::opts_chunk$set(fig.width=6, 
                      fig.asp=0.618,
                      dpi=300)
mdca_colloc <- mdca(df = colloc_input_data,
                    cxn_var = "synonyms",
                    coll_var = "collocates",
                    correct_holm = TRUE,
                    concise_output = FALSE,
                    already_count_table = FALSE,
                    assocstr_digits = 3L)

mdca_colloc_concise <- mdca(df = colloc_input_data,
                    cxn_var = "synonyms",
                    coll_var = "collocates",
                    correct_holm = TRUE,
                    concise_output = TRUE,
                    already_count_table = FALSE,
                    assocstr_digits = 3L)

1.1 Penjelasan terkait “Analisis Koleksem Khas Berganda”

Bagian ini memaparkan landasan kuantitatif dari “Analisis Koleksem Khas Berganda” (Multiple Distinctive Collexeme Analysis), dan kode pemrograman R yang digunakan untuk data kuantitatif dalam pemaparan tersebut. Perhatikan Tabel @ref(tab:contoh-mdca).

mdca_example <- subset(mdca_colloc_concise, collocates == "anak-anak")
mdca_example_long <- subset(mdca_colloc, collocates == "anak-anak")
colnames(mdca_example)[c(1:2, 8)] <- c("kolokat", "sinonim", "signif")
mdca_example$exp <- round(mdca_example$exp, 3)
knitr::kable(mdca_example, row.names = TRUE, caption = "Luaran MDCA untuk *anak-anak* sebagai kolokat khas.")
Luaran MDCA untuk anak-anak sebagai kolokat khas.
kolokat sinonim n exp assocstr p_binomial p_holm signif
1 anak-anak bahagia 3 7.973 -1.406 3.926e-02 1.000e+00 ns
2 anak-anak ceria 1 0.835 0.246 5.672e-01 1.000e+00 ns
3 anak-anak gembira 0 3.640 -1.601 2.508e-02 1.000e+00 ns
4 anak-anak kebahagiaan 16 56.554 -13.189 6.477e-14 4.720e-09 ***
5 anak-anak keceriaan 91 19.123 42.698 2.003e-43 1.460e-38 ***
6 anak-anak kegembiraan 15 22.552 -1.320 4.789e-02 1.000e+00 ns
7 anak-anak keriangan 17 6.770 3.331 4.665e-04 1.000e+00 ns
8 anak-anak kesenangan 3 22.594 -7.111 7.736e-08 5.634e-03 **
9 anak-anak riang 1 0.431 0.456 3.503e-01 1.000e+00 ns
10 anak-anak senang 0 6.528 -2.900 1.259e-03 1.000e+00 ns

Frekuensi kemunculan riil anak-anak dalam lingkup empat kata di kiri dan kanan keceriaan di dalam korpus (lihat bagian DATA DAN METODOLOGI) adalah 91 kali. Selain frekuensi riil, Uji Binomial juga memerlukan frekuensi yang diharapkan muncul atas dasar distribusi acak untuk anak-anak dengan keceriaan; frekuensi ini disebut frekuensi harapan (expected frequency) (Rajeg & Rajeg, 2019, pp. 21–22). Untuk kasus kali ini, frekuensi harapan dihitung dengan cara (i) mengalikan frekuensi keceriaan di dalam data (yaitu 3641) dengan total frekuensi kemunculan anak-anak dengan semua sinonim (yaitu 147), kemudian (ii) membagi hasil perkalian tersebut dengan total keseluruhan data kolokasi empat kata di kiri dan kanan kesepuluh sinonim (yaitu, 27989). Jadi, frekuensi harapan untuk kemunculan anak-anak dengan keceriaan adalah (3641 * 147)/27989 = 19.123.

Selisih antara frekuensi riil dan harapan digunakan untuk menentukan arah asosiasi antara suatu kolokat dengan sinonim yang dimaksud. Apabila selisihnya positif (yaitu frekuensi riil lebih tinggi dari frekuensi harapan), maka kolokat tersebut berasosiasi positif dengan, atau bersifat khas/distingtif untuk, sinonim yang dikaji; sebaliknya, selisih negatif mengindikasikan disosiasi antara kolokat dan sinonim (Stefanowitsch, 2013; 2014, p. 227). Perbandingan frekuensi riil dan harapan untuk anak-anak dan keceriaan (baris kelima pada Tabel 1) menunjukkan asosiasi positif, karena frekuensi riilnya (kolom n) lebih tinggi dari frekuensi harapannya (kolom exp):91 > 19.123. Asosiasi negatif, di antaranya, ditunjukkan oleh anak-anak dan kebahagiaan (baris keempat pada Tabel 1).

Selain frekuensi riil dan harapan, Uji Binomial juga memerlukan probabilitas a priori (probabilitas praanggapan), yang menunjukkan bahwa apabila anak-anak muncul sebagai kolokat dalam rentang empat kata di kiri dan kanan sinonim KEBAHAGIAAN, maka anak-anak akan muncul dengan keceriaan (Hilpert, 2006, p. 247). Probabilitas ini dihitung dengan cara membagi (i) frekuensi harapan anak-anak dengan keceriaan (yaitu 19.123) dengan (ii) total frekuensi kemunculan anak-anak dengan semua sinonim (yaitu 147); jadi, 19.123/147 = 0.1301.

Selanjutnya, Uji Binomial akan menentukan signifikansi statistik dari asosiasi antara kolokat dan sinonim: apakah secara signifikansi statistik suatu kolokat muncul lebih sering atau jarang dari yang diharapkan atas dasar suatu kebetulan (distribusi acak) (bdk. Hilpert, 2006, p. 247). Nukilan kode pemrograman R berikut adalah cara menghitung p-value dari Uji Binomial apabila frekuensi riil suatu kolokasi lebih tinggi dari frekuensi harapan.

binom.test(x = 91, # frekuensi kemunculan riil "anak-anak" dengan "keceriaan"
           n = 147, # total frekuensi "anak-anak" sebagai kolokat pada data
           p = 0.1300868, # probabilitas *a priori*
           alternative = "greater" # karena frek. riil > frek. harapan"
           )$p.value # keluarkan hanya p-value dari Uji Binomial-nya.
[1] 2.003129e-43
# kode alternatif yang menghasilkan p-value sama adalah sebagai berikut:
sum(dbinom(91:147, 147, 0.1300868))
[1] 2.003129e-43

Nilai p-value menunjukkan probabilitas frekuensi riil anak-anak dengan keceriaan yang diamati, mengingat hipotesis kosong (null hypothesis) (lihat Rajeg & Rajeg, 2019, pp. 19–20) menyatakan bahwa seharusnya keceriaan dan sinonim yang lain memiliki distribusi yang setara untuk berkolokasi dengan anak-anak (dapat dilihat pada Tabel 1 adanya ketimpangan distribusi untuk anak-anak terhadap masing-masing sinonim). Semakin kecil p-value (biasanya di bawah 0.05), semakin kuat asosiasi/kekhasan atau disosiasi/ketidakhasan antara suatu kolokat dengan sinonim yang dikaji. Probabilitas yang dihasilkan dari Uji Binomial di atas sangatlah kecil (lihat kolom p_binimial pada Tabel 1)1; mengingat frekuensi riil anak-anak dengan keceriaan lebih tinggi dari yang diharapkan, dan kecilnya probabilitas Uji Binomial mengindikasikan asosiasi positif dan khas yang signifikan (tidak bisa dianggap sebagai suatu kebetulan) antara anak-anak dan keceriaan.

Berikut adalah nukilan kode R untuk Uji Binomial apabila frekuensi riil lebih kecil dari frekuensi harapan, seperti halnya antara anak-anak dan kebahagiaan.

binom.test(x = 16, # frekuensi kemunculan riil "anak-anak" dengan "kebahagiaan"
           n = 147, # total frekuensi "anak-anak" sebagai kolokat pada data
           p = 0.3847226, # probabilitas *a priori*
           alternative = "less" # karena frek. riil < frek. harapan
           )$p.value # keluarkan hanya p-value dari Uji Binomial-nya.
[1] 6.476552e-14
# kode alternatif yang menghasilkan p-value sama adalah sebagai berikut:
sum(dbinom(0:16, 147, 0.3847226))
[1] 6.476552e-14

Hasil di atas menunjukkan bahwa bukanlah suatu kebetulan bahwa anak-anak memiliki disosiasi dengan kebahagiaan. Dengan kata lain, anak-anak muncul secara signifikan lebih jarang dari yang diharapkan sebagai kolokat dari kebahagiaan.

Untuk kemudahan intuitif dalam memahami p-value sebagai derajat kekhasan suatu kolokat, CollAna menggunakan nilai logaritma10 dari p-value yang dihasilkan, dan menyebut gubahan nilai tesebut dengan daya asosiasi (association strength)/kekhasan (distinctiveness) (perhatikan kolom assocstr pada Tabel 1) (Hilpert, 2006, p. 247; Stefanowitsch & Gries, 2005, p. 7). Nukilan kode R berikut mencontohkan pengubahan p-value dalam bentuk nilai logaritma10.

# untuk p-value jika frek.riil > frek.harapan (data "anak-anak" dan "keceriaan")
-log10(x = 2.003129e-43)
[1] 42.69829
# untuk p-value jika frek.riil < frek.harapan (data "anak-anak" dan "kebahagiaan")
log10(x = 6.476552e-14)
[1] -13.18866

Dapat diperhatikan bahwa kekhasan akan ditunjukkan oleh nilai daya asosiasi yang positif (42.698), sedangkan ketidakkhasan akan ditunjukkan oleh nilai daya asosiasi yang negatif (-13.189). Semakin tinggi nilai daya asosiasi, semakin kuat asosiasi antara suatu kolokat dan sinonim. Sebaliknya, semakin rendahnya nilai daya asosiasi mengindikasikan lemahnya daya asosiasi antara suatu kolokat dan sinonim.

Penghitungan Uji Binomial untuk MDCA di atas dilakukan untuk semua tipe kolokat yang muncul dengan sinonim yang dikaji; dalam hal ini, terdapat 7290 tipe kolokat pada basis data. Penghitungan manual satu per satu akan tidak efektif. Untuk itu, dirancang fungsi pemrograman R yang dapat secara otomatis melakukan MDCA untuk seluruh kolokat yang ada. Fungsi ini disebut mdca() dan tersedia secara terbuka bersama dengan keseluruhan data dalam modul R (R Core Team, 2019) happyr (Rajeg, 2019). Selanjutnya, masing-masing kolokat dapat dirangking berdasarkan besaran daya asosiasi/kekhasannya terhadap masing-masing sinonim. Bagian HASIL DAN PEMBAHASAN akan menampilkan hasil MDCA untuk sinonim yang merupakan bentuk turunan dengan nominalisasi ke- -an (lihat catatan akhir 1).

2 DATA DAN METODOLOGI

Berikut adalah ukuran Korpus Leipzig yang digunakan dalam penelitian ini.

corpussize <- readr::read_tsv("data/leipzig_size.tsv")

── Column specification ────────────────────────────────────────────────────────────────────
cols(
  Corpus = col_character(),
  Size_print = col_number()
)
corpussize %>% 
  rename(`Nama berkas korpus`=Corpus,
         `Ukuran (berdasarkan kata)`=Size_print) %>%
  mutate(`Ukuran (berdasarkan kata)`=format(`Ukuran (berdasarkan kata)`, big.mark = ",")) %>% 
  knitr::kable(caption = "Berkas Korpus Leipzig Bahasa Indonesia yang digunakan pada makalah ini.", row.names = TRUE)
Berkas Korpus Leipzig Bahasa Indonesia yang digunakan pada makalah ini.
Nama berkas korpus Ukuran (berdasarkan kata)
1 ind_mixed_2012_1M-sentences.txt 15,052,159
2 ind_news_2008_300K-sentences.txt 5,875,376
3 ind_news_2009_300K-sentences.txt 5,868,276
4 ind_news_2010_300K-sentences.txt 5,874,158
5 ind_news_2011_300K-sentences.txt 5,852,211
6 ind_news_2012_300K-sentences.txt 5,873,523
7 ind_newscrawl_2011_1M-sentences.txt 16,376,426
8 ind_newscrawl_2012_1M-sentences.txt 16,916,778
9 ind_web_2011_300K-sentences.txt 4,472,885
10 ind_web_2012_1M-sentences.txt 15,844,629

Ukuran kesepuluh berkas Korpus Leipzig tersebut berjumlah 98,006,421 juta kata.

Berikut ini adalah kode untuk data frekuensi leksikon dalam Korpus Leipzig Bahasa Indonesia.

lexiconfreq <- readr::read_tsv("data/lexicon_freq.tsv")

── Column specification ────────────────────────────────────────────────────────────────────
cols(
  search.regex = col_character(),
  match = col_character(),
  forms = col_character(),
  n = col_double()
)
lexiconfreq %>%
  mutate(search.regex = str_replace_all(search.regex, "\\\\b", "`\\\\b`"),
         search.regex = str_replace_all(search.regex, "^(`\\\\b`)", "\\1(?i)"),
         forms = str_replace_all(forms, "nominalised", "nominalisasi"),
         forms = str_replace_all(forms, "root", "akar"),
         match = str_c("*", match, "*"),
         n = prettyNum(n, big.mark = ",")) %>%
  rename(`Pola pencarian`=search.regex, Leksikon=match, `Bentuk morfologis`=forms, N=n) %>%
  knitr::kable(caption="Frekuensi kemunculan sinonim <span style='font-variant:small-caps;'>kebahagiaan</span> di Korpus Leipzig Bahasa Indonesia.", row.names = TRUE)
Frekuensi kemunculan sinonim kebahagiaan di Korpus Leipzig Bahasa Indonesia.
Pola pencarian Leksikon Bentuk morfologis N
1 \b(?i)senang\b senang akar 14,531
2 \b(?i)bahagia\b bahagia akar 6,178
3 \b(?i)gembira\b gembira akar 4,387
4 \b(?i)ceria\b ceria akar 880
5 \b(?i)riang\b riang akar 528
6 \b(?i)kebahagiaan\b kebahagiaan nominalisasi ke- -an 3,228
7 \b(?i)kesenangan\b kesenangan nominalisasi ke- -an 1,293
8 \b(?i)kegembiraan\b kegembiraan nominalisasi ke- -an 1,211
9 \b(?i)keceriaan\b keceriaan nominalisasi ke- -an 265
10 \b(?i)keriangan\b keriangan nominalisasi ke- -an 60
full_sent_root <- readr::read_tsv("data/full_sentence_root.tsv")

── Column specification ────────────────────────────────────────────────────────────────────
cols(
  COLLOCATES = col_character(),
  WORDS = col_character(),
  SPAN = col_character(),
  CORPUS = col_character(),
  SENTENCE_NUM = col_character(),
  MATCHED_SENTENCE = col_character()
)
full_sent_nominalised <- readr::read_tsv("data/full_sentence_nominalised.tsv")

── Column specification ────────────────────────────────────────────────────────────────────
cols(
  COLLOCATES = col_character(),
  WORDS = col_character(),
  SPAN = col_character(),
  CORPUS = col_character(),
  SENTENCE_NUM = col_character(),
  MATCHED_SENTENCE = col_character()
)
colldb_nominalised <- readr::read_tsv("data/colloc_database_nominalised.tsv")

── Column specification ────────────────────────────────────────────────────────────────────
cols(
  WORDS = col_character(),
  COLLOCATES = col_character()
)
colldb_root <- readr::read_tsv("data/colloc_database_root_nominal.tsv")

── Column specification ────────────────────────────────────────────────────────────────────
cols(
  COLLOCATES = col_character(),
  WORDS = col_character(),
  SPAN = col_character(),
  CORPUS = col_character(),
  SENTENCE_NUM = col_character(),
  MATCHED_SENTENCE = col_character()
)
colldb_snippet <- readr::read_tsv("data/colldb_snippet.tsv")

── Column specification ────────────────────────────────────────────────────────────────────
cols(
  COLLOCATES = col_character(),
  WORDS = col_character(),
  SPAN = col_character(),
  CORPUS = col_character(),
  SENTENCE_NUM = col_character(),
  MATCHED_SENTENCE = col_character()
)
# knitr::kable(dplyr::sample_n(colldb_snippet, 5), row.names = TRUE, caption = "Nukilan basis data kolokat")
sample_n(colldb_snippet, 5)

3 HASIL DAN PEMBAHASAN

3.1 Luaran MDCA untuk semua kolokat dan sinonim (nominalisasi dan akar kata)

mdca_colloc

3.2 Kolokat khas untuk kebahagiaan

Tabel @ref(tab:kolokat-kebahagiaan) berikut menampilkan 20 kolokat khas teratas yang kuat berasosiasi dengan kebahagiaan.

happyr::mdca_attr(mdca_colloc_concise, cxn_type = "^kebahagiaan$") %>% 
  dplyr::top_n(n = 20, wt = assocstr) %>% 
  dplyr::select(-synonyms) %>%
  dplyr::mutate(exp = round(exp, 3), 
                collocates = paste("*", collocates, "*", sep = "")) %>%
  dplyr::rename(kolokat = collocates,
                signif = dec) %>% 
  knitr::kable(caption="Daftar 20 kolokat khas teratas untuk *kebahagiaan* di Korpus Leipzig Bahasa Indonesia.", row.names = TRUE)
Daftar 20 kolokat khas teratas untuk kebahagiaan di Korpus Leipzig Bahasa Indonesia.
kolokat n exp assocstr p_binomial p_holm signif
1 kesejahteraan 82 32.701 29.646 2.258e-30 1.646e-25 ***
2 sejati 89 37.703 26.595 2.538e-27 1.850e-22 ***
3 mencapai 87 42.704 16.944 1.136e-17 8.282e-13 ***
4 akhirat 66 29.624 16.829 1.482e-17 1.080e-12 ***
5 kesuksesan 42 18.467 11.562 2.745e-12 2.000e-07 ***
6 kedamaian 56 27.315 11.358 4.389e-12 3.198e-07 ***
7 menemukan 68 35.394 11.260 5.496e-12 4.005e-07 ***
8 manusia 87 50.399 10.034 9.257e-11 6.745e-06 ***
9 hidup 172 116.956 9.889 1.290e-10 9.401e-06 ***
10 abadi 49 24.238 9.626 2.365e-10 1.723e-05 ***
11 tangga 37 16.928 9.191 6.447e-10 4.697e-05 ***
12 menuju 45 22.314 8.829 1.483e-09 1.081e-04 ***
13 hakiki 26 10.772 8.610 2.452e-09 1.786e-04 ***
14 dunia 132 88.486 8.302 4.992e-09 3.637e-04 ***
15 keselamatan 32 14.619 8.049 8.939e-09 6.512e-04 ***
16 kesehatan 35 16.543 7.982 1.041e-08 7.584e-04 ***
17 meraih 45 23.853 7.274 5.322e-08 3.876e-03 **
18 umat 26 11.542 7.151 7.063e-08 5.144e-03 **
19 orang 120 82.331 6.855 1.396e-07 1.016e-02 *
20 merasakan 92 60.017 6.752 1.769e-07 1.288e-02 *
kesejahteraan <- coll_cxn_ngram(full_sent_nominalised, "^kesejahteraan$", "^kebahagiaan$", COLLOCATES, WORDS)

dunia <- coll_cxn_ngram(full_sent_nominalised, "^dunia$", "^kebahagiaan$", COLLOCATES, WORDS)

tangga <- coll_cxn_ngram(full_sent_nominalised, "^tangga$", "^kebahagiaan$", COLLOCATES, WORDS)

umat <- coll_cxn_ngram(full_sent_nominalised, "^umat$", "^kebahagiaan$", COLLOCATES, WORDS)

manusia <- coll_cxn_ngram(full_sent_nominalised, "^manusia$", "^kebahagiaan$", COLLOCATES, WORDS)

orang <- coll_cxn_ngram(full_sent_nominalised, "^orang$", "^kebahagiaan$", COLLOCATES, WORDS)

sejati <- coll_cxn_ngram(full_sent_nominalised, "^sejati$", "^kebahagiaan$", COLLOCATES, WORDS)

akhirat <- coll_cxn_ngram(full_sent_nominalised, "^akhirat$", "^kebahagiaan$", COLLOCATES, WORDS)

abadi <- coll_cxn_ngram(full_sent_nominalised, "^abadi$", "^kebahagiaan$", COLLOCATES, WORDS)

hakiki <- coll_cxn_ngram(full_sent_nominalised, "^hakiki$", "^kebahagiaan$", COLLOCATES, WORDS)
abadi$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kebahagiaan
1 <node>kebahagiaan</node> <colloc span=1>abadi</colloc> 27
2 <node>kebahagiaan</node> yang <colloc span=2>abadi</colloc> 7
3 <colloc span=-2>abadi</colloc> dan <node>kebahagiaan</node> 2
4 <node>kebahagiaan</node> dan kemuliaan nan <colloc span=4>abadi</colloc> 2
5 <colloc span=-2>abadi</colloc> atau <node>kebahagiaan</node> 1
6 <colloc span=-4>abadi</colloc> dan tak menjamin <node>kebahagiaan</node> 1
7 <colloc span=-4>abadi</colloc> kita harus merebut <node>kebahagiaan</node> 1
8 <colloc span=-4>abadi</colloc> tapi juga menemukan <node>kebahagiaan</node> 1
9 <node>kebahagiaan</node> adalah ketentraman <colloc span=3>abadi</colloc> 1
10 <node>kebahagiaan</node> dan kesengsaraan <colloc span=3>abadi</colloc> 1
11 <node>kebahagiaan</node> duniawi menjadi kebahagiaan <colloc span=4>abadi</colloc> 1
12 <node>kebahagiaan</node> hidup <colloc span=2>abadi</colloc> 1
13 <node>kebahagiaan</node> merasakan sentuhan <colloc span=3>abadi</colloc> 1
14 <node>kebahagiaan</node> spiritual yang <colloc span=3>abadi</colloc> 1
15 <node>kebahagiaan</node> yang hakiki dan <colloc span=4>abadi</colloc> 1
akhirat$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kebahagiaan
1 <node>kebahagiaan</node> dunia dan <colloc span=3>akhirat</colloc> 20
2 <node>kebahagiaan</node> <colloc span=1>akhirat</colloc> 8
3 <node>kebahagiaan</node> di <colloc span=2>akhirat</colloc> 7
4 <node>kebahagiaan</node> di dunia dan <colloc span=4>akhirat</colloc> 7
5 <node>kebahagiaan</node> dunia <colloc span=2>akhirat</colloc> 4
6 <colloc span=-3>akhirat</colloc> yang membawa <node>kebahagiaan</node> 2
7 <node>kebahagiaan</node> hidup dunia dan <colloc span=4>akhirat</colloc> 2
8 <node>kebahagiaan</node> kita di <colloc span=3>akhirat</colloc> 2
9 <node>kebahagiaan</node> yang abadi di <colloc span=4>akhirat</colloc> 2
10 <colloc span=-2>akhirat</colloc> dan <node>kebahagiaan</node> 1
11 <colloc span=-3>akhirat</colloc> karena hakekat <node>kebahagiaan</node> 1
12 <node>kebahagiaan</node> baik di <colloc span=3>akhirat</colloc> 1
13 <node>kebahagiaan</node> di dunia maupun <colloc span=4>akhirat</colloc> 1
14 <node>kebahagiaan</node> di dunia sebelum <colloc span=4>akhirat</colloc> 1
15 <node>kebahagiaan</node> dunia dan kebahagiaan <colloc span=4>akhirat</colloc> 1
16 <node>kebahagiaan</node> hidup di <colloc span=3>akhirat</colloc> 1
17 <node>kebahagiaan</node> kampung <colloc span=2>akhirat</colloc> 1
18 <node>kebahagiaan</node> ketenangan di dunia <colloc span=4>akhirat</colloc> 1
19 <node>kebahagiaan</node> manusia dunia <colloc span=3>akhirat</colloc> 1
20 <node>kebahagiaan</node> ukhrawi di <colloc span=3>akhirat</colloc> 1
21 <node>kebahagiaan</node> universal kebahagiaan dunia <colloc span=4>akhirat</colloc> 1
hakiki$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kebahagiaan
1 <node>kebahagiaan</node> yang <colloc span=2>hakiki</colloc> 11
2 <node>kebahagiaan</node> <colloc span=1>hakiki</colloc> 10
3 <colloc span=-2>hakiki</colloc> tentang <node>kebahagiaan</node> 1
4 <colloc span=-2>hakiki</colloc> yaitu <node>kebahagiaan</node> 1
5 <node>kebahagiaan</node> dan kesempurnaan <colloc span=3>hakiki</colloc> 1
6 <node>kebahagiaan</node> sa adah yang <colloc span=4>hakiki</colloc> 1
7 <node>kebahagiaan</node> yg <colloc span=2>hakiki</colloc> 1
sejati$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kebahagiaan
1 <node>kebahagiaan</node> <colloc span=1>sejati</colloc> 57
2 <node>kebahagiaan</node> yang <colloc span=2>sejati</colloc> 19
3 <colloc span=-2>sejati</colloc> adalah <node>kebahagiaan</node> 2
4 <colloc span=-2>sejati</colloc> memberikan <node>kebahagiaan</node> 1
5 <colloc span=-4>sejati</colloc> memberikan kenyamanan dan <node>kebahagiaan</node> 1
6 <node>kebahagiaan</node> bagi seorang muslim <colloc span=4>sejati</colloc> 1
7 <node>kebahagiaan</node> baru yang <colloc span=3>sejati</colloc> 1
8 <node>kebahagiaan</node> dan cinta <colloc span=3>sejati</colloc> 1
9 <node>kebahagiaan</node> dan kedamaian <colloc span=3>sejati</colloc> 1
10 <node>kebahagiaan</node> dan kedamaian yang <colloc span=4>sejati</colloc> 1
11 <node>kebahagiaan</node> dan kegembiraan <colloc span=3>sejati</colloc> 1
12 <node>kebahagiaan</node> dan kesejahteraan yang <colloc span=4>sejati</colloc> 1
13 <node>kebahagiaan</node> diri yang <colloc span=3>sejati</colloc> 1
14 <node>kebahagiaan</node> hidup yang <colloc span=3>sejati</colloc> 1
tangga$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kebahagiaan
1 <node>kebahagiaan</node> rumah <colloc span=2>tangga</colloc> 13
2 <node>kebahagiaan</node> dalam hidup berumah <colloc span=4>tangga</colloc> 3
3 <node>kebahagiaan</node> dalam rumah <colloc span=3>tangga</colloc> 3
4 <node>kebahagiaan</node> dalam kehidupan rumah <colloc span=4>tangga</colloc> 2
5 <node>kebahagiaan</node> dan keintiman rumah <colloc span=4>tangga</colloc> 2
6 <colloc span=-2>tangga</colloc> baik <node>kebahagiaan</node> 1
7 <colloc span=-2>tangga</colloc> ternyata <node>kebahagiaan</node> 1
8 <colloc span=-3>tangga</colloc> agar mendapatkan <node>kebahagiaan</node> 1
9 <colloc span=-3>tangga</colloc> itu kan <node>kebahagiaan</node> 1
10 <colloc span=-3>tangga</colloc> kebahagian yaitu <node>kebahagiaan</node> 1
11 <colloc span=-3>tangga</colloc> tentunya menginginkan <node>kebahagiaan</node> 1
12 <colloc span=-4>tangga</colloc> tentu menjadi suatu <node>kebahagiaan</node> 1
13 <colloc span=-4>tangga</colloc> yang dapat mendatangkan <node>kebahagiaan</node> 1
14 <node>kebahagiaan</node> bahtera rumah <colloc span=3>tangga</colloc> 1
15 <node>kebahagiaan</node> dalam berumah <colloc span=3>tangga</colloc> 1
16 <node>kebahagiaan</node> dan kehidupan rumah <colloc span=4>tangga</colloc> 1
17 <node>kebahagiaan</node> hdup dalam berumah <colloc span=4>tangga</colloc> 1
18 <node>kebahagiaan</node> hidup berumah <colloc span=3>tangga</colloc> 1
19 <node>kebahagiaan</node> pada rumah <colloc span=3>tangga</colloc> 1
dunia$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kebahagiaan
1 <node>kebahagiaan</node> <colloc span=1>dunia</colloc> 33
2 <node>kebahagiaan</node> di <colloc span=2>dunia</colloc> 32
3 <node>kebahagiaan</node> hidup di <colloc span=3>dunia</colloc> 11
4 <node>kebahagiaan</node> hidup <colloc span=2>dunia</colloc> 3
5 <colloc span=-2>dunia</colloc> dan <node>kebahagiaan</node> 2
6 <colloc span=-3>dunia</colloc> ini daripada <node>kebahagiaan</node> 2
7 <colloc span=-3>dunia</colloc> untuk mencari <node>kebahagiaan</node> 2
8 <node>kebahagiaan</node> abadi di <colloc span=3>dunia</colloc> 2
9 <colloc span=-2>dunia</colloc> atau <node>kebahagiaan</node> 1
10 <colloc span=-2>dunia</colloc> demi <node>kebahagiaan</node> 1
11 <colloc span=-2>dunia</colloc> dengan <node>kebahagiaan</node> 1
12 <colloc span=-2>dunia</colloc> jadi <node>kebahagiaan</node> 1
13 <colloc span=-2>dunia</colloc> lebih-lebih <node>kebahagiaan</node> 1
14 <colloc span=-2>dunia</colloc> melainkan <node>kebahagiaan</node> 1
15 <colloc span=-3>dunia</colloc> ini dan <node>kebahagiaan</node> 1
16 <colloc span=-3>dunia</colloc> ini mendambakan <node>kebahagiaan</node> 1
17 <colloc span=-3>dunia</colloc> menjadi lahan <node>kebahagiaan</node> 1
18 <colloc span=-4>dunia</colloc> adalah untuk mengejar <node>kebahagiaan</node> 1
19 <colloc span=-4>dunia</colloc> berlomba-lomba mencapai taraf <node>kebahagiaan</node> 1
20 <colloc span=-4>dunia</colloc> dan berilah kami <node>kebahagiaan</node> 1
21 <colloc span=-4>dunia</colloc> dia telah memberikan <node>kebahagiaan</node> 1
22 <colloc span=-4>dunia</colloc> ini daripada mengejar <node>kebahagiaan</node> 1
23 <colloc span=-4>dunia</colloc> ini ke alam <node>kebahagiaan</node> 1
24 <colloc span=-4>dunia</colloc> ini tidak menjamin <node>kebahagiaan</node> 1
25 <colloc span=-4>dunia</colloc> ini yakni menggapai <node>kebahagiaan</node> 1
26 <colloc span=-4>dunia</colloc> itu menutup jalan <node>kebahagiaan</node> 1
27 <colloc span=-4>dunia</colloc> kita sambut dengan <node>kebahagiaan</node> 1
28 <colloc span=-4>dunia</colloc> saja tetapi juga <node>kebahagiaan</node> 1
29 <colloc span=-4>dunia</colloc> tidak selalu menjanjikan <node>kebahagiaan</node> 1
30 <node>kebahagiaan</node> baik di <colloc span=3>dunia</colloc> 1
31 <node>kebahagiaan</node> dalam <colloc span=2>dunia</colloc> 1
32 <node>kebahagiaan</node> dan kebaikan di <colloc span=4>dunia</colloc> 1
33 <node>kebahagiaan</node> dan keselamatan <colloc span=3>dunia</colloc> 1
34 <node>kebahagiaan</node> dari <colloc span=2>dunia</colloc> 1
35 <node>kebahagiaan</node> di akhirat di <colloc span=4>dunia</colloc> 1
36 <node>kebahagiaan</node> entah di <colloc span=3>dunia</colloc> 1
37 <node>kebahagiaan</node> hidup baik di <colloc span=4>dunia</colloc> 1
38 <node>kebahagiaan</node> hidup pemeluknya di <colloc span=4>dunia</colloc> 1
39 <node>kebahagiaan</node> hidup rakyatnya di <colloc span=4>dunia</colloc> 1
40 <node>kebahagiaan</node> hidupnya di <colloc span=3>dunia</colloc> 1
41 <node>kebahagiaan</node> ke masyarakat <colloc span=3>dunia</colloc> 1
42 <node>kebahagiaan</node> ketenangan di <colloc span=3>dunia</colloc> 1
43 <node>kebahagiaan</node> kita di <colloc span=3>dunia</colloc> 1
44 <node>kebahagiaan</node> manusia <colloc span=2>dunia</colloc> 1
45 <node>kebahagiaan</node> material di <colloc span=3>dunia</colloc> 1
46 <node>kebahagiaan</node> melalui <colloc span=2>dunia</colloc> 1
47 <node>kebahagiaan</node> mereka di <colloc span=3>dunia</colloc> 1
48 <node>kebahagiaan</node> orang <colloc span=2>dunia</colloc> 1
49 <node>kebahagiaan</node> pada <colloc span=2>dunia</colloc> 1
50 <node>kebahagiaan</node> selama hidup di <colloc span=4>dunia</colloc> 1
51 <node>kebahagiaan</node> umat baik di <colloc span=4>dunia</colloc> 1
52 <node>kebahagiaan</node> universal kebahagiaan <colloc span=3>dunia</colloc> 1
53 <node>kebahagiaan</node> untuknya sungguh surga <colloc span=4>dunia</colloc> 1
umat$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kebahagiaan
1 <node>kebahagiaan</node> <colloc span=1>umat</colloc> 8
2 <node>kebahagiaan</node> bagi <colloc span=2>umat</colloc> 3
3 <colloc span=-4>umat</colloc> manusia untuk mencapai <node>kebahagiaan</node> 2
4 <node>kebahagiaan</node> dan kesejahteraan <colloc span=3>umat</colloc> 2
5 <colloc span=-2>umat</colloc> manusia <node>kebahagiaan</node> 1
6 <colloc span=-3>umat</colloc> untuk berbagi <node>kebahagiaan</node> 1
7 <colloc span=-4>umat</colloc> buddha kita mengharapkan <node>kebahagiaan</node> 1
8 <colloc span=-4>umat</colloc> islam dapat berbagi <node>kebahagiaan</node> 1
9 <colloc span=-4>umat</colloc> kepada ketenangan batin <node>kebahagiaan</node> 1
10 <colloc span=-4>umat</colloc> untuk mencari pencerahan <node>kebahagiaan</node> 1
11 <node>kebahagiaan</node> dapat merata kepada <colloc span=4>umat</colloc> 1
12 <node>kebahagiaan</node> hidup <colloc span=2>umat</colloc> 1
13 <node>kebahagiaan</node> kemakmauran fan perdamaian <colloc span=4>umat</colloc> 1
14 <node>kebahagiaan</node> kepada <colloc span=2>umat</colloc> 1
15 <node>kebahagiaan</node> seluruh <colloc span=2>umat</colloc> 1
manusia$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kebahagiaan
1 <node>kebahagiaan</node> <colloc span=1>manusia</colloc> 17
2 <colloc span=-3>manusia</colloc> untuk mencapai <node>kebahagiaan</node> 5
3 <node>kebahagiaan</node> umat <colloc span=2>manusia</colloc> 5
4 <colloc span=-1>manusia</colloc> <node>kebahagiaan</node> 3
5 <node>kebahagiaan</node> bagi umat <colloc span=3>manusia</colloc> 3
6 <colloc span=-2>manusia</colloc> adalah <node>kebahagiaan</node> 2
7 <colloc span=-2>manusia</colloc> menuju <node>kebahagiaan</node> 2
8 <colloc span=-3>manusia</colloc> dapat mencapai <node>kebahagiaan</node> 2
9 <node>kebahagiaan</node> dan kesejahteraan umat <colloc span=4>manusia</colloc> 2
10 <node>kebahagiaan</node> hidup <colloc span=2>manusia</colloc> 2
11 <colloc span=-2>manusia</colloc> bahwa <node>kebahagiaan</node> 1
12 <colloc span=-2>manusia</colloc> berbagi <node>kebahagiaan</node> 1
13 <colloc span=-2>manusia</colloc> kepada <node>kebahagiaan</node> 1
14 <colloc span=-2>manusia</colloc> membayangkan <node>kebahagiaan</node> 1
15 <colloc span=-2>manusia</colloc> memerlukan <node>kebahagiaan</node> 1
16 <colloc span=-2>manusia</colloc> memperoleh <node>kebahagiaan</node> 1
17 <colloc span=-2>manusia</colloc> mendapatkan <node>kebahagiaan</node> 1
18 <colloc span=-2>manusia</colloc> mengejar <node>kebahagiaan</node> 1
19 <colloc span=-2>manusia</colloc> menginginkan <node>kebahagiaan</node> 1
20 <colloc span=-2>manusia</colloc> meraih <node>kebahagiaan</node> 1
21 <colloc span=-2>manusia</colloc> termasuk <node>kebahagiaan</node> 1
22 <colloc span=-2>manusia</colloc> walau <node>kebahagiaan</node> 1
23 <colloc span=-2>manusia</colloc> yaitu <node>kebahagiaan</node> 1
24 <colloc span=-3>manusia</colloc> adalah mencapai <node>kebahagiaan</node> 1
25 <colloc span=-3>manusia</colloc> akan mendapatkan <node>kebahagiaan</node> 1
26 <colloc span=-3>manusia</colloc> dalam soal <node>kebahagiaan</node> 1
27 <colloc span=-3>manusia</colloc> teguh beriman <node>kebahagiaan</node> 1
28 <colloc span=-3>manusia</colloc> tentu mengharapkan <node>kebahagiaan</node> 1
29 <colloc span=-3>manusia</colloc> untuk mendapatkan <node>kebahagiaan</node> 1
30 <colloc span=-3>manusia</colloc> yaitu mencapai <node>kebahagiaan</node> 1
31 <colloc span=-3>manusia</colloc> yang membawa <node>kebahagiaan</node> 1
32 <colloc span=-4>manusia</colloc> ditujukan untuk mencapai <node>kebahagiaan</node> 1
33 <colloc span=-4>manusia</colloc> karena ia adalah <node>kebahagiaan</node> 1
34 <colloc span=-4>manusia</colloc> selalu ingin mencari <node>kebahagiaan</node> 1
35 <colloc span=-4>manusia</colloc> yang berakal untuk <node>kebahagiaan</node> 1
36 <node>kebahagiaan</node> abadi kepada <colloc span=3>manusia</colloc> 1
37 <node>kebahagiaan</node> adalah bagi <colloc span=3>manusia</colloc> 1
38 <node>kebahagiaan</node> adalah perwujudan diri <colloc span=4>manusia</colloc> 1
39 <node>kebahagiaan</node> beribu-ribu bahkan berjuta-juta <colloc span=4>manusia</colloc> 1
40 <node>kebahagiaan</node> dan kebaikan untuk <colloc span=4>manusia</colloc> 1
41 <node>kebahagiaan</node> dan keberdayaan hidup <colloc span=4>manusia</colloc> 1
42 <node>kebahagiaan</node> dan kesengsaraan abadi <colloc span=4>manusia</colloc> 1
43 <node>kebahagiaan</node> dengan sesama <colloc span=3>manusia</colloc> 1
44 <node>kebahagiaan</node> hakiki <colloc span=2>manusia</colloc> 1
45 <node>kebahagiaan</node> hidup umat <colloc span=3>manusia</colloc> 1
46 <node>kebahagiaan</node> itu tiba-tiba seorang <colloc span=4>manusia</colloc> 1
47 <node>kebahagiaan</node> karena <colloc span=2>manusia</colloc> 1
48 <node>kebahagiaan</node> kepada umat <colloc span=3>manusia</colloc> 1
49 <node>kebahagiaan</node> kesejahteraan dan kemuliaan <colloc span=4>manusia</colloc> 1
50 <node>kebahagiaan</node> mengatur pergaulan <colloc span=3>manusia</colloc> 1
51 <node>kebahagiaan</node> menjadi dambaan semua <colloc span=4>manusia</colloc> 1
52 <node>kebahagiaan</node> pada <colloc span=2>manusia</colloc> 1
53 <node>kebahagiaan</node> seluruh umat <colloc span=3>manusia</colloc> 1
54 <node>kebahagiaan</node> semua <colloc span=2>manusia</colloc> 1
orang$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kebahagiaan
1 <node>kebahagiaan</node> <colloc span=1>orang</colloc> 33
2 <node>kebahagiaan</node> bagi <colloc span=2>orang</colloc> 3
3 <node>kebahagiaan</node> dengan <colloc span=2>orang</colloc> 3
4 <node>kebahagiaan</node> kepada <colloc span=2>orang</colloc> 3
5 <colloc span=-2>orang</colloc> mencari <node>kebahagiaan</node> 2
6 <colloc span=-3>orang</colloc> benar dengan <node>kebahagiaan</node> 2
7 <node>kebahagiaan</node> bagi semua <colloc span=3>orang</colloc> 2
8 <node>kebahagiaan</node> demi kebahagiaan <colloc span=3>orang</colloc> 2
9 <node>kebahagiaan</node> pada <colloc span=2>orang</colloc> 2
10 <node>kebahagiaan</node> sebagai <colloc span=2>orang</colloc> 2
11 <node>kebahagiaan</node> yang diperoleh oleh <colloc span=4>orang</colloc> 2
12 <colloc span=-2>orang</colloc> bahwa <node>kebahagiaan</node> 1
13 <colloc span=-2>orang</colloc> menjadikan <node>kebahagiaan</node> 1
14 <colloc span=-2>orang</colloc> merasakan <node>kebahagiaan</node> 1
15 <colloc span=-3>orang</colloc> akan merasakan <node>kebahagiaan</node> 1
16 <colloc span=-3>orang</colloc> beli kepuasan <node>kebahagiaan</node> 1
17 <colloc span=-3>orang</colloc> boleh memperoleh <node>kebahagiaan</node> 1
18 <colloc span=-3>orang</colloc> dalam suasana <node>kebahagiaan</node> 1
19 <colloc span=-3>orang</colloc> dan semoga <node>kebahagiaan</node> 1
20 <colloc span=-3>orang</colloc> dunia dengan <node>kebahagiaan</node> 1
21 <colloc span=-3>orang</colloc> itu menemukan <node>kebahagiaan</node> 1
22 <colloc span=-3>orang</colloc> lainpun menikmati <node>kebahagiaan</node> 1
23 <colloc span=-3>orang</colloc> menuju ahkir <node>kebahagiaan</node> 1
24 <colloc span=-3>orang</colloc> miskin maka <node>kebahagiaan</node> 1
25 <colloc span=-3>orang</colloc> tentunya mendambakan <node>kebahagiaan</node> 1
26 <colloc span=-3>orang</colloc> tuanya meninggalkan <node>kebahagiaan</node> 1
27 <colloc span=-3>orang</colloc> untuk merengkuh <node>kebahagiaan</node> 1
28 <colloc span=-3>orang</colloc> yang mencari <node>kebahagiaan</node> 1
29 <colloc span=-3>orang</colloc> yang mendapatkan <node>kebahagiaan</node> 1
30 <colloc span=-3>orang</colloc> yang menemukan <node>kebahagiaan</node> 1
31 <colloc span=-4>orang</colloc> bahwa bisa jadi <node>kebahagiaan</node> 1
32 <colloc span=-4>orang</colloc> ini mampu mencicipi <node>kebahagiaan</node> 1
33 <colloc span=-4>orang</colloc> kaya akan mendapatkan <node>kebahagiaan</node> 1
34 <colloc span=-4>orang</colloc> lain adalah suatu <node>kebahagiaan</node> 1
35 <colloc span=-4>orang</colloc> lain boleh memikili <node>kebahagiaan</node> 1
36 <colloc span=-4>orang</colloc> lain dan merasakan <node>kebahagiaan</node> 1
37 <colloc span=-4>orang</colloc> lain dapat menikmati <node>kebahagiaan</node> 1
38 <colloc span=-4>orang</colloc> lain demi mencapai <node>kebahagiaan</node> 1
39 <colloc span=-4>orang</colloc> lain misalnya saja <node>kebahagiaan</node> 1
40 <colloc span=-4>orang</colloc> lain untuk menciptakan <node>kebahagiaan</node> 1
41 <colloc span=-4>orang</colloc> merindukan hidup penuh <node>kebahagiaan</node> 1
42 <colloc span=-4>orang</colloc> tidak perlu mencari <node>kebahagiaan</node> 1
43 <colloc span=-4>orang</colloc> untuk merayakan sebuah <node>kebahagiaan</node> 1
44 <colloc span=-4>orang</colloc> yang dicintai adalah <node>kebahagiaan</node> 1
45 <colloc span=-4>orang</colloc> yang ingin merebut <node>kebahagiaan</node> 1
46 <colloc span=-4>orang</colloc> yang menganggap bahwa <node>kebahagiaan</node> 1
47 <colloc span=-4>orang</colloc> yang tidak mendatangkan <node>kebahagiaan</node> 1
48 <node>kebahagiaan</node> ada <colloc span=2>orang</colloc> 1
49 <node>kebahagiaan</node> adalah harapan <colloc span=3>orang</colloc> 1
50 <node>kebahagiaan</node> adalah mimpi setiap <colloc span=4>orang</colloc> 1
51 <node>kebahagiaan</node> anak adalah kebahagiaan <colloc span=4>orang</colloc> 1
52 <node>kebahagiaan</node> anda dengan <colloc span=3>orang</colloc> 1
53 <node>kebahagiaan</node> atau keselamatan <colloc span=3>orang</colloc> 1
54 <node>kebahagiaan</node> biarlah <colloc span=2>orang</colloc> 1
55 <node>kebahagiaan</node> dan karya kepada <colloc span=4>orang</colloc> 1
56 <node>kebahagiaan</node> dan kesejahteraan <colloc span=3>orang</colloc> 1
57 <node>kebahagiaan</node> dan semua <colloc span=3>orang</colloc> 1
58 <node>kebahagiaan</node> diri anda dan <colloc span=4>orang</colloc> 1
59 <node>kebahagiaan</node> dirinya dan kesejahteraan <colloc span=4>orang</colloc> 1
60 <node>kebahagiaan</node> dua <colloc span=2>orang</colloc> 1
61 <node>kebahagiaan</node> itu ada bersama <colloc span=4>orang</colloc> 1
62 <node>kebahagiaan</node> jika bisa membantu <colloc span=4>orang</colloc> 1
63 <node>kebahagiaan</node> keamanan dan kemajuan <colloc span=4>orang</colloc> 1
64 <node>kebahagiaan</node> kecuali dalam hati <colloc span=4>orang</colloc> 1
65 <node>kebahagiaan</node> kepada banyak <colloc span=3>orang</colloc> 1
66 <node>kebahagiaan</node> kepada persetujuan <colloc span=3>orang</colloc> 1
67 <node>kebahagiaan</node> kita juga bagi <colloc span=4>orang</colloc> 1
68 <node>kebahagiaan</node> lebih baik <colloc span=3>orang</colloc> 1
69 <node>kebahagiaan</node> mereka 33 <colloc span=3>orang</colloc> 1
70 <node>kebahagiaan</node> pada tiap-tiap <colloc span=3>orang</colloc> 1
71 <node>kebahagiaan</node> para <colloc span=2>orang</colloc> 1
72 <node>kebahagiaan</node> serta melemparkan <colloc span=3>orang</colloc> 1
73 <node>kebahagiaan</node> terbesar mencakup semua <colloc span=4>orang</colloc> 1
74 <node>kebahagiaan</node> tertinggi bagi <colloc span=3>orang</colloc> 1
75 <node>kebahagiaan</node> yang pasti <colloc span=3>orang</colloc> 1

Below is the n-grams for the metaphorical collocates

coll_cxn_ngram(full_sent_nominalised, "^mencapai$", "^kebahagiaan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kebahagiaan
1 <colloc span=-1>mencapai</colloc> <node>kebahagiaan</node> 68
2 <colloc span=-2>mencapai</colloc> puncak <node>kebahagiaan</node> 2
3 <colloc span=-2>mencapai</colloc> taraf <node>kebahagiaan</node> 2
4 <colloc span=-2>mencapai</colloc> kesenangan <node>kebahagiaan</node> 1
5 <colloc span=-2>mencapai</colloc> level <node>kebahagiaan</node> 1
6 <colloc span=-2>mencapai</colloc> pemenuhan <node>kebahagiaan</node> 1
7 <colloc span=-2>mencapai</colloc> suatu <node>kebahagiaan</node> 1
8 <colloc span=-3>mencapai</colloc> cita-cita karena <node>kebahagiaan</node> 1
9 <colloc span=-3>mencapai</colloc> keberhasilan dan <node>kebahagiaan</node> 1
10 <colloc span=-3>mencapai</colloc> kepuasan dan <node>kebahagiaan</node> 1
11 <colloc span=-3>mencapai</colloc> keselamatan dan <node>kebahagiaan</node> 1
12 <colloc span=-3>mencapai</colloc> keselarasan dan <node>kebahagiaan</node> 1
13 <colloc span=-3>mencapai</colloc> kesenangan dan <node>kebahagiaan</node> 1
14 <colloc span=-3>mencapai</colloc> pengetahuan dan <node>kebahagiaan</node> 1
15 <colloc span=-4>mencapai</colloc> kesejahteran mental dan <node>kebahagiaan</node> 1
16 <colloc span=-4>mencapai</colloc> moksatram dan jagathita <node>kebahagiaan</node> 1
17 <node>kebahagiaan</node> bahwa rakyat palestina <colloc span=4>mencapai</colloc> 1
18 <node>kebahagiaan</node> manusia harus <colloc span=3>mencapai</colloc> 1
coll_cxn_ngram(full_sent_nominalised, "^menemukan$", "^kebahagiaan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kebahagiaan
1 <colloc span=-1>menemukan</colloc> <node>kebahagiaan</node> 53
2 <colloc span=-3>menemukan</colloc> kepuasan kedamaian <node>kebahagiaan</node> 2
3 <colloc span=-2>menemukan</colloc> bahwa <node>kebahagiaan</node> 1
4 <colloc span=-2>menemukan</colloc> kembali <node>kebahagiaan</node> 1
5 <colloc span=-2>menemukan</colloc> sekeping <node>kebahagiaan</node> 1
6 <colloc span=-2>menemukan</colloc> suatu <node>kebahagiaan</node> 1
7 <colloc span=-3>menemukan</colloc> dan membagikan <node>kebahagiaan</node> 1
8 <colloc span=-3>menemukan</colloc> kebanggaan dan <node>kebahagiaan</node> 1
9 <colloc span=-3>menemukan</colloc> keindahan dan <node>kebahagiaan</node> 1
10 <colloc span=-3>menemukan</colloc> relevansi konsep <node>kebahagiaan</node> 1
11 <colloc span=-4>menemukan</colloc> besaran gaji mempengaruhi <node>kebahagiaan</node> 1
12 <colloc span=-4>menemukan</colloc> jawaban saya mencari <node>kebahagiaan</node> 1
13 <colloc span=-4>menemukan</colloc> kehangatan kasih sayang <node>kebahagiaan</node> 1
14 <colloc span=-4>menemukan</colloc> satu-satunya jalan menuju <node>kebahagiaan</node> 1
15 <node>kebahagiaan</node> mereka akan <colloc span=3>menemukan</colloc> 1
coll_cxn_ngram(full_sent_nominalised, "^menuju$", "^kebahagiaan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kebahagiaan
1 <colloc span=-1>menuju</colloc> <node>kebahagiaan</node> 27
2 <colloc span=-3>menuju</colloc> keindahan dan <node>kebahagiaan</node> 4
3 <colloc span=-2>menuju</colloc> ahkir <node>kebahagiaan</node> 1
4 <colloc span=-2>menuju</colloc> cahaya <node>kebahagiaan</node> 1
5 <colloc span=-2>menuju</colloc> falah <node>kebahagiaan</node> 1
6 <colloc span=-2>menuju</colloc> negeri <node>kebahagiaan</node> 1
7 <colloc span=-2>menuju</colloc> pembebasan <node>kebahagiaan</node> 1
8 <colloc span=-3>menuju</colloc> kepada kesenangan <node>kebahagiaan</node> 1
9 <colloc span=-3>menuju</colloc> kesenangan dan <node>kebahagiaan</node> 1
10 <colloc span=-3>menuju</colloc> sukses dan <node>kebahagiaan</node> 1
11 <colloc span=-3>menuju</colloc> sumber segala <node>kebahagiaan</node> 1
12 <colloc span=-3>menuju</colloc> surga dan <node>kebahagiaan</node> 1
13 <colloc span=-4>menuju</colloc> kearifan lalu meraih <node>kebahagiaan</node> 1
14 <colloc span=-4>menuju</colloc> tujuan-tujuan yang mana <node>kebahagiaan</node> 1
15 <node>kebahagiaan</node> diperoleh dari perjalanan <colloc span=4>menuju</colloc> 1
16 <node>kebahagiaan</node> kekal jalan khusus <colloc span=4>menuju</colloc> 1
coll_cxn_ngram(full_sent_nominalised, "^meraih$", "^kebahagiaan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kebahagiaan
1 <colloc span=-1>meraih</colloc> <node>kebahagiaan</node> 38
2 <colloc span=-2>meraih</colloc> semua <node>kebahagiaan</node> 1
3 <colloc span=-2>meraih</colloc> titik <node>kebahagiaan</node> 1
4 <colloc span=-4>meraih</colloc> kebahagiaan spiritual sebagai <node>kebahagiaan</node> 1
5 <colloc span=-4>meraih</colloc> materi yang mendatangkan <node>kebahagiaan</node> 1
6 <colloc span=-4>meraih</colloc> puncak sukses dan <node>kebahagiaan</node> 1
7 <node>kebahagiaan</node> dalam gairah saat <colloc span=4>meraih</colloc> 1
8 <node>kebahagiaan</node> meluap-luap ketika <colloc span=3>meraih</colloc> 1

3.3 Kolokat khas untuk kesenangan

Tabel @ref(tab:kolokat-kesenangan) berikut menampilkan 20 kolokat khas teratas yang kuat berasosiasi dengan kesenangan.

happyr::mdca_attr(mdca_colloc_concise, cxn_type = "^kesenangan$") %>% 
  dplyr::top_n(n = 20, wt = assocstr) %>% 
  dplyr::select(-synonyms) %>%
  dplyr::mutate(exp = round(exp, 3), 
                collocates = paste("*", collocates, "*", sep = "")) %>%
  dplyr::rename(kolokat = collocates,
                signif = dec) %>% 
  knitr::kable(caption="Daftar 20 kolokat khas teratas untuk *kesenangan* di Korpus Leipzig Bahasa Indonesia.", row.names = TRUE)
Daftar 20 kolokat khas teratas untuk kesenangan di Korpus Leipzig Bahasa Indonesia.
kolokat n exp assocstr p_binomial p_holm signif
1 duniawi 52 10.298 28.818 1.520e-29 1.108e-24 ***
2 pribadi 30 5.994 16.702 1.985e-17 1.446e-12 ***
3 mencari 55 17.522 15.757 1.748e-16 1.274e-11 ***
4 kenikmatan 37 11.835 10.789 1.624e-11 1.184e-06 ***
5 hobi 14 2.306 10.278 5.277e-11 3.845e-06 ***
6 nafsu 19 3.996 10.114 7.689e-11 5.603e-06 ***
7 semata 14 2.613 8.756 1.756e-09 1.279e-04 ***
8 keuntungan 12 2.152 7.934 1.165e-08 8.488e-04 ***
9 kepentingan 13 2.613 7.464 3.438e-08 2.504e-03 **
10 seksual 10 1.691 7.157 6.964e-08 5.072e-03 **
11 menikmati 42 18.291 7.136 7.312e-08 5.326e-03 **
12 menunda 8 1.230 6.507 3.115e-07 2.268e-02 *
13 kebutuhan 10 1.998 5.873 1.341e-06 9.762e-02 ms
14 mengejar 17 5.072 5.844 1.431e-06 1.042e-01 ns
15 prinsip 8 1.383 5.616 2.421e-06 1.762e-01 ns
16 mendapat 22 7.993 5.521 3.016e-06 2.196e-01 ns
17 berdasarkan 10 2.152 5.394 4.040e-06 2.941e-01 ns
18 hawa 9 1.844 5.171 6.744e-06 4.908e-01 ns
19 waktu 18 6.302 4.896 1.270e-05 9.242e-01 ns
20 dosa 6 0.922 4.880 1.319e-05 9.594e-01 ns
coll_cxn_ngram(full_sent_nominalised, "^pribadi$", "^kesenangan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <node>kesenangan</node> <colloc span=1>pribadi</colloc> 19
2 <node>kesenangan</node> atau minat <colloc span=3>pribadi</colloc> 2
3 <colloc span=-2>pribadi</colloc> dan <node>kesenangan</node> 1
4 <colloc span=-3>pribadi</colloc> dijunjung tinggi <node>kesenangan</node> 1
5 <colloc span=-3>pribadi</colloc> kenyamanan keuntungan <node>kesenangan</node> 1
6 <colloc span=-4>pribadi</colloc> untuk bacaan dan <node>kesenangan</node> 1
7 <node>kesenangan</node> dan kepentingan-kepentingan <colloc span=3>pribadi</colloc> 1
8 <node>kesenangan</node> dan ketenteraman <colloc span=3>pribadi</colloc> 1
9 <node>kesenangan</node> dan keuntungan diri <colloc span=4>pribadi</colloc> 1
10 <node>kesenangan</node> diri <colloc span=2>pribadi</colloc> 1
11 <node>kesenangan</node> secara <colloc span=2>pribadi</colloc> 1
coll_cxn_ngram(full_sent_nominalised, "^kenikmatan$", "^kesenangan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <node>kesenangan</node> dan <colloc span=2>kenikmatan</colloc> 16
2 <colloc span=-2>kenikmatan</colloc> dan <node>kesenangan</node> 7
3 <colloc span=-1>kenikmatan</colloc> <node>kesenangan</node> 3
4 <colloc span=-2>kenikmatan</colloc> atau <node>kesenangan</node> 2
5 <node>kesenangan</node> <colloc span=1>kenikmatan</colloc> 2
6 <node>kesenangan</node> atau <colloc span=2>kenikmatan</colloc> 2
7 <colloc span=-2>kenikmatan</colloc> kegembiraan <node>kesenangan</node> 1
8 <node>kesenangan</node> hidup adalah <colloc span=3>kenikmatan</colloc> 1
9 <node>kesenangan</node> kegembiraan dan <colloc span=3>kenikmatan</colloc> 1
10 <node>kesenangan</node> pembaca <colloc span=2>kenikmatan</colloc> 1
11 <node>kesenangan</node> ukhrowi daripada <colloc span=3>kenikmatan</colloc> 1
coll_cxn_ngram(full_sent_nominalised, "^duniawi$", "^kesenangan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <node>kesenangan</node> <colloc span=1>duniawi</colloc> 43
2 <node>kesenangan</node> hidup <colloc span=2>duniawi</colloc> 2
3 <colloc span=-1>duniawi</colloc> <node>kesenangan</node> 1
4 <colloc span=-2>duniawi</colloc> dan <node>kesenangan</node> 1
5 <colloc span=-3>duniawi</colloc> terutama sekali <node>kesenangan</node> 1
6 <node>kesenangan</node> fisik dan <colloc span=3>duniawi</colloc> 1
7 <node>kesenangan</node> mewakili kebutuhan <colloc span=3>duniawi</colloc> 1
8 <node>kesenangan</node> terhadap hal- hal <colloc span=4>duniawi</colloc> 1
9 <node>kesenangan</node> ukhrowi daripada kenikmatan <colloc span=4>duniawi</colloc> 1
coll_cxn_ngram(full_sent_nominalised, "^nafsu$", "^kesenangan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <colloc span=-2>nafsu</colloc> dan <node>kesenangan</node> 4
2 <node>kesenangan</node> hawa <colloc span=2>nafsu</colloc> 3
3 <node>kesenangan</node> <colloc span=1>nafsu</colloc> 2
4 <node>kesenangan</node> dan <colloc span=2>nafsu</colloc> 2
5 <colloc span=-1>nafsu</colloc> <node>kesenangan</node> 1
6 <colloc span=-2>nafsu</colloc> merupakan <node>kesenangan</node> 1
7 <colloc span=-3>nafsu</colloc> cenderung pada <node>kesenangan</node> 1
8 <colloc span=-3>nafsu</colloc> dari syahwat <node>kesenangan</node> 1
9 <colloc span=-3>nafsu</colloc> kamacchanda yaitu <node>kesenangan</node> 1
10 <colloc span=-3>nafsu</colloc> kita untuk <node>kesenangan</node> 1
11 <node>kesenangan</node> atau dapat disebut <colloc span=4>nafsu</colloc> 1
12 <node>kesenangan</node> inipun ulah <colloc span=3>nafsu</colloc> 1
coll_cxn_ngram(full_sent_nominalised, "^hawa$", "^kesenangan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <node>kesenangan</node> <colloc span=1>hawa</colloc> 4
2 <colloc span=-3>hawa</colloc> nafsu dan <node>kesenangan</node> 1
3 <colloc span=-4>hawa</colloc> nafsu cenderung pada <node>kesenangan</node> 1
4 <colloc span=-4>hawa</colloc> nafsu kita untuk <node>kesenangan</node> 1
5 <node>kesenangan</node> dunia dan mengikuti <colloc span=4>hawa</colloc> 1
6 <node>kesenangan</node> terutama kaum <colloc span=3>hawa</colloc> 1
coll_cxn_ngram(full_sent_nominalised, "^seksual$", "^kesenangan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <node>kesenangan</node> <colloc span=1>seksual</colloc> 6
2 <colloc span=-3>seksual</colloc> juga sumber <node>kesenangan</node> 1
3 <colloc span=-4>seksual</colloc> atau kegiatan mendapatkan <node>kesenangan</node> 1
4 <node>kesenangan</node> dan nafsu <colloc span=3>seksual</colloc> 1
5 <node>kesenangan</node> organ <colloc span=2>seksual</colloc> 1
coll_cxn_ngram(full_sent_nominalised, "^dosa$", "^kesenangan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <node>kesenangan</node> dari <colloc span=2>dosa</colloc> 3
2 <node>kesenangan</node> <colloc span=1>dosa</colloc> 2
3 <node>kesenangan</node> atas <colloc span=2>dosa</colloc> 1
coll_cxn_ngram(full_sent_nominalised, "^kebutuhan$", "^kesenangan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <colloc span=-1>kebutuhan</colloc> <node>kesenangan</node> 1
2 <colloc span=-2>kebutuhan</colloc> prestasi <node>kesenangan</node> 1
3 <colloc span=-3>kebutuhan</colloc> gerak dan <node>kesenangan</node> 1
4 <colloc span=-4>kebutuhan</colloc> sebagai hobi atau <node>kesenangan</node> 1
5 <node>kesenangan</node> <colloc span=1>kebutuhan</colloc> 1
6 <node>kesenangan</node> atau <colloc span=2>kebutuhan</colloc> 1
7 <node>kesenangan</node> dan dirasakan sebagai <colloc span=4>kebutuhan</colloc> 1
8 <node>kesenangan</node> mewakili <colloc span=2>kebutuhan</colloc> 1
9 <node>kesenangan</node> nice dan <colloc span=3>kebutuhan</colloc> 1
10 <node>kesenangan</node> sejauh mana <colloc span=3>kebutuhan</colloc> 1
coll_cxn_ngram(full_sent_nominalised, "^keuntungan$", "^kesenangan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <colloc span=-2>keuntungan</colloc> dan <node>kesenangan</node> 3
2 <colloc span=-1>keuntungan</colloc> <node>kesenangan</node> 2
3 <node>kesenangan</node> dan <colloc span=2>keuntungan</colloc> 2
4 <colloc span=-3>keuntungan</colloc> kekayaan ataupun <node>kesenangan</node> 1
5 <colloc span=-3>keuntungan</colloc> materi dan <node>kesenangan</node> 1
6 <colloc span=-4>keuntungan</colloc> agar dapat mengalami <node>kesenangan</node> 1
7 <node>kesenangan</node> <colloc span=1>keuntungan</colloc> 1
8 <node>kesenangan</node> kearifan <colloc span=2>keuntungan</colloc> 1
coll_cxn_ngram(full_sent_nominalised, "^kepentingan$", "^kesenangan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <colloc span=-2>kepentingan</colloc> dan <node>kesenangan</node> 4
2 <node>kesenangan</node> dan <colloc span=2>kepentingan</colloc> 4
3 <colloc span=-3>kepentingan</colloc> materi dan <node>kesenangan</node> 2
4 <colloc span=-2>kepentingan</colloc> kesejahteraan <node>kesenangan</node> 1
5 <colloc span=-3>kepentingan</colloc> kebahagiaan atau <node>kesenangan</node> 1
6 <node>kesenangan</node> mereka di atas <colloc span=4>kepentingan</colloc> 1
coll_cxn_ngram(full_sent_nominalised, "^hobi$", "^kesenangan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <colloc span=-2>hobi</colloc> atau <node>kesenangan</node> 3
2 <colloc span=-2>hobi</colloc> dan <node>kesenangan</node> 3
3 <colloc span=-2>hobi</colloc> maupun <node>kesenangan</node> 1
4 <colloc span=-3>hobi</colloc> yang mementingkan <node>kesenangan</node> 1
5 <node>kesenangan</node> <colloc span=1>hobi</colloc> 1
6 <node>kesenangan</node> atau <colloc span=2>hobi</colloc> 1
7 <node>kesenangan</node> ataupun <colloc span=2>hobi</colloc> 1
8 <node>kesenangan</node> ataupun bakat dan <colloc span=4>hobi</colloc> 1
9 <node>kesenangan</node> dan <colloc span=2>hobi</colloc> 1
10 <node>kesenangan</node> dan menyalurkan <colloc span=3>hobi</colloc> 1
coll_cxn_ngram(full_sent_nominalised, "^waktu$", "^kesenangan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <node>kesenangan</node> dan mengisi <colloc span=3>waktu</colloc> 2
2 <colloc span=-2>waktu</colloc> untuk <node>kesenangan</node> 1
3 <colloc span=-3>waktu</colloc> kebersamaan dan <node>kesenangan</node> 1
4 <colloc span=-3>waktu</colloc> luang untuk <node>kesenangan</node> 1
5 <colloc span=-3>waktu</colloc> luangmu untuk <node>kesenangan</node> 1
6 <colloc span=-3>waktu</colloc> untuk dua <node>kesenangan</node> 1
7 <colloc span=-4>waktu</colloc> dan dana untuk <node>kesenangan</node> 1
8 <colloc span=-4>waktu</colloc> mereka untuk meraih <node>kesenangan</node> 1
9 <node>kesenangan</node> dan tidak membuang-buang <colloc span=4>waktu</colloc> 1
10 <node>kesenangan</node> dengan menghabiskan <colloc span=3>waktu</colloc> 1
11 <node>kesenangan</node> dengan mengisi <colloc span=3>waktu</colloc> 1
12 <node>kesenangan</node> hidup sampai <colloc span=3>waktu</colloc> 1
13 <node>kesenangan</node> itu menyita <colloc span=3>waktu</colloc> 1
14 <node>kesenangan</node> mengisi <colloc span=2>waktu</colloc> 1
15 <node>kesenangan</node> sampai <colloc span=2>waktu</colloc> 1
16 <node>kesenangan</node> sendiri kapan <colloc span=3>waktu</colloc> 1
17 <node>kesenangan</node> yang lebih pada <colloc span=4>waktu</colloc> 1

Berikut ini adalah pola kolokasi kesenangan dengan kolokat verbal, yang sebagian besar muncul dalam konstruksi metaforis.

coll_cxn_ngram(full_sent_nominalised, "^mencari$", "^kesenangan$", COLLOCATES, WORDS)$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <colloc span=-1>mencari</colloc> <node>kesenangan</node> 42
2 <colloc span=-2>mencari</colloc> keuntungan <node>kesenangan</node> 1
3 <colloc span=-3>mencari</colloc> hiburan dan <node>kesenangan</node> 1
4 <colloc span=-3>mencari</colloc> kata-kata untuk <node>kesenangan</node> 1
5 <colloc span=-3>mencari</colloc> kenikmatan dan <node>kesenangan</node> 1
6 <colloc span=-3>mencari</colloc> keuntungan dan <node>kesenangan</node> 1
7 <colloc span=-3>mencari</colloc> nafsu dan <node>kesenangan</node> 1
8 <colloc span=-3>mencari</colloc> perhatian atau <node>kesenangan</node> 1
9 <colloc span=-4>mencari</colloc> harta dan menikmati <node>kesenangan</node> 1
10 <colloc span=-4>mencari</colloc> hiburan dengan berbagi <node>kesenangan</node> 1
11 <colloc span=-4>mencari</colloc> kesenangan padahal mencari <node>kesenangan</node> 1
12 <colloc span=-4>mencari</colloc> keuntungan materi dan <node>kesenangan</node> 1
13 <node>kesenangan</node> padahal <colloc span=2>mencari</colloc> 1
14 <node>kesenangan</node> untuk <colloc span=2>mencari</colloc> 1
mengejar <- coll_cxn_ngram(full_sent_nominalised, "^mengejar$", "^kesenangan$", COLLOCATES, WORDS)
mengejar$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <colloc span=-1>mengejar</colloc> <node>kesenangan</node> 13
2 <colloc span=-2>mengejar</colloc> impian <node>kesenangan</node> 1
3 <colloc span=-2>mengejar</colloc> pemuasan <node>kesenangan</node> 1
4 <colloc span=-3>mengejar</colloc> keenakan dan <node>kesenangan</node> 1
5 <colloc span=-4>mengejar</colloc> harta benda dan <node>kesenangan</node> 1
mendapat <- coll_cxn_ngram(full_sent_nominalised, "^mendapat$", "^kesenangan$", COLLOCATES, WORDS)
mendapat$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <colloc span=-1>mendapat</colloc> <node>kesenangan</node> 13
2 <colloc span=-2>mendapat</colloc> banyak <node>kesenangan</node> 3
3 <colloc span=-2>mendapat</colloc> bermacam-macam <node>kesenangan</node> 1
4 <colloc span=-2>mendapat</colloc> dua <node>kesenangan</node> 1
5 <colloc span=-2>mendapat</colloc> semua <node>kesenangan</node> 1
6 <colloc span=-2>mendapat</colloc> suatu <node>kesenangan</node> 1
7 <colloc span=-4>mendapat</colloc> dua kesenangan yaitu <node>kesenangan</node> 1
8 <node>kesenangan</node> karena <colloc span=2>mendapat</colloc> 1
berdasarkan <- coll_cxn_ngram(full_sent_nominalised, "^berdasarkan$", "^kesenangan$", COLLOCATES, WORDS)
berdasarkan$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kesenangan
1 <colloc span=-1>berdasarkan</colloc> <node>kesenangan</node> 4
2 <colloc span=-4>berdasarkan</colloc> kepentingan materi dan <node>kesenangan</node> 2
3 <colloc span=-3>berdasarkan</colloc> cinta bukan <node>kesenangan</node> 1
4 <node>kesenangan</node> hendaknya <colloc span=2>berdasarkan</colloc> 1
5 <node>kesenangan</node> itu sangat <colloc span=3>berdasarkan</colloc> 1
6 <node>kesenangan</node> pribadi dan <colloc span=3>berdasarkan</colloc> 1

3.4 Kolokat khas untuk kegembiraan

Tabel @ref(tab:kolokat-kegembiraan) berikut menampilkan 20 kolokat khas teratas yang kuat berasosiasi dengan kegembiraan.

happyr::mdca_attr(mdca_colloc_concise, cxn_type = "^kegembiraan$") %>% 
  dplyr::top_n(n = 20, wt = assocstr) %>% 
  dplyr::select(-synonyms) %>%
  dplyr::mutate(exp = round(exp, 3), 
                collocates = paste("*", collocates, "*", sep = "")) %>%
  dplyr::rename(kolokat = collocates,
                signif = dec) %>% 
  knitr::kable(caption="Daftar 20 kolokat khas teratas untuk *kegembiraan* di Korpus Leipzig Bahasa Indonesia.", row.names = TRUE)
Daftar 20 kolokat khas teratas untuk kegembiraan di Korpus Leipzig Bahasa Indonesia.
kolokat n exp assocstr p_binomial p_holm signif
1 luapan 24 4.756 13.603 2.494e-14 1.818e-09 ***
2 meluapkan 21 3.835 13.269 5.377e-14 3.919e-09 ***
3 menyatakan 17 4.142 7.592 2.559e-08 1.864e-03 **
4 pendukung 15 3.682 6.701 1.993e-07 1.451e-02 *
5 menyambut 21 6.904 6.162 6.883e-07 5.011e-02 ms
6 larut 14 3.682 5.774 1.683e-06 1.225e-01 ns
7 kesedihan 19 6.597 5.197 6.351e-06 4.622e-01 ns
8 terlihat 22 8.591 4.907 1.238e-05 9.007e-01 ns
9 menyaksikan 10 2.455 4.628 2.357e-05 1.000e+00 ns
10 masyarakat 25 11.046 4.402 3.963e-05 1.000e+00 ns
11 kubu 7 1.381 4.268 5.400e-05 1.000e+00 ns
12 warga 16 5.830 4.158 6.955e-05 1.000e+00 ns
13 gol 5 0.767 4.071 8.499e-05 1.000e+00 ns
14 tim 12 3.835 3.910 1.231e-04 1.000e+00 ns
15 dirasakan 22 9.819 3.875 1.333e-04 1.000e+00 ns
16 paskah 6 1.227 3.560 2.755e-04 1.000e+00 ns
17 pemain 10 3.068 3.522 3.003e-04 1.000e+00 ns
18 laga 5 0.921 3.352 4.448e-04 1.000e+00 ns
19 belanda 4 0.614 3.257 5.540e-04 1.000e+00 ns
20 dihati 4 0.614 3.257 5.540e-04 1.000e+00 ns
21 gawang 4 0.614 3.257 5.540e-04 1.000e+00 ns
luapan <- coll_cxn_ngram(full_sent_nominalised, "^luapan$", "^kegembiraan$", COLLOCATES, WORDS)
luapan$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <colloc span=-1>luapan</colloc> <node>kegembiraan</node> 22
2 <colloc span=-1>lua-pan</colloc> <node>kegembiraan</node> 1
3 <colloc span=-2>luapan</colloc> ekspresi <node>kegembiraan</node> 1
meluapkan <- coll_cxn_ngram(full_sent_nominalised, "^meluapkan$", "^kegembiraan$", COLLOCATES, WORDS)
meluapkan$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <colloc span=-1>meluapkan</colloc> <node>kegembiraan</node> 18
2 <colloc span=-2>meluapkan</colloc> rasa <node>kegembiraan</node> 2
3 <colloc span=-2>meluapkan</colloc> ekspresi <node>kegembiraan</node> 1
dihati <- coll_cxn_ngram(full_sent_nominalised, "^dihati$", "^kegembiraan$", COLLOCATES, WORDS)
dihati$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <node>kegembiraan</node> <colloc span=1>dihati</colloc> 2
2 <node>kegembiraan</node> maupun ketenangan <colloc span=3>dihati</colloc> 1
3 <node>kegembiraan</node> telah melonjak <colloc span=3>dihati</colloc> 1
larut <- coll_cxn_ngram(full_sent_nominalised, "^larut$", "^kegembiraan$", COLLOCATES, WORDS)
larut$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <colloc span=-2>larut</colloc> dalam <node>kegembiraan</node> 13
2 <colloc span=-2>larut</colloc> dengan <node>kegembiraan</node> 1
menyambut <- coll_cxn_ngram(full_sent_nominalised, "^menyambut$", "^kegembiraan$", COLLOCATES, WORDS)
menyambut$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <node>kegembiraan</node> <colloc span=1>menyambut</colloc> 10
2 <colloc span=-1>menyambut</colloc> <node>kegembiraan</node> 1
3 <colloc span=-2>menyambut</colloc> dengan <node>kegembiraan</node> 1
4 <colloc span=-3>menyambut</colloc> dengan penuh <node>kegembiraan</node> 1
5 <colloc span=-4>menyambut</colloc> datangnya ramadan dengan <node>kegembiraan</node> 1
6 <node>kegembiraan</node> dan kebanggaan tinggi <colloc span=4>menyambut</colloc> 1
7 <node>kegembiraan</node> hati penduduk dalam <colloc span=4>menyambut</colloc> 1
8 <node>kegembiraan</node> masyarakat inggris <colloc span=3>menyambut</colloc> 1
9 <node>kegembiraan</node> masyarakat keturunan dalam <colloc span=4>menyambut</colloc> 1
10 <node>kegembiraan</node> para prajurit <colloc span=3>menyambut</colloc> 1
11 <node>kegembiraan</node> seakan-akan <colloc span=2>menyambut</colloc> 1
12 <node>kegembiraan</node> yang berlebihan <colloc span=3>menyambut</colloc> 1
menyatakan <- coll_cxn_ngram(full_sent_nominalised, "^(menyatakan|menyaksikan)$", "^kegembiraan$", COLLOCATES, WORDS)
menyatakan$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <colloc span=-1>menyatakan</colloc> <node>kegembiraan</node> 17
2 <colloc span=-1>menyaksikan</colloc> <node>kegembiraan</node> 4
3 <colloc span=-3>menyaksikan</colloc> dengan penuh <node>kegembiraan</node> 1
4 <colloc span=-3>menyaksikan</colloc> drama dan <node>kegembiraan</node> 1
5 <colloc span=-3>menyaksikan</colloc> keceriaan dan <node>kegembiraan</node> 1
6 <colloc span=-3>menyaksikan</colloc> kemeriahan dan <node>kegembiraan</node> 1
7 <node>kegembiraan</node> setelah <colloc span=2>menyaksikan</colloc> 1
8 <node>kegembiraan</node> yang dirasakannya ketika <colloc span=4>menyaksikan</colloc> 1
kubu <- coll_cxn_ngram(full_sent_nominalised, "^kubu$", "^kegembiraan$", COLLOCATES, WORDS)
kubu$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <colloc span=-3>kubu</colloc> brasil terdapat <node>kegembiraan</node> 1
2 <node>kegembiraan</node> <colloc span=1>kubu</colloc> 1
3 <node>kegembiraan</node> di <colloc span=2>kubu</colloc> 1
4 <node>kegembiraan</node> dicatat <colloc span=2>kubu</colloc> 1
5 <node>kegembiraan</node> melan-da <colloc span=2>kubu</colloc> 1
6 <node>kegembiraan</node> terlihat di <colloc span=3>kubu</colloc> 1
7 <node>kegembiraan</node> terlihat pada <colloc span=3>kubu</colloc> 1
full_sent_nominalised %>% filter(COLLOCATES=="kubu", WORDS=="kegembiraan") %>% pull(MATCHED_SENTENCE)
[1] "<node>kegembiraan</node> terlihat di <colloc span=3>kubu</colloc> indonesia begitu tim putra memastikan medali emas"                                                                                                    
[2] "<node>kegembiraan</node> terlihat pada <colloc span=3>kubu</colloc> ridho"                                                                                                                                              
[3] "luapan <node>kegembiraan</node> melan-da <colloc span=2>kubu</colloc> fans italia"                                                                                                                                      
[4] "<node>kegembiraan</node> <colloc span=1>kubu</colloc> kosta rika juga tak berlangsung lama"                                                                                                                             
[5] "drama lain yang berujung dengan <node>kegembiraan</node> dicatat <colloc span=2>kubu</colloc> swedia setelah pemain yang telah dua kali mengumumkan pensiun henrik larsson bersedia kembali memakai kostum tim nasional"
[6] "kontras dengan rasa duka di <colloc span=-3>kubu</colloc> brasil terdapat <node>kegembiraan</node> di kubu meksiko setelah mereka mendapatkan medali emas pertama di turnamen sepak bola pria"                          
[7] "kontras dengan rasa duka di kubu brasil terdapat <node>kegembiraan</node> di <colloc span=2>kubu</colloc> meksiko setelah mereka mendapatkan medali emas pertama di turnamen sepak bola pria"                           
pendukung <- coll_cxn_ngram(full_sent_nominalised, "^pendukung$", "^kegembiraan$", COLLOCATES, WORDS)
pendukung$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <node>kegembiraan</node> <colloc span=1>pendukung</colloc> 6
2 <node>kegembiraan</node> para <colloc span=2>pendukung</colloc> 3
3 <colloc span=-1>pendukung</colloc> <node>kegembiraan</node> 1
4 <node>kegembiraan</node> bagi para <colloc span=3>pendukung</colloc> 1
5 <node>kegembiraan</node> dari <colloc span=2>pendukung</colloc> 1
6 <node>kegembiraan</node> kepada <colloc span=2>pendukung</colloc> 1
7 <node>kegembiraan</node> pada 2 500 <colloc span=4>pendukung</colloc> 1
8 <node>kegembiraan</node> yang ditunjukkan para <colloc span=4>pendukung</colloc> 1
full_sent_nominalised %>% filter(COLLOCATES=="pendukung", WORDS=="kegembiraan") %>% pull(MATCHED_SENTENCE)
 [1] "begitu juga euforia atau rasa <node>kegembiraan</node> dari <colloc span=2>pendukung</colloc> dan simpatisan atas kemenangan pilgub hendaknya disikapi dengan bijaksana sehingga tidak menimbulkan antipati terhadap pdip selaku pengusung pasangan mangku pastika-puspayoga"                
 [2] "pemain argentina ini mencontek bole ke arah kuyt yang kemudian melihat pemain pengganti babel tidak terjaga golnya membuat stadion menggelegar karena <node>kegembiraan</node> para <colloc span=2>pendukung</colloc> liverpool 2-1 untuk tuan rumah"                                        
 [3] "kami mengikuti turnamen ini demi menambah pengalaman dan memberi <node>kegembiraan</node> kepada <colloc span=2>pendukung</colloc> kami"                                                                                                                                                     
 [4] "luapan <node>kegembiraan</node> <colloc span=1>pendukung</colloc> belanda mulai terlihat setelah pemain tim orange belanda felipe melo mampu menyarangkan bola ke gawang brasil yang dijaga julio cesar di menit ke-53 sekaligus menyamakan kedudukan menjadi 1-1"                           
 [5] "kemenangan besar itu praktis menyulur <node>kegembiraan</node> <colloc span=1>pendukung</colloc> argentina di ambon yang langsung melakukan pawai kendaraan bermotor mengelilingi sejumlah ruas jalan utama di ibu kota provinsi maluku itu sambil membawa bendera argentina berukuran besar"
 [6] "bahkan saat sundulan wesley sneijder di menit ke-68 amsuk ge gawang <node>kegembiraan</node> <colloc span=1>pendukung</colloc> belanda pun semakin menjadi-jadi dan tidak terbendung banyak warga yang melampiaskan kegembiraannya dengan membunyikan petasan di berbagai tempat"            
 [7] "saat pertandingan tinggal menyisakan waktu dua menit elsad zverotic memberi <node>kegembiraan</node> pada 2 500 <colloc span=4>pendukung</colloc> timnya ketika tembakannya gagal diantisipasi pepe reina"                                                                                   
 [8] "<node>kegembiraan</node> para <colloc span=2>pendukung</colloc> bolton semakin menggema"                                                                                                                                                                                                     
 [9] "kami memasang target mencapai liga champions dan saya ikut merasakan <node>kegembiraan</node> para <colloc span=2>pendukung</colloc> yang sudah menunggu begitu lama kata sekarang belum tepat untuk membahas masa depan saya di klub ini"                                                   
[10] "tujuan kami adalah membantu malaga mengambil langkah-langkah yang diperlukan untuk memperkukuh kehadirannya di la liga dan untuk mempertebal harapan serta <node>kegembiraan</node> <colloc span=1>pendukung</colloc> klub tutur al-thani"                                                   
[11] "kota ini tengah menghadapi krisis pengangguran yang parah jadi kami sangat terhormat bisa bermain untuk memberikan sebentuk <node>kegembiraan</node> bagi para <colloc span=3>pendukung</colloc> kami sambung pemain belakang mirandes cesar caneda"                                         
[12] "gol itu meredam <node>kegembiraan</node> <colloc span=1>pendukung</colloc> amazulu klub liga utama afrika selatan yang ditangani pelatih dari swedia roger palmgren dan ayanda dlamini dua kali mengancam gawang lawan mereka"                                                               
[13] "tapi <node>kegembiraan</node> <colloc span=1>pendukung</colloc> the blues tak bertahan lama karena tujuh menit kemudian ilber berhasil memperkecil ketinggalan menjadi 1-2"                                                                                                                  
[14] "kami telah melihat <node>kegembiraan</node> yang ditunjukkan para <colloc span=4>pendukung</colloc>"                                                                                                                                                                                         
[15] "ia meninggalkan catatan kepada pecinta sepak bola korsel keringat dan air mata gus hiddink teriakan gembira para <colloc span=-1>pendukung</colloc> <node>kegembiraan</node> dalam kemenangan pertama semuanya adalah hadiah ulang tahun terbaik bagi saya"                                  
gol <- coll_cxn_ngram(full_sent_nominalised, "^gol$", "^kegembiraan$", COLLOCATES, WORDS)
gol$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <colloc span=-1>gol</colloc> <node>kegembiraan</node> 1
2 <colloc span=-3>gol</colloc> itu meredam <node>kegembiraan</node> 1
3 <node>kegembiraan</node> pemain chelsea atas <colloc span=4>gol</colloc> 1
4 <node>kegembiraan</node> setelah menyaksikan <colloc span=3>gol</colloc> 1
5 <node>kegembiraan</node> usai mencetak <colloc span=3>gol</colloc> 1
tim <- coll_cxn_ngram(full_sent_nominalised, "^tim$", "^kegembiraan$", COLLOCATES, WORDS)
tim$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <node>kegembiraan</node> <colloc span=1>tim</colloc> 2
2 <colloc span=-3>tim</colloc> chelsea meluapkan <node>kegembiraan</node> 1
3 <colloc span=-4>tim</colloc> yamaha pun mengungkapkan <node>kegembiraan</node> 1
4 <node>kegembiraan</node> bagi <colloc span=2>tim</colloc> 1
5 <node>kegembiraan</node> karena <colloc span=2>tim</colloc> 1
6 <node>kegembiraan</node> pemain <colloc span=2>tim</colloc> 1
7 <node>kegembiraan</node> saat <colloc span=2>tim</colloc> 1
8 <node>kegembiraan</node> setelah kembali dipanggil <colloc span=4>tim</colloc> 1
9 <node>kegembiraan</node> setelah menjebol gawang <colloc span=4>tim</colloc> 1
10 <node>kegembiraan</node> tim cina dan <colloc span=4>tim</colloc> 1
11 <node>kegembiraan</node> yang tampak saat <colloc span=4>tim</colloc> 1
pemain <- coll_cxn_ngram(full_sent_nominalised, "^pemain$", "^kegembiraan$", COLLOCATES, WORDS)
pemain$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <node>kegembiraan</node> <colloc span=1>pemain</colloc> 3
2 <node>kegembiraan</node> para <colloc span=2>pemain</colloc> 2
3 <colloc span=-3>pemain</colloc> agar memunculkan <node>kegembiraan</node> 1
4 <colloc span=-4>pemain</colloc> barcelona larut dalam <node>kegembiraan</node> 1
5 <colloc span=-4>pemain</colloc> tampil dengan penuh <node>kegembiraan</node> 1
6 <node>kegembiraan</node> bagi para <colloc span=3>pemain</colloc> 1
7 <node>kegembiraan</node> dalam sepakbola tandas <colloc span=4>pemain</colloc> 1
warga <- coll_cxn_ngram(full_sent_nominalised, "^warga$", "^kegembiraan$", COLLOCATES, WORDS)
warga$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <node>kegembiraan</node> <colloc span=1>warga</colloc> 6
2 <node>kegembiraan</node> bagi <colloc span=2>warga</colloc> 3
3 <colloc span=-2>warga</colloc> dalam <node>kegembiraan</node> 1
4 <colloc span=-3>warga</colloc> tenggelam dalam <node>kegembiraan</node> 1
5 <node>kegembiraan</node> bersama <colloc span=2>warga</colloc> 1
6 <node>kegembiraan</node> buat <colloc span=2>warga</colloc> 1
7 <node>kegembiraan</node> dari wajah <colloc span=3>warga</colloc> 1
8 <node>kegembiraan</node> ribuan <colloc span=2>warga</colloc> 1
9 <node>kegembiraan</node> seluruh <colloc span=2>warga</colloc> 1
masyarakat <- coll_cxn_ngram(full_sent_nominalised, "^masyarakat$", "^kegembiraan$", COLLOCATES, WORDS)
masyarakat$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <node>kegembiraan</node> <colloc span=1>masyarakat</colloc> 10
2 <colloc span=-4>masyarakat</colloc> tidak hanya mendapatkan <node>kegembiraan</node> 2
3 <node>kegembiraan</node> bagi <colloc span=2>masyarakat</colloc> 2
4 <node>kegembiraan</node> bersama <colloc span=2>masyarakat</colloc> 2
5 <colloc span=-2>masyarakat</colloc> mengungkapkan <node>kegembiraan</node> 1
6 <colloc span=-2>masyarakat</colloc> timbulnya <node>kegembiraan</node> 1
7 <colloc span=-3>masyarakat</colloc> beberapa memancarkan <node>kegembiraan</node> 1
8 <colloc span=-3>masyarakat</colloc> setempat mengekspresikan <node>kegembiraan</node> 1
9 <colloc span=-4>masyarakat</colloc> loram kulon merasakan <node>kegembiraan</node> 1
10 <colloc span=-4>masyarakat</colloc> toraja sendiri merasakan <node>kegembiraan</node> 1
11 <node>kegembiraan</node> bagi warga <colloc span=3>masyarakat</colloc> 1
12 <node>kegembiraan</node> warga <colloc span=2>masyarakat</colloc> 1
13 <node>kegembiraan</node> yang sehat dalam <colloc span=4>masyarakat</colloc> 1
belanda <- coll_cxn_ngram(full_sent_nominalised, "^belanda$", "^kegembiraan$", COLLOCATES, WORDS)
belanda$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <node>kegembiraan</node> pendukung <colloc span=2>belanda</colloc> 2
2 <colloc span=-3>belanda</colloc> tersebut menyatakan <node>kegembiraan</node> 1
3 <colloc span=-4>belanda</colloc> ini memilih berbagi <node>kegembiraan</node> 1
menyaksikan <- coll_cxn_ngram(full_sent_nominalised, "^menyaksikan$", "^kegembiraan$", COLLOCATES, WORDS)
menyaksikan$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <colloc span=-1>menyaksikan</colloc> <node>kegembiraan</node> 4
2 <colloc span=-3>menyaksikan</colloc> dengan penuh <node>kegembiraan</node> 1
3 <colloc span=-3>menyaksikan</colloc> drama dan <node>kegembiraan</node> 1
4 <colloc span=-3>menyaksikan</colloc> keceriaan dan <node>kegembiraan</node> 1
5 <colloc span=-3>menyaksikan</colloc> kemeriahan dan <node>kegembiraan</node> 1
6 <node>kegembiraan</node> setelah <colloc span=2>menyaksikan</colloc> 1
7 <node>kegembiraan</node> yang dirasakannya ketika <colloc span=4>menyaksikan</colloc> 1
menyatakan <- coll_cxn_ngram(full_sent_nominalised, "^menyatakan$", "^kegembiraan$", COLLOCATES, WORDS)
menyatakan$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <colloc span=-1>menyatakan</colloc> <node>kegembiraan</node> 17
terlihat <- coll_cxn_ngram(full_sent_nominalised, "^terlihat$", "^kegembiraan$", COLLOCATES, WORDS)
terlihat$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <node>kegembiraan</node> <colloc span=1>terlihat</colloc> 4
2 <node>kegembiraan</node> juga <colloc span=2>terlihat</colloc> 2
3 <colloc span=-1>terlihat</colloc> <node>kegembiraan</node> 1
4 <colloc span=-2>terlihat</colloc> ada <node>kegembiraan</node> 1
5 <colloc span=-2>terlihat</colloc> bahwa <node>kegembiraan</node> 1
6 <colloc span=-2>terlihat</colloc> melepas <node>kegembiraan</node> 1
7 <colloc span=-2>terlihat</colloc> merayakan <node>kegembiraan</node> 1
8 <colloc span=-2>terlihat</colloc> rasa <node>kegembiraan</node> 1
9 <colloc span=-3>terlihat</colloc> dari ekspresi <node>kegembiraan</node> 1
10 <colloc span=-4>terlihat</colloc> di wajah mereka <node>kegembiraan</node> 1
11 <colloc span=-4>terlihat</colloc> menangis meluapkan rasa <node>kegembiraan</node> 1
12 <colloc span=-4>terlihat</colloc> tenang tidak terlihat <node>kegembiraan</node> 1
13 <node>kegembiraan</node> dan kekaguman undangan <colloc span=4>terlihat</colloc> 1
14 <node>kegembiraan</node> ferguson memang <colloc span=3>terlihat</colloc> 1
15 <node>kegembiraan</node> itu jelas <colloc span=3>terlihat</colloc> 1
16 <node>kegembiraan</node> pendukung belanda mulai <colloc span=4>terlihat</colloc> 1
17 <node>kegembiraan</node> tampak <colloc span=2>terlihat</colloc> 1
18 <node>kegembiraan</node> tidak <colloc span=2>terlihat</colloc> 1
kesedihan <- coll_cxn_ngram(full_sent_nominalised, "^kesedihan$", "^kegembiraan$", COLLOCATES, WORDS)
kesedihan$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM kegembiraan
1 <colloc span=-1>kesedihan</colloc> <node>kegembiraan</node> 3
2 <node>kegembiraan</node> <colloc span=1>kesedihan</colloc> 3
3 <colloc span=-2>kesedihan</colloc> kebahagiaan <node>kegembiraan</node> 2
4 <colloc span=-2>kesedihan</colloc> menjadi <node>kegembiraan</node> 2
5 <node>kegembiraan</node> dan <colloc span=2>kesedihan</colloc> 2
6 <colloc span=-2>kesedihan</colloc> atau <node>kegembiraan</node> 1
7 <colloc span=-2>kesedihan</colloc> dan <node>kegembiraan</node> 1
8 <colloc span=-2>kesedihan</colloc> kecemasan <node>kegembiraan</node> 1
9 <colloc span=-2>kesedihan</colloc> kecemburuan <node>kegembiraan</node> 1
10 <colloc span=-2>kesedihan</colloc> kekayaan <node>kegembiraan</node> 1
11 <node>kegembiraan</node> atau <colloc span=2>kesedihan</colloc> 1
12 <node>kegembiraan</node> yang meluap-luap sekaligus <colloc span=4>kesedihan</colloc> 1

3.5 Kolokat khas untuk keceriaan

Tabel @ref(tab:kolokat-keceriaan) berikut menampilkan 20 kolokat khas teratas yang kuat berasosiasi dengan keceriaan.

happyr::mdca_attr(mdca_colloc_concise, cxn_type = "^keceriaan$") %>% 
  dplyr::top_n(n = 20, wt = assocstr) %>% 
  dplyr::select(-synonyms) %>%
  dplyr::mutate(exp = round(exp, 3), 
                collocates = paste("*", collocates, "*", sep = "")) %>%
  dplyr::rename(kolokat = collocates,
                signif = dec) %>% 
  knitr::kable(caption="Daftar 20 kolokat khas teratas untuk *keceriaan* di Korpus Leipzig Bahasa Indonesia.", row.names = TRUE)
Daftar 20 kolokat khas teratas untuk keceriaan di Korpus Leipzig Bahasa Indonesia.
kolokat n exp assocstr p_binomial p_holm signif
1 anak-anak 91 19.123 42.698 2.003e-43 1.460e-38 ***
2 penuh 119 46.831 21.976 1.057e-22 7.707e-18 ***
3 mengembalikan 19 3.122 12.487 3.256e-13 2.372e-08 ***
4 semangat 25 6.374 9.732 1.852e-10 1.350e-05 ***
5 masa 31 9.366 9.502 3.151e-10 2.296e-05 ***
6 wajah 37 13.269 8.653 2.222e-09 1.619e-04 ***
7 menambah 20 5.203 7.721 1.902e-08 1.385e-03 **
8 sekolah 13 2.602 7.016 9.638e-08 7.019e-03 **
9 anak 39 16.391 6.901 1.255e-07 9.142e-03 **
10 kesegaran 7 0.911 6.200 6.304e-07 4.590e-02 *
11 lebanon 7 0.911 6.200 6.304e-07 4.590e-02 *
12 warna 12 2.602 5.972 1.067e-06 7.765e-02 ms
13 tetap 17 5.203 5.412 3.872e-06 2.819e-01 ns
14 suasana 22 8.195 5.115 7.672e-06 5.583e-01 ns
15 terpancar 22 8.326 4.989 1.026e-05 7.463e-01 ns
16 mewarnai 10 2.342 4.652 2.228e-05 1.000e+00 ns
17 pertunjukan 5 0.650 4.429 3.725e-05 1.000e+00 ns
18 korban 7 1.301 4.278 5.269e-05 1.000e+00 ns
19 lebaran 7 1.301 4.278 5.269e-05 1.000e+00 ns
20 menghiasi 7 1.301 4.278 5.269e-05 1.000e+00 ns
anakanak <- coll_cxn_ngram(full_sent_nominalised, "^anak\\-anak$", "^keceriaan$", COLLOCATES, WORDS)
anakanak$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keceriaan
1 <node>keceriaan</node> <colloc span=1>anak-anak</colloc> 53
2 <node>keceriaan</node> bersama <colloc span=2>anak-anak</colloc> 3
3 <node>keceriaan</node> dengan <colloc span=2>anak-anak</colloc> 3
4 <colloc span=-3>anak-anak</colloc> dan mengembalikan <node>keceriaan</node> 2
5 <node>keceriaan</node> meskipun di pengungsian <colloc span=4>anak-anak</colloc> 2
6 <colloc span=-2>anak-anak</colloc> penuh <node>keceriaan</node> 1
7 <colloc span=-3>anak-anak</colloc> berbaur penuh <node>keceriaan</node> 1
8 <colloc span=-3>anak-anak</colloc> memang penuh <node>keceriaan</node> 1
9 <colloc span=-3>anak-anak</colloc> penuh dengan <node>keceriaan</node> 1
10 <colloc span=-3>anak-anak</colloc> sekolah yaitu <node>keceriaan</node> 1
11 <colloc span=-3>anak-anak</colloc> yang penuh <node>keceriaan</node> 1
12 <colloc span=-4>anak-anak</colloc> juga terhibur dan <node>keceriaan</node> 1
13 <node>keceriaan</node> <colloc span=1>akan-anak</colloc> 1
14 <node>keceriaan</node> agar <colloc span=2>anak-anak</colloc> 1
15 <node>keceriaan</node> bagi <colloc span=2>anak-anak</colloc> 1
16 <node>keceriaan</node> dan kecentilan <colloc span=3>anak-anak</colloc> 1
17 <node>keceriaan</node> dan kepolosan <colloc span=3>anak-anak</colloc> 1
18 <node>keceriaan</node> dari <colloc span=2>anak-anak</colloc> 1
19 <node>keceriaan</node> dengan ratusan <colloc span=3>anak-anak</colloc> 1
20 <node>keceriaan</node> di mata <colloc span=3>anak-anak</colloc> 1
21 <node>keceriaan</node> di wajah <colloc span=3>anak-anak</colloc> 1
22 <node>keceriaan</node> ini <colloc span=2>anak-anak</colloc> 1
23 <node>keceriaan</node> iwan dan puluhan <colloc span=4>anak-anak</colloc> 1
24 <node>keceriaan</node> keluarga hingga lelapnya <colloc span=4>anak-anak</colloc> 1
25 <node>keceriaan</node> khas mereka <colloc span=3>anak-anak</colloc> 1
26 <node>keceriaan</node> lazimnya <colloc span=2>anak-anak</colloc> 1
27 <node>keceriaan</node> masa kecil bagi <colloc span=4>anak-anak</colloc> 1
28 <node>keceriaan</node> menghiasi wajah <colloc span=3>anak-anak</colloc> 1
29 <node>keceriaan</node> pada masyarakat terutama <colloc span=4>anak-anak</colloc> 1
30 <node>keceriaan</node> pun terpancar dari <colloc span=4>anak-anak</colloc> 1
31 <node>keceriaan</node> sesuai dengan dunia <colloc span=4>anak-anak</colloc> 1
32 <node>keceriaan</node> terpancar dari wajah <colloc span=4>anak-anak</colloc> 1
33 <node>keceriaan</node> yang dihadirkan <colloc span=3>anak-anak</colloc> 1
anak <- coll_cxn_ngram(full_sent_nominalised, "^anak$", "^keceriaan$", COLLOCATES, WORDS)
anak$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keceriaan
1 <node>keceriaan</node> <colloc span=1>anak</colloc> 13
2 <colloc span=-3>anak</colloc> adalah dunia <node>keceriaan</node> 2
3 <node>keceriaan</node> anak <colloc span=2>anak</colloc> 2
4 <node>keceriaan</node> dengan <colloc span=2>anak</colloc> 2
5 <node>keceriaan</node> dunia <colloc span=2>anak</colloc> 2
6 <colloc span=-3>anak</colloc> berhak mendapatkan <node>keceriaan</node> 1
7 <colloc span=-3>anak</colloc> dalam menikmati <node>keceriaan</node> 1
8 <colloc span=-4>anak</colloc> anda dapat berbagi <node>keceriaan</node> 1
9 <colloc span=-4>anak</colloc> indonesia ketika melihat <node>keceriaan</node> 1
10 <colloc span=-4>anak</colloc> kecil yang penuh <node>keceriaan</node> 1
11 <colloc span=-4>anak</colloc> kelinci penuh dengan <node>keceriaan</node> 1
12 <colloc span=-4>anak</colloc> sebagai ungkapan berbagi <node>keceriaan</node> 1
13 <colloc span=-4>anak</colloc> yang mampu menebar <node>keceriaan</node> 1
14 <node>keceriaan</node> bagi <colloc span=2>anak</colloc> 1
15 <node>keceriaan</node> dan kepolosan <colloc span=3>anak</colloc> 1
16 <node>keceriaan</node> dan masa depan <colloc span=4>anak</colloc> 1
17 <node>keceriaan</node> ibu <colloc span=2>anak</colloc> 1
18 <node>keceriaan</node> ibu dan <colloc span=3>anak</colloc> 1
19 <node>keceriaan</node> kepada <colloc span=2>anak</colloc> 1
20 <node>keceriaan</node> khas <colloc span=2>anak</colloc> 1
21 <node>keceriaan</node> satu waktu <colloc span=3>anak</colloc> 1
22 <node>keceriaan</node> sebagai <colloc span=2>anak</colloc> 1
23 <node>keceriaan</node> seorang <colloc span=2>anak</colloc> 1
mengembalikan <- coll_cxn_ngram(full_sent_nominalised, "^mengembalikan$", "^keceriaan$", COLLOCATES, WORDS)
mengembalikan$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keceriaan
1 <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> 17
2 <colloc span=-3>mengembalikan</colloc> mengekalkan wajah <node>keceriaan</node> 1
3 <node>keceriaan</node> kehidupan bandar dengan <colloc span=4>mengembalikan</colloc> 1
sent_mengembalikan <- full_sent_nominalised %>% filter(COLLOCATES=="mengembalikan", WORDS=="keceriaan") %>% pull(MATCHED_SENTENCE)

sent_mengembalikan
 [1] "bagaimana pun juga pemulihan trauma bagi masyarakat mentawai sangat dibutuhkan sehingga perlu peran serta pemerintah serta tim yang berkompeten untuk <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> masyarakat di sana katanya"
 [2] "berdasarkan situs www webmd com beberapa peneliti berpikir tertawa bisa menjadi obat terbaik membantu anda merasa lebih baik dan <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> anda"                                           
 [3] "bertekad <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> rhea karan berusaha menjodohkan rhea dengan sahabat karan yang pemalu mihir jimmy shergill"                                                                             
 [4] "tempat-tempat untuk aktiviti kebudayaan tidak formal boleh diadakan bagi menambahkan lagi <node>keceriaan</node> kehidupan bandar dengan <colloc span=4>mengembalikan</colloc> semula suasana kehidupan di persekitaran jalan"                 
 [5] "<colloc span=-3>mengembalikan</colloc> mengekalkan wajah <node>keceriaan</node>"                                                                                                                                                               
 [6] "sumbar mairawita marlis rahman mengatakan kegiatan ini dilakukan dalam rangka <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> anak-anak sumbar yang mengalami trauma gempa"                                                      
 [7] "ini tokoh dongeng indonesia kak kusumo mendongeng untuk menghibur anak-anak dan <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> bagi pendidik guru untuk mampu berlatih mendongeng bagi anak didik di lembaganya masing-masing"  
 [8] "kegiatan semacam ini secara psikologis sangat membantu <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> anak-anak lebanon dari trauma akibat konflik yang berkepanjangan ujarnya"                                                 
 [9] "id pecinta fauna animal defender hewan teraniaya pewarta alviansyah pasaribu <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> mereka menghilangkan trauma itu yang butuh waktu dan edukas"                                        
[10] "trauma healing tersebut guna <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> anak-anak korban erupsi gunung kelud yang selama seminggu terakhir berada di pengungsian"                                                           
[11] "anak-anak yang kehidupannya masih diwarnai masa bermain penanganan yang tepat akan <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> mereka meskipun selalu berada dalam intaian merapi"                                           
[12] "dia menganggap perlu peran serta pemerintah dan tim yang kompeten untuk <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> masyarakat kepulauan tersebut"                                                                           
[13] "nama-nama tenar ini bakal berusaha <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> bagi fans"                                                                                                                                    
[14] "rumah faye berusaha <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> dan masa depan anak korban perdagangan lewat upaya pencegahan intervensi dan pemulihan"                                                                      
[15] "sumbar mairawita marlis rahman mengatakan kegiatan ini dilakukan dalam rangka <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> anak-anak sumbar yang mengalami trauma gempa"                                                      
[16] "ini tokoh dongeng indonesia kak kusumo mendongeng untuk menghibur anak-anak dan <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> bagi pendidik guru untuk mampu berlatih mendongeng bagi anak didik di lembaganya masing-masing"  
[17] "karena itu untuk <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> anak-anak dan kegiatan belajar harus segera dikembalikan relawan pos penanggulangan bencana"                                                                    
[18] "dari deru universitas muhammadiyah surakarta ums yang mendirikan posko kesehatan <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node> iwan dan puluhan anak-anak lainnya sabtu 28 7"                                                  
[19] "sebuah dering telepon pada akhir november lalu <colloc span=-1>mengembalikan</colloc> <node>keceriaan</node>"                                                                                                                                  
korban <- coll_cxn_ngram(full_sent_nominalised, "^korban$", "^keceriaan$", COLLOCATES, WORDS)
korban$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keceriaan
1 <node>keceriaan</node> anak-anak di pengungsian <colloc span=4>korban</colloc> 3
2 <node>keceriaan</node> anak-anak <colloc span=2>korban</colloc> 1
3 <node>keceriaan</node> anak-anak aceh <colloc span=3>korban</colloc> 1
4 <node>keceriaan</node> dengan ratusan anak-anak <colloc span=4>korban</colloc> 1
5 <node>keceriaan</node> terpancar dari para <colloc span=4>korban</colloc> 1
sent_korban <- full_sent_nominalised %>% filter(COLLOCATES=="korban", WORDS=="keceriaan") %>% pull(MATCHED_SENTENCE)

sent_korban
[1] "kami memilih pertunjukan badut untuk memunculkan <node>keceriaan</node> anak-anak di pengungsian <colloc span=4>korban</colloc> letusan gunung merapi kata koordinator yayasan pandega center sebagai pelaksana kegiatan tersebut jonathan yoppy di sleman selasa"
[2] "<node>keceriaan</node> anak-anak aceh <colloc span=3>korban</colloc> gempa dan tsunami ini kini hampir selalu mewarnai kehidupan mereka yang sebelumnya dilanda trauma psikologis akibat bencana"                                                                 
[3] "di lokasi bencana rini ikut berbagi <node>keceriaan</node> dengan ratusan anak-anak <colloc span=4>korban</colloc> bencana dengan bermain dan membagikan makanan"                                                                                                 
[4] "kami memilih pertunjukan badut untuk memunculkan <node>keceriaan</node> anak-anak di pengungsian <colloc span=4>korban</colloc> letusan gunung merapi kata koordinator yayasan pandega center"                                                                    
[5] "trauma healing tersebut guna mengembalikan <node>keceriaan</node> anak-anak <colloc span=2>korban</colloc> erupsi gunung kelud yang selama seminggu terakhir berada di pengungsian"                                                                               
[6] "kami memilih pertunjukan badut untuk memunculkan <node>keceriaan</node> anak-anak di pengungsian <colloc span=4>korban</colloc> letusan gunung merapi kata koordinator yayasan pandega center"                                                                    
[7] "<node>keceriaan</node> terpancar dari para <colloc span=4>korban</colloc> penggusuran di kawasan guntur jakarta selatan yang sejak senin lalu"                                                                                                                    
penuh <- coll_cxn_ngram(full_sent_nominalised, "^penuh$", "^keceriaan$", COLLOCATES, WORDS)
penuh$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keceriaan
1 <colloc span=-1>penuh</colloc> <node>keceriaan</node> 93
2 <colloc span=-2>penuh</colloc> dengan <node>keceriaan</node> 9
3 <colloc span=-4>penuh</colloc> dengan kegembiraan dan <node>keceriaan</node> 3
4 <node>keceriaan</node> hangat bahagia <colloc span=3>penuh</colloc> 2
5 <colloc span=-2>penuh</colloc> ketakutan <node>keceriaan</node> 1
6 <colloc span=-3>penuh</colloc> dengan warnawarni <node>keceriaan</node> 1
7 <colloc span=-3>penuh</colloc> kebahagiaan dan <node>keceriaan</node> 1
8 <colloc span=-3>penuh</colloc> keyakinan dan <node>keceriaan</node> 1
9 <colloc span=-3>penuh</colloc> semangat dan <node>keceriaan</node> 1
10 <colloc span=-3>penuh</colloc> warna menebar <node>keceriaan</node> 1
11 <colloc span=-4>penuh</colloc> dengan kebersamaan dan <node>keceriaan</node> 1
12 <colloc span=-4>penuh</colloc> dengan senyum dan <node>keceriaan</node> 1
13 <colloc span=-4>penuh</colloc> paradoks dan penuh <node>keceriaan</node> 1
14 <node>keceriaan</node> <colloc span=1>penuh</colloc> 1
15 <node>keceriaan</node> dan hidup yang <colloc span=4>penuh</colloc> 1
16 <node>keceriaan</node> suasana yang <colloc span=3>penuh</colloc> 1
NA
menambah <- coll_cxn_ngram(full_sent_nominalised, "^menambah$", "^keceriaan$", COLLOCATES, WORDS)
menambah$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keceriaan
1 <colloc span=-1>menambah</colloc> <node>keceriaan</node> 18
2 <colloc span=-2>menambah</colloc> keasyikan <node>keceriaan</node> 1
3 <colloc span=-2>menambah</colloc> nuansa <node>keceriaan</node> 1
NA
terpancar <- coll_cxn_ngram(full_sent_nominalised, "^terpancar$", "^keceriaan$", COLLOCATES, WORDS)
terpancar$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keceriaan
1 <node>keceriaan</node> <colloc span=1>terpancar</colloc> 6
2 <node>keceriaan</node> dan aura semangat <colloc span=4>terpancar</colloc> 2
3 <node>keceriaan</node> dan kegembiraan <colloc span=3>terpancar</colloc> 2
4 <node>keceriaan</node> jelas <colloc span=2>terpancar</colloc> 2
5 <node>keceriaan</node> dan daya hidup <colloc span=4>terpancar</colloc> 1
6 <node>keceriaan</node> dinda mulai <colloc span=3>terpancar</colloc> 1
7 <node>keceriaan</node> pun <colloc span=2>terpancar</colloc> 1
8 <node>keceriaan</node> pun jelas <colloc span=3>terpancar</colloc> 1
9 <node>keceriaan</node> se-nantiasa <colloc span=2>terpancar</colloc> 1
10 <node>keceriaan</node> tetap <colloc span=2>ter-pancar</colloc> 1
11 <node>keceriaan</node> tetap <colloc span=2>terpancar</colloc> 1
12 <node>keceriaan</node> yang <colloc span=2>terpancar</colloc> 1
13 <node>keceriaan</node> yang sama <colloc span=3>terpancar</colloc> 1
14 <node>keceriaan</node> yg <colloc span=2>terpancar</colloc> 1
NA
menghiasi <- coll_cxn_ngram(full_sent_nominalised, "^menghiasi$", "^keceriaan$", COLLOCATES, WORDS)
menghiasi$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keceriaan
1 <node>keceriaan</node> <colloc span=1>menghiasi</colloc> 4
2 <node>keceriaan</node> terus <colloc span=2>menghiasi</colloc> 1
3 <node>keceriaan</node> tetap <colloc span=2>menghiasi</colloc> 1
4 <node>keceriaan</node> yang dulu selalu <colloc span=4>menghiasi</colloc> 1
sent_menghiasi <- full_sent_nominalised %>% filter(COLLOCATES=="menghiasi", WORDS=="keceriaan") %>% pull(MATCHED_SENTENCE)

sent_menghiasi
[1] "<node>keceriaan</node> yang dulu selalu <colloc span=4>menghiasi</colloc> wajahnya lenyap berganti dengan kemurungan"                           
[2] "ada kelegaan dan <node>keceriaan</node> <colloc span=1>menghiasi</colloc> wajah anak-anak sekolah tersebut setelah ulangan dan ujian akhir usai"
[3] "<node>keceriaan</node> <colloc span=1>menghiasi</colloc> wajahnya"                                                                              
[4] "<node>keceriaan</node> terus <colloc span=2>menghiasi</colloc> wajahnya yang terlihat renta"                                                    
[5] "meski cuaca siang itu terasa terik <node>keceriaan</node> tetap <colloc span=2>menghiasi</colloc> acara kangen-kangenan tersebut"               
[6] "<node>keceriaan</node> <colloc span=1>menghiasi</colloc> wajah para pemain barcelona saat mereka berlatih di ciutat esportiva joan gamper"      
[7] "<node>keceriaan</node> <colloc span=1>menghiasi</colloc> wajah fadillah dan tiga remaja lain dari desa kedungrejo kecamatan winongan pasuruan"  
# percentage of "face" as DO for "menghiasi"
round(6/7*100, 2)
[1] 85.71
mewarnai <- coll_cxn_ngram(full_sent_nominalised, "^mewarnai$", "^keceriaan$", COLLOCATES, WORDS)
mewarnai$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keceriaan
1 <node>keceriaan</node> <colloc span=1>mewarnai</colloc> 6
2 <colloc span=-1>mewarnai</colloc> <node>keceriaan</node> 1
3 <node>keceriaan</node> juga <colloc span=2>mewarnai</colloc> 1
4 <node>keceriaan</node> ramadhan yang <colloc span=3>mewarnai</colloc> 1
5 <node>keceriaan</node> yang begitu <colloc span=3>mewarnai</colloc> 1
sent_mewarnai <- full_sent_nominalised %>% filter(COLLOCATES=="mewarnai", WORDS=="keceriaan") %>% pull(MATCHED_SENTENCE)

sent_mewarnai
 [1] "<node>keceriaan</node> <colloc span=1>mewarnai</colloc> proses belajar mengajar kendati hawa panas menyergap tenda berukuran 5 kali 8 meter tersebut"                                                                                 
 [2] "suara tawa dan <node>keceriaan</node> <colloc span=1>mewarnai</colloc> pagi yang hujan di halaman kantor dinas kesejahteraan dan sosial provinsi sumatera utara jalan sampul medan kamis 6 9"                                         
 [3] "<node>keceriaan</node> <colloc span=1>mewarnai</colloc> wajah siswa-siswa yang lulus ujian nasional dan mereka mulai mendatangi perguruan tinggi yang mereka inginkan untuk mengadu peruntungan mengikuti test masuk perguruan tinggi"
 [4] "<node>keceriaan</node> <colloc span=1>mewarnai</colloc> perjalanan sepanjang sungai meski kami belum saling mengenal satu sama lain"                                                                                                  
 [5] "bahkan setiap kali <node>keceriaan</node> ramadhan yang <colloc span=3>mewarnai</colloc> jiwa ini selalu terwarnai oleh keindahan ramadhan di masa kecil saya"                                                                        
 [6] "suasana kekeluargaan dan <node>keceriaan</node> juga <colloc span=2>mewarnai</colloc> suasana lebaran idul fitri di keluarga besar habibie"                                                                                           
 [7] "evenst ini juga sekaligus memberi semangat dan <colloc span=-1>mewarnai</colloc> <node>keceriaan</node> hut kemerdekaan indonesia yang ke-69"                                                                                         
 [8] "kegembiraan dan <node>keceriaan</node> <colloc span=1>mewarnai</colloc> perayaan idul fitri 1435 h di republik ceko yang dipusatkan di kedutaan besar republik"                                                                       
 [9] "sebab pada sabtu 6 11 sore itu di belakang kantor bank danamon cabang solo banyak tebaran <node>keceriaan</node> yang begitu <colloc span=3>mewarnai</colloc>"                                                                        
[10] "<node>keceriaan</node> <colloc span=1>mewarnai</colloc> wajah para pemain tim nasional sepak bola argentina saat mereka berlatih di stadion compa"                                                                                    
warna <- coll_cxn_ngram(full_sent_nominalised, "^warna$", "^keceriaan$", COLLOCATES, WORDS)
warna$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keceriaan
1 <colloc span=-3>warna</colloc> yang membawa <node>keceriaan</node> 2
2 <colloc span=-4>warna</colloc> orange terkesan akan <node>keceriaan</node> 2
3 <colloc span=-1>warna</colloc> <node>keceriaan</node> 1
4 <colloc span=-2>warna</colloc> menebar <node>keceriaan</node> 1
5 <colloc span=-2>warna</colloc> mengungkapkan <node>keceriaan</node> 1
6 <colloc span=-2>warna</colloc> warni <node>keceriaan</node> 1
7 <colloc span=-3>warna</colloc> aksen pemberi <node>keceriaan</node> 1
8 <colloc span=-3>warna</colloc> ketegasan kesejukan <node>keceriaan</node> 1
9 <colloc span=-4>warna</colloc> cerah bisa menambahkan <node>keceriaan</node> 1
10 <node>keceriaan</node> <colloc span=1>warna</colloc> 1

3.6 Kolokat khas untuk keriangan

Tabel @ref(tab:kolokat-keriangan) berikut menampilkan 20 kolokat khas teratas yang kuat berasosiasi dengan keriangan.

happyr::mdca_attr(mdca_colloc_concise, cxn_type = "^keriangan$") %>% 
  dplyr::top_n(n = 20, wt = assocstr) %>% 
  dplyr::select(-synonyms) %>%
  dplyr::mutate(exp = round(exp, 3), 
                collocates = paste("*", collocates, "*", sep = "")) %>%
  dplyr::rename(kolokat = collocates,
                signif = dec) %>% 
  knitr::kable(caption="Daftar 20 kolokat khas teratas untuk *keriangan* di Korpus Leipzig Bahasa Indonesia.", row.names = TRUE)
Daftar 20 kolokat khas teratas untuk keriangan di Korpus Leipzig Bahasa Indonesia.
kolokat n exp assocstr p_binomial p_holm signif
1 penuh 48 16.579 10.210 6.159e-11 4.488e-06 ***
2 kanak-kanak 7 0.599 6.230 5.894e-07 4.291e-02 *
3 politik 5 0.368 4.986 1.032e-05 7.508e-01 ns
4 terakhir 5 0.368 4.986 1.032e-05 7.508e-01 ns
5 menggambarkan 8 1.151 4.967 1.079e-05 7.851e-01 ns
6 kehebatannya 3 0.138 4.010 9.768e-05 1.000e+00 ns
7 bocah 4 0.368 3.567 2.711e-04 1.000e+00 ns
8 imajinasi 3 0.184 3.423 3.772e-04 1.000e+00 ns
9 keseronokan 3 0.184 3.423 3.772e-04 1.000e+00 ns
10 mengajar 3 0.184 3.423 3.772e-04 1.000e+00 ns
11 anak-anak 17 6.770 3.331 4.665e-04 1.000e+00 ns
12 khas 4 0.414 3.328 4.701e-04 1.000e+00 ns
13 empat 4 0.461 3.122 7.549e-04 1.000e+00 ns
14 kekonyolan 3 0.230 3.041 9.105e-04 1.000e+00 ns
15 ketulusan 3 0.230 3.041 9.105e-04 1.000e+00 ns
16 memancarkan 4 0.507 2.942 1.143e-03 1.000e+00 ns
17 mendengar 4 0.507 2.942 1.143e-03 1.000e+00 ns
18 hilang 6 1.243 2.913 1.222e-03 1.000e+00 ns
19 menunjukkan 7 1.704 2.875 1.334e-03 1.000e+00 ns
20 berbalut 3 0.276 2.755 1.758e-03 1.000e+00 ns
21 kejayaan 3 0.276 2.755 1.758e-03 1.000e+00 ns
riang_penuh <- coll_cxn_ngram(full_sent_nominalised, "^penuh$", "^keriangan$", COLLOCATES, WORDS)
riang_penuh$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keriangan
1 <colloc span=-1>penuh</colloc> <node>keriangan</node> 36
2 <colloc span=-3>penuh</colloc> humor dan <node>keriangan</node> 2
3 <colloc span=-2>penuh</colloc> dengan <node>keriangan</node> 1
4 <colloc span=-3>penuh</colloc> daya dan <node>keriangan</node> 1
5 <colloc span=-3>penuh</colloc> energi dan <node>keriangan</node> 1
6 <colloc span=-3>penuh</colloc> ketenangan dan <node>keriangan</node> 1
7 <colloc span=-3>penuh</colloc> ketulusan dan <node>keriangan</node> 1
8 <colloc span=-3>penuh</colloc> tawa dan <node>keriangan</node> 1
9 <node>keriangan</node> anak-anak yang <colloc span=3>penuh</colloc> 1
10 <node>keriangan</node> dan <colloc span=2>penuh</colloc> 1
11 <node>keriangan</node> menyambut bulan yang <colloc span=4>penuh</colloc> 1
12 <node>keriangan</node> yang tadinya dirasakan <colloc span=4>penuh</colloc> 1
riang_ANAK <- coll_cxn_ngram(full_sent_nominalised, "^(kanak-kanak|anak-anak|bocah)$", "^keriangan$", COLLOCATES, WORDS)
riang_ANAK$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keriangan
1 <node>keriangan</node> <colloc span=1>anak-anak</colloc> 8
2 <node>keriangan</node> khas <colloc span=2>anak-anak</colloc> 4
3 <node>keriangan</node> <colloc span=1>bocah</colloc> 3
4 <node>keriangan</node> dan kegilaan dunia <colloc span=4>anak-anak</colloc> 2
5 <node>keriangan</node> masa <colloc span=2>kanak-kanak</colloc> 2
6 <colloc span=-3>anak-anak</colloc> dan karena <node>keriangan</node> 1
7 <colloc span=-3>anak-anak</colloc> indonesia merayakan <node>keriangan</node> 1
8 <colloc span=-4>kanak-kanak</colloc> yang seharusnya diisi <node>keriangan</node> 1
9 <node>keriangan</node> <colloc span=1>kanak-kanak</colloc> 1
10 <node>keriangan</node> dalam irama belajar <colloc span=4>anak-anak</colloc> 1
11 <node>keriangan</node> dunia <colloc span=2>kanak-kanak</colloc> 1
12 <node>keriangan</node> hidup masa <colloc span=3>kanak-kanak</colloc> 1
13 <node>keriangan</node> kepada <colloc span=2>kanak-kanak</colloc> 1
14 <node>keriangan</node> saat <colloc span=2>bocah</colloc> 1
riang_TulusKonyolSeronok <- coll_cxn_ngram(full_sent_nominalised, "^(ketulusan|kekonyolan|keseronokan)$", "^keriangan$", COLLOCATES, WORDS)
riang_TulusKonyolSeronok$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keriangan
1 <colloc span=-2>keseronokan</colloc> dan <node>keriangan</node> 3
2 <colloc span=-2>ketulusan</colloc> dan <node>keriangan</node> 2
3 <node>keriangan</node> kekompakan <colloc span=2>kekonyolan</colloc> 2
4 <colloc span=-3>ketulusan</colloc> dan penuh <node>keriangan</node> 1
5 <node>keriangan</node> kejenakaan <colloc span=2>kekonyolan</colloc> 1
sent_TulusKonyolSeronok <- full_sent_nominalised %>% filter(COLLOCATES %in% c("ketulusan", "kekonyolan", "keseronokan"), WORDS=="keriangan") %>% pull(MATCHED_SENTENCE)
sent_TulusKonyolSeronok
[1] "konflik sakit hati senioritas masa-masa keemasan kegembiraan <node>keriangan</node> kekompakan <colloc span=2>kekonyolan</colloc> persaudaraan semua cerita campur aduk jadi satu"                                                                                           
[2] "menjaga diri daripada suka atau ketawa melampaui batas mengingatkan kita supaya tidak terlalu leka dengan <colloc span=-2>keseronokan</colloc> dan <node>keriangan</node> yang dinikmati di dunia"                                                                           
[3] "konflik sakit hati senioritas masa-masa keemasan kegembiraan <node>keriangan</node> kekompakan <colloc span=2>kekonyolan</colloc> persaudaraan semua cerita campur aduk jadi satu"                                                                                           
[4] "kelazatan dan kesenangan atau <colloc span=-2>keseronokan</colloc> dan <node>keriangan</node> ialah sesuatu yang mesti diburu dalam hidup"                                                                                                                                   
[5] "jika kita perhatikan murid-murid prasekolah yang mana mereka amat menyukai suasana persekolahan tersebut kerana <colloc span=-2>keseronokan</colloc> dan <node>keriangan</node> belajar berorientasikan keilmuan yang tidak membosankan atau kita katakan sebagai taman ilmu"
[6] "<colloc span=-2>ketulusan</colloc> dan <node>keriangan</node> hati inilah yang akan membuat film ini akan mendapat perhatian penonton"                                                                                                                                       
[7] "bahkan mungkin pula ia akan berkata jalani hidup ini apa adanya dengan penuh <colloc span=-2>ketulusan</colloc> dan <node>keriangan</node>"                                                                                                                                  
[8] "pada anggota bahwa kita ini melakukan pekerjaan dengan penuh keikhlasan <colloc span=-3>ketulusan</colloc> dan penuh <node>keriangan</node> dan kesenangan"                                                                                                                  
[9] "lewat film yang sempat menduduki tangga box office ini keceriaan <node>keriangan</node> kejenakaan <colloc span=2>kekonyolan</colloc> sekaligus petuah disajikan dengan simpel"                                                                                              
memancarkan <- coll_cxn_ngram(full_sent_nominalised, "^memancarkan$", "^keriangan$", COLLOCATES, WORDS)
memancarkan$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keriangan
1 <colloc span=-1>memancarkan</colloc> <node>keriangan</node> 4
full_sent_nominalised %>% filter(COLLOCATES %in% c("memancarkan"), WORDS=="keriangan") %>% pull(MATCHED_SENTENCE)
[1] "fokusnya adalah pada wajah itu yang tampak sangat bahagia dengan mata <colloc span=-1>memancarkan</colloc> <node>keriangan</node>"             
[2] "fokusnya adalah pada wajah itu yang tampak sangat bahagia dengan mata <colloc span=-1>memancarkan</colloc> <node>keriangan</node>"             
[3] "fokusnya adalah pada wajah itu yang tampak sangat bahagia dengan mata <colloc span=-1>memancarkan</colloc> <node>keriangan</node>"             
[4] "diiringi lagu-lagu barat dari sebuah stasiun radio menandakan bahwa rumah tersebut <colloc span=-1>memancarkan</colloc> <node>keriangan</node>"
hilang <- coll_cxn_ngram(full_sent_nominalised, "^hilang$", "^keriangan$", COLLOCATES, WORDS)
hilang$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keriangan
1 <colloc span=-4>hilang</colloc> kehebatannya dan penderitaan <node>keriangan</node> 3
2 <node>keriangan</node> atau kesengsaraan akan <colloc span=4>hilang</colloc> 3
politik <- coll_cxn_ngram(full_sent_nominalised, "^politik$", "^keriangan$", COLLOCATES, WORDS)
politik$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keriangan
1 <colloc span=-3>politik</colloc> itu penuh <node>keriangan</node> 3
2 <colloc span=-2>politik</colloc> penuh <node>keriangan</node> 1
3 <node>keriangan</node> <colloc span=1>politik</colloc> 1
sent_imajinasi <- full_sent_nominalised %>% filter(COLLOCATES=="imajinasi", WORDS=="keriangan") %>% pull(MATCHED_SENTENCE)

sent_imajinasi
[1] "film itu lanjut dia juga sengaja dikemas berbentuk fantasi musikal dengan sejumlah efek animasi agar sesuai dengan <colloc span=-2>imajinasi</colloc> dan <node>keriangan</node> khas anak-anak"
[2] "dikemas berbentuk fantasi musikal dengan sejumlah efek animasi agar sesuai dengan <colloc span=-2>imajinasi</colloc> dan <node>keriangan</node> khas anak-anak"                                 
[3] "dikemas berbentuk fantasi musikal dengan sejumlah efek animasi agar sesuai dengan <colloc span=-2>imajinasi</colloc> dan <node>keriangan</node> khas anak-anak"                                 
sent_politik <- full_sent_nominalised %>% filter(COLLOCATES=="politik", WORDS=="keriangan") %>% pull(MATCHED_SENTENCE)

sent_politik
[1] "diri kita kepada bangsa-bangsa lain dan terutama kepada anak-cucu kita bahwa <colloc span=-3>politik</colloc> itu penuh <node>keriangan</node>"                                                                                          
[2] "diri kita kepada bangsa-bangsa lain dan terutama kepada anak-cucu kita bahwa <colloc span=-3>politik</colloc> itu penuh <node>keriangan</node>"                                                                                          
[3] "jokowi meminta masyarakat membuktikan kepada bangsa lain dan anak-anak bangsa bahwa <colloc span=-2>politik</colloc> penuh <node>keriangan</node>"                                                                                       
[4] "diri kita kepada bangsabangsa lain dan terutama kepada anak-cucu kita bahwa <colloc span=-3>politik</colloc> itu penuh <node>keriangan</node> politik itu di dalamnya ada kegembiraan politik itu ada kebajikan politik itu adalah suatu"
[5] "diri kita kepada bangsabangsa lain dan terutama kepada anak-cucu kita bahwa politik itu penuh <node>keriangan</node> <colloc span=1>politik</colloc> itu di dalamnya ada kegembiraan politik itu ada kebajikan politik itu adalah suatu" 
menggambarkan <- coll_cxn_ngram(full_sent_nominalised, "^menggambarkan$", "^keriangan$", COLLOCATES, WORDS)
menggambarkan$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keriangan
1 <colloc span=-1>menggambarkan</colloc> <node>keriangan</node> 5
2 <colloc span=-2>menggambarkan</colloc> citra <node>keriangan</node> 1
3 <colloc span=-3>menggambarkan</colloc> kelincahan dan <node>keriangan</node> 1
4 <colloc span=-4>menggambarkan</colloc> d sabar a <node>keriangan</node> 1
full_sent_nominalised %>% filter(COLLOCATES=="menggambarkan", WORDS=="keriangan") %>% pull(MATCHED_SENTENCE)
[1] "kata-kata dalam tembang itu seolah-olah deretan kata-kata biasa saja yang <colloc span=-1>menggambarkan</colloc> <node>keriangan</node> dunia kanak-kanak"                       
[2] "dialog tersebut <colloc span=-4>menggambarkan</colloc> d sabar a <node>keriangan</node>"                                                                                         
[3] "<colloc span=-1>menggambarkan</colloc> <node>keriangan</node> dan kenakalan anak sebagai suatu kelebihan dari dunianya"                                                          
[4] "lima warna tutup botol yang berbeda juga <colloc span=-2>menggambarkan</colloc> citra <node>keriangan</node> evian"                                                              
[5] "tarian pertama <colloc span=-1>menggambarkan</colloc> <node>keriangan</node> sedangkan tarian kedua berbicara mengenai kepiluan tragis"                                          
[6] "menurutnya dua puisi tersebut merupakan puisi bertema riang yang ingin <colloc span=-1>menggambarkan</colloc> <node>keriangan</node> pengunjung mengikuti jakarta book fair 2014"
[7] "pukulan selonding salah-satu alat gamelan bali benar-benar terdengar <colloc span=-3>menggambarkan</colloc> kelincahan dan <node>keriangan</node> suasana"                       
[8] "wajahnya selalu <colloc span=-1>menggambarkan</colloc> <node>keriangan</node> dan keramahan"                                                                                     
menunjukkan <- coll_cxn_ngram(full_sent_nominalised, "^menunjukkan$", "^keriangan$", COLLOCATES, WORDS)
menunjukkan$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keriangan
1 <colloc span=-1>menunjukkan</colloc> <node>keriangan</node> 4
2 <colloc span=-2>menunjukkan</colloc> gelagat <node>keriangan</node> 1
3 <colloc span=-3>menunjukkan</colloc> kegembiraan dan <node>keriangan</node> 1
4 <colloc span=-3>menunjukkan</colloc> vitalitas enerji <node>keriangan</node> 1
full_sent_nominalised %>% filter(COLLOCATES=="menunjukkan", WORDS=="keriangan") %>% pull(MATCHED_SENTENCE)
[1] "kira-kira saat ini mas truth seeker dimata saya ketika saya menyatakan ini apakah mas <colloc span=-1>menunjukkan</colloc> <node>keriangan</node> dan optimis atau tidak"                                                                                                    
[2] "dengan segala kerapuhannya fleur de marie <colloc span=-3>menunjukkan</colloc> vitalitas enerji <node>keriangan</node> keluwesan watak yang besar kualitas-kualitas yang itu sendiri menjelaskan perkembangan manusiawinya dalam situasinya yang tidak-manusiawi"            
[3] "bersesak-sesakan di jalan-jalan dan di serambi-serambi rumah menyambut kedatangan baginda sambil mengucapkan tahlil dan takbir <colloc span=-3>menunjukkan</colloc> kegembiraan dan <node>keriangan</node> mereka bertemu dengan rasulullah dan sahabatnya abu bakar shiddiq"
[4] "sesiapa yang menggunakan dadah jenis ini akan <colloc span=-2>menunjukkan</colloc> gelagat <node>keriangan</node> yang agak palsu"                                                                                                                                           
[5] "raut muka mahathir tidak <colloc span=-1>menunjukkan</colloc> <node>keriangan</node> tetapi kesugulan yang amat sangat"                                                                                                                                                      
[6] "meski gambar diambil dari belakang gesture anak itu <colloc span=-1>menunjukkan</colloc> <node>keriangan</node> saat bocah lelaki bertelanjang dada yang separuh tubuhnya terendam banjir itu mengibarkan"                                                                   
[7] "menangis dengan air mata yang menggenang di pelupukmu namun garis bibirmu selalu <colloc span=-1>menunjukkan</colloc> <node>keriangan</node> keramahan kegembiraan dan sukacita yang tiada tara"                                                                             
mendengar <- coll_cxn_ngram(full_sent_nominalised, "^mendengar$", "^keriangan$", COLLOCATES, WORDS)
mendengar$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keriangan
1 <colloc span=-1>mendengar</colloc> <node>keriangan</node> 1
2 <colloc span=-2>mendengar</colloc> hiruk-pikuk <node>keriangan</node> 1
3 <colloc span=-2>mendengar</colloc> teriakan <node>keriangan</node> 1
4 <colloc span=-3>mendengar</colloc> rintihan dan <node>keriangan</node> 1
full_sent_nominalised %>% filter(COLLOCATES=="mendengar", WORDS=="keriangan") %>% pull(MATCHED_SENTENCE)
[1] "haliza tersenyum lega <colloc span=-1>mendengar</colloc> <node>keriangan</node> suara sohibnya"                                                                                                                                                    
[2] "melihat apa yang berlaku disekelilingku <colloc span=-3>mendengar</colloc> rintihan dan <node>keriangan</node> insan di sekelilingku menasihati mereka-mereka yang mahukan pandangan dan pendapat itu bisa buat aku lebih menghargai kehidupan ini"
[3] "ada tembakan yang ditembakkan dan saya <colloc span=-2>mendengar</colloc> teriakan <node>keriangan</node>"                                                                                                                                         
[4] "<colloc span=-2>mendengar</colloc> hiruk-pikuk <node>keriangan</node> itu hefestus meletakkan palu"                                                                                                                                                
berbalut <- coll_cxn_ngram(full_sent_nominalised, "^berbalut$", "^keriangan$", COLLOCATES, WORDS)
berbalut$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keriangan
1 <node>keriangan</node> <colloc span=1>berbalut</colloc> 3
sent_berbalut <- full_sent_nominalised %>% filter(COLLOCATES=="berbalut", WORDS=="keriangan") %>% pull(MATCHED_SENTENCE)

sent_berbalut
[1] "bukankah cinta menciptakan <node>keriangan</node> <colloc span=1>berbalut</colloc> kegembiraan dari pesona laga bola"
[2] "bukankah cinta menciptakan <node>keriangan</node> <colloc span=1>berbalut</colloc> kegembiraan dari pesona laga bola"
[3] "bukankah cinta menciptakan <node>keriangan</node> <colloc span=1>berbalut</colloc> kegembiraan dari pesona laga bola"
sent_kejayaan <- full_sent_nominalised %>% filter(COLLOCATES=="kejayaan", WORDS=="keriangan") %>% pull(MATCHED_SENTENCE)

sent_kejayaan
[1] "dan sepakbola mengajar logika <colloc span=-1>kejayaan</colloc> <node>keriangan</node> dan kegembiraan hidup alias optimisme"                                                 
[2] "dan dalam keadaan berada di puncak <node>keriangan</node> <colloc span=1>kejayaan</colloc> untuk menjadi perdana menteri yang paling gembira di dunia tunku menghadapi dugaan"
[3] "dan sepakbola mengajar logika <colloc span=-1>kejayaan</colloc> <node>keriangan</node> dan kegembiraan hidup alias optimisme"                                                 
mengajar <- coll_cxn_ngram(full_sent_nominalised, "^mengajar$", "^keriangan$", COLLOCATES, WORDS)
mengajar$colloc_cxn_pattern %>% knitr::kable(row.names = TRUE)
COLLOC_NGRAM keriangan
1 <colloc span=-3>mengajar</colloc> logika kejayaan <node>keriangan</node> 2
2 <node>keriangan</node> belajar <colloc span=2>mengajar</colloc> 1

4 R session info

devtools::session_info()
─ Session info ─────────────────────────────────────────────────────────────────

─ Packages ─────────────────────────────────────────────────────────────────────
 package      * version date       lib source        
 assertthat     0.2.1   2019-03-21 [1] CRAN (R 4.0.0)
 backports      1.1.7   2020-05-13 [1] CRAN (R 4.0.0)
 badger         0.1.0   2021-04-21 [1] CRAN (R 4.0.2)
 BiocManager    1.30.16 2021-06-15 [1] CRAN (R 4.0.2)
 broom          0.7.6   2021-04-05 [1] CRAN (R 4.0.2)
 cachem         1.0.5   2021-05-15 [1] CRAN (R 4.0.2)
 callr          3.6.0   2021-03-28 [1] CRAN (R 4.0.2)
 cellranger     1.1.0   2016-07-27 [1] CRAN (R 4.0.0)
 cli            3.1.0   2021-10-27 [1] CRAN (R 4.0.2)
 colorspace     1.4-1   2019-03-18 [1] CRAN (R 4.0.0)
 crayon         1.4.1   2021-02-08 [1] CRAN (R 4.0.2)
 DBI            1.1.0   2019-12-15 [1] CRAN (R 4.0.0)
 dbplyr         2.1.1   2021-04-06 [1] CRAN (R 4.0.2)
 desc           1.4.0   2021-09-28 [1] CRAN (R 4.0.2)
 devtools       2.3.0   2020-04-10 [1] CRAN (R 4.0.0)
 digest         0.6.25  2020-02-23 [1] CRAN (R 4.0.0)
 dlstats        0.1.4   2021-04-23 [1] CRAN (R 4.0.2)
 dplyr        * 1.0.5   2021-03-05 [1] CRAN (R 4.0.2)
 ellipsis       0.3.1   2020-05-15 [1] CRAN (R 4.0.0)
 evaluate       0.14    2019-05-28 [1] CRAN (R 4.0.0)
 fansi          0.4.1   2020-01-08 [1] CRAN (R 4.0.0)
 fastmap        1.1.0   2021-01-25 [1] CRAN (R 4.0.2)
 forcats      * 0.5.1   2021-01-27 [1] CRAN (R 4.0.2)
 fs             1.4.1   2020-04-04 [1] CRAN (R 4.0.0)
 generics       0.0.2   2018-11-29 [1] CRAN (R 4.0.0)
 ggplot2      * 3.3.3   2020-12-30 [1] CRAN (R 4.0.2)
 glue           1.4.1   2020-05-13 [1] CRAN (R 4.0.0)
 gtable         0.3.0   2019-03-25 [1] CRAN (R 4.0.0)
 happyr       * 1.0     2020-07-02 [1] local         
 haven          2.4.0   2021-04-14 [1] CRAN (R 4.0.2)
 highr          0.8     2019-03-20 [1] CRAN (R 4.0.0)
 hms            1.0.0   2021-01-13 [1] CRAN (R 4.0.2)
 htmltools      0.5.2   2021-08-25 [1] CRAN (R 4.0.2)
 httr           1.4.2   2020-07-20 [1] CRAN (R 4.0.2)
 irr            0.84.1  2019-01-26 [1] CRAN (R 4.0.0)
 jquerylib      0.1.4   2021-04-26 [1] CRAN (R 4.0.2)
 jsonlite       1.7.2   2020-12-09 [1] CRAN (R 4.0.2)
 knitr          1.30    2020-09-22 [1] CRAN (R 4.0.2)
 lifecycle      1.0.0   2021-02-15 [1] CRAN (R 4.0.2)
 lpSolve        5.6.15  2020-01-24 [1] CRAN (R 4.0.0)
 lubridate      1.7.10  2021-02-26 [1] CRAN (R 4.0.2)
 magrittr       2.0.1   2020-11-17 [1] CRAN (R 4.0.2)
 memoise        2.0.0   2021-01-26 [1] CRAN (R 4.0.2)
 modelr         0.1.8   2020-05-19 [1] CRAN (R 4.0.0)
 munsell        0.5.0   2018-06-12 [1] CRAN (R 4.0.0)
 pillar         1.6.0   2021-04-13 [1] CRAN (R 4.0.2)
 pkgbuild       1.0.8   2020-05-07 [1] CRAN (R 4.0.0)
 pkgconfig      2.0.3   2019-09-22 [1] CRAN (R 4.0.0)
 pkgload        1.1.0   2020-05-29 [1] CRAN (R 4.0.0)
 prettyunits    1.1.1   2020-01-24 [1] CRAN (R 4.0.0)
 processx       3.5.1   2021-04-04 [1] CRAN (R 4.0.2)
 ps             1.6.0   2021-02-28 [1] CRAN (R 4.0.2)
 purrr        * 0.3.4   2020-04-17 [1] CRAN (R 4.0.0)
 R6             2.4.1   2019-11-12 [1] CRAN (R 4.0.0)
 RColorBrewer   1.1-2   2014-12-07 [1] CRAN (R 4.0.2)
 Rcpp           1.0.7   2021-07-07 [1] CRAN (R 4.0.2)
 readr        * 1.4.0   2020-10-05 [1] CRAN (R 4.0.2)
 readxl         1.3.1   2019-03-13 [1] CRAN (R 4.0.0)
 remotes        2.1.1   2020-02-15 [1] CRAN (R 4.0.0)
 reprex         2.0.0   2021-04-02 [1] CRAN (R 4.0.2)
 rlang          0.4.11  2021-04-30 [1] CRAN (R 4.0.2)
 rmarkdown      2.11    2021-09-14 [1] CRAN (R 4.0.2)
 rprojroot      1.3-2   2018-01-03 [1] CRAN (R 4.0.0)
 rsconnect      0.8.16  2019-12-13 [1] CRAN (R 4.0.0)
 rstudioapi     0.13    2020-11-12 [1] CRAN (R 4.0.2)
 rvcheck        0.2.1   2021-10-22 [1] CRAN (R 4.0.2)
 rvest          1.0.0   2021-03-09 [1] CRAN (R 4.0.2)
 scales         1.1.1   2020-05-11 [1] CRAN (R 4.0.0)
 sessioninfo    1.1.1   2018-11-05 [1] CRAN (R 4.0.0)
 stringi        1.5.3   2020-09-09 [1] CRAN (R 4.0.2)
 stringr      * 1.4.0   2019-02-10 [1] CRAN (R 4.0.0)
 testthat       3.0.2   2021-02-14 [1] CRAN (R 4.0.2)
 tibble       * 3.1.0   2021-02-25 [1] CRAN (R 4.0.2)
 tidyr        * 1.1.3   2021-03-03 [1] CRAN (R 4.0.2)
 tidyselect     1.1.0   2020-05-11 [1] CRAN (R 4.0.0)
 tidyverse    * 1.3.1   2021-04-15 [1] CRAN (R 4.0.2)
 usethis        2.1.3   2021-10-27 [1] CRAN (R 4.0.2)
 utf8           1.1.4   2018-05-24 [1] CRAN (R 4.0.0)
 vctrs          0.3.7   2021-03-29 [1] CRAN (R 4.0.2)
 withr          2.4.1   2021-01-26 [1] CRAN (R 4.0.2)
 xfun           0.22    2021-03-11 [1] CRAN (R 4.0.2)
 xml2           1.3.2   2020-04-23 [1] CRAN (R 4.0.0)
 yaml           2.2.1   2020-02-01 [1] CRAN (R 4.0.0)
 yulab.utils    0.0.4   2021-10-09 [1] CRAN (R 4.0.2)

[1] /Users/Primahadi/Rlibs
[2] /Library/Frameworks/R.framework/Versions/4.0/Resources/library

Daftar pustaka

Hilpert, M. (2006). Distinctive collexeme analysis and diachrony. Corpus Linguistics and Linguistic Theory, 2(2), 243–256.
R Core Team. (2019). R: A language and environment for statistical computing. Retrieved from https://www.R-project.org/
Rajeg, G. P. W. (2019). Happyr: The accompanying r package for rajeg’s (2019) PhD thesis titled "metaphorical profiles and near-synonyms: A corpus-based study of indonesian words for happiness" (Version 1.0). doi: 10.5281/zenodo.3559457
Rajeg, G. P. W. (2020). Data dan r notebook untuk Linguistik korpus kuantitatif dan kajian semantik leksikal sinonim emosi bahasa indonesia. Figshare. doi: 10.6084/m9.figshare.12073065.v1
Rajeg, G. P. W., & Rajeg, I. M. (2019). Pemahaman kuantitatif dasar dan penerapannya dalam mengkaji keterkaitan antara bentuk dan makna. Linguistik Indonesia, 37(1), 13–31. doi: 10.26180/5c6e1160b8d8a
Stefanowitsch, A. (2013). Collostructional analysis. In T. Hoffmann & G. Trousdale (Eds.), The oxford handbook of construction grammar (pp. 290–306). doi: 10.1093/oxfordhb/9780195396683.013.0016
Stefanowitsch, A. (2014). Collostructional analysis: A case study of the english into-causative. In T. Herbst, H.-J. Schmid, & S. Faulhaber (Eds.), Constructions collocations patterns (pp. 217–238). Berlin ; Boston: Walter De Gruyter, GmbH.
Stefanowitsch, A., & Gries, S. Th. (2005). Covarying collexemes. Corpus Linguistics and Linguistic Theory, 1(1), 1–43.
Wickham, H., Averick, M., Bryan, J., Chang, W., McGowan, L., François, R., … Yutani, H. (2019). Welcome to the tidyverse. Journal of Open Source Software, 4(43), 1686. doi: 10.21105/joss.01686

  1. Representasi berbeda dari 2.0031285^{-43} adalah 0.0000000000000000000000000000000000000000002003129↩︎

LS0tCnRpdGxlOiAiUiBOb3RlYm9vayB1bnR1ayAqTGluZ3Vpc3RpayBLb3JwdXMgS3VhbnRpdGF0aWYgZGFuIEthamlhbiBTZW1hbnRpayBMZWtzaWthbCBTaW5vbmltIEVtb3NpIEJhaGFzYSBJbmRvbmVzaWEqIgphdXRob3I6ICdHZWRlIFByaW1haGFkaSBXaWpheWEgPHNwYW4gc3R5bGUgPSAiZm9udC12YXJpYW50OnNtYWxsLWNhcHM7Ij5SYWplZzwvc3Bhbj4gPGEgaXRlbXByb3A9InNhbWVBcyIgY29udGVudD0iaHR0cHM6Ly9vcmNpZC5vcmcvMDAwMC0wMDAyLTIwNDctODYyMSIgaHJlZj0iaHR0cHM6Ly9vcmNpZC5vcmcvMDAwMC0wMDAyLTIwNDctODYyMSIgdGFyZ2V0PSJvcmNpZC53aWRnZXQiIHJlbD0ibm9vcGVuZXIgbm9yZWZlcnJlciIgc3R5bGU9InZlcnRpY2FsLWFsaWduOnRvcDsiPjxpbWcgc3JjPSJodHRwczovL29yY2lkLm9yZy9zaXRlcy9kZWZhdWx0L2ZpbGVzL2ltYWdlcy9vcmNpZF8xNngxNi5wbmciIHN0eWxlPSJ3aWR0aDoxZW07bWFyZ2luLXJpZ2h0Oi41ZW07IiBhbHQ9Ik9SQ0lEIGlEIGljb24iPjwvYT4nCmRhdGU6ICJEaWJ1YXQgMzEgTWFyZXQsIDIwMjA7IFBlbWJhaGFydWFuIHRlcmFraGlyIGByIGZvcm1hdChTeXMudGltZSgpLCAnJWQgJUIsICVZJylgIgpvdXRwdXQ6CiAgaHRtbF9ub3RlYm9vazoKICAgIG51bWJlcl9zZWN0aW9uczogeWVzCiAgICB0b2M6IHllcwogICAgdG9jX2Zsb2F0OiB5ZXMKICAgIGZpZ19jYXB0aW9uOiB5ZXMKICAgIGZpZ193aWR0aDogNgogICAgZmlnX3JldGluYTogMgogIHdvcmRfZG9jdW1lbnQ6IGRlZmF1bHQKICBib29rZG93bjo6d29yZF9kb2N1bWVudDI6CiAgICBmaWdfY2FwdGlvbjogdHJ1ZQogICAgZmlnX3dpZHRoOiA2CiAgICBkZl9wcmludDoga2FibGUKYmlibGlvZ3JhcGh5OiAiZGFmdGFycHVzdGFrYS5iaWIiCmNzbDogImFwYS1vbGQtZG9pLXByZWZpeC5jc2wiCmxpbmstY2l0YXRpb25zOiB5ZXMKLS0tCgpbIVtDQyBCWS1OQy1TQSA0LjBdW2NjLWJ5LW5jLXNhLWJ1dHRvbl1dW2NjLWJ5LW5jLXNhXSBbIVtdKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vYmFkZ2UvZG9pLTEwLjI2NDk5L2xpLnYzOGkyLjE1NS1ncmVlbi5zdmcpXShodHRwczovL2RvaS5vcmcvMTAuMjY0OTkvbGkudjM4aTIuMTU1KSBbIVtET0ldKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vYmFkZ2UvZG9pLTEwLjYwODQvbTkuZmlnc2hhcmUuMTIwNzMwNjUtYmx1ZS5zdmc/c3R5bGU9ZmxhdCZsYWJlbENvbG9yPWdhaW5zYm9ybyZsb2dvV2lkdGg9NDAmbG9nbz1kYXRhJTNBaW1hZ2UlMkZwbmclM0JiYXNlNjQlMkNpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBRkFBQUFBWkNBWUFBQUNtUnFrSkFBQUtpMGxFUVZSNEFlM1phVkJVVjk3SDhldnVFMEVmSDMyTW1rY2ZveUF1R2pYS2drdk1hRlJBRnVpbG9lbVd2UnVFWGxnRUJSRVhCWUppWEFRVUZlS29jVW5pUWlLb2dBSmhRV3dXRU5ERWpMTll2akZMelV6TmtwbEVaYjVrVG1lNm5DUmpLbE9wU1psYjlTbUwyJTJGZmN1djNyZTg3JTJGbktQMFRZZk9jc2xxUE1idDYzeEJLdWgwOU1UeGdpN0hLVDFTajFUdktwJTJCTWtaQjYlMkZYVDhjNEFqVVlQeVZkZmI3UXM2SFRJSjhFSGU3VWwlMkIxNTJDcGhEYWJSUTB1TXI3JTJGUlFnaCUyQjhxVTYlMkZCaVBEVkd2MGpxMHVHRTk0YjBaWjNqJTJCMjVNVGV0b01zaCUyRldEOTFPQnFUOSUyRnNlaGQ1RXFHVjE3bktNelRxT0h2YVJNTUxFcDdxQUNmaW5xJTJGVzFCQng1WnhCMTN4NVgzSnIxdiUyRno5cFVjYUhVNjNQaWljanJodlhmTlJiWTFUaDQ5UTZZMXZ1Nnp5cVNqelgzYVZJZ2Y0T2tLVG94aGd4cGQ1T016VjBiWUU0Q1JOMUNodTM0cG5UZnduVjAzRmlUbGZ6RFJYQkhvNmRmZ0lxOHNYNkJ5VjZ2anRoR2MwVWRyclBQVkdGUUJ4bFNqekpRV0VOVlVaa2ViY2VpTHB5TThJWlN4N083Wmw0Sml2VU5NWlg1aDhSdDQlMkIyTDBsbEtmZ3U2SkthJTJCWHZwQjViWjQ4JTJCYTNGNmxpbDJwRGtFMnJPRHpDc1UwVlVuTkZITlpRcWRTM2x4M1V0bCUyRk1JTFFjZll0NVRFZUMxR1NwcmdBcTBYbGdZR0xReXhKVGxyMHVLMERWWDdFNXMyWnRPZ0h2THc1ZkxLOXhWbWNxZ3VFaiUyRjJMWGJ3c3ZQQmtaWktsNGo1TmNJS2luYVVzTGJlakZXWjdtOERvMmNtd25iNGNGcUFyUnd4M1RFWXppJTJCejdEVEQwdWh4bmo4Y0FFV1dVWkslMkJUY2RoaDRwbVRXVXNXMDFZMXVDVW1OWTdSdHF6bzVzdkpTUzBwb1ZYdGc2eVZqN3NuOXF1bmVrM2o4eFBWWFhlTUZvYURrZXY2bERGN2VuZTdZNXIydGFOQVhtRUJYYVA2OXpldmFPanVVZWVaMHpoekp1UHNNNUNkWXZPaFpWcUJNaEJxSVZEdDh6d0dkUWpSNG9mOUFBJTJCWEpqVUZwd3c3R29kbkhBUWNhNHNyREFXQ1hqVzNwRVRhbCUyQmJmdW11T0xLcVNtMTd2SVF0V3IxVXUzSll5NkpiWHVYRmJSTjFSOHBtNWJ5eHRHNUNjZE96OUVVVmM3STVJZVFFV1E3d1dWd3p3cnNSbiUyQmJBRmVpQ3hOc0t2NVk5UDAzQkZnakFsVDkwQUdPUXkyVDQ3Zk9ibDAwb2NGWkhsJTJCMlVHWHcwUmp6TlVXSFRQRnRoY2tIV2gxOGFsOEtzR3VhRmlnVlZ6bEt1WSUyQkc5ejM3cXZ1b0dsZWxwc0pWbGRyZ3JGamJPRSUyQmVXZTh1VzE4Vzg0cUNxYzRzN3RtQ0lnekk3NWhzJTJGYUpLTkZ1N3JGJTJCSUlJaHIlMkJtSVElMkJ0bjhMUWtETVFPZVdBWW5ESGdzUUkzTk5VN1c5ajRoNXQ3Mm8lMkZFeXZMRVElMkYlMkJ1N3ltemJPeGJDQWVPeEFndGdoejZZZ09WWWl1ZkVPVWxxdTBNMzdobyUyQlluJTJGbnBKVDhic2VqVlN0OTB1cWRGZGxHbVY3aEY3Y3VXWGV0TkNTaExYJTJCSTNuS2hOJTJCeXZDcyUyQnM2R1FwV0IzM2Z6S05RUiUyQnFXcjAyMnl2Yzk0cTdzcEJDWSUyQmJ6a291NlpmSk5QZjg5Wk4lMkZkaWRZSG5Jc0tmSXpqQ01JYzdNQXdTSmlNUEZ4R01jS1FpeEd3eDA3UiUyRmlFZTRDTnN4RkNiQUp2d2lmajhMa0lnWVJIYThMbTQ3ak5ZOEFva21NUzVOcnlQaCUyRmlqT0IlMkJPWDRoN2ZvRXV5UEhsaXNNdHlsSnB6dTFZc3BrUTM2WWJMcW54OEYxWDRhYmFxbVlzOURHbUxscms0Q0U5WGxIbEtac2t4ZnB0JTJGVUpMenloVjIzZEclMkJJVEY3MmZxbzluakVhb2t3SXU4bFNiRzFONHd4MjczQ3JQJTJCJTJCam5pUVZaaEdyelFqbEVpb0ZJUmNqRE02TUlkakJWdEhvZ3ZsNFc5cUlYOHNUZndVNVNnVSUyRnpkaGRHWUxjSjlCenZSSUQ2dmd4MlN4TjhQVUk5S25JRVdING43RnVJbyUyRm9SZllWNXZNTVY0d0hSRnMlMkJ2RyUyRktsMDVackRWZFAxMVQ3ZXVsSzNvTlFjeiUyRkFYY2ozRHBNZVBqTzQ0S2V0REwybERoJTJGbVYxUzNuTm9lV25KYjdSU1htTUpsJTJCSTBHbUgxM3JLczhsdkVkUXdmb1dLbUN4ZG1HYkFFZGdBVzVqRmlRaEJiOFdYU1lUUFNqR0NCSGFNUFI1TE1BTmtPQ00lMkIlMkZnRDNNUzVaOFcxRWx6d1czSE5KQ1NJOXRjdzJ1YiUyQk84VDVMUFRCUUJ5MW51c05jQjd6dHhpbUkxc0lzU1N6WGIwNHYzdnl1c0pteDYzbk11ZkhYbFY2THZwRVNoRGQ5eCUyRkhGWVdYVlB1U1g3JTJGRDd6bXBjanVXUnVwYnl2YUhuajhaN0JOc1VGQ0FybTcwaVRSY2Q1YkZFTjdveHdKcyUyRnBvQSUyRndmQmFMSjJaMkVGYm1Fc05LTDdmWVlQVUk5RElxaiUyRnNna3cwQ2FzVyUyQkw2UmJCREZJN2dUWlNLeno2R2swMkFKMjNHM1FGNHh5YllVOElOY2U2czVDSk5sVHlYaFl3S3YlMkZSV01pRWVpbXF1ekloclBwR3p1U05Dc2J2TGVjMiUyQnJwbWgyZTB5dSUyRnhPcDk2d3Y2cDhYMHhlSVpXNUJvMiUyRjZ1Y2R2YiUyRmRNV1ZEbThsWDExcFJwRDE2T0o2Vnlac3JROHlLJTJCVkZKOWg0VWh3RUhEajVKZ0dFMjNVa1Nmb1p1ak1NelNFU05DUEJUOUtBRmpxaTJyY0lZWlJQZ1ltekRROXhETFN6NCUyRkdzQ1BJRSUyQk5rV3JUSnklMkZoUnJSdGhwVnlKSkV4Ym5tRzJJJTJCNnglMkJUJTJGSHhZeVFrelFmSkdsdWZwV3k2YllsdlBVRWd1JTJCSGxISkE1Ym9vN3JFM2JsbkJSN3I2bXYlMkJ2Q0JNWUVhZyUyRmFxc3lyMSUyQklrNWElMkZkMno5ekdCRHBaMzFxdWxDV2s5NDQzSGZnNUJ1SkpBZ3hBRzBaQkVtUzREWjdSS0lsaU1WaTBkOFV2UlVDZXVQb05BZjRaJTJGbWdWMTNwQXdpd1IzaWZmRktCUUpNNW5vQiUyRjZZNWg0NXY3V3dmMGNEdEQxRGxNSWVpdWdXbVpPeTVDdjNSZ2pYNyUyRkY0R2RNWGFzT2pndXJtcWRhZnFwb2psdG1sOUlqdk9KOE5NdTlsTkw1Z1FtWGRNdTBCVGVmejhsb015b0p2aXZzM1ZNWnZocGpxYWlnJTJGWjhnd0pHWUlzSUtSaCUyRlk0d2glMkJnJTJGR1FveFliUkVnWiUyQkIzdXd3MVYzeEtnTiUyQnJ3Q050RjRQdng4TnZlUUNFWVglMkJBdWtoQ0lZdUhaTHklMkZ5RGpIYkpRZm83UFRLMWRFQldxUEJYMnZTJTJCMmhOVzFYcXVEVVJ5cGl3WFN0Q2pWV3V5clNLUUMlMkZkb1VhSHRPVDJIRU5veWFsNGI0MHg3cks3eWxpcDlOSVYzSnkwUDZmRDI0ZmwzUmE2dW9lM1BOcU9IMlB3M3glMkZDOEs4Q0hJVSUyQklwUTdPSTh5Tk9KOVRNSk8lMkZBVTlObjZQalJpR21tJTJGcHdnc1JMUXBLandqdVUlMkZ6MUNRSzBSNEc0VDQlMkZ3Q0hXWUtsbWNBNnhyNFNBMkV6b2JYZVVhOXZoMjFMZ3BkS3hLOGhxZDVSc2FYV1M3UzlZdmxoVTJPN3lhM2VrWHJtJTJCOWxLM0t6Rkg2YTR5NVY5MlZlNWhrTTRkMDJFU2hNZXN0WmVrRTJJeFpYN01XZGtBZ0J0bXNpOVUybFhFd2xpQU9LJTJCR0xUb3dUaFdJWmtyRVZTU0tZZ2VnUE9VeHd0Rm1kYUJHTHNSZ2cycWVLdG9zUURoMkdZemJpc1VJRWFQdmNROFQ1Vkd6Q0tvd0JrMkkzbVRWQUxlNHdkNHR1bUtjb2FaaXJTS3RlNFJ0VnJ2WHdMcnclMkJKWFYlMkYxOFRzM0J0TEVtT2FTMHlSdFJkTWZwR0poVEtOTWJESldSNVY3ZUViVU5EdGNJUUFkMVBKTXdudUpsNkU5S1FIWTdBQUhrelFvQmtqOEIlMkIlMkZwVFdRNE1hZXpuZTFQM3gxZXNMQnVxbUIlMkJiY2NOaEpNR2V0Yk0lMkJHWklpMVYlMkZvUnlPWEI3N3NLVld1UG1yZDRSQnZZUW05aWhWdWUlMkY3eERQR2xqQjUwTW9KbU8lMkJ5MzZnQ0dzUW92Q3lDR3dPYXJEOVI3UExMWFpPSmpLWnZzZSUyRkRRUVN2ZmZHN0YxcldyWlBpTEtVWDJEUHIxaGJmSEFLYjBrREJTZVRlZDVNUWo5NFBuMXhCTXZBJTJCMklEWVRBa2NYelhBTlBSakhxMDRBQ2VGZUg5YUFJY0JDM0xPcSUyRlk1cFBEZVl0TzR5UlRtelVoYng5TG96Q0VlYTh5YmFIb3hETm1WdFBsdHhTVnp4aENtM0FzZzRUdnM2ODNBYTV3d2tEOHFQOVhiZ1FxVWJiNlRwMDlVNU9zM3JXaVY0alp2Mk91dnhQZHZodDcwUmZTVDhmakFUWmQ3UDMzT1l6eFolMkZkRjdGd2NncVBVMHlNUjJ2TVlEdWxwRGZCdnclMkJHQ2RCZVBwcThBQUFBQVNVVk9SSzVDWUlJJTNEKV0oaHR0cDovL2R4LmRvaS5vcmcvMTAuNjA4NC9tOS5maWdzaGFyZS4xMjA3MzA2NSkKCltjYy1ieS1uYy1zYV06IGh0dHBzOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS1uYy1zYS80LjAvCltjYy1ieS1uYy1zYS1idXR0b25dOiBodHRwczovL2xpY2Vuc2VidXR0b25zLm5ldC9sL2J5LW5jLXNhLzQuMC84OHgzMS5wbmcKW2NjLWJ5LW5jLXNhLXNoaWVsZF06IGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vYmFkZ2UvbGlzZW5zaS1DQyUyMEJZLS1OQy0tU0ElMjA0LjAtaW5mb3JtYXRpb25hbC5zdmcKCiMjIyBDYXJhIG1lbnlpdGlyL21lbmd1dGlwIFIgTm90ZWJvb2ssIGRhdGEgZGFuIG1ha2FsYWggbGVuZ2thcG55YSB7LX0KCkt1dGlwYW4gdW50dWsgZGF0YSBkYW4gUiBOb3RlYm9vayBpbmk6Cgo+IFJhamVnLCBHZWRlIFByaW1haGFkaSBXaWpheWEuIDIwMjA6IERhdGEgZGFuIFIgTm90ZWJvb2sgdW50dWsgKkxpbmd1aXN0aWsgS29ycHVzIEt1YW50aXRhdGlmIGRhbiBLYWppYW4gU2VtYW50aWsgTGVrc2lrYWwgU2lub25pbSBFbW9zaSBCYWhhc2EgSW5kb25lc2lhKi4gZmlnc2hhcmUuIERhdGFzZXQuIGh0dHBzOi8vZG9pLm9yZy8xMC42MDg0L205LmZpZ3NoYXJlLjEyMDczMDY1LgoKS3V0aXBhbiB1bnR1ayBtYWthbGFoIHRlcmJpdG55YToKCj4gUmFqZWcsIEdlZGUgUHJpbWFoYWRpIFdpamF5YS4gMjAyMC4gTGluZ3Vpc3RpayBrb3JwdXMga3VhbnRpdGF0aWYgZGFuIGthamlhbiBzZW1hbnRpayBsZWtzaWthbCBzaW5vbmltIGVtb3NpIGJhaGFzYSBJbmRvbmVzaWEuIF9MaW5ndWlzdGlrIEluZG9uZXNpYV8gMzgoMikuIDEyM+KAkzE1MC4gaHR0cHM6Ly9kb2kub3JnLzEwLjI2NDk5L2xpLnYzOGkyLjE1NS4KCmBgYHtyLCBtZXNzYWdlID0gRkFMU0UsIHdhcm5pbmcgPSBGQUxTRSwgZXZhbCA9IEZBTFNFfQpsaWJyYXJ5KHJlbW90ZXMpICMgaWYgJ3JlbW90ZXMnIHBhY2thZ2UgaXMgbm90IGF2YWlsYWJsZSwgaW5zdGFsbCBpdCBieSB0eXBpbmc6IGluc3RhbGwucGFja2FnZXMoInJlbW90ZXMiKQpyZW1vdGVzOjppbnN0YWxsX2dpdGh1YigiZ2VkZXJhamVnL2hhcHB5ciIpCmBgYAoKCiMgS29kZSBhbmFsaXNpcyBNRENBCgpOdWtpbGFuIGtvZGUgYmVyaWt1dCBtZW51bmp1a2thbiBwZW5naGl0dW5nYW4gKk11bHRpcGxlIERpc3RpbmN0aXZlIENvbGxleGVtZSBBbmFseXNpcyogbWVuZ2d1bmFrYW4gZnVuZ3NpIGBtZGNhKClgIGRhbiBkYXRhIGtvbG9rYXQgZGFyaSBtb2R1bCBSICpoYXBweXIqIFtAaGFwcHlyMjAxOV0uIFBlcmx1IGRpY2F0YXQgYmFod2EgcGVuZ2d1bmEgZGFuIHBlbWJhY2EgcGVybHUganVnYSBtZW5naW5zdGFsIG1vZHVsICpoYXBweXIqIChsaWhhdCBudWtpbGFuIGtvZGUgc2ViZWx1bW55YSkgZGFuIG1vZHVsICp0aWR5dmVyc2UqIFtAd2lja2hhbV93ZWxjb21lXzIwMTldIHVudHVrIGRhcGF0IG1lbmphbGFua2FuIGtvZGUgYW5hbGlzaXMgYmVyaWt1dC4gRGF0YSBsYWluIHVudHVrIG1ha2FsYWggaW5pIGJlc2VydGEgUiBOb3RlYm9vay1ueWEganVnYSB0ZXJzZWRpYSBzZWNhcmEgdGVyYnVrYSBbQHJhamVnX2RhdGFfMjAyMF0uCgpgYGB7ciBtZGNhLWZvci1jb2xsb2NhdGVzLCBtZXNzYWdlID0gRkFMU0UsIHdhcm5pbmcgPSBGQUxTRX0KbGlicmFyeShoYXBweXIpCmxpYnJhcnkodGlkeXZlcnNlKQpzb3VyY2UoInNjcmlwdHMvc2NyaXB0X2Zvci1yZXRyaWV2aW5nLW5ncmFtcy5SIikKa25pdHI6Om9wdHNfY2h1bmskc2V0KGZpZy53aWR0aD02LCAKICAgICAgICAgICAgICAgICAgICAgIGZpZy5hc3A9MC42MTgsCiAgICAgICAgICAgICAgICAgICAgICBkcGk9MzAwKQptZGNhX2NvbGxvYyA8LSBtZGNhKGRmID0gY29sbG9jX2lucHV0X2RhdGEsCiAgICAgICAgICAgICAgICAgICAgY3huX3ZhciA9ICJzeW5vbnltcyIsCiAgICAgICAgICAgICAgICAgICAgY29sbF92YXIgPSAiY29sbG9jYXRlcyIsCiAgICAgICAgICAgICAgICAgICAgY29ycmVjdF9ob2xtID0gVFJVRSwKICAgICAgICAgICAgICAgICAgICBjb25jaXNlX291dHB1dCA9IEZBTFNFLAogICAgICAgICAgICAgICAgICAgIGFscmVhZHlfY291bnRfdGFibGUgPSBGQUxTRSwKICAgICAgICAgICAgICAgICAgICBhc3NvY3N0cl9kaWdpdHMgPSAzTCkKCm1kY2FfY29sbG9jX2NvbmNpc2UgPC0gbWRjYShkZiA9IGNvbGxvY19pbnB1dF9kYXRhLAogICAgICAgICAgICAgICAgICAgIGN4bl92YXIgPSAic3lub255bXMiLAogICAgICAgICAgICAgICAgICAgIGNvbGxfdmFyID0gImNvbGxvY2F0ZXMiLAogICAgICAgICAgICAgICAgICAgIGNvcnJlY3RfaG9sbSA9IFRSVUUsCiAgICAgICAgICAgICAgICAgICAgY29uY2lzZV9vdXRwdXQgPSBUUlVFLAogICAgICAgICAgICAgICAgICAgIGFscmVhZHlfY291bnRfdGFibGUgPSBGQUxTRSwKICAgICAgICAgICAgICAgICAgICBhc3NvY3N0cl9kaWdpdHMgPSAzTCkKYGBgCgojIyBQZW5qZWxhc2FuIHRlcmthaXQgIkFuYWxpc2lzIEtvbGVrc2VtIEtoYXMgQmVyZ2FuZGEiCgpCYWdpYW4gaW5pIG1lbWFwYXJrYW4gbGFuZGFzYW4ga3VhbnRpdGF0aWYgZGFyaSAiQW5hbGlzaXMgS29sZWtzZW0gS2hhcyBCZXJnYW5kYSIgKCpNdWx0aXBsZSBEaXN0aW5jdGl2ZSBDb2xsZXhlbWUgQW5hbHlzaXMqKSwgZGFuIGtvZGUgcGVtcm9ncmFtYW4gUiB5YW5nIGRpZ3VuYWthbiB1bnR1ayBkYXRhIGt1YW50aXRhdGlmIGRhbGFtIHBlbWFwYXJhbiB0ZXJzZWJ1dC4gUGVyaGF0aWthbiBUYWJlbCBbXEByZWYodGFiOmNvbnRvaC1tZGNhKV0oI2NvbnRvaC1tZGNhKS4KCgpgYGB7ciBjb250b2gtbWRjYSwgbWVzc2FnZSA9IEZBTFNFLCB3YXJuaW5nID0gRkFMU0V9Cm1kY2FfZXhhbXBsZSA8LSBzdWJzZXQobWRjYV9jb2xsb2NfY29uY2lzZSwgY29sbG9jYXRlcyA9PSAiYW5hay1hbmFrIikKbWRjYV9leGFtcGxlX2xvbmcgPC0gc3Vic2V0KG1kY2FfY29sbG9jLCBjb2xsb2NhdGVzID09ICJhbmFrLWFuYWsiKQpjb2xuYW1lcyhtZGNhX2V4YW1wbGUpW2MoMToyLCA4KV0gPC0gYygia29sb2thdCIsICJzaW5vbmltIiwgInNpZ25pZiIpCm1kY2FfZXhhbXBsZSRleHAgPC0gcm91bmQobWRjYV9leGFtcGxlJGV4cCwgMykKa25pdHI6OmthYmxlKG1kY2FfZXhhbXBsZSwgcm93Lm5hbWVzID0gVFJVRSwgY2FwdGlvbiA9ICJMdWFyYW4gTURDQSB1bnR1ayAqYW5hay1hbmFrKiBzZWJhZ2FpIGtvbG9rYXQga2hhcy4iKQpgYGAKCgpGcmVrdWVuc2kga2VtdW5jdWxhbiByaWlsICphbmFrLWFuYWsqIGRhbGFtIGxpbmdrdXAgZW1wYXQga2F0YSBkaSBraXJpIGRhbiBrYW5hbiAqa2VjZXJpYWFuKiBkaSBkYWxhbSBrb3JwdXMgKGxpaGF0IGJhZ2lhbiBEQVRBIERBTiBNRVRPRE9MT0dJKSBhZGFsYWggYHIgcHVsbChtZGNhX2V4YW1wbGVbbWRjYV9leGFtcGxlJHNpbm9uaW09PSJrZWNlcmlhYW4iLCAibiJdKWAga2FsaS4gU2VsYWluIGZyZWt1ZW5zaSByaWlsLCBVamkgQmlub21pYWwganVnYSBtZW1lcmx1a2FuIGZyZWt1ZW5zaSB5YW5nIGRpaGFyYXBrYW4gbXVuY3VsIGF0YXMgZGFzYXIgZGlzdHJpYnVzaSBhY2FrIHVudHVrICphbmFrLWFuYWsqIGRlbmdhbiAqa2VjZXJpYWFuKjsgZnJla3VlbnNpIGluaSBkaXNlYnV0ICoqZnJla3VlbnNpIGhhcmFwYW4qKiAoKmV4cGVjdGVkIGZyZXF1ZW5jeSopIFtAcmFqZWdfcGVtYWhhbWFuXzIwMTksIDIxLTIyXS4gVW50dWsga2FzdXMga2FsaSBpbmksIGZyZWt1ZW5zaSBoYXJhcGFuIGRpaGl0dW5nIGRlbmdhbiBjYXJhIChpKSBtZW5nYWxpa2FuIGZyZWt1ZW5zaSAqa2VjZXJpYWFuKiBkaSBkYWxhbSBkYXRhICh5YWl0dSBgciBwdWxsKG1kY2FfZXhhbXBsZV9sb25nW21kY2FfZXhhbXBsZV9sb25nJHN5bm9ueW1zPT0ia2VjZXJpYWFuIiwgImN4bl9zdW0iXSlgKSBkZW5nYW4gdG90YWwgZnJla3VlbnNpIGtlbXVuY3VsYW4gKmFuYWstYW5hayogZGVuZ2FuIHNlbXVhIHNpbm9uaW0gKHlhaXR1IGByIHB1bGwobWRjYV9leGFtcGxlX2xvbmdbbWRjYV9leGFtcGxlX2xvbmckc3lub255bXM9PSJrZWNlcmlhYW4iLCAiY29sbG9jX3N1bSJdKWApLCBrZW11ZGlhbiAoaWkpIG1lbWJhZ2kgaGFzaWwgcGVya2FsaWFuIHRlcnNlYnV0IGRlbmdhbiB0b3RhbCBrZXNlbHVydWhhbiBkYXRhIGtvbG9rYXNpIGVtcGF0IGthdGEgZGkga2lyaSBkYW4ga2FuYW4ga2VzZXB1bHVoIHNpbm9uaW0gKHlhaXR1LCBgciB1bmlxdWUocHVsbChtZGNhX2V4YW1wbGVfbG9uZywgZGJhc2VfdG9rZW4pKWApLiBKYWRpLCBmcmVrdWVuc2kgaGFyYXBhbiB1bnR1ayBrZW11bmN1bGFuICphbmFrLWFuYWsqIGRlbmdhbiAqa2VjZXJpYWFuKiBhZGFsYWggKGByIHB1bGwobWRjYV9leGFtcGxlX2xvbmdbbWRjYV9leGFtcGxlX2xvbmckc3lub255bXM9PSJrZWNlcmlhYW4iLCAiY3huX3N1bSJdKWAgKiBgciBwdWxsKG1kY2FfZXhhbXBsZV9sb25nW21kY2FfZXhhbXBsZV9sb25nJHN5bm9ueW1zPT0ia2VjZXJpYWFuIiwgImNvbGxvY19zdW0iXSlgKS9gciB1bmlxdWUocHVsbChtZGNhX2V4YW1wbGVfbG9uZywgZGJhc2VfdG9rZW4pKWAgPSBgciBwYXN0ZShyb3VuZChwdWxsKGZpbHRlcihtZGNhX2V4YW1wbGVfbG9uZywgc3lub255bXMgPT0gImtlY2VyaWFhbiIpLCBleHApLCAzKSlgLgoKU2VsaXNpaCBhbnRhcmEgZnJla3VlbnNpIHJpaWwgZGFuIGhhcmFwYW4gZGlndW5ha2FuIHVudHVrIG1lbmVudHVrYW4gYXJhaCBhc29zaWFzaSBhbnRhcmEgc3VhdHUga29sb2thdCBkZW5nYW4gc2lub25pbSB5YW5nIGRpbWFrc3VkLiBBcGFiaWxhIHNlbGlzaWhueWEgcG9zaXRpZiAoeWFpdHUgZnJla3VlbnNpIHJpaWwgbGViaWggdGluZ2dpIGRhcmkgZnJla3VlbnNpIGhhcmFwYW4pLCBtYWthIGtvbG9rYXQgdGVyc2VidXQgYmVyYXNvc2lhc2kgcG9zaXRpZiBkZW5nYW4sIGF0YXUgYmVyc2lmYXQga2hhcy9kaXN0aW5ndGlmIHVudHVrLCBzaW5vbmltIHlhbmcgZGlrYWppOyBzZWJhbGlrbnlhLCBzZWxpc2loIG5lZ2F0aWYgbWVuZ2luZGlrYXNpa2FuIGRpc29zaWFzaSBhbnRhcmEga29sb2thdCBkYW4gc2lub25pbSBbQGhlcmJzdF9jb2xsb3N0cnVjdGlvbmFsXzIwMTQsIDIyNzsgQGhvZmZtYW5uX2NvbGxvc3RydWN0aW9uYWxfMjAxM10uIFBlcmJhbmRpbmdhbiBmcmVrdWVuc2kgcmlpbCBkYW4gaGFyYXBhbiB1bnR1ayAqYW5hay1hbmFrKiBkYW4gKmtlY2VyaWFhbiogKGJhcmlzIGtlbGltYSBwYWRhIFRhYmVsIDEpIG1lbnVuanVra2FuIGFzb3NpYXNpIHBvc2l0aWYsIGthcmVuYSBmcmVrdWVuc2kgcmlpbG55YSAoa29sb20gKipuKiopIGxlYmloIHRpbmdnaSBkYXJpIGZyZWt1ZW5zaSBoYXJhcGFubnlhIChrb2xvbSAqKmV4cCoqKTpgciBwdWxsKGZpbHRlcihtZGNhX2V4YW1wbGVfbG9uZywgc3lub255bXMgPT0gImtlY2VyaWFhbiIpLCBuKWAgPiBgciByb3VuZChwdWxsKGZpbHRlcihtZGNhX2V4YW1wbGVfbG9uZywgc3lub255bXMgPT0gImtlY2VyaWFhbiIpLCBleHApLCAzKWAuIEFzb3NpYXNpIG5lZ2F0aWYsIGRpIGFudGFyYW55YSwgZGl0dW5qdWtrYW4gb2xlaCAqYW5hay1hbmFrKiBkYW4gKmtlYmFoYWdpYWFuKiAoYmFyaXMga2VlbXBhdCBwYWRhIFRhYmVsIDEpLgoKU2VsYWluIGZyZWt1ZW5zaSByaWlsIGRhbiBoYXJhcGFuLCBVamkgQmlub21pYWwganVnYSBtZW1lcmx1a2FuIHByb2JhYmlsaXRhcyAqYSBwcmlvcmkqIChwcm9iYWJpbGl0YXMgcHJhYW5nZ2FwYW4pLCB5YW5nIG1lbnVuanVra2FuIGJhaHdhIGFwYWJpbGEgKmFuYWstYW5hayogbXVuY3VsIHNlYmFnYWkga29sb2thdCBkYWxhbSByZW50YW5nIGVtcGF0IGthdGEgZGkga2lyaSBkYW4ga2FuYW4gc2lub25pbSBLRUJBSEFHSUFBTiwgbWFrYSAqYW5hay1hbmFrKiBha2FuIG11bmN1bCBkZW5nYW4gKmtlY2VyaWFhbiogW0BoaWxwZXJ0X2Rpc3RpbmN0aXZlXzIwMDYsIDI0N10uIFByb2JhYmlsaXRhcyBpbmkgZGloaXR1bmcgZGVuZ2FuIGNhcmEgbWVtYmFnaSAoaSkgZnJla3VlbnNpIGhhcmFwYW4gKmFuYWstYW5hayogZGVuZ2FuICprZWNlcmlhYW4qICh5YWl0dSBgciBwYXN0ZShyb3VuZChwdWxsKGZpbHRlcihtZGNhX2V4YW1wbGVfbG9uZywgc3lub255bXMgPT0gImtlY2VyaWFhbiIpLCBleHApLCAzKSlgKSBkZW5nYW4gKGlpKSB0b3RhbCBmcmVrdWVuc2kga2VtdW5jdWxhbiAqYW5hay1hbmFrKiBkZW5nYW4gc2VtdWEgc2lub25pbSAoeWFpdHUgYHIgcHVsbChtZGNhX2V4YW1wbGVfbG9uZ1ttZGNhX2V4YW1wbGVfbG9uZyRzeW5vbnltcz09ImtlY2VyaWFhbiIsICJjb2xsb2Nfc3VtIl0pYCk7IGphZGksIGByIHBhc3RlKHJvdW5kKHB1bGwoZmlsdGVyKG1kY2FfZXhhbXBsZV9sb25nLCBzeW5vbnltcyA9PSAia2VjZXJpYWFuIiksIGV4cCksIDMpKWAvYHIgcHVsbChtZGNhX2V4YW1wbGVfbG9uZ1ttZGNhX2V4YW1wbGVfbG9uZyRzeW5vbnltcz09ImtlY2VyaWFhbiIsICJjb2xsb2Nfc3VtIl0pYCA9IGByIHJvdW5kKHB1bGwobWRjYV9leGFtcGxlX2xvbmdbbWRjYV9leGFtcGxlX2xvbmckc3lub255bXM9PSJrZWNlcmlhYW4iLCAiZXhwX3Byb2IiXSksIDQpYC4KClNlbGFuanV0bnlhLCBVamkgQmlub21pYWwgYWthbiBtZW5lbnR1a2FuIHNpZ25pZmlrYW5zaSBzdGF0aXN0aWsgZGFyaSBhc29zaWFzaSBhbnRhcmEga29sb2thdCBkYW4gc2lub25pbTogYXBha2FoIHNlY2FyYSBzaWduaWZpa2Fuc2kgc3RhdGlzdGlrIHN1YXR1IGtvbG9rYXQgbXVuY3VsIGxlYmloIHNlcmluZyBhdGF1IGphcmFuZyBkYXJpIHlhbmcgZGloYXJhcGthbiBhdGFzIGRhc2FyIHN1YXR1IGtlYmV0dWxhbiAoZGlzdHJpYnVzaSBhY2FrKSBbYmRrLiBAaGlscGVydF9kaXN0aW5jdGl2ZV8yMDA2LCAyNDddLiBOdWtpbGFuIGtvZGUgcGVtcm9ncmFtYW4gUiBiZXJpa3V0IGFkYWxhaCBjYXJhIG1lbmdoaXR1bmcgKnAtdmFsdWUqIGRhcmkgVWppIEJpbm9taWFsIGFwYWJpbGEgZnJla3VlbnNpIHJpaWwgc3VhdHUga29sb2thc2kgbGViaWggdGluZ2dpIGRhcmkgZnJla3VlbnNpIGhhcmFwYW4uIAoKYGBge3IgZGJpbm9tLXBvc2l0aWZ9CmJpbm9tLnRlc3QoeCA9IDkxLCAjIGZyZWt1ZW5zaSBrZW11bmN1bGFuIHJpaWwgImFuYWstYW5hayIgZGVuZ2FuICJrZWNlcmlhYW4iCiAgICAgICAgICAgbiA9IDE0NywgIyB0b3RhbCBmcmVrdWVuc2kgImFuYWstYW5hayIgc2ViYWdhaSBrb2xva2F0IHBhZGEgZGF0YQogICAgICAgICAgIHAgPSAwLjEzMDA4NjgsICMgcHJvYmFiaWxpdGFzICphIHByaW9yaSoKICAgICAgICAgICBhbHRlcm5hdGl2ZSA9ICJncmVhdGVyIiAjIGthcmVuYSBmcmVrLiByaWlsID4gZnJlay4gaGFyYXBhbiIKICAgICAgICAgICApJHAudmFsdWUgIyBrZWx1YXJrYW4gaGFueWEgcC12YWx1ZSBkYXJpIFVqaSBCaW5vbWlhbC1ueWEuCgojIGtvZGUgYWx0ZXJuYXRpZiB5YW5nIG1lbmdoYXNpbGthbiBwLXZhbHVlIHNhbWEgYWRhbGFoIHNlYmFnYWkgYmVyaWt1dDoKc3VtKGRiaW5vbSg5MToxNDcsIDE0NywgMC4xMzAwODY4KSkKYGBgCgoKTmlsYWkgKnAtdmFsdWUqIG1lbnVuanVra2FuIHByb2JhYmlsaXRhcyBmcmVrdWVuc2kgcmlpbCAqYW5hay1hbmFrKiBkZW5nYW4gKmtlY2VyaWFhbiogeWFuZyBkaWFtYXRpLCBtZW5naW5nYXQgaGlwb3Rlc2lzIGtvc29uZyAoKm51bGwgaHlwb3RoZXNpcyopIFtsaWhhdCBAcmFqZWdfcGVtYWhhbWFuXzIwMTksIDE5LTIwXSBtZW55YXRha2FuIGJhaHdhIHNlaGFydXNueWEgKmtlY2VyaWFhbiogZGFuIHNpbm9uaW0geWFuZyBsYWluIG1lbWlsaWtpIGRpc3RyaWJ1c2kgeWFuZyBzZXRhcmEgdW50dWsgYmVya29sb2thc2kgZGVuZ2FuICphbmFrLWFuYWsqIChkYXBhdCBkaWxpaGF0IHBhZGEgVGFiZWwgMSBhZGFueWEga2V0aW1wYW5nYW4gZGlzdHJpYnVzaSB1bnR1ayAqYW5hay1hbmFrKiB0ZXJoYWRhcCBtYXNpbmctbWFzaW5nIHNpbm9uaW0pLiBTZW1ha2luIGtlY2lsICpwLXZhbHVlKiAoYmlhc2FueWEgZGkgYmF3YWggMC4wNSksIHNlbWFraW4ga3VhdCBhc29zaWFzaS9rZWtoYXNhbiBhdGF1IGRpc29zaWFzaS9rZXRpZGFraGFzYW4gYW50YXJhIHN1YXR1IGtvbG9rYXQgZGVuZ2FuIHNpbm9uaW0geWFuZyBkaWthamkuIFByb2JhYmlsaXRhcyB5YW5nIGRpaGFzaWxrYW4gZGFyaSBVamkgQmlub21pYWwgZGkgYXRhcyBzYW5nYXRsYWgga2VjaWwgKGxpaGF0IGtvbG9tICoqcF9iaW5pbWlhbCoqIHBhZGEgVGFiZWwgMSleW1JlcHJlc2VudGFzaSBiZXJiZWRhIGRhcmkgYHIgc3VtKGRiaW5vbSg5MToxNDcsIDE0NywgMC4xMzAwODY4KSlgIGFkYWxhaCBgciBmb3JtYXQoc3VtKGRiaW5vbSg5MToxNDcsIDE0NywgMC4xMzAwODY4KSksIHNjaWVudGlmaWMgPSBGQUxTRSlgXTsgbWVuZ2luZ2F0IGZyZWt1ZW5zaSByaWlsICphbmFrLWFuYWsqIGRlbmdhbiAqa2VjZXJpYWFuKiBsZWJpaCB0aW5nZ2kgZGFyaSB5YW5nIGRpaGFyYXBrYW4sIGRhbiBrZWNpbG55YSBwcm9iYWJpbGl0YXMgVWppIEJpbm9taWFsIG1lbmdpbmRpa2FzaWthbiBhc29zaWFzaSBwb3NpdGlmIGRhbiBraGFzIHlhbmcgc2lnbmlmaWthbiAodGlkYWsgYmlzYSBkaWFuZ2dhcCBzZWJhZ2FpIHN1YXR1IGtlYmV0dWxhbikgYW50YXJhICphbmFrLWFuYWsqIGRhbiAqa2VjZXJpYWFuKi4gCgpCZXJpa3V0IGFkYWxhaCBudWtpbGFuIGtvZGUgUiB1bnR1ayBVamkgQmlub21pYWwgYXBhYmlsYSBmcmVrdWVuc2kgcmlpbCBsZWJpaCBrZWNpbCBkYXJpIGZyZWt1ZW5zaSBoYXJhcGFuLCBzZXBlcnRpIGhhbG55YSBhbnRhcmEgKmFuYWstYW5hayogZGFuICprZWJhaGFnaWFhbiouCgpgYGB7ciBkYmlub20tbmVnYXRpZn0KYmlub20udGVzdCh4ID0gMTYsICMgZnJla3VlbnNpIGtlbXVuY3VsYW4gcmlpbCAiYW5hay1hbmFrIiBkZW5nYW4gImtlYmFoYWdpYWFuIgogICAgICAgICAgIG4gPSAxNDcsICMgdG90YWwgZnJla3VlbnNpICJhbmFrLWFuYWsiIHNlYmFnYWkga29sb2thdCBwYWRhIGRhdGEKICAgICAgICAgICBwID0gMC4zODQ3MjI2LCAjIHByb2JhYmlsaXRhcyAqYSBwcmlvcmkqCiAgICAgICAgICAgYWx0ZXJuYXRpdmUgPSAibGVzcyIgIyBrYXJlbmEgZnJlay4gcmlpbCA8IGZyZWsuIGhhcmFwYW4KICAgICAgICAgICApJHAudmFsdWUgIyBrZWx1YXJrYW4gaGFueWEgcC12YWx1ZSBkYXJpIFVqaSBCaW5vbWlhbC1ueWEuCgojIGtvZGUgYWx0ZXJuYXRpZiB5YW5nIG1lbmdoYXNpbGthbiBwLXZhbHVlIHNhbWEgYWRhbGFoIHNlYmFnYWkgYmVyaWt1dDoKc3VtKGRiaW5vbSgwOjE2LCAxNDcsIDAuMzg0NzIyNikpCmBgYAoKSGFzaWwgZGkgYXRhcyBtZW51bmp1a2thbiBiYWh3YSBidWthbmxhaCBzdWF0dSBrZWJldHVsYW4gYmFod2EgKmFuYWstYW5hayogbWVtaWxpa2kgZGlzb3NpYXNpIGRlbmdhbiAqa2ViYWhhZ2lhYW4qLiBEZW5nYW4ga2F0YSBsYWluLCAqYW5hay1hbmFrKiBtdW5jdWwgc2VjYXJhIHNpZ25pZmlrYW4gbGViaWggamFyYW5nIGRhcmkgeWFuZyBkaWhhcmFwa2FuIHNlYmFnYWkga29sb2thdCBkYXJpICprZWJhaGFnaWFhbiouCgpVbnR1ayBrZW11ZGFoYW4gaW50dWl0aWYgZGFsYW0gbWVtYWhhbWkgKnAtdmFsdWUqIHNlYmFnYWkgZGVyYWphdCBrZWtoYXNhbiBzdWF0dSBrb2xva2F0LCBDb2xsQW5hIG1lbmdndW5ha2FuIG5pbGFpIGxvZ2FyaXRtYTEwIGRhcmkgKnAtdmFsdWUqIHlhbmcgZGloYXNpbGthbiwgZGFuIG1lbnllYnV0IGd1YmFoYW4gbmlsYWkgdGVzZWJ1dCBkZW5nYW4gZGF5YSBhc29zaWFzaSAoKmFzc29jaWF0aW9uIHN0cmVuZ3RoKikva2VraGFzYW4gKCpkaXN0aW5jdGl2ZW5lc3MqKSAocGVyaGF0aWthbiBrb2xvbSAqKmFzc29jc3RyKiogcGFkYSBUYWJlbCAxKSBbQHN0ZWZhbm93aXRzY2hfY292YXJ5aW5nXzIwMDUsIDc7IEBoaWxwZXJ0X2Rpc3RpbmN0aXZlXzIwMDYsIDI0N10uIE51a2lsYW4ga29kZSBSIGJlcmlrdXQgbWVuY29udG9oa2FuIHBlbmd1YmFoYW4gKnAtdmFsdWUqIGRhbGFtIGJlbnR1ayBuaWxhaSBsb2dhcml0bWExMC4KCmBgYHtyIGxvZy10cmFuc2Zvcm1hdGlvbi1leGFtcGxlfQojIHVudHVrIHAtdmFsdWUgamlrYSBmcmVrLnJpaWwgPiBmcmVrLmhhcmFwYW4gKGRhdGEgImFuYWstYW5hayIgZGFuICJrZWNlcmlhYW4iKQotbG9nMTAoeCA9IDIuMDAzMTI5ZS00MykKCiMgdW50dWsgcC12YWx1ZSBqaWthIGZyZWsucmlpbCA8IGZyZWsuaGFyYXBhbiAoZGF0YSAiYW5hay1hbmFrIiBkYW4gImtlYmFoYWdpYWFuIikKbG9nMTAoeCA9IDYuNDc2NTUyZS0xNCkKYGBgCgpEYXBhdCBkaXBlcmhhdGlrYW4gYmFod2Ega2VraGFzYW4gYWthbiBkaXR1bmp1a2thbiBvbGVoIG5pbGFpIGRheWEgYXNvc2lhc2kgeWFuZyBwb3NpdGlmIChgciByb3VuZCgtbG9nMTAoeCA9IDIuMDAzMTI5ZS00MyksIDMpYCksIHNlZGFuZ2thbiBrZXRpZGFra2hhc2FuIGFrYW4gZGl0dW5qdWtrYW4gb2xlaCBuaWxhaSBkYXlhIGFzb3NpYXNpIHlhbmcgbmVnYXRpZiAoYHIgcm91bmQobG9nMTAoeCA9IDYuNDc2NTUyZS0xNCksIDMpYCkuIFNlbWFraW4gdGluZ2dpIG5pbGFpIGRheWEgYXNvc2lhc2ksIHNlbWFraW4ga3VhdCBhc29zaWFzaSBhbnRhcmEgc3VhdHUga29sb2thdCBkYW4gc2lub25pbS4gU2ViYWxpa255YSwgc2VtYWtpbiByZW5kYWhueWEgbmlsYWkgZGF5YSBhc29zaWFzaSBtZW5naW5kaWthc2lrYW4gbGVtYWhueWEgZGF5YSBhc29zaWFzaSBhbnRhcmEgc3VhdHUga29sb2thdCBkYW4gc2lub25pbS4KClBlbmdoaXR1bmdhbiBVamkgQmlub21pYWwgdW50dWsgTURDQSBkaSBhdGFzIGRpbGFrdWthbiB1bnR1ayBzZW11YSB0aXBlIGtvbG9rYXQgeWFuZyBtdW5jdWwgZGVuZ2FuIHNpbm9uaW0geWFuZyBkaWthamk7IGRhbGFtIGhhbCBpbmksIHRlcmRhcGF0IGByIG1kY2FfY29sbG9jICU+JSBwdWxsKGNvbGxvY2F0ZXMpICU+JSB1bmlxdWUoKSAlPiUgbGVuZ3RoKClgIHRpcGUga29sb2thdCBwYWRhIGJhc2lzIGRhdGEuIFBlbmdoaXR1bmdhbiBtYW51YWwgc2F0dSBwZXIgc2F0dSBha2FuIHRpZGFrIGVmZWt0aWYuIFVudHVrIGl0dSwgZGlyYW5jYW5nIGZ1bmdzaSBwZW1yb2dyYW1hbiBSIHlhbmcgZGFwYXQgc2VjYXJhIG90b21hdGlzIG1lbGFrdWthbiBNRENBIHVudHVrIHNlbHVydWgga29sb2thdCB5YW5nIGFkYS4gRnVuZ3NpIGluaSBkaXNlYnV0IGBtZGNhKClgIGRhbiB0ZXJzZWRpYSBzZWNhcmEgdGVyYnVrYSBiZXJzYW1hIGRlbmdhbiBrZXNlbHVydWhhbiBkYXRhIGRhbGFtIG1vZHVsIFIgW0ByY29yZTIwMTldIGBoYXBweXJgIFtAaGFwcHlyMjAxOV0uIFNlbGFuanV0bnlhLCBtYXNpbmctbWFzaW5nIGtvbG9rYXQgZGFwYXQgZGlyYW5na2luZyBiZXJkYXNhcmthbiBiZXNhcmFuIGRheWEgYXNvc2lhc2kva2VraGFzYW5ueWEgdGVyaGFkYXAgbWFzaW5nLW1hc2luZyBzaW5vbmltLiBCYWdpYW4gSEFTSUwgREFOIFBFTUJBSEFTQU4gYWthbiBtZW5hbXBpbGthbiBoYXNpbCBNRENBIHVudHVrIHNpbm9uaW0geWFuZyBtZXJ1cGFrYW4gYmVudHVrIHR1cnVuYW4gZGVuZ2FuIG5vbWluYWxpc2FzaSAqa2UtIC1hbiogKGxpaGF0IGNhdGF0YW4gYWtoaXIgMSkuCgoKIyBEQVRBIERBTiBNRVRPRE9MT0dJCgpCZXJpa3V0IGFkYWxhaCB1a3VyYW4gS29ycHVzIExlaXB6aWcgeWFuZyBkaWd1bmFrYW4gZGFsYW0gcGVuZWxpdGlhbiBpbmkuCgoKCmBgYHtyIGxlaXB6aWctc2l6ZS1wcmludCwgbWVzc2FnZSA9IEZBTFNFLCB3YXJuaW5nID0gRkFMU0UsIGVjaG8gPSBUUlVFfQpjb3JwdXNzaXplIDwtIHJlYWRyOjpyZWFkX3RzdigiZGF0YS9sZWlwemlnX3NpemUudHN2IikKY29ycHVzc2l6ZSAlPiUgCiAgcmVuYW1lKGBOYW1hIGJlcmthcyBrb3JwdXNgPUNvcnB1cywKICAgICAgICAgYFVrdXJhbiAoYmVyZGFzYXJrYW4ga2F0YSlgPVNpemVfcHJpbnQpICU+JQogIG11dGF0ZShgVWt1cmFuIChiZXJkYXNhcmthbiBrYXRhKWA9Zm9ybWF0KGBVa3VyYW4gKGJlcmRhc2Fya2FuIGthdGEpYCwgYmlnLm1hcmsgPSAiLCIpKSAlPiUgCiAga25pdHI6OmthYmxlKGNhcHRpb24gPSAiQmVya2FzIEtvcnB1cyBMZWlwemlnIEJhaGFzYSBJbmRvbmVzaWEgeWFuZyBkaWd1bmFrYW4gcGFkYSBtYWthbGFoIGluaS4iLCByb3cubmFtZXMgPSBUUlVFKQpgYGAKClVrdXJhbiBrZXNlcHVsdWggYmVya2FzIEtvcnB1cyBMZWlwemlnIHRlcnNlYnV0IGJlcmp1bWxhaCBgciBwcmV0dHlOdW0oc3VtKGNvcnB1c3NpemUkU2l6ZV9wcmludCksIGJpZy5tYXJrID0gIiwiKWAganV0YSBrYXRhLgoKQmVyaWt1dCBpbmkgYWRhbGFoIGtvZGUgdW50dWsgZGF0YSBmcmVrdWVuc2kgbGVrc2lrb24gZGFsYW0gS29ycHVzIExlaXB6aWcgQmFoYXNhIEluZG9uZXNpYS4KCgpgYGB7ciBsZXhpY29uLXNpemUtcHJpbnQsIGVjaG8gPSBUUlVFLCBtZXNzYWdlID0gRkFMU0UsIHdhcm5pbmcgPSBGQUxTRX0KbGV4aWNvbmZyZXEgPC0gcmVhZHI6OnJlYWRfdHN2KCJkYXRhL2xleGljb25fZnJlcS50c3YiKQpsZXhpY29uZnJlcSAlPiUKICBtdXRhdGUoc2VhcmNoLnJlZ2V4ID0gc3RyX3JlcGxhY2VfYWxsKHNlYXJjaC5yZWdleCwgIlxcXFxiIiwgImBcXFxcYmAiKSwKICAgICAgICAgc2VhcmNoLnJlZ2V4ID0gc3RyX3JlcGxhY2VfYWxsKHNlYXJjaC5yZWdleCwgIl4oYFxcXFxiYCkiLCAiXFwxKD9pKSIpLAogICAgICAgICBmb3JtcyA9IHN0cl9yZXBsYWNlX2FsbChmb3JtcywgIm5vbWluYWxpc2VkIiwgIm5vbWluYWxpc2FzaSIpLAogICAgICAgICBmb3JtcyA9IHN0cl9yZXBsYWNlX2FsbChmb3JtcywgInJvb3QiLCAiYWthciIpLAogICAgICAgICBtYXRjaCA9IHN0cl9jKCIqIiwgbWF0Y2gsICIqIiksCiAgICAgICAgIG4gPSBwcmV0dHlOdW0obiwgYmlnLm1hcmsgPSAiLCIpKSAlPiUKICByZW5hbWUoYFBvbGEgcGVuY2FyaWFuYD1zZWFyY2gucmVnZXgsIExla3Npa29uPW1hdGNoLCBgQmVudHVrIG1vcmZvbG9naXNgPWZvcm1zLCBOPW4pICU+JQogIGtuaXRyOjprYWJsZShjYXB0aW9uPSJGcmVrdWVuc2kga2VtdW5jdWxhbiBzaW5vbmltIDxzcGFuIHN0eWxlPSdmb250LXZhcmlhbnQ6c21hbGwtY2FwczsnPmtlYmFoYWdpYWFuPC9zcGFuPiBkaSBLb3JwdXMgTGVpcHppZyBCYWhhc2EgSW5kb25lc2lhLiIsIHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKCmBgYHtyIGZ1bGwtc2VudGVuY2UtZGF0YSwgbWVzc2FnZSA9IEZBTFNFLCB3YXJuaW5nID0gRkFMU0V9CmZ1bGxfc2VudF9yb290IDwtIHJlYWRyOjpyZWFkX3RzdigiZGF0YS9mdWxsX3NlbnRlbmNlX3Jvb3QudHN2IikKZnVsbF9zZW50X25vbWluYWxpc2VkIDwtIHJlYWRyOjpyZWFkX3RzdigiZGF0YS9mdWxsX3NlbnRlbmNlX25vbWluYWxpc2VkLnRzdiIpCmBgYAoKCmBgYHtyIGNvbGxvY2F0ZXMtZGF0YWJhc2UsIG1lc3NhZ2UgPSBGQUxTRSwgd2FybmluZyA9IEZBTFNFfQpjb2xsZGJfbm9taW5hbGlzZWQgPC0gcmVhZHI6OnJlYWRfdHN2KCJkYXRhL2NvbGxvY19kYXRhYmFzZV9ub21pbmFsaXNlZC50c3YiKQpjb2xsZGJfcm9vdCA8LSByZWFkcjo6cmVhZF90c3YoImRhdGEvY29sbG9jX2RhdGFiYXNlX3Jvb3Rfbm9taW5hbC50c3YiKQpjb2xsZGJfc25pcHBldCA8LSByZWFkcjo6cmVhZF90c3YoImRhdGEvY29sbGRiX3NuaXBwZXQudHN2IikKIyBrbml0cjo6a2FibGUoZHBseXI6OnNhbXBsZV9uKGNvbGxkYl9zbmlwcGV0LCA1KSwgcm93Lm5hbWVzID0gVFJVRSwgY2FwdGlvbiA9ICJOdWtpbGFuIGJhc2lzIGRhdGEga29sb2thdCIpCnNhbXBsZV9uKGNvbGxkYl9zbmlwcGV0LCA1KQpgYGAKCgojIEhBU0lMIERBTiBQRU1CQUhBU0FOCgojIyBMdWFyYW4gTURDQSB1bnR1ayBzZW11YSBrb2xva2F0IGRhbiBzaW5vbmltIChub21pbmFsaXNhc2kgZGFuIGFrYXIga2F0YSkKCmBgYHtyIGFsbC1yZXN1bHRzLW1kY2F9Cm1kY2FfY29sbG9jCmBgYAoKCgojIyBLb2xva2F0IGtoYXMgdW50dWsgKmtlYmFoYWdpYWFuKgoKVGFiZWwgW1xAcmVmKHRhYjprb2xva2F0LWtlYmFoYWdpYWFuKV0oI2tvbG9rYXQta2ViYWhhZ2lhYW4pIGJlcmlrdXQgbWVuYW1waWxrYW4gMjAga29sb2thdCBraGFzIHRlcmF0YXMgeWFuZyBrdWF0IGJlcmFzb3NpYXNpIGRlbmdhbiAqa2ViYWhhZ2lhYW4qLgoKCmBgYHtyIGtvbG9rYXQta2ViYWhhZ2lhYW4sIGVjaG8gPSBUUlVFfQpoYXBweXI6Om1kY2FfYXR0cihtZGNhX2NvbGxvY19jb25jaXNlLCBjeG5fdHlwZSA9ICJea2ViYWhhZ2lhYW4kIikgJT4lIAogIGRwbHlyOjp0b3BfbihuID0gMjAsIHd0ID0gYXNzb2NzdHIpICU+JSAKICBkcGx5cjo6c2VsZWN0KC1zeW5vbnltcykgJT4lCiAgZHBseXI6Om11dGF0ZShleHAgPSByb3VuZChleHAsIDMpLCAKICAgICAgICAgICAgICAgIGNvbGxvY2F0ZXMgPSBwYXN0ZSgiKiIsIGNvbGxvY2F0ZXMsICIqIiwgc2VwID0gIiIpKSAlPiUKICBkcGx5cjo6cmVuYW1lKGtvbG9rYXQgPSBjb2xsb2NhdGVzLAogICAgICAgICAgICAgICAgc2lnbmlmID0gZGVjKSAlPiUgCiAga25pdHI6OmthYmxlKGNhcHRpb249IkRhZnRhciAyMCBrb2xva2F0IGtoYXMgdGVyYXRhcyB1bnR1ayAqa2ViYWhhZ2lhYW4qIGRpIEtvcnB1cyBMZWlwemlnIEJhaGFzYSBJbmRvbmVzaWEuIiwgcm93Lm5hbWVzID0gVFJVRSkKYGBgCgoKCgoKYGBge3IgbmdyYW1zLWtlYmFoYWdpYWFufQprZXNlamFodGVyYWFuIDwtIGNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5rZXNlamFodGVyYWFuJCIsICJea2ViYWhhZ2lhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCgpkdW5pYSA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJeZHVuaWEkIiwgIl5rZWJhaGFnaWFhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKCnRhbmdnYSA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJedGFuZ2dhJCIsICJea2ViYWhhZ2lhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCgp1bWF0IDwtIGNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl51bWF0JCIsICJea2ViYWhhZ2lhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCgptYW51c2lhIDwtIGNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5tYW51c2lhJCIsICJea2ViYWhhZ2lhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCgpvcmFuZyA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJeb3JhbmckIiwgIl5rZWJhaGFnaWFhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKCnNlamF0aSA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJec2VqYXRpJCIsICJea2ViYWhhZ2lhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCgpha2hpcmF0IDwtIGNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5ha2hpcmF0JCIsICJea2ViYWhhZ2lhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCgphYmFkaSA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJeYWJhZGkkIiwgIl5rZWJhaGFnaWFhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKCmhha2lraSA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJeaGFraWtpJCIsICJea2ViYWhhZ2lhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCmBgYAoKYGBge3Igbi1ncmFtLWFiYWRpfQphYmFkaSRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCgpgYGB7ciBuLWdyYW0tYWtoaXJhdH0KYWtoaXJhdCRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIG4tZ3JhbS1oYWtpa2l9Cmhha2lraSRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIG4tZ3JhbS1zZWphdGl9CnNlamF0aSRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIG4tZ3JhbS10YW5nZ2F9CnRhbmdnYSRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIG4tZ3JhbS1kdW5pYX0KZHVuaWEkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgpgYGB7ciBuLWdyYW0tdW1hdH0KdW1hdCRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIG4tZ3JhbS1tYW51c2lhfQptYW51c2lhJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKYGBge3Igbi1ncmFtLW9yYW5nfQpvcmFuZyRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCgpCZWxvdyBpcyB0aGUgbi1ncmFtcyBmb3IgdGhlIG1ldGFwaG9yaWNhbCBjb2xsb2NhdGVzCgpgYGB7ciBuLWdyYW0tbWVuY2FwYWl9CmNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5tZW5jYXBhaSQiLCAiXmtlYmFoYWdpYWFuJCIsIENPTExPQ0FURVMsIFdPUkRTKSRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIG4tZ3JhbS1tZW5lbXVrYW59CmNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5tZW5lbXVrYW4kIiwgIl5rZWJhaGFnaWFhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgpgYGB7ciBuLWdyYW0tbWVudWp1fQpjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJebWVudWp1JCIsICJea2ViYWhhZ2lhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKYGBge3Igbi1ncmFtLW1lcmFpaH0KY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXm1lcmFpaCQiLCAiXmtlYmFoYWdpYWFuJCIsIENPTExPQ0FURVMsIFdPUkRTKSRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCgoKCgojIyBLb2xva2F0IGtoYXMgdW50dWsgKmtlc2VuYW5nYW4qCgpUYWJlbCBbXEByZWYodGFiOmtvbG9rYXQta2VzZW5hbmdhbildKCNrb2xva2F0LWtlc2VuYW5nYW4pIGJlcmlrdXQgbWVuYW1waWxrYW4gMjAga29sb2thdCBraGFzIHRlcmF0YXMgeWFuZyBrdWF0IGJlcmFzb3NpYXNpIGRlbmdhbiAqa2VzZW5hbmdhbiouCgoKYGBge3Iga29sb2thdC1rZXNlbmFuZ2FuLCBlY2hvID0gVFJVRX0KaGFwcHlyOjptZGNhX2F0dHIobWRjYV9jb2xsb2NfY29uY2lzZSwgY3huX3R5cGUgPSAiXmtlc2VuYW5nYW4kIikgJT4lIAogIGRwbHlyOjp0b3BfbihuID0gMjAsIHd0ID0gYXNzb2NzdHIpICU+JSAKICBkcGx5cjo6c2VsZWN0KC1zeW5vbnltcykgJT4lCiAgZHBseXI6Om11dGF0ZShleHAgPSByb3VuZChleHAsIDMpLCAKICAgICAgICAgICAgICAgIGNvbGxvY2F0ZXMgPSBwYXN0ZSgiKiIsIGNvbGxvY2F0ZXMsICIqIiwgc2VwID0gIiIpKSAlPiUKICBkcGx5cjo6cmVuYW1lKGtvbG9rYXQgPSBjb2xsb2NhdGVzLAogICAgICAgICAgICAgICAgc2lnbmlmID0gZGVjKSAlPiUgCiAga25pdHI6OmthYmxlKGNhcHRpb249IkRhZnRhciAyMCBrb2xva2F0IGtoYXMgdGVyYXRhcyB1bnR1ayAqa2VzZW5hbmdhbiogZGkgS29ycHVzIExlaXB6aWcgQmFoYXNhIEluZG9uZXNpYS4iLCByb3cubmFtZXMgPSBUUlVFKQpgYGAKCgoKCgoKYGBge3Igbi1ncmFtLXByaWJhZGl9CmNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5wcmliYWRpJCIsICJea2VzZW5hbmdhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgoKCmBgYHtyIG4tZ3JhbS1rZW5pa21hdGFufQpjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJea2VuaWttYXRhbiQiLCAiXmtlc2VuYW5nYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKCgpgYGB7ciBuLWdyYW0tZHVuaWF3aX0KY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXmR1bmlhd2kkIiwgIl5rZXNlbmFuZ2FuJCIsIENPTExPQ0FURVMsIFdPUkRTKSRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIG4tZ3JhbS1uYWZzdX0KY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXm5hZnN1JCIsICJea2VzZW5hbmdhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgpgYGB7ciBuLWdyYW0taGF3YX0KY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXmhhd2EkIiwgIl5rZXNlbmFuZ2FuJCIsIENPTExPQ0FURVMsIFdPUkRTKSRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIG4tZ3JhbS1zZWtzdWFsfQpjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJec2Vrc3VhbCQiLCAiXmtlc2VuYW5nYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKYGBge3Igbi1ncmFtLWRvc2F9CmNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5kb3NhJCIsICJea2VzZW5hbmdhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgoKCmBgYHtyIG4tZ3JhbS1rZWJ1dHVoYW59CmNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5rZWJ1dHVoYW4kIiwgIl5rZXNlbmFuZ2FuJCIsIENPTExPQ0FURVMsIFdPUkRTKSRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCgpgYGB7ciBuLWdyYW0ta2V1bnR1bmdhbn0KY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXmtldW50dW5nYW4kIiwgIl5rZXNlbmFuZ2FuJCIsIENPTExPQ0FURVMsIFdPUkRTKSRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIG4tZ3JhbS1rZXBlbnRpbmdhbn0KY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXmtlcGVudGluZ2FuJCIsICJea2VzZW5hbmdhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgpgYGB7ciBuLWdyYW0taG9iaX0KY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXmhvYmkkIiwgIl5rZXNlbmFuZ2FuJCIsIENPTExPQ0FURVMsIFdPUkRTKSRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCgpgYGB7ciBuLWdyYW0td2FrdHV9CmNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl53YWt0dSQiLCAiXmtlc2VuYW5nYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKQmVyaWt1dCBpbmkgYWRhbGFoIHBvbGEga29sb2thc2kgKmtlc2VuYW5nYW4qIGRlbmdhbiBrb2xva2F0IHZlcmJhbCwgeWFuZyBzZWJhZ2lhbiBiZXNhciBtdW5jdWwgZGFsYW0ga29uc3RydWtzaSBtZXRhZm9yaXMuCgpgYGB7ciBuLWdyYW0tbWVuY2FyaX0KY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXm1lbmNhcmkkIiwgIl5rZXNlbmFuZ2FuJCIsIENPTExPQ0FURVMsIFdPUkRTKSRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCgpgYGB7ciBuLWdyYW0tbWVuZ2VqYXJ9Cm1lbmdlamFyIDwtIGNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5tZW5nZWphciQiLCAiXmtlc2VuYW5nYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCm1lbmdlamFyJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKCmBgYHtyIG4tZ3JhbS1tZW5kYXBhdH0KbWVuZGFwYXQgPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXm1lbmRhcGF0JCIsICJea2VzZW5hbmdhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKbWVuZGFwYXQkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgoKYGBge3Igbi1ncmFtLWJlcmRhc2Fya2FufQpiZXJkYXNhcmthbiA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJeYmVyZGFzYXJrYW4kIiwgIl5rZXNlbmFuZ2FuJCIsIENPTExPQ0FURVMsIFdPUkRTKQpiZXJkYXNhcmthbiRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCgoKIyMgS29sb2thdCBraGFzIHVudHVrICprZWdlbWJpcmFhbioKCgpUYWJlbCBbXEByZWYodGFiOmtvbG9rYXQta2VnZW1iaXJhYW4pXSgja29sb2thdC1rZWdlbWJpcmFhbikgYmVyaWt1dCBtZW5hbXBpbGthbiAyMCBrb2xva2F0IGtoYXMgdGVyYXRhcyB5YW5nIGt1YXQgYmVyYXNvc2lhc2kgZGVuZ2FuICprZWdlbWJpcmFhbiouCgoKYGBge3Iga29sb2thdC1rZWdlbWJpcmFhbiwgZWNobyA9IFRSVUV9CmhhcHB5cjo6bWRjYV9hdHRyKG1kY2FfY29sbG9jX2NvbmNpc2UsIGN4bl90eXBlID0gIl5rZWdlbWJpcmFhbiQiKSAlPiUgCiAgZHBseXI6OnRvcF9uKG4gPSAyMCwgd3QgPSBhc3NvY3N0cikgJT4lIAogIGRwbHlyOjpzZWxlY3QoLXN5bm9ueW1zKSAlPiUKICBkcGx5cjo6bXV0YXRlKGV4cCA9IHJvdW5kKGV4cCwgMyksIAogICAgICAgICAgICAgICAgY29sbG9jYXRlcyA9IHBhc3RlKCIqIiwgY29sbG9jYXRlcywgIioiLCBzZXAgPSAiIikpICU+JQogIGRwbHlyOjpyZW5hbWUoa29sb2thdCA9IGNvbGxvY2F0ZXMsCiAgICAgICAgICAgICAgICBzaWduaWYgPSBkZWMpICU+JSAKICBrbml0cjo6a2FibGUoY2FwdGlvbj0iRGFmdGFyIDIwIGtvbG9rYXQga2hhcyB0ZXJhdGFzIHVudHVrICprZWdlbWJpcmFhbiogZGkgS29ycHVzIExlaXB6aWcgQmFoYXNhIEluZG9uZXNpYS4iLCByb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIG4tZ3JhbS1sdWFwYW59Cmx1YXBhbiA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJebHVhcGFuJCIsICJea2VnZW1iaXJhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCmx1YXBhbiRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCgpgYGB7ciBuLWdyYW0tbWVsdWFwa2FufQptZWx1YXBrYW4gPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXm1lbHVhcGthbiQiLCAiXmtlZ2VtYmlyYWFuJCIsIENPTExPQ0FURVMsIFdPUkRTKQptZWx1YXBrYW4kY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgpgYGB7ciBuLWdyYW0tZGloYXRpfQpkaWhhdGkgPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXmRpaGF0aSQiLCAiXmtlZ2VtYmlyYWFuJCIsIENPTExPQ0FURVMsIFdPUkRTKQpkaWhhdGkkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgoKYGBge3Igbi1ncmFtLWxhcnV0fQpsYXJ1dCA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJebGFydXQkIiwgIl5rZWdlbWJpcmFhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKbGFydXQkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgpgYGB7ciBuLWdyYW0tbWVueWFtYnV0fQptZW55YW1idXQgPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXm1lbnlhbWJ1dCQiLCAiXmtlZ2VtYmlyYWFuJCIsIENPTExPQ0FURVMsIFdPUkRTKQptZW55YW1idXQkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgpgYGB7ciBuLWdyYW0tbWVueWF0YWthbi1tZW55YWtzaWthbn0KbWVueWF0YWthbiA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJeKG1lbnlhdGFrYW58bWVueWFrc2lrYW4pJCIsICJea2VnZW1iaXJhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCm1lbnlhdGFrYW4kY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgoKYGBge3Igbi1ncmFtLWt1YnV9Cmt1YnUgPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXmt1YnUkIiwgIl5rZWdlbWJpcmFhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKa3VidSRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIGZ1bGwtc2VudC1rdWJ1fQpmdWxsX3NlbnRfbm9taW5hbGlzZWQgJT4lIGZpbHRlcihDT0xMT0NBVEVTPT0ia3VidSIsIFdPUkRTPT0ia2VnZW1iaXJhYW4iKSAlPiUgcHVsbChNQVRDSEVEX1NFTlRFTkNFKQpgYGAKCmBgYHtyIG4tZ3JhbS1wZW5kdWt1bmd9CnBlbmR1a3VuZyA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJecGVuZHVrdW5nJCIsICJea2VnZW1iaXJhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCnBlbmR1a3VuZyRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIGZ1bGwtc2VudC1wZW5kdWt1bmd9CmZ1bGxfc2VudF9ub21pbmFsaXNlZCAlPiUgZmlsdGVyKENPTExPQ0FURVM9PSJwZW5kdWt1bmciLCBXT1JEUz09ImtlZ2VtYmlyYWFuIikgJT4lIHB1bGwoTUFUQ0hFRF9TRU5URU5DRSkKYGBgCgpgYGB7ciBuLWdyYW0tZ29sfQpnb2wgPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXmdvbCQiLCAiXmtlZ2VtYmlyYWFuJCIsIENPTExPQ0FURVMsIFdPUkRTKQpnb2wkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgpgYGB7ciBuLWdyYW0tdGltfQp0aW0gPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXnRpbSQiLCAiXmtlZ2VtYmlyYWFuJCIsIENPTExPQ0FURVMsIFdPUkRTKQp0aW0kY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgpgYGB7ciBuLWdyYW0tcGVtYWlufQpwZW1haW4gPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXnBlbWFpbiQiLCAiXmtlZ2VtYmlyYWFuJCIsIENPTExPQ0FURVMsIFdPUkRTKQpwZW1haW4kY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgoKYGBge3Igbi1ncmFtLXdhcmdhfQp3YXJnYSA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJed2FyZ2EkIiwgIl5rZWdlbWJpcmFhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKd2FyZ2EkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgoKYGBge3Igbi1ncmFtLW1hc3lhcmFrYXR9Cm1hc3lhcmFrYXQgPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXm1hc3lhcmFrYXQkIiwgIl5rZWdlbWJpcmFhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKbWFzeWFyYWthdCRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIG4tZ3JhbS1iZWxhbmRhfQpiZWxhbmRhIDwtIGNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5iZWxhbmRhJCIsICJea2VnZW1iaXJhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCmJlbGFuZGEkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgoKYGBge3Igbi1ncmFtLW1lbnlha3Npa2FufQptZW55YWtzaWthbiA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJebWVueWFrc2lrYW4kIiwgIl5rZWdlbWJpcmFhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKbWVueWFrc2lrYW4kY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgpgYGB7ciBuLWdyYW0tbWVueWF0YWthbn0KbWVueWF0YWthbiA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJebWVueWF0YWthbiQiLCAiXmtlZ2VtYmlyYWFuJCIsIENPTExPQ0FURVMsIFdPUkRTKQptZW55YXRha2FuJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKYGBge3Igbi1ncmFtLXRlcmxpaGF0fQp0ZXJsaWhhdCA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJedGVybGloYXQkIiwgIl5rZWdlbWJpcmFhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKdGVybGloYXQkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgpgYGB7ciBuLWdyYW0ta2VzZWRpaGFufQprZXNlZGloYW4gPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXmtlc2VkaWhhbiQiLCAiXmtlZ2VtYmlyYWFuJCIsIENPTExPQ0FURVMsIFdPUkRTKQprZXNlZGloYW4kY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgoKIyMgS29sb2thdCBraGFzIHVudHVrICprZWNlcmlhYW4qCgpUYWJlbCBbXEByZWYodGFiOmtvbG9rYXQta2VjZXJpYWFuKV0oI2tvbG9rYXQta2VjZXJpYWFuKSBiZXJpa3V0IG1lbmFtcGlsa2FuIDIwIGtvbG9rYXQga2hhcyB0ZXJhdGFzIHlhbmcga3VhdCBiZXJhc29zaWFzaSBkZW5nYW4gKmtlY2VyaWFhbiouCgoKYGBge3Iga29sb2thdC1rZWNlcmlhYW4sIGVjaG8gPSBUUlVFfQpoYXBweXI6Om1kY2FfYXR0cihtZGNhX2NvbGxvY19jb25jaXNlLCBjeG5fdHlwZSA9ICJea2VjZXJpYWFuJCIpICU+JSAKICBkcGx5cjo6dG9wX24obiA9IDIwLCB3dCA9IGFzc29jc3RyKSAlPiUgCiAgZHBseXI6OnNlbGVjdCgtc3lub255bXMpICU+JQogIGRwbHlyOjptdXRhdGUoZXhwID0gcm91bmQoZXhwLCAzKSwgCiAgICAgICAgICAgICAgICBjb2xsb2NhdGVzID0gcGFzdGUoIioiLCBjb2xsb2NhdGVzLCAiKiIsIHNlcCA9ICIiKSkgJT4lCiAgZHBseXI6OnJlbmFtZShrb2xva2F0ID0gY29sbG9jYXRlcywKICAgICAgICAgICAgICAgIHNpZ25pZiA9IGRlYykgJT4lIAogIGtuaXRyOjprYWJsZShjYXB0aW9uPSJEYWZ0YXIgMjAga29sb2thdCBraGFzIHRlcmF0YXMgdW50dWsgKmtlY2VyaWFhbiogZGkgS29ycHVzIExlaXB6aWcgQmFoYXNhIEluZG9uZXNpYS4iLCByb3cubmFtZXMgPSBUUlVFKQpgYGAKCgpgYGB7ciBuLWdyYW0tYW5hay1hbmFrfQphbmFrYW5hayA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJeYW5ha1xcLWFuYWskIiwgIl5rZWNlcmlhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCmFuYWthbmFrJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKCmBgYHtyIG4tZ3JhbS1hbmFrfQphbmFrIDwtIGNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5hbmFrJCIsICJea2VjZXJpYWFuJCIsIENPTExPQ0FURVMsIFdPUkRTKQphbmFrJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKCmBgYHtyIG4tZ3JhbS1tZW5nZW1iYWxpa2FufQptZW5nZW1iYWxpa2FuIDwtIGNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5tZW5nZW1iYWxpa2FuJCIsICJea2VjZXJpYWFuJCIsIENPTExPQ0FURVMsIFdPUkRTKQptZW5nZW1iYWxpa2FuJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKYGBge3Igc2VudC1tZW5nZW1iYWxpa2FufQpzZW50X21lbmdlbWJhbGlrYW4gPC0gZnVsbF9zZW50X25vbWluYWxpc2VkICU+JSBmaWx0ZXIoQ09MTE9DQVRFUz09Im1lbmdlbWJhbGlrYW4iLCBXT1JEUz09ImtlY2VyaWFhbiIpICU+JSBwdWxsKE1BVENIRURfU0VOVEVOQ0UpCgpzZW50X21lbmdlbWJhbGlrYW4KYGBgCgoKYGBge3Igbi1ncmFtLWtvcmJhbn0Ka29yYmFuIDwtIGNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5rb3JiYW4kIiwgIl5rZWNlcmlhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCmtvcmJhbiRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCgpgYGB7ciBzZW50LWtvcmJhbn0Kc2VudF9rb3JiYW4gPC0gZnVsbF9zZW50X25vbWluYWxpc2VkICU+JSBmaWx0ZXIoQ09MTE9DQVRFUz09ImtvcmJhbiIsIFdPUkRTPT0ia2VjZXJpYWFuIikgJT4lIHB1bGwoTUFUQ0hFRF9TRU5URU5DRSkKCnNlbnRfa29yYmFuCmBgYAoKCmBgYHtyIG4tZ3JhbS1wZW51aH0KcGVudWggPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXnBlbnVoJCIsICJea2VjZXJpYWFuJCIsIENPTExPQ0FURVMsIFdPUkRTKQpwZW51aCRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQoKYGBgCgoKYGBge3Igbi1ncmFtLW1lbmFtYmFofQptZW5hbWJhaCA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJebWVuYW1iYWgkIiwgIl5rZWNlcmlhYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCm1lbmFtYmFoJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCgpgYGAKCgpgYGB7ciBuLWdyYW0tdGVycGFuY2FyfQp0ZXJwYW5jYXIgPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXnRlcnBhbmNhciQiLCAiXmtlY2VyaWFhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKdGVycGFuY2FyJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCgpgYGAKCgpgYGB7ciBuLWdyYW0tbWVuZ2hpYXNpfQptZW5naGlhc2kgPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXm1lbmdoaWFzaSQiLCAiXmtlY2VyaWFhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKbWVuZ2hpYXNpJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKYGBge3Igc2VudC1tZW5naGlhc2l9CnNlbnRfbWVuZ2hpYXNpIDwtIGZ1bGxfc2VudF9ub21pbmFsaXNlZCAlPiUgZmlsdGVyKENPTExPQ0FURVM9PSJtZW5naGlhc2kiLCBXT1JEUz09ImtlY2VyaWFhbiIpICU+JSBwdWxsKE1BVENIRURfU0VOVEVOQ0UpCgpzZW50X21lbmdoaWFzaQoKIyBwZXJjZW50YWdlIG9mICJmYWNlIiBhcyBETyBmb3IgIm1lbmdoaWFzaSIKcm91bmQoNi83KjEwMCwgMikKYGBgCgoKCgpgYGB7ciBuLWdyYW0tbWV3YXJuYWl9Cm1ld2FybmFpIDwtIGNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5tZXdhcm5haSQiLCAiXmtlY2VyaWFhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKbWV3YXJuYWkkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgpgYGB7ciBzZW50LW1ld2FybmFpfQpzZW50X21ld2FybmFpIDwtIGZ1bGxfc2VudF9ub21pbmFsaXNlZCAlPiUgZmlsdGVyKENPTExPQ0FURVM9PSJtZXdhcm5haSIsIFdPUkRTPT0ia2VjZXJpYWFuIikgJT4lIHB1bGwoTUFUQ0hFRF9TRU5URU5DRSkKCnNlbnRfbWV3YXJuYWkKYGBgCgoKCgpgYGB7ciBuLWdyYW0td2FybmF9Cndhcm5hIDwtIGNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl53YXJuYSQiLCAiXmtlY2VyaWFhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKd2FybmEkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgojIyBLb2xva2F0IGtoYXMgdW50dWsgKmtlcmlhbmdhbioKClRhYmVsIFtcQHJlZih0YWI6a29sb2thdC1rZXJpYW5nYW4pXSgja29sb2thdC1rZXJpYW5nYW4pIGJlcmlrdXQgbWVuYW1waWxrYW4gMjAga29sb2thdCBraGFzIHRlcmF0YXMgeWFuZyBrdWF0IGJlcmFzb3NpYXNpIGRlbmdhbiAqa2VyaWFuZ2FuKi4KCgpgYGB7ciBrb2xva2F0LWtlcmlhbmdhbiwgZWNobyA9IFRSVUV9CmhhcHB5cjo6bWRjYV9hdHRyKG1kY2FfY29sbG9jX2NvbmNpc2UsIGN4bl90eXBlID0gIl5rZXJpYW5nYW4kIikgJT4lIAogIGRwbHlyOjp0b3BfbihuID0gMjAsIHd0ID0gYXNzb2NzdHIpICU+JSAKICBkcGx5cjo6c2VsZWN0KC1zeW5vbnltcykgJT4lCiAgZHBseXI6Om11dGF0ZShleHAgPSByb3VuZChleHAsIDMpLCAKICAgICAgICAgICAgICAgIGNvbGxvY2F0ZXMgPSBwYXN0ZSgiKiIsIGNvbGxvY2F0ZXMsICIqIiwgc2VwID0gIiIpKSAlPiUKICBkcGx5cjo6cmVuYW1lKGtvbG9rYXQgPSBjb2xsb2NhdGVzLAogICAgICAgICAgICAgICAgc2lnbmlmID0gZGVjKSAlPiUgCiAga25pdHI6OmthYmxlKGNhcHRpb249IkRhZnRhciAyMCBrb2xva2F0IGtoYXMgdGVyYXRhcyB1bnR1ayAqa2VyaWFuZ2FuKiBkaSBLb3JwdXMgTGVpcHppZyBCYWhhc2EgSW5kb25lc2lhLiIsIHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKYGBge3Igbi1ncmFtLXJpYW5nLXBlbnVofQpyaWFuZ19wZW51aCA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJecGVudWgkIiwgIl5rZXJpYW5nYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCnJpYW5nX3BlbnVoJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKCmBgYHtyIG4tZ3JhbS1yaWFuZy1LQU5BSy1CT0NBSC1BTkFLLUFOQUt9CnJpYW5nX0FOQUsgPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXihrYW5hay1rYW5ha3xhbmFrLWFuYWt8Ym9jYWgpJCIsICJea2VyaWFuZ2FuJCIsIENPTExPQ0FURVMsIFdPUkRTKQpyaWFuZ19BTkFLJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKYGBge3Igbi1ncmFtLXJpYW5nLVRVTFVTLUtPTllPTC1TRVJPTk9LfQpyaWFuZ19UdWx1c0tvbnlvbFNlcm9ub2sgPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXihrZXR1bHVzYW58a2Vrb255b2xhbnxrZXNlcm9ub2thbikkIiwgIl5rZXJpYW5nYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCnJpYW5nX1R1bHVzS29ueW9sU2Vyb25vayRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCgpgYGB7ciBzZW50LVRVTFVTLUtPTllPTC1TRVJPTk9LfQpzZW50X1R1bHVzS29ueW9sU2Vyb25vayA8LSBmdWxsX3NlbnRfbm9taW5hbGlzZWQgJT4lIGZpbHRlcihDT0xMT0NBVEVTICVpbiUgYygia2V0dWx1c2FuIiwgImtla29ueW9sYW4iLCAia2VzZXJvbm9rYW4iKSwgV09SRFM9PSJrZXJpYW5nYW4iKSAlPiUgcHVsbChNQVRDSEVEX1NFTlRFTkNFKQpzZW50X1R1bHVzS29ueW9sU2Vyb25vawpgYGAKCgoKYGBge3Igbi1ncmFtLW1lbWFuY2Fya2FufQptZW1hbmNhcmthbiA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJebWVtYW5jYXJrYW4kIiwgIl5rZXJpYW5nYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCm1lbWFuY2Fya2FuJGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKYGBge3Igc2VudC1tZW1hbmNhcmthbn0KZnVsbF9zZW50X25vbWluYWxpc2VkICU+JSBmaWx0ZXIoQ09MTE9DQVRFUyAlaW4lIGMoIm1lbWFuY2Fya2FuIiksIFdPUkRTPT0ia2VyaWFuZ2FuIikgJT4lIHB1bGwoTUFUQ0hFRF9TRU5URU5DRSkKYGBgCgoKCmBgYHtyIG4tZ3JhbS1oaWxhbmd9CmhpbGFuZyA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJeaGlsYW5nJCIsICJea2VyaWFuZ2FuJCIsIENPTExPQ0FURVMsIFdPUkRTKQpoaWxhbmckY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgpgYGB7ciBuLWdyYW0tcG9saXRpa30KcG9saXRpayA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJecG9saXRpayQiLCAiXmtlcmlhbmdhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKcG9saXRpayRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIHNlbnQtaW1hamluYXNpfQpzZW50X2ltYWppbmFzaSA8LSBmdWxsX3NlbnRfbm9taW5hbGlzZWQgJT4lIGZpbHRlcihDT0xMT0NBVEVTPT0iaW1hamluYXNpIiwgV09SRFM9PSJrZXJpYW5nYW4iKSAlPiUgcHVsbChNQVRDSEVEX1NFTlRFTkNFKQoKc2VudF9pbWFqaW5hc2kKYGBgCgoKCmBgYHtyIHNlbnQtcG9saXRpa30Kc2VudF9wb2xpdGlrIDwtIGZ1bGxfc2VudF9ub21pbmFsaXNlZCAlPiUgZmlsdGVyKENPTExPQ0FURVM9PSJwb2xpdGlrIiwgV09SRFM9PSJrZXJpYW5nYW4iKSAlPiUgcHVsbChNQVRDSEVEX1NFTlRFTkNFKQoKc2VudF9wb2xpdGlrCmBgYAoKCgpgYGB7ciBuLWdyYW0tbWVuZ2dhbWJhcmthbn0KbWVuZ2dhbWJhcmthbiA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJebWVuZ2dhbWJhcmthbiQiLCAiXmtlcmlhbmdhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKbWVuZ2dhbWJhcmthbiRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIHNlbnQtbWVuZ2dhbWJhcmthbn0KZnVsbF9zZW50X25vbWluYWxpc2VkICU+JSBmaWx0ZXIoQ09MTE9DQVRFUz09Im1lbmdnYW1iYXJrYW4iLCBXT1JEUz09ImtlcmlhbmdhbiIpICU+JSBwdWxsKE1BVENIRURfU0VOVEVOQ0UpCmBgYAoKCmBgYHtyIG4tZ3JhbS1tZW51bmp1a2thbn0KbWVudW5qdWtrYW4gPC0gY29sbF9jeG5fbmdyYW0oZnVsbF9zZW50X25vbWluYWxpc2VkLCAiXm1lbnVuanVra2FuJCIsICJea2VyaWFuZ2FuJCIsIENPTExPQ0FURVMsIFdPUkRTKQptZW51bmp1a2thbiRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIHNlbnQtbWVudW5qdWtrYW59CmZ1bGxfc2VudF9ub21pbmFsaXNlZCAlPiUgZmlsdGVyKENPTExPQ0FURVM9PSJtZW51bmp1a2thbiIsIFdPUkRTPT0ia2VyaWFuZ2FuIikgJT4lIHB1bGwoTUFUQ0hFRF9TRU5URU5DRSkKYGBgCgoKYGBge3Igbi1ncmFtLW1lbmRlbmdhcn0KbWVuZGVuZ2FyIDwtIGNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5tZW5kZW5nYXIkIiwgIl5rZXJpYW5nYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCm1lbmRlbmdhciRjb2xsb2NfY3huX3BhdHRlcm4gJT4lIGtuaXRyOjprYWJsZShyb3cubmFtZXMgPSBUUlVFKQpgYGAKCmBgYHtyIHNlbnQtbWVuZGVuZ2FyfQpmdWxsX3NlbnRfbm9taW5hbGlzZWQgJT4lIGZpbHRlcihDT0xMT0NBVEVTPT0ibWVuZGVuZ2FyIiwgV09SRFM9PSJrZXJpYW5nYW4iKSAlPiUgcHVsbChNQVRDSEVEX1NFTlRFTkNFKQpgYGAKCgoKYGBge3Igbi1ncmFtLWJlcmJhbHV0fQpiZXJiYWx1dCA8LSBjb2xsX2N4bl9uZ3JhbShmdWxsX3NlbnRfbm9taW5hbGlzZWQsICJeYmVyYmFsdXQkIiwgIl5rZXJpYW5nYW4kIiwgQ09MTE9DQVRFUywgV09SRFMpCmJlcmJhbHV0JGNvbGxvY19jeG5fcGF0dGVybiAlPiUga25pdHI6OmthYmxlKHJvdy5uYW1lcyA9IFRSVUUpCmBgYAoKCmBgYHtyIHNlbnQtYmVyYmFsdXR9CnNlbnRfYmVyYmFsdXQgPC0gZnVsbF9zZW50X25vbWluYWxpc2VkICU+JSBmaWx0ZXIoQ09MTE9DQVRFUz09ImJlcmJhbHV0IiwgV09SRFM9PSJrZXJpYW5nYW4iKSAlPiUgcHVsbChNQVRDSEVEX1NFTlRFTkNFKQoKc2VudF9iZXJiYWx1dApgYGAKCmBgYHtyIHNlbnQta2VqYXlhYW59CnNlbnRfa2VqYXlhYW4gPC0gZnVsbF9zZW50X25vbWluYWxpc2VkICU+JSBmaWx0ZXIoQ09MTE9DQVRFUz09ImtlamF5YWFuIiwgV09SRFM9PSJrZXJpYW5nYW4iKSAlPiUgcHVsbChNQVRDSEVEX1NFTlRFTkNFKQoKc2VudF9rZWpheWFhbgpgYGAKCgpgYGB7ciBuLWdyYW0tbWVuZ2FqYXJ9Cm1lbmdhamFyIDwtIGNvbGxfY3huX25ncmFtKGZ1bGxfc2VudF9ub21pbmFsaXNlZCwgIl5tZW5nYWphciQiLCAiXmtlcmlhbmdhbiQiLCBDT0xMT0NBVEVTLCBXT1JEUykKbWVuZ2FqYXIkY29sbG9jX2N4bl9wYXR0ZXJuICU+JSBrbml0cjo6a2FibGUocm93Lm5hbWVzID0gVFJVRSkKYGBgCgoKIyBSIHNlc3Npb24gaW5mbwoKYGBge3Igci1zZXNzaW9uLWluZm99CmRldnRvb2xzOjpzZXNzaW9uX2luZm8oKQpgYGAKCgojIERhZnRhciBwdXN0YWthIHstfQo=