# To display the perf.data header info, please use --header/--header-only options. # # # Total Lost Samples: 0 # # Samples: 1K of event 'task-clock:ppp' # Event count (approx.): 192100000 # # Overhead Samples Command Shared Object Symbol # ........ ............ ....... .................... .......................................................................................................................................................................................... # 40.71% 782 osh oils-for-unix [.] MarkSweepHeap::MaybeMarkAndPush(RawObject*) 9.89% 190 osh oils-for-unix [.] MarkSweepHeap::TraceChildren() 6.09% 117 osh oils-for-unix [.] MarkSweepHeap::Allocate(unsigned long, int*, int*) 5.57% 107 osh oils-for-unix [.] MarkSweepHeap::Sweep() 2.50% 48 osh oils-for-unix [.] match::OneToken(types_asdl::lex_mode_e, BigStr*, int) 2.19% 42 osh [kernel.kallsyms] [k] 0xffffffffaaab5b52 1.72% 33 osh [kernel.kallsyms] [k] 0xffffffffaba66297 1.35% 26 osh [kernel.kallsyms] [k] 0xffffffffabaea8c9 1.35% 26 osh oils-for-unix [.] alloc::Arena::NewToken(int, int, int, syntax_asdl::SourceLine*) 1.15% 22 osh oils-for-unix [.] cmd_parse::CommandParser::_GetWord() 0.99% 19 osh oils-for-unix [.] lexer::Lexer::_Read(types_asdl::lex_mode_e) 0.83% 16 osh oils-for-unix [.] word_parse::WordParser::_ReadWord(types_asdl::lex_mode_e) 0.73% 14 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.73% 14 osh oils-for-unix [.] word_parse::WordParser::_GetToken() 0.68% 13 osh libc.so.6 [.] __getdelim 0.62% 12 osh libc.so.6 [.] malloc 0.62% 12 osh oils-for-unix [.] word_parse::WordParser::_MaybeReadWordPart(bool, types_asdl::lex_mode_e, List*) 0.47% 9 osh oils-for-unix [.] cmd_parse::CommandParser::_ScanSimpleCommand() 0.47% 9 osh oils-for-unix [.] lexer::Lexer::Read(types_asdl::lex_mode_e) 0.47% 9 osh oils-for-unix [.] word_::CommandId(syntax_asdl::word_t*) 0.42% 8 osh oils-for-unix [.] lexer::LineLexer::Read(types_asdl::lex_mode_e) 0.42% 8 osh oils-for-unix [.] word_parse::WordParser::ReadWord(types_asdl::lex_mode_e) 0.36% 7 osh oils-for-unix [.] word_::DetectShAssignment(syntax_asdl::CompoundWord*) 0.36% 7 osh oils-for-unix [.] word_parse::WordParser::_ReadCompoundOrRedir3(types_asdl::lex_mode_e, int, bool) 0.31% 6 osh [kernel.kallsyms] [k] 0xffffffffaadc9c5d 0.31% 6 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.31% 6 osh oils-for-unix [.] alloc::Arena::AddLine(BigStr*, int) 0.31% 6 osh oils-for-unix [.] cmd_parse::CommandParser::_ParseAndOr() 0.31% 6 osh oils-for-unix [.] cmd_parse::CommandParser::_ParseCommandTerm() 0.31% 6 osh oils-for-unix [.] executor::PureExecutor::PopProcessSub(runtime_asdl::StatusArray*) 0.26% 5 osh libc.so.6 [.] 0x00000000000a48b0 0.26% 5 osh oils-for-unix [.] List::at(int) 0.26% 5 osh oils-for-unix [.] cmd_parse::CommandParser::ParseAndOr() 0.21% 4 osh [kernel.kallsyms] [k] 0xffffffffabd04104 0.21% 4 osh oils-for-unix [.] BigStr::slice(int, int) 0.21% 4 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.21% 4 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.21% 4 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.21% 4 osh oils-for-unix [.] cmd_parse::CommandParser::ParseSimpleCommand() 0.21% 4 osh oils-for-unix [.] consts::GetKind(unsigned short) 0.16% 3 osh [kernel.kallsyms] [k] 0xffffffffaadc5967 0.16% 3 osh [kernel.kallsyms] [k] 0xffffffffaadd0aab 0.16% 3 osh oils-for-unix [.] BigStr::endswith(BigStr*) 0.16% 3 osh oils-for-unix [.] List::at(int) 0.16% 3 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.16% 3 osh oils-for-unix [.] cmd_parse::CommandParser::ParseCommand() 0.16% 3 osh oils-for-unix [.] cmd_parse::CommandParser::ParseCompoundCommand() 0.16% 3 osh oils-for-unix [.] cmd_parse::CommandParser::ParsePipeline() 0.16% 3 osh oils-for-unix [.] cmd_parse::_SplitSimpleCommandPrefix(List*) 0.16% 3 osh oils-for-unix [.] mylib::CFile::readline() 0.16% 3 osh oils-for-unix [.] reader::FileLineReader::_GetLine() 0.16% 3 osh oils-for-unix [.] syntax_asdl::CompoundWord* Alloc*>(List*&&) 0.16% 3 osh oils-for-unix [.] word_::StaticEval(syntax_asdl::word_t*) [clone .part.0] 0.16% 3 osh oils-for-unix [.] word_parse::WordParser::_ReadLikeDQ(syntax_asdl::Token*, bool, List*) 0.10% 2 osh [kernel.kallsyms] [k] 0xffffffffaaab5bc0 0.10% 2 osh [kernel.kallsyms] [k] 0xffffffffaaab5dc9 0.10% 2 osh [kernel.kallsyms] [k] 0xffffffffaadc9b33 0.10% 2 osh [kernel.kallsyms] [k] 0xffffffffaadc9b58 0.10% 2 osh [kernel.kallsyms] [k] 0xffffffffaadf9e7d 0.10% 2 osh [kernel.kallsyms] [k] 0xffffffffaadfd28f 0.10% 2 osh [kernel.kallsyms] [k] 0xffffffffaadfd465 0.10% 2 osh [kernel.kallsyms] [k] 0xffffffffaae15b89 0.10% 2 osh [kernel.kallsyms] [k] 0xffffffffaae33a57 0.10% 2 osh [kernel.kallsyms] [k] 0xffffffffaae67042 0.10% 2 osh [kernel.kallsyms] [k] 0xffffffffaae69f0f 0.10% 2 osh [kernel.kallsyms] [k] 0xffffffffab1632a1 0.10% 2 osh [kernel.kallsyms] [k] 0xffffffffab1afb88 0.10% 2 osh libc.so.6 [.] cfree 0.10% 2 osh libc.so.6 [.] read 0.10% 2 osh libc.so.6 [.] 0x00000000001a08a1 0.10% 2 osh libc.so.6 [.] 0x00000000001a1040 0.10% 2 osh oils-for-unix [.] BigStr::isupper() 0.10% 2 osh oils-for-unix [.] List::at(int) 0.10% 2 osh oils-for-unix [.] List* NewList(std::initializer_list) 0.10% 2 osh oils-for-unix [.] List* Alloc>() 0.10% 2 osh oils-for-unix [.] List::at(int) 0.10% 2 osh oils-for-unix [.] List* Alloc>() 0.10% 2 osh oils-for-unix [.] List* NewList(std::initializer_list) 0.10% 2 osh oils-for-unix [.] cmd_parse::CommandParser::ParseCaseArm() 0.10% 2 osh oils-for-unix [.] cmd_parse::CommandParser::ParseIf() 0.10% 2 osh oils-for-unix [.] cmd_parse::CommandParser::ParseRedirect() 0.10% 2 osh oils-for-unix [.] cmd_parse::_ReadHereLines(reader::_Reader*, syntax_asdl::Redir*, BigStr*) 0.10% 2 osh oils-for-unix [.] location::LeftTokenForCompoundWord(syntax_asdl::CompoundWord*) 0.10% 2 osh oils-for-unix [.] location::LeftTokenForWordPart(syntax_asdl::word_part_t*) 0.10% 2 osh oils-for-unix [.] reader::_Reader::GetLine() 0.10% 2 osh oils-for-unix [.] word_::_EvalWordPart(syntax_asdl::word_part_t*) 0.10% 2 osh oils-for-unix [.] word_parse::WordParser::LookAheadFuncParens() 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaaab59b0 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaaab5ba7 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaaab5be3 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaaafe505 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaab740f6 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaab74107 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaad486e6 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaad6e433 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaad6e813 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaad7f6ae 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaad7fb96 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaad7fc2a 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaad7fc36 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaad80af0 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaad80bbf 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaada2540 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaada48d7 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadbb4a9 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadbb61b 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadc5021 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadc502a 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadc5935 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadc594e 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadc59aa 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadc9b28 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadc9cc6 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadc9cca 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadcd63f 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadd06cc 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadd093c 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadd0a9d 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadd0c07 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadd0c2d 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadd0e0b 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadd1da5 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadd1e97 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadd1f01 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadd203f 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadd26c6 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadd2703 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadd2708 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadd278d 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaaddbb43 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaaddbbc2 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaade5ef3 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaade63f6 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaade63f9 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaade6498 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaade6561 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaade659f 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaade65da 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaade9324 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadf609a 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadf7088 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadf7176 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadf71de 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadf98bf 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadf9e60 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadf9ea1 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadfafac 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadfbab1 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadfbb54 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadfbbf5 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadfbd8c 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaadfd186 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae0a303 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae0b4ef 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae0b5c8 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae0bf58 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae0f17e 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae137c1 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae1d495 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae33dd2 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae33dea 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae5e895 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae65c15 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae65ec6 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae67049 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae67051 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae67d70 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae67d86 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae68ea3 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae693df 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaae6b72e 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaaf75f62 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaaf75f92 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaaf85b30 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffab063070 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffab066cee 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffab1632ba 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffab26de1e 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffab26de4d 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaba43fc6 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaba46400 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaba4827c 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaba49bbf 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaba4fbbc 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffaba5331f 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffabad6fb9 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffabae3a6c 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffabaeabbb 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffabaeae1c 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffabaeae20 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffabaeaf30 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffabd04109 0.05% 1 osh [kernel.kallsyms] [k] 0xffffffffabd0410b 0.05% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000b28a 0.05% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000b734 0.05% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000b797 0.05% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000c12d 0.05% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000c14e 0.05% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000c154 0.05% 1 osh ld-linux-x86-64.so.2 [.] 0x0000000000011429 0.05% 1 osh ld-linux-x86-64.so.2 [.] 0x0000000000012ec5 0.05% 1 osh ld-linux-x86-64.so.2 [.] 0x0000000000019791 0.05% 1 osh libc.so.6 [.] __underflow 0.05% 1 osh libc.so.6 [.] 0x00000000000355e6 0.05% 1 osh libc.so.6 [.] 0x00000000000a174d 0.05% 1 osh libc.so.6 [.] 0x00000000000a24f3 0.05% 1 osh libc.so.6 [.] 0x00000000000a26a4 0.05% 1 osh libc.so.6 [.] 0x00000000000a26ac 0.05% 1 osh libc.so.6 [.] 0x00000000000a26ad 0.05% 1 osh libc.so.6 [.] 0x00000000000a26be 0.05% 1 osh libc.so.6 [.] 0x00000000000a2735 0.05% 1 osh libc.so.6 [.] 0x00000000000a28ca 0.05% 1 osh libc.so.6 [.] 0x00000000000a2a29 0.05% 1 osh libc.so.6 [.] 0x00000000000a324f 0.05% 1 osh libc.so.6 [.] 0x00000000000a335f 0.05% 1 osh libc.so.6 [.] 0x00000000000a3aa5 0.05% 1 osh libc.so.6 [.] 0x00000000000a3ac6 0.05% 1 osh libc.so.6 [.] 0x00000000000a3b85 0.05% 1 osh libc.so.6 [.] 0x00000000000a3e8f 0.05% 1 osh libc.so.6 [.] 0x00000000000a41af 0.05% 1 osh libc.so.6 [.] 0x00000000000a4461 0.05% 1 osh libc.so.6 [.] 0x00000000000a447a 0.05% 1 osh libc.so.6 [.] 0x00000000000a449d 0.05% 1 osh libc.so.6 [.] 0x00000000001993a4 0.05% 1 osh libc.so.6 [.] 0x00000000001993ac 0.05% 1 osh libc.so.6 [.] 0x00000000001993b0 0.05% 1 osh libc.so.6 [.] 0x00000000001993bd 0.05% 1 osh libc.so.6 [.] 0x0000000000199434 0.05% 1 osh libc.so.6 [.] 0x0000000000199472 0.05% 1 osh libc.so.6 [.] 0x00000000001994a0 0.05% 1 osh libc.so.6 [.] 0x0000000000199ea8 0.05% 1 osh libc.so.6 [.] 0x000000000019d8c1 0.05% 1 osh libc.so.6 [.] 0x00000000001a08b8 0.05% 1 osh libc.so.6 [.] 0x00000000001a08c6 0.05% 1 osh libc.so.6 [.] 0x00000000001a0b8a 0.05% 1 osh libc.so.6 [.] 0x00000000001a110a 0.05% 1 osh libstdc++.so.6.0.30 [.] __dynamic_cast 0.05% 1 osh oils-for-unix [.] BigStr::internal_find(BigStr*, int, int, int) 0.05% 1 osh oils-for-unix [.] BigStr::slice(int) 0.05% 1 osh oils-for-unix [.] Dict::set(BigStr*, int) 0.05% 1 osh oils-for-unix [.] List* Alloc>() 0.05% 1 osh oils-for-unix [.] List*>::at(int) 0.05% 1 osh oils-for-unix [.] List* Alloc>() 0.05% 1 osh oils-for-unix [.] List* Alloc>() 0.05% 1 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.05% 1 osh oils-for-unix [.] List::slice(int, int) 0.05% 1 osh oils-for-unix [.] Tuple2* Alloc, int&, int&>(int&, int&) 0.05% 1 osh oils-for-unix [.] __getdelim@plt 0.05% 1 osh oils-for-unix [.] alloc::Arena* Alloc() 0.05% 1 osh oils-for-unix [.] braces::BraceDetect(syntax_asdl::CompoundWord*) 0.05% 1 osh oils-for-unix [.] braces::BraceDetectAll(List*) 0.05% 1 osh oils-for-unix [.] cmd_parse::CommandParser::_MaybeExpandAliases(List*) 0.05% 1 osh oils-for-unix [.] cmd_parse::CommandParser::_MaybeParseRedirectList(syntax_asdl::command_t*) 0.05% 1 osh oils-for-unix [.] cmd_parse::CommandParser::_ParseCommandLine() 0.05% 1 osh oils-for-unix [.] cmd_parse::CommandParser::_ParseConditionList() 0.05% 1 osh oils-for-unix [.] cmd_parse::_AppendMoreEnv(List*, List*) 0.05% 1 osh oils-for-unix [.] cmd_parse::_MakeSimpleCommand(List*, List*, syntax_asdl::ArgList*, syntax_asdl::LiteralBlock*, List*) 0.05% 1 osh oils-for-unix [.] hash_key(int) 0.05% 1 osh oils-for-unix [.] main_loop::ParseWholeFile(cmd_parse::CommandParser*) 0.05% 1 osh oils-for-unix [.] memset@plt 0.05% 1 osh oils-for-unix [.] parse_lib::_BaseTrail::SetLatestWords(List*, List*) 0.05% 1 osh oils-for-unix [.] std::_Function_handler >::_M_invoke(std::_Any_data const&, int&&, int&&) 0.05% 1 osh oils-for-unix [.] syntax_asdl::SimpleVarSub* Alloc(syntax_asdl::Token*&) 0.05% 1 osh oils-for-unix [.] syntax_asdl::command__Sentence* Alloc(syntax_asdl::command_t*&, syntax_asdl::Token*&) 0.05% 1 osh oils-for-unix [.] syntax_asdl::loc__Word* Alloc(syntax_asdl::CompoundWord*&&) 0.05% 1 osh oils-for-unix [.] to_int(BigStr*, int) 0.05% 1 osh oils-for-unix [.] word_::TildeDetect2(syntax_asdl::CompoundWord*) 0.05% 1 osh oils-for-unix [.] word_::TildeDetectAll(List*) 0.05% 1 osh oils-for-unix [.] word_parse::WordParser::WordParser(parse_lib::ParseContext*, lexer::Lexer*, reader::_Reader*) 0.05% 1 osh oils-for-unix [.] word_parse::WordParser::_ParseVarOf() 0.05% 1 osh oils-for-unix [.] word_parse::WordParser::_ReadBracedVarSub(syntax_asdl::Token*, bool) # # (Cannot load tips.txt file, please install perf!) #