PageSourceSearch

https://www.seonsaengnim.com/_next/static/chunks/app/layout-150d3e…?dpl=dpl_7MGQmhizR81NcyJVvJgQTVUGaxWy

js seonsaengnim.com collected 2026-10-02 00:33:17 UTC 19,438 bytes, 1 lines download raw bytes

1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="e098267f-9f5f-4b2e-8f79-ebd26849d5ac",e._sentryDebugIdIdentifier="sentry-dbid-e098267f-9f5f-4b2e-8f79-ebd26849d5ac")}catch(e){}}(),(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7177,35308,98117],{571:(e,t,n)=>{Promise.resolve().then(n.t.bind(n,19324,23)),Promise.resolve().then(n.t.bind(n,7329,23)),Promise.resolve().then(n.t.bind(n,35153,23)),Promise.resolve().then(n.bind(n,97625)),Promise.resolve().then(n.bind(n,99737)),Promise.resolve().then(n.bind(n,98798)),Promise.resolve().then(n.bind(n,20709)),Promise.resolve().then(n.bind(n,71633)),Promise.resolve().then(n.bind(n,32071)),Promise.resolve().then(n.bind(n,58134)),Promise.resolve().then(n.bind(n,31828)),Promise.resolve().then(n.t.bind(n,69243,23)),Promise.resolve().then(n.t.bind(n,82813,23)),Promise.resolve().then(n.t.bind(n,68477,23)),Promise.resolve().then(n.t.bind(n,40634,23))},7329:()=>{},19324:()=>{},20709:(e,t,n)=>{"use strict";n.d(t,{PostHogProvider:()=>y});var i=n(95155),a=n(72341),r=n(83731),o=n(12115),s=n(35695),l=n(46414),c=n(95389);function u(){return{platform:(0,c.Nc)(),app_channel:(0,c.JK)()?"native":"browser"}}let d=["utm_source","utm_medium","utm_campaign","utm_content","utm_term","fbclid"],m="posthog_utms";function f(){try{let e=new URLSearchParams(window.location.search),t={};for(let n of d){let i=e.get(n);i&&(t[n]=i)}if(0===Object.keys(t).length)return null;let n={...p()||{},...t};sessionStorage.setItem(m,JSON.stringify({...n,_ts:Date.now()}));let i=new Date(Date.now()+6048e5).toUTCString();return document.cookie="utm_params=".concat(encodeURIComponent(JSON.stringify(n)),"; domain=.seonsaengnim.com; path=/; expires=").concat(i,"; SameSite=Lax; Secure"),n}catch(e){}return null}function p(){try{let e=sessionStorage.getItem(m);if(e){let t=JSON.parse(e);if(Date.now()-t._ts<=6048e5){let{_ts:e,...n}=t;if(Object.keys(n).length>0)return n}else sessionStorage.removeItem(m)}}catch(e){}try{let e=document.cookie.split("; ").find(e=>e.startsWith("utm_params="));if(e){let t=JSON.parse(decodeURIComponent(e.split("=").slice(1).join("=")));if(Object.keys(t).length>0)return sessionStorage.setItem(m,JSON.stringify({...t,_ts:Date.now()})),t}}catch(e){}return null}function g(e){if(!a.Ay.__loaded)return;let t={};for(let[n,i]of Object.entries(e))t["$".concat(n)]=i;if(a.Ay.register_once(t),!a.Ay.get_property("$initial_utm_source")&&!a.Ay.get_property("$initial_fbclid")){let t={};for(let[n,i]of Object.entries(e))t["$initial_".concat(n)]=i;a.Ay.setPersonProperties(t)}}function h(e){var t;if(!a.Ay.__loaded)return;let n=u();a.Ay.identify(e.id,{email:null!==(t=e.email)&&void 0!==t?t:void 0,...n})}function v(e){let{enabled:t}=e,n=(0,s.usePathname)(),i=(0,s.useSearchParams)(),a=(0,r.sf)(),l=(0,o.useRef)(null);return(0,o.useEffect)(()=>{if(t&&n&&a){let e=window.origin+n;(null==i?void 0:i.toString())&&(e+="?".concat(i.toString())),l.current!==e&&(l.current=e,a.capture("$pageview",{$current_url:e}))}},[t,n,i,a]),null}function w(){let e=(0,s.useSearchParams)();return(0,o.useEffect)(()=>{if(d.some(t=>null==e?void 0:e.get(t))){let e=f();e&&a.Ay.__loaded&&g(e)}},[e]),null}function y(e){let{children:t}=e,[n,s]=(0,o.useState)(!1);return(0,o.useEffect)(()=>{a.Ay.init("phc_RitgyOZybfKcJbK0dvSrAdRaSnZTPUeb7isnC3waOHW",{api_host:"https://t.seonsaengnim.com",person_profiles:"identified_only",capture_pageview:!1,capture_pageleave:!0,cross_subdomain_cookie:!0,cookie_domain:".seonsaengnim.com",persistence:"localStorage+cookie",secure_cookie:!0,session_idle_timeout_seconds:1800,loaded:()=>{let e=u();a.Ay.__loaded&&(a.Ay.register(e),a.Ay.setPersonProperties(e));let t=p();t&&g(t),s(!0)}}),f();let e=(0,l.createClient)();(async()=>{try{let{data:{user:t}}=await e.auth.getUser();t&&h(t)}catch(e){}})();let{data:{subscription:t}}=e.auth.onAuthStateChange((e,t)=>{(null==t?void 0:t.user)&&h(t.user)});return()=>{t.unsubscribe()}},[]),(0,i.jsxs)(r.so,{client:a.Ay,children:[(0,i.jsxs)(o.Suspense,{fallback:null,children:[(0,i.jsx)(v,{enabled:n}),(0,i.jsx)(w,{})]}),t]})}},28250:(e,t,n)=>{"use strict";n.d(t,{TD:()=>r,oz:()=>a});let i="ssnim_chunk_error_reloaded_at";function a(e){var t,n;if(!e)return!1;let i="object"==typeof e&&null!==e&&"name"in e?String(null!==(t=e.name)&&void 0!==t?t:""):"",a="str
1ing"==typeof e?e:"object"==typeof e&&null!==e&&"message"in e?String(null!==(n=e.message)&&void 0!==n?n:""):"",r="".concat(i," ").concat(a).toLowerCase();return r.includes("chunkloaderror")||r.includes("loading chunk")||r.includes("loading css chunk")||r.includes("failed to fetch dynamically imported module")||r.includes("error loading dynamically imported module")||r.includes("importing a module script failed")}function r(e){if(void 0!==e&&!a(e))return!1;let t=0;try{t=parseInt(sessionStorage.getItem(i)||"0",10)||0}catch(e){}if(Date.now()-t<2e4)return!1;try{sessionStorage.setItem(i,String(Date.now()))}catch(e){}return window.location.reload(),!0}},35153:()=>{},35308:(e,t,n)=>{"use strict";n.d(t,{r:()=>o,whenRevenueCatReady:()=>s});let i="idle",a=null,r=null;function o(e){i=e?"ready":"failed",r?(r(e),r=null):a||(a=Promise.resolve(e))}function s(){return"ready"===i?Promise.resolve(!0):"failed"===i?Promise.resolve(!1):(a||(a=new Promise(e=>{"ready"===i?e(!0):"failed"===i?e(!1):r=e})),a)}},56665:(e,t,n)=>{"use strict";n.d(t,{Kb:()=>r,Mj:()=>d,e$:()=>l,g0:()=>m,gq:()=>o,l3:()=>u,sO:()=>c,tc:()=>f,yH:()=>s});var i=n(95389);function a(e){let t=(0,i.Nc)();return"android"===t?"Google Play":"ios"===t?"App Store":e?"App Store or Google Play":"App Store ou Google Play"}function r(e,t){let n=(0,i.Nc)();if((null==t?void 0:t.forceStore)!==!0&&"ios"!==n&&"android"!==n)return e?"Monthly renews automatically via Stripe unless cancelled from your account settings before the next billing date. Lifetime is a one-time payment, no renewal.":"Le mensuel se renouvelle automatiquement via Stripe sauf annulation depuis les param\xe8tres de ton compte avant la prochaine \xe9ch\xe9ance. \xc0 vie : paiement unique, sans renouvellement.";let r=a(e);return e?"Monthly renews automatically unless cancelled at least 24 hours before the period ends in ".concat(r," settings. Lifetime is a one-time purchase, no renewal."):"Le mensuel se renouvelle automatiquement sauf annulation au moins 24 h avant la fin de p\xe9riode dans les r\xe9glages ".concat(r,". \xc0 vie : paiement unique, sans renouvellement.")}function o(e){let t=(0,i.Nc)();if("ios"!==t&&"android"!==t)return e?"Auto-renewing Stripe subscription. Renews automatically unless cancelled from your account settings before the next billing date.":"Abonnement Stripe \xe0 renouvellement automatique. Se renouvelle automatiquement sauf annulation depuis les param\xe8tres de ton compte avant la prochaine \xe9ch\xe9ance.";let n=a(e);return e?"Auto-renewing subscription. Renews automatically unless cancelled at least 24h before the end of the period, manageable in your ".concat(n," account settings."):"Abonnement \xe0 renouvellement automatique. Se renouvelle automatiquement sauf annulation au moins 24h avant la fin de la p\xe9riode, g\xe9rable dans les r\xe9glages de ton compte ".concat(n,".")}function s(e){let t=a(e);return e?"Manage or cancel your subscription in your ".concat(t," account settings."):"G\xe8re ou annule ton abonnement depuis les r\xe9glages de ton compte ".concat(t,".")}function l(e){let t=a(e);return e?"Permanently deletes your account and all data. A Stripe subscription (website) will be cancelled automatically. A ".concat(t," subscription must be cancelled separately."):"Supprime d\xe9finitivement ton compte et toutes tes donn\xe9es. Un abonnement Stripe (site web) sera annul\xe9 automatiquement. Un abonnement ".concat(t," doit \xeatre annul\xe9 s\xe9par\xe9ment.")}function c(e){let t=a(e),n="android"===(0,i.Nc)()?"Google":"ios"===(0,i.Nc)()?"Apple":e?"Apple or Google":"Apple ou Google";return e?"You have an active subscription through ".concat(t,". Deleting your Seonsaengnim account does not stop billing: cancel it first in your ").concat(n," account settings."):"Tu as un abonnement actif via ".concat(t,". Supprimer ton compte Seonsaengnim n'arr\xeate pas les pr\xe9l\xe8vements : annule-le d'abord dans tes r\xe9glages ").concat(n,".")}function u(e){let t=a(e);return e?"I understand I must cancel my ".concat(t," subscription to stop billing"):"Je comprends que je dois annuler mon abonnement ".concat(t," pour arr\xeater les pr\xe9l\xe8vements")}function d(e){let t=a(e);return e?"Confirm that you understand ".concat(t," billing."):"Confirme que tu as compris la facturation ".concat(t,".")}function m(e,t){let n=function(e){let t=(0,i.Nc)();return"android"===t?e?"Android Settings":"R\xe9glages Android":"ios"===t?e?"iOS Settings":"R\xe9glages iOS":e?"device settings":"r\xe9glages de l'appareil"}(e);return t?e?"Enable notifications in ".concat(n," to receive study reminders."):"Active les notifications dans ".concat(n," pour recevoir les rappels."):e?"Enable notifications in ".concat(n,"."):"Active les notifications dans ".concat(n,".")}function f(){let e=(0,i.Nc)();return"android"===e?"goog_RvbfAgWxWDQRCjtSpqkBfYBiHBA".trim()||null:"ios"===e&&"appl_OOGmiTXJvzElZRWNUGXHoOHBGAN".trim()||null}}
1,68143:(e,t,n)=>{"use strict";n.d(t,{Fe:()=>o,e2:()=>s,lF:()=>r});var i=n(95155),a=n(12115);let r="/images/ssnim-loading.gif";function o(e){let[t,n]=(0,a.useState)(e);return(0,a.useEffect)(()=>{e&&n(!0)},[e]),{show:t,busy:e,markDone:(0,a.useCallback)(()=>n(!1),[])}}function s(e){let{loading:t=!0,onComplete:n,label:o,className:s="",width:l="max-w-[112px]"}=e,c=(0,a.useRef)(Date.now()),u=(0,a.useRef)(!1),d=(0,a.useRef)(n);return d.current=n,(0,a.useEffect)(()=>{u.current=!1,c.current=Date.now()},[]),(0,a.useEffect)(()=>{if(t)return;let e=Math.max(0,650-(Date.now()-c.current)),n=window.setTimeout(()=>{var e;u.current||(u.current=!0,null===(e=d.current)||void 0===e||e.call(d))},e);return()=>window.clearTimeout(n)},[t]),(0,i.jsxs)("div",{className:"flex w-full flex-col items-center gap-3 ".concat(s),role:"status","aria-live":"polite","aria-busy":t,"aria-label":o||(t?"Chargement":void 0),children:[(0,i.jsx)("img",{src:r,alt:"",draggable:!1,className:"h-auto w-full ".concat(l," select-none")}),o?(0,i.jsx)("p",{className:"text-center text-[13px] font-medium text-zinc-500 dark:text-[#949586]",children:o}):null]})}}
1,71633:(e,t,n)=>{"use strict";n.d(t,{ToastContainer:()=>c,o:()=>l});var i=n(95155),a=n(12115),r=n(47650);function o(e){let{message:t,isOpen:n,onClose:o,actionText:s,onAction:l}=e,[c,u]=(0,a.useState)(!1),[d,m]=(0,a.useState)(!1);return((0,a.useEffect)(()=>{if(n&&t){m(!0);let e=setTimeout(()=>u(!0),10),t=setTimeout(()=>{u(!1),setTimeout(()=>{m(!1),o()},200)},3e3);return()=>{clearTimeout(e),clearTimeout(t)}}{u(!1);let e=setTimeout(()=>{m(!1)},200);return()=>clearTimeout(e)}},[n,t,o]),d)?(0,r.createPortal)((0,i.jsx)("div",{className:"fixed top-20 left-1/2 -translate-x-1/2 z-[10000] transition-all duration-200 ".concat(c?"translate-y-0 opacity-100":"-translate-y-4 opacity-0"),children:(0,i.jsxs)("div",{className:"bg-[#1a1a1a] text-white px-5 py-3 rounded-xl shadow-[0_4px_16px_rgba(0,0,0,0.15)] flex items-center gap-4 text-[14px] font-medium border border-white/10",children:[(0,i.jsx)("span",{children:t}),s&&l&&(0,i.jsx)("button",{onClick:l,className:"text-white/80 hover:text-white underline underline-offset-2 transition-colors ml-2 font-semibold",children:s})]})}),document.body):null}class s{subscribe(e){return this.listeners.push(e),()=>{this.listeners=this.listeners.filter(t=>t!==e)}}show(e,t,n){let i={id:++this.currentId,message:e,actionText:t,onAction:n};this.listeners.forEach(e=>e(i))}constructor(){this.listeners=[],this.currentId=0}}let l=new s;function c(){let[e,t]=(0,a.useState)(null);return(0,a.useEffect)(()=>l.subscribe(e=>{t(e)}),[]),(0,i.jsx)(o,{isOpen:!!e,message:(null==e?void 0:e.message)||"",actionText:null==e?void 0:e.actionText,onAction:null==e?void 0:e.onAction,onClose:()=>t(null)})}},97625:(e,t,n)=>{"use strict";n.d(t,{default:()=>r});var i=n(12115),a=n(28250);function r(){return(0,i.useEffect)(()=>{let e=e=>{(0,a.oz)(e.reason)&&(e.preventDefault(),(0,a.TD)(e.reason))},t=e=>{let t=(0,a.oz)(e.error)||(0,a.oz)(e.message),n="string"==typeof e.filename&&e.filename.includes("/_next/static/chunks/")&&(""===e.message||e.message.toLowerCase().includes("error"));(t||n)&&(0,a.TD)(e.error||e.message||Error("ChunkLoadError"))};return window.addEventListener("unhandledrejection",e),window.addEventListener("error",t),()=>{window.removeEventListener("unhandledrejection",e),window.removeEventListener("error",t)}},[]),null}},98117:(e,t,n)=>{"use strict";n.r(t),n.d(t,{initMetaAppEvents:()=>a,logMetaStorePurchase:()=>r});var i=n(6267);async function a(){if(i.Capacitor.isNativePlatform())try{let{FacebookAnalytics:e}=await n.e(37542).then(n.bind(n,37542));e.enableAdvertiserTracking().catch(()=>{}),await e.initAppEvents()}catch(e){console.warn("[meta] initAppEvents failed",e)}}async function r(e){if(!i.Capacitor.isNativePlatform()||!(null==e?void 0:e.product))return!1;let t=Number(e.product.price),a=(e.product.currencyCode||"").trim().toUpperCase();if(!(t>0)||!a)return console.warn("[meta] logPurchase skip: invalid amount/currency",{price:e.product.price,currencyCode:e.product.currencyCode}),!1;let r=e.product.identifier||e.identifier||"";try{let{FacebookAnalytics:e}=await n.e(37542).then(n.bind(n,37542));return await e.logPurchase({amount:t,currency:a,params:{fb_content_id:r,fb_content_type:"product"}}),await new Promise(e=>setTimeout(e,800)),console.log("[meta] logPurchase ok",{amount:t,currency:a,contentId:r}),!0}catch(e){return console.warn("[meta] logPurchase failed",e),!1}}},98798:(e,t,n)=>{"use strict";n.d(t,{default:()=>m});var i=n(12115),a=n(6267),r=n(6705),o=n(46414),s=n(56665),l=n(35308),c=n(98117);let u=!1,d=null;function m(){return(0,i.useEffect)(()=>{let e;if(a.Capacitor.isNativePlatform())return(async()=>{try{if(await r.Purchases.setLogLevel({level:r.E$.INFO}),u)(0,l.r)(!0);else{let e=(0,s.tc)();if(!e){console.error("[RC] missing public API key for platform",a.Capacitor.getPlatform(),"(set NEXT_PUBLIC_REVENUECAT_IOS_KEY / NEXT_PUBLIC_REVENUECAT_ANDROID_KEY)"),(0,l.r)(!1);return}await r.Purchases.configure({apiKey:e}),u=!0,(0,l.r)(!0),(0,c.initMetaAppEvents)()}let t=(0,o.createClient)();try{let{data:{session:e}}=await t.auth.getSession();(null==e?void 0:e.user)&&d!==e.user.id&&(await r.Purchases.logIn({appUserID:e.user.id}),d=e.user.id)}catch(e){console.error("[RC] initial logIn failed",e)}let{data:{subscription:n}}=t.auth.onAuthStateChange((e,t)=>{(async()=>{try{"SIGNED_IN"===e&&(null==t?void 0:t.user)?d!==t.user.id&&(await r.Purchases.logIn({appUserID:t.user.id}),d=t.user.id):"SIGNED_OUT"===e&&(await r.Purchases.logOut(),d=null)}catch(e){console.error("[RC] auth state change handling failed",e)}})()});e=()=>n.unsubscribe();try{let{appUserID:e}=await r.Purchases.getAppUserID(),{isAnonymous:t}
1=await r.Purchases.isAnonymous(),{customerInfo:n}=await r.Purchases.getCustomerInfo();console.log("[RC] configured, appUserID:",e,"isAnonymous:",t,"entitlements actifs:",Object.keys(n.entitlements.active))}catch(e){console.error("[RC] validation log failed",e)}}catch(e){console.error("[RC] configuration failed",e),(0,l.r)(!1)}})(),()=>{e&&e()}},[]),null}},99737:(e,t,n)=>{"use strict";n.d(t,{default:()=>s});var i=n(95155),a=n(12115),r=n(68143);function o(e){let{visible:t}=e;return(0,i.jsx)("div",{className:"native-splash".concat(t?"":" native-splash--out"),"aria-hidden":"true",children:(0,i.jsx)("img",{src:r.lF,alt:"",className:"native-splash__gif",width:320,height:240,decoding:"sync",fetchPriority:"high",draggable:!1})})}function s(){let[e,t]=(0,a.useState)(!1),[r,s]=(0,a.useState)(!1),[l,c]=(0,a.useState)(!0),u=(0,a.useRef)(null);(0,a.useEffect)(()=>{let e,i,a,r,o,l,d=("localhost"===window.location.hostname||"127.0.0.1"===window.location.hostname)&&"1"===new URLSearchParams(window.location.search).get("loadingSplash");if(!("undefined"!=typeof navigator&&navigator.userAgent.includes("SeonsaengnimApp"))&&!d)return;let m=!1;s(!0),u.current=Date.now();let f=()=>{if(m||null===u.current)return;let e=Math.max(0,(d?2800:900)-(Date.now()-u.current));window.setTimeout(()=>{m||(c(!1),r=window.setTimeout(()=>{m||s(!1)},320))},e)};return"complete"===document.readyState?f():(window.addEventListener("load",f,{once:!0}),l=window.setTimeout(f,1500)),(async()=>{let{Capacitor:r}=await Promise.resolve().then(n.bind(n,6267));if(!r.isNativePlatform()||m)return;try{let{CapacitorUpdater:e}=await n.e(95089).then(n.bind(n,95089));await e.notifyAppReady()}catch(e){}let o=r.getPlatform(),s=document.documentElement;s.classList.add("native-app"),s.classList.add("ios"===o?"native-ios":"native-android");try{let{SplashScreen:e}=await n.e(57296).then(n.bind(n,57296));await e.hide()}catch(e){}if("android"===o)try{var l;let{registerPlugin:e}=await Promise.resolve().then(n.bind(n,6267)),t=e("EdgeInsets"),a=async()=>{try{let e=await t.getInsets();if(m)return;let n=document.body.style;n.setProperty("--safe-area-inset-top","".concat(e.top,"px")),n.setProperty("--safe-area-inset-bottom","".concat(e.bottom,"px")),n.setProperty("--safe-area-inset-left","".concat(e.left,"px")),n.setProperty("--safe-area-inset-right","".concat(e.right,"px"))}catch(e){}};await a();let r=window.setTimeout(a,600),o=window.setTimeout(a,2e3),s=()=>void a();window.addEventListener("resize",s),null===(l=window.visualViewport)||void 0===l||l.addEventListener("resize",s),i=()=>{var e;window.clearTimeout(r),window.clearTimeout(o),window.removeEventListener("resize",s),null===(e=window.visualViewport)||void 0===e||e.removeEventListener("resize",s)}}catch(e){}try{let{StatusBar:e,Style:t}=await n.e(80060).then(n.bind(n,80060));if("android"===o)try{await e.setOverlaysWebView({overlay:!0})}catch(e){}let i=async()=>{let n=s.classList.contains("dark")||"dark"===s.getAttribute("data-theme");try{await e.setStyle({style:n?t.Dark:t.Light}),"android"===o&&await e.setBackgroundColor({color:n?"#151712":"#f5f5f0"})}catch(e){}};await i(),(a=new MutationObserver(()=>{i()})).observe(s,{attributes:!0,attributeFilter:["class","data-theme"]})}catch(e){}new Image().src="/images/ssnim-loading.gif";try{let{Network:i}=await n.e(12424).then(n.bind(n,12424)),a=await i.getStatus();m||t(!a.connected);let r=await i.addListener("networkStatusChange",e=>{m||t(!e.connected)});e=()=>r.remove()}catch(e){}})(),()=>{m=!0,e&&e(),i&&i(),a&&a.disconnect(),r&&window.clearTimeout(r),o&&window.clearTimeout(o),l&&window.clearTimeout(l),window.removeEventListener("load",f)}},[]);let d="undefined"!=typeof document&&"en"===document.documentElement.lang;return(0,i.jsxs)(i.Fragment,{children:[r?(0,i.jsx)(o,{visible:l}):null,e?(0,i.jsx)("div",{className:"native-offline",role:"alert",children:(0,i.jsxs)("div",{className:"native-offline__card",children:[(0,i.jsx)("div",{className:"native-offline__title",children:d?"No connection":"Pas de connexion"}),(0,i.jsx)("div",{className:"native-offline__text",children:d?"Check your internet connection. Seonsaengnim will resume automatically.":"V\xe9rifie ta connexion internet. Seonsaengnim reprendra automatiquement."})]})}):null]})}}},e=>{var t=t=>e(e.s=t);e.O(0,[12533,16088,41819,58536,8229,6267,99535,6705,32955,58134,32071,29793,28441,63998,77358],()=>t(571)),_N_E=e.O()}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.