From 1dc7850d6cce12d22c86f70515256e3152b3d0f2 Mon Sep 17 00:00:00 2001 From: Hans Valerie Date: Wed, 9 Sep 2026 20:08:40 +0700 Subject: [PATCH] i18n: add Indonesian translation (#4402) --- changedetectionio/languages.py | 3 + changedetectionio/translations/README.md | 1 + .../translations/id/LC_MESSAGES/messages.mo | Bin 0 -> 115246 bytes .../translations/id/LC_MESSAGES/messages.po | 5121 +++++++++++++++++ 4 files changed, 5125 insertions(+) create mode 100644 changedetectionio/translations/id/LC_MESSAGES/messages.mo create mode 100644 changedetectionio/translations/id/LC_MESSAGES/messages.po diff --git a/changedetectionio/languages.py b/changedetectionio/languages.py index 935d5d6af..970a25055 100644 --- a/changedetectionio/languages.py +++ b/changedetectionio/languages.py @@ -19,6 +19,7 @@ def get_timeago_locale(flask_locale, short=False): - Swedish: Flask uses 'sv', timeago uses 'sv_SE' - Norwegian: Flask uses 'no', timeago uses 'nb_NO' or 'nn_NO' - Hindi: Flask uses 'hi', timeago uses 'in_HI' + - Indonesian: Flask uses 'id', timeago uses 'in_ID' - Czech: Flask uses 'cs', but timeago doesn't support Czech - fallback to English Args: @@ -46,6 +47,7 @@ def get_timeago_locale(flask_locale, short=False): 'sv': 'sv_SE', # Swedish 'no': 'nb_NO', # Norwegian Bokmål 'hi': 'in_HI', # Hindi + 'id': 'in_ID', # Indonesian 'cs': 'en', # Czech not supported by timeago, fallback to English 'ja': 'ja', # Japanese 'uk': 'uk', # Ukrainian @@ -156,6 +158,7 @@ LANGUAGE_DATA = { 'tr': {'flag': 'fi fi-tr fis', 'name': 'Türkçe'}, 'ar': {'flag': 'fi fi-sa fis', 'name': 'العربية'}, 'hi': {'flag': 'fi fi-in fis', 'name': 'हिन्दी'}, + 'id': {'flag': 'fi fi-id fis', 'name': 'Bahasa Indonesia'}, 'uk': {'flag': 'fi fi-ua fis', 'name': 'Українська'}, } diff --git a/changedetectionio/translations/README.md b/changedetectionio/translations/README.md index 5aaa0e97d..b51aef216 100644 --- a/changedetectionio/translations/README.md +++ b/changedetectionio/translations/README.md @@ -198,6 +198,7 @@ Never fix one language and move on. | `en_US` | English (US) | | `es` | Spanish (Español) | | `fr` | French (Français) | +| `id` | Indonesian (Bahasa Indonesia) | | `it` | Italian (Italiano) | | `ja` | Japanese (日本語) | | `ko` | Korean (한국어) | diff --git a/changedetectionio/translations/id/LC_MESSAGES/messages.mo b/changedetectionio/translations/id/LC_MESSAGES/messages.mo new file mode 100644 index 0000000000000000000000000000000000000000..175c976cf238cab5317fcd2c3012d84927f7aead GIT binary patch literal 115246 zcmce<2b^40`TsvlC-mL|+-yj)8@41Nfiwasn*wR^9 z^PF?)Cd3h=| z5Q;> zVHZ?;l;D<>=Sq?Abu{Ll@K&h&z75B~7vRU?FfvzpKMkkD`=FkC6Hb8dLiNk|WBvJA zu%7TLsO#rKwa4XwcfdUeKLU@3zksUul;cvV&0z~v_(<3bS3>?veVc!dfFpS5aF~OV zquZe5@GDT|egJAHy$DsWtxjDhWD&2oVjkm2k{rZkj^&J7H z!EsRXk%Ow=r=j}!dbk_BE$~|~BK&hW6}}z9lQP~fE1=r*GjJsQ0+c*_8(sxpg*=kF zpv&d*uTbs!9-Iir()fzM3QBIzg@?mSq1yFnI0C*2Ro*>&yqq&(1K|Zw^<5LfXF-jV zJKwa;C65}RDMSVo(NTr0^Am!3e}DugBrhA zL&@P+pyE9N74H{N>Annifp5W4aJ#&R4}yv}52_x^pvrS<2!9xEMfgT|1iTXtgYQ7q zZ_9$q{l4%+gjc{4{4c0>I-<|((F#@HG*mm6;4Jt!RDbP!vdifLxDVkrsC)}>N4OR$ zzjLAV#no^LydTbl!;0usxDcuz?uMxN)Q_R$V>E?ohK+DLcmh=VtD)Ml3@5?!pyd7` zxHEhc9tgKCdp#yWJwFGk9Ia6Cdf`s+45;?G2rAxHaC>+QR6pGhH-k^Yh4ASRKA_** zy&kIFn&DpX5E#Lu;BK%8hr^FSrGGs<4BidL!q?$AxZfJD_Y$b~TLBfnJFp+_K=>n2 z?Qk(v`L2XaA*p-dJh=S;Z4XyK$<^af^?VkppZ)~Lz^#eY0LMes?*mZf>43`r6Cr#x zRC&J#4}rr5{r)Vd`nEy!UoTYp=fSPv4N&Rd3CF|d;AFVtDW2Z~xF_MoQ2MtU_P{T~ zFTx#8C2e>wRQZOT=5oIS+>P*XsCJ(KmCn?_w!j?RgX?EQ<$o3IgO9`8;NhnuL-5Z~ za@O%dpC>Mcs>h>HdiDjlE1bt*(KtIENVFN?__+}({sSTW7~G%m zvry&xXW+22JpNu#^=W`=&z11AFb8*so1g9aVK_WW*Wm>CbvO;a1~ahn9Ap(<3>)BI zA)=q!|D#^dOQHJbZYa6GA4c#8a7*|nsP=dRD&3tw=H*=sHz9liRJ~7xSHQJU>Fj#0 zmwPnSxSR%6{{>L}umZNg0-OWC40nNV!>!@=A9wBvdkNP<<$obWWu<-qd*I>cd3kSw zlFRQwmHTZt8g6pFm$x2nPIxjr6wZJeho`}L@N%ercmbXaUxTN@jtg8b{0gdGe}sF% zf5EYEk5730XTj-&kA;f&8F(DL366)Gf70uJ2;7_S9H@3*1(jYGJPMux8{w01E10^_ zyROw+T+qx zYB{_d9s&OX?}O7mf6mF!*L*&1K%6+d|3V zSg7z`ZVayI>-ee!2qg z3h#&Nug9Ur*Q;<6oX8+mJx+qUe;?F1{yE$h{sQg=Uxq6GrdN8t+d$QOC#ZfO1CNGH zQ2Binsy(lSs^9P7IQSae2i9KY*JnVr!+fag$HRKK7AoIspycR5xD$K`?hK!Ts{il8 z{a2vm;wbLu`ZunQ2hhMzb?Zw@$bG!5;sQhk& zlE3Gn>h~Iy+;4il*XKy6e*Xa66PDqA@B*mzzZFXVe+#N#pM{d+SE2g#U+_pc=8Hbx zmZ0i&HPmy%Zt!@ua2DZ(Q2BonZUUc%D%Uem>AwO;!_W3El~1(1C(BR z6RJH&-sE=K2~cu-6_mWb2}v?F^JeM-UxuULrMI}AdJsm0UxSTsXCgJh!{OGj0JnmJ zQ0;Uklw5xnPJ{QrZQ);_;{7Xxx46yq_%3i5*C#{WpAA*dg>X1L5l)Avhw%MybHYzU zwZku=(%_=`!A*idLAC!!p~`A%;R1LLEWsz>WH{$OFX!n{@y>^8&szc?fJ*QCQ04qJRDZq%yWpE} zFL=WJKF$W zW)C`df%_1yh3fYiQ01NjRi0%~&*$Osa1GS+Pr+&M1*mfE_cfn47D1)g2bJIXQ1W^i zR61`#)vM;~?)Tjes$V`2Rqi|CX7GNf_WA}?eSZQ+!GA%G&ynBo@zDe&e{*04_Cv*c z7OLNBzUg{+D=4`i0acCzq3U@M+!M}*`@-X)abF-wMaW2Vn&N3{~zO z9`bR$Csezyf}e(Kpwip+VQ;_v;C_Tpg=665Q1Kszs_)O?0r1bT7Vh#b*Ea`4<Y9l`E31dw_Epy&4kNP?RXtjJ3S2dhkt`};I5An2Oa}I2!90C{)@ij_3MJ0 z6D~mYUw`0ffgcI{I8?k(LCM)?pz41eY=K{eTf%pt(%IrMZ|Cix`tbm$dQ60ez=d!W zJPS^OH^WWguc7Ms8z}jC14{nhgX7?^?|QkXL5=4*Q0ccq#cPL~!Ct8GRD|lU^P%+5 z6;SEl9p(5TM5^GKb5)z_Cv|fs2})voDS;=uZ7d$HBk3| z1smX-a3vi1Lr?EisO#4S{uruW@4^FN^N+k=kArHb^WZf2EvS6n3-{|EcRS=5D0%q; zJOF+TN^V|&Pr`q|+3@>McsuX#W0#W_Sm62qTmgR%mH!MLQa&d^$<-yW4&DVBTB&ED z+WD%d++Mj69zpmesC*9kiTim5;4y^157jQCe(LpThtl7lgImF;;WqHsaA)`mlpMSV z)sLJ0m)kvCLCN2jq3Zhp+yOof$HU*l?crWeJL}-?gbxW^4E1~l?gm%GZQ+NZ#=|F| z>VE^2zIY0D!M{SKd(6+=&gg-X+pj>i&o80m{-03eVbh;`x%YsQv*A$f)d*GJ$#5q) z6Dt2UsQR1;Ro~N~+Uvt`IQ%-)czPBp{THC}dlRZ$@4_)~yJx(gCc(o9e*mhUpM!e- z9;os>0Jnobfa=$0;I44fXFcAYQ0eXul}{7g3mzPho0^nM-t=uFTyPRJDdg6&w0AnLCMQIQ03X- zSFVRfK*?`6RDXX8D&A+H^zF@1{rp2X5xxZ#zvflP&na*$OvA0=`B3tBDO5SHhDz^xxEXv5 zUI>2(Z-O8AEw(e<>UTaao`i=Hp7MM83=YEE;qaGS4}Bl19sU9}zL&o2^Y`&ka(y~H z0bULzr~iN|$M%14`P&sr?nc5b;h|9N&;mDw%i)#q7?^`^LY2Sck1pruz&!|m29APv zz-{19;cf7FDEa#2E8Y&*!jXh;g$?itsC@nfXTh33F;~Gka2Wh9l$`toD&8NV%J(W< z0pEifcPswv^*8}G5*~ot!|S2ydk<84_e06Sx1s9sG*myl4VC_TA-w6Ut{=97^SIsu z74HH#7G4B3{=Np6!f}5=x4{p?^Wl!KG55o(pycL{a67o&U%g!Wz#RyWg%jXZsCxFo z{oz?q`CSK9{+mMh4ybhQfvWezf!_^$0;(UM4&h$~{w`eq6WpHrZ$PEH+3U_>fjdH_ zyL$-l8^R-@^u|~yd7cf`&kMu-qoML$1vOr~q0&Dm+&>>G-;3ea@EWN4-3s;Golxz1 zACx@(2F``=K()*4zj=Pg!iaDe+!lTmD&0$<(zzB&?r(w0=dp18NvL`~6T;6!mH%a^ zbl!lHi%s6}a_tIL&%NLguokLZy>M4}HdOg9hw87Z;W+pW*Z}_mHLmu3)5~)RRQ}7L z>T?{7U=f}IFAm}D|L%IE8LItOLgjNp2)D!0gnM8M{3M(Re+pIqVgK;>J3~Fc2V4O6 zg|lHdoB(fu>46bE1s(*ifV;rQ17CzY6aG6?{f52m z90Apili@`*%*XIz!aw<^`yG1TaX-wR@MJyrFYmY0;9|n(z`fv4;lA)ysPwjb*SUM( z{!rt)F7Tkh8BlVt03Ht8;GysmI2Aq#r3bcq&-Zo5LABeLU>&>{s-1oX)y_MmYE0hd zLXF?$ff=aw?+-jZ@a(_~pvv*-z^kF^aTApM-UZv>L$CyQtEsX5j&or*;lGFQs!eLl z{`?`ljO%}eSHtr+tueoL!)7(9HMH{`u#fAbx2Umte+Ft?{0yq!-heaU)*Q;&8_tKS zcL&@AW}(WLgKGDFxCgu#ejVNdKTbX;ZRP2{v2~5j_d5@(vHqU{mCtghah8Sq!G5?u zyab*A?}2LHowxCH=0M#~L&@KV;Rtw9xPA{*JN^Vp4?YJEgs;GzD9@hT`u(xnd3h&7 zrMD0^!yLR8UKzrNZ(n2Mq7SOR_rS^UYf$q1CRF{m-l4|E^%y95Tn1I2Je0g&0QZ5{ z!A|&1sQQoE(d$12Dqagb10D}m|6jshIE}(Dfj2?b`z@&c7`Ahb$>EN0B;hGg{dEGA zeq0Nc?>FE9@L4zqrgo{Z@z4TyBe)cv0=uB}+4E5S(y(id*@cs#^6iH6;aVtt{187Sp6`|m*M_kH(weKH3gLU4mf9=|@&r}iVIzE;)k5|6VNi0mG;jq}I>$rl#}ZWfx5H)dUa0i9sr7c< z4R#Tp4O`*OupRyjsvk}q>3XIFRo=VcuJBQ)be@GO$8TXBd=sia_CLVm&w%RJR;YMA zQ0*`X)t~1EUICTfZBTmQD}mpJ(yvbiz5w;yYf$Cebd=Y3cPRO5gv$R&sPSl-#@ z*8_h9rN5qo>fg7+^=%qG-F=|O%P6SlCP2y0EU5Ne36FxSpvreAlsw-X?mr0CpN~L| z?-!x^ed{K#|8S^&n*x`>`S4))S=bC8hf41~sQfo?cDdLM>bVht8G;tKk-e zKLtDCXW<0+FDQ8%H_gZWWOyjyE~tLI4oXkl301CdhwCrGCc=M#ABOu+_ws%LN-l4J zbK#><<8`}3YiyoqgzC@5foZ7zD?_#O8Bp@_S*Y@U4=Vp3L$&{JL-=)g0O2iX_;U?V z?J@^Sp4;Gb*a4*%J`XR2_d?0fqQhJ-Wue;X9;keGI^5-EHk5pv33dNn2;mPvwMPe(Je~}m zLCM35uo3E`^_i8V9e!kHcZ}UEV(pB}Y3g@OtkDr3V_I z#_KYuc03EJeXfCOpXcE*@YQgA!4WP8AA`fWekD}<-3Qfv-+&9@&!EP`s3W}{TA}3p zI4FJk2{;M<8Y-XN7kc|10A(Lc3gLxN{dqzNx5JwVm!RZ#-$kCzIH>;a3OolMMEHyF zaQF;VefL@H^W|))=W|f`e+WtsTmU8S4@1ezci{kh32I!QxWx75c~I$p8cP1Z3#E_$ z9Ih{2T4U!A&VrKjSE2fGo1!8}> zQK)|YAyj>yf|~bV4SXAF+;6_Z>$NMC9FBq-M~A~MxE$)a2gCjEK=s=Tumm?*>GfU% z_1tAp>yq1HD|`}a{ERx<>%R&{gztcxz$c*k^C>9#d>*RY?*?vmjLYvZsO$SdmFoZ~ zxjPSP99;vI|LgD&xYe;~c5`mZ0i?9jt{n!yfoU*a;8r zc0F?ioKN_1sQ%cq$M3hn;|PBh-VS%o)}-!%-+~&yYftk2xEw0|C!yrv4JiG)*J^L~ zB~b0X5~`g}grndZI1^q8)ql@H>4}%2^w#T8^0{fw+kGrlyeUv}I0q`fqv2ujG#J4L zq2&LUupYhu)lb{@y1v;LDtrJ`drg8$w+*VlJ^-!#pyc5?SO@4WdV zqu|eAFC1HNx&16ueeQwMi(iLo-~IYLzhj{0u}-Ld`V>_DpMm4ytx)Md2lMb1sPv9I z*~ec7s$EZpYR^;P7Vz`o`VArcC8+v+1s)C`hU&jfi=O@{sPSz^@D@--1E-xjF$JswJ5 zcft$c0F<8J{8aZB?FZFQ15omJCOin<4JF6Fhmx0_PV;t|0d@ZvsPr#@D#xdx(zyew zeD_0@=etn-^9+<8eg&$Y+nnz0vJ;g48V%Kdv*F2bA=GnUhYR2na6H`mgC2h&RC-yc zar-gY13wFuPR)n>`Y?D2;k}{S;SQ+$ABK|K$HMi;VH4pOU?be=41fMGsPZj=8t*w+ zfVV=$8~$M*_eVg@`%9qOr2v)B0NfUy9`1h}MucyM>WA+`>6PC=wc9_S>a*pUF1LF? z%`3B@>eUUW!#*hay$xOlABIZj_>a`sxtcyGJ@s2S5pI2!x7Q4)dF2GC`u4*E;dM~@ z^9iVa+~RC+|DB-ZX=LD37!f`SD!(FB{BxlC`%_Tmy$0&J??8=*=R){zPrh!?eQbH7Cr|he=9%g>6`}-CVV@TJp2|egPVP~ zpvL(z=LUI)(rafz$-(&{d~x7afj2T$GuSc;bADb{3TR6V?OTbjEAc4WT^gG z3^hJF;4FAL)VTj9Y=$qvP2ryBdHW5As&6Ayx`)E4a2{0up9$6O=RuX{YN+?k zUj?O~9)pYETTtbhcah7_u~6aD;4k1Oq4aI;VweBBq0)Z|o&|?r;_JXKK-oY4gc=7E zKkfBD5vm+#!|%a|q59*3OWl6>3``ULIXnSQ`;6O*m%(1bZ^AjS^RwPQH^D;*{{~7g z)L!QOTnE)ZlcD-=Db)St@CkTa2sd2rdT0V<8cHpJO0N}4UM>v$Je0hBDe!wx>HP*O zpFcq9nN6;6Io=7@6K;TYa0Qgz@F6Jq`W0-2e}tpqj4Qq0Gf?B^94L9e0IK}gLdoNe zPB| zE{3~(&gG#KO7ETnrH3wtl8>9A;(rY)-B+RFZF9B9+Y_q%%~0(z6>8jcK+Q)3P~+rW zsQNX2-s4Y#Clfv#cEG#f5pee}csr+|%5fT$TwV;P!DrwBig%6cv1w58im(jNh4bLM zum{e)*8A}esDAzqTnL|s8h1_Cd4Hb(Ro@P%dai-$zl)&8+kH^u>1C+)*!z0VcOg8I za0gU+cR;nnb5Qf!mS1!^90S`4&wv|BZ1N>9Uj&uT7^rbS8GZ#$gPIRthpK1p zPVeU{pz`?&jNpGk$@Aag58x(uc|Si6b^Uj6EPM?r-{E)rc$^Ab2+x2Yhi5_Q_Z{x> z=l6vgj}xKVe+E1eE{1ByJD}?KWq2@r461+LgL-b8FT0%V1|!1z!jW(W)bs67?a~w2 z3nd3dcm%uyO3vPf4RDity*--YF@$e~SL*s#+>d-U`~cw*U-kHBK-K>?sPX+(D0}P& zQ1bX&sCj<>`@DUo!c7Th0<%!h_d?0{TBv%R9r($>%b@CgZQvb&4?sQt9jJbP5^e>b z5Bx*m>rnCD3Ec92&u3?-aXmbQCqv1}EU5Nt3p@r!gja>|8G+}(;aoo-O0V4nRsIK{ z>hoz*NcnY2c-+<`ggfj^r3#I3- zgldn+pytV61-=0#=i5B&?Yciq)y^*Da_PQOrZdWR6!K9qoz2xot23FtQdI8AM7c~? zIm)NkWV_SlEcZ*fY;Tm#cSgm`noK%ZigM}p4B%F8p}&-AEUd{Cr$x0ha|7wYQj}TS zN90UroMec-CR@t3=Q2&H+QsSKOl>rf&E=x@Ohf{mQCFcDl`^?ZM>(7CwnFq33u_0X zY~BJZ)8&qysHHPoCRSN-N~zkV>F!Ka&a5rhMvbIa?ulj>^5t|kUuuZj%IRXc6s_cH zL$tV1PHtH}deiwqieAj5YFjgTGUdnsGal$uf_Bdb8Blp0mnUMvih zGR69mQq5DcVur>lM(HS*U6Uc#%$jUwpdsq$DHKW>E{6vwK&~)A0v(0^e3{3KnT|rS zvlN;w)5)#AOtFK4)R#t$iV9s3ne}&eX9%Z8l{%wzcLDYU(xVpcErdTxfdheql!+K) zM%B@wMXHP_)R)FY*;1rpr=vCLT(&bhqHW3IrD+BDW)(UIks}{RaSBbTxMY;Bv~YmybH{DmzVJ_F5`o=jCUa!A7o@g!?aoW-Tg&xRi4e1rZ;D2 zq^9@Hm|iLu3;FIDGkJ&}U_gdH2J~RLKzHV-m}TlJMPpG4BvU$UdUJSsdNV2Y%~;lh zI8$h;xiB83lJcE}e5Ofpl;cKo>Y$Frh$PB|;$TI3Opi&qN?^$He<7z(r?~E;>hg$a zJ#7-I^S_!)cd^jl7gh2qXUn<&{mjs>9hpq0mHgkfvZOP=I?@mf-57Nh3%ykZ+-PGU z1?lc&rdgfoD@X19e?FhY(Fmkn8E#CfAxt$*(p|uRQFFwEmi)1fiVs7O%7%!^{Y>Z7%0 z(iF9t2C&Xp=gAO%gZW6*lHyotOt>_itB1?gqxw`gusEG4>xuU|AN4EZAa(t6k~#qKpw*r_f*S zld_X#obE&H)I?TX4BigUPZn?cAX8>3+l@7!9*hbY0!pz=FDe~GB9~dCskKvvZfAc{ zr7QLKV!dQbHa|B-bXv%*x4*>NLE1DJdnxcV}*lKTDl;b zX=^C^bC#?`%<&-sNrCz^US#x?%YCYene9p-eo6|fkXxgfhjk3CoLz%VHAJ~Wp-(!I zzo>2_E3$OXEq9rolzhR`DBanqWsR-+29VBp-9}34e925(TkBi|l%#VkzNEhpfX==G z2D~kQLw*Q+d7w~Sjo!&LbvIEE&u|IL?A|o<2U!;DHIJBv*^tVLW-eT~WaX*_GZ)WX z)!NdwtaZWcWi4}7&73obP+Lpep^QgXgSH4SX>m(u(hf&vkXa|Pr$u3RCZEx`($L@r z!z`{N(~yQ=$?Wawo7U}=jsclvc=?PH1l{6w6iU>W4lQ=mbm$9P`LIGQ(XnB)BG-tf z-H>jhWf}A+uxySrr%`XZG#TV!;x(6mML?U;>ST-SnYIu>M4{x! z7bPfP)DcQ|z0r+v*=!@6@gF~u=#5VFmrb>WVs|%xweabrMiWfOv${L^==knh*0jDI$77w zZfjEq_;TDAP6ZkWpMu7awK#Kx^iT4zOc}<38!_{jEn-cr#OWI~tNvz5Y5!UhG;F6$ zWNB~7Ff}C}jy%f&4MzzBGOQLw=efTmsw;IA(Icgv0$Cmym)j<#dUSi91)H=+G963) z)iy49=JDa4gxr!XXM3eIWT{D1sC@HUb3_CsO;WvCd>;Ak21W+Mj=mfsXSob!oaT|x z%gn?m2_mPvG7KU`?m!XIqCThlMBG_S4+DBt&*3$D#Dw<^^8D>_S{Ggp`m$cS0fADB^ zTar1}s`_ia8~ypJTMV31SloAF_iF8}0^6dkYTlLF*PzU+Wf^Wb@DRLQu2Ef1(=mrB zh&m6tQK|$Huq5JP7_aGl;Hj7U(xnnQo>e^teJ}#*<`oLTcZqIPVU&=ym$iSK55hSp zPia+-p4ooceYhbod?!h$D>?Ox5-Gri%b1y2$gu@JIz*seBPbniCg{D;` zisTCmSMaXi=!rfpQeA`@v3Z<7@;qsj^h&PmwwkiykM>(tajna{bA@(>QoJ~`VZ!hz z`5a_RDpQWEQv%=7e>u#4{5;vpBK-B z$BJiNjsPP9l%I7z6Sd#KF7WwyeFvGlt@KDNf0&g>%EsbXIn-Qi*Ne{lS7zHlW~215 zjWko@SgKJS_TOqIm`*ka8loPYrXVa)O+f~iW4&t;mJOx8Ob1gsQeg^KdWE$RGO&H=Ybdm%EnXOq6%FeVeV%tw z2~(WiumMfJObq>~P1b=d18ImxG!qN`;IC1O&`##pk>ZRsLG^=JVEw)8J()a3ZE!lH zIjSD7QY4xi(R6a3NxTy0%Yd0=(l9n-u)7hp_4mnbYennqK!=p#wawUIayGH>8yhdA zH6zLej$F3my`+wD^lnzF{q2g}+&hTX6rQM5&&rqhnM^mEZ!*eu`CQpx9${_QuuWAk zcY9)yTFhovx*f%ApE-QhfvK6X_k&dof{ud1@{~blc4lhU%-KgSUz(aF{|XHeYa6?O zN2b;NC2_F5KbtcPhw4@4p?~Y7X^Nk<8DC9akgmegj_P{TYnjS>+nLB0&8m+ho|5e| z^B{yvG1+ip1p8n`D3T?T$&VJNC@EddcHkvoq%KW1BIYk!wltcJF3Fcuv$VxUI$l{< zreT8w-;%uOBvfE>KwqQ3yG-ridr*#*NAW(D{aJIA*^)yMurBmCD^9bmt#dF*x*8EH z%>uquit5&|)M|)WZnc&BJF|s`h@6{fflLqEl4ubA(hUCZ*8;P&5f^6k#wx?QN4Aws z5J84h|30P-1i9$w9UK|b^^&~?)4D#<*t)Dcv)0TfRi3(Zu(EB$4TRB}mCe}@b;sty zK$%N>Z zEQBGs!5DGnvGN-87*Xo$)GS}N#Kie&g9qo6HAjCR-ZWYpal%m(CW|C;TbZr+B;>P) z3~XEY`;;|`EER!#X*7ixvb zrcaPciG5Z1n^Lo9E?ve3D*K+2Go13Nu-x@UU%cGaRU0Q-3N{~cRI{&!!=SOd)vLtR zY>b2q|Kd)~rGmXYCt1PIVc`^Cjjd=#FJpx1JlMe$x;0}S3DYY<(;gNc>x>zv*_6fO z%*YF)7D_yI4&fvT2;PK7sixA1s0~|O`_p~7{%(}eh>#K$H?yAR$ARoSsOIj|sRIpv zy3fSXb@iOEo70mVD|L)qE)neA{TX%o~C)0z8gx+mm5}6MopQu*Z=2&YJbHJU67CdmRj{T z@dc94EVP}rBRt<^vZ24iQ)a9A-_31qp-5y%5Ep<^jmN$KfpGF8o_3KLj>1S|OC86` zB8gVHZKaBP&k~U}-iXrAJYKPHJk6A>Qxs z?0VPZbj(E_BH0p_(O^0I__x|C+>Fk{R~uGG9*6!d#l;9WtV^u9QR2kPA{@3Tz&^4A zNL*6~jJA_Y9$>M|aIslMOHm(R8S@ibN{oygPS4Z^j%eXrwv$z6g!ITkTCZsRz4>S) ze`v&@sw+#DQdl&Zu}6RBXRknjy7AMOdwLt9@#7lDj~lnvY(W`iQX*|_3l@SYR+D-%&zv>R7-4Ts#bY0uM}-Zu#yBb`E)#B z#Z1?swWI3#i|p3b&S(qgy`mS+xhQ#NdUJY)@^VLvE(hhiz_&{@>r^fV-TQx3}4~lZTN`p;?mb*UQG2MnO|m z-z{OPQRj+84Je@jovG3s%c=tlv9~{ON7{5v`^TE`?ZJ43)@UkEb{@LQK)G;O_$pah zgr@GWG4H8h^8}t6k&hRc65~_of#@yKyJciQ`oGhFkO?K03RK_ ztQ}c0=;&kY1RMI)fA^tE21z=VOaC!XhGY*y5I;(grD|2k7M&`R$)cp+Ye>X!a$;)L zCH&X&@K&zqCX;V3-IUWxID~p}J&|Y#>Wt%%bz6$jp0R(L%{ymCc)aVx8Z2y^`AX{0 z2HXyEE7!{y_tTMDC~+1vgg6LFVuPjB932SeUpqk=bA8>r@jDV>IetSDzDaMgrwJ&& zx*W$q<4pE8SH3Elc)%SnQ2zdb&MuFF+rM2e)N;2P_`H25=|3lrRPr3 zw5?}dU3h}QDaQmDN3E#Sj-a zizmj)6eaCj`{t+PIzpO7^Yq{uaovwOkZ3ixln@Nr=nhq3m< z(KGV~O5c|=jio*|#G|ki>OKb4gQ@fQd3L{;Os!~2l@onhWXt-{I$F);E9H10&2Zur zfX$ff`{~GW^Kryds%6fCWvP}l{pgNR-y~{hcYAfF>^E$86j=^)xfU83Yo zPGW?-O=YsO^<^jLZCDgqRBLJ5Pod_1YNecRZ;BRl(Fv9X>(-=8ETXw=ECHJ=kd`pB z>cLP%9j`%(bG0h02l`O`GqR`{yWnOWzjMixNEV;@1 zmIsX%S_h?V8w|2z!!b*10ECMxC_mf5=2VHMI5mt}8?l98YQRR1hLVY1a?ZzkMK1-l z=#WdKGg_-NzG88`HD;mK8I?T%-WEc$R^nRX%kp6gmQq$^)`7xA|E zJ#5sDehpskF4U2|QcpQURRgWIaH@s!+xlo5faIOj)c?PQ9{QzBs-Nte-svt0#b zkh^b&Ed4lNOy<3VkX}V#{{&UZ3gM)z4y5ytmawtclwC_?p%RzQVdu}>=j-0md|a%` zz@`zC6F-@X+E<~{l3<;UiKCY2`L#M}m5Gi(km+4^T$3rL+G{G8TZ@hiDV?x{*XuWw zN26-Y+^}6WI$GvVWM1h)!T45ZhkSL``hHSAVvUm~IXgD5^TxB=RwO}5XmzQR8@AyU z9zuXa_q&8|DF66DjBY90Fcfi_aMU4IZ#L<25=UeY#Ll7F;ZecNBB?+7F%LaN!Mol za6*xWX4E2qh|CLTd@pm+R>b77?NSpr~}3-m~9&Or3cmHI0KmZ>@pi2tlI4? zKki!jqOj(*Xh69gk4k$Lnto)ynfqCmqnW1+ zELUN4n5`_a-kBjanFsTcT;$IpZJ7c?Q)Iv}PIa8r7c6QOALNL?Z6$KM`jM&8654>u z*kWy1o0hmV_e@Dp5VRUTdC> zpwCpDFgfu0FsFoNuuv=Z0UD=Fnc~UobgUf#H{Bo$i6Y3*(orm`pyjb0Jy(rwL`Y&> zvB^s9vID%0(Mp-c$$joL&y>T;ZsUR}R`Xw*76_>FeLDU=>enJG*9+RNH(F8#|5^7eHX4lH-QjFDcmsU5vG&yLLJ0&OY^ za^(YLQ2J&bBS)FqF`^(j6gsYUIBedGca4`No7LHM_3;6wd45#UH4FI__)pTGtOXJU zksK(+UbL6TX(eiGo4d9hAnBz6ZIzX_Q?72Zp>b$&mR=;Qw~O3_Ufi-Wi7jc;>0xz1 z*elYDU_LL}K@+4;HLTvbs`r!1;`f(GbF_>_ zu4IKn454^j34dV_`(HGv6uNtzXq~Vi=n7Vg7OX>r)G|+w&s!y^rrSGM)83Nnzc0{~ znjemZOL=PA(&;v>30;Hn)}JOdl#@+7GI1L_IX~0E2JRrw=J>D!hEhK|I!roM3vfSQ z$aLrOR_f{R>Ov@3hML6`3mHPw&INbm^M1Emv}_ZggFLEU(57&-hsulklT50>ddJ;e zL9|CuTIg;`pHI9EF0Fj)z_tX`-SPC&X{p#^Q>TmZ0#v`TK}HCQpC5OHLvxx^kH;ku zx_ffACu8Oso#gu%h@bofgu`16N|(7~zHMOBYR<|z^RTK?E3252xqN35Etko6mwQt4 zvA9b7ivq$#@CBWQY(-v~P_wSW^mZdS;5!Yg~S!I|nf zx}_v+eThFHY!tW}2#fFVj*mT7IT@s96*_)6?Ot2(+H;;w&(cI?P;QjuzOW;w@NiWBicB#rHhrT9A1q(dos z7nL(vVd03f$Tv<{yH+ds%3TZ{KdW0GKWuK>A!V&xp#`*;YpN$R&}jKL>)%G7oz1mE zdCUo{@?r-jc9hn%v1=}FC3kAZYYsgTbV!4loPKuRI-& z7dRh0f?L{t4KRVk-tE%yB|BM3>sbV4Hp#v%Vd6voo2hLF;%t&43kJuKB;#pfqxstON1KJBhWHAH7li3< ztxep?slHKj#5dy?Te#F!;2&g9W)9^cqMr$Bu*;fm=m)vnWn{4$(4MP2>Fxl|@h)h; zy1cTiKmiS%|2F0r*19AeAMfuBJC2MBot5(q2lTZxn0EfmTNRX=d81Vwvxt1+MQpf$ zb;svv;??gu=P%#7Cc*jaS6&Ci*nl;Q|Gi`=@K6&lABH&u(Y4J6P{Q6;} z&L-{B*~e?p8g|S{D|Xv*qpGo`uZA4rt6i9k9$%vC?XGZW-7T6R$*D@ju;+)hM8as8 zbn+rr4<;XLbtysf7GT}URWE&-j+VA+EjKS)p5KonO{Y85Nq!<3185;zeJs`Fy5VJi z(-|rEt4K zh9>j_&5UCjN=Cgd(OkC7rmgg)Cbg%1ERCi_CC4kacnzjGDtPN%O?XFj(=oq~} zYtpCE@^OdG#uDw%&LXGXVO7wlDbcUfa2(e5LzB<_iZcdi(Eey0oh zl+$o3=i4$}*|lK>V_yN`JY~6OYOD)F$=%W1?8|~?`zk;)l{XJkxiF0i;z{OTy4uEq z)-h^EUtW9iddX0-ZFZQQB%oS4s4g#$nz)5UGq3-uxtKuhU1vnmLuRGZt#(R6T^}|+ z%%{}J#|PM`uoaEg`7-n@BAp*R3hR5>Mx7Dsr~|spZ%fm}w~|?H-CJr`8%DNdl^tqJ4YL1i0n z<20&^m&n12_7$!?xs34v77fX+O>CmqQ-ZZsmLhLmYT;S=jE8Rfz9440YnhTg6CB9e z>2sx^zxcn-*y*AEK3k)gvZwHE5{}4;`4xb^}kvswr+Iy`V#t+zv->Y(%J^;`c;55-*%OaNR=qZnffP*q2(= zo?4`N#eB+qqrd_j0P{6;v@|)mq&xNzrA2bbr}$Uzy9_l=xyom;28D7D8VTX^ciY0Z zRgj*_HyHg^(ir+iqBI(9XK0FAb?7{7;q!h+8RZZsT%GC$FUC!5pW+GTiGQ3&&Xn*D zsXKnnd`r@2jL26*qWooMgA__IoESrPkl2q6tKH)r?&8KCkg@Lfv|p226!uw~*5*na zHOEWE;NR%pOZB}TUZ!)afrG`G&4N`oa$?uyOxGbvD)Gu{oM}Q%v~!1}cKT_+qx|mwb2u>|7@Spm-zoZop3n45|#szj@ zlidm1`ud~=msNr4Pr@ilJUDDwXAk+hy82B;oz}6p?3w>Mw^g+IHwTe*@26K8iPU1~>Ak2L5^x%kHEv@r+jJzLJzD z&5p>*#IZY>yq)8TyT5KiGRH~b`OBR3YC<`R%zfaCN9zY09wyk<8ESQ{riP@*qp=Gr z6IGk@@llVBJmbcBQ?!_Ys3VT-G-0<@6>msxRnitd@}z|wdF#6^a!_dJjwPbLO~F2G z{M9Q{Jub|W*0>e?tu_vb=p&)j*R!JcZ41$AiN<&OTF!?>8*blxmPsjI@~LhVL@}+o zGb5%(>@=Z>>gw@{x_w(YNGfwtW)T`)g_<6`$TK9B_L@aBeZ+CI=geF-^SBdEm|>|- z^?#!|8GW5YgCs1{f_Wj?s9G_FF>iW^h-L=M;&eA$@{$qCgO@skuaQPdzMdFw@m766 z(La|bZ4!Tevgq$c>Xc_g0cid{S!ZUYWJ}1VlK$j>pJ9 zRvp$*Cf<}ot?5p?xDJ*m>Dt3cfq&?NS}DPJKO8wUA>$~#Yb~v)Yz8RP3@edMMW=`)naPs)wEvhM0T)QhTf11!L(@H@p3K zWB4+{zCy&f4;wmq$xWC1x$wffZ)l+*u-a{J$XqVw?n3gbrJ@rrpGJ$CQQrV(0BhRz zb7u?yw*zd(F?C6&dVeRIT2*li`S{>vyh^0QnN;nwZ$aRiA~Wye2#3b+{Do*5G+J}$ ztrgY;y?ic^3DYbajo~(*liD5=L^^!b$-G*#WHALe~ z>-yQ#>O%MymmYIpZ|v@mH-W-AW__|t)uL0X1Ut3l$dr!0a9)C({a{VKT`{$SdpUe# zR@XSz7>>^S$D*n}W~BE+wU>}ulIK4^46h=^!yRjlT~Kai&Cp~ypdKl9{Jb4^jrXTwOT${* zly$Xl7UA<`C5QSpvL$DNsno(*lg7%~G<|GZjcR4F$h{o8$+P)lqM=*WhM3k7{&hLZ z;R6jj8sEYa9eMHn84VVe<>5SkWkrx%WM(91I{nLHjB5L^8|pePqh!Ksf{#YN?`HGChb?N|t^O3RoEi4{$oNL^8_m+L zmU%gnBLbF8q9@|MpTx^%9gxNSfFS+O@&EWs~4u!9Gsy?^H^cyD45Y1MNB@c9_mb!l^wuMtm zvuiWCs&jwr@A%h#(^!%y^KGJ*#KLU9Wqr`{S@qf zO@-Xh8{AaEA7l1I+aRETFQw&ps?H9>Hbk-H_`$Fh`T}=7x{E|J8oqv#JW0qmHDjNp zW<|@|j?s~+wpG`QE0L#GcB~-0aTnXl=|0;|^o@F!__8VN_>Dx(R@v5z_Pa4jy7F7= z^>Lk}jq8k?x6dZ`a(Xqbgsv^i^0Y%7w1<3^OeIVG>n6crFf|oi{Ql+FlTK#U7JK)@ zNm#5ZO3(a_rbHaf<2afNSq z+VmKoWRRi>%A~ex<)~wzv4y5~w)Alc^OuZe1XKbQzt3O!3%h@%Ot4OSiwyPPrz~-4 zXW3RbOc6PzpcV_?$KVg%N49^pQmOof5hLGc)!vsrY|ZDJ_$(rS#9wqOp(IO_^i?NM zW5XYdS~|#=q>}GyPfZS}S8{I(#@(pl{(HVeI>gKmpPQ^tQ$BIt1 z6OUNxx<3(O>AIoE=QT_?4WsVNGdbJmF>=vlHqzi(5joUE3*BtqJweT)alfA66O^ zr1sggOVr9TzVebyth*n+6M5&WKHQe0%Qv9;bPKLS`S#@wuD5&Aps7~gzO_?H`Y@GQ zn(@SDxoK{W_cNom1&ik`Y|)IVSKBI&CNHmYNpFtf#M75(%KF|GKWi1{jYELz;r8HgbP9`uP;zuYLAZh_Yb ztChNBFIlxDDcM`ZIQTf{B&V6=M~h3whOK^4Gw6VU#EF)qP$>)29$abh&8l@Wy^aFX zi;=Q6TQevlZSq^yW94E$$-q53)XzRrvwif33AXaHSBJ&7?S1&Ll-4)(FsnB5)_rW| znWaf$VYQ}~vy9{zuzThQ@b!|N9#Rw3hSRNzz%SWpy3}Ph?Cq6Zlam1#?UHY<#CzMC zJbZjtHm}sTNuHJCsc{J#!|I-P8A$*&qto39%?v`;CH9vcI3 z*c3O17VNY6;i43pva)TkO#CQjAx5=*E6lzkXsK{XZp~q?<(CSei*piQjr( z2#Zw|zoPPQc4Tgt;d5{FU z{Qb-L9ve=4&@{e_`e!qYF(Tt6*Z|zqzK&)?EIEu~o7&e6Gl7Jauis(c+@3%S#VSaYM~k9nrJm1hOOp&o}>#cD~uby>cy^jFxYJxlP0sX1&YF(_?1uE z#|I6_Bh`v~BRPqvfDL7x--?w9-V^E7N`b;5cHD(n)~Fi)dZO0MibJu&l37~F=Rcjm zVxvl#X=gho!Zna;TQd8|wn;L)^qn&oF3vadlAAuhujlNnksU0rdZ`#ZRfEk2$bhpSGUnS+A@ctlMyqxfwa{iagYD<d!1g642hlQ|wWP6YL$bAU8PsZDyLR0t+`G*9O+Jk5IpUSXy`>dK^`?ru zSf#3~c4XLK;nSD$1(LHL9ih02WbQ^w#$I==PRUYd^7?Nk&wF8u~PDfW>43_@vU$s9d~h?eNYf@oxM{Og65*+ntkjbT(hY` zHW0(0C)-s%aJIe$#ot)_oJ+M|v8`7y{?sErMI8t^B~vW0_6py+sgAM!`LfE>@xAdT zN|VM_B|P*NZ&=6ou*!7?1A)~+AOFH;Y&V3I<0w|BIF5c>(%ek{E>cxO99QY&XZzS$ zt{m&bpGJG@1Wt0#KlKu>n(@?Z7E<_qtW?z@ct0j@r!5!`I0E>s%doQ1%cweDpm{=_ zZrxymPU~0yG_~AjT3#{0?NFh<9%DcA(Shu-zD%|8F_p^6R=UDwR-0ApY*gVmlh@l! z6a0l1U$X2s?Q&Sh+Y2V7aZA052IWDYC@5h3FcoDP4a{TFlS zL9MrubRRt2$3pR!WL3wiFPjj@UUgK(^~RfN1fSxqCDaHdlQ|OMn^`(0gKCIR?xgMe z4OUU@t_KSvF$=2aGRxKdSSE8-GaJ8<)sKE*K+u6uo+bCP=GpK zLhfSQ%Sv9E*|7k%*A$nZj?&<>WoJ6q*OR7U{o@CzHuDzEEb9*(sQMSrbDKQ>;~f(m z2LUF1|JSR;n%hE+s-C3qZ%d(W~~u7`88~A;;lGeT0W?sA!p9)gX#K zU!ghJ&JNRF;nyJBc+pQL6{eijuVlfdRDJxESo+SJOxl@dn-OLcq2gk$Xu1twm+Lzy za^`>if*Hd@FVnflo@RR=&()`v*$2RMYQ*-wkv{t(v@BaYHR)d&>Se93iBLlT8Re;N z{aS?hONv@f<26UKvfpDwG4VZu}$$7gl& z@JDPIu}7j0HrY6hw}{Qt;gL%rs@~E@PpGxR##xB0y2mp=_IKsXl)ru8LQd1WI!v>c zla)h;>%QF9lv;+Wh-X~?*j#gEY*l7ppQ1_74pEwQ{N{LQn7HJZOh{*yjE#Vr&j{w@AEMw ztN4|OVZ`_-uQTre(WMRJU!ISW^}3yN2(R%_ukacnE7XuA_MH5ioDoU0ZN*tFn$PBX z?agXbhc%DQHvUty_Eid5mXUmAob)IRu=kF@1s8KJ%O2vWy6(O*Lyb=5Py65wAuSKJ zP%^(hY60EsU)&{sPEWW=A}lfSLueUY4z7|=+Ug~;eRNQp zVVW2uBzT0i>Z~Lgp7m*RBH{y8@HbX4UZ9@a_ckdKw!FR#d! z^i!9y#gAwe_@zI+m|(M*nU}6YG}Xml(@iE@jp8r?a#%!r&*lY9KI(@XT%VC(g{xP; z>?KtCL+;FE1d?uby&L^w1G*H>47*3t#O3`&l$>lJvPqbC4x>uTnsCk%C9qx*HXix? zrf#ZJU%Y!CiN|r@N80F}xY)kmA3ysa^4aKf8_BcJ6f$;eJR%XtUUtb;8#52+>*h4u z`V0{XmEJ{;ZD8~8R*e}OsP>(lA@XN}Qi`VAof+Ev(CmTI!jfWTRr!vt_EeQ`nVF{c z)YJJ2M)-k5eo+hO>T|AU5x4A;cVuHCgFZ&lswit$@O$j6vw-F~s&4mjA|K^5%s#RrrY@DJFeq2E7yByQbt+5>4%W zi-u9ao44|D-8jFbBdp&!X|M+pYs2Td$;Adjx0@cU-XrpBE)KmKqe6&m6Ki7)Tu#&q9`7OAwX%W z+uCFS0tACNCITT!C6ifQwOQYG-&WuC3(PCbqv%QI`~S6;?;QbvVs_|&j4 zIG`wnqQ2<)avL1QV4sk4Pi6Z?k3b!;O?@l1aBC`4rjA@%dgBXu0p$jh*Qk zm(T9{kL4R;EtOy4uDiJRUJ0=a@?x3KY=-$oy>SVWfz`$S`)I|vf2$6Egceox&pN2p z(e;5gIv#ze81xzGsYj)|uKf02|L33XaX2a{AW`mb=6k5QB=WO!U$V6eZWjeAHzWRf zA=SwOFYT-@<@)~{>aOiXZio}*?~HF>n<9UwLf*LJK-JzL=%>P-`>%TS`uaq{0PCAd z;~uth9N_w%E@x|eb=)J5-N)ek&=xuJFAr_9`D*0RW|K^+y%3`l-@*wO_YML*M8A<} z3CmmvGwF7?!Xg^JlvIP4N+br&e96yon!HUoJt0ISq})8=a(w)2k6Fye(5)U+PwfX1 zapycgOi4#Hvkf<%Z4ORsi7~fu-o4Y8kb~kh>D>pVVRWi8b8RAPw{aMHJe1-I>}L51 z(?onwLCx%HJfYqqq-h#f=N5(6;7#s!R1sBw(zWNP_KrZIh)bSzvU{GuB>Vw^L)NrT zPzNvb6;>yRRPE}E`l2wS)jpjoBIe>hSbIA1jkr6>y0ZyBceG5ZJQ^4@OPgJ=D-5*< zZ$M5=#@&mZ`#h)Z@L0is@$YsoPL%eW|19heu5CF$IR6bhkFiAMc4Ys%QxN-hlGkC} zAWyJ>mdfcYHAD;xA=4=dvVv$oIGiWW<&m)@ex{$lWI%Fk;Kdw(_`LOrfbaYVrXqp8 z%E2LVee_T@7VDe&DeALnJ9R0|;{eBb;S{HZ3DQ*P)$*U*J6w&^EbHG?wARo~&Rkva z!^K}1YSbF&v%*p5$hA=YD5|Lp@V5_>z0#$JW{DYISFe9UMQ`*d%-iY13)P$)${oc_6y!5 z0<RX`=ZcJZwxp$_>u^w+n9`6BOPMt$o67Ex{HN8bBpObrS4U`BoDQsDzRPCHAlJrOry9bl`_%~p=6N!w?Aq7J*xrUYkgy>| z#Vw?kDR#k0{2EggJ{Z1-JIy1x^Y`JUrdI1I3kIQuapKqEs6J;Uc#73^mc2!I#XJRc zCqC4NU8%VZ$!0IA=!rPb6+eXLFEh-+(5+pVboFu&GWTkm6)txVrSN61{U;XJ4nYz@ zvIbUrViPG#7Ur9&V+!{iBKEvj#OcJ_HU$Mf95%7g=Ek%_> zQG?~Jl(4k&+rRvGV#DSa7v4Vz5QrQjntejpc2rar50&84vBLbS0W3o}*{`@~Y2oL7 zlmQ!x5QzDjPNS@Wl#F5^l;=`Rdz!m@i1maUbN&_K$m%waDE*dVSHoB&r)DE}-w8^J zzltnLIFwoVj%_X7i??Dadiy1X0>b3?nxyp`K|jCKUA2uuZOLjnls2t^H4_&^stK;Q zDh<0!bZtExnS;QDvJd)T-fa3+lp`-Zu6n5NVdXF*5|QG~D3>wYB0g^=j6`oZXmOJ6 zPLf99ecub?euuuzhI1ROk$G6sse5&oLhrxNc=$Pc2VOZOoGnHC z9(qHuFTA5}qJuc&bUMf%R? zQ`L59u#=7QrJ@E!7M@THn*P`>Vz|6qRj*(*`?V0CPuiFfqTWzym~EAAHbhw;iJS`-5Y`$dV>t8!}?1S`mgK1_?H&q&ygkV?)BYY_bE)Lt6Ac2zYasiF{MA`^U&DRhikL|LmFD`|8B6BpFxO6IBG@Qk=W0|H}? z>%AA>c{o2Ts2~I}Pz}xKL@4~S4X>eBX;0PlP#QbgIvq&ZLQjAwtT28Nsn) z#FkjjlS4{4_@P&5dmTG8Y%y)J;cSROhDz-*DdP>Wa>)XBf~uCui#n}BOm z!qJ6wI`i}7p-R+PikYkBaE+F-4lz@Sq_8~6!I^eh+6vrI9ED%_t@yOr;cx%^FUb&p z`{)0$$P(T12(g1UnYdEZF46tcDqs*YV114ZY>Uqdm|n3oS`|j8vW&=Dg&a^m9r-NK zTCSv(?7Ji-a~m zCHEF*tH;K}8J&AKdksO8)ta!gJV3pL{rT)su89KUdWOnV$VY+w)05`T z;tF5miPoz)Qj@Ox!`C1r;rQHT?2vVlxVEgYGma-Qbou?!3w^kpf$ccY5EZCNg=B-l zxV(XgClljxhf5;K_DaelO`ptji79scQanQ!vXODI{^_{um@*r69qDEll%78wADo_o z&5og=(Qp6dzm0TaNy6=&tTa|bk9mt$%?DHmeXCGXrl3Sy$II)#3{ST>V3<5iMwSst z5gFTvq6MnQf0fKaznh#*e>fy7#%v}^fQ34sADo+@nURg#5Z3S=K#zSElJY!6@Na}0Ek`t+$&NxH|WmDEyx956bf`Mh7h+tyPeBM)E=Zn{HCHN4( zp}~zi!f6$XC}R0+_lsYUbmtep0^$6^l>YkJ`tBE_U*sk^-}^yO<*%Y6hr_$IKe<&W z2WMwS_Xm=qGw)6#U;l%o2FESDp6~km@z2!Gi>4bcAO(tn7|q!5NU$B2a`{s$$!&)F^8=u!%q-(Ic_ zn`P0V?EvZV@e(;cny6gkx@4%Bt$;c*NCi2|`i5{rgGSid;9{>!?@}nab-dw#hyg>| zKruTq;15dUt6E}ku#O$hQiSrBdnp~o;sf?pnr%BIl-YCLAW`99 z!%6dztekZke;k%$Zi%*l9kas4Q{@~pQn#q`qig=AZN0tyWHj}Uyr3D-kEheUE|H-% z9*{h*CTQ8!qI=$=DsT(c+Qo45A>e$lF)pLe=w`2?LZrfn&K2F!DMi44X5Ew!wk|3v zrH0)xtsl+y;-A;?&vE{98vk;e+PsZ_em>W~Lq7~(@3@0IzWa-5`Vk+XV#f z#kjrbwf|!S^w)zIc->`#cI+H02?SVKli_9s!k|k~v=LC4--Rgpx3NP;|-8g5b)!Xt4=@%KI%*Vo9Xam4Q6lhxkQCW^Az0Yav|}gqn}rCEC`r)2oVYK%VSG5 zJDtUY%)QLX>q0+kss~mFDt{m{B?-NFcFlE?ME*1DESy|naL zc5i+#TiZFkJ9_YR||zrA+*4*wh7 zzJ2%h?LXe;|7f`OoEl4dX14p}_9y>t?e@Rtf1^8pfA{v^|MB+U)9%S+cCkjljSr&ob}Cr|#v(R7UN{ly1V-yPj^Zp$a*JO98Vx*JsD z7)=jhlq!pGI6*ilcR}(T2BsSG1BURQrVsc7T(?1!6SgLj5d>#8yH!5U#TKK zdg_1n=3;D{9M8a{Qg}c=-6BM0Z$gCDpoQLb7xakBnteWWguy9{&O=}Zh4`XRPmXSQ zVs1P=-6bSNUx*OL2-#)89G{NU4&{hYujv^lu8(d&uViv_=l=PPd_C}da8JpJpP??^ zo|9IX{&Dwr?WKkZQWqXeC(CpG04)=TLftFw2RRaSUF;O`u1w~dmV(5^uKyHdi?dbw$aMN zwvoXugXZ1Cq}-dEd3M_jX}EuUGuJwmMM4|2)T9Tg!o|UKG}}L(PY~(*B<@2Y^HJ@9 z!~Nr3LcOR-!^}LhFN6&{y+Ju5$Z5tw41_SSQLTd_+E;XU{B3<8H)NTakC>wn0d%PH zN~;}C7i}W8n3iUmwj==D4^KD#uOA*g+j_C{!~L%}o^MwG@;mO>`S$UHXFuF~vH9@9 z&JRz&eYW%U@Fpq9hm#9ddbJxn!t3Kv%H~cQAo}W=CgXyVEw=^1O%J;}Nilbl+DKbA z1>I@1cBj$Tog%MK#_;~pA*|?-P1X@l`!%0^v^jd=^l(Za%svzsx~Zm9TZ0IUX|58r zEcpME5iBzBH(J1N^a={i?LIsEq5@;Q46q3)WG7UB5{Eo^Jvn1Xqf<@+Q)^dygMHaz zXg*t~ld~^&h@&#A)6<7r8#cfg#AwHAs%O6AS?5#GOx8FUrs!z-v46{_)yr3CU3)2B z?{E2>1CAkVAxJGS@^Ae#*yWqK2-Bm#W}=Vw2^q?5S_><#J{Vqv8D1V8SXhcRcbOnchVL*N*IcXYX%0zDH28U!~s$=qyvV-`TzbwGUAj z^zP>u$|w#21MG%27i12VZw(p-m)u7hQ<#1K{0&ka>#j{7+qNxUPEjVUY#ib>Zc8!x zn1?BgD96$-pfm~3leVA6Tzq$+USM99NY%TsN+PXXq z)nPIm-aC7_G(*=;$=dL3yJ84rAwT%3e;zM)G(m4WJ(>hNQg@*@y_%Zu0>Z$YAqXi= zl7xCGzx0LFIIn;3RWm=X5zKH%by9G5dbehWqj^Xlc)NnoSgVkoyZg`%YMB-oO%ZT< z`mPQ>R2Ul^pF-C2*ntR1Za`;5S5a zkBY*y1QuJcUDeZ4M+HNd0)KKac%>SV^b+QjV91lHj`-ri+6(O^us&X+lZ2{kUHVA) zisZGdP7#yUYwd)?eXI-_111?5jMaV=8@%D1p?3%pW0OOwmPzgv+fwnDr+`a(trSmm6$gHK+w|ePe>fsNT7%6mM9nni8S^6fODdtP7Tq|(3uj% zrOKMZ5FjK3AoezEI)4ne}I;Hq-%AM&sJo*ZHhapdh5 z)NW;KbR=z5)5{A%wo|iC?F8)|UNe-gHxpoJ4Uiw;Is*!WTsVDafu6cYhNAS4`L2YS zmTYZwk3C0subD*@5xQ_Z(bmFx`SXGj065z<{}?yV`K>qXAUt9;pA zy1K|F)%{vHRn&pmZ=HPm(MtT#2s|lC{zr81GuXpRrtyqtv$tTbtZPg{AdItVcVB=~ zzesun)FO@{)0YrH&dkCRHHg7E77LlM?p8bhk{o?q?D~NQmP9}5^{1#LgeuG zsF1}(As!%C`eV?!20Wj^%7Ql^xy!Iq>Q)Qgqw-C>!N#FtpK)|{vSKz_A4dQzeoL!N zEmV?OP@W%;pQe+99$+65Q-ha)Z1!?98J7ZKT z(IIITmT#@Oe5(g^y1o7UE3o#&0+1m8L^rfA=e7d|Y+k=XBQs-*M}zB5NelEN&Z`tG z#x;e;^nC1|t5_Lnf8T!p!=sI78$WUf9JvG4~afK*#4X_HcD?|E~&6C#utB7 zvEVU|(y3>)ebO6gM`w#k&AZ=LnC@vZ8yg>5*`^{L0x8)@2_$`RE1MYIhWGE#0@!MD zSbJsIrjURp#ykRE78}Zj2UjgYS*bVp`?T|=>l}>UfC%iCHEHDqfa(ecGPF%#;6iPR zqYz)d?qL7uW)tCEGe5r+} z#g=Iyg2n3bL0yMKq=ftgL)1Qz2$kP$4@rJ92 zrQqF2yS7DoJ%qwVF|X-?*F3EMB(HlJ;yC*bLAiMdl zHr-6!!940gAC8C>kcW7J9}vRUDsZoCg?JnBTJs4mwFO}1igeim9}fBp3Cd&vQN>>{ zK?NCuADZhHfrp-9cB8o!qSe=R^y%7 z*lYS2F8*Ms5#rM{t1_nMf}(Ru3k7Exl6^z=}kMXp_*tq;;^1000V6B$oC$;Z*P1m*W!Q6ixh#vg~pOTgLj;H|1nS4 zITx&@sls&Gd0MZ=Z(+pn_t&WU18fyDTfo)TchnFpH-|01G;IO&YH6tFI7iK3faub} z0Hml&A5)R$^XV;=GW-CLyiNo1Ama zeBf~=9?4^55&H=cJ+|zdIeZ8}@H40-s_KPspZj0Cki+;}yCFgKP zr)SbDglv-?%;aTMX09U?YqcAwwR-5Sf%%&$!RR`IB>V8Pjk|k<21(^Kq!G>2_J)_X zgD8E^%8!7Kw?;(zZ#!oH)@YBAAbG=JAzlY^`&t7wR4$UBVfs~4&P&2y# z%HBEMdo|TQl$Oa5Qf-pVwIZjUAR*v8)%x9=YChn8Mwn6N!=Xooo%t)&9q3^VufdeM zKg)XA348ZoPRv=zaV0%*Do#>7Yl7Z(G=)p@xI{)!kT`M!^u}z@uM`mmUh)7z<2T5Y zo@~>|p4fQN;3cDf-(LVsCuei5pWb-D$Ax#ssxNPA-xU(-@RXDr`M23$PxmiC zc1J91N?#_dXbw+tr@#--rs#bu;w#=x-b{CChgJnuDO*7t>)z>4{TGEnr#O@`tY9@1 z%)6tXZvA|V%5>yAaV`(lcSb9yU`Smk-)sO}i|xJ|s5@bq*|)l@J)FAvyP9}euWVqs z5-9Bn=oMyacP}hg6fDm~*|zJ!ue2wjC9A%eFaX}x-GC93_akD3qP`wgKbolOq%;D6 z54=(-GvCg9f|?orTYWTK2cYSlk+-&CWw(^Sf}C;2yhdFHc>IP*CE)MP1eq)TDShOi z*%%akf^BR(N=BbHF|gaNlx@U3aKmIKnW~KkS`TqL?2<;WAuetU#Q7xY2|kaG-HS?GJy9)<%y3M6d!;Qn7eTp<#anzXHCt zZE=-Bvo`9j5U=h-)Dch(L|7#tK7x11iG%8?6q;Q0QQhFKWtxZnS38h9P1?yJmF* zXD>y^yv1ucvpLDokPV`tP#i^D!VIAncmk6EIY@NKeCZ!!ZH$)fDUO;X7gqOy<%plq zr=N3e$5(cl56NuRfAy%pnIB8&4^-1Gr@qaxC^m>%UagRB~;^9Jf8{tl0=n~?R z>wSGo(I(QjVCs;c=8(&fb}B@5VQV4YF7<_>K&Z7{XqXDZK(xfqHh6Fm!5RTW7Oru) z8rmG^X)Nc2)P?WKcjtG`)$HX*wCx^2Iie%8DUP6T^QE$ zi}_i%9AJtVV2YtGQP||7%{BhKrHCA&EHEYr4>-nxYK5wIZ;COkc7c~bP ziG>~AkamtPj1e~v2FcG7G#SneZQlsp5B)tFSh$dIK-7UcHdn2i#$Er!A;G0edM`4F z9KWk6{`RMziDV|H0lT|A-)IOL@tO3^+*#N4iW)B%W6mQF@jJ>Oh2%Z=rY{eVQt3!b(Qx9vRp5pcmB9d5243l-JcPp z!S(&o&8XIQvoU}{-iPLy{1G*i^a>?a6OE20YXm;A5XFo*B0klY4T|8+Uw*x*oOSCS z?P`hXK)cwH#s&U{J&m@tb(vH1*nT*&u&;bf0fW5W0UG1dD<$S`$a)ch4lc-a9G>!0 zP$GnontPhd{N~N0^EJAAOpgD+7w53X0ryE*-@E1j21G~2jI>+0ZG$iX zgnQqslQr_|_wsXDJfd($Ktwf7dJb$Q$ye1}=p21L;^%vMiHBXO09o#zv?8>l!S zU>??oQ)IVkvDY0rfma2A#A8FvO4X~Pol8}F2s^9KNl2HzZnB@yM8i7qM>g?6_YFv& zjbnB>wyncGYwZiwz@4nkC#XmGMo&Cf%~v++ojL6Zji%J^!Q^iI!+t)7L;I55$p$^c zC#Y3Y=I&%hK0)i}8W}p4j$&O4HqCq2k+=@ z7&td{oIr8+;8>}~7xOnTE(y8ncj%~79RM8_r_OodVYB83id`0v;3dDr@DBfo2of+? z;iM&c#5iNd(2-{<-;i+wke!Bh9$C@?%wQtcTMlsmKib@QJYwwFpCO>n5IVL1iIF0l z2galcO=MpI7GI7w1h%9`0Wf3R^+>{$nPZ}C%UUXbK$>LY3P+{9xr-SMo+)Li48R3nR#R$cA+YiXT-1A%5d!$yGEG zQ+x8EoTg-;5(Mrb(9uC$SOfTxiNY{oFWglMaAbqI{bTX*Q06Y1!Znuy<{glj|AT8`WrazXCI80Qp zP<@S)*U!8soi-3RQ8Q-fj8opobY?Wa8_?kAyt^a4=b+g@x>>)${>pG3(tm;}mBy!? zC|#`J5=BtBr(CS?MmiiK;ol5{mlHx2<&0I!&*i{MWqRGg1A?wGM}Y1B^vNo2ku6w2 zjj(4EOArUv<`QFRWG3}`z)AAK@GSYbMJ{X~qJdCB*86t?EAueb;$ z;T4XU3e>StDEuQ)&_TQFI!Y73th_tM05c1eV%$BzNcNx67cHMp*Jx#1(rzPEET#xW zLQ)cLp^GW35=$>i%-~0&O3Mgr_Ll9+{<`WvX%6<7mjfA5{Z9(=mV7kFc}_u%{wFV0 zWi3b>{)#G^#44Kov`kQic$KQz-;3-m>s1WC?N?jLHOFlk)gx6DEPlqLZ%~o6?J{42 zCrdm@OxdbV(UkP-4)gX>*h0oO)0q5roz_mo>#k}8sYuh&(Xo!UgkRWST^Jhk#C|2Z z{a%L6xJR+z>Ez(#RJK#E_wtGX33#3eUscsIFiiP7=ppkm>Mit&Aw3|QOEK#|Ds!Kq zQI*T&X{W-#;Wn5~`f-qo1*Zeg!NcKzC_$IAWdUZ6lyZ@JQ0bPJw4pY?B74alrcl8< zT6NsY5zUIG0N`OxeDkSTgA)XDKcx|Nv%gQi3HvV&33O7toECx6GhKZ=q2p!;57SMJ zScE}+*mr2~(7hs1&GrHgKE-kDvTl6{o7hrxlk88o@zHKo3r21w_6%05SIiBL5k@H4 zt<}5zGhM*IGMOwB)dd=l*~ju!p!Cyv)6yIMQP$BDM;|_}5TkIZ^omIV&WlvhXl6x6^K_uf6Bg@oHVJ*LW?_Mi~J@Hb*0-=}jnFSS2yA7kPQ zyu&X8esTIb{~-qBjf&r*JrK4(`V(u)V|fyaiF6}53evk;zXgtG?Z{jB%Aa97WMB3V zu_7v(i3#y;WffC}V<*a$r5%&E+(qX?8t9I}>8K@SOKWYiuiQlLSHjUdNWAgpSAp+* zJi@HxZEhm?B1ixs5vVkj8Cg*yVN>l(X>0elziZd79DVy$vb)<5NyqNqn{q+vR&5Vm z8jV!tgKA~jAI3^D-*5`8Bo*-jF@LMA!vL5JPe^DtkQc`~Y(UjVloGCu9x4PJ(M!R+ zMik54?xBFN`0Flm$22M9o#jUQ`Da5}pE(EUA_Q?8M_JS-RPRHJQP5k3&u23YI?FK5K$wUwiwYzA`enQGb2uIS{{6 zkqsLlbm9h;Cr|fF{DbK{@USm}NBnCk_hw zs$r2W!qYLYdA;=g{8}U(NVzfJb=5Fs_@00O)NSX7TI5w?uMd%UoIup!mj#k0UD$k& zUsKpn8Q4lGdkEp7jeIix^B>2f9ml4$L>wm5R<_cA*}+hUA=ICjT{m zBAF*>9Q#+c8Tw)AOmHN2P#W*_D(#+FFQtgQa0<)W+v! zW?NiNIsjdMqdE_t$YhT#(-@w7Ll@msB-|0C?grvy!t~7Sbb}RsF2qi4Spjfag%+A~ zqWI`765I?O3NGK6w3ZRbbNmBOCE+)$$)*w*d3ftUQK78@*LX?9$AlO@(5T{ z`VQ)OZIyaR({Xzv%3xRm=qBleq2H58^d?-mA$pDp{4#Epaz%v*p%na6Yn**fV5+!a zCHE*bDgyqLVkZ?+Pw=ZwC@CAjaMmh;ANC}KXtTjU;c#-Nq`(W|MH+4kqrCL%`UcV0 zD2%5kP5{$GplE~AVX#@2r0#S{I)yaIiY6eLaDyl)5d;tf+Cw*lejh`Go2S`|^L67U}u4lKdXtV7UEK87(bP5z@>yJz)re|oQ=1p)C$q&rB zSi@*Ay0`KC1$t-GQ$N)L4ZNKp9!-gR=%3$%P8*u+rD70Stq#o~!qK@(pAd$}FEVci!LRt;h3y5^N^sJFN^L6rNMkq7*t4hwp>1j3qgW_yS}l{rD2qbJivCEQR*op2J6P|g zAo>Un@Jxkd@VJZy2F_xyPp<}uh$)?#CKuAC+)YRlPNta<+TO0%l;@R}viB4p4L>;f z*`uuq&-cyTot((zeckpc#lS6ViiI)Vk?>-vH`sd;)RCYzN(@X%%8u_x?NTBZN;R`o z`)e<`FO#wuB;0Lf0#CL?;Xm#+BCJ99AJy&&ps?B8atL#DP+>6dU@0acjhDyfUIpA) z?1@o_BG-4}a!vOMq)0EwjTX+61*t$Y!Wr(@$EWGlw=W@Qpl7%_&BR)wO@}|i@>9!= zRHY^x84OA`4eP`F%k(Tka*Td~P-E;OYi1mX&yBe|d{|OZ2a$Tv1#of_P>T~p<23XL zSz1n0sG-kZw=yBVOjkH1q+yvV53!@Avss{t>tXLDXp|J^eP%R%klw#yu@|ZNFmOd4 zLzzejI|?!9G*^L}+|;R@H}z&J5X8zPbh;zeroL z$_UsF;9)%_`dunb zXl?IxVgdHoEP4wkD~Z4xhbNb3$m8iSLooPu*w8&!91K(}DEOm~^3 z*%9U#VpM(+)LjHGo8;xu^lbN(M2HW&N2*B~e{07VWk?b}g|c1sar9@`i%NtEA)RbG z_lT$rIGsmGgDmwp?o5Xe4BtQQq{cd0v8MaAG~LnK7o&E4HhD8~(n~0|+lqiS^R{AR z@s)h8&(xIbuUMwCh!$>X0^fTENLFZ|GFbG0BN=9wL%iQWd<$~D+6Q5)ja?$oce#TzZ7sKYMH$N^l>t<6cc@6nd{v=24z&Sp z5e^XO>K!rOxw^3!fit+Af|S(#k+MSu7vnh&d6qw4&h%^Vf7}O~iA_OPxUO&wBC}NG znS=yYgPoEe#B7|OpPr+8Z@;5m08p7heB+~)__R8^@xC1l+oiP->~t`g@#tYXAHVtL z?$f8^^mhzfboUtbVFcvh@!h8M0uGXM#}L7sSQ&zk``2U1f(5ZEl;}{j_?O)i));#v z{t=U4Ez_HTxX*k^mao>&+ny@Dvkf(Eu#7*o=`F;S&pc)x-$XdUUFbfI3Y zZ8>q)lq*qT(@Aa`RNSl(LY3dqNk7<8UJ4Wtctpc;%&esiTS3{iz4u%rdpNxy%rDib zbQ4JPK(a}**o+`5UZ)T^4bM0x0NP(sbgQ)v^4#MPEw&|4e$9t9BC~(8hjHWN-nI(V zrh!#xP#P8(>WSG-s-A^4G+i`fX41@itfZsSz|89}TsHFtt_6tc8w3d3uAyosj>RU= zSp=Oia7>(vAQd;+WKDSH<95|zdvK%pm6;!(31#UYUsgcUNeRbhDfKOG&X@#71_DKC+8`BUnmMj$*DRyhWv@`anM40}*TE;) zweeG+Ge5zEU$@iKbIRFyVnM0Utw)mEI?uM-;c)*`)`l^6_qEH9LsxP*f+t;@wq~cH zD-eihic-c_4DGp8Rgd)sAUiSD^FQ$5QW2 zLnw3F*F6|nAtc<@8ZpgborH?Q>$v10c+}M%RUrZTsVLB}w$QM+E`MZvii1ZLHSqCh zM`jkP)Du-W60=MH#$7~*>WFpr?lx|*a>pz)s~E`5YjFgEj4A2@AocMXApi&3BA8#t zDuoAk3>u9KJh-KmFhSv<3M@K*TD-VDAyW~~@4M|6w@px9bA_+)_7W=Leih8b{Mrf0 zm{s+k;)whlGH0Panch3=IWW%j7A3IP;5GH0!hh)}X{x~}>UXm+uXJou^K9f-S~Ibr z1CGU}U$JePRtz*CNY>L4n?7uu0KG+uFhGgs#%@`L1}+E^mONH43|bw9kb%fmH|()k zH2jg>E*HChq`C;dWkb4aDyu&8pTc~*7pfAcAYy0*HWaO;ug!fH`Kt1jIjBBbMRMuh zJ`hqAXZCZ{dXEE(j?dg$h_9xt+0ws-c~2YGPE^n$qb$Ah)WX6N$13Hi*!P ze&C}BSlH9zWAYixmj_R;hj4OO)9bvGTn{0on7gUXATG&E4PxXrry~r7DSQ|X%qt4D z302cBhal+Si0nr@aB0EE2tIk&eQZ=gDz*ZR587W!kKNZW_C-gd&tmxSiXX~0wg+;l zK`2(Q_kU6}ak#`rfA@d9`iK2jf1f?^QZkjPH_f0)AA&Yq9H{;sK*3jC+N@$iPGVk! z+a>0^ZHk>DrCM2iC3cm?u_Fe+1yxv_$micrAB$wV_X1Li8u-K9f-S6AoEDlB`pvgT zqHSDBaQ$qk{%U6AbCRks^pb{Bnw+ehXchW?rP+1Uj;ng859U%5E47NIUR(TtFjpv>$KFKkFi9Z0%j7d zT)qc{LgsXNN)gNl(mx}H)DGj}OJ@>_?ViC}8L_uaZVP2hC$)RvehF`TA90uUYs}jZ zV*)-L-52I4&fG`EHw<|B{p-C_iuv^BUw$2qwpzrS6TiXa4W3> z)a)O=|MvOg2hX=ZzrE`1n>tm-;=NZ#+Vxl7Hgtg5xAaeaxU+8cgWDfMg3I?WT1s1;)SHNQjx9MO5Ktcdpd$gryhRTR-1S`spCoGAWg;jyy1=ZI$G7?5^_CxGOwi%2YX{C5y&2I69xXTO&7u-vw<`GB8LGoOV|<>CvA zKN#d^AO5HNn;SbD|LH&f=P#-=(3a?(Q&fl#<<;mq@G;)gHQe-~i-vIgo@OHgV5*&Q zbbzz(f`HG;WYaQQWp~10#adJ?ZRA15ZVU=)H)wRw3gyGq0b8?P+z~EUgMZ4yYy}T; zbp%Kwd1Vg*3{gKK=(t>csc<6@PDs;r?90XU{FGxn9a*BBsz%j|X$bveA0bGhSKcZi~YQbH1!+XuH(kK?nC(Jo2*2G#y&R zq~#V>haRIX>IyG%4Jqi5YMP<6!}iRUpeN^sx$?=gmLTP?8vQq}kktP$jJgUTCN?_w zy~XmP$f~$f|5LZ=vYMmC8%p2hWmycCdg#1nw1Td6N0bpd=|}j4xRZzr|GkTe-VT}# z2GxILS;{$^c^my?7HX(X;)*uXf(EKpOa)eqmFU+vZ$bBD+e?n(>EpeGPfGnIOH`Xi z`9J(RM@MIs2D6aztTd0tYM0E0B(b_NMGecT6ItlG#$JK4*?vp}uFv%e@F{QmoG~3c zca=LMOeWIL6U!Yac366H_(!A2No+Pt_U8A?K)|$S77(TZU6-hisJVI>w^pkXFY)fz z`FwAo{nqQ20nVJZVI8(qV>WPVV&U|Fa|A9dKDJ!^^xMZ|3{s7_%Ctg=6?8}Ko%$sn zya=zgUsVQA43eX&6yrC{@mil@YBh4&&{HA{p~ce$odigMs4*hYZG&3a(x|exw?;p0 zsov`y&=cb6TqsEwDBvQkOjIb=O|V4b9T>B6>N-%uM7DqlWHJ>dlpciI%UZW?0_Pa! z<+P}^wp8v?(+Qv=F@qmi5lPHJ>gx1X?t*xTN9c!S%#Lal#!bUNqY%Vib=(t*+M zafU7eY3P8BB#qI({X{1q`{AF;B z0FO#WiY7v#<&dTuw(-U3=@Db_c2HCgQOj~GQcnd{)*IIKNU+>5SGKc#K7M(2w%WPg z4WS~f?oE9dss`g>c5};fX-wKGhc=QeldCMO6n~Z5X+G0S1Ltl9a68bw8${HS;=c~e zEWG)3JG|QX?&VZ~#1*q4_+&Zz2Orr+MlWQBbMl{=9L&v5$p{QU`Omzz>)XUkl-hV* zI^Om7w+f5j!2HN?MxBFw1Yjjrn+24b7p`dw(X!=H5z`_hEg?jSqws|Z7R1P%hA)9P zP3vw8E1%=(4JZRbQh15qFuhzY0AD?ybf)jus6l5WIh#|ftj(XHFxg-BmX-;G5*)=q zkTzMj0(TA6ZfqMp751_c!Tz^Inl7_+%k=95XI3o)1U{jZz^*dUrtdAI6xashlChVt z!r2pifAwm)VP-Q5Jz9^=YAS@wp_2z5&X7omsObBQR2EYB=s?A!PTM)Xa@!0tr z(&rub9fGSDnYTnl{CI=%pFh_*lB{F+*xT_c#ErnBplk%0Ef>RJY%xsr9+ZOi%h|oo zlOYAhKPjYdqZ#FNXKj$)td)-Y$H|q)V<}}MGR-PD?E`DI zf#hG_OtAj}dC3ZDIvvLbO7h@U&}mEQWV#(b$*jr3 z#%;-{tt@kzDjrLZnR58D4>WBhGkNBF-^__Uawt+2>WAzk3J(UyD`8;GFqLIq$1<3~ z_f&9l(TLEO%v7q8ldxjG<}@+%;fh6$Me&;KpnRUCwv zXoZo$+_70kD;Y20kd0&oX4^0_MMc6{qh<3~SUVw>M3?~v+Sl6oIgCvs2oiFj{9xH8ehSl_tDaXTT26f(}pC;;JK#qKPir2jJC_DyZ+=?V=}PS}x>c}AzN zUMU2Y*{`2oJQ_W(UpJfn^1BV#*ekFsn~Kv(_MuQ-OLWUHQYW)c$2SAy5alsQsj)6;!a3jYq1Xc=7uD6vM^~$6T#Kh6;Dq zfJ+C8@y19eGssPTS!ktad5hmzRS)VW^w&5zm%#)%gUb8P); z_H5vNaQo7s*qsW=x%%o|3?`;DI92mb5=+Nt;Wu=}Z|9>2Et^+qdMq}=sI0S48FM=i zVOc%WclWpk8z%r+CV@GFYbtjl-)De-G?lCPTj+(<|6u7}p-E7gDgG)ouEH7Rzjq~# zD&`bkf+*$#p|pTJF^mF|tXEe6RVYbx87P31M(MMvNE!-cfJi|}ptA--#JO4ViDwaZz z$UDoEoL~FjM|;GKkc%OkMURM?$}hb>G`w#;fi%mHC_V%G1!arbNVNcsC=*o~lnffd z+Ytx@b*GXy@RDcVFkCx|u6p8%v>JHZOx!}#?4=E|H9r{0u7!w*=kNj0z_fl8raL)# z`I_{C>wbV2Cx=_AXktx~B`bw8J>tp*%N!LO8oYm8K*~Q9eMfSe_h&1MT(*WC!SNF& z(U*BcsTF_CJ$(v-xMOa{#qO`_{r4K5MVP%uvWLf%)t+WQ5i!#{7e>GQBIEK`O4ULE z+SP60Nmked=wdP!3C5S!aRwkU#TC<_w$=l&)YtwOiUKJ)G9&c|P4Jf}R~Pog0f3>gq!unlVDBVc)=2u1=}1O<_V6iGqX%{_^AP z@t^-RzM~`1z*&xvAcsgf^nmL&+Z z1KiVnPsJauLShi!p#$t`+0Y`;4cak?1CiG~!I|n)xFtRt7E>5Z1!kA(jcN%bAkpp= zC#f98(NxwavcfOLIUshHPR2q|%EF(^NY878-*fdNFuurOl>^ zDI{M6qai^E+-K9*_ymq8q(Lj;gMoTWY)^JMVQgEL!bvPa;v+H1lA&$7&6f=RI&-m5 zi4zBmg^n?7o+s-_=UHga(!^SJJH~BzGDL%ZrTv*92wduabp4#=#%M&C5)sKQoa3!4 z@UDNqzq`r7qVVHnD8)?Qd4HSrv~gCpv2V}jn0*(CsA;0H0B|anChh*A(Of{83WI_k z1l}xOxI5zQu8$=oS5t?_>UgJ#9GVX^`DKUf+|#4c#?i$ew_;~aae39Td)WZ8Xc|n)>%3D&BxtskBwHT5k4x=AH&2yZ*uD}* zsqbg?a{>!DqQ8q9@q#z@K-F$!R*xd91~(PrT?$ZS@f5{C|I^_Zge~@i zfmUH*2>pgRFW=0;ELJ6!uUiaX?o^{v1r3>h+2>U(17@ppsohB#qPg4HjjbkgfS%rq zl{Z-WeQ;2cn^;)!915-wh5=1?8<;g%Vd5f^L#gV-MvS#B!5*Ti!T+#8XI@WbN)&`r z2$na$%-Y~m**~<3;sGo7LxTzE=&^NhqC$LmCKC8y9&L`_mE9JD%uQ+ZIBr7xEBf%d zpR>=#^`JJ72i8_WF1LFWt+AwZAxo}4ZlyD>_!V8Ajf>W6o9e2z&FU(h%|kIrmoN%! z3#RQWa8PGz_iYA0LN~0LWG|Ddh7wR>-@=X`I$O0}RzoDppn=2!EVAxP)sS_i^ziHH ztBXHAmfwk?5RN@sxpNFlRmgs*5YpY@`jQd^>!{4#z?ol-P@X_!2H~!8Z(hD*;{EgO z>~Y~LwM+6cgl<0r(-C@6YgDZ>h9u-qJkpnpW1YhAkrPLbHdoXmQ7f!e>La zu&=>wuDDPya3Pnk7v z-}r@D%6q!)s=QkKHNwwhTPQbNmF*&H3L%#n6@+?Bgm*fEX#b(Mj8<$aFG z&4Jc78dNu{y%!;YVJneGpx9r-N}i{t%XCjClUJ082L@pAG?_7lyZb(Ks5q6knd1_c zgs~nRfTpQ-NjB>&Bj$}6?iGiW>R_*bvnPv>DhoqL5zE}oI2a04Tc7lL>xEgHqC@4|Ks1G;M#qByLS2J9Gd)+s6YcppS&51xHDy7~Qsdz;T6efQw`4@79*9CwdG z>Dy{bU*TKC@q@{#wmK$<*0gOlH1g6A6?mfH#bTTdN2wjnD}cyp=Shn7b>`?W5!(81pgAUdP5HO5s&+iqbp@fVA{sHuL;7+yb@#NHenQq$`111{#Ao zf3$LNcEJXo$R6U0bj>N>kBQrK4J4*>LWWhZxr%Y2k}G&ZS3_o4!x98cxE$HXsI}5N zyqVLNO;IQ9LQqQrJbekrR zwmC#(UMd~G9_&e9%ay;b`Cs#dDv0>LkEr(V^9;wy=PSSt;+3j{-+SOYZ@%*BxTGk@ zABJHBkkk$~chPy%>x!u*raD|9spBW`KhP)@{yRL~H^o!r;g<^hnd|L+5o&NrCUHFU zI*ux#o*`Z;Tpx4TKQqhNVrK=}Z}@g5r~9;#|Vg?;W@ zKL$s6{VCJ!fI5xgSqrd_hh~JTlxsaJH2Qkta>%rpJ8=ax2IiYY8Zs<^4UPegi$+^6 z!EEGVhI}cuDIIUgb^eNOhDBQH*%Z{$vzZk02{<>d&MOZoqFzh?x_Uj@4qT^;U`4S+ zN-rh+W$x97*!2E4@%80{5qS0RfS57qTN0#T=%zJl5GCRX*&b+Oir4OCJT!@HZ~neg zz09N=eGYWmzt&x}LoV>_6@#?Ccm|@ReQ<&ELc12$rN}nv)GsI9PT|cakOi=)>D-vr zN2a(oT|V7Zl*@Z?eCOP8svduB!!kpqS9ob=(^rrR(;|V7;Rwy6(raQQPp!D5luEdh zEhr)kr$2mnKV#JhhkuDw|6+bVUAlszTQLFE2tO_Jd{@Y-Pa^Gquaa6+%u(%MjKt`6 z#?cdSo_gA!^?BGV9S1S-ZFpAwQ;n56`LA_mdRedR zy@`H_oA5xVip|a%kKT*mG&xJ1*91n7EA^DhYutYD^uj+1fbBf@9zYhxlly6p#^Q#9hSaoCVY6Fn36>iK~%;a zbN*x9`hwz-rSCq^kOX*_Mb&v+dLqS*{K%1qKzT;k(f?na{T}^eBrh7^sn=-);8w;7jLm`*AIcS^?K=dzjR@s0@o5L?{IbGb?feH;v&P`QnQ$;e~`s zVhrw&qCh>{UudJR5Uik*de`2;Vp4T;q!Ys6IdP*VqBPoMX6{S8TO}F3EOdrNtvK|w z0*L0v0_1G(CsaTIOLzH*g)eY2sV1v4>ioIQPL!B*vz0?>agP1th=)VF>^T0;Ig_g9tBs0lAV-oI-`C?gTO{b72!G1?G?2m2SF-#FQS`xdSD^zDtS?6`qZv2k|x zoV3Bg;m5rskzq;M;WNy*5HgA{pybYn?TN2&vW9Cl6wCGXl`kjLC&#n-PpefOeza1O zmUlq|y<}PTnUBzlj5rNuwLL>86GO!I?=_P*Ek&rA?O-)Sy-4jxl`!vP@fbfl?T9$2 zoS?z0r602WRDQ|Gb8nZuU&2k98SwGsfoVVF2!1s8U}6&fk9D07cF@=5F^AP_MY?us zA9q>z76MR$EZM&qZ+pPI8V!guH)Xr6-Z~=L+vRi@mz{SH&ik@A?b=DGA-uw26}v=L z3Sk7vS|E1JRpXXD44g8%qVf7Us`u+X3^id9FOb-o7B_`;n732PfS;=1ea85gYHE#gk>ir#M8jbnw{j5NH3Ow$2&OQ3FT@ ztio<<`tzY;>T+=LN{e6BE zWJ+N&6N& zBgMIrwX}o+)${L;9&w+<{KCa7rI1AyR(^>OnenqK1dyl-Hbf|d_&*d|CC4LzIob&Q+a^eb8gnq-_%4b6W!-i{LRf9ZQGe{uua}jg=?!1T&i$+33 zmsyj6^2XNS<&9!5t$+XIR8DU^FO5tg{==g*MgM77YovP0*P2{<#^op+(4Rq3{afu? zeP;(G&B$h4_tCr6o_nLXMSv(U_ui#q;`}l=*^VylmKws%-VPe zoq{P3o?y0>s)gnN$__ZwkF6EbW|?!l45_ zDhJB+=4$gin7kwrxkZok{%>R~vrJOYZKR8hp@_~UtwJxMGa5$fOyaJjVljWK1<)oN z>9x}FsC0->r$1UDy7Py{d-`~&FoX3BXd~Q}o)0B60TcmMi9%9VH$I8RY^9jN3)uz; zNaV`Y9LpxI&wF?>5wS{UX{M$mHlU$i?25C?bcBh}tw?eV{T2o#0NxdWhsvvJQGvMw zZ}=1+OCa&_mqb#l6P}XBI#{QRuJ$u^&4e-;jloM;1p<6M1^@nZm%`?_ExNa{uel41 zHs<=$aP>qr>J7%SV8}s$WFRO9g%p6r8Wyz4+DR;4CqNHru~6R(G?F8qujlNTn-@%E94a2$DZ+cqJX$N@DK{~=<{ zb8fv=*fuTf+nHd3YhAV1qlit>J!bB^?@!N(!4tAFKVF?xv(%ha$45t{LqR^#G8)%C zA6E)9vY|7p863L95EQ0|0(lVWrBKpp8H$s`@DYs@8 z!btHE@h(xUDgsv%m!Lx@*Ih3?^1*{s!^|-vl&tA0H+g-<`4BMVaV|D5?L2;~cQy+S zh99P0{2b6^e;aK=P7a@HE+{%vP?~39P?aS|-!WeOr!ru!DQ_8;&cPzXnnQF` z!X=X`2a-f{Htr^8(;p7^e`adEB9@N9U-io_jL#8PM4!hP>lL!41g;}4I4 z;VC#WgjB@lw&I~YGXt;0Y<%)s+d<>bEF-PR&vw7~g_!SiOe&&pS7bg|AQ8mI=^^8Uav|&-G;rds~ZnSL# z3XnCU1HYsa-OBK)jBsT|HT1;F!-zmkj8K0e-&AoO9J)BR@VE`9ptzJme%LVMjx}P* zL&Pm!dS!a5 zj!BpWx%Dp9HDXPmh)CHCLBaGhU1l%5!q0LAX%~T?$^*qG?cOfl0(pan0?1;tvGoZ4 z5YgSE6|Za@RL!#9(;mN40_SNivv5?h8z}5|NOE~ zGW=;QXe2JcZ$iq87^5Zueb`aZ<-e&$S3~WpRx}``K}XJ&|6?B5`q0FAhm6IM77A(? zmdQu6*X`4r_UX8N+C7rM5$%37+q*bypN|g?+UEiACI@14G@ zJL;(lJiPf!a&`8CBWhuma^9-GaL2W9vS4P-kBGbFEh$T$f5llXd5o(iJe@L$#p!%J zLH*6i)*OoEx@>Yyw|y+bU%Idtg#?w0j!k#YcyMUc=o=+`j%Z*`{#v2(J{_s_?$E@>JT4Z1D_ zlr*=ajufT~5${-yIYp~oRCJDoI5KRNlP#=xYHOC-#Gm7!J6H;NXoJ78iDiYx)&Bc91t`Ndu0fXvyjDl0#fB%aAU>!LW*7p` z%WzAv%mQG*)Ih<8>*cdR(&{!d&EsC=Iw>9%ibK(ceu?57)+g$+C?Oezrb1eikD*5j zy?&bqjCzic^5ZVxnatfTwv{9@a3N{LGIIv_|9jut=M#G z>!yL*&rtrHjaF`tKG%S_*R;8s*CDSkqDR-YkftOc+?i@EObPhF@}Z<9b`5xw&T0%@ z%#<%C!~+}|Q)-nCP=|9*PK>q(`Ww4Nvgq<4H1ksKBowyzjDk-1U8Zh;OGXm7iMX2a z$kY)Eju1@8%+2t^us>_z?E^wu=mGVQhiUR)E21?KO_Fj@I23b7+1Ad3(Mm|wmZE)h zsu(b~nKNl`jl#PW*+Yzm?e0CO#5&u)a=gZ3@Rv?h+4w9)1O>X#=h+1%m#t-&Knweu zo7tZEw~C(aO-ov!cWo-gj{|L|r)(ar!!L5BsO;CT2!>ybUedVgKJgX7G5Ztw^Xc4ue4Z$O^a|Jb`GZdUU|@~ literal 0 HcmV?d00001 diff --git a/changedetectionio/translations/id/LC_MESSAGES/messages.po b/changedetectionio/translations/id/LC_MESSAGES/messages.po new file mode 100644 index 000000000..4125da123 --- /dev/null +++ b/changedetectionio/translations/id/LC_MESSAGES/messages.po @@ -0,0 +1,5121 @@ +# Indonesian translations for changedetection.io. +# Copyright (C) 2026 ORGANIZATION +# This file is distributed under the same license as the changedetection.io +# project. +# FIRST AUTHOR , 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: changedetection.io 0.60.3\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 1970-01-01 00:00+0000\n" +"PO-Revision-Date: 2026-09-09 17:07+0700\n" +"Last-Translator: FULL NAME \n" +"Language: id\n" +"Language-Team: id \n" +"Plural-Forms: nplurals=1; plural=0;\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.18.0\n" + +#: changedetectionio/blueprint/add_watch_ui/__init__.py +msgid "Adding a watch with a browser needs an interactive browser (screenshots + element data) - none is configured." +msgstr "" +"Menambahkan monitor dengan browser memerlukan browser interaktif (tangkapan layar + data elemen) - belum ada yang " +"dikonfigurasi." + +#: changedetectionio/blueprint/add_watch_ui/browser_config.py +#, python-format +msgid "System settings default (%(browser)s)" +msgstr "Default pengaturan sistem (%(browser)s)" + +#: changedetectionio/blueprint/add_watch_ui/browser_config.py +#, python-format +msgid "System settings default (%(browser)s - no live preview)" +msgstr "Default pengaturan sistem (%(browser)s - tanpa pratinjau langsung)" + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html +msgid "Add a new web page change detection watch" +msgstr "Tambahkan monitor perubahan halaman web baru" + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html +#: changedetectionio/blueprint/ui/templates/preview.html +msgid "Go" +msgstr "Mulai" + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html +msgid "Enter a URL to get started!" +msgstr "Masukkan URL untuk memulai!" + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html +msgid "Enter a URL in the input box above to get started." +msgstr "Masukkan URL pada kotak input di atas untuk memulai." + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html +msgid "Fetching screenshot and element information…" +msgstr "Mengambil tangkapan layar dan informasi elemen…" + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html changedetectionio/blueprint/ui/templates/edit.html +msgid "Currently:" +msgstr "Saat ini:" + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html +#, python-format +msgid "%(browser)s cannot render a live preview, choose a browser below" +msgstr "%(browser)s tidak dapat menampilkan pratinjau langsung, pilih browser di bawah" + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html changedetectionio/blueprint/ui/templates/edit.html +msgid "Select by element" +msgstr "Pilih berdasarkan elemen" + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html +msgid "Hover & click the preview to watch just one part of the page." +msgstr "Arahkan kursor & klik pratinjau untuk memantau hanya satu bagian halaman." + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html changedetectionio/blueprint/ui/templates/edit.html +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Clear selection" +msgstr "Hapus pilihan" + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "What matters — when to notify me" +msgstr "Yang penting — kapan saya perlu diberi notifikasi" + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "" +"e.g. Notify me when products go in/out of stock, lead times change by more than a week, or new product variants " +"appear. Skip review additions." +msgstr "" +"mis. Beri tahu saya saat produk tersedia/habis stok, waktu tunggu berubah lebih dari satu minggu, atau varian produk " +"baru muncul. Abaikan penambahan ulasan." + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html +#: changedetectionio/blueprint/tags/templates/groups-overview.html +msgid "Watch group / tag" +msgstr "Grup / tag monitor" + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html +msgid "Watch this URL!" +msgstr "Pantau URL ini!" + +#: changedetectionio/blueprint/add_watch_ui/templates/add-watch-ui.html +msgid "Edit first then Watch" +msgstr "Edit dahulu lalu pantau" + +#: changedetectionio/blueprint/backups/__init__.py +msgid "A backup is already running, check back in a few minutes" +msgstr "Pencadangan sedang berjalan, periksa kembali beberapa menit lagi" + +#: changedetectionio/blueprint/backups/__init__.py +msgid "Maximum number of backups reached, please remove some" +msgstr "Jumlah maksimum cadangan tercapai, silakan hapus beberapa" + +#: changedetectionio/blueprint/backups/__init__.py +msgid "Backup building in background, check back in a few minutes." +msgstr "Cadangan sedang dibuat di latar belakang, periksa kembali beberapa menit lagi." + +#: changedetectionio/blueprint/backups/__init__.py +msgid "Backups were deleted." +msgstr "Cadangan telah dihapus." + +#: changedetectionio/blueprint/backups/restore.py +msgid "Backup zip file" +msgstr "File ZIP cadangan" + +#: changedetectionio/blueprint/backups/restore.py +msgid "Must be a .zip backup file!" +msgstr "Harus berupa file cadangan .zip!" + +#: changedetectionio/blueprint/backups/restore.py +msgid "Include groups" +msgstr "Sertakan grup" + +#: changedetectionio/blueprint/backups/restore.py +msgid "Replace existing groups of the same UUID" +msgstr "Ganti grup yang ada dengan UUID yang sama" + +#: changedetectionio/blueprint/backups/restore.py +msgid "Include watches" +msgstr "Sertakan monitor" + +#: changedetectionio/blueprint/backups/restore.py +msgid "Replace existing watches of the same UUID" +msgstr "Ganti monitor yang ada dengan UUID yang sama" + +#: changedetectionio/blueprint/backups/restore.py changedetectionio/blueprint/backups/templates/backup_restore.html +msgid "Restore backup" +msgstr "Pulihkan cadangan" + +#: changedetectionio/blueprint/backups/restore.py +msgid "A restore is already running, check back in a few minutes" +msgstr "Pemulihan sedang berjalan, periksa kembali beberapa menit lagi" + +#: changedetectionio/blueprint/backups/restore.py +msgid "No file uploaded" +msgstr "Tidak ada file yang diunggah" + +#: changedetectionio/blueprint/backups/restore.py +msgid "File must be a .zip backup file" +msgstr "File harus berupa file cadangan .zip" + +#: changedetectionio/blueprint/backups/restore.py +#, python-format +msgid "Backup file is too large (max %(mb)s MB)" +msgstr "File cadangan terlalu besar (maks. %(mb)s MB)" + +#: changedetectionio/blueprint/backups/restore.py +msgid "Invalid or corrupted zip file" +msgstr "File ZIP tidak valid atau rusak" + +#: changedetectionio/blueprint/backups/restore.py +msgid "Restore started in background, check back in a few minutes." +msgstr "Pemulihan dimulai di latar belakang, periksa kembali beberapa menit lagi." + +#: changedetectionio/blueprint/backups/templates/backup_create.html +#: changedetectionio/blueprint/backups/templates/backup_restore.html +msgid "Create" +msgstr "Buat" + +#: changedetectionio/blueprint/backups/templates/backup_create.html +#: changedetectionio/blueprint/backups/templates/backup_restore.html +msgid "Restore" +msgstr "Pulihkan" + +#: changedetectionio/blueprint/backups/templates/backup_create.html +msgid "A backup is running!" +msgstr "Pencadangan sedang berjalan!" + +#: changedetectionio/blueprint/backups/templates/backup_create.html +msgid "Here you can download and request a new backup, when a backup is completed you will see it listed below." +msgstr "Di sini Anda dapat mengunduh dan meminta cadangan baru. Setelah pencadangan selesai, cadangan akan tercantum di bawah." + +#: changedetectionio/blueprint/backups/templates/backup_create.html +msgid "Mb" +msgstr "MB" + +#: changedetectionio/blueprint/backups/templates/backup_create.html +msgid "No backups found." +msgstr "Tidak ada cadangan." + +#: changedetectionio/blueprint/backups/templates/backup_create.html +msgid "Create backup" +msgstr "Buat cadangan" + +#: changedetectionio/blueprint/backups/templates/backup_create.html +msgid "Remove backups" +msgstr "Hapus cadangan" + +#: changedetectionio/blueprint/backups/templates/backup_restore.html +msgid "A restore is running!" +msgstr "Pemulihan sedang berjalan!" + +#: changedetectionio/blueprint/backups/templates/backup_restore.html +msgid "Restore a backup. Must be a .zip backup file created on/after v0.53.1 (new database layout)." +msgstr "Pulihkan cadangan. Harus berupa file cadangan .zip yang dibuat pada/setelah v0.53.1 (tata letak basis data baru)." + +#: changedetectionio/blueprint/backups/templates/backup_restore.html +msgid "Note: This does not override the main application settings, only watches and groups." +msgstr "Catatan: Ini tidak menimpa pengaturan utama aplikasi, hanya monitor dan grup." + +#: changedetectionio/blueprint/backups/templates/backup_restore.html +#, python-format +msgid "Max upload size: %(upload)s MB, Max decompressed size: %(decomp)s MB" +msgstr "Ukuran unggahan maks.: %(upload)s MB, ukuran hasil dekompresi maks.: %(decomp)s MB" + +#: changedetectionio/blueprint/backups/templates/backup_restore.html +msgid "Include all groups found in backup?" +msgstr "Sertakan semua grup yang ditemukan dalam cadangan?" + +#: changedetectionio/blueprint/backups/templates/backup_restore.html +msgid "Replace any existing groups of the same UUID?" +msgstr "Ganti grup yang sudah ada dengan UUID yang sama?" + +#: changedetectionio/blueprint/backups/templates/backup_restore.html +msgid "Include all watches found in backup?" +msgstr "Sertakan semua monitor yang ditemukan dalam cadangan?" + +#: changedetectionio/blueprint/backups/templates/backup_restore.html +msgid "Replace any existing watches of the same UUID?" +msgstr "Ganti monitor yang sudah ada dengan UUID yang sama?" + +#: changedetectionio/blueprint/imports/importer.py +msgid "Importing 5,000 of the first URLs from your list, the rest can be imported again." +msgstr "Mengimpor 5.000 URL pertama dari daftar Anda, sisanya dapat diimpor kembali." + +#: changedetectionio/blueprint/imports/importer.py +#, python-brace-format +msgid "{count} Imported from list in {duration}s, {skipped_count} Skipped." +msgstr "{count} diimpor dari daftar dalam {duration}dtk, {skipped_count} dilewati." + +#: changedetectionio/blueprint/imports/importer.py +msgid "Unable to read JSON file, was it broken?" +msgstr "Tidak dapat membaca file JSON, apakah file rusak?" + +#: changedetectionio/blueprint/imports/importer.py +msgid "JSON structure looks invalid, was it broken?" +msgstr "Struktur JSON tampak tidak valid, apakah file rusak?" + +#: changedetectionio/blueprint/imports/importer.py +#, python-brace-format +msgid "{count} Imported from Distill.io in {duration}s, {skipped_count} Skipped." +msgstr "{count} diimpor dari Distill.io dalam {duration}dtk, {skipped_count} dilewati." + +#: changedetectionio/blueprint/imports/importer.py +msgid "Unable to read export XLSX file, something wrong with the file?" +msgstr "Tidak dapat membaca file ekspor XLSX, apakah ada masalah dengan file tersebut?" + +#: changedetectionio/blueprint/imports/importer.py +#, python-brace-format +msgid "Error processing row number {}, URL value was incorrect, row was skipped." +msgstr "Kesalahan saat memproses baris nomor {}, nilai URL salah, baris dilewati." + +#: changedetectionio/blueprint/imports/importer.py +#, python-brace-format +msgid "Error processing row number {}, check all cell data types are correct, row was skipped." +msgstr "Kesalahan saat memproses baris nomor {}, pastikan semua tipe data sel benar, baris dilewati." + +#: changedetectionio/blueprint/imports/importer.py +#, python-brace-format +msgid "{count} imported from Wachete .xlsx in {duration}s" +msgstr "{count} diimpor dari Wachete .xlsx dalam {duration}dtk" + +#: changedetectionio/blueprint/imports/importer.py +#, python-brace-format +msgid "{count} imported from custom .xlsx in {duration}s" +msgstr "{count} diimpor dari .xlsx kustom dalam {duration}dtk" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "URL List" +msgstr "Daftar URL" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid ".XLSX & Wachete" +msgstr ".XLSX & Wachete" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "Backup Restore" +msgstr "Pemulihan Cadangan" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "Restoring changedetection.io backups is in the" +msgstr "Pemulihan cadangan changedetection.io tersedia di" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "backups section" +msgstr "bagian cadangan" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "Enter one URL per line, and optionally add tags for each URL after a space, delineated by comma (,):" +msgstr "Masukkan satu URL per baris, dan opsional tambahkan tag untuk setiap URL setelah spasi, dipisahkan dengan koma (,):" + +#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/templates/edit/include_subtract.html +#: changedetectionio/templates/edit/text-options.html +msgid "Example" +msgstr "Contoh" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "URLs which do not pass validation will stay in the textarea." +msgstr "URL yang tidak lolos validasi akan tetap berada di area teks." + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "Copy and Paste your Distill.io watch 'export' file, this should be a JSON file." +msgstr "Salin dan tempel file 'export' monitor Distill.io Anda, file ini harus berupa JSON." + +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 +#: changedetectionio/blueprint/imports/templates/import.html +msgid "" +"This is experimental, supported fields are name, uri, tags, " +"config:selections, the rest (including schedule) are ignored." +msgstr "" +"Ini bersifat eksperimental, bidang yang didukung adalah name, uri, " +"tags, config:selections, sisanya (termasuk schedule) diabaikan." + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "How to export?" +msgstr "Bagaimana cara mengekspor?" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "Be sure to set your default fetcher to Chrome if required." +msgstr "Pastikan pengambil default Anda diatur ke Chrome jika diperlukan." + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "Table of custom column and data types mapping for the" +msgstr "Tabel pemetaan kolom kustom dan tipe data untuk" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "Custom mapping" +msgstr "Pemetaan kustom" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "File mapping type." +msgstr "Tipe pemetaan file." + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "Column #" +msgstr "Kolom #" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "Type" +msgstr "Tipe" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "none" +msgstr "tidak ada" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "CSS/xPath filter" +msgstr "Filter CSS/xPath" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "Group / Tag name(s)" +msgstr "Nama grup / tag" + +#: changedetectionio/blueprint/imports/templates/import.html +msgid "Recheck time (minutes)" +msgstr "Waktu periksa ulang (menit)" + +#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/templates/sidebar-nav.html +msgid "Import" +msgstr "Impor" + +#: changedetectionio/blueprint/rss/single_watch.py +#, python-format +msgid "Watch with UUID %(uuid)s not found" +msgstr "Monitor dengan UUID %(uuid)s tidak ditemukan" + +#: changedetectionio/blueprint/rss/single_watch.py +#, python-format +msgid "Watch %(uuid)s does not have enough history snapshots to show changes (need at least 2)" +msgstr "Monitor %(uuid)s tidak memiliki cukup snapshot riwayat untuk menampilkan perubahan (perlu minimal 2)" + +#: changedetectionio/blueprint/settings/__init__.py +msgid "Password protection removed." +msgstr "Perlindungan kata sandi dihapus." + +#: changedetectionio/blueprint/settings/__init__.py +#, python-brace-format +msgid "Warning: Worker count ({worker_count}) is close to or exceeds available CPU cores ({cpu_count})" +msgstr "Peringatan: Jumlah worker ({worker_count}) mendekati atau melebihi inti CPU yang tersedia ({cpu_count})" + +#: changedetectionio/blueprint/settings/__init__.py +#, python-brace-format +msgid "Worker count adjusted: {}" +msgstr "Jumlah worker disesuaikan: {}" + +#: changedetectionio/blueprint/settings/__init__.py +msgid "Dynamic worker adjustment not supported for sync workers" +msgstr "Penyesuaian worker dinamis tidak didukung untuk worker sinkron" + +#: changedetectionio/blueprint/settings/__init__.py +#, python-brace-format +msgid "Error adjusting workers: {}" +msgstr "Kesalahan saat menyesuaikan worker: {}" + +#: changedetectionio/blueprint/settings/__init__.py +msgid "Password protection enabled." +msgstr "Perlindungan kata sandi diaktifkan." + +#: changedetectionio/blueprint/settings/__init__.py changedetectionio/blueprint/settings/notifications/__init__.py +msgid "Settings updated." +msgstr "Pengaturan diperbarui." + +#: changedetectionio/blueprint/settings/__init__.py changedetectionio/blueprint/settings/notifications/__init__.py +#: changedetectionio/blueprint/ui/edit.py changedetectionio/processors/extract.py +msgid "An error occurred, please see below." +msgstr "Terjadi kesalahan, silakan lihat di bawah." + +#: changedetectionio/blueprint/settings/__init__.py +msgid "API Key was regenerated." +msgstr "Kunci API dibuat ulang." + +#: changedetectionio/blueprint/settings/__init__.py +msgid "Automatic scheduling paused - checks will not be queued." +msgstr "Penjadwalan otomatis dijeda - pemeriksaan tidak akan dimasukkan ke antrean." + +#: changedetectionio/blueprint/settings/__init__.py +msgid "Automatic scheduling resumed - checks will be queued normally." +msgstr "Penjadwalan otomatis dilanjutkan - pemeriksaan akan dimasukkan ke antrean seperti biasa." + +#: changedetectionio/blueprint/settings/__init__.py +msgid "All notifications muted." +msgstr "Semua notifikasi dibisukan." + +#: changedetectionio/blueprint/settings/__init__.py +msgid "All notifications unmuted." +msgstr "Semua notifikasi diaktifkan kembali." + +#: changedetectionio/blueprint/settings/llm.py +msgid "" +"api_key is required when api_base differs from the saved configuration. Refusing to send the stored API key to a " +"different endpoint." +msgstr "" +"api_key diperlukan ketika api_base berbeda dari konfigurasi yang tersimpan. Menolak mengirim kunci API tersimpan ke " +"endpoint yang berbeda." + +#: changedetectionio/blueprint/settings/llm.py +msgid "AI / LLM configuration removed." +msgstr "Konfigurasi AI / LLM dihapus." + +#: changedetectionio/blueprint/settings/llm.py +#, python-brace-format +msgid "AI summary cache cleared ({} file(s) removed)." +msgstr "Cache ringkasan AI dibersihkan ({} file dihapus)." + +#: changedetectionio/blueprint/settings/notifications/templates/apprise.html +msgid "Default Notifications" +msgstr "Notifikasi Default" + +#: changedetectionio/blueprint/settings/notifications/templates/apprise.html +msgid "These notifications apply to all web page watches, or you can configure them per group or per watch separately." +msgstr "" +"Notifikasi ini berlaku untuk semua monitor halaman web, atau Anda dapat mengonfigurasinya secara terpisah per grup " +"atau per monitor." + +#: changedetectionio/blueprint/settings/notifications/templates/apprise.html +msgid "Base URL used for the" +msgstr "URL dasar yang digunakan untuk" + +#: changedetectionio/blueprint/settings/notifications/templates/apprise.html +msgid "token in notification links." +msgstr "token dalam tautan notifikasi." + +#: changedetectionio/blueprint/settings/notifications/templates/apprise.html +msgid "Default value is the system environment variable" +msgstr "Nilai default adalah variabel lingkungan sistem" + +#: changedetectionio/blueprint/settings/notifications/templates/apprise.html +#: changedetectionio/templates/_common_fields.html +msgid "read more here" +msgstr "baca selengkapnya di sini" + +#: changedetectionio/blueprint/settings/notifications/templates/apprise.html +msgid "Back to settings" +msgstr "Kembali ke pengaturan" + +#: changedetectionio/blueprint/settings/templates/notification-log.html +msgid "Notification debug log" +msgstr "Log debug notifikasi" + +#: changedetectionio/blueprint/settings/templates/notification-log.html +msgid "For security this log is emptied on restart." +msgstr "Demi keamanan, log ini dikosongkan saat aplikasi dimulai ulang." + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/blueprint/tags/templates/edit-tag.html +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "General" +msgstr "Umum" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Fetching" +msgstr "Pengambilan" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Global Filters" +msgstr "Filter Global" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "UI Options" +msgstr "Opsi UI" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Backups" +msgstr "Cadangan" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Time & Date" +msgstr "Waktu & Tanggal" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "CAPTCHA & Proxies" +msgstr "CAPTCHA & Proksi" + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/blueprint/tags/templates/edit-tag.html +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "AI / LLM" +msgstr "AI / LLM" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Info" +msgstr "Info" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Default recheck time for all watches, current system minimum is" +msgstr "Waktu periksa ulang default untuk semua monitor, minimum sistem saat ini adalah" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "more info" +msgstr "info selengkapnya" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "After this many consecutive times that the CSS/xPath filter is missing, send a notification" +msgstr "Setelah filter CSS/xPath tidak ditemukan sebanyak ini secara berturut-turut, kirim notifikasi" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Set to 0 to disable" +msgstr "Atur ke 0 untuk menonaktifkan" + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/blueprint/ui/templates/edit.html +msgid "Limit collection of history snapshots for each watch to this number of history items." +msgstr "Batasi kumpulan snapshot riwayat setiap monitor hingga jumlah item riwayat ini." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Set to empty to disable / no limit" +msgstr "Kosongkan untuk menonaktifkan / tanpa batas" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Password protection for your changedetection.io application." +msgstr "Perlindungan kata sandi untuk aplikasi changedetection.io Anda." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Password is locked." +msgstr "Kata sandi dikunci." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Clear Snapshot History" +msgstr "Hapus Riwayat Snapshot" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Allow access to the watch change history page when password is enabled (Good for sharing the diff page)" +msgstr "" +"Izinkan akses ke halaman riwayat perubahan monitor saat kata sandi diaktifkan (berguna untuk membagikan halaman " +"perbedaan)" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "When a request returns no content, or the HTML does not contain any text, is this considered a change?" +msgstr "" +"Jika permintaan tidak mengembalikan konten, atau HTML tidak berisi teks apa pun, apakah ini dianggap sebagai " +"perubahan?" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Choose a default proxy for all watches" +msgstr "Pilih proksi default untuk semua monitor" + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/blueprint/ui/templates/edit.html +msgid "Use the Basic method (default) where your watched sites don't need Javascript to render." +msgstr "Gunakan metode Basic (default) jika situs yang dipantau tidak memerlukan Javascript untuk dirender." + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/blueprint/ui/templates/edit.html +msgid "" +"The Chrome/Javascript method requires a network connection to a running WebDriver+Chrome server, set" +" by the ENV var 'WEBDRIVER_URL'." +msgstr "" +"Metode Chrome/Javascript memerlukan koneksi jaringan ke server WebDriver+Chrome yang sedang " +"berjalan, diatur melalui variabel ENV 'WEBDRIVER_URL'." + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/blueprint/ui/templates/edit.html +msgid "" +"If you're having trouble waiting for the page to be fully rendered (text missing etc), try increasing the 'wait' time" +" here." +msgstr "" +"Jika Anda kesulitan menunggu halaman selesai dirender sepenuhnya (teks hilang, dll.), coba tingkatkan waktu 'wait' di" +" sini." + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/blueprint/ui/templates/edit.html +msgid "This will wait n seconds before extracting the text." +msgstr "Ini akan menunggu n detik sebelum mengekstrak teks." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Number of concurrent workers to process watches. More workers = faster processing but higher memory usage." +msgstr "" +"Jumlah worker bersamaan untuk memproses monitor. Lebih banyak worker = pemrosesan lebih cepat tetapi penggunaan " +"memori lebih tinggi." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Currently running:" +msgstr "Sedang berjalan:" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "operational" +msgstr "operasional" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "workers" +msgstr "worker" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "actively processing" +msgstr "sedang aktif memproses" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Example - 3 seconds random jitter could trigger up to 3 seconds earlier or up to 3 seconds later" +msgstr "Contoh - jitter acak 3 detik dapat memicu hingga 3 detik lebih awal atau hingga 3 detik lebih lambat" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "For regular plain requests (not chrome based), maximum number of seconds until timeout, 1-999." +msgstr "Untuk permintaan biasa (bukan berbasis Chrome), jumlah detik maksimum hingga timeout, 1-999." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Applied to all requests." +msgstr "Diterapkan ke semua permintaan." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Note: Simply changing the User-Agent often does not defeat anti-robot technologies, it's important to consider" +msgstr "Catatan: Mengubah User-Agent saja sering kali tidak dapat melewati teknologi antirobot, penting untuk mempertimbangkan" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "all of the ways that the browser is detected" +msgstr "semua cara browser terdeteksi" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Connect using Bright Data proxies, find out more here." +msgstr "Hubungkan menggunakan proksi Bright Data, cari tahu selengkapnya di sini." + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/blueprint/ui/templates/diff.html +#: changedetectionio/blueprint/ui/templates/edit.html changedetectionio/templates/_common_fields.html +msgid "Tip:" +msgstr "Kiat:" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Ignore whitespace, tabs and new-lines/line-feeds when considering if a change was detected." +msgstr "Abaikan spasi, tab, dan baris baru/line-feed saat menentukan apakah perubahan terdeteksi." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Note:" +msgstr "Catatan:" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Changing this will change the status of your existing watches, possibly trigger alerts etc." +msgstr "Mengubah ini akan mengubah status monitor Anda yang sudah ada, dan mungkin memicu peringatan, dll." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Render anchor tag content, default disabled, when enabled renders links as" +msgstr "Render konten tag anchor, default dinonaktifkan, saat diaktifkan tautan dirender sebagai" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Changing this could affect the content of your existing watches, possibly trigger alerts etc." +msgstr "Mengubah ini dapat memengaruhi konten monitor Anda yang sudah ada, dan mungkin memicu peringatan, dll." + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/templates/edit/include_subtract.html +msgid "Remove HTML element(s) by CSS and XPath selectors before text conversion." +msgstr "Hapus elemen HTML berdasarkan selektor CSS dan XPath sebelum konversi teks." + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/templates/edit/include_subtract.html +msgid "Don't paste HTML here, use only CSS and XPath selectors" +msgstr "Jangan tempel HTML di sini, gunakan hanya selektor CSS dan XPath" + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/templates/edit/include_subtract.html +msgid "Add multiple elements, CSS or XPath selectors per line to ignore multiple parts of the HTML." +msgstr "Tambahkan beberapa elemen, selektor CSS atau XPath per baris untuk mengabaikan beberapa bagian HTML." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Note: This is applied globally in addition to the per-watch rules." +msgstr "Catatan: Ini diterapkan secara global selain aturan per monitor." + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/templates/edit/text-options.html +msgid "Matching text will be ignored in the text snapshot (you can still see it but it wont trigger a change)" +msgstr "Teks yang cocok akan diabaikan dalam snapshot teks (Anda tetap dapat melihatnya tetapi tidak akan memicu perubahan)" + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/templates/edit/text-options.html +msgid "Each line processed separately, any line matching will be ignored (removed before creating the checksum)" +msgstr "Setiap baris diproses secara terpisah, setiap baris yang cocok akan diabaikan (dihapus sebelum membuat checksum)" + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/templates/edit/text-options.html +msgid "Regular Expression support, wrap the entire line in forward slash" +msgstr "Dukungan Regular Expression, bungkus seluruh baris dengan garis miring" + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/templates/edit/text-options.html +msgid "Changing this will affect the comparison checksum which may trigger an alert" +msgstr "Mengubah ini akan memengaruhi checksum perbandingan yang mungkin memicu peringatan" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Remove any text that appears in the \"Ignore text\" from the output (otherwise its just ignored for change-detection)" +msgstr "" +"Hapus teks apa pun yang muncul dalam \"Abaikan teks\" dari output (jika tidak, teks hanya diabaikan untuk deteksi " +"perubahan)" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "API Access" +msgstr "Akses API" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Drive your changedetection.io via API, More about" +msgstr "Kendalikan changedetection.io Anda melalui API, selengkapnya tentang" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "API access and examples here" +msgstr "akses API dan contohnya di sini" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Restrict API access limit by using" +msgstr "Batasi akses API menggunakan" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "header - required for the Chrome Extension to work" +msgstr "header - diperlukan agar Chrome Extension dapat berfungsi" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "copy" +msgstr "salin" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Regenerate API key" +msgstr "Buat ulang kunci API" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Chrome Extension" +msgstr "Chrome Extension" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Easily add any web-page to your changedetection.io installation from within Chrome." +msgstr "Tambahkan halaman web apa pun dengan mudah ke instalasi changedetection.io Anda langsung dari Chrome." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Step 1" +msgstr "Langkah 1" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Install the extension," +msgstr "Instal ekstensi," + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Step 2" +msgstr "Langkah 2" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Navigate to this page," +msgstr "Buka halaman ini," + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Step 3" +msgstr "Langkah 3" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Open the extension from the toolbar and click" +msgstr "Buka ekstensi dari toolbar dan klik" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Sync API Access" +msgstr "Sinkronkan Akses API" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Try our new Chrome Extension!" +msgstr "Coba Chrome Extension baru kami!" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Chrome store icon" +msgstr "Ikon Chrome Store" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Chrome Webstore" +msgstr "Chrome Webstore" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Maximum number of history snapshots to include in the watch specific RSS feed." +msgstr "Jumlah maksimum snapshot riwayat yang disertakan dalam feed RSS khusus monitor." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "For watching other RSS feeds - When watching RSS/Atom feeds, convert them into clean text for better change detection." +msgstr "" +"Untuk memantau feed RSS lain - Saat memantau feed RSS/Atom, konversikan menjadi teks bersih untuk deteksi perubahan " +"yang lebih baik." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Does your reader support HTML? Set it here" +msgstr "Apakah pembaca Anda mendukung HTML? Atur di sini" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "'System default' for the same template for all items, or re-use your \"Notification Body\" as the template." +msgstr "" +"Gunakan 'Default sistem' untuk template yang sama bagi semua item, atau gunakan kembali \"Isi Notifikasi\" Anda " +"sebagai template." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Ensure the settings below are correct, they are used to manage the time schedule for checking your web page watches." +msgstr "" +"Pastikan pengaturan di bawah ini benar, karena digunakan untuk mengelola jadwal waktu pemeriksaan monitor halaman web" +" Anda." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "UTC Time & Date from Server:" +msgstr "Waktu & Tanggal UTC dari Server:" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Local Time & Date in Browser:" +msgstr "Waktu & Tanggal Lokal di Browser:" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Enable this setting to open the diff page in a new tab. If disabled, the diff page will open in the current tab." +msgstr "" +"Aktifkan pengaturan ini untuk membuka halaman perbedaan di tab baru. Jika dinonaktifkan, halaman perbedaan akan " +"dibuka di tab saat ini." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Realtime UI Updates Enabled - (Restart required if this is changed)" +msgstr "Pembaruan UI Realtime Diaktifkan - (Perlu mulai ulang jika diubah)" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Enable or Disable Favicons next to the watch list" +msgstr "Aktifkan atau Nonaktifkan Favicon di samping daftar monitor" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Number of items per page in the watch overview list, 0 to disable." +msgstr "Jumlah item per halaman dalam daftar ringkasan monitor, 0 untuk menonaktifkan." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "How \"Checked\" and \"Changed\" times are shown in the watch overview list." +msgstr "Cara waktu \"Diperiksa\" dan \"Berubah\" ditampilkan dalam daftar ringkasan monitor." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "" +"\"Collapsed icon rail\" keeps the left navigation slim and reveals labels on mouse-over; \"Always expanded\" keeps " +"labels visible." +msgstr "" +"\"Rel ikon ringkas\" menjaga navigasi kiri tetap ramping dan menampilkan label saat mouse diarahkan; \"Selalu " +"diperluas\" membuat label tetap terlihat." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Tip" +msgstr "Kiat" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "\"Residential\" and \"Mobile\" proxy type can be more successful than \"Data Center\" for blocked websites." +msgstr "" +"Tipe proksi \"Residential\" dan \"Mobile\" dapat lebih berhasil daripada \"Data Center\" untuk situs web yang " +"diblokir." + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "\"Name\" will be used for selecting the proxy in the Watch Edit settings" +msgstr "\"Nama\" akan digunakan untuk memilih proksi dalam pengaturan Edit Monitor" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "" +"SOCKS5 proxies with authentication are only supported with 'plain requests' fetcher, for other fetchers you should " +"whitelist the IP access instead" +msgstr "" +"Proksi SOCKS5 dengan autentikasi hanya didukung dengan pengambil 'plain requests'; untuk pengambil lain, sebaiknya " +"masukkan akses IP ke daftar putih" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Uptime:" +msgstr "Uptime:" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Python version:" +msgstr "Versi Python:" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Maximum number of page watches:" +msgstr "Jumlah maksimum monitor halaman:" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "Plugins active:" +msgstr "Plugin aktif:" + +#: changedetectionio/blueprint/settings/templates/settings.html +msgid "No plugins active" +msgstr "Tidak ada plugin aktif" + +#. 'Usage' here means token consumption/cost stats for the AI provider, not a how-to guide +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgctxt "AI usage stats" +msgid "Usage" +msgstr "Penggunaan" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Overview" +msgstr "Ringkasan" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Provider" +msgstr "Penyedia" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Prompts" +msgstr "Prompt" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Behaviour" +msgstr "Perilaku" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "AI-powered change monitoring" +msgstr "Pemantauan perubahan bertenaga AI" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Connect an LLM to move from \"something changed\" to \"only the thing you care about changed\"." +msgstr "Hubungkan LLM untuk beralih dari \"ada sesuatu yang berubah\" menjadi \"hanya hal yang Anda pedulikan yang berubah\"." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Intent filtering" +msgstr "Pemfilteran intent" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +#, python-format +msgid "" +"Each watch or tag can carry a plain-text intent — %(ex1)s or %(ex2)s. On every detected change the AI evaluates the " +"diff against it and suppresses irrelevant noise." +msgstr "" +"Setiap monitor atau tag dapat memiliki intent teks biasa — %(ex1)s atau %(ex2)s. Pada setiap perubahan yang " +"terdeteksi, AI mengevaluasi perbedaannya terhadap intent tersebut dan menyaring gangguan yang tidak relevan." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +#, python-format +msgid "" +"Tip: intent evaluation benefits from a capable model — recommended %(local)s locally, or %(gpt)s / %(gemini)s. Very " +"small models (≤3B) may misjudge numeric comparisons." +msgstr "" +"Kiat: evaluasi intent akan lebih baik dengan model yang mumpuni — direkomendasikan %(local)s untuk lokal, atau " +"%(gpt)s / %(gemini)s. Model yang sangat kecil (≤3B) dapat salah menilai perbandingan numerik." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +#, python-format +msgid "" +"Instead of raw diffs, receive plain-language summaries in notifications — %(ex1)s or %(ex2)s. Set a global default " +"prompt here, or override per watch or tag." +msgstr "" +"Alih-alih perbedaan mentah, terima ringkasan bahasa biasa dalam notifikasi — %(ex1)s atau %(ex2)s. Atur prompt " +"default global di sini, atau timpa per monitor atau tag." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Minimal cost" +msgstr "Biaya minimal" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +#, python-format +msgid "" +"The AI sees only a unified diff of what changed — never full page HTML. Low-cost models like %(gpt)s or %(gemini)s " +"handle this well, typically fractions of a cent per check." +msgstr "" +"AI hanya melihat unified diff dari apa yang berubah — bukan HTML halaman penuh. Model berbiaya rendah seperti %(gpt)s" +" atau %(gemini)s mampu menanganinya dengan baik, biasanya hanya sebagian kecil sen per pemeriksaan." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "AI / LLM configured:" +msgstr "AI / LLM dikonfigurasi:" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Configure AI Provider" +msgstr "Konfigurasikan Penyedia AI" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "AI Provider" +msgstr "Penyedia AI" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Master switch — when off, all AI lookups are skipped even if a provider is configured below." +msgstr "Sakelar utama — saat nonaktif, semua pencarian AI dilewati meskipun penyedia dikonfigurasi di bawah." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Third-party data transfer — please read" +msgstr "Transfer data pihak ketiga — harap dibaca" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "" +"When AI features are active, change data from the websites you monitor — including page diffs and extracted text — is" +" sent to an external AI provider of your choice." +msgstr "" +"Saat fitur AI aktif, data perubahan dari situs web yang Anda pantau — termasuk diff halaman dan teks yang diekstrak —" +" dikirim ke penyedia AI eksternal pilihan Anda." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "You are solely responsible for ensuring this complies with the terms of service of each website you monitor." +msgstr "" +"Anda sepenuhnya bertanggung jawab untuk memastikan hal ini mematuhi ketentuan layanan setiap situs web yang Anda " +"pantau." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "" +"You are solely responsible for compliance with applicable data-protection laws (e.g. GDPR) regarding any personal " +"data that may appear in monitored content." +msgstr "" +"Anda sepenuhnya bertanggung jawab atas kepatuhan terhadap hukum perlindungan data yang berlaku (mis. GDPR) terkait " +"data pribadi apa pun yang mungkin muncul dalam konten yang dipantau." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "" +"API costs charged by your chosen provider are your own responsibility; this software has no visibility into or " +"control over those charges." +msgstr "" +"Biaya API yang dikenakan oleh penyedia pilihan Anda menjadi tanggung jawab Anda sendiri; perangkat lunak ini tidak " +"dapat melihat atau mengendalikan biaya tersebut." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "" +"AI / LLM models are known to hallucinate — producing plausible-sounding but factually incorrect or entirely " +"fabricated output with apparent confidence — and by design may omit or truncate relevant data during summarisation. " +"AI output must never be relied upon as complete or accurate. This software is provided as-is with no warranty of any " +"kind." +msgstr "" +"Model AI / LLM diketahui dapat berhalusinasi — menghasilkan keluaran yang terdengar masuk akal tetapi secara faktual " +"salah atau sepenuhnya dibuat-buat dengan keyakinan seolah benar — dan secara desain dapat menghilangkan atau memotong" +" data relevan saat membuat ringkasan. Keluaran AI tidak boleh dianggap lengkap atau akurat. Perangkat lunak ini " +"disediakan apa adanya tanpa jaminan apa pun." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "" +"By enabling AI features you personally indemnify and hold harmless the creator(s) and contributor(s) of this software" +" from any claims, damages, or liability arising from this data transfer or your use of AI features." +msgstr "" +"Dengan mengaktifkan fitur AI, Anda secara pribadi membebaskan dan melindungi pembuat serta kontributor perangkat " +"lunak ini dari klaim, kerusakan, atau tanggung jawab apa pun yang timbul dari transfer data ini atau penggunaan fitur" +" AI oleh Anda." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "I have read and understood the above. I accept full responsibility and indemnify the creator(s) of this software." +msgstr "" +"Saya telah membaca dan memahami hal di atas. Saya menerima tanggung jawab penuh dan membebaskan pembuat perangkat " +"lunak ini dari tuntutan." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html changedetectionio/templates/_common_fields.html +msgid "Note" +msgstr "Catatan" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +#, python-format +msgid "" +"AI / LLM is configured via environment variables (LLM_MODEL=%(model)s%(api_base)s). Remove the " +"LLM_MODEL environment variable to configure via this form instead." +msgstr "" +"AI / LLM dikonfigurasi melalui variabel lingkungan (LLM_MODEL=%(model)s%(api_base)s). Hapus variabel " +"lingkungan LLM_MODEL untuk mengonfigurasi melalui formulir ini." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "select a provider" +msgstr "pilih penyedia" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "OpenAI-compatible (vLLM, LM Studio, llama.cpp)" +msgstr "Kompatibel dengan OpenAI (vLLM, LM Studio, llama.cpp)" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Only needed for Ollama or custom/self-hosted endpoints. Leave blank for cloud providers." +msgstr "Hanya diperlukan untuk Ollama atau endpoint kustom/self-hosted. Biarkan kosong untuk penyedia cloud." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +#, python-format +msgid "" +"Reasoning models (Qwen3, DeepSeek-R1, Gemma 3, etc.) emit chain-of-thought before the final answer. This multiplier " +"scales every max_tokens cap for this endpoint to leave reasoning room. Defaults to %(default)s; raise it" +" if responses come back truncated or empty, lower it (down to 1x) if you want tighter limits on a paid endpoint. " +"Applied to Ollama and OpenAI-compatible endpoints — other cloud providers (OpenAI, Anthropic, Gemini) keep their " +"original tight caps." +msgstr "" +"Model reasoning (Qwen3, DeepSeek-R1, Gemma 3, dll.) menghasilkan chain-of-thought sebelum jawaban akhir. Pengali ini " +"menskalakan setiap batas max_tokens untuk endpoint ini agar tersedia ruang reasoning. Default " +"%(default)s; tingkatkan jika respons terpotong atau kosong, turunkan (hingga 1x) jika Anda menginginkan batas lebih " +"ketat pada endpoint berbayar. Berlaku untuk endpoint Ollama dan yang kompatibel dengan OpenAI — penyedia cloud lain " +"(OpenAI, Anthropic, Gemini) tetap menggunakan batas ketat aslinya." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Load available models" +msgstr "Muat model yang tersedia" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Available models" +msgstr "Model yang tersedia" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "choose a model" +msgstr "pilih model" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Enter API key and click 'Load available models'" +msgstr "Masukkan kunci API lalu klik 'Muat model yang tersedia'" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Remove AI / LLM configuration?" +msgstr "Hapus konfigurasi AI / LLM?" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "This will remove your saved AI provider, model, and API key." +msgstr "Ini akan menghapus penyedia AI, model, dan kunci API yang tersimpan." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Remove" +msgstr "Hapus" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +#: changedetectionio/blueprint/ui/templates/clear_all_history.html changedetectionio/templates/base.html +msgid "Cancel" +msgstr "Batal" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Test connection" +msgstr "Uji koneksi" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "" +"Your API key is stored locally and sent only to your chosen provider. On each detected change, the watch's diff and " +"extracted text are sent to the LLM — no full page HTML." +msgstr "" +"Kunci API Anda disimpan secara lokal dan hanya dikirim ke penyedia yang Anda pilih. Pada setiap perubahan yang " +"terdeteksi, diff monitor dan teks yang diekstrak dikirim ke LLM — bukan HTML halaman penuh." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Cache" +msgstr "Cache" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Clear all summary cache?" +msgstr "Hapus seluruh cache ringkasan?" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "This will remove all cached AI change summaries across all watches." +msgstr "Ini akan menghapus semua ringkasan perubahan AI yang tersimpan di cache dari seluruh monitor." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "They will be regenerated on the next check." +msgstr "Ringkasan akan dibuat ulang pada pemeriksaan berikutnya." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Clear cache" +msgstr "Hapus cache" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Clear all summary cache" +msgstr "Hapus seluruh cache ringkasan" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Removes all cached AI change summaries across all watches. They will be regenerated on the next check." +msgstr "" +"Menghapus semua ringkasan perubahan AI yang tersimpan di cache dari seluruh monitor. Ringkasan akan dibuat ulang pada" +" pemeriksaan berikutnya." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "" +"Enables litellm verbose output (routed through loguru). Useful when diagnosing provider errors or empty responses. " +"Leave off in production — generates a lot of log volume." +msgstr "" +"Mengaktifkan output verbose litellm (dialirkan melalui loguru). Berguna saat mendiagnosis kesalahan penyedia atau " +"respons kosong. Biarkan nonaktif di produksi — menghasilkan volume log yang besar." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Default AI Change Summary" +msgstr "Ringkasan Perubahan AI Default" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Used for all watches unless overridden by the watch or its tag/group." +msgstr "Digunakan untuk semua monitor kecuali ditimpa oleh monitor atau tag/grupnya." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "Modify default prompt" +msgstr "Ubah prompt default" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +#, python-format +msgid "" +"When enabled, the %(diff)s notification token shows the AI summary instead of the raw diff. Use " +"%(raw_diff)s to always get the original." +msgstr "" +"Saat diaktifkan, token notifikasi %(diff)s menampilkan ringkasan AI alih-alih diff mentah. Gunakan " +"%(raw_diff)s untuk selalu mendapatkan versi asli." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "" +"When enabled, the AI will be used as a last resort to extract price and stock status from product pages where no " +"structured metadata (JSON-LD, microdata, OpenGraph) is found." +msgstr "" +"Saat diaktifkan, AI akan digunakan sebagai upaya terakhir untuk mengekstrak harga dan status stok dari halaman produk" +" ketika tidak ditemukan metadata terstruktur (JSON-LD, microdata, OpenGraph)." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "" +"For Gemini 2.5+ models only. Thinking tokens improve reasoning quality but count against the output budget. Set to " +"Off if summaries are being cut short." +msgstr "" +"Khusus model Gemini 2.5+. Token thinking meningkatkan kualitas reasoning tetapi mengurangi anggaran output. Atur ke " +"Nonaktif jika ringkasan terpotong." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "" +"Upper limit on tokens the AI may use when writing a change summary. Higher values allow longer summaries but cost " +"more." +msgstr "" +"Batas maksimum token yang dapat digunakan AI saat menulis ringkasan perubahan. Nilai lebih tinggi memungkinkan " +"ringkasan lebih panjang tetapi biayanya lebih besar." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Which baseline the watchlist “Summary” link compares the latest version against by default." +msgstr "Baseline yang digunakan tautan “Ringkasan” pada daftar monitor untuk membandingkan versi terbaru secara default." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Configure a provider first to unlock behaviour settings." +msgstr "Konfigurasikan penyedia terlebih dahulu untuk membuka pengaturan perilaku." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Token & Cost Tracking" +msgstr "Pelacakan Token & Biaya" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "This month" +msgstr "Bulan ini" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "tokens" +msgstr "token" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +#, python-format +msgid "%(percent)s%% of %(budget)s" +msgstr "%(percent)s%% dari %(budget)s" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "All-time total" +msgstr "Total sepanjang waktu" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Monthly token budget reached. AI summarisation is paused until next month." +msgstr "Anggaran token AI bulanan tercapai. Ringkasan AI dijeda hingga bulan berikutnya." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Token budget this period" +msgstr "Anggaran token periode ini" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "(set via LLM_TOKEN_BUDGET_MONTH)" +msgstr "(diatur melalui LLM_TOKEN_BUDGET_MONTH)" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "0 = unlimited" +msgstr "0 = tanpa batas" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "tokens (0 = unlimited)" +msgstr "token (0 = tanpa batas)" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Current billing period" +msgstr "Periode penagihan saat ini" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "(set via LLM_MAX_INPUT_CHARS)" +msgstr "(diatur melalui LLM_MAX_INPUT_CHARS)" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +#, python-format +msgid "characters — currently enforcing: %(limit)s" +msgstr "karakter — batas yang diterapkan saat ini: %(limit)s" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "" +"tokens — skips AI evaluation on a watch once its usage within the current period (monthly) hits this cap (0 = " +"unlimited)" +msgstr "" +"token — melewati evaluasi AI pada monitor setelah penggunaan dalam periode saat ini (bulanan) mencapai batas ini (0 =" +" tanpa batas)" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "No AI usage recorded yet." +msgstr "Belum ada penggunaan AI yang tercatat." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Token budget" +msgstr "Anggaran token" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "tokens per month (0 = unlimited)" +msgstr "token per bulan (0 = tanpa batas)" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "platform.openai.com → API keys" +msgstr "platform.openai.com → Kunci API" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "console.anthropic.com → API keys" +msgstr "console.anthropic.com → Kunci API" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "aistudio.google.com → Get API key" +msgstr "aistudio.google.com → Dapatkan kunci API" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "No API key needed for local Ollama" +msgstr "Tidak perlu kunci API untuk Ollama lokal" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Bearer token for your self-hosted server (vLLM, LM Studio, etc.)" +msgstr "Bearer token untuk server self-hosted Anda (vLLM, LM Studio, dll.)" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "openrouter.ai → Keys" +msgstr "openrouter.ai → Kunci" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Select a provider first." +msgstr "Pilih penyedia terlebih dahulu." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Loading…" +msgstr "Memuat…" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "No models returned by the provider." +msgstr "Penyedia tidak mengembalikan model." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "— choose a model —" +msgstr "— pilih model —" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "models available with your key" +msgstr "model tersedia dengan kunci Anda" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Request failed" +msgstr "Permintaan gagal" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Testing…" +msgstr "Menguji…" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Connected" +msgstr "Terhubung" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html +msgid "Failed" +msgstr "Gagal" + +#: changedetectionio/blueprint/tags/__init__.py +#, python-brace-format +msgid "The tag \"{}\" already exists" +msgstr "Tag \"{}\" sudah ada" + +#: changedetectionio/blueprint/tags/__init__.py +msgid "Tag added" +msgstr "Tag ditambahkan" + +#: changedetectionio/blueprint/tags/__init__.py +msgid "Tag deleted, removing from watches in background" +msgstr "Tag dihapus, sedang dihapus dari monitor di latar belakang" + +#: changedetectionio/blueprint/tags/__init__.py +msgid "Unlinking tag from watches in background" +msgstr "Melepas tautan tag dari monitor di latar belakang" + +#: changedetectionio/blueprint/tags/__init__.py +msgid "All tags deleted, clearing from watches in background" +msgstr "Semua tag dihapus, sedang dibersihkan dari monitor di latar belakang" + +#: changedetectionio/blueprint/tags/__init__.py +msgid "Tag not found" +msgstr "Tag tidak ditemukan" + +#: changedetectionio/blueprint/tags/__init__.py +msgid "Updated" +msgstr "Diperbarui" + +#: changedetectionio/blueprint/tags/form.py +msgid "Activate for individual watches in this tag/group?" +msgstr "Aktifkan untuk masing-masing monitor dalam tag/grup ini?" + +#: changedetectionio/blueprint/tags/form.py +msgid "Auto-apply to watches with URLs matching" +msgstr "Terapkan otomatis ke monitor dengan URL yang cocok" + +#: changedetectionio/blueprint/tags/form.py +msgid "e.g. *://example.com/* or github.com/myorg" +msgstr "mis. *://example.com/* atau github.com/myorg" + +#: changedetectionio/blueprint/tags/form.py changedetectionio/blueprint/tags/templates/edit-tag.html +msgid "Tag colour" +msgstr "Warna tag" + +#: changedetectionio/blueprint/tags/form.py +msgid "Must be a hex colour, for example #4f8ef7" +msgstr "Harus berupa warna hex, misalnya #4f8ef7" + +#: changedetectionio/blueprint/tags/form.py +msgid "AI for watches in this group" +msgstr "AI untuk monitor dalam grup ini" + +#: changedetectionio/blueprint/tags/form.py +msgid "On, use the settings below" +msgstr "Aktif, gunakan pengaturan di bawah" + +#: changedetectionio/blueprint/tags/form.py +msgid "Off for every watch" +msgstr "Nonaktif untuk setiap monitor" + +#: changedetectionio/blueprint/tags/form.py +msgid "Leave it to each watch" +msgstr "Biarkan ditentukan oleh masing-masing monitor" + +#: changedetectionio/blueprint/tags/form.py +msgid "Tag name" +msgstr "Nama tag" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html changedetectionio/blueprint/ui/templates/edit.html +msgid "Filters & Triggers" +msgstr "Filter & Pemicu" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html +msgid "" +"Automatically applies this tag to any watch whose URL matches. Supports wildcards: *example.com* or " +"plain substring: github.com/myorg" +msgstr "" +"Secara otomatis menerapkan tag ini ke setiap monitor yang URL-nya cocok. Mendukung wildcard: " +"*example.com* atau substring biasa: github.com/myorg" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html +msgid "Currently matching watches" +msgstr "Monitor yang cocok saat ini" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html +msgid "Custom colour" +msgstr "Warna kustom" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html +msgid "Leave unchecked to use the auto-generated colour based on the tag name." +msgstr "Biarkan tidak dicentang untuk menggunakan warna yang dibuat otomatis berdasarkan nama tag." + +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 +#: changedetectionio/blueprint/tags/templates/edit-tag.html +msgid "These settings are added to any existing watch configurations." +msgstr "Pengaturan ini ditambahkan ke konfigurasi monitor yang sudah ada." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html changedetectionio/blueprint/ui/templates/edit.html +msgid "Text filtering" +msgstr "Pemfilteran teks" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html changedetectionio/blueprint/ui/templates/edit.html +msgid "Use with caution!" +msgstr "Gunakan dengan hati-hati!" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html changedetectionio/blueprint/ui/templates/edit.html +msgid "This will easily fill up your email storage quota or flood other storages." +msgstr "Ini dapat dengan mudah memenuhi kuota penyimpanan email Anda atau membanjiri penyimpanan lainnya." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html changedetectionio/blueprint/ui/templates/edit.html +msgid "Look out!" +msgstr "Perhatian!" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html changedetectionio/blueprint/ui/templates/edit.html +msgid "Lookout!" +msgstr "Perhatian!" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html changedetectionio/blueprint/ui/templates/edit.html +#, python-format +msgid "" +"There are system-wide notification URLs enabled, this form will override notification " +"settings for this watch only ‐ an empty Notification URL list here will still send notifications." +msgstr "" +"Ada URL notifikasi tingkat sistem yang aktif, formulir ini akan menimpa pengaturan notifikasi" +" hanya untuk monitor ini ‐ daftar URL Notifikasi yang kosong di sini tetap akan mengirim notifikasi." + +#: changedetectionio/blueprint/tags/templates/edit-tag.html changedetectionio/blueprint/ui/templates/edit.html +msgid "Use system defaults" +msgstr "Gunakan default sistem" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html +msgid "Add a new organisational tag" +msgstr "Tambahkan tag organisasi baru" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html +msgid "Groups allows you to manage filters and notifications for multiple watches under a single organisational tag." +msgstr "Grup memungkinkan Anda mengelola filter dan notifikasi untuk beberapa monitor di bawah satu tag organisasi." + +#: changedetectionio/blueprint/tags/templates/groups-overview.html +msgid "# Watches" +msgstr "# Monitor" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html +msgid "Tag / Label name" +msgstr "Nama tag / label" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html +msgid "No website organisational tags/groups configured" +msgstr "Tidak ada tag/grup organisasi situs web yang dikonfigurasi" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html changedetectionio/templates/menu.html +msgid "Mute notifications" +msgstr "Bisukan notifikasi" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html changedetectionio/blueprint/ui/edit.py +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +msgid "Edit" +msgstr "Edit" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Recheck" +msgstr "Periksa ulang" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html +msgid "Delete Group?" +msgstr "Hapus Grup?" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html +#, python-format +msgid "

Are you sure you want to delete group %(title)s?

This action cannot be undone.

" +msgstr "

Anda yakin ingin menghapus grup %(title)s?

Tindakan ini tidak dapat dibatalkan.

" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html changedetectionio/blueprint/ui/templates/edit.html +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html changedetectionio/templates/base.html +msgid "Delete" +msgstr "Hapus" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html +msgid "Deletes and removes tag" +msgstr "Menghapus tag" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html +msgid "Unlink Group?" +msgstr "Lepas Tautan Grup?" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html +#, python-format +msgid "" +"

Are you sure you want to unlink all watches from group %(title)s?

The tag will be kept but " +"watches will be removed from it.

" +msgstr "" +"

Anda yakin ingin melepas semua monitor dari grup %(title)s?

Tag akan dipertahankan tetapi " +"monitor akan dihapus dari tag tersebut.

" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html changedetectionio/templates/base.html +msgid "Unlink" +msgstr "Lepas tautan" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html +msgid "Keep the tag but unlink any watches" +msgstr "Pertahankan tag tetapi lepas semua monitor" + +#: changedetectionio/blueprint/tags/templates/groups-overview.html changedetectionio/blueprint/ui/templates/edit.html +msgid "RSS Feed for this watch" +msgstr "Feed RSS untuk monitor ini" + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "{} watches deleted" +msgstr "{} monitor dihapus" + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "{} watches paused" +msgstr "{} monitor dijeda" + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "{} watches unpaused" +msgstr "{} monitor dilanjutkan" + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "{} watches updated" +msgstr "{} monitor diperbarui" + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "{} watches muted" +msgstr "{} monitor dibisukan" + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "{} watches un-muted" +msgstr "{} monitor diaktifkan kembali notifikasinya" + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "{} watches queued for rechecking" +msgstr "{} monitor dimasukkan ke antrean untuk diperiksa ulang" + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "{} watches errors cleared" +msgstr "Kesalahan pada {} monitor dibersihkan" + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "{} watches cleared/reset." +msgstr "{} monitor dibersihkan/direset." + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "{} watches set to use default notification settings" +msgstr "{} monitor diatur untuk menggunakan pengaturan notifikasi default" + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "Browser / fetch method updated on {} watches" +msgstr "Metode browser / pengambilan diperbarui pada {} monitor" + +#: changedetectionio/blueprint/ui/__init__.py +msgid "Invalid browser / fetch method selected" +msgstr "Metode browser / pengambilan yang dipilih tidak valid" + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "Proxy updated on {} watches" +msgstr "Proksi diperbarui pada {} monitor" + +#: changedetectionio/blueprint/ui/__init__.py +msgid "Invalid proxy selected" +msgstr "Proksi yang dipilih tidak valid" + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "{} watches were tagged" +msgstr "{} monitor diberi tag" + +#: changedetectionio/blueprint/ui/__init__.py changedetectionio/blueprint/watchlist/__init__.py +msgid "Watch not found" +msgstr "Monitor tidak ditemukan" + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "Cleared snapshot history for watch {}" +msgstr "Riwayat snapshot untuk monitor {} dibersihkan" + +#: changedetectionio/blueprint/ui/__init__.py changedetectionio/blueprint/ui/templates/clear_all_history.html +msgid "clear" +msgstr "bersihkan" + +#: changedetectionio/blueprint/ui/__init__.py +msgid "History clearing started in background" +msgstr "Pembersihan riwayat dimulai di latar belakang" + +#: changedetectionio/blueprint/ui/__init__.py +msgid "Incorrect confirmation text." +msgstr "Teks konfirmasi salah." + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "The watch by UUID {} does not exist." +msgstr "Monitor dengan UUID {} tidak ada." + +#: changedetectionio/blueprint/ui/__init__.py +msgid "Deleted." +msgstr "Dihapus." + +#: changedetectionio/blueprint/ui/__init__.py +msgid "Cloned, you are editing the new watch." +msgstr "Dikloning, Anda sedang mengedit monitor baru." + +#: changedetectionio/blueprint/ui/__init__.py +msgid "Watch is already queued or being checked." +msgstr "Monitor sudah berada dalam antrean atau sedang diperiksa." + +#: changedetectionio/blueprint/ui/__init__.py +msgid "Queued 1 watch for rechecking." +msgstr "1 monitor dimasukkan ke antrean untuk diperiksa ulang." + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "Queued {count} watches for rechecking ({skipped_count} already queued or running)." +msgstr "" +"{count} monitor dimasukkan ke antrean untuk diperiksa ulang ({skipped_count} sudah dalam antrean atau sedang " +"berjalan)." + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "Queued {} watches for rechecking." +msgstr "{} monitor dimasukkan ke antrean untuk diperiksa ulang." + +#: changedetectionio/blueprint/ui/__init__.py +msgid "Queueing watches for rechecking in background..." +msgstr "Memasukkan monitor ke antrean pemeriksaan ulang di latar belakang..." + +#: changedetectionio/blueprint/ui/__init__.py +#, python-brace-format +msgid "Could not share, something went wrong while communicating with the share server - {}" +msgstr "Tidak dapat membagikan, terjadi kesalahan saat berkomunikasi dengan server berbagi - {}" + +#: changedetectionio/blueprint/ui/__init__.py +msgid "Language set to auto-detect from browser" +msgstr "Bahasa diatur agar terdeteksi otomatis dari browser" + +#: changedetectionio/blueprint/ui/diff.py changedetectionio/blueprint/ui/preview.py +msgid "No history found for the specified link, bad link?" +msgstr "Tidak ada riwayat untuk tautan yang ditentukan, tautan salah?" + +#: changedetectionio/blueprint/ui/diff.py +msgid "Not enough history (2 snapshots required) to show difference page for this watch." +msgstr "Riwayat tidak cukup (diperlukan 2 snapshot) untuk menampilkan halaman perbedaan monitor ini." + +#: changedetectionio/blueprint/ui/diff.py +#, python-format +msgid "Monthly AI token budget of %(budget)s tokens reached (%(used)s used). Resets next month." +msgstr "Anggaran token AI bulanan sebesar %(budget)s token tercapai (%(used)s digunakan). Direset bulan depan." + +#: changedetectionio/blueprint/ui/edit.py +msgid "No watches to edit" +msgstr "Tidak ada monitor untuk diedit" + +#: changedetectionio/blueprint/ui/edit.py +#, python-brace-format +msgid "No watch with the UUID {} found." +msgstr "Tidak ditemukan monitor dengan UUID {}." + +#: changedetectionio/blueprint/ui/edit.py +#, python-brace-format +msgid "Switched to mode - {}." +msgstr "Beralih ke mode - {}." + +#: changedetectionio/blueprint/ui/edit.py +#, python-brace-format +msgid "Could not load '{}' processor, processor plugin might be missing. Please select a different processor." +msgstr "Tidak dapat memuat prosesor '{}', plugin prosesor mungkin tidak tersedia. Silakan pilih prosesor lain." + +#: changedetectionio/blueprint/ui/edit.py +#, python-brace-format +msgid "Could not load '{}' processor, processor plugin might be missing." +msgstr "Tidak dapat memuat prosesor '{}', plugin prosesor mungkin tidak tersedia." + +#: changedetectionio/blueprint/ui/edit.py changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "System settings default" +msgstr "Default pengaturan sistem" + +#: changedetectionio/blueprint/ui/edit.py changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Default" +msgstr "Default" + +#: changedetectionio/blueprint/ui/edit.py +msgid "Updated watch - unpaused!" +msgstr "Monitor diperbarui - jeda dinonaktifkan!" + +#: changedetectionio/blueprint/ui/edit.py +msgid "Updated watch." +msgstr "Monitor diperbarui." + +#: changedetectionio/blueprint/ui/preview.py +msgid "Preview unavailable - No fetch/check completed or triggers not reached" +msgstr "Pratinjau tidak tersedia - Belum ada pengambilan/pemeriksaan selesai atau pemicu belum tercapai" + +#: changedetectionio/blueprint/ui/preview.py +msgid "Diff" +msgstr "Perbedaan" + +#: changedetectionio/blueprint/ui/queue.py changedetectionio/blueprint/watchlist/__init__.py +#, python-brace-format +msgid "displaying {start} - {end} {record_name} in total {total}" +msgstr "menampilkan {start} - {end} {record_name} dari total {total}" + +#: changedetectionio/blueprint/ui/queue.py +msgid "queued items" +msgstr "item dalam antrean" + +#: changedetectionio/blueprint/ui/queue.py +#, python-brace-format +msgid "Queue cleared ({} items removed)." +msgstr "Antrean dibersihkan ({} item dihapus)." + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html +msgid "This will remove version history (snapshots) for ALL watches, but keep your list of URLs!" +msgstr "Ini akan menghapus riwayat versi (snapshot) untuk SEMUA monitor, tetapi tetap mempertahankan daftar URL Anda!" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html +msgid "You may like to use the" +msgstr "Anda mungkin ingin menggunakan" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html +msgid "BACKUP" +msgstr "CADANGAN" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html +msgid "link first." +msgstr "terlebih dahulu." + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html +msgid "Confirmation text" +msgstr "Teks konfirmasi" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html +msgid "Type in the word" +msgstr "Ketik kata" + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html +msgid "to confirm that you understand." +msgstr "untuk mengonfirmasi bahwa Anda mengerti." + +#: changedetectionio/blueprint/ui/templates/clear_all_history.html +msgid "Clear History!" +msgstr "Hapus Riwayat!" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html +msgid "Share diff as image" +msgstr "Bagikan perbedaan sebagai gambar" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html +msgid "Share as Image" +msgstr "Bagikan sebagai Gambar" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html +msgid "Ignore any lines matching" +msgstr "Abaikan baris apa pun yang cocok dengan" + +#: changedetectionio/blueprint/ui/templates/diff-offscreen-options.html +msgid "Ignore any lines matching excluding digits" +msgstr "Abaikan baris apa pun yang cocok, kecuali digit" + +#. 'From' labels the older snapshot version selector on the diff page +#: changedetectionio/blueprint/ui/templates/diff.html +msgctxt "diff version" +msgid "From" +msgstr "Dari" + +#. 'To' labels the newer snapshot version selector on the diff page +#: changedetectionio/blueprint/ui/templates/diff.html +msgctxt "diff version" +msgid "To" +msgstr "Ke" + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "Words" +msgstr "Kata" + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "Lines" +msgstr "Baris" + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "Ignore Whitespace" +msgstr "Abaikan Spasi" + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "Same/non-changed" +msgstr "Sama/tidak berubah" + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "Removed" +msgstr "Dihapus" + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/blueprint/ui/templates/edit.html +msgid "Added" +msgstr "Ditambahkan" + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/blueprint/ui/templates/edit.html +msgid "Replaced" +msgstr "Diganti" + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "Include all intermediate snapshots between the selected versions in the AI summary" +msgstr "Sertakan semua snapshot perantara di antara versi yang dipilih dalam ringkasan AI" + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "AI: every change between versions" +msgstr "AI: setiap perubahan antarversi" + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/blueprint/ui/templates/preview.html +msgid "Keyboard:" +msgstr "Keyboard:" + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/blueprint/ui/templates/preview.html +msgid "Previous" +msgstr "Sebelumnya" + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/blueprint/ui/templates/preview.html +msgid "Next" +msgstr "Berikutnya" + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "Jump to next difference" +msgstr "Lompat ke perbedaan berikutnya" + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "Jump" +msgstr "Lompat" + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/blueprint/ui/templates/preview.html +#: changedetectionio/processors/templates/extract.html +msgid "Error Text" +msgstr "Teks Kesalahan" + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/blueprint/ui/templates/preview.html +#: changedetectionio/processors/templates/extract.html +msgid "Error Screenshot" +msgstr "Tangkapan Layar Kesalahan" + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/blueprint/ui/templates/preview.html +#: changedetectionio/processors/templates/extract.html +msgid "Text" +msgstr "Teks" + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/blueprint/ui/templates/preview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Current screenshot" +msgstr "Tangkapan layar saat ini" + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/processors/extract.py +#: changedetectionio/processors/templates/extract.html +msgid "Extract Data" +msgstr "Ekstrak Data" + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "seconds ago." +msgstr "detik yang lalu." + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/blueprint/ui/templates/preview.html +msgid "seconds ago" +msgstr "detik yang lalu" + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "Current error-ing screenshot from most recent request" +msgstr "Tangkapan layar kesalahan saat ini dari permintaan terbaru" + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "Pro-tip: You can enable \"share access when password is enabled\" from settings." +msgstr "Kiat pro: Anda dapat mengaktifkan \"bagikan akses saat kata sandi diaktifkan\" dari pengaturan." + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Generating change summary…" +msgstr "Membuat ringkasan perubahan…" + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "Goto single snapshot" +msgstr "Buka snapshot tunggal" + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "Highlight text to share or add to ignore lists." +msgstr "Sorot teks untuk dibagikan atau ditambahkan ke daftar abaikan." + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "Download difference patch" +msgstr "Unduh patch perbedaan" + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/blueprint/ui/templates/preview.html +msgid "For now, Differences are performed on text, not graphically, only the latest screenshot is available." +msgstr "Untuk saat ini, perbedaan dilakukan pada teks, bukan secara grafis; hanya tangkapan layar terbaru yang tersedia." + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/blueprint/ui/templates/preview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Current screenshot from most recent request" +msgstr "Tangkapan layar saat ini dari permintaan terbaru" + +#: changedetectionio/blueprint/ui/templates/diff.html changedetectionio/blueprint/ui/templates/preview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "No screenshot available just yet! Try rechecking the page." +msgstr "Belum ada tangkapan layar! Coba periksa ulang halaman." + +#: changedetectionio/blueprint/ui/templates/diff.html +msgid "Screenshot requires Playwright/WebDriver enabled" +msgstr "Tangkapan layar memerlukan Playwright/WebDriver yang diaktifkan" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Request" +msgstr "Permintaan" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Browser Steps" +msgstr "Langkah Browser" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Visual Filter Selector" +msgstr "Selektor Filter Visual" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Conditions" +msgstr "Kondisi" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Stats" +msgstr "Statistik" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Some sites use JavaScript to create the content, for this you should" +msgstr "Beberapa situs menggunakan JavaScript untuk membuat konten, untuk ini Anda sebaiknya" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "use the Chrome/WebDriver Fetcher" +msgstr "menggunakan Pengambil Chrome/WebDriver" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Variables are supported in the URL" +msgstr "Variabel didukung dalam URL" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "help and examples here" +msgstr "bantuan dan contoh di sini" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Organisational tag/group name used in the main listing page" +msgstr "Nama tag/grup organisasi yang digunakan pada halaman daftar utama" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Also automatically applied by URL pattern:" +msgstr "Juga diterapkan otomatis berdasarkan pola URL:" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Automatically uses the page title if found, you can also use your own title/description here" +msgstr "Secara otomatis menggunakan judul halaman jika ditemukan, Anda juga dapat menggunakan judul/deskripsi sendiri di sini" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "The interval/amount of time between each check." +msgstr "Interval/jangka waktu antara setiap pemeriksaan." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "" +"Sends a notification when the filter can no longer be seen on the page, good for knowing when the page changed and " +"your filter will not work anymore." +msgstr "" +"Mengirim notifikasi saat filter tidak lagi terlihat di halaman, berguna untuk mengetahui saat halaman berubah dan " +"filter Anda tidak dapat digunakan lagi." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Set to empty to use system settings default" +msgstr "Kosongkan untuk menggunakan default pengaturan sistem" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Connect using Bright Data and Oxylabs Proxies, find out more here." +msgstr "Hubungkan menggunakan Proksi Bright Data dan Oxylabs, cari tahu selengkapnya di sini." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Check/Scan all" +msgstr "Periksa/Pindai semua" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Choose a proxy for this watch" +msgstr "Pilih proksi untuk monitor ini" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Using the current global default settings" +msgstr "Menggunakan pengaturan default global saat ini" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Show advanced options" +msgstr "Tampilkan opsi lanjutan" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Run this code before performing change detection, handy for filling in fields and other actions" +msgstr "Jalankan kode ini sebelum melakukan deteksi perubahan, berguna untuk mengisi bidang dan tindakan lainnya" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "More help and examples here" +msgstr "Bantuan dan contoh lainnya di sini" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Variables are supported in the request body" +msgstr "Variabel didukung dalam isi permintaan" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Variables are supported in the request header values" +msgstr "Variabel didukung dalam nilai header permintaan" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Alert! Extra headers file found and will be added to this watch!" +msgstr "Peringatan! File header tambahan ditemukan dan akan ditambahkan ke monitor ini!" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Headers can be also read from a file in your data-directory" +msgstr "Header juga dapat dibaca dari file di direktori data Anda" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Read more here" +msgstr "Baca selengkapnya di sini" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Not supported by Selenium browser" +msgstr "Tidak didukung oleh browser Selenium" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Turn on text finder" +msgstr "Aktifkan pencari teks" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Please wait, first browser step can take a little time to load.." +msgstr "Harap tunggu, langkah browser pertama mungkin perlu sedikit waktu untuk dimuat.." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Click here to Start" +msgstr "Klik di sini untuk Mulai" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Please allow 10-15 seconds for the browser to connect." +msgstr "Harap tunggu 10-15 detik agar browser terhubung." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Press \"Play\" to start." +msgstr "Tekan \"Play\" untuk memulai." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Visual Selector data is not ready, watch needs to be checked atleast once." +msgstr "Data Selektor Visual belum siap, monitor harus diperiksa setidaknya sekali." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "" +"Sorry, this functionality only works with fetchers that support interactive Javascript (so far only Playwright based " +"fetchers)" +msgstr "" +"Maaf, fungsi ini hanya bekerja dengan pengambil yang mendukung Javascript interaktif (sejauh ini hanya pengambil " +"berbasis Playwright)" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "to one that supports interactive Javascript." +msgstr "ke pengambil yang mendukung Javascript interaktif." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "You need to" +msgstr "Anda perlu" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Set the fetch method" +msgstr "Atur metode pengambilan" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Use the verify (✓) button to test if a condition passes against the current snapshot." +msgstr "Gunakan tombol verifikasi (✓) untuk menguji apakah suatu kondisi terpenuhi terhadap snapshot saat ini." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Read a quick tutorial about" +msgstr "Baca tutorial singkat tentang" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "using conditional web page changes here" +msgstr "menggunakan perubahan halaman web bersyarat di sini" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Activate preview" +msgstr "Aktifkan pratinjau" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Pro-tips:" +msgstr "Kiat pro:" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Use the preview page to see your filters and triggers highlighted." +msgstr "Gunakan halaman pratinjau untuk melihat filter dan pemicu Anda disorot." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Limit trigger/ignore/block/extract to;" +msgstr "Batasi pemicu/abaikan/blokir/ekstrak ke;" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "" +"Note: Depending on the length and similarity of the text on each line, the algorithm may consider an " +"addition instead of replacement for example." +msgstr "" +"Catatan: Bergantung pada panjang dan kemiripan teks pada setiap baris, algoritme mungkin menganggapnya sebagai " +"penambahan alih-alih penggantian, misalnya." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "So it's always better to select" +msgstr "Jadi selalu lebih baik memilih" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "when you're interested in new content." +msgstr "saat Anda tertarik pada konten baru." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "When content is merely moved in a list, it will also trigger an" +msgstr "Saat konten hanya dipindahkan dalam daftar, hal itu juga akan memicu" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "addition" +msgstr "penambahan" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "consider enabling" +msgstr "pertimbangkan untuk mengaktifkan" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Only trigger when unique lines appear" +msgstr "Hanya picu saat baris unik muncul" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "" +"Good for websites that just move the content around, and you want to know when NEW content is added, compares new " +"lines against all history for this watch." +msgstr "" +"Cocok untuk situs web yang hanya memindahkan konten, dan Anda ingin tahu saat konten BARU ditambahkan; membandingkan " +"baris baru dengan seluruh riwayat monitor ini." + +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Helps reduce changes detected caused by sites shuffling lines around, combine with check unique lines below." +msgstr "" +"Membantu mengurangi perubahan terdeteksi yang disebabkan situs mengacak urutan baris, kombinasikan dengan periksa " +"baris unik di bawah." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Remove any whitespace before and after each line of text" +msgstr "Hapus spasi apa pun sebelum dan sesudah setiap baris teks" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "AI Intent preview" +msgstr "Pratinjau Intent AI" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Loading..." +msgstr "Memuat..." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "The Visual Selector tool lets you select the" +msgstr "Alat Selektor Visual memungkinkan Anda memilih" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "text" +msgstr "teks" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "" +"elements that will be used for the change detection. It automatically fills-in the filters in the " +"\"CSS/JSONPath/JQ/XPath Filters\" box of the" +msgstr "" +"elemen yang akan digunakan untuk deteksi perubahan. Alat ini otomatis mengisi filter pada kotak \"Filter " +"CSS/JSONPath/JQ/XPath\" di" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "tab. Use" +msgstr "tab. Gunakan" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Shift+Click" +msgstr "Shift+Klik" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "to select multiple items." +msgstr "untuk memilih beberapa item." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Selection Mode:" +msgstr "Mode Pemilihan:" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Draw area" +msgstr "Gambar area" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "One moment, fetching screenshot and element information.." +msgstr "Tunggu sebentar, sedang mengambil tangkapan layar dan informasi elemen.." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Sorry, this functionality only works with fetchers that support Javascript and screenshots (such as playwright etc)." +msgstr "" +"Maaf, fungsi ini hanya bekerja dengan pengambil yang mendukung Javascript dan tangkapan layar (seperti Playwright, " +"dll.)." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "to one that supports Javascript and screenshots." +msgstr "ke pengambil yang mendukung Javascript dan tangkapan layar." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Check count" +msgstr "Jumlah pemeriksaan" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Consecutive filter failures" +msgstr "Kegagalan filter berturut-turut" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "History length" +msgstr "Panjang riwayat" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Last fetch duration" +msgstr "Durasi pengambilan terakhir" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Notification alert count" +msgstr "Jumlah peringatan notifikasi" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Server type reply" +msgstr "Balasan tipe server" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "AI tokens (last check)" +msgstr "Token AI (pemeriksaan terakhir)" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "AI tokens (total)" +msgstr "Token AI (total)" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Download latest HTML snapshot" +msgstr "Unduh snapshot HTML terbaru" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Download watch data package" +msgstr "Unduh paket data monitor" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Delete Watch?" +msgstr "Hapus Monitor?" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Are you sure you want to delete the watch for:" +msgstr "Anda yakin ingin menghapus monitor untuk:" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "This action cannot be undone." +msgstr "Tindakan ini tidak dapat dibatalkan." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Clear History?" +msgstr "Hapus Riwayat?" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Are you sure you want to clear all history for:" +msgstr "Anda yakin ingin menghapus seluruh riwayat untuk:" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "This will remove all snapshots and previous versions. This action cannot be undone." +msgstr "Ini akan menghapus semua snapshot dan versi sebelumnya. Tindakan ini tidak dapat dibatalkan." + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Clear History" +msgstr "Hapus Riwayat" + +#: changedetectionio/blueprint/ui/templates/edit.html +msgid "Clone & Edit" +msgstr "Kloning & Edit" + +#: changedetectionio/blueprint/ui/templates/preview.html +msgid "Select timestamp" +msgstr "Pilih stempel waktu" + +#: changedetectionio/blueprint/ui/templates/preview.html +msgid "Current erroring screenshot from most recent request" +msgstr "Tangkapan layar kesalahan saat ini dari permintaan terbaru" + +#: changedetectionio/blueprint/ui/templates/preview.html +msgid "Screenshot requires a Content Fetcher ( Sockpuppetbrowser, selenium, etc ) that supports screenshots." +msgstr "Tangkapan layar memerlukan Pengambil Konten (Sockpuppetbrowser, selenium, dll.) yang mendukung tangkapan layar." + +#: changedetectionio/blueprint/ui/templates/queue.html +#, python-format +msgid "Worker %(num)s" +msgstr "Worker %(num)s" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "— idle" +msgstr "— menganggur" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "running" +msgstr "berjalan" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "idle" +msgstr "menganggur" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "done" +msgstr "selesai" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "cancel" +msgstr "batal" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "No workers configured and queue is empty" +msgstr "Tidak ada worker yang dikonfigurasi dan antrean kosong" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "Watch no longer exists" +msgstr "Monitor sudah tidak ada" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "Nothing running" +msgstr "Tidak ada yang berjalan" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "Check queue" +msgstr "Antrean pemeriksaan" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "Live view of what the workers are doing right now and what is waiting in line." +msgstr "Tampilan langsung tentang apa yang sedang dilakukan worker dan apa yang menunggu dalam antrean." + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "Workers" +msgstr "Worker" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "Running now" +msgstr "Sedang berjalan" + +#: changedetectionio/blueprint/ui/templates/queue.html +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +msgid "Queued" +msgstr "Dalam antrean" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "Clear Queue?" +msgstr "Bersihkan Antrean?" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "

This will remove every pending check from the queue.

Running checks will continue.

" +msgstr "" +"

Ini akan menghapus setiap pemeriksaan tertunda dari antrean.

Pemeriksaan yang sedang berjalan akan tetap " +"dilanjutkan.

" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "Clear" +msgstr "Bersihkan" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "Clear Queue" +msgstr "Bersihkan Antrean" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "Workers & queue" +msgstr "Worker & antrean" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "Elapsed" +msgstr "Waktu berlalu" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "Status" +msgstr "Status" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "No workers configured (FETCH_WORKERS=0) and queue is empty" +msgstr "Tidak ada worker yang dikonfigurasi (FETCH_WORKERS=0) dan antrean kosong" + +#: changedetectionio/blueprint/ui/templates/queue.html +msgid "Waiting for new pages to check…" +msgstr "Menunggu halaman baru untuk diperiksa…" + +#: changedetectionio/blueprint/ui/views.py +#, python-brace-format +msgid "Warning, URL {} already exists" +msgstr "Peringatan, URL {} sudah ada" + +#: changedetectionio/blueprint/ui/views.py +msgid "Watch added in Paused state, saving will unpause." +msgstr "Monitor ditambahkan dalam keadaan Dijeda, menyimpan akan melanjutkannya." + +#: changedetectionio/blueprint/ui/views.py +msgid "Watch added." +msgstr "Monitor ditambahkan." + +#: changedetectionio/blueprint/watchlist/__init__.py +msgid "records" +msgstr "rekaman" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +msgid "Pause checks" +msgstr "Jeda pemeriksaan" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +msgid "UnPause checks" +msgstr "Lanjutkan pemeriksaan" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +msgid "Mute notification" +msgstr "Bisukan notifikasi" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +msgid "UnMute notification" +msgstr "Aktifkan kembali notifikasi" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +msgid "Goto web page" +msgstr "Buka halaman web" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +msgid "Create a link to share watch config with others" +msgstr "Buat tautan untuk membagikan konfigurasi monitor dengan orang lain" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +msgid "Detecting restock and price" +msgstr "Mendeteksi ketersediaan stok dan harga" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +msgid "Not in stock" +msgstr "Stok habis" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/processors/restock_diff/difference.py +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "In stock" +msgstr "Tersedia" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +#: changedetectionio/processors/restock_diff/difference.py +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Price" +msgstr "Harga" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +#, python-format +msgid "Price change since previous price (%(prev)s)" +msgstr "Perubahan harga sejak harga sebelumnya (%(prev)s)" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +msgid "No information" +msgstr "Tidak ada informasi" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Checked" +msgstr "Diperiksa" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html changedetectionio/templates/base.html +#: changedetectionio/templates/sidebar-nav.html +msgid "Checking now" +msgstr "Sedang diperiksa" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Changed" +msgstr "Berubah" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +msgid "Summary" +msgstr "Ringkasan" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +#: changedetectionio/processors/text_json_diff/difference.py +msgid "History" +msgstr "Riwayat" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html +msgid "Preview" +msgstr "Pratinjau" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Changedetection.io can monitor more than just web-pages! See our plugins!" +msgstr "Changedetection.io dapat memantau lebih dari sekadar halaman web! Lihat plugin kami!" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "More info" +msgstr "Info selengkapnya" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "You can also add 'shared' watches." +msgstr "Anda juga dapat menambahkan monitor 'bersama'." + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Goto full history" +msgstr "Buka riwayat lengkap" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Loading price history…" +msgstr "Memuat riwayat harga…" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/processors/restock_diff/difference.py +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Out of stock" +msgstr "Stok habis" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "No price data available to graph yet." +msgstr "Belum ada data harga yang tersedia untuk dibuat grafik." + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Could not load price history." +msgstr "Tidak dapat memuat riwayat harga." + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Changes" +msgstr "Perubahan" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Average price" +msgstr "Harga rata-rata" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Currently low" +msgstr "Saat ini rendah" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Currently typical" +msgstr "Saat ini normal" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Currently high" +msgstr "Saat ini tinggi" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +#, python-format +msgid "cheaper than %s% of tracked prices" +msgstr "" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +#, python-format +msgid "more expensive than %s% of tracked prices" +msgstr "" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "around the usual price" +msgstr "sekitar harga biasanya" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "avg" +msgstr "rata-rata" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Web page URL" +msgstr "URL halaman web" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#, python-format +msgid "All %(page)s on this page are selected." +msgstr "Semua %(page)s pada halaman ini dipilih." + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#, python-format +msgid "Select all %(total)s matching" +msgstr "Pilih semua %(total)s yang cocok" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#, python-format +msgid "All %(total)s matching are selected." +msgstr "Semua %(total)s yang cocok dipilih." + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#, python-format +msgid "%(count)s records selected" +msgstr "%(count)s rekaman dipilih" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Searching" +msgstr "Mencari" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "All" +msgstr "Semua" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Filter watches" +msgstr "Filter monitor" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Unread" +msgstr "Belum dibaca" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Deals" +msgstr "Promo" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "With errors" +msgstr "Dengan kesalahan" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Filter by type" +msgstr "Filter berdasarkan tipe" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "All types" +msgstr "Semua tipe" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Mark all viewed" +msgstr "Tandai semua telah dilihat" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Recheck all" +msgstr "Periksa ulang semua" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +#, python-format +msgid "in '%(title)s'" +msgstr "di '%(title)s'" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "RSS Feed" +msgstr "Feed RSS" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Invert" +msgstr "Balik pilihan" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Pause" +msgstr "Jeda" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "UnPause" +msgstr "Lanjutkan" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Mute" +msgstr "Bisukan" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "UnMute" +msgstr "Aktifkan kembali" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Tag" +msgstr "Tag" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Set browser / fetch method for selected" +msgstr "Atur metode browser / pengambilan untuk yang dipilih" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Apply" +msgstr "Terapkan" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Set proxy for selected" +msgstr "Atur proksi untuk yang dipilih" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Mark viewed" +msgstr "Tandai telah dilihat" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Use default notification" +msgstr "Gunakan notifikasi default" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Clear errors" +msgstr "Bersihkan kesalahan" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Clear Histories" +msgstr "Hapus Riwayat" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "

Are you sure you want to clear history for the selected items?

This action cannot be undone.

" +msgstr "

Anda yakin ingin menghapus riwayat untuk item yang dipilih?

Tindakan ini tidak dapat dibatalkan.

" + +#. Universally recognized; typically left as-is. dennis-ignore: W302 +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "OK" +msgstr "OK" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Clear/reset history" +msgstr "Hapus/reset riwayat" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Delete Watches?" +msgstr "Hapus Monitor?" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "

Are you sure you want to delete the selected watches?

This action cannot be undone.

" +msgstr "

Anda yakin ingin menghapus monitor yang dipilih?

Tindakan ini tidak dapat dibatalkan.

" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html changedetectionio/templates/base.html +msgid "Close" +msgstr "Tutup" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Web page" +msgstr "Halaman web" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "Restock & Price" +msgstr "Stok Kembali & Harga" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "No web page change detection watches configured, please add a URL in the box above, or" +msgstr "Belum ada monitor deteksi perubahan halaman web yang dikonfigurasi, silakan tambahkan URL pada kotak di atas, atau" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html +msgid "import a list" +msgstr "impor daftar" + +#: changedetectionio/conditions/__init__.py +msgid "Choose one - Operator" +msgstr "Pilih satu - Operator" + +#: changedetectionio/conditions/__init__.py +msgid "Greater Than" +msgstr "Lebih Besar Dari" + +#: changedetectionio/conditions/__init__.py +msgid "Less Than" +msgstr "Lebih Kecil Dari" + +#: changedetectionio/conditions/__init__.py +msgid "Greater Than or Equal To" +msgstr "Lebih Besar Dari atau Sama Dengan" + +#: changedetectionio/conditions/__init__.py +msgid "Less Than or Equal To" +msgstr "Lebih Kecil Dari atau Sama Dengan" + +#: changedetectionio/conditions/__init__.py +msgid "Equals" +msgstr "Sama Dengan" + +#: changedetectionio/conditions/__init__.py +msgid "Not Equals" +msgstr "Tidak Sama Dengan" + +#: changedetectionio/conditions/__init__.py +msgid "Contains" +msgstr "Mengandung" + +#: changedetectionio/conditions/__init__.py +msgid "Choose one - Field" +msgstr "Pilih satu - Bidang" + +#: changedetectionio/conditions/default_plugin.py +msgid "Does NOT Contain" +msgstr "TIDAK Mengandung" + +#: changedetectionio/conditions/default_plugin.py +msgid "Text Starts With" +msgstr "Teks Dimulai Dengan" + +#: changedetectionio/conditions/default_plugin.py +msgid "Text Ends With" +msgstr "Teks Diakhiri Dengan" + +#: changedetectionio/conditions/default_plugin.py +msgid "Length minimum" +msgstr "Panjang minimum" + +#: changedetectionio/conditions/default_plugin.py +msgid "Length maximum" +msgstr "Panjang maksimum" + +#: changedetectionio/conditions/default_plugin.py +msgid "Text Matches Regex" +msgstr "Teks Cocok dengan Regex" + +#: changedetectionio/conditions/default_plugin.py +msgid "Text Does NOT Match Regex" +msgstr "Teks TIDAK Cocok dengan Regex" + +#: changedetectionio/conditions/default_plugin.py +msgid "Extracted number after 'Filters & Triggers'" +msgstr "Angka yang diekstrak setelah 'Filter & Pemicu'" + +#: changedetectionio/conditions/default_plugin.py +msgid "Page text after 'Filters & Triggers'" +msgstr "Teks halaman setelah 'Filter & Pemicu'" + +#: changedetectionio/conditions/form.py +msgid "Field" +msgstr "Bidang" + +#: changedetectionio/conditions/form.py +msgid "Operator" +msgstr "Operator" + +#: changedetectionio/conditions/form.py +msgid "A value" +msgstr "Nilai" + +#: changedetectionio/conditions/form.py +msgid "Operator is required." +msgstr "Operator wajib diisi." + +#: changedetectionio/conditions/form.py +msgid "Field is required." +msgstr "Bidang wajib diisi." + +#: changedetectionio/conditions/form.py +msgid "Value is required." +msgstr "Nilai wajib diisi." + +#: changedetectionio/conditions/plugins/levenshtein_plugin.py +msgid "Levenshtein - Text similarity ratio" +msgstr "Levenshtein - Rasio kemiripan teks" + +#: changedetectionio/conditions/plugins/levenshtein_plugin.py +msgid "Levenshtein - Text change distance" +msgstr "Levenshtein - Jarak perubahan teks" + +#: changedetectionio/conditions/plugins/levenshtein_plugin.py +msgid "Not enough history to calculate Levenshtein metrics" +msgstr "Riwayat tidak cukup untuk menghitung metrik Levenshtein" + +#: changedetectionio/conditions/plugins/levenshtein_plugin.py +msgid "Snapshot too large for edit statistics, skipping." +msgstr "Snapshot terlalu besar untuk statistik edit, dilewati." + +#: changedetectionio/conditions/plugins/levenshtein_plugin.py +msgid "Unable to calculate Levenshtein metrics" +msgstr "Tidak dapat menghitung metrik Levenshtein" + +#: changedetectionio/conditions/plugins/levenshtein_plugin.py +msgid "Levenshtein Text Similarity Details" +msgstr "Detail Kemiripan Teks Levenshtein" + +#: changedetectionio/conditions/plugins/levenshtein_plugin.py +msgid "Raw distance (edits needed)" +msgstr "Jarak mentah (jumlah edit yang diperlukan)" + +#: changedetectionio/conditions/plugins/levenshtein_plugin.py +msgid "Similarity ratio" +msgstr "Rasio kemiripan" + +#: changedetectionio/conditions/plugins/levenshtein_plugin.py +msgid "Percent similar" +msgstr "Persen kemiripan" + +#: changedetectionio/conditions/plugins/levenshtein_plugin.py +msgid "" +"Levenshtein metrics compare the last two snapshots, measuring how many character edits are needed to transform one " +"into the other." +msgstr "" +"Metrik Levenshtein membandingkan dua snapshot terakhir, mengukur berapa banyak edit karakter yang diperlukan untuk " +"mengubah satu menjadi yang lain." + +#: changedetectionio/conditions/plugins/levenshtein_plugin.py +msgid "Error calculating Levenshtein metrics" +msgstr "Kesalahan saat menghitung metrik Levenshtein" + +#: changedetectionio/conditions/plugins/wordcount_plugin.py +msgid "Word count of content" +msgstr "Jumlah kata konten" + +#: changedetectionio/conditions/plugins/wordcount_plugin.py +msgid "Content Analysis" +msgstr "Analisis Konten" + +#: changedetectionio/conditions/plugins/wordcount_plugin.py +msgid "Word count (latest snapshot)" +msgstr "Jumlah kata (snapshot terbaru)" + +#: changedetectionio/conditions/plugins/wordcount_plugin.py +msgid "Word count is a simple measure of content length, calculated by splitting text on whitespace." +msgstr "Jumlah kata adalah ukuran sederhana panjang konten, dihitung dengan memisahkan teks berdasarkan spasi." + +#: changedetectionio/content_fetchers/requests.py +msgid "Basic fast Plaintext/HTTP Client" +msgstr "Klien Plaintext/HTTP Dasar yang cepat" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview-single-row.html changedetectionio/flask_app.py +#: changedetectionio/realtime/socket_server.py +msgid "Not yet" +msgstr "Belum" + +#: changedetectionio/flask_app.py +msgid "0 seconds" +msgstr "0 detik" + +#: changedetectionio/flask_app.py +msgid "year" +msgstr "tahun" + +#: changedetectionio/flask_app.py +msgid "years" +msgstr "tahun" + +#: changedetectionio/flask_app.py +msgid "month" +msgstr "bulan" + +#: changedetectionio/flask_app.py +msgid "months" +msgstr "bulan" + +#: changedetectionio/flask_app.py +msgid "week" +msgstr "minggu" + +#: changedetectionio/flask_app.py +msgid "weeks" +msgstr "minggu" + +#: changedetectionio/flask_app.py +msgid "day" +msgstr "hari" + +#: changedetectionio/flask_app.py +msgid "days" +msgstr "hari" + +#: changedetectionio/flask_app.py +msgid "hour" +msgstr "jam" + +#: changedetectionio/flask_app.py +msgid "hours" +msgstr "jam" + +#: changedetectionio/flask_app.py +msgid "minute" +msgstr "menit" + +#: changedetectionio/flask_app.py +msgid "minutes" +msgstr "menit" + +#: changedetectionio/flask_app.py +msgid "second" +msgstr "detik" + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/flask_app.py +msgid "seconds" +msgstr "detik" + +#: changedetectionio/flask_app.py +msgid "Already logged in" +msgstr "Sudah masuk" + +#: changedetectionio/flask_app.py +msgid "You must be logged in, please log in." +msgstr "Anda harus masuk, silakan masuk." + +#: changedetectionio/flask_app.py +msgid "Incorrect password" +msgstr "Kata sandi salah" + +#: changedetectionio/forms.py +msgid "At least one time interval (weeks, days, hours, minutes, or seconds) must be specified." +msgstr "Setidaknya satu interval waktu (minggu, hari, jam, menit, atau detik) harus ditentukan." + +#: changedetectionio/forms.py +msgid "At least one time interval (weeks, days, hours, minutes, or seconds) must be specified when not using global settings." +msgstr "" +"Setidaknya satu interval waktu (minggu, hari, jam, menit, atau detik) harus ditentukan saat tidak menggunakan " +"pengaturan global." + +#: changedetectionio/forms.py +msgid "Invalid time format. Use HH:MM." +msgstr "Format waktu tidak valid. Gunakan JJ:MM." + +#: changedetectionio/forms.py +msgid "Not a valid timezone name" +msgstr "Nama zona waktu tidak valid" + +#: changedetectionio/forms.py +msgid "not set" +msgstr "belum diatur" + +#: changedetectionio/forms.py +msgid "Start At" +msgstr "Mulai Pada" + +#: changedetectionio/forms.py +msgid "Run duration" +msgstr "Durasi berjalan" + +#: changedetectionio/forms.py +msgid "Use time scheduler" +msgstr "Gunakan penjadwal waktu" + +#: changedetectionio/forms.py +msgid "Optional timezone to run in" +msgstr "Zona waktu opsional untuk menjalankan" + +#: changedetectionio/forms.py +msgid "Monday" +msgstr "Senin" + +#: changedetectionio/forms.py +msgid "Tuesday" +msgstr "Selasa" + +#: changedetectionio/forms.py +msgid "Wednesday" +msgstr "Rabu" + +#: changedetectionio/forms.py +msgid "Thursday" +msgstr "Kamis" + +#: changedetectionio/forms.py +msgid "Friday" +msgstr "Jumat" + +#: changedetectionio/forms.py +msgid "Saturday" +msgstr "Sabtu" + +#: changedetectionio/forms.py +msgid "Sunday" +msgstr "Minggu" + +#: changedetectionio/forms.py +msgid "Weeks" +msgstr "Minggu" + +#: changedetectionio/forms.py +msgid "Should contain zero or more seconds" +msgstr "Harus berisi nol detik atau lebih" + +#: changedetectionio/forms.py +msgid "Days" +msgstr "Hari" + +#: changedetectionio/forms.py +msgid "Hours" +msgstr "Jam" + +#: changedetectionio/forms.py +msgid "Minutes" +msgstr "Menit" + +#: changedetectionio/forms.py +msgid "Seconds" +msgstr "Detik" + +#: changedetectionio/forms.py +msgid "Unknown fetch method." +msgstr "Metode pengambilan tidak dikenal." + +#: changedetectionio/forms.py +msgid "Notification Body and Title is required when a Notification URL is used" +msgstr "Isi dan Judul Notifikasi wajib diisi saat URL Notifikasi digunakan" + +#: changedetectionio/forms.py +#, python-format +msgid "'%s' is not a valid AppRise URL." +msgstr "'%s' bukan URL AppRise yang valid." + +#: changedetectionio/forms.py +#, python-format +msgid "RegEx '%s' is not a valid regular expression." +msgstr "RegEx '%s' bukan regular expression yang valid." + +#: changedetectionio/forms.py +#, python-format +msgid "'%(expression)s' is not a valid XPath expression. (%(error)s)" +msgstr "'%(expression)s' bukan ekspresi XPath yang valid. (%(error)s)" + +#: changedetectionio/forms.py +#, python-format +msgid "'%(expression)s' is not a valid JSONPath expression. (%(error)s)" +msgstr "'%(expression)s' bukan ekspresi JSONPath yang valid. (%(error)s)" + +#: changedetectionio/forms.py +#, python-format +msgid "'%(expression)s' is not a valid jq expression. (%(error)s)" +msgstr "'%(expression)s' bukan ekspresi jq yang valid. (%(error)s)" + +#: changedetectionio/forms.py +msgid "Empty value not allowed." +msgstr "Nilai kosong tidak diizinkan." + +#: changedetectionio/forms.py +msgid "Invalid value." +msgstr "Nilai tidak valid." + +#: changedetectionio/forms.py +msgid "Group tag" +msgstr "Tag grup" + +#: changedetectionio/blueprint/ui/templates/queue.html changedetectionio/blueprint/watchlist/templates/watch-overview.html +#: changedetectionio/forms.py +msgid "Watch" +msgstr "Monitor" + +#: changedetectionio/forms.py +msgid "Processor" +msgstr "Prosesor" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html changedetectionio/forms.py +msgid "Browser" +msgstr "Browser" + +#: changedetectionio/forms.py +msgid "Edit > Watch" +msgstr "Edit > Monitor" + +#: changedetectionio/forms.py +msgid "Fetch Method" +msgstr "Metode Pengambilan" + +#: changedetectionio/forms.py +msgid "Notification Body" +msgstr "Isi Notifikasi" + +#: changedetectionio/forms.py +msgid "Notification format" +msgstr "Format notifikasi" + +#: changedetectionio/forms.py +msgid "Notification Title" +msgstr "Judul Notifikasi" + +#: changedetectionio/forms.py +msgid "Notification URL List" +msgstr "Daftar URL Notifikasi" + +#: changedetectionio/forms.py +msgid "Processor - What do you want to achieve?" +msgstr "Prosesor - Apa yang ingin Anda capai?" + +#: changedetectionio/forms.py +msgid "Default timezone for watch check scheduler" +msgstr "Zona waktu default untuk penjadwal pemeriksaan monitor" + +#: changedetectionio/forms.py +msgid "Wait seconds before extracting text" +msgstr "Tunggu beberapa detik sebelum mengekstrak teks" + +#: changedetectionio/forms.py +msgid "Should contain one or more seconds" +msgstr "Harus berisi satu detik atau lebih" + +#: changedetectionio/forms.py +msgid "Notification base URL override" +msgstr "Timpa URL dasar notifikasi" + +#: changedetectionio/forms.py +msgid "Not set" +msgstr "Belum diatur" + +#: changedetectionio/blueprint/tags/form.py changedetectionio/blueprint/tags/templates/groups-overview.html +#: changedetectionio/forms.py +msgid "Save" +msgstr "Simpan" + +#: changedetectionio/forms.py +msgid "URLs" +msgstr "URL" + +#: changedetectionio/forms.py +msgid "Upload .xlsx file" +msgstr "Unggah file .xlsx" + +#: changedetectionio/forms.py +msgid "Must be .xlsx file!" +msgstr "Harus berupa file .xlsx!" + +#: changedetectionio/forms.py +msgid "File mapping" +msgstr "Pemetaan file" + +#: changedetectionio/forms.py +msgid "Operation" +msgstr "Operasi" + +#: changedetectionio/forms.py +msgid "Selector" +msgstr "Selektor" + +#: changedetectionio/forms.py +msgid "CSS or xPath selector" +msgstr "Selektor CSS atau xPath" + +#: changedetectionio/forms.py +msgid "value" +msgstr "nilai" + +#: changedetectionio/conditions/form.py changedetectionio/forms.py +msgid "Value" +msgstr "Nilai" + +#: changedetectionio/forms.py +msgid "Web Page URL" +msgstr "URL Halaman Web" + +#: changedetectionio/forms.py +msgid "Group Tag" +msgstr "Tag Grup" + +#: changedetectionio/forms.py +msgid "Time Between Check" +msgstr "Waktu Antar Pemeriksaan" + +#: changedetectionio/forms.py +msgid "Use global settings for time between check and scheduler." +msgstr "Gunakan pengaturan global untuk waktu antar pemeriksaan dan penjadwal." + +#: changedetectionio/forms.py +msgid "AI Change Intent - Notify me when.." +msgstr "Intent Perubahan AI - Beri tahu saya saat.." + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html changedetectionio/blueprint/ui/templates/diff.html +#: changedetectionio/forms.py +msgid "AI Change Summary" +msgstr "Ringkasan Perubahan AI" + +#: changedetectionio/blueprint/tags/form.py changedetectionio/forms.py +msgid "Change Summary prompt - Append or Replace the default?" +msgstr "Prompt Ringkasan Perubahan - Tambahkan atau Ganti default?" + +#: changedetectionio/blueprint/tags/form.py changedetectionio/forms.py +msgid "Replace the inherited prompt" +msgstr "Ganti prompt yang diwarisi" + +#: changedetectionio/blueprint/tags/form.py changedetectionio/forms.py +msgid "Append to the inherited prompt" +msgstr "Tambahkan ke prompt yang diwarisi" + +#: changedetectionio/forms.py +msgid "AI enabled for this watch?" +msgstr "Aktifkan AI untuk monitor ini?" + +#: changedetectionio/forms.py +msgid "CSS/JSONPath/JQ/XPath Filters" +msgstr "Filter CSS/JSONPath/JQ/XPath" + +#: changedetectionio/forms.py +msgid "Remove elements" +msgstr "Hapus elemen" + +#: changedetectionio/forms.py +msgid "Extract lines containing" +msgstr "Ekstrak baris yang mengandung" + +#: changedetectionio/forms.py +msgid "Extract text" +msgstr "Ekstrak teks" + +#: changedetectionio/blueprint/imports/templates/import.html changedetectionio/forms.py +msgid "Title" +msgstr "Judul" + +#: changedetectionio/forms.py +msgid "Ignore lines containing" +msgstr "Abaikan baris yang mengandung" + +#: changedetectionio/forms.py +msgid "Request body" +msgstr "Isi permintaan" + +#: changedetectionio/forms.py +msgid "Request method" +msgstr "Metode permintaan" + +#: changedetectionio/forms.py +msgid "Ignore status codes (process non-2xx status codes as normal)" +msgstr "Abaikan kode status (proses kode status non-2xx seperti biasa)" + +#: changedetectionio/forms.py +msgid "Only trigger when unique lines appear in all history" +msgstr "Hanya picu saat baris unik muncul dalam seluruh riwayat" + +#: changedetectionio/blueprint/ui/templates/edit.html changedetectionio/forms.py +msgid "Remove duplicate lines of text" +msgstr "Hapus baris teks duplikat" + +#: changedetectionio/forms.py +msgid "Sort text alphabetically" +msgstr "Urutkan teks secara alfabetis" + +#: changedetectionio/forms.py +msgid "Strip ignored lines" +msgstr "Hapus baris yang diabaikan" + +#: changedetectionio/forms.py +msgid "Trim whitespace before and after text" +msgstr "Pangkas spasi sebelum dan sesudah teks" + +#: changedetectionio/forms.py +msgid "Added lines" +msgstr "Baris yang ditambahkan" + +#: changedetectionio/forms.py +msgid "Replaced/changed lines" +msgstr "Baris yang diganti/diubah" + +#: changedetectionio/forms.py +msgid "Removed lines" +msgstr "Baris yang dihapus" + +#: changedetectionio/forms.py +msgid "Keyword triggers - Trigger/wait for text" +msgstr "Pemicu kata kunci - Picu/tunggu teks" + +#: changedetectionio/forms.py +msgid "Block change-detection while text matches" +msgstr "Blokir deteksi perubahan selama teks cocok" + +#: changedetectionio/forms.py +msgid "Execute JavaScript before change detection" +msgstr "Jalankan JavaScript sebelum deteksi perubahan" + +#: changedetectionio/blueprint/watchlist/templates/watch-overview.html changedetectionio/forms.py +msgid "Proxy" +msgstr "Proksi" + +#: changedetectionio/forms.py +msgid "Send a notification when the filter can no longer be found on the page" +msgstr "Kirim notifikasi saat filter tidak lagi ditemukan di halaman" + +#: changedetectionio/forms.py +msgid "On" +msgstr "Aktif" + +#: changedetectionio/blueprint/tags/templates/edit-tag.html changedetectionio/blueprint/ui/templates/edit.html +#: changedetectionio/forms.py changedetectionio/templates/sidebar-nav.html +msgid "Notifications" +msgstr "Notifikasi" + +#: changedetectionio/forms.py changedetectionio/templates/menu.html +msgid "Muted" +msgstr "Dibisukan" + +#: changedetectionio/forms.py +msgid "Attach screenshot to notification (where possible)" +msgstr "Lampirkan tangkapan layar ke notifikasi (jika memungkinkan)" + +#: changedetectionio/forms.py +msgid "Match" +msgstr "Pencocokan" + +#: changedetectionio/forms.py +msgid "Match all of the following" +msgstr "Cocok dengan semua berikut" + +#: changedetectionio/forms.py +msgid "Match any of the following" +msgstr "Cocok dengan salah satu berikut" + +#: changedetectionio/forms.py +msgid "Use page in list" +msgstr "Gunakan <title> halaman dalam daftar" + +#: changedetectionio/forms.py +msgid "Number of history items per watch to keep" +msgstr "Jumlah item riwayat per monitor yang disimpan" + +#: changedetectionio/forms.py +msgid "Body must be empty when Request Method is set to GET" +msgstr "Isi harus kosong saat Metode Permintaan diatur ke GET" + +#: changedetectionio/forms.py +#, python-format +msgid "Invalid template syntax configuration: %(error)s" +msgstr "Konfigurasi sintaks template tidak valid: %(error)s" + +#: changedetectionio/forms.py +#, python-format +msgid "Invalid template syntax: %(error)s" +msgstr "Sintaks template tidak valid: %(error)s" + +#: changedetectionio/forms.py +#, python-format +msgid "Invalid template syntax in \"%(header)s\" header: %(error)s" +msgstr "Sintaks template tidak valid pada header \"%(header)s\": %(error)s" + +#: changedetectionio/blueprint/tags/form.py changedetectionio/forms.py +msgid "Name" +msgstr "Nama" + +#: changedetectionio/forms.py +msgid "Proxy URL" +msgstr "URL Proksi" + +#: changedetectionio/forms.py +msgid "Proxy URLs must start with http://, https:// or socks5://" +msgstr "URL Proksi harus diawali dengan http://, https:// atau socks5://" + +#: changedetectionio/forms.py +msgid "Browser connection URL" +msgstr "URL koneksi browser" + +#: changedetectionio/forms.py +msgid "Browser URLs must start with wss:// or ws://" +msgstr "URL browser harus diawali dengan wss:// atau ws://" + +#: changedetectionio/forms.py +msgid "Plaintext requests" +msgstr "Permintaan plaintext" + +#: changedetectionio/forms.py +msgid "Chrome requests" +msgstr "Permintaan Chrome" + +#: changedetectionio/forms.py +msgid "Default proxy" +msgstr "Proksi default" + +#: changedetectionio/forms.py +msgid "Random jitter seconds ± check" +msgstr "Detik jitter acak ± pemeriksaan" + +#: changedetectionio/forms.py +msgid "Number of fetch workers" +msgstr "Jumlah worker pengambilan" + +#: changedetectionio/forms.py +msgid "Should be between 1 and 50" +msgstr "Harus antara 1 dan 50" + +#: changedetectionio/forms.py +msgid "Requests timeout in seconds" +msgstr "Timeout permintaan dalam detik" + +#: changedetectionio/forms.py +msgid "Should be between 1 and 999" +msgstr "Harus antara 1 dan 999" + +#: changedetectionio/forms.py +msgid "Default User-Agent overrides" +msgstr "Penimpaan User-Agent default" + +#: changedetectionio/forms.py +msgid "Both a name, and a Proxy URL is required." +msgstr "Nama dan URL Proksi wajib diisi." + +#: changedetectionio/forms.py +msgid "Open 'History' page in a new tab" +msgstr "Buka halaman 'Riwayat' di tab baru" + +#: changedetectionio/forms.py +msgid "Realtime UI Updates Enabled" +msgstr "Pembaruan UI Realtime Diaktifkan" + +#: changedetectionio/forms.py +msgid "Favicons Enabled" +msgstr "Favicon Diaktifkan" + +#: changedetectionio/forms.py +msgid "Use page <title> in watch overview list" +msgstr "Gunakan <title> halaman dalam daftar ringkasan monitor" + +#: changedetectionio/forms.py +msgid "Relative time format" +msgstr "Format waktu relatif" + +#: changedetectionio/forms.py +msgid "Long (1 minute ago)" +msgstr "Panjang (1 menit yang lalu)" + +#: changedetectionio/forms.py +msgid "Short (1m ago)" +msgstr "Pendek (1m lalu)" + +#: changedetectionio/forms.py +msgid "Navigation sidebar" +msgstr "Sidebar navigasi" + +#: changedetectionio/forms.py +msgid "Collapsed icon rail (expands on hover)" +msgstr "Rel ikon ringkas (meluas saat diarahkan)" + +#: changedetectionio/forms.py +msgid "Always expanded" +msgstr "Selalu diperluas" + +#: changedetectionio/forms.py +msgid "API access token security check enabled" +msgstr "Pemeriksaan keamanan token akses API diaktifkan" + +#: changedetectionio/forms.py +msgid "Treat empty pages as a change?" +msgstr "Anggap halaman kosong sebagai perubahan?" + +#: changedetectionio/forms.py +msgid "Ignore Text" +msgstr "Abaikan Teks" + +#: changedetectionio/forms.py +msgid "Ignore whitespace" +msgstr "Abaikan spasi" + +#: changedetectionio/forms.py +msgid "Screenshot: Minimum Change Percentage" +msgstr "Tangkapan layar: Persentase Perubahan Minimum" + +#: changedetectionio/forms.py changedetectionio/processors/image_ssim_diff/forms.py +msgid "Must be between 0 and 100" +msgstr "Harus antara 0 dan 100" + +#: changedetectionio/forms.py changedetectionio/templates/login.html +msgid "Password" +msgstr "Kata sandi" + +#: changedetectionio/forms.py +msgid "Pager size" +msgstr "Ukuran halaman" + +#: changedetectionio/forms.py +msgid "Should be atleast zero (disabled)" +msgstr "Harus setidaknya nol (dinonaktifkan)" + +#: changedetectionio/forms.py +msgid "RSS Content format" +msgstr "Format Konten RSS" + +#: changedetectionio/forms.py +msgid "RSS <description> body built from" +msgstr "Isi <description> RSS dibuat dari" + +#: changedetectionio/forms.py +msgid "RSS \"System default\" template override" +msgstr "Penimpaan template \"Default sistem\" RSS" + +#: changedetectionio/forms.py +msgid "Remove password" +msgstr "Hapus kata sandi" + +#: changedetectionio/forms.py +msgid "Render anchor tag content" +msgstr "Render konten tag anchor" + +#: changedetectionio/forms.py +msgid "Allow anonymous access to watch history page when password is enabled" +msgstr "Izinkan akses anonim ke halaman riwayat monitor saat kata sandi diaktifkan" + +#: changedetectionio/forms.py +msgid "Hide muted watches from RSS feed" +msgstr "Sembunyikan monitor yang dibisukan dari feed RSS" + +#: changedetectionio/forms.py +msgid "Enable RSS reader mode " +msgstr "Aktifkan mode pembaca RSS " + +#: changedetectionio/forms.py +msgid "Number of changes to show in watch RSS feed" +msgstr "Jumlah perubahan yang ditampilkan dalam feed RSS monitor" + +#: changedetectionio/forms.py +msgid "Should contain zero or more attempts" +msgstr "Harus berisi nol percobaan atau lebih" + +#: changedetectionio/forms.py +msgid "Number of times the filter can be missing before sending a notification" +msgstr "Jumlah kegagalan menemukan filter sebelum mengirim notifikasi" + +#: changedetectionio/forms.py +msgid "Model" +msgstr "Model" + +#: changedetectionio/blueprint/settings/templates/settings.html changedetectionio/forms.py +msgid "API Key" +msgstr "Kunci API" + +#: changedetectionio/forms.py +msgid "API Base URL" +msgstr "URL Dasar API" + +#: changedetectionio/forms.py +msgid "Token multiplier for local reasoning models" +msgstr "Pengali token untuk model reasoning lokal" + +#: changedetectionio/forms.py +msgid "Default AI Change Summary prompt" +msgstr "Prompt Ringkasan Perubahan AI default" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html changedetectionio/forms.py +msgid "Max tokens per watch per period" +msgstr "Token maks. per monitor per periode" + +#: changedetectionio/forms.py +msgid "Monthly token budget" +msgstr "Anggaran token bulanan" + +#: changedetectionio/blueprint/settings/templates/settings_llm_tab.html changedetectionio/forms.py +msgid "Max input characters" +msgstr "Karakter input maks." + +#: changedetectionio/forms.py +msgid "Enable AI / LLM features" +msgstr "Aktifkan fitur AI / LLM" + +#: changedetectionio/forms.py +msgid "Replace {{diff}} notification token with AI summary" +msgstr "Ganti token notifikasi {{diff}} dengan ringkasan AI" + +#: changedetectionio/forms.py +msgid "Use LLM as a fallback for extracting price and restock info" +msgstr "Gunakan LLM sebagai fallback untuk mengekstrak info harga dan stok kembali" + +#: changedetectionio/forms.py +msgid "Enable LLM debug logging" +msgstr "Aktifkan logging debug LLM" + +#: changedetectionio/forms.py +msgid "AI thinking budget (tokens)" +msgstr "Anggaran thinking AI (token)" + +#: changedetectionio/forms.py +msgid "Off (no thinking)" +msgstr "Nonaktif (tanpa thinking)" + +#: changedetectionio/forms.py +msgid "Max AI summary length (tokens)" +msgstr "Panjang ringkasan AI maks. (token)" + +#: changedetectionio/forms.py +msgid "When monthly token budget is reached" +msgstr "Saat anggaran token bulanan tercapai" + +#: changedetectionio/forms.py +msgid "Skip AI summarisation only (watch still checks)" +msgstr "Lewati hanya ringkasan AI (monitor tetap diperiksa)" + +#: changedetectionio/forms.py +msgid "Skip the watch check entirely" +msgstr "Lewati seluruh pemeriksaan monitor" + +#: changedetectionio/forms.py +msgid "Watchlist \"Summary\" link compares" +msgstr "Tautan \"Ringkasan\" daftar monitor membandingkan" + +#: changedetectionio/forms.py +msgid "Previous version (second-last vs latest)" +msgstr "Versi sebelumnya (kedua terakhir vs terbaru)" + +#: changedetectionio/forms.py +msgid "Changes since you last viewed the watch" +msgstr "Perubahan sejak terakhir Anda melihat monitor" + +#: changedetectionio/forms.py +msgid "RegEx to extract" +msgstr "RegEx untuk diekstrak" + +#: changedetectionio/forms.py +msgid "Extract as CSV" +msgstr "Ekstrak sebagai CSV" + +#: changedetectionio/languages.py +msgid "just now" +msgstr "baru saja" + +#: changedetectionio/languages.py +msgid "right now" +msgstr "sekarang juga" + +#: changedetectionio/languages.py +#, python-format +msgid "%ss ago" +msgstr "%sdtk lalu" + +#: changedetectionio/languages.py +#, python-format +msgid "in %ss" +msgstr "dalam %sdtk" + +#: changedetectionio/languages.py +msgid "1m ago" +msgstr "1m lalu" + +#: changedetectionio/languages.py +msgid "in 1m" +msgstr "dalam 1m" + +#: changedetectionio/languages.py +#, python-format +msgid "%sm ago" +msgstr "%sm lalu" + +#: changedetectionio/languages.py +#, python-format +msgid "in %sm" +msgstr "dalam %sm" + +#: changedetectionio/languages.py +msgid "1h ago" +msgstr "1j lalu" + +#: changedetectionio/languages.py +msgid "in 1h" +msgstr "dalam 1j" + +#: changedetectionio/languages.py +#, python-format +msgid "%sh ago" +msgstr "%sj lalu" + +#: changedetectionio/languages.py +#, python-format +msgid "in %sh" +msgstr "dalam %sj" + +#: changedetectionio/languages.py +msgid "1d ago" +msgstr "1h lalu" + +#: changedetectionio/languages.py +msgid "in 1d" +msgstr "dalam 1h" + +#: changedetectionio/languages.py +#, python-format +msgid "%sd ago" +msgstr "%sh lalu" + +#: changedetectionio/languages.py +#, python-format +msgid "in %sd" +msgstr "dalam %sh" + +#: changedetectionio/languages.py +msgid "1w ago" +msgstr "1mgg lalu" + +#: changedetectionio/languages.py +msgid "in 1w" +msgstr "dalam 1mgg" + +#: changedetectionio/languages.py +#, python-format +msgid "%sw ago" +msgstr "%smgg lalu" + +#: changedetectionio/languages.py +#, python-format +msgid "in %sw" +msgstr "dalam %smgg" + +#: changedetectionio/languages.py +msgid "1mo ago" +msgstr "1bln lalu" + +#: changedetectionio/languages.py +msgid "in 1mo" +msgstr "dalam 1bln" + +#: changedetectionio/languages.py +#, python-format +msgid "%smo ago" +msgstr "%sbln lalu" + +#: changedetectionio/languages.py +#, python-format +msgid "in %smo" +msgstr "dalam %sbln" + +#: changedetectionio/languages.py +msgid "1yr ago" +msgstr "1th lalu" + +#: changedetectionio/languages.py +msgid "in 1yr" +msgstr "dalam 1th" + +#: changedetectionio/languages.py +#, python-format +msgid "%syr ago" +msgstr "%sth lalu" + +#: changedetectionio/languages.py +#, python-format +msgid "in %syr" +msgstr "dalam %sth" + +#: changedetectionio/processors/extract.py +msgid "No matches found while scanning all of the watch history for that RegEx." +msgstr "Tidak ditemukan kecocokan saat memindai seluruh riwayat monitor untuk RegEx tersebut." + +#: changedetectionio/processors/image_ssim_diff/difference.py +msgid "Not enough history to compare. Need at least 2 snapshots." +msgstr "Riwayat tidak cukup untuk dibandingkan. Diperlukan minimal 2 snapshot." + +#: changedetectionio/processors/image_ssim_diff/difference.py +#, python-brace-format +msgid "Failed to load screenshots: {}" +msgstr "Gagal memuat tangkapan layar: {}" + +#: changedetectionio/processors/image_ssim_diff/difference.py +#, python-brace-format +msgid "Failed to calculate diff: {}" +msgstr "Gagal menghitung perbedaan: {}" + +#: changedetectionio/processors/image_ssim_diff/forms.py +msgid "Bounding box value is too long" +msgstr "Nilai bounding box terlalu panjang" + +#: changedetectionio/processors/image_ssim_diff/forms.py +msgid "Bounding box must be in format: x,y,width,height (integers only)" +msgstr "Bounding box harus dalam format: x,y,width,height (hanya bilangan bulat)" + +#: changedetectionio/processors/image_ssim_diff/forms.py +msgid "Bounding box values must be non-negative" +msgstr "Nilai bounding box tidak boleh negatif" + +#: changedetectionio/processors/image_ssim_diff/forms.py +msgid "Bounding box values are too large" +msgstr "Nilai bounding box terlalu besar" + +#: changedetectionio/processors/image_ssim_diff/forms.py +msgid "Selection mode must be either \"element\" or \"draw\"" +msgstr "Mode pemilihan harus \"element\" atau \"draw\"" + +#: changedetectionio/processors/image_ssim_diff/forms.py +msgid "Minimum Change Percentage" +msgstr "Persentase Perubahan Minimum" + +#: changedetectionio/processors/image_ssim_diff/forms.py +msgid "Pixel Difference Sensitivity" +msgstr "Sensitivitas Perbedaan Piksel" + +#: changedetectionio/processors/image_ssim_diff/forms.py +msgid "Use global default" +msgstr "Gunakan default global" + +#: changedetectionio/processors/image_ssim_diff/forms.py +msgid "Bounding Box" +msgstr "Bounding Box" + +#: changedetectionio/processors/image_ssim_diff/forms.py +msgid "Selection Mode" +msgstr "Mode Pemilihan" + +#: changedetectionio/processors/image_ssim_diff/forms.py +msgid "Selection mode value is too long" +msgstr "Nilai mode pemilihan terlalu panjang" + +#: changedetectionio/processors/image_ssim_diff/forms.py +msgid "Screenshot Comparison" +msgstr "Perbandingan Tangkapan Layar" + +#: changedetectionio/processors/image_ssim_diff/preview.py +msgid "Preview unavailable - No snapshots captured yet" +msgstr "Pratinjau tidak tersedia - Belum ada snapshot yang diambil" + +#: changedetectionio/processors/image_ssim_diff/processor.py +msgid "Visual / Image screenshot change detection" +msgstr "Deteksi perubahan visual / tangkapan layar gambar" + +#: changedetectionio/processors/image_ssim_diff/processor.py +msgid "Compares screenshots using fast OpenCV algorithm, 10-100x faster than SSIM" +msgstr "Membandingkan tangkapan layar menggunakan algoritme OpenCV cepat, 10-100x lebih cepat daripada SSIM" + +#: changedetectionio/processors/restock_diff/difference.py +msgid "Date" +msgstr "Tanggal" + +#: changedetectionio/processors/restock_diff/difference.py +msgid "Stock status" +msgstr "Status stok" + +#: changedetectionio/processors/restock_diff/difference.py +msgid "Currency" +msgstr "Mata uang" + +#: changedetectionio/processors/restock_diff/difference.py +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Price history" +msgstr "Riwayat harga" + +#: changedetectionio/processors/restock_diff/forms.py +msgid "Re-stock detection" +msgstr "Deteksi stok kembali" + +#: changedetectionio/processors/restock_diff/forms.py +msgid "In Stock only (Out Of Stock -> In Stock only)" +msgstr "Hanya Tersedia (Stok Habis -> Tersedia saja)" + +#: changedetectionio/processors/restock_diff/forms.py +msgid "Any availability changes" +msgstr "Setiap perubahan ketersediaan" + +#: changedetectionio/processors/restock_diff/forms.py +msgid "Off, don't follow availability/restock" +msgstr "Nonaktif, jangan ikuti ketersediaan/stok kembali" + +#: changedetectionio/processors/restock_diff/forms.py +msgid "Below price to trigger notification" +msgstr "Harga di bawah nilai ini untuk memicu notifikasi" + +#: changedetectionio/processors/restock_diff/forms.py +msgid "No limit" +msgstr "Tanpa batas" + +#: changedetectionio/processors/restock_diff/forms.py +msgid "Above price to trigger notification" +msgstr "Harga di atas nilai ini untuk memicu notifikasi" + +#: changedetectionio/processors/restock_diff/forms.py +msgid "Threshold (%) for price changes since the previous check" +msgstr "Ambang batas (%) perubahan harga sejak pemeriksaan sebelumnya" + +#: changedetectionio/processors/restock_diff/forms.py +msgid "Should be between 0 and 100" +msgstr "Harus antara 0 dan 100" + +#: changedetectionio/processors/restock_diff/forms.py +msgid "Follow price changes" +msgstr "Ikuti perubahan harga" + +#: changedetectionio/processors/restock_diff/forms.py +msgid "Restock & Price Detection" +msgstr "Deteksi Stok Kembali & Harga" + +#: changedetectionio/processors/restock_diff/processor.py +msgid "Re-stock & Price detection for pages with a SINGLE product" +msgstr "Deteksi Stok Kembali & Harga untuk halaman dengan SATU produk" + +#: changedetectionio/processors/restock_diff/processor.py +msgid "Detects if the product goes back to in-stock" +msgstr "Mendeteksi jika produk kembali tersedia" + +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Price & stock history" +msgstr "Riwayat harga & stok" + +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Download as XLSX" +msgstr "Unduh sebagai XLSX" + +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "When" +msgstr "Waktu" + +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Stock" +msgstr "Stok" + +#: changedetectionio/processors/restock_diff/templates/restock_diff/difference.html +msgid "Not enough price data points yet to draw a graph - keep monitoring and the price history will appear here." +msgstr "Belum cukup titik data harga untuk membuat grafik - terus pantau dan riwayat harga akan muncul di sini." + +#: changedetectionio/processors/templates/extract.html +msgid "Screenshot" +msgstr "Tangkapan layar" + +#: changedetectionio/processors/templates/extract.html +msgid "This tool will extract text data from all of the watch history." +msgstr "Alat ini akan mengekstrak data teks dari seluruh riwayat monitor." + +#: changedetectionio/processors/templates/extract.html +msgid "A <strong>RegEx</strong> is a pattern that identifies exactly which part inside of the text that you want to extract." +msgstr "<strong>RegEx</strong> adalah pola yang mengidentifikasi secara tepat bagian dalam teks yang ingin Anda ekstrak." + +#: changedetectionio/processors/templates/extract.html +msgid "For example, to extract only the numbers from text" +msgstr "Misalnya, untuk mengekstrak hanya angka dari teks" + +#: changedetectionio/processors/templates/extract.html +msgid "Raw text" +msgstr "Teks mentah" + +#: changedetectionio/processors/templates/extract.html +msgid "RegEx to extract:" +msgstr "RegEx untuk diekstrak:" + +#: changedetectionio/processors/templates/extract.html +msgid "Be sure to test your RegEx here." +msgstr "Pastikan untuk menguji RegEx Anda di sini." + +#: changedetectionio/processors/templates/extract.html +msgid "Each RegEx group bracket" +msgstr "Setiap tanda kurung grup RegEx" + +#: changedetectionio/processors/templates/extract.html +msgid "will be in its own column, the first column value is always the date." +msgstr "akan berada di kolomnya sendiri, nilai kolom pertama selalu tanggal." + +#: changedetectionio/processors/text_json_diff/processor.py +msgid "Webpage Text/HTML, JSON and PDF changes" +msgstr "Perubahan Teks/HTML Halaman Web, JSON, dan PDF" + +#: changedetectionio/processors/text_json_diff/processor.py +msgid "Detects all text changes where possible" +msgstr "Mendeteksi semua perubahan teks jika memungkinkan" + +#: changedetectionio/store/__init__.py +#, python-brace-format +msgid "Watch limit reached ({current}/{limit} watches). Cannot add more watches." +msgstr "Batas monitor tercapai ({current}/{limit} monitor). Tidak dapat menambahkan monitor lagi." + +#: changedetectionio/store/__init__.py +#, python-brace-format +msgid "Error fetching metadata for {}" +msgstr "Kesalahan saat mengambil metadata untuk {}" + +#: changedetectionio/store/__init__.py +msgid "Watch protocol is not permitted or invalid URL format" +msgstr "Protokol monitor tidak diizinkan atau format URL tidak valid" + +#: changedetectionio/templates/_common_fields.html +msgid "Body for all notifications — You can use" +msgstr "Isi untuk semua notifikasi — Anda dapat menggunakan" + +#: changedetectionio/templates/_common_fields.html +msgid "templating in the notification title, body and URL, and tokens from below." +msgstr "templating pada judul, isi, dan URL notifikasi, serta token dari bawah." + +#: changedetectionio/templates/_common_fields.html +msgid "Show token/placeholders" +msgstr "Tampilkan token/placeholder" + +#: changedetectionio/templates/_common_fields.html +msgid "Token" +msgstr "Token" + +#: changedetectionio/templates/_common_fields.html +msgid "Description" +msgstr "Deskripsi" + +#: changedetectionio/templates/_common_fields.html +msgid "The URL of the changedetection.io instance you are running." +msgstr "URL instance changedetection.io yang Anda jalankan." + +#: changedetectionio/templates/_common_fields.html +msgid "The URL being watched." +msgstr "URL yang dipantau." + +#: changedetectionio/templates/_common_fields.html +msgid "The UUID of the watch." +msgstr "UUID monitor." + +#: changedetectionio/templates/_common_fields.html +msgid "The page title of the watch, uses <title> if not set, falls back to URL" +msgstr "Judul halaman monitor, menggunakan <title> jika tidak diatur, fallback ke URL" + +#: changedetectionio/templates/_common_fields.html +msgid "The watch group / tag" +msgstr "Grup / tag monitor" + +#: changedetectionio/templates/_common_fields.html +msgid "The URL of the preview page generated by changedetection.io." +msgstr "URL halaman pratinjau yang dibuat oleh changedetection.io." + +#: changedetectionio/templates/_common_fields.html +#, python-format +msgid "Date/time of the change, accepts format=, %(call)s, default is '%(default)s'" +msgstr "Tanggal/waktu perubahan, menerima format=, %(call)s, default adalah '%(default)s'" + +#: changedetectionio/templates/_common_fields.html +msgid "The URL of the diff output for the watch." +msgstr "URL keluaran diff untuk monitor." + +#: changedetectionio/templates/_common_fields.html +msgid "The diff output - only changes, additions, and removals" +msgstr "Keluaran diff - hanya perubahan, penambahan, dan penghapusan" + +#: changedetectionio/templates/_common_fields.html +msgid "All diff variants accept" +msgstr "Semua varian diff menerima" + +#: changedetectionio/templates/_common_fields.html +msgid "args, e.g." +msgstr "argumen, mis." + +#: changedetectionio/templates/_common_fields.html +msgid "The diff output - only changes, additions, and removals —" +msgstr "Keluaran diff - hanya perubahan, penambahan, dan penghapusan —" + +#: changedetectionio/templates/_common_fields.html +msgid "Without (added) prefix or colors" +msgstr "Tanpa awalan (ditambahkan) atau warna" + +#: changedetectionio/templates/_common_fields.html +msgid "The diff output - only changes and additions" +msgstr "Keluaran diff - hanya perubahan dan penambahan" + +#: changedetectionio/templates/_common_fields.html +msgid "The diff output - only changes and additions —" +msgstr "Keluaran diff - hanya perubahan dan penambahan —" + +#: changedetectionio/templates/_common_fields.html +msgid "The diff output - only changes and removals" +msgstr "Keluaran diff - hanya perubahan dan penghapusan" + +#: changedetectionio/templates/_common_fields.html +msgid "The diff output - only changes and removals —" +msgstr "Keluaran diff - hanya perubahan dan penghapusan —" + +#: changedetectionio/templates/_common_fields.html +msgid "The diff output - full difference output" +msgstr "Keluaran diff - keluaran perbedaan lengkap" + +#: changedetectionio/templates/_common_fields.html +msgid "The diff output - full difference output —" +msgstr "Keluaran diff - keluaran perbedaan lengkap —" + +#: changedetectionio/templates/_common_fields.html +msgid "The diff output - patch in unified format" +msgstr "Keluaran diff - patch dalam format unified" + +#: changedetectionio/templates/_common_fields.html +msgid "" +"Only the changed words/values from the previous version — e.g. the old price. Best when a single value changes per " +"line; multiple changed fragments are joined by newline." +msgstr "" +"Hanya kata/nilai yang berubah dari versi sebelumnya — mis. harga lama. Paling baik saat satu nilai berubah per baris;" +" beberapa fragmen yang berubah digabungkan dengan baris baru." + +#: changedetectionio/templates/_common_fields.html +msgid "" +"Only the changed words/values from the new version — e.g. the new price. Best when a single value changes per line; " +"multiple changed fragments are joined by newline." +msgstr "" +"Hanya kata/nilai yang berubah dari versi baru — mis. harga baru. Paling baik saat satu nilai berubah per baris; " +"beberapa fragmen yang berubah digabungkan dengan baris baru." + +#: changedetectionio/templates/_common_fields.html +msgid "The current snapshot text contents value, useful when combined with JSON or CSS filters" +msgstr "Nilai isi teks snapshot saat ini, berguna saat digabungkan dengan filter JSON atau CSS" + +#: changedetectionio/templates/_common_fields.html +msgid "Text that tripped the trigger from filters" +msgstr "Teks yang memicu pemicu dari filter" + +#: changedetectionio/templates/_common_fields.html +msgid "(upgraded)" +msgstr "(ditingkatkan)" + +#: changedetectionio/templates/_common_fields.html +msgid "" +"When AI Change Summary is configured, contains the AI-generated description instead of the raw diff. Falls back to " +"raw diff when not configured." +msgstr "" +"Saat Ringkasan Perubahan AI dikonfigurasi, berisi deskripsi yang dibuat AI alih-alih diff mentah. Kembali ke diff " +"mentah saat tidak dikonfigurasi." + +#: changedetectionio/templates/_common_fields.html +msgid "Always the raw +/- diff, regardless of AI Change Summary setting." +msgstr "Selalu diff +/- mentah, terlepas dari pengaturan Ringkasan Perubahan AI." + +#: changedetectionio/templates/_common_fields.html +msgid "The AI Change Summary text (same as the upgraded {{diff}} — explicit reference)." +msgstr "Teks Ringkasan Perubahan AI (sama dengan {{diff}} yang ditingkatkan — referensi eksplisit)." + +#: changedetectionio/templates/_common_fields.html +msgid "The AI Change Intent that was evaluated." +msgstr "Intent Perubahan AI yang dievaluasi." + +#: changedetectionio/templates/_common_fields.html +msgid "Warning: Contents of" +msgstr "Peringatan: Isi dari" + +#: changedetectionio/templates/_common_fields.html +msgid "and" +msgstr "dan" + +#: changedetectionio/templates/_common_fields.html +msgid "depend on how the difference algorithm perceives the change." +msgstr "bergantung pada cara algoritme perbedaan memahami perubahan." + +#: changedetectionio/templates/_common_fields.html +msgid "For example, an addition or removal could be perceived as a change in some cases." +msgstr "Misalnya, penambahan atau penghapusan dalam beberapa kasus dapat dianggap sebagai perubahan." + +#: changedetectionio/templates/_common_fields.html +msgid "More Here" +msgstr "Selengkapnya Di Sini" + +#: changedetectionio/templates/_common_fields.html +msgid "Add email notification:" +msgstr "Tambahkan notifikasi email:" + +#: changedetectionio/templates/_common_fields.html +msgid "Add to list" +msgstr "Tambahkan ke daftar" + +#: changedetectionio/templates/_common_fields.html +msgid "Add an email address" +msgstr "Tambahkan alamat email" + +#: changedetectionio/templates/_common_fields.html +msgid "Send test notification" +msgstr "Kirim notifikasi uji" + +#: changedetectionio/templates/_common_fields.html +msgid "Notification debug logs" +msgstr "Log debug notifikasi" + +#: changedetectionio/templates/_common_fields.html +msgid "Processing.." +msgstr "Memproses.." + +#: changedetectionio/templates/_common_fields.html +#, python-format +msgid "Use <a target=\"newwindow\" href=\"%(url)s\">AppRise Notification URLs</a> for notification to just about any service!" +msgstr "Gunakan <a target=\"newwindow\" href=\"%(url)s\">URL Notifikasi AppRise</a> untuk notifikasi ke hampir semua layanan!" + +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 +#: changedetectionio/templates/_common_fields.html +msgid "<i>Please read the notification services wiki here for important configuration notes</i>" +msgstr "<i>Harap baca wiki layanan notifikasi di sini untuk catatan konfigurasi penting</i>" + +#: changedetectionio/templates/_common_fields.html changedetectionio/templates/edit/include_subtract.html +msgid "Show advanced help and tips" +msgstr "Tampilkan bantuan dan kiat lanjutan" + +#: changedetectionio/templates/_common_fields.html +msgid "(or" +msgstr "(atau" + +#: changedetectionio/templates/_common_fields.html +msgid "only supports a maximum" +msgstr "hanya mendukung maksimum" + +#: changedetectionio/templates/_common_fields.html +msgid "2,000 characters" +msgstr "2.000 karakter" + +#: changedetectionio/templates/_common_fields.html +msgid "of notification text, including the title." +msgstr "teks notifikasi, termasuk judul." + +#: changedetectionio/templates/_common_fields.html +msgid "bots can't send messages to other bots, so you should specify chat ID of non-bot user." +msgstr "bot tidak dapat mengirim pesan ke bot lain, jadi Anda harus menentukan chat ID pengguna non-bot." + +#: changedetectionio/templates/_common_fields.html +msgid "only supports very limited HTML and can fail when extra tags are sent," +msgstr "hanya mendukung HTML yang sangat terbatas dan dapat gagal saat tag tambahan dikirim," + +#: changedetectionio/templates/_common_fields.html +msgid "(or use plaintext/markdown format)" +msgstr "(atau gunakan format plaintext/markdown)" + +#: changedetectionio/templates/_common_fields.html +msgid "for direct API calls (or omit the" +msgstr "untuk panggilan API langsung (atau hilangkan" + +#: changedetectionio/templates/_common_fields.html +msgid "for non-SSL ie" +msgstr "untuk non-SSL yaitu" + +#: changedetectionio/templates/_common_fields.html +msgid "more help here" +msgstr "bantuan selengkapnya di sini" + +#: changedetectionio/templates/_common_fields.html +#, python-format +msgid "Accepts the <code>%(token)s</code> placeholders listed below" +msgstr "Menerima placeholder <code>%(token)s</code> yang tercantum di bawah" + +#: changedetectionio/templates/_common_fields.html +msgid "Customise notifications" +msgstr "Sesuaikan notifikasi" + +#: changedetectionio/templates/_common_fields.html +msgid "Title for all notifications" +msgstr "Judul untuk semua notifikasi" + +#: changedetectionio/templates/_common_fields.html +msgid "For JSON payloads, use" +msgstr "Untuk payload JSON, gunakan" + +#: changedetectionio/templates/_common_fields.html +msgid "without quotes for automatic escaping, for example -" +msgstr "tanpa tanda kutip untuk escaping otomatis, misalnya -" + +#: changedetectionio/templates/_common_fields.html +msgid "URL encoding, use" +msgstr "Encoding URL, gunakan" + +#: changedetectionio/templates/_common_fields.html +msgid "for example -" +msgstr "misalnya -" + +#: changedetectionio/templates/_common_fields.html +msgid "Regular-expression replace, use" +msgstr "Penggantian regular-expression, gunakan" + +#: changedetectionio/templates/_common_fields.html +msgid "For a complete reference of all Jinja2 built-in filters, users can refer to the" +msgstr "Untuk referensi lengkap semua filter bawaan Jinja2, pengguna dapat melihat" + +#: changedetectionio/templates/_common_fields.html +msgid "Format for all notifications" +msgstr "Format untuk semua notifikasi" + +#: changedetectionio/templates/_common_fields.html +msgid "Discord does not render HTML — switch to" +msgstr "Discord tidak merender HTML — beralih ke" + +#: changedetectionio/templates/_common_fields.html +msgid "Plain Text" +msgstr "Teks Biasa" + +#: changedetectionio/templates/_common_fields.html +msgid "format to avoid" +msgstr "format untuk menghindari" + +#: changedetectionio/templates/_common_fields.html +msgid "and other HTML entities appearing literally in your notifications." +msgstr "dan entitas HTML lainnya muncul secara literal dalam notifikasi Anda." + +#: changedetectionio/templates/_helpers.html +msgid "Entry" +msgstr "Entri" + +#: changedetectionio/templates/_helpers.html +msgid "Actions" +msgstr "Tindakan" + +#: changedetectionio/templates/_helpers.html +msgid "Add a row/rule after" +msgstr "Tambahkan baris/aturan setelah" + +#: changedetectionio/templates/_helpers.html +msgid "Remove this row/rule" +msgstr "Hapus baris/aturan ini" + +#: changedetectionio/templates/_helpers.html +msgid "Verify this rule against current snapshot" +msgstr "Verifikasi aturan ini terhadap snapshot saat ini" + +#: changedetectionio/templates/_helpers.html +msgid "Set a hourly/week day schedule" +msgstr "Atur jadwal jam/hari dalam seminggu" + +#: changedetectionio/templates/_helpers.html +msgid "Schedule time limits" +msgstr "Batas waktu jadwal" + +#: changedetectionio/templates/_helpers.html +msgid "Business hours" +msgstr "Jam kerja" + +#: changedetectionio/templates/_helpers.html +msgid "Weekends" +msgstr "Akhir pekan" + +#: changedetectionio/templates/_helpers.html +msgid "Reset" +msgstr "Reset" + +#: changedetectionio/templates/_helpers.html +msgid "Warning, one or more of your 'days' has a duration that would extend into the next day." +msgstr "Peringatan, satu atau beberapa 'hari' Anda memiliki durasi yang akan berlanjut ke hari berikutnya." + +#: changedetectionio/templates/_helpers.html +msgid "This could have unintended consequences." +msgstr "Hal ini dapat menimbulkan konsekuensi yang tidak diinginkan." + +#: changedetectionio/templates/_helpers.html +msgid "More help and examples about using the scheduler" +msgstr "Bantuan dan contoh lainnya tentang penggunaan penjadwal" + +#: changedetectionio/templates/_helpers.html +msgid "Want to use a time schedule?" +msgstr "Ingin menggunakan jadwal waktu?" + +#: changedetectionio/templates/_helpers.html +msgid "First confirm/save your Time Zone Settings" +msgstr "Konfirmasi/simpan Pengaturan Zona Waktu Anda terlebih dahulu" + +#: changedetectionio/templates/_helpers.html +msgid "Triggered text" +msgstr "Teks pemicu" + +#: changedetectionio/templates/_helpers.html changedetectionio/templates/base.html +msgid "Triggers a change if this text appears, AND something changed in the document." +msgstr "Memicu perubahan jika teks ini muncul, DAN ada sesuatu yang berubah dalam dokumen." + +#: changedetectionio/templates/_helpers.html +msgid "Ignored text" +msgstr "Teks yang diabaikan" + +#: changedetectionio/templates/_helpers.html changedetectionio/templates/base.html +msgid "Ignored for calculating changes, but still shown." +msgstr "Diabaikan saat menghitung perubahan, tetapi tetap ditampilkan." + +#: changedetectionio/templates/_helpers.html +msgid "Blocked text" +msgstr "Teks yang diblokir" + +#: changedetectionio/templates/_helpers.html changedetectionio/templates/base.html +msgid "No change-detection will occur because this text exists." +msgstr "Deteksi perubahan tidak akan dilakukan karena teks ini ada." + +#: changedetectionio/templates/_stab.html +msgid "Settings sections" +msgstr "Bagian pengaturan" + +#: changedetectionio/templates/base.html +msgid "Confirm Action" +msgstr "Konfirmasi Tindakan" + +#: changedetectionio/templates/base.html +msgid "Are you sure?" +msgstr "Anda yakin?" + +#: changedetectionio/templates/base.html +msgid "<p>Are you sure you want to proceed?</p>" +msgstr "<p>Anda yakin ingin melanjutkan?</p>" + +#: changedetectionio/templates/base.html +msgid "Confirm" +msgstr "Konfirmasi" + +#: changedetectionio/templates/base.html +#, python-format +msgid "Delete %(name)s?" +msgstr "Hapus %(name)s?" + +#: changedetectionio/templates/base.html +#, python-format +msgid "<p>Are you sure you want to delete <strong>%(name)s</strong>?</p><p>This action cannot be undone.</p>" +msgstr "<p>Anda yakin ingin menghapus <strong>%(name)s</strong>?</p><p>Tindakan ini tidak dapat dibatalkan.</p>" + +#: changedetectionio/templates/base.html +#, python-format +msgid "Unlink %(name)s?" +msgstr "Lepas tautan %(name)s?" + +#: changedetectionio/templates/base.html +#, python-format +msgid "" +"<p>Are you sure you want to unlink all watches from <strong>%(name)s</strong>?</p><p>The tag will be kept but watches" +" will be removed from it.</p>" +msgstr "" +"<p>Anda yakin ingin melepas semua monitor dari <strong>%(name)s</strong>?</p><p>Tag akan dipertahankan tetapi monitor" +" akan dihapus dari tag tersebut.</p>" + +#: changedetectionio/templates/base.html +msgid "There was an error communicating with the server." +msgstr "Terjadi kesalahan saat berkomunikasi dengan server." + +#: changedetectionio/templates/base.html +msgid "There was a problem processing the request, please reload the page." +msgstr "Terjadi masalah saat memproses permintaan, silakan muat ulang halaman." + +#: changedetectionio/templates/base.html +#, python-format +msgid "There was a problem processing the request: %(error)s" +msgstr "Terjadi masalah saat memproses permintaan: %(error)s" + +#: changedetectionio/templates/base.html +msgid "Existing filters under the 'Filters & Triggers' tab were cleared." +msgstr "Filter yang ada pada tab 'Filter & Pemicu' telah dibersihkan." + +#: changedetectionio/templates/base.html +msgid "Fetching element data.." +msgstr "Mengambil data elemen.." + +#: changedetectionio/templates/base.html +msgid "Rendering.." +msgstr "Merender.." + +#: changedetectionio/templates/base.html +msgid "Draw mode - click and drag to select an area" +msgstr "Mode gambar - klik dan seret untuk memilih area" + +#: changedetectionio/templates/base.html +msgid "Hover over elements to select" +msgstr "Arahkan kursor ke elemen untuk memilih" + +#: changedetectionio/templates/base.html +msgid "Image copied to clipboard!" +msgstr "Gambar disalin ke clipboard!" + +#: changedetectionio/templates/base.html +msgid "Failed to copy image. Your browser may not support this feature." +msgstr "Gagal menyalin gambar. Browser Anda mungkin tidak mendukung fitur ini." + +#: changedetectionio/templates/base.html +msgid "Please select the text/lines you want to capture first by highlighting with your mouse." +msgstr "Silakan pilih dahulu teks/baris yang ingin Anda tangkap dengan menyorotnya menggunakan mouse." + +#: changedetectionio/templates/base.html +msgid "Please select text within the diff content." +msgstr "Silakan pilih teks di dalam konten diff." + +#: changedetectionio/templates/base.html +#, python-format +msgid "Failed to generate image: %(error)s" +msgstr "Gagal membuat gambar: %(error)s" + +#: changedetectionio/templates/base.html +msgid "Change Detection Diff" +msgstr "Diff Deteksi Perubahan" + +#: changedetectionio/templates/base.html +msgid "Check out this change detected via changedetection.io" +msgstr "Lihat perubahan ini yang terdeteksi melalui changedetection.io" + +#: changedetectionio/templates/base.html +msgid "Please fill in all fields (Field, Operator, and Value) before verifying." +msgstr "Silakan isi semua bidang (Bidang, Operator, dan Nilai) sebelum memverifikasi." + +#: changedetectionio/templates/base.html +msgid "Error verifying condition." +msgstr "Kesalahan saat memverifikasi kondisi." + +#: changedetectionio/templates/base.html +msgid "Destination email" +msgstr "Email tujuan" + +#: changedetectionio/templates/base.html +msgid "Content after filters" +msgstr "Konten setelah filter" + +#: changedetectionio/templates/base.html +msgid "Content raw/before filters" +msgstr "Konten mentah/sebelum filter" + +#: changedetectionio/templates/base.html +msgid "Main navigation" +msgstr "Navigasi utama" + +#: changedetectionio/templates/base.html +msgid "Share this link:" +msgstr "Bagikan tautan ini:" + +#: changedetectionio/templates/base.html +msgid "Real-time updates offline" +msgstr "Pembaruan realtime offline" + +#: changedetectionio/templates/base.html +msgid "Select Language" +msgstr "Pilih Bahasa" + +#: changedetectionio/templates/base.html +msgid "Auto-detect from browser" +msgstr "Deteksi otomatis dari browser" + +#: changedetectionio/templates/base.html +msgid "Language support is in beta, please help us improve by opening a PR on GitHub with any updates." +msgstr "Dukungan bahasa masih beta, bantu kami meningkatkannya dengan membuka PR di GitHub untuk setiap pembaruan." + +#: changedetectionio/templates/base.html +msgid "AI / LLM not configured" +msgstr "AI / LLM belum dikonfigurasi" + +#: changedetectionio/templates/base.html +msgid "LLM-powered summaries are not yet enabled. Configure an AI provider in Settings to get started." +msgstr "Ringkasan bertenaga LLM belum diaktifkan. Konfigurasikan penyedia AI di Pengaturan untuk memulai." + +#: changedetectionio/templates/base.html +msgid "Go to AI / LLM Settings" +msgstr "Buka Pengaturan AI / LLM" + +#: changedetectionio/templates/base.html changedetectionio/templates/sidebar-nav.html +msgid "Search" +msgstr "Cari" + +#: changedetectionio/templates/base.html +#, python-format +msgid "URL or Title in '%(title)s'" +msgstr "URL atau Judul di '%(title)s'" + +#: changedetectionio/templates/base.html +msgid "URL or Title" +msgstr "URL atau Judul" + +#: changedetectionio/templates/base.html +msgid "Enter search term..." +msgstr "Masukkan istilah pencarian..." + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "" +"<strong>On</strong> – every watch in this group uses the AI settings below, unless it fills in its own. " +"<strong>Off</strong> – no AI for any watch in this group. <strong>Leave it to each watch</strong> – this " +"group has no say; each watch uses its own AI settings." +msgstr "" +"<strong>Aktif</strong> – setiap monitor dalam grup ini menggunakan pengaturan AI di bawah, kecuali memiliki " +"pengaturannya sendiri. <strong>Nonaktif</strong> – tidak ada AI untuk monitor mana pun dalam grup ini. " +"<strong>Biarkan ditentukan oleh masing-masing monitor</strong> – grup ini tidak menentukan; setiap monitor " +"menggunakan pengaturan AI-nya sendiri." + +#: changedetectionio/templates/edit/include_llm_intent.html +#, python-format +msgid "Group %(name)s decides this: AI is ON for every watch in that group." +msgstr "Grup %(name)s menentukan ini: AI AKTIF untuk setiap monitor dalam grup tersebut." + +#: changedetectionio/templates/edit/include_llm_intent.html +#, python-format +msgid "Group %(name)s decides this: AI is OFF for every watch in that group." +msgstr "Grup %(name)s menentukan ini: AI NONAKTIF untuk setiap monitor dalam grup tersebut." + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "" +"Describe what you care about. The AI evaluates every detected change against this and only notifies you when it " +"matches." +msgstr "" +"Jelaskan hal yang Anda pedulikan. AI mengevaluasi setiap perubahan terdeteksi terhadap ini dan hanya memberi " +"notifikasi saat cocok." + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "Set a change intent for all watches in this tag/group. Each watch can override with its own." +msgstr "Atur intent perubahan untuk semua monitor dalam tag/grup ini. Setiap monitor dapat menimpanya dengan intent sendiri." + +#: changedetectionio/templates/edit/include_llm_intent.html +#, python-format +msgid "From group '%(name)s': %(value)s" +msgstr "Dari grup '%(name)s': %(value)s" + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "e.g. Alert me when the price drops below $300, or a new product is launched. Ignore footer and navigation changes." +msgstr "" +"mis. Beri tahu saya saat harga turun di bawah $300, atau produk baru diluncurkan. Abaikan perubahan footer dan " +"navigasi." + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "e.g. Flag price changes or new product launches across all watches in this group" +msgstr "mis. Tandai perubahan harga atau peluncuran produk baru di seluruh monitor dalam grup ini" + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "Examples:" +msgstr "Contoh:" + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "Only notify if the price drops below $200, or a limited-time deal is added" +msgstr "Beri notifikasi hanya jika harga turun di bawah $200, atau promo waktu terbatas ditambahkan" + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "Alert when a new recall, safety notice, or product withdrawal is published" +msgstr "Beri peringatan saat penarikan produk, pemberitahuan keselamatan, atau penghentian produk baru dipublikasikan" + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "Notify when a new grant round opens or an application deadline is announced" +msgstr "Beri notifikasi saat putaran hibah baru dibuka atau tenggat pengajuan diumumkan" + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "Only important if package versions change or a CVE is mentioned" +msgstr "Hanya penting jika versi paket berubah atau CVE disebutkan" + +#: changedetectionio/templates/edit/include_llm_intent.html +#, python-format +msgid "AI pre-filter active: <code>%(filter)s</code> — narrows content scope before evaluation" +msgstr "Pra-filter AI aktif: <code>%(filter)s</code> — mempersempit cakupan konten sebelum evaluasi" + +#: changedetectionio/templates/edit/include_llm_intent.html +#, python-format +msgid "" +"When a change is detected, the AI describes it according to your instructions and replaces <code>%(diff)s</code> in " +"your notification. Use <code>%(raw_diff)s</code> if you still want the original diff." +msgstr "" +"Saat perubahan terdeteksi, AI menjelaskannya sesuai instruksi Anda dan mengganti <code>%(diff)s</code> dalam " +"notifikasi. Gunakan <code>%(raw_diff)s</code> jika Anda tetap menginginkan diff asli." + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "Describe how changes should be summarised in notifications for all watches in this group." +msgstr "Jelaskan bagaimana perubahan harus diringkas dalam notifikasi untuk semua monitor dalam grup ini." + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "" +"Appending keeps the prompt inherited from the group or from global settings and adds your text after it, so later " +"edits to that prompt still reach this watch." +msgstr "" +"Menambahkan mempertahankan prompt yang diwarisi dari grup atau pengaturan global lalu menambahkan teks Anda " +"setelahnya, sehingga perubahan berikutnya pada prompt tersebut tetap diterapkan ke monitor ini." + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "" +"Appending keeps the prompt inherited from global settings and adds your text after it, so later edits to that prompt " +"still reach this group." +msgstr "" +"Menambahkan mempertahankan prompt yang diwarisi dari pengaturan global lalu menambahkan teks Anda setelahnya, " +"sehingga perubahan berikutnya pada prompt tersebut tetap diterapkan ke grup ini." + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "List each new item added with its name and price. Translate to English." +msgstr "Cantumkan setiap item baru yang ditambahkan beserta nama dan harganya. Terjemahkan ke bahasa Inggris." + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "Summarise what events were added or cancelled. Two sentences maximum." +msgstr "Ringkas acara apa yang ditambahkan atau dibatalkan. Maksimal dua kalimat." + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "Describe the price change: old price, new price, percentage difference." +msgstr "Jelaskan perubahan harga: harga lama, harga baru, perbedaan persentase." + +#: changedetectionio/templates/edit/include_llm_intent.html +msgid "AI" +msgstr "AI" + +#: changedetectionio/templates/edit/include_llm_intent.html +#, python-format +msgid "" +"Configure an AI / LLM provider in <a href=\"%(url)s\">Settings → AI / LLM</a> to enable AI Change Intent and AI " +"Change Summary." +msgstr "" +"Konfigurasikan penyedia AI / LLM di <a href=\"%(url)s\">Pengaturan → AI / LLM</a> untuk mengaktifkan Intent Perubahan" +" AI dan Ringkasan Perubahan AI." + +#: changedetectionio/templates/edit/include_llm_intent.html +#, python-format +msgid "Configure an AI / LLM provider in <a href=\"%(url)s\">Settings → AI / LLM</a> to enable AI features for this group." +msgstr "" +"Konfigurasikan penyedia AI / LLM di <a href=\"%(url)s\">Pengaturan → AI / LLM</a> untuk mengaktifkan fitur AI bagi " +"grup ini." + +#: changedetectionio/templates/edit/include_subtract.html +msgid "Note!: //text() function does not work where the <element> contains <![CDATA[]]>" +msgstr "Catatan!: fungsi //text() tidak berfungsi jika <element> berisi <![CDATA[]]>" + +#. CJK fonts lack native italics; allow substitution with conventional local styling. dennis-ignore: W303 +#: changedetectionio/templates/edit/include_subtract.html +msgid "One CSS, xPath 1 & 2, JSON Path/JQ selector per line, <i>any</i> rules that matches will be used." +msgstr "Satu selektor CSS, xPath 1 & 2, JSON Path/JQ per baris, <i>aturan apa pun</i> yang cocok akan digunakan." + +#: changedetectionio/templates/edit/include_subtract.html +msgid "Limit text to this CSS rule, only text matching this CSS rule is included." +msgstr "Batasi teks dengan aturan CSS ini, hanya teks yang cocok dengan aturan CSS ini yang disertakan." + +#: changedetectionio/templates/edit/include_subtract.html +msgid "Prefix with <code>json:</code>, use <code>json:$</code> to force re-formatting if required," +msgstr "Awali dengan <code>json:</code>, gunakan <code>json:$</code> untuk memaksa pemformatan ulang jika diperlukan," + +#: changedetectionio/templates/edit/include_subtract.html +msgid "test your JSONPath here" +msgstr "uji JSONPath Anda di sini" + +#: changedetectionio/templates/edit/include_subtract.html +msgid "Prefix <code>jqraw:</code> outputs the results as text instead of a JSON list." +msgstr "Awalan <code>jqraw:</code> menghasilkan hasil sebagai teks alih-alih daftar JSON." + +#: changedetectionio/templates/edit/include_subtract.html +msgid "jq support not installed" +msgstr "dukungan jq tidak terinstal" + +#: changedetectionio/templates/edit/include_subtract.html +msgid "" +"Limit text to this XPath rule, simply start with a forward-slash. To specify XPath to be used explicitly or the XPath" +" rule starts with an XPath function: Prefix with <code>xpath:</code>" +msgstr "" +"Batasi teks dengan aturan XPath ini, cukup mulai dengan garis miring. Untuk menentukan XPath secara eksplisit atau " +"jika aturan XPath dimulai dengan fungsi XPath: awali dengan <code>xpath:</code>" + +#: changedetectionio/templates/edit/include_subtract.html +msgid "test your XPath here" +msgstr "uji XPath Anda di sini" + +#: changedetectionio/templates/edit/include_subtract.html +msgid "Get all titles from an RSS feed <code>//title/text()</code>" +msgstr "Dapatkan semua judul dari feed RSS <code>//title/text()</code>" + +#: changedetectionio/templates/edit/include_subtract.html +msgid "To use XPath1.0: Prefix with <code>xpath1:</code>" +msgstr "Untuk menggunakan XPath1.0: awali dengan <code>xpath1:</code>" + +#: changedetectionio/templates/edit/include_subtract.html +msgid "here for more CSS selector help" +msgstr "di sini untuk bantuan selektor CSS lainnya" + +#: changedetectionio/templates/edit/text-options.html +msgid "Text to wait for before triggering a change/notification, all text and regex are tested case-insensitive." +msgstr "Teks yang ditunggu sebelum memicu perubahan/notifikasi, semua teks dan regex diuji tanpa membedakan huruf besar-kecil." + +#: changedetectionio/templates/edit/text-options.html +msgid "Trigger text is processed from the result-text that comes out of any CSS/JSON Filters for this monitor" +msgstr "Teks pemicu diproses dari teks hasil yang keluar dari Filter CSS/JSON apa pun untuk monitor ini" + +#: changedetectionio/templates/edit/text-options.html +msgid "Each line is processed separately (think of each line as \"OR\")" +msgstr "Setiap baris diproses secara terpisah (anggap setiap baris sebagai \"OR\")" + +#: changedetectionio/templates/edit/text-options.html +msgid "Note: Wrap in forward slash / to use regex example:" +msgstr "Catatan: Bungkus dengan garis miring / untuk menggunakan regex, contoh:" + +#: changedetectionio/templates/edit/text-options.html +msgid "You can also use" +msgstr "Anda juga dapat menggunakan" + +#: changedetectionio/templates/edit/text-options.html +msgid "conditions" +msgstr "kondisi" + +#: changedetectionio/templates/edit/text-options.html +msgid "\"Page text\" - with Contains, Starts With, Not Contains and many more" +msgstr "\"Teks halaman\" - dengan Mengandung, Dimulai Dengan, Tidak Mengandung, dan banyak lainnya" + +#: changedetectionio/templates/edit/text-options.html +msgid "" +"For example: Out of stock\n" +"Sold out\n" +"Not in stock\n" +"Unavailable" +msgstr "" +"Contoh: Stok habis\n" +"Terjual habis\n" +"Tidak ada stok\n" +"Tidak tersedia" + +#: changedetectionio/templates/edit/text-options.html +msgid "" +"Block change-detection while this text is on the page, all text and regex are tested case-insensitive, good for " +"waiting for when a product is available again" +msgstr "" +"Blokir deteksi perubahan selama teks ini ada di halaman, semua teks dan regex diuji tanpa membedakan huruf besar-" +"kecil, berguna untuk menunggu hingga produk tersedia kembali" + +#: changedetectionio/templates/edit/text-options.html +msgid "Block text is processed from the result-text that comes out of any CSS/JSON Filters for this monitor" +msgstr "Teks blokir diproses dari teks hasil yang keluar dari Filter CSS/JSON apa pun untuk monitor ini" + +#: changedetectionio/templates/edit/text-options.html +msgid "All lines here must not exist (think of each line as \"OR\")" +msgstr "Semua baris di sini tidak boleh ada (anggap setiap baris sebagai \"OR\")" + +#: changedetectionio/templates/edit/text-options.html +msgid "" +"celsius\n" +"temperature\n" +"price" +msgstr "" +"celsius\n" +"suhu\n" +"harga" + +#: changedetectionio/templates/edit/text-options.html +msgid "Keep only lines that contain any of these words or phrases (plain text, case-insensitive)" +msgstr "" +"Pertahankan hanya baris yang mengandung salah satu kata atau frasa ini (teks biasa, tanpa membedakan huruf besar-" +"kecil)" + +#: changedetectionio/templates/edit/text-options.html +msgid "One entry per line — any line in the page text that contains a match is kept" +msgstr "Satu entri per baris — setiap baris pada teks halaman yang mengandung kecocokan akan dipertahankan" + +#: changedetectionio/templates/edit/text-options.html +msgid "Simpler alternative to regex — use this when you just want lines about a specific topic" +msgstr "Alternatif yang lebih sederhana daripada regex — gunakan ini jika Anda hanya menginginkan baris tentang topik tertentu" + +#: changedetectionio/templates/edit/text-options.html +msgid "enter <code>celsius</code> to keep only lines mentioning temperature readings" +msgstr "masukkan <code>celsius</code> untuk mempertahankan hanya baris yang menyebutkan pembacaan suhu" + +#: changedetectionio/templates/edit/text-options.html +msgid "Extracts text in the final output (line by line) after other filters using regular expressions or string match:" +msgstr "" +"Mengekstrak teks dalam output akhir (baris demi baris) setelah filter lain menggunakan regular expression atau " +"pencocokan string:" + +#: changedetectionio/templates/edit/text-options.html +msgid "Regular expression - example" +msgstr "Regular expression - contoh" + +#: changedetectionio/templates/edit/text-options.html +msgid "Don't forget to consider the white-space at the start of a line" +msgstr "Jangan lupa mempertimbangkan spasi di awal baris" + +#: changedetectionio/templates/edit/text-options.html +#, python-format +msgid "Use <code>//(?aiLmsux))</code> type flags (more <a href=\"%(url)s\">information here</a>)" +msgstr "Gunakan flag tipe <code>//(?aiLmsux))</code> (lebih banyak <a href=\"%(url)s\">informasi di sini</a>)" + +#: changedetectionio/templates/edit/text-options.html +msgid "Keyword example - example: <code>Out of stock</code>" +msgstr "Contoh kata kunci - contoh: <code>Stok habis</code>" + +#: changedetectionio/templates/edit/text-options.html +msgid "Use groups to extract just that text - example" +msgstr "Gunakan grup untuk mengekstrak hanya teks tersebut - contoh" + +#: changedetectionio/templates/edit/text-options.html +msgid "returns a list of years only" +msgstr "mengembalikan daftar tahun saja" + +#: changedetectionio/templates/edit/text-options.html +msgid "Example - match lines containing a keyword" +msgstr "Contoh - cocokkan baris yang mengandung kata kunci" + +#: changedetectionio/templates/edit/text-options.html +msgid "One line per regular-expression/string match" +msgstr "Satu baris per regular-expression/pencocokan string" + +#: changedetectionio/templates/login.html +msgid "Login" +msgstr "Masuk" + +#: changedetectionio/templates/menu.html +msgid "Resume automatic scheduling" +msgstr "Lanjutkan penjadwalan otomatis" + +#: changedetectionio/templates/menu.html +msgid "Pause auto-queue scheduling of watches" +msgstr "Jeda penjadwalan antrean otomatis monitor" + +#: changedetectionio/templates/menu.html +msgid "Scheduling paused — click to resume" +msgstr "Penjadwalan dijeda — klik untuk melanjutkan" + +#: changedetectionio/templates/menu.html +msgid "Scheduling active — click to pause all" +msgstr "Penjadwalan aktif — klik untuk menjeda semua" + +#: changedetectionio/templates/menu.html +msgid "Paused" +msgstr "Dijeda" + +#: changedetectionio/templates/menu.html +msgid "Running" +msgstr "Berjalan" + +#: changedetectionio/templates/menu.html +msgid "Unmute notifications" +msgstr "Aktifkan kembali notifikasi" + +#: changedetectionio/templates/menu.html +msgid "Notifications are muted - click to unmute" +msgstr "Notifikasi dibisukan - klik untuk mengaktifkan kembali" + +#: changedetectionio/templates/menu.html +msgid "Alerts on" +msgstr "Peringatan aktif" + +#: changedetectionio/templates/menu.html +msgid "Log out" +msgstr "Keluar" + +#: changedetectionio/templates/menu.html +msgid "Settings" +msgstr "Pengaturan" + +#: changedetectionio/templates/menu.html +msgid "EDIT" +msgstr "EDIT" + +#: changedetectionio/templates/menu.html +msgid "Website Change Detection and Notification." +msgstr "Deteksi Perubahan dan Notifikasi Situs Web." + +#: changedetectionio/templates/menu.html +msgid "Toggle AI Mode" +msgstr "Alihkan Mode AI" + +#: changedetectionio/templates/menu.html +msgid "Toggle AI mode" +msgstr "Alihkan mode AI" + +#: changedetectionio/templates/menu.html +msgid "Toggle Light/Dark Mode" +msgstr "Alihkan Mode Terang/Gelap" + +#: changedetectionio/templates/menu.html +msgid "Toggle light/dark mode" +msgstr "Alihkan mode terang/gelap" + +#: changedetectionio/templates/sidebar-nav.html +msgid "Add a page watch" +msgstr "Tambahkan monitor halaman" + +#: changedetectionio/templates/sidebar-nav.html +msgid "Page Watches" +msgstr "Monitor Halaman" + +#: changedetectionio/templates/sidebar-nav.html +msgid "Unread changes" +msgstr "Perubahan belum dibaca" + +#: changedetectionio/templates/sidebar-nav.html +msgid "Watch Groups" +msgstr "Grup Monitor" + +#: changedetectionio/templates/sidebar-nav.html +msgid "Import lists of web pages" +msgstr "Impor daftar halaman web" + +#: changedetectionio/templates/sidebar-nav.html +msgid "Browsers (coming soon)" +msgstr "Browser (segera hadir)" + +#: changedetectionio/templates/sidebar-nav.html +msgid "Browsers" +msgstr "Browser" + +#: changedetectionio/templates/sidebar-nav.html +msgid "soon" +msgstr "segera" + +#: changedetectionio/templates/sidebar-nav.html +msgid "Search, or Use Alt+S Key" +msgstr "Cari, atau Gunakan Tombol Alt+S" + +#: changedetectionio/templates/sidebar-nav.html +msgid "Queue" +msgstr "Antrean" + +#: changedetectionio/templates/sidebar-nav.html +msgid "Live activity" +msgstr "Aktivitas langsung" + +#: changedetectionio/templates/sidebar-nav.html +msgid "A new version is available" +msgstr "Versi baru tersedia" + +#: changedetectionio/validate_url.py +msgid "API Base URL is not a valid http(s) URL." +msgstr "URL Dasar API bukan URL http(s) yang valid." + +#: changedetectionio/validate_url.py +msgid "" +"API Base URL resolves to a private, loopback, link-local or reserved IP address and was blocked to prevent SSRF. To " +"allow LLM endpoints on private networks (e.g. a local Ollama server) set the environment variable " +"ALLOW_IANA_RESTRICTED_ADDRESSES=true and restart." +msgstr "" +"URL Dasar API mengarah ke alamat IP privat, loopback, link-local, atau reserved dan diblokir untuk mencegah SSRF. " +"Untuk mengizinkan endpoint LLM pada jaringan privat (mis. server Ollama lokal), atur variabel lingkungan " +"ALLOW_IANA_RESTRICTED_ADDRESSES=true lalu mulai ulang." + +#: changedetectionio/widgets/ternary_boolean.py +msgid "Yes" +msgstr "Ya" + +#: changedetectionio/widgets/ternary_boolean.py +msgid "No" +msgstr "Tidak" + +#: changedetectionio/widgets/ternary_boolean.py +msgid "Main settings" +msgstr "Pengaturan utama"