# To display the perf.data header info, please use --header/--header-only options. # # # Total Lost Samples: 0 # # Samples: 1K of event 'cpu-clock:ppp' # Event count (approx.): 124600000 # # Overhead Samples Command Shared Object Symbol # ........ ............ ....... .................... ............................................................................................................................................ # 7.46% 93 osh oils-for-unix [.] MarkSweepHeap::Allocate(unsigned long, int*, int*) 3.29% 41 osh oils-for-unix [.] MarkSweepHeap::Sweep() 3.13% 39 osh oils-for-unix [.] Dict::hash_and_probe(BigStr*) const 3.13% 39 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) 2.49% 31 osh oils-for-unix [.] state::Mem::GetValue(BigStr*, runtime_asdl::scope_e) 2.49% 31 osh oils-for-unix [.] state::Mem::_ResolveNameOrRef(BigStr*, runtime_asdl::scope_e, List*) 2.33% 29 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 2.25% 28 osh oils-for-unix [.] BigStr::hash(unsigned int (*)(char const*, int)) 2.09% 26 osh oils-for-unix [.] state::Mem::_ResolveNameOnly(BigStr*, runtime_asdl::scope_e) 1.93% 24 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_DoShAssignment(syntax_asdl::command__ShAssignment*, runtime_asdl::CommandStatus*) 1.85% 23 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::_EvalWordPart(syntax_asdl::word_part_t*, List*, int) 1.69% 21 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 1.69% 21 osh oils-for-unix [.] split::IfsSplitter::Split(BigStr*, bool) 1.69% 21 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::_EvalWordFrame(List*, List*) 1.61% 20 osh oils-for-unix [.] MarkSweepHeap::TraceChildren() 1.52% 19 osh oils-for-unix [.] sh_expr_eval::ArithEvaluator::Eval(syntax_asdl::arith_expr_t*) 1.28% 16 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) 1.28% 16 osh oils-for-unix [.] state::Mem::SetNamed(value_asdl::LeftName*, value_asdl::value_t*, runtime_asdl::scope_e, int) 1.20% 15 osh oils-for-unix [.] state::Mem::SetValue(value_asdl::sh_lvalue_t*, value_asdl::value_t*, runtime_asdl::scope_e, int) 1.12% 14 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::_EvalSimpleVarSub(syntax_asdl::SimpleVarSub*, List*, bool) 1.12% 14 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::_PartValsToString(List*, syntax_asdl::CompoundWord*, int, List*) 1.04% 13 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::EvalRhsWord(syntax_asdl::rhs_word_t*) 0.96% 12 osh oils-for-unix [.] MarkSweepHeap::MaybeMarkAndPush(RawObject*) 0.96% 12 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::EvalWordSequence2(List*, bool) 0.88% 11 osh oils-for-unix [.] BigStr::replace(BigStr*, BigStr*, int) 0.88% 11 osh oils-for-unix [.] Dict::find_kv_index(BigStr*) const 0.88% 11 osh oils-for-unix [.] word_::FastStrEval(syntax_asdl::CompoundWord*) 0.80% 10 osh oils-for-unix [.] BigStr::startswith(BigStr*) 0.80% 10 osh oils-for-unix [.] braces::BraceExpandWords(List*) 0.80% 10 osh oils-for-unix [.] cmd_eval::CommandEvaluator::RunPendingTraps() 0.80% 10 osh oils-for-unix [.] executor::ShellExecutor::PopProcessSub(runtime_asdl::StatusArray*) 0.80% 10 osh oils-for-unix [.] state::Mem::ScopesForReading() 0.80% 10 osh oils-for-unix [.] trap_osh::TrapState::GetPendingTraps() 0.72% 9 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.72% 9 osh oils-for-unix [.] match::BracketBinary(BigStr*) 0.72% 9 osh oils-for-unix [.] sh_expr_eval::ArithEvaluator::_StringToBigInt(BigStr*, syntax_asdl::loc_t*) 0.72% 9 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::EvalWordToString(syntax_asdl::word_t*, int) 0.64% 8 osh oils-for-unix [.] List*>::at(int) 0.64% 8 osh oils-for-unix [.] sh_expr_eval::ArithEvaluator::EvalToBigInt(syntax_asdl::arith_expr_t*) 0.56% 7 osh libc.so.6 [.] _IO_default_xsputn 0.56% 7 osh oils-for-unix [.] List* Alloc>() 0.56% 7 osh oils-for-unix [.] List*>::reserve(int) [clone .part.0] 0.56% 7 osh oils-for-unix [.] bracket_osh::_StringWordEmitter::ReadWord(types_asdl::lex_mode_e) 0.56% 7 osh oils-for-unix [.] consts::LookupNormalBuiltin(BigStr*) 0.56% 7 osh oils-for-unix [.] dev::Tracer::_ShTraceBegin() 0.56% 7 osh oils-for-unix [.] executor::ShellExecutor::PushProcessSub() 0.56% 7 osh oils-for-unix [.] glob_::GlobUnescape(BigStr*) 0.56% 7 osh oils-for-unix [.] sh_expr_eval::ArithEvaluator::EvalShellLhs(syntax_asdl::sh_lhs_t*, runtime_asdl::scope_e) 0.48% 6 osh oils-for-unix [.] List::append(mylib::BufWriter*) 0.48% 6 osh oils-for-unix [.] bracket_osh::Test::Run(runtime_asdl::cmd_value__Argv*) 0.48% 6 osh oils-for-unix [.] mylib::BufWriter::EnsureMoreSpace(int) 0.48% 6 osh oils-for-unix [.] runtime_asdl::VarSubState* Alloc(bool&&, bool&&, bool&&) 0.48% 6 osh oils-for-unix [.] split::SplitContext::_GetSplitter(BigStr*) 0.48% 6 osh oils-for-unix [.] value_asdl::value__Int* Alloc(long&) 0.48% 6 osh oils-for-unix [.] word_eval::_ValueToPartValue(value_asdl::value_t*, bool, syntax_asdl::word_part_t*) 0.40% 5 osh libc.so.6 [.] malloc 0.40% 5 osh libc.so.6 [.] 0x0000000000199de2 0.40% 5 osh oils-for-unix [.] BigStr::join(List*) 0.40% 5 osh oils-for-unix [.] List::at(int) 0.40% 5 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.40% 5 osh oils-for-unix [.] hash_key(BigStr*) 0.40% 5 osh oils-for-unix [.] mops::FromStr(BigStr*, int) 0.40% 5 osh oils-for-unix [.] mylib::split_once(BigStr*, BigStr*) 0.40% 5 osh oils-for-unix [.] sh_expr_eval::ArithEvaluator::_ValToIntOrError(value_asdl::value_t*, syntax_asdl::arith_expr_t*) 0.40% 5 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::_EvalWordToParts(syntax_asdl::CompoundWord*, List*, int) 0.32% 4 osh [kernel.kallsyms] [k] 0xffffffff92eae793 0.32% 4 osh [kernel.kallsyms] [k] 0xffffffff93deb4c9 0.32% 4 osh libc.so.6 [.] _IO_fflush 0.32% 4 osh libc.so.6 [.] strtoimax 0.32% 4 osh libc.so.6 [.] 0x0000000000047561 0.32% 4 osh oils-for-unix [.] Dict::at(BigStr*) const 0.32% 4 osh oils-for-unix [.] Dict::hash_and_probe(BigStr*) const 0.32% 4 osh oils-for-unix [.] List*>::at(int) 0.32% 4 osh oils-for-unix [.] List::append(executor::_ProcessSubFrame*) 0.32% 4 osh oils-for-unix [.] List::pop() 0.32% 4 osh oils-for-unix [.] List::at(int) 0.32% 4 osh oils-for-unix [.] List* Alloc>() 0.32% 4 osh oils-for-unix [.] MarkSweepHeap::MaybeCollect() 0.32% 4 osh oils-for-unix [.] StringToInt64(char const*, int, int, long*) 0.32% 4 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_DoSimple(syntax_asdl::command__Simple*, runtime_asdl::CommandStatus*) 0.32% 4 osh oils-for-unix [.] consts::IfsEdge(int, int) 0.32% 4 osh oils-for-unix [.] keys_equal(BigStr*, BigStr*) 0.32% 4 osh oils-for-unix [.] lexer::LazyStr(syntax_asdl::Token*) 0.32% 4 osh oils-for-unix [.] match::BracketUnary(BigStr*) 0.32% 4 osh oils-for-unix [.] runtime_asdl::Piece* Alloc(BigStr*&, bool&, bool&&) 0.32% 4 osh oils-for-unix [.] sh_expr_eval::BoolEvaluator::EvalB(syntax_asdl::bool_expr_t*) 0.32% 4 osh oils-for-unix [.] sh_expr_eval::BoolEvaluator::_EvalCompoundWord(syntax_asdl::word_t*, int) 0.32% 4 osh oils-for-unix [.] value_asdl::value__Str* Alloc(BigStr*&&) 0.24% 3 osh libc.so.6 [.] cfree 0.24% 3 osh libc.so.6 [.] 0x00000000000476be 0.24% 3 osh libc.so.6 [.] 0x0000000000199d83 0.24% 3 osh oils-for-unix [.] Dict::find_kv_index(BigStr*) const 0.24% 3 osh oils-for-unix [.] List*>::append(Tuple2*) 0.24% 3 osh oils-for-unix [.] List* Alloc>() 0.24% 3 osh oils-for-unix [.] List::append(runtime_asdl::StatusArray*) 0.24% 3 osh oils-for-unix [.] List* Alloc>() 0.24% 3 osh oils-for-unix [.] List::at(int) 0.24% 3 osh oils-for-unix [.] bracket_osh::_ThreeArgs(bracket_osh::_StringWordEmitter*) 0.24% 3 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_MaybeRunDebugTrap() 0.24% 3 osh oils-for-unix [.] executor::ShellExecutor::RunBuiltin(int, runtime_asdl::cmd_value__Argv*) 0.24% 3 osh oils-for-unix [.] executor::ShellExecutor::RunSimpleCommand(runtime_asdl::cmd_value__Argv*, runtime_asdl::CommandStatus*, int) 0.24% 3 osh oils-for-unix [.] hash_key(int) 0.24% 3 osh oils-for-unix [.] mylib::BufWriter::getvalue() 0.24% 3 osh oils-for-unix [.] runtime_asdl::Piece* Alloc(BigStr*&&, bool&, bool&&) 0.24% 3 osh oils-for-unix [.] split::_SpansToParts(BigStr*, List*>*) 0.24% 3 osh oils-for-unix [.] ui::ctx_Location::~ctx_Location() 0.24% 3 osh oils-for-unix [.] word_eval::_MakeWordFrames(List*) 0.16% 2 osh libc.so.6 [.] 0x0000000000047594 0.16% 2 osh libc.so.6 [.] 0x0000000000047625 0.16% 2 osh libc.so.6 [.] 0x00000000000477e7 0.16% 2 osh libc.so.6 [.] 0x0000000000075247 0.16% 2 osh libc.so.6 [.] 0x0000000000075ca9 0.16% 2 osh libc.so.6 [.] 0x000000000008e6b3 0.16% 2 osh libc.so.6 [.] 0x000000000008f9fb 0.16% 2 osh libc.so.6 [.] 0x0000000000199a80 0.16% 2 osh libc.so.6 [.] 0x0000000000199d63 0.16% 2 osh libc.so.6 [.] 0x0000000000199d79 0.16% 2 osh libc.so.6 [.] 0x000000000019d42d 0.16% 2 osh libc.so.6 [.] 0x000000000019d43c 0.16% 2 osh libc.so.6 [.] 0x000000000019d442 0.16% 2 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.16% 2 osh oils-for-unix [.] Tuple2* Alloc, runtime_asdl::span_e, int&>(runtime_asdl::span_e&&, int&) 0.16% 2 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_StrictErrExitList(List*) 0.16% 2 osh oils-for-unix [.] consts::BoolArgType(unsigned short) 0.16% 2 osh oils-for-unix [.] consts::LookupAssignBuiltin(BigStr*) 0.16% 2 osh oils-for-unix [.] dev::Tracer::OnBuiltin(int, List*) 0.16% 2 osh oils-for-unix [.] dev::Tracer::OnShAssignment(value_asdl::sh_lvalue_t*, syntax_asdl::assign_op_e, value_asdl::value_t*, int, runtime_asdl::scope_e) 0.16% 2 osh oils-for-unix [.] mops::ToStr(long) 0.16% 2 osh oils-for-unix [.] state::Mem::SetTokenForLine(syntax_asdl::Token*) 0.16% 2 osh oils-for-unix [.] state::MutableOpts::Get(int) 0.16% 2 osh oils-for-unix [.] syntax_asdl::loc__Arith* Alloc(syntax_asdl::arith_expr_t*&) 0.16% 2 osh oils-for-unix [.] trap_osh::TrapState::GetHook(BigStr*) 0.16% 2 osh oils-for-unix [.] word_eval::_DetectMetaBuiltinStr(BigStr*) 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff92e038d5 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff92ec6560 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff92f03144 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff92fc5dcd 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9300868e 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff930086d1 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff931275ff 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9314a310 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9314ec2a 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9315e297 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9315f845 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff93198ceb 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff931a2654 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff931a2ae7 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff931a62b2 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff931b41a7 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff931d6628 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff93213dd4 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9323aa33 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff93282f1c 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff93283360 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff932ba7bb 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff93332117 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff933aae59 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff933ab728 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff933acf31 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9349732a 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9349732e 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff93564a83 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9356a20f 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9361ed68 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff93d4a9b0 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff93d4ddf6 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff93d657aa 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff93d65b68 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff93d696c7 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff93de5f00 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff93f04109 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000b37e 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000b4be 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000c12d 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000c14e 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000c154 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000d9b2 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x00000000000114dc 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x0000000000018426 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x0000000000027266 0.08% 1 osh libc.so.6 [.] _IO_do_write 0.08% 1 osh libc.so.6 [.] __snprintf_chk 0.08% 1 osh libc.so.6 [.] 0x0000000000047552 0.08% 1 osh libc.so.6 [.] 0x00000000000475ed 0.08% 1 osh libc.so.6 [.] 0x0000000000047618 0.08% 1 osh libc.so.6 [.] 0x000000000004763d 0.08% 1 osh libc.so.6 [.] 0x0000000000047640 0.08% 1 osh libc.so.6 [.] 0x0000000000047654 0.08% 1 osh libc.so.6 [.] 0x000000000004765d 0.08% 1 osh libc.so.6 [.] 0x0000000000047665 0.08% 1 osh libc.so.6 [.] 0x000000000004766c 0.08% 1 osh libc.so.6 [.] 0x000000000004766e 0.08% 1 osh libc.so.6 [.] 0x0000000000047691 0.08% 1 osh libc.so.6 [.] 0x0000000000047693 0.08% 1 osh libc.so.6 [.] 0x00000000000477cf 0.08% 1 osh libc.so.6 [.] 0x00000000000477e0 0.08% 1 osh libc.so.6 [.] 0x000000000005a2eb 0.08% 1 osh libc.so.6 [.] 0x000000000005a2ef 0.08% 1 osh libc.so.6 [.] 0x000000000007516b 0.08% 1 osh libc.so.6 [.] 0x000000000007523f 0.08% 1 osh libc.so.6 [.] 0x0000000000075a0d 0.08% 1 osh libc.so.6 [.] 0x0000000000075a11 0.08% 1 osh libc.so.6 [.] 0x0000000000075ae2 0.08% 1 osh libc.so.6 [.] 0x0000000000075c0b 0.08% 1 osh libc.so.6 [.] 0x0000000000075f8e 0.08% 1 osh libc.so.6 [.] 0x0000000000075fca 0.08% 1 osh libc.so.6 [.] 0x0000000000076010 0.08% 1 osh libc.so.6 [.] 0x00000000000883f0 0.08% 1 osh libc.so.6 [.] 0x0000000000088402 0.08% 1 osh libc.so.6 [.] 0x0000000000088454 0.08% 1 osh libc.so.6 [.] 0x000000000008e5ea 0.08% 1 osh libc.so.6 [.] 0x000000000008e6b8 0.08% 1 osh libc.so.6 [.] 0x000000000008fa43 0.08% 1 osh libc.so.6 [.] 0x00000000000a2a1d 0.08% 1 osh libc.so.6 [.] 0x00000000000a3b0f 0.08% 1 osh libc.so.6 [.] 0x00000000001992c0 0.08% 1 osh libc.so.6 [.] 0x00000000001992e4 0.08% 1 osh libc.so.6 [.] 0x0000000000199324 0.08% 1 osh libc.so.6 [.] 0x0000000000199a88 0.08% 1 osh libc.so.6 [.] 0x0000000000199b64 0.08% 1 osh libc.so.6 [.] 0x0000000000199b6c 0.08% 1 osh libc.so.6 [.] 0x0000000000199d7d 0.08% 1 osh libc.so.6 [.] 0x0000000000199da3 0.08% 1 osh libc.so.6 [.] 0x0000000000199dd1 0.08% 1 osh libc.so.6 [.] 0x0000000000199dd7 0.08% 1 osh libc.so.6 [.] 0x000000000019d445 0.08% 1 osh libc.so.6 [.] 0x000000000019fd5a 0.08% 1 osh libc.so.6 [.] 0x00000000001a07f8 0.08% 1 osh libc.so.6 [.] 0x00000000001a0802 0.08% 1 osh libc.so.6 [.] 0x00000000001a0f84 0.08% 1 osh libc.so.6 [.] 0x00000000001a0fa4 0.08% 1 osh libc.so.6 [.] 0x00000000001a100e 0.08% 1 osh oils-for-unix [.] BigStr::slice(int, int) 0.08% 1 osh oils-for-unix [.] Dict::find_kv_index(BigStr*) const 0.08% 1 osh oils-for-unix [.] Dict::find_kv_index(BigStr*) const 0.08% 1 osh oils-for-unix [.] Dict::set(int, int) 0.08% 1 osh oils-for-unix [.] Dict::at(int) const 0.08% 1 osh oils-for-unix [.] Dict::hash_and_probe(int) const 0.08% 1 osh oils-for-unix [.] List* Alloc>() 0.08% 1 osh oils-for-unix [.] List::at(int) 0.08% 1 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.08% 1 osh oils-for-unix [.] List* Alloc>() 0.08% 1 osh oils-for-unix [.] List::extend(List*) 0.08% 1 osh oils-for-unix [.] List::pop() [clone .isra.0] 0.08% 1 osh oils-for-unix [.] List::append(syntax_asdl::loc_t*) 0.08% 1 osh oils-for-unix [.] MarkSweepHeap::Collect() 0.08% 1 osh oils-for-unix [.] __errno_location@plt 0.08% 1 osh oils-for-unix [.] args::_Attributes::Set(BigStr*, value_asdl::value_t*) 0.08% 1 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_CheckStatus(int, runtime_asdl::CommandStatus*, syntax_asdl::command_t*, syntax_asdl::loc_t*) 0.08% 1 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_EvalCondition(syntax_asdl::condition_t*, syntax_asdl::Token*) 0.08% 1 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_ExecuteList(List*) 0.08% 1 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_MaybeRunErrTrap() 0.08% 1 osh oils-for-unix [.] hay_ysh::HayState::Resolve(BigStr*) 0.08% 1 osh oils-for-unix [.] malloc@plt 0.08% 1 osh oils-for-unix [.] mylib::BufWriter::write(BigStr*) 0.08% 1 osh oils-for-unix [.] mylib::JoinBytes(List*) 0.08% 1 osh oils-for-unix [.] runtime_asdl::Cell* Alloc(bool&&, bool&&, bool&&, value_asdl::value_t*&) 0.08% 1 osh oils-for-unix [.] state::MutableOpts::Push(int, bool) 0.08% 1 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::_EmptyStrOrError(value_asdl::value_t*, syntax_asdl::Token*) 0.08% 1 osh oils-for-unix [.] word_eval::_BackslashEscape(BigStr*) # # (Cannot load tips.txt file, please install perf!) #