#-      !"#$%&'()*+, -./0123456789:;<=>?@AB./0168:;<=>?AB./0/0168:;<=>?AB CDE&Like an MVar, but must always be full FGHIJKLMN CEGHIJKLMN CEGHIJKLMN9OPQRSTUVWXYZ[\]^_`abcdefghijklmnNInvariant: The database does not have any cycles when a Key depends on itself opqrstuvwxyz{|}~ ^_`an{|}~ ^a`__`an{|}~ Drop the first directory from a . Should only be used on  relative paths. # dropDirectory1 "aaa/bbb" == "bbb"  dropDirectory1 "aaa/" == ""  dropDirectory1 "aaa" == ""  dropDirectory1 "" == "" Take the first component of a . Should only be used on  relative paths. # takeDirectory1 "aaa/bbb" == "aaa"  takeDirectory1 "aaa/" == "aaa"  takeDirectory1 "aaa" == "aaa" 43 @Where shall I store the database and journal files (defaults to .) JWhat is the maximum number of rules I should run in parallel (defaults to 1) QWhat is the version of your build system, increment to force everyone to rebuild  1 = normal, 0 = quiet, 2 = loud       !"# !"# !"# $%&$%&$%& '()*+'()*+'()*+,$  !"#$%&()*+,',  $%&# !"()*+',    !"#$%&'()*+,- . / 0 1 2 3 4 56789:;;<=>??@@ABCDEFGHIJJKKLMNOPQRSTTUVVWWXYGZZ[\]^^_`abcdeefghijkllmnopqrrstuvwxyz{|}~[hkf           shake-0.0Development.Shake.FilePathDevelopment.ShakeDevelopment.Shake.TypeHashDevelopment.Shake.ValueDevelopment.Shake.LocksDevelopment.Shake.DatabaseDevelopment.Shake.CoreDevelopment.Shake.FileDevelopment.Shake.DerivedDevelopment.Shake.DirectorydropDirectory1takeDirectory1 normalisetoNativecombineActionRulesRule validStored ShakeOptions shakeFilesshakeParallelism shakeVersionshakeVerbosity shakeOptions defaultRuleruleactionrunShakeapplyapply1traced currentRuleputLoud putNormalputQuiet FilePatterndefaultRuleFileneedwant?>**>*>=*=system_ readFile_ readFileLinesdefaultRuleDirectory doesFileExistgetDirectoryContentsgetDirectoryFilesgetDirectoryDirsshaketypeHash BinaryWitness putWitness getWitnessWitness typeNames witnessIn witnessOutValueKeynewKeynewValuetypeKey typeValuefromKey fromValuewitnessregisterWitnesscurrentWitnessBarrierVarnewVarreadVar modifyVar modifyVar_ newBarrierreleaseBarrier waitBarrierwaitAnyBarrierStatuses fromStatuses WitnessedJournalhandle journalFile Response_executebarriersvaluesResponseBlockExecuteStatusLoadedBuiltBuildingInfovaluetimedependsrealTime executiontracesDatabasestatus timestampjournalfilenameversionTimeMap removeFile_concatResponse toResponserequestfinished openDatabase closeDatabase writeDatabase readDatabase openJournal replayJournal appendJournal closeJournal readFileVer readChunks writeChunkbaseGHC.IOFilePathfilepath-1.2.0.1System.FilePath.Posix makeRelative isAbsolute isRelative makeValidisValid equalFilePathjoinPathsplitDirectories splitPathreplaceDirectory takeDirectorydropTrailingPathSeparatoraddTrailingPathSeparatorhasTrailingPathSeparatorreplaceBaseName takeBaseName takeFileName dropFileNamereplaceFileName splitFileNameisDrivehasDrive dropDrive takeDrive joinDrive splitDrivetakeExtensionsdropExtensionssplitExtensions hasExtension addExtension dropExtension<.>replaceExtension takeExtensionsplitExtension getSearchPathsplitSearchPathisExtSeparator extSeparatorisSearchPathSeparatorsearchPathSeparatorisPathSeparatorpathSeparators pathSeparatorSdatabasepoolstartedstored outputLock verbositystackdiscountactionsrulesARuleruleKey ruleValue ruleStoredregisterWitnesses createStored createExecute runActiondurationputWhenFileTimeFile getFileTimeGetDir_GetDir GetDirDirs GetDirFilespatdirExist_ExistgetDir