isundil 3 years ago
parent
commit
4a210f0e51
2 changed files with 347 additions and 0 deletions
  1. 301 0
      d3/input
  2. 46 0
      d3/main.js

+ 301 - 0
d3/input

@@ -0,0 +1,301 @@
+FqdWDFppHWhmwwzdjvjTRTznjdMv
+ZBJrDVfQcfSRMLjZnjjM
+cBffPfbrbQcgQJggfVQJBPbCwlPtWFDWHFHhpmmGlGmlqmDG
+PNbMLgmPgRDgRtMPDdmdbmdmQrTBVCZnVnpCnNHHVZBNVZHc
+ljvvqhlvshhnrcpBZqpTcr
+zGhWzFTJvsFttddWbMRdmP
+hhGdDhfdDhmdnHwtzzRtdzbzQQQg
+WTTZJLsvLRJCcWJWScWWLtzjwBzBttbBzSwVQjQBtt
+vLJcLLTRsvsTZPqHGhFHGhhPhfqD
+dJszLvzvCZZsJmszCrrdFmpppMpDMQPMgmDcDgSS
+nRjRbnnjlNhblnjtVtQlWttMFPfMfPgDMpBgSBPgBS
+GWVQTVTnTNhjblQNRsdJLLdTCdzdZLrdrJ
+RnLJBfmJfmNBHlQvvbdQ
+grhgrtqgjJhhggNHqvwWqvbNlbHw
+GVTTsFFjJjVVFVGCFTJDDjhFcZmRMZfnZcncSpMSGcRPZpLp
+bwSNRNSRzSWnPnJRldMBMQmMlsCcPPCP
+FGpDqTTVFFprpjLVQMMGtMclcmHGtBdc
+TjhhgTLpVZhpLDZqrTqZVpBSwJwzNnWNWJvzzNSggwwN
+PHTMsmwrJMwLJvJddvdHwvcWnnWfccqGnhhfGcDqsnGc
+tZVlzQZblBgcSqqRhRmzqf
+CmlgmZlQtFtZNlVZdHLMrMvvCrrvvTTC
+PrDGBBddprmzddrSqccRgSTpqbsMRR
+hvLtfFNvvZNfGGfRgbqsRNlTSSgsbM
+QQQjZHHQjvththFffCHPPzmGrmDzDWrWBw
+GrjGrpjjCsnwhsGGPwlPTPLPVttPqLVl
+HzSHHhczRlLTHqqq
+DbhvFSSzQcZbcFbcQjrJrMJmmZnGJmJnjn
+mvTDsJLwzlWNDDnZngZNdd
+BVtPqFMqtvQFqPqjFBMVtRZGNGhfNcfQdpfgnQgNcNgp
+HBHtPbHCLCzsLJvT
+nVHVFfggbQVmFFfhLpBpBTrfLBCB
+cjjRwJdqtwwwNNjcwRMwnLNTpNsGCnLsLGhBhpNn
+tJqStcRMMMjPwlnvzgQWzmHzlmQl
+nNSRcDHRmHhhDZZZdBDfWJdfrJ
+LGrGVtjCPCbbQQQQLvQpbVQZzsqsBMdBqMvZMMJZqJvdBW
+GCPLlLPPPbTpbCbpLPpVlmrmmrHhHcHnHrHHgTFFnm
+rQbnBrDTQcdpHttt
+qNsNpfjLpNLRNqLMtdVsddcmVzdzVh
+WJfLCfvpWpNLbwwwBwbZFvlZ
+ZslGPhBWBJbNjmbTmSWN
+qtDCZcfZtDjbjCQvmmSj
+ttpRzqtqRLDzpRtDdtPlhhZZGBHGPsGZPhwd
+WjtcNnMtztGFrsNjcgRHvdwHhhjRwlhwlg
+pPSpPBPVqJqBCCPvZdHlVGddwdhvgH
+qpDBpBqPTDLqGLmpTPqbDmWMNrFrrFQnFMNnMNQtMm
+dNwfsjFLQLFNBhTCTPPTBJhhTP
+VmVMgqgRVHtztmgqgzgqRzgMPWCRWTpPCCPWPThDdZPCRZJp
+VMqtMgGHmgVMvmqMMtGMSmbslnQFcsndfjNNsnfscnbddF
+qbWcqrFNCJGSChvLGv
+MnslRSpSVsGgGhDDwLvl
+RjMtfnpmmmjSWSbjrNPN
+rsCsqTVgfCnQFdCznQ
+ZRsBvMvmZMGQQmFnDmQzzQ
+MlGLlBjRGjjWWGRGMlNrLLrssTPNfLcTgrVr
+vpSBBcJnWnSmcqmcChdcgf
+NRNPFDwwDbThqTJffZQHhd
+DzPDNVNbLwPzMLRbNMDjBlvpWjrvrVJjjSsBjr
+dndGpnWdVnBPFFHTBgGH
+qCcCmjqNNJDtcJQjqJqMCQJcFTBRZRwBZBHDPRHBHZDbgBBR
+szJcCtNQqjqCNjjNhdgWfLLdhVWsSVnr
+NjJLgSLGGCLWvqNqNBvwFb
+htmVmtHnlZmDVhtmhblmDMHddBRvwwZQQqWPFvFwdvRWdR
+HnlnHfDsbSTbJzsz
+JvZfsPsPhRfZZnCdtnmjHVRLCH
+TzcczTtgqpgGSTlHHVHCGjCdHdnQQQ
+wDBDSDlWzwwzDqqMtrMrfsfbNvJNJB
+ThfQTdQzQbgdhdNbJFJSlbBLlmqqHBSHCRHsHm
+rWBWWPcvpGGwjPPpvpPGplRSnLLnCrLRsRlLsLmLmR
+cGWPPMtpZDwpMpJQBQQQDBBVNfdQ
+WcWDRLSzFrRFFccPmnssMrGtmMnnGm
+jvvgCCTvNqTtJqsnqwPBmspZMB
+gbVgbvlChJVbCdbtTgjdLWSHWcHSDcQzFzRzDF
+zTrHgrFWRrWvMpPNBVZZHVfN
+hdnlltGLtGSQPVLSNBQN
+CqGGtGwlhlGdtGmbtjtmmvDRFvVFTTRDRbRgFJRbDr
+DTFpQFrZDFBDFrTNFjSWJsWlWjsRJcslsp
+zzPqvdqNzvqzfzMfzqmCzzfJsclWjSSRWglgjclWSmcjlJ
+hfPGwhhvMGCVCdddhQQZQnNrTDQnFrtn
+DDMFjwVTgVmMWgVpdqtlJnpvHHnslw
+fFfZzLSfzBfZBZtqJJHsnSsldlld
+GLcNhRGLZBhmDWTjDTWF
+FbVcQRVRBFfNFfccVfZcWddnGrrHncWtdHsZ
+hwGwjgTSGrssZHHTdn
+LvPvCJgJLwjlSJmSPLvvgGfFBpBVfLLMBQMRRbzMVb
+rfMCJPBMMCrSCSBGZZqRlRLzqhqh
+LDvdNmbgHjHgnmnvnHjgDjqlZhZzszhqzWsRWRRNcRNZ
+dmbvHDdnjDjVmjTmHjJVrfprPCCVtLSMrSpJ
+fdfTBfNVZffMmdfdhGhcJLJrvnlJvrBJ
+FFWFWTzWSWtFgPHgRPWTzggpJcvvSCGSGJnrvhhrrJhlGlGn
+pztFjzRTqWzgHqHWtPtPFgmsNfqbDdwDNVwbmfwbdNsb
+zCHvDWwvCwgpNRCWWHttCwvNPVTqrRrVbbsnbqQPbVsbPrqG
+jBBcmZBGmBSSJdmhBVbnnQrVbVqqVPbhbP
+ZfJBmLjfJZMcdZmJffGMtHtwNCvWwwwztMzg
+rgFgllfdpFlTHfTnfnNPNtPBBVtpzmVVPmmP
+bLSSbGhGWSWmLzztcQPCQC
+jvwhhwRwbwshjGhWwsRRTFflFJFzfddFrHzTrJ
+GSwgSdwfvdfvwgGwBLdJbjjpmFjSTRpqHmRrjptrqt
+NDMVMCsWQVCsQFjFTHjVLqjFrp
+PzWDDCNNlCWfbhZZLfBGwl
+clFLFpFJcVmmWWgWWcWTdwZqCZCZqDqDDSwvwrdHCZ
+GGLfGtbfMNbbLGtzjBNnsMjjZCwDvQZHrHQvDHHHHHHrrNHq
+BthbnfPGMstmJgRPpFRTLL
+VRcdVRPTgVTLVMwmggJBwblJFlmb
+CqDDQsjCCrnnnQQtDcrnGCssJZNvZbvNQmZwmZlbNbwFNwmF
+pstjcqrprsHrfDpnrCnHCzRhSMhMMMRVPLMhddfhzT
+QNDQThccDghdcLLgVsrVLVlMGM
+BbbWpppFFpnfnFbBBPRMTJMRsGlJGlJVLf
+wpnbmvbnSwSnmzHHzwwhQqTctNCcqdNqZvhQjj
+lwCLwLjzLhLHCvwjGCZJbQSHdBQdDdbDtdSQ
+pnzcTVsszpncgFdJpbtDBDttDSJS
+zTPcRrfzgzCCvGRhLLqW
+BgDbztvdDzLZZwMbDDcFHQQJPLWWPJQJHTHF
+jfpNqSrpCqNfNSpjCqSqshNFRQJcJWRRFssgWRHWWFWHQJ
+mrnNNgNfMZwmDtZw
+ZrrFPQsQPRLcvPJvhg
+HpmTjnBmDDDwqtVcHNvJhNVRhgvh
+tTpTGfnttqwnqQJzFdzfSdzSzr
+qVVZqfVNdnBZMNzNnPzfMqbzJvFSjSllvjBwrvrvFrlsrjJs
+LhHtDTmWmWmGDhGLWHghHLCwrwRjjsPJrSjFjFrFClvrww
+mDDgtcLcmtTWTTHhpWLDHhDNMqVnqfdqbZdQpqVbzZVPVb
+WGpVMtGZplgHVWMtZpZFHJjndvFdjddJhnjLHF
+DTrRcSSccfzcCPDCTnvJvjbrrhjNvqjqJL
+zczwPDTmfZZtgLwWlp
+sTtTpvMjpBdmTlhlBTdvsvdncmVcVVVVHzFqVnFfqzHzWV
+GGwQRZNCRgDgsDDbSbSgfGFFrHfVHVVWrHWWcVFF
+RZRPgbNSJDsTsplPLsvd
+GrGNGhpnPFFBfCQCMwrVlwTC
+PPWHmmSvSvdTfJvJVVfCfJ
+RjWDmDdDbjcSHmRRLRRHjdDBsFFbBngBzhqbBhpqBPgFFg
+TfdNjJjmShGcWvQNQqcNFN
+gsRZRMqbDpsHHnZnngMZFPlzQRPWvRtPwtRWzlPv
+brgMMgZCLsDpHGGjfGJVSCqddT
+BdSRjHScGMVjGdcScwLgqQqphNqNDqBBQW
+zzQClvtttrwqrwgCwp
+PQJTzvJJTtJQlvQftmfdmdmGRcSdcMSGdS
+PjPwvwlfGlGCGwppWBsWQVVQnpCQ
+FRSHzMJdrfRnpmpWmp
+TzJTMNNrHLJfTJccvjqwwgGLZLLc
+dCpjsGvcsLvszTrRRlRrDJ
+hPNqqpbhFlrDnPrRnz
+SBbphFNtLvvSfLfc
+zTFnnZzqrjFVnZTrtwMDptbpMwMMBDzb
+JGPCjWGgJjPWGJjNchmbBRpNNDsRsNBbbRBppD
+JWCggWSCmhCmvWHTQrTQfHjdVlQZll
+WWbrmZjbmjpbWSmcWHSbLddwvDggLFDhFrRlFFDw
+qPMVzTPQVfzvVzBQTMtRswwlDdhDghhsfLwdhs
+MMMPQBPJPzCVzvzQVtBJJMzCbmSZNWbSccHHmmZpWSZGZS
+BgmMgjlBMjHPssBnwphtFwhSVVmGGwFS
+rfCqQQrfvCQNRqCnCthFVSGSGtVS
+TrzLNvWfQvrWQZNWsnHsssBBcZBMsDdZ
+CtJCddDHDDPGHCdNVLPBdLDbbGFbwZSsSSZrfFFrGbGlsb
+gvjpnvhRphjmpmSfsTSnPZZrZfrZ
+ghRRRhQgWvmPWtHHtLdMtH
+qNgQgNgNQFVbqVQDMRZMDRBHHJHRFh
+jnTTPzWZCzrWzGRHMrhmBvJBSBBM
+jtCGWnCWPTsTzlctWPtqLbwqZggNwgLbwdVq
+DJgJDgFqCGlhFDGDCWhqCwRfpbcpbsgsVscRpwbwws
+SmLZQmMVvLbsbssNQsQN
+tHZMLZZZMVtmnMHWDHjWlGhFDqCl
+PZRmjlDBWRBWBQMdQQBDPRhfzSSTTnfFnfzFpVFjfSVFgS
+wwHCHLtLwnzNHVTZZV
+rJLtZtLZcCrvJwcbrGLvrcDQDhPldhGdmmPRQhhRBlPM
+zShzVhbqlbpbRNRscBNwCc
+DfmFWnfmnMFDdngdngvJFHgQQNwNsHHCQCwNTTzRcN
+FFFZMWWZZJMmJJMFFpztlPtSllLVphttGZ
+gWhGwmwQGhVwGzBMnDFmdmDDLbCnLn
+tRRHNHHlPHPfPltllNNNRsVPFrTrTbrMMTTDMdLFCrFdPP
+HvRvvHNpNvfqSshwqwVQZWhggwhw
+jDDRDVqNsRMMVFjFbtzpBlpllCBlhSLHSStH
+JJWZZTwWcmZCzQShHhzhhm
+wTrgvTwccvdcfvJvWJrvJTNzNMfGNNGjFRsjNDbfVzDs
+cVWPPThWctcFRdQpzLTzBL
+NNCqwNSrsDqNSSgLgffDCNpBdRvvdpmHRQvBdBqvdzBB
+CgbffsDJsSsNgbgJrlcGhGtjnWcJPncjWL
+RwwTGRjGlwWNgjgfQVNmjj
+HJPdLhLzhbtbdLPLbHHJLdcfBffBgrFQVZgzvgBfvrvvmr
+cmchnhtPqLSJJbdPLntlsDGCTWWDsDRwWWWTwS
+DDDBsPGPbwhDcDcj
+rgfNgCmHMvrrttvtfmNLgrLcQQJTJhcnjTQHcZlwlQHnwj
+wgfLmgFgWdBFzSVR
+RwsbssJjnbJwwsGPPdDLfTDLLLWvWNDGDpWD
+zVtHqzHHVcBQTdpSgvQDSpTS
+HHhFCdrrHchmrhcmwsjZwRwMJlshJJJZ
+BdQgtJMLBqshLfNhbccfFhffNc
+DnVWvvpvWvzrpwRWDbTvbTjTFGlfFSfNSFHGmFGNFmnPlmFS
+wDRDZzVWVjrRVjzrQgQdbgCZLCsCQtbd
+jQSgWjQmFFvHmjHWVVpZbGlbGlfGpbfGGWpf
+zBPtTqzPBcdwrzPJwqCztTNvCGpbGfDnfhZpNGGZGZbG
+MTzPtcrcwzTttdBJwPvFVHjMLFHQMgsSLHvs
+BHtjmmTtmDtHZjMMdNzCzCWcWZsZdsZs
+JRRJVPLwQJrVMPJLVVwChpRRhcdzcNzhzChNdW
+SrFwfGwGSnnGPlBMDtjbllggBn
+rsMDTrgsBNBgMgDBhfhDghrtcRWJttcmGRWLGQQLJRrqRL
+lnVVjvPbwpndvVwlVCjVwtLcsmLLqWWtttlsmGGcmm
+SsjVSCZbgTBTfNZH
+wlddvlldlBzqSmStdqmmngwgDCgrpMpgCngrMCfn
+jVLTHGRHjjvPGcDrfNMbnpngVbpf
+RJRTTRZJLRJQZcGGHLhHvTdmBFWFtWzqdWWQlFzqBFWt
+HDgZHpZSDpBQdRpHHRsDBNNzTvfTQqcqNNTqTqPQvl
+rnMFFMFJwmNgvmfTzcfq
+CWMtjCWMCCLWrWVWJwBbpgtRZSHbddZHBDDb
+hjLWPZJpZptwJghSfgHTMTgRMR
+lCcrblcnlzqDsvbfffTRSMnffjHTgj
+sqscDcblGDDpWPwFGwjLLp
+plQtRqRlGpPPPLZtmtpttRtJjHJvddLTHrLHJJjbdHvrrN
+gcMgTBWBCTczjnvNznnbgH
+FBhSwsWFWDhQZQqTTZllsT
+WsVttWDbvbtRjDVtDbDbJjrjFpCCcBrSCwrrjwww
+nzHqGNMfHqMMwJLLsNBrNcBS
+qgnHflgzHlqlZzhnzssfzbZtmVvmTQvQdTtbbDbTvv
+RtQCBbJDFhJtQtZtCbMnVnPVfGPpJVJWWmwJPG
+NsczRsrdrNrjlcSTGGnwmGmnmVPWwmVT
+SHcljRHzNHHjSHcrgNslcczgZtDgMDBCvQQbhDBCbFBCFCCF
+dRTFRJTRTgJzSSJmzJfN
+jLbQllLvvvrQlLQBrvQmFBGzCFtPSMmSGCtPPF
+QjsvDvqlvrQQvnsLjDWghTwZWcccFdRVpc
+bWnDbMJMFbhZSfngpfpd
+HjcrlvjRjrjlLqTqpwQgpfSQgghZgvgf
+THNTjClLHDCCpWmbtC
+NpBNsnFMLBcPMZccbQGblWRgGZmbRWdW
+CqrJTHCvDfrfwwJHRBvRGvgQmvmlWtlR
+rHzJJJDDwJCqjHTwBLccMpFhshnSSsMz
+bqVqqrDMpLFbLpJJQDMjbpZndwsvwHHswvnvnnZslG
+hgfRghhBWgfzBgZvncvcGvWrnZsG
+fTSSSBtTzhPththRrrCBzVLqMMJQjVJJCLjFjjqjJq
+pQlCJQjVvVGGnjNqFbFP
+wTqtmSmTBhstmstTmWRSdLdfPdNGnhGhdPNnNnrN
+mzTZBwWTcSTsTmZRRmzTsVMMVMQMDJgVqqMgcJlVDl
+vVwCqdCDvMrlDJCqrDMrPdTFWwZNbRcbmZWQbRQZWZcQWm
+fGSfhfjHGBlhSpRmpZFZNbQWjj
+ntGlgSSGgStVqdMCDCJnqd
+TlTRCrhCpmnCRtMRRWbvMBfwBB
+DVdQcsccdczbtQBWvmQBBW
+PgHPNcmcqqTphlHTCGrT
+GVLCBmdLVtlrmqGCqrTCGnjGSfwzNfPzfNNGzSSw
+rMDcWMJsDWRvRcsZPwpJpSzjwwfFjfjJ
+hcsscQQsDcWbHbmLgTbVgTmlrbgq
+VwJndPThQQjdvbrb
+BHlzFFjlZGBBlZBDFSmllfGggLNbNvggtCgNrLQLbfvbfg
+SHSHHlZSGZSDHGzHssGmnjhjphJPPpPwnsJRwPMM
+QFFGpfGtwgtjwvpwpGGjjBHgqzNNllHRlRllNdBRJl
+SWVDWVrDhnWhnqVnWPrhcSldBJPsRMMdPHsRdJHRMMBP
+SWZZcmnnZnSCLZDZftFFCvbfTTqTCTQF
+TvZBTFZpshPggBNN
+bbctWQDjcnwtwDDDllQzLfgsPzqgrsTPLshWfP
+bwRbQRnmDwtbTjmwRJQRQVZHpCpHVdvpMHZZMHZJvd
+CfqzMCGvGqNrCFFNwcMBbnnbbtBbDStw
+sJjsTjvVjLVlLLbtHSnSSwQsDBSH
+dJlvLVgJTRVPWWjjggCzhNGzzGZdhqrdmqrq
+zGSHWGjzpRsWVfsNwZ
+BmPCLzPlJBBvQmLFQrwwrVtfqtqZtsvwfR
+hLLzlmmBPFFLJMlmgDTMgdSGbDgGHbSp
+ppngVjZwNZwwVJjjnnVVJJJpLrsgmsmrbctsLcLmscDggDsL
+vHvRzRPvQPPRqPTlffRTrssbtqmmtbcMcNrDrrtD
+CHWdWzWQzdChNVZjZZwB
+LjVFhwjbFggMdVggTVMNRWRGWqQWtRNWGlQW
+DCzCpJppzJJDScFBzvBGnRWGWrNRQNNWGtNGqB
+vFJSzDSszzzccSZHzDDJmvSJhVwLjfVTPZLfwLgjThLZwhVh
+FMSSNScRlSGzfqWbqqcpWBhpmW
+TrPrnQNnJwtQpmmpmbbL
+vwvCsJZZnnwVnVHsfNjDRgSjRzgRjZjN
+CRhsghlqlvjhPslQdrMndMTWdPnTMJ
+tcDNFDpDSDwDtHrSDwDtFmtpJzWTnzQJpzQGnGWQMWnnTGBd
+ZfFSmSfwcwcScZHtVRhRCqLqCfrVrrfg
+vHPsBzvRvhCzbwbnjHLVmVbW
+ggdlpZNdZdflWTGpVMjgVbqjVmngnVbr
+lNpfllFGpZTtclDZzSWQFCWWzChPzQhS
+ddbJQGsgJcQccCjjTC
+DDflHqNNNjCCPNbT
+LFpLzfzqHzLbLvtndJhs
+mHtbGdwzmtHZrtrHtHGwrmtcFgBFRsBFcdglRsfsdgJBNN
+WvpSVjCCTCSPVDqTVjLqJwWRcWsNlgBcBlfWBRfl
+qDwjvqjVTDDLSPpnjqVnzbhbZbrGMmHzbMHHhh
+cMrrVsdtCdVtwqdHgLjPLFLfcfZZJB
+zGSlGGvpDWWvbSSNTggZPPTTJLZPjPzJ
+bNQDWbjlGSGNnWGblbQDQCmdqhsMtrsVnCrtnwdnCt
+WZSnCCMMdMMMSJMSVZmmFqVjqjVwVjjc
+zvzTlQQQQTNGbmQTjqBjcwwwGgBHGwqB
+mthbtmlPhTrNzNhhPLzlPzWfWPJdRCWspPWSSRsWSnJp
+nmqsjNFqNLcVlPNvRdvPPv
+MrggHrMpbtTpgpDptlQRJJldVRPBsDQvvV
+grgrTzfTGSFGsGSCLc
+hjdjCfQCLdQcWMfDDQhLsLCjqvVqzzZZprBFbzVdvVnqnBbd
+NTglmJGJRnRZVrVvFr
+gPGgPJSTPJtHncnjWDhDMDhP
+ZWWqBqqmgFFDMTTWDMwwcW
+ddGPpJQPprRSCrQzJPJGjHDvssMTDZDwcHhMsHsMHS
+zNRGrCRRCjPpdGQJNglqntnbtgNBZtFqtt
+pslQSspQrqHfgMRl
+tJBTjsTLGMBGMFMg
+tDwnhZdnLdZDwczzcPvsVvVW
+nZnMSDnGtnzmzWZZcMmgMcHwFFVHhHwbHsVrwQhVhF
+dlTqNqfTjdJflCppCQQRHVwFRJrvJsFVQs
+LNTqBLPprpLLzWtSnMZBMDGm
+PBjlPvvcJlJzwqjnnjLnwm
+dMfdpVfVhGVfVpVTtWWbzwngLMLwMRCmgmLMmsww
+SWppdTrprThhrGVztcrllrQJZNlBZlrNZB
+TTrNcjGNWDdDPDpPjDPNrbmFPfQSFmfSMCmCfSmSSR
+sshhqshzBVnzHgwCMbCwcfmRFmRMbm
+gHVVnBzJcBgVhtZZtgJhpGrGNpvDpddvprNGrlTJ
+

+ 46 - 0
d3/main.js

@@ -0,0 +1,46 @@
+const fs = require('fs');
+const readline = require('readline');
+
+function letterToPriority(c) {
+    let charCode = c.charCodeAt(0);
+    const A = 65, Z=90, a=97, z=122;
+    return charCode >= a && charCode <= z ? (charCode-a+1) : (charCode-A+27);
+}
+
+async function main() {
+    let sum =0;
+    let sumPart2 =0;
+    let bufferOf3 = [];
+
+    for await (let line of readline.createInterface({ input: process.stdin })) {
+        if (!line || !line.length)
+            continue;
+        let compartments = [];
+        let tmp = [];
+        bufferOf3.push(line.split("").map(i => letterToPriority(i)));
+        compartments.push(line.slice(0, line.length /2));
+        compartments.push(line.slice(line.length /2));
+        compartments = compartments.map(i=>i.split("").map(i => letterToPriority(i)))
+        let matches = compartments[0].filter(i => {
+            let result = compartments[1].includes(i) && !tmp.includes(i);
+            tmp.push(i);
+            return result;
+        });
+        matches.forEach(i => sum += i);
+        if (bufferOf3.length === 3) {
+            tmp = [];
+            let onlyOne = bufferOf3[0].filter(i => {
+                let result = bufferOf3[1].includes(i) && bufferOf3[2].includes(i) && !tmp.includes(i);
+                tmp.push(i);
+                return result;
+            });
+            sumPart2 += onlyOne[0];
+            bufferOf3 = [];
+        }
+    }
+    console.log(sum);
+    console.log(sumPart2);
+};
+
+(main());
+