diff --git a/common-lisp/day-7/input.txt b/common-lisp/day-7/input.txt new file mode 120000 index 0000000..e9b3f4d --- /dev/null +++ b/common-lisp/day-7/input.txt @@ -0,0 +1 @@ +../../input/day-7.txt \ No newline at end of file diff --git a/common-lisp/day-7/solution.lisp b/common-lisp/day-7/solution.lisp index d7ef614..bc7ca2e 100755 --- a/common-lisp/day-7/solution.lisp +++ b/common-lisp/day-7/solution.lisp @@ -1,5 +1,19 @@ #!/usr/bin/env -S sbcl --script +;; Copyright (C) 2022 +;; This program is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with this program. If not, see . + (require 'asdf) (require 'cl-ppcre) (require 'str) @@ -44,15 +58,24 @@ (depth p (incf depth)) depth)) +(defun size (dir) + (with-accessors ((files files) + (subdirs subdirs)) + dir + (let ((files-sum (apply '+ (mapcar 'cdr files))) + (subdirs-sum (apply '+ (mapcar 'size (mapcar 'cdr subdirs))))) + (+ files-sum subdirs-sum)))) + (defmethod print-object ((obj dir) stream) - (format stream - "~&name: ~a~%parent: ~a~%depth: ~a~%subdirs: ~a~%files: ~a ~&" - (name obj) - (if (> (depth obj) 0) - (name (parent obj))) - (depth obj) - (files obj) - (subdirs obj))) + (format stream "" (name obj))) + +(defun walk (dir &optional visited) + (with-accessors ((subdirs subdirs)) + dir + (push dir visited) + (iter (iter:for (_ . subdir) in subdirs) + (setq visited (walk subdir visited))) + visited)) (defclass fs () ((root @@ -97,7 +120,7 @@ ((str:digit? (nth 0 parts)) (iter:collect (list 'file (nth 1 parts) (parse-integer (nth 0 parts)))))))) -(defun solution-part-1 (events) +(defun run-commands (events) (iter (iter:with fs = (make-instance 'fs)) (iter:for event in events) (let* ((type (car event)) @@ -113,3 +136,17 @@ ((equal type 'file) (touch cwd dir-or-file-name size)))) (iter:finally (return fs))))) + +(defun solution-part-1 (fs) + (apply '+ (remove-if-not (lambda (size) + (<= size 100000)) + (mapcar 'size (walk (root fs)))))) + +(defun run-part-1 (input) + (let* ((events (parse-input input)) + (fs (run-commands events))) + (solution-part-1 fs))) + + +(assert (= (run-part-1 (uiop:read-file-lines "example.txt")) 95437)) +(assert (= (run-part-1 (uiop:read-file-lines "input.txt")) 1084134)) diff --git a/input/day-7.txt b/input/day-7.txt new file mode 100644 index 0000000..b9cccb9 --- /dev/null +++ b/input/day-7.txt @@ -0,0 +1,1101 @@ +$ cd / +$ ls +dir grdd +270251 hjlvwtph.jzv +230026 jzmgcj.gmd +dir nns +dir rrfflbql +$ cd grdd +$ ls +233044 mqbz.fcp +dir nnch +82939 rgtvsqsh.psq +150253 srvg.dth +$ cd nnch +$ ls +4014 mqbz.fcp +$ cd .. +$ cd .. +$ cd nns +$ ls +dir cgbdghtd +dir dnh +dir gjhp +dir jwjm +dir mrpfzd +dir ncvv +dir pfnglqgw +dir tlh +dir vnrhpc +$ cd cgbdghtd +$ ls +276941 jrrcdgz.szm +$ cd .. +$ cd dnh +$ ls +269539 nnch +220637 sjzmpwwb +$ cd .. +$ cd gjhp +$ ls +dir czclvmwc +dir jgtzfsm +$ cd czclvmwc +$ ls +179729 fzqvvlg +67916 pmsdthr.prv +$ cd .. +$ cd jgtzfsm +$ ls +151591 rcggj.nwm +$ cd .. +$ cd .. +$ cd jwjm +$ ls +203559 nnch +$ cd .. +$ cd mrpfzd +$ ls +dir pfnglqgw +204978 qscs.vpq +16184 tbfwpmp.hvl +$ cd pfnglqgw +$ ls +dir wvzw +dir ztl +$ cd wvzw +$ ls +195912 jpn.ndh +143238 nnch.djz +2239 pmsdthr.prv +dir sfqq +$ cd sfqq +$ ls +134913 pthmqd +dir vcdhz +$ cd vcdhz +$ ls +13800 ffhv.jnq +$ cd .. +$ cd .. +$ cd .. +$ cd ztl +$ ls +181007 mqbz.fcp +266517 zbpjz.gbr +$ cd .. +$ cd .. +$ cd .. +$ cd ncvv +$ ls +296494 ccmvjm.bjb +20801 hjr +32494 mqbz.fcp +dir nnch +dir pfnglqgw +dir qpq +dir rftzzmq +dir wgblcl +294511 wrdmgdb.fmh +$ cd nnch +$ ls +dir hjzpfvm +dir ncvv +dir pffr +dir pfnglqgw +dir ssdffgsq +$ cd hjzpfvm +$ ls +304078 mqbz.fcp +dir nnch +146425 nnch.lrw +dir vcfglm +dir zhscvh +$ cd nnch +$ ls +311625 gqmpvplj.vjg +248744 ndfcj +$ cd .. +$ cd vcfglm +$ ls +dir btptvs +dir ghpvzvzp +146354 nnch +$ cd btptvs +$ ls +127157 nqnnwq.rtz +16115 pmsdthr.prv +$ cd .. +$ cd ghpvzvzp +$ ls +dir ncvv +$ cd ncvv +$ ls +236869 pmsdthr.prv +$ cd .. +$ cd .. +$ cd .. +$ cd zhscvh +$ ls +225337 glpz +$ cd .. +$ cd .. +$ cd ncvv +$ ls +dir nljtcssr +dir svjhsvjh +$ cd nljtcssr +$ ls +258085 gqmpvplj.vjg +dir ncvv +dir qmzfgcr +249049 wznr.gbs +dir zvvpqlmq +$ cd ncvv +$ ls +147686 ndfcj.sfr +$ cd .. +$ cd qmzfgcr +$ ls +162245 ndfcj.nlj +$ cd .. +$ cd zvvpqlmq +$ ls +160481 ggnc +$ cd .. +$ cd .. +$ cd svjhsvjh +$ ls +dir bjqbmt +58138 gqmpvplj.vjg +dir nsvf +154398 rrhjs.gch +dir wmvhmlr +$ cd bjqbmt +$ ls +252614 ndfcj.wzg +153886 nnch +214625 zhmdvb +$ cd .. +$ cd nsvf +$ ls +274932 nnch.jfg +$ cd .. +$ cd wmvhmlr +$ ls +137205 nnch +$ cd .. +$ cd .. +$ cd .. +$ cd pffr +$ ls +89895 cwpnzngf.swg +197833 jgv +184768 jjhzddp.fbb +31033 tpngfdsg.brv +$ cd .. +$ cd pfnglqgw +$ ls +228015 ccmvjm.bjb +$ cd .. +$ cd ssdffgsq +$ ls +165887 gqmpvplj.vjg +dir lfq +dir nnch +170828 qjb.mnp +dir ttj +$ cd lfq +$ ls +257411 gqmpvplj.vjg +137375 jzmgcj.gmd +267329 nsbsgd.zvq +$ cd .. +$ cd nnch +$ ls +dir mrfwfq +171186 ndhqthf.jlp +$ cd mrfwfq +$ ls +100447 lsfsh.mvr +$ cd .. +$ cd .. +$ cd ttj +$ ls +49634 ndfcj +dir tqvld +$ cd tqvld +$ ls +dir ndfcj +$ cd ndfcj +$ ls +dir gnzj +80690 pmlnbvj +12843 zbrfmfgj.lzr +$ cd gnzj +$ ls +dir wtpzrpn +$ cd wtpzrpn +$ ls +33840 gqmpvplj.vjg +18122 rrfflbql.vws +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd pfnglqgw +$ ls +289092 fdjfvb +$ cd .. +$ cd qpq +$ ls +126281 ccmvjm.bjb +dir crtzrd +231988 jzmgcj.gmd +203061 mgmmp +272098 mqbz.fcp +dir pfnglqgw +dir qzvcsn +105003 rrfflbql.mcm +$ cd crtzrd +$ ls +162336 fsps +100215 mctd.wsz +67983 mqbz.fcp +281538 mqq.cgz +dir ndfcj +dir rrfflbql +dir wbmtvr +$ cd ndfcj +$ ls +290647 pfjczr.wjc +$ cd .. +$ cd rrfflbql +$ ls +dir mpr +dir ncvv +dir rrfflbql +301818 zml.qfj +$ cd mpr +$ ls +237300 gqmpvplj.vjg +dir pfnglqgw +$ cd pfnglqgw +$ ls +dir brnwdjtg +dir dvqlmzw +248787 pmsdthr.prv +$ cd brnwdjtg +$ ls +256129 ncvv +dir ptztp +$ cd ptztp +$ ls +104775 nnch.wlc +$ cd .. +$ cd .. +$ cd dvqlmzw +$ ls +25407 twgqbrtl +$ cd .. +$ cd .. +$ cd .. +$ cd ncvv +$ ls +dir jvwvsm +62293 jzmgcj.gmd +261836 mqbz.fcp +dir vvvrf +$ cd jvwvsm +$ ls +222978 ccmvjm.bjb +207799 jzmgcj.gmd +dir pcvsvcn +248569 pmsdthr.prv +dir wmd +$ cd pcvsvcn +$ ls +39803 pmsdthr.prv +$ cd .. +$ cd wmd +$ ls +9516 rfstbvj.nhz +$ cd .. +$ cd .. +$ cd vvvrf +$ ls +dir ncvv +dir znwc +$ cd ncvv +$ ls +110667 jzmgcj.gmd +$ cd .. +$ cd znwc +$ ls +182248 ndfcj.crv +$ cd .. +$ cd .. +$ cd .. +$ cd rrfflbql +$ ls +231013 ccmvjm.bjb +dir jlc +dir rrfflbql +79210 ttm.zmw +$ cd jlc +$ ls +28096 ccmvjm.bjb +113156 pmsdthr.prv +$ cd .. +$ cd rrfflbql +$ ls +234558 lbg.bpn +$ cd .. +$ cd .. +$ cd .. +$ cd wbmtvr +$ ls +285832 fqhs +$ cd .. +$ cd .. +$ cd pfnglqgw +$ ls +110965 nnch +195414 pmsdthr.prv +243812 thcpw.jfw +$ cd .. +$ cd qzvcsn +$ ls +279179 gqmpvplj.vjg +191705 mhmlfc.czv +146298 pfnglqgw.ppm +2775 pmsdthr.prv +$ cd .. +$ cd .. +$ cd rftzzmq +$ ls +310418 bddhlvs.rwm +152681 cdznrjl +278447 rrfflbql +dir tmcltf +$ cd tmcltf +$ ls +dir mzr +$ cd mzr +$ ls +24154 ccmvjm.bjb +dir nnch +dir rqsbw +$ cd nnch +$ ls +100523 mqbz.fcp +$ cd .. +$ cd rqsbw +$ ls +64033 czzqg.pcz +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd wgblcl +$ ls +235768 dvdzbgv.vwl +186757 jzmgcj.gmd +$ cd .. +$ cd .. +$ cd pfnglqgw +$ ls +129407 zfphqcsf.cfn +$ cd .. +$ cd tlh +$ ls +89310 jzmgcj.gmd +21486 nwnbbmr.lsq +40023 rdmtp.zsf +$ cd .. +$ cd vnrhpc +$ ls +104731 gqmpvplj.vjg +176015 grn +3646 jzmgcj.gmd +dir ncvv +45414 nfrj.lvq +233767 pfnglqgw.bvf +$ cd ncvv +$ ls +252691 ccmvjm.bjb +dir ncvv +dir vwv +dir wwmwfbf +$ cd ncvv +$ ls +306441 qfhhnmqz.snc +$ cd .. +$ cd vwv +$ ls +56033 rrfflbql +$ cd .. +$ cd wwmwfbf +$ ls +45964 gqmpvplj.vjg +118391 mvwl +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd rrfflbql +$ ls +175540 bcw.sqp +154750 ggncvs.nvn +dir jqzm +dir mgbglnr +192820 ndfcj +dir pfnglqgw +217147 qjng.svz +dir rrfflbql +$ cd jqzm +$ ls +dir ncvv +dir nfcvcddz +242934 rjwlgm +dir wzj +$ cd ncvv +$ ls +298067 pfnglqgw.jdv +$ cd .. +$ cd nfcvcddz +$ ls +261264 gqmpvplj.vjg +19464 mqbz.fcp +121507 ncqhrf +dir ndfcj +58485 ndfcj.vhh +dir rcrzjm +228359 wnftnshq +$ cd ndfcj +$ ls +309008 bwn +$ cd .. +$ cd rcrzjm +$ ls +48178 fgzpwhvt +129342 qns.lnj +$ cd .. +$ cd .. +$ cd wzj +$ ls +91384 gqmpvplj.vjg +dir nnch +dir rzm +$ cd nnch +$ ls +dir sgbwrl +$ cd sgbwrl +$ ls +dir ndfcj +$ cd ndfcj +$ ls +295624 cbmdr +$ cd .. +$ cd .. +$ cd .. +$ cd rzm +$ ls +dir cprj +86746 dfwsj.hqq +dir dljnvq +dir ndfcj +159465 nsglq +202670 pfnglqgw.wbh +29700 rrfflbql.wln +dir vgtftq +$ cd cprj +$ ls +148192 gqmpvplj.vjg +165473 hwp.ltc +$ cd .. +$ cd dljnvq +$ ls +91675 pmsdthr.prv +$ cd .. +$ cd ndfcj +$ ls +83124 rrfflbql.ghs +$ cd .. +$ cd vgtftq +$ ls +186744 mqbz.fcp +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd mgbglnr +$ ls +dir ddtcz +dir ncvv +dir nhpwf +dir rrfflbql +203683 ttbc +dir tvbjgv +dir wvzcq +$ cd ddtcz +$ ls +61553 wfzj +$ cd .. +$ cd ncvv +$ ls +37589 ccmvjm.bjb +87987 dnct +196537 ndfcj.cqg +40448 pmsdthr.prv +$ cd .. +$ cd nhpwf +$ ls +243345 gqmpvplj.vjg +53165 nnch.gfc +dir pfnglqgw +dir vdnnf +$ cd pfnglqgw +$ ls +131411 mhvzv.scz +142119 nnch.gnt +$ cd .. +$ cd vdnnf +$ ls +83904 ccmvjm.bjb +dir czfqdtd +dir dgblftbz +dir jnftbbtm +dir pfbnl +dir pfnglqgw +$ cd czfqdtd +$ ls +dir nnch +$ cd nnch +$ ls +255744 ndfcj.ldv +$ cd .. +$ cd .. +$ cd dgblftbz +$ ls +278883 ncvv.zph +dir pfnglqgw +133315 phns.cmq +130316 sftj +$ cd pfnglqgw +$ ls +174155 vnwtv +$ cd .. +$ cd .. +$ cd jnftbbtm +$ ls +255828 nmln +30605 pfnglqgw +$ cd .. +$ cd pfbnl +$ ls +8603 ndfcj +$ cd .. +$ cd pfnglqgw +$ ls +235364 pmsdthr.prv +$ cd .. +$ cd .. +$ cd .. +$ cd rrfflbql +$ ls +dir gfgbj +$ cd gfgbj +$ ls +215226 jzmgcj.gmd +$ cd .. +$ cd .. +$ cd tvbjgv +$ ls +dir nnch +$ cd nnch +$ ls +dir gmsb +$ cd gmsb +$ ls +dir tlqdvpr +$ cd tlqdvpr +$ ls +130013 hzrq.zrg +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd wvzcq +$ ls +dir ncvv +$ cd ncvv +$ ls +103168 ccmvjm.bjb +18537 ncvv +dir nnch +dir rrfflbql +$ cd nnch +$ ls +20928 ndfcj.lln +$ cd .. +$ cd rrfflbql +$ ls +dir lgfwf +$ cd lgfwf +$ ls +dir fmzqt +dir rrfflbql +$ cd fmzqt +$ ls +301419 gqmpvplj.vjg +$ cd .. +$ cd rrfflbql +$ ls +dir nbvqch +$ cd nbvqch +$ ls +298966 csqvdql.cwr +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd pfnglqgw +$ ls +dir bhmndjpq +203077 fssbcjcm.hvt +dir lfslp +dir ncvv +dir nftdcrl +dir nnch +dir pfnglqgw +dir qfbbnr +dir wttc +$ cd bhmndjpq +$ ls +299744 cmgwwccb.tvv +173562 fpwv +dir hmnbfdtr +dir jqpcs +73425 mqbz.fcp +dir ncvv +dir ndfcj +95707 pmsdthr.prv +dir ptzdv +dir qzhrsnqh +dir sbqg +$ cd hmnbfdtr +$ ls +dir pfnglqgw +dir qmpplbtv +77228 tvpdstcn.zbb +$ cd pfnglqgw +$ ls +dir dwr +dir jmgp +102634 mqbz.fcp +148654 ncvv +257637 ncvv.nzn +286938 rrfflbql +$ cd dwr +$ ls +141669 ndfcj +9012 ptrlq.stq +$ cd .. +$ cd jmgp +$ ls +78473 pfnglqgw +$ cd .. +$ cd .. +$ cd qmpplbtv +$ ls +202948 wjp.rgt +$ cd .. +$ cd .. +$ cd jqpcs +$ ls +290654 fmmcph +8123 zrr.vqm +$ cd .. +$ cd ncvv +$ ls +dir hbrttp +$ cd hbrttp +$ ls +128004 nffzj +$ cd .. +$ cd .. +$ cd ndfcj +$ ls +dir vscwfsl +$ cd vscwfsl +$ ls +251706 snww.dzb +$ cd .. +$ cd .. +$ cd ptzdv +$ ls +113702 nnch +$ cd .. +$ cd qzhrsnqh +$ ls +118758 gqmpvplj.vjg +75504 vcnn.stz +102737 zvv +$ cd .. +$ cd sbqg +$ ls +287663 bhcpslm.wwt +dir bqr +dir czhfphh +39170 fqn +dir gqnts +267314 hlv.ljc +8701 jqpdpg.prz +dir ncvv +211749 psln.pdq +$ cd bqr +$ ls +dir chjfw +dir dgccfvtl +219440 fvfsfz +262276 jzmgcj.gmd +dir ndfcj +294287 pfnglqgw.lwh +163881 rrfflbql +278231 vgjm.rrh +$ cd chjfw +$ ls +134800 hvmvqbz.bqj +$ cd .. +$ cd dgccfvtl +$ ls +155579 lwmqrd.wvp +$ cd .. +$ cd ndfcj +$ ls +144255 ncvv.hrn +236730 ndfcj +dir pfz +$ cd pfz +$ ls +297448 rrfflbql.fdt +$ cd .. +$ cd .. +$ cd .. +$ cd czhfphh +$ ls +dir wmws +$ cd wmws +$ ls +14499 ncvv +$ cd .. +$ cd .. +$ cd gqnts +$ ls +165940 ccmvjm.bjb +dir gjcm +dir hldzdlrl +dir jtnpgg +dir nnch +287896 pmsdthr.prv +$ cd gjcm +$ ls +125716 gqmpvplj.vjg +dir mhjm +197155 msspbg +176407 trtdggnf +$ cd mhjm +$ ls +18749 jzmgcj.gmd +252999 nnch +76392 rrfflbql.mzh +$ cd .. +$ cd .. +$ cd hldzdlrl +$ ls +dir gzpcgj +dir rvvgn +$ cd gzpcgj +$ ls +dir vfz +$ cd vfz +$ ls +183852 pmsdthr.prv +$ cd .. +$ cd .. +$ cd rvvgn +$ ls +143443 ndfcj +$ cd .. +$ cd .. +$ cd jtnpgg +$ ls +dir dhvd +dir hlmgslbs +dir rrfflbql +dir vmqpcm +$ cd dhvd +$ ls +131598 ltr.rph +$ cd .. +$ cd hlmgslbs +$ ls +173562 rrfflbql +$ cd .. +$ cd rrfflbql +$ ls +dir ghvmc +$ cd ghvmc +$ ls +311611 jzmgcj.gmd +$ cd .. +$ cd .. +$ cd vmqpcm +$ ls +192032 mqbz.fcp +$ cd .. +$ cd .. +$ cd nnch +$ ls +112995 ccmvjm.bjb +$ cd .. +$ cd .. +$ cd ncvv +$ ls +106711 dswpw.wgr +46614 jzmgcj.gmd +115391 mqbz.fcp +dir nnch +61970 pmsdthr.prv +dir rrfflbql +$ cd nnch +$ ls +50060 gqjtv.gcs +dir lnmmd +73078 ncvv +49129 tfb +dir vgwpcjrl +dir wnqlrqlf +$ cd lnmmd +$ ls +71780 gqmpvplj.vjg +$ cd .. +$ cd vgwpcjrl +$ ls +8269 zcspgw +$ cd .. +$ cd wnqlrqlf +$ ls +dir wzsvhssb +$ cd wzsvhssb +$ ls +187249 jzmgcj.gmd +$ cd .. +$ cd .. +$ cd .. +$ cd rrfflbql +$ ls +dir bpzmvds +24889 hfnbzcn +dir lqffwfr +274793 nnch.svh +dir rhwm +$ cd bpzmvds +$ ls +298048 tfnqwpj +$ cd .. +$ cd lqffwfr +$ ls +dir mzfpbjtl +$ cd mzfpbjtl +$ ls +217469 jzmgcj.gmd +$ cd .. +$ cd .. +$ cd rhwm +$ ls +54198 gqmpvplj.vjg +dir tlnmwhdt +$ cd tlnmwhdt +$ ls +94380 ndfcj.bvv +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd .. +$ cd lfslp +$ ls +dir cmrwvp +dir cnh +311549 jgmf.fbs +dir jtgrbqvj +166298 pbwsqpcg.whf +151437 pfnglqgw.mcj +dir sqlwn +$ cd cmrwvp +$ ls +217666 pmsdthr.prv +172469 vzw.rqw +$ cd .. +$ cd cnh +$ ls +84011 jfb.mpt +$ cd .. +$ cd jtgrbqvj +$ ls +dir dcfpfq +dir ghhs +dir ntbmh +dir pfnglqgw +$ cd dcfpfq +$ ls +159731 pfnglqgw +$ cd .. +$ cd ghhs +$ ls +104713 blwnhcn +$ cd .. +$ cd ntbmh +$ ls +174007 jzmgcj.gmd +dir pfnglqgw +60549 rrfflbql.scj +dir zwcdggd +$ cd pfnglqgw +$ ls +49844 rfdw.pqh +$ cd .. +$ cd zwcdggd +$ ls +135925 ccmvjm.bjb +1135 gqmpvplj.vjg +120968 hmgpcj.nbb +$ cd .. +$ cd .. +$ cd pfnglqgw +$ ls +184937 ccmvjm.bjb +128621 llsjsmg.vtv +dir lsbf +42834 ndfcj.fwq +85391 trrchml.sgp +$ cd lsbf +$ ls +192593 cfdtsfq.sln +289191 nnch.qzj +$ cd .. +$ cd .. +$ cd .. +$ cd sqlwn +$ ls +77962 ccmvjm.bjb +114288 ndfcj +$ cd .. +$ cd .. +$ cd ncvv +$ ls +dir gsd +$ cd gsd +$ ls +14949 jwcp.lmq +$ cd .. +$ cd .. +$ cd nftdcrl +$ ls +185409 jzmgcj.gmd +$ cd .. +$ cd nnch +$ ls +280827 djftt +dir ljt +dir ncvv +dir ndfcj +33396 qvhndl.pwn +136204 qvlc.cbr +14063 rrfflbql.mrq +130666 vscjncbm.sls +$ cd ljt +$ ls +166514 cgrgbpvw +55138 jzmgcj.gmd +$ cd .. +$ cd ncvv +$ ls +dir fhnw +56003 gqtcgszl.vnf +145831 jzmgcj.gmd +dir mwcbd +dir rclnhb +$ cd fhnw +$ ls +28050 gqmpvplj.vjg +$ cd .. +$ cd mwcbd +$ ls +288468 ncvv +$ cd .. +$ cd rclnhb +$ ls +190004 ndjmjbp +$ cd .. +$ cd .. +$ cd ndfcj +$ ls +287125 gqmpvplj.vjg +dir ndfcj +247237 nnch +138902 pfnglqgw +$ cd ndfcj +$ ls +143400 ssvsvffz +$ cd .. +$ cd .. +$ cd .. +$ cd pfnglqgw +$ ls +dir cwwb +dir dtf +97867 mqbz.fcp +$ cd cwwb +$ ls +dir wtz +$ cd wtz +$ ls +300949 zcq +$ cd .. +$ cd .. +$ cd dtf +$ ls +28018 gqmpvplj.vjg +$ cd .. +$ cd .. +$ cd qfbbnr +$ ls +dir bqmdfjp +89207 gjfzv +176709 pmsdthr.prv +246390 rrfflbql.vdl +$ cd bqmdfjp +$ ls +137504 cwz.jdg +9191 ncvv +$ cd .. +$ cd .. +$ cd wttc +$ ls +279516 ccmvjm.bjb +115478 lwnpwdqt.jpj +$ cd .. +$ cd .. +$ cd rrfflbql +$ ls +162371 nnch.pnm