./strace-static-x86_64 -e \!wait4,clock_nanosleep,nanosleep -s 100 -x -f ./syz-executor955753111 <...> Warning: Permanently added '10.128.1.171' (ED25519) to the list of known hosts. execve("./syz-executor955753111", ["./syz-executor955753111"], 0x7fffb0e757c0 /* 10 vars */) = 0 brk(NULL) = 0x5555647bb000 brk(0x5555647bbe00) = 0x5555647bbe00 arch_prctl(ARCH_SET_FS, 0x5555647bb480) = 0 set_tid_address(0x5555647bb750) = 5097 set_robust_list(0x5555647bb760, 24) = 0 rseq(0x5555647bbda0, 0x20, 0, 0x53053053) = 0 prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0 readlink("/proc/self/exe", "/root/syz-executor955753111", 4096) = 27 getrandom("\x26\xa9\xe0\xa5\x92\x63\x50\xdd", 8, GRND_NONBLOCK) = 8 brk(NULL) = 0x5555647bbe00 brk(0x5555647dce00) = 0x5555647dce00 brk(0x5555647dd000) = 0x5555647dd000 mprotect(0x7ff490c67000, 16384, PROT_READ) = 0 mmap(0x1ffff000, 4096, PROT_NONE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1ffff000 mmap(0x20000000, 16777216, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x20000000 mmap(0x21000000, 4096, PROT_NONE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x21000000 rt_sigaction(SIGRTMIN, {sa_handler=SIG_IGN, sa_mask=[], sa_flags=0}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {sa_handler=SIG_IGN, sa_mask=[], sa_flags=0}, NULL, 8) = 0 rt_sigaction(SIGSEGV, {sa_handler=0x7ff490bc1b50, sa_mask=[], sa_flags=SA_RESTORER|SA_NODEFER|SA_SIGINFO, sa_restorer=0x7ff490bca860}, NULL, 8) = 0 rt_sigaction(SIGBUS, {sa_handler=0x7ff490bc1b50, sa_mask=[], sa_flags=SA_RESTORER|SA_NODEFER|SA_SIGINFO, sa_restorer=0x7ff490bca860}, NULL, 8) = 0 unshare(CLONE_NEWPID) = 0 clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD./strace-static-x86_64: Process 5098 attached , child_tidptr=0x5555647bb750) = 5098 [pid 5098] set_robust_list(0x5555647bb760, 24) = 0 [pid 5098] mount(NULL, "/sys/fs/fuse/connections", "fusectl", 0, NULL) = -1 EBUSY (Device or resource busy) [pid 5098] prctl(PR_SET_PDEATHSIG, SIGKILL) = 0 [pid 5098] setsid() = 1 [pid 5098] prlimit64(0, RLIMIT_AS, {rlim_cur=204800*1024, rlim_max=204800*1024}, NULL) = 0 [pid 5098] prlimit64(0, RLIMIT_MEMLOCK, {rlim_cur=32768*1024, rlim_max=32768*1024}, NULL) = 0 [pid 5098] prlimit64(0, RLIMIT_FSIZE, {rlim_cur=139264*1024, rlim_max=139264*1024}, NULL) = 0 [pid 5098] prlimit64(0, RLIMIT_STACK, {rlim_cur=1024*1024, rlim_max=1024*1024}, NULL) = 0 [pid 5098] prlimit64(0, RLIMIT_CORE, {rlim_cur=131072*1024, rlim_max=131072*1024}, NULL) = 0 [pid 5098] prlimit64(0, RLIMIT_NOFILE, {rlim_cur=256, rlim_max=256}, NULL) = 0 [pid 5098] unshare(CLONE_NEWNS) = 0 [pid 5098] mount(NULL, "/", NULL, MS_REC|MS_PRIVATE, NULL) = 0 [pid 5098] unshare(CLONE_NEWIPC) = 0 [pid 5098] unshare(CLONE_NEWCGROUP) = 0 [pid 5098] unshare(CLONE_NEWUTS) = 0 [pid 5098] unshare(CLONE_SYSVSEM) = 0 [pid 5098] openat(AT_FDCWD, "/proc/sys/kernel/shmmax", O_WRONLY|O_CLOEXEC) = 3 [pid 5098] write(3, "16777216", 8) = 8 [pid 5098] close(3) = 0 [pid 5098] openat(AT_FDCWD, "/proc/sys/kernel/shmall", O_WRONLY|O_CLOEXEC) = 3 [pid 5098] write(3, "536870912", 9) = 9 [pid 5098] close(3) = 0 [pid 5098] openat(AT_FDCWD, "/proc/sys/kernel/shmmni", O_WRONLY|O_CLOEXEC) = 3 [pid 5098] write(3, "1024", 4) = 4 [pid 5098] close(3) = 0 [pid 5098] openat(AT_FDCWD, "/proc/sys/kernel/msgmax", O_WRONLY|O_CLOEXEC) = 3 [pid 5098] write(3, "8192", 4) = 4 [pid 5098] close(3) = 0 [pid 5098] openat(AT_FDCWD, "/proc/sys/kernel/msgmni", O_WRONLY|O_CLOEXEC) = 3 [pid 5098] write(3, "1024", 4) = 4 [pid 5098] close(3) = 0 [pid 5098] openat(AT_FDCWD, "/proc/sys/kernel/msgmnb", O_WRONLY|O_CLOEXEC) = 3 [pid 5098] write(3, "1024", 4) = 4 [pid 5098] close(3) = 0 [pid 5098] openat(AT_FDCWD, "/proc/sys/kernel/sem", O_WRONLY|O_CLOEXEC) = 3 [pid 5098] write(3, "1024 1048576 500 1024", 21) = 21 [pid 5098] close(3) = 0 [pid 5098] getpid() = 1 [pid 5098] capget({version=_LINUX_CAPABILITY_VERSION_3, pid=1}, {effective=1< [pid 5101] set_robust_list(0x5555647bb760, 24 [pid 5098] <... clone resumed>, child_tidptr=0x5555647bb750) = 2 [pid 5101] <... set_robust_list resumed>) = 0 [pid 5101] prctl(PR_SET_PDEATHSIG, SIGKILL) = 0 [pid 5101] setpgid(0, 0) = 0 [pid 5101] openat(AT_FDCWD, "/proc/self/oom_score_adj", O_WRONLY|O_CLOEXEC) = 3 [pid 5101] write(3, "1000", 4) = 4 [pid 5101] close(3) = 0 [pid 5101] write(1, "executing program\n", 18executing program ) = 18 [pid 5101] bpf(BPF_PROG_LOAD, {prog_type=BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE, insn_cnt=5, insns=0x20000040, license="syzkaller", log_level=0, log_size=0, log_buf=NULL, kern_version=KERNEL_VERSION(0, 0, 0), prog_flags=0, prog_name="", prog_ifindex=0, expected_attach_type=BPF_CGROUP_INET_INGRESS, prog_btf_fd=-1, func_info_rec_size=8, func_info=NULL, func_info_cnt=0, line_info_rec_size=16, line_info=NULL, line_info_cnt=0, attach_btf_id=0, attach_prog_fd=0, fd_array=NULL, ...}, 144) = 3 [pid 5101] bpf(BPF_RAW_TRACEPOINT_OPEN, {raw_tracepoint={name="mmap_lock_acquire_returned", prog_fd=3}}, 16) = 4 [ 74.243127][ T5101] [ 74.245504][ T5101] ====================================================== [ 74.252654][ T5101] WARNING: possible circular locking dependency detected [ 74.259844][ T5101] 6.10.0-rc2-syzkaller-00765-gbf977ee4a9e2 #0 Not tainted [ 74.267044][ T5101] ------------------------------------------------------ [ 74.274058][ T5101] syz-executor955/5101 is trying to acquire lock: [ 74.280460][ T5101] ffff8880b94387e8 (lock#9){+.+.}-{2:2}, at: __mmap_lock_do_trace_acquire_returned+0x8f/0x630 [ 74.290963][ T5101] [ 74.290963][ T5101] but task is already holding lock: [ 74.298323][ T5101] ffff8880b943e798 (&rq->__lock){-.-.}-{2:2}, at: raw_spin_rq_lock_nested+0x2a/0x140 [ 74.307830][ T5101] [ 74.307830][ T5101] which lock already depends on the new lock. [ 74.307830][ T5101] [ 74.318258][ T5101] [ 74.318258][ T5101] the existing dependency chain (in reverse order) is: [ 74.327262][ T5101] [ 74.327262][ T5101] -> #3 (&rq->__lock){-.-.}-{2:2}: [ 74.334558][ T5101] lock_acquire+0x1ed/0x550 [ 74.339576][ T5101] _raw_spin_lock_nested+0x31/0x40 [ 74.345215][ T5101] raw_spin_rq_lock_nested+0x2a/0x140 [ 74.351109][ T5101] task_fork_fair+0x61/0x1e0 [ 74.356217][ T5101] sched_cgroup_fork+0x37c/0x410 [ 74.361668][ T5101] copy_process+0x2217/0x3dc0 [ 74.366855][ T5101] kernel_clone+0x226/0x8f0 [ 74.371883][ T5101] user_mode_thread+0x132/0x1a0 [ 74.377247][ T5101] rest_init+0x23/0x300 [ 74.381916][ T5101] start_kernel+0x47a/0x500 [ 74.386955][ T5101] x86_64_start_reservations+0x2a/0x30 [ 74.392980][ T5101] x86_64_start_kernel+0x99/0xa0 [ 74.398450][ T5101] common_startup_64+0x13e/0x147 [ 74.403906][ T5101] [ 74.403906][ T5101] -> #2 (&p->pi_lock){-.-.}-{2:2}: [ 74.411199][ T5101] lock_acquire+0x1ed/0x550 [ 74.416216][ T5101] _raw_spin_lock_irqsave+0xd5/0x120 [ 74.422029][ T5101] try_to_wake_up+0xb0/0x1470 [ 74.427221][ T5101] signal_wake_up_state+0xb4/0x120 [ 74.432848][ T5101] complete_signal+0x94a/0xcf0 [ 74.438126][ T5101] __send_signal_locked+0xb1b/0xdc0 [ 74.443927][ T5101] do_notify_parent+0xd96/0x10a0 [ 74.449384][ T5101] do_exit+0x181d/0x27e0 [ 74.454142][ T5101] do_group_exit+0x207/0x2c0 [ 74.459244][ T5101] __x64_sys_exit_group+0x3f/0x40 [ 74.464818][ T5101] do_syscall_64+0xf3/0x230 [ 74.469865][ T5101] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 74.476343][ T5101] [ 74.476343][ T5101] -> #1 (&sighand->siglock){....}-{2:2}: [ 74.484183][ T5101] lock_acquire+0x1ed/0x550 [ 74.489205][ T5101] _raw_spin_lock_irqsave+0xd5/0x120 [ 74.495030][ T5101] __lock_task_sighand+0x149/0x2d0 [ 74.500749][ T5101] group_send_sig_info+0x274/0x310 [ 74.506473][ T5101] bpf_send_signal_common+0x2dd/0x430 [ 74.512359][ T5101] bpf_send_signal_thread+0x16/0x20 [ 74.518073][ T5101] bpf_prog_7aab9edbcd54ca16+0x22/0x27 [ 74.524054][ T5101] bpf_trace_run4+0x334/0x590 [ 74.529250][ T5101] __mmap_lock_do_trace_acquire_returned+0x5c8/0x630 [ 74.536436][ T5101] process_vm_rw+0xa46/0xcf0 [ 74.541542][ T5101] __x64_sys_process_vm_readv+0xe0/0x100 [ 74.547691][ T5101] do_syscall_64+0xf3/0x230 [ 74.552722][ T5101] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 74.559147][ T5101] [ 74.559147][ T5101] -> #0 (lock#9){+.+.}-{2:2}: [ 74.566010][ T5101] validate_chain+0x18e0/0x5900 [ 74.571380][ T5101] __lock_acquire+0x1346/0x1fd0 [ 74.576780][ T5101] lock_acquire+0x1ed/0x550 [ 74.581794][ T5101] __mmap_lock_do_trace_acquire_returned+0xa8/0x630 [ 74.588895][ T5101] stack_map_get_build_id_offset+0x9af/0x9d0 [ 74.595489][ T5101] __bpf_get_stack+0x4ad/0x5a0 [ 74.600771][ T5101] bpf_get_stack_raw_tp+0x1a3/0x240 [ 74.606578][ T5101] bpf_prog_ec3b2eefa702d8d3+0x42/0x46 [ 74.612543][ T5101] bpf_trace_run2+0x2ec/0x540 [ 74.617736][ T5101] trace_tlb_flush+0x118/0x140 [ 74.623038][ T5101] switch_mm_irqs_off+0x7cb/0xae0 [ 74.628611][ T5101] __schedule+0x1066/0x4a20 [ 74.633646][ T5101] schedule+0x14b/0x320 [ 74.638325][ T5101] synchronize_rcu_expedited+0x684/0x830 [ 74.644472][ T5101] synchronize_rcu+0x11b/0x360 [ 74.649825][ T5101] free_memcg_path_bufs+0x1fc/0x300 [ 74.655627][ T5101] trace_mmap_lock_unreg+0x43/0x50 [ 74.661249][ T5101] tracepoint_probe_unregister+0x68e/0x990 [ 74.667566][ T5101] bpf_raw_tp_link_release+0x45/0x70 [ 74.673363][ T5101] bpf_link_free+0xf5/0x250 [ 74.678384][ T5101] bpf_link_release+0x7b/0x90 [ 74.683687][ T5101] __fput+0x406/0x8b0 [ 74.688198][ T5101] __x64_sys_close+0x7f/0x110 [ 74.693388][ T5101] do_syscall_64+0xf3/0x230 [ 74.698403][ T5101] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 74.704824][ T5101] [ 74.704824][ T5101] other info that might help us debug this: [ 74.704824][ T5101] [ 74.715040][ T5101] Chain exists of: [ 74.715040][ T5101] lock#9 --> &p->pi_lock --> &rq->__lock [ 74.715040][ T5101] [ 74.726612][ T5101] Possible unsafe locking scenario: [ 74.726612][ T5101] [ 74.734050][ T5101] CPU0 CPU1 [ 74.739404][ T5101] ---- ---- [ 74.744773][ T5101] lock(&rq->__lock); [ 74.748853][ T5101] lock(&p->pi_lock); [ 74.755434][ T5101] lock(&rq->__lock); [ 74.762108][ T5101] lock(lock#9); [ 74.765757][ T5101] [ 74.765757][ T5101] *** DEADLOCK *** [ 74.765757][ T5101] [ 74.773889][ T5101] 6 locks held by syz-executor955/5101: [ 74.779506][ T5101] #0: ffffffff8e380888 (tracepoints_mutex){+.+.}-{3:3}, at: tracepoint_probe_unregister+0x32/0x990 [ 74.790290][ T5101] #1: ffffffff8e41f628 (reg_lock){+.+.}-{3:3}, at: trace_mmap_lock_unreg+0x18/0x50 [ 74.799700][ T5101] #2: ffffffff8e339378 (rcu_state.exp_mutex){+.+.}-{3:3}, at: synchronize_rcu_expedited+0x381/0x830 [ 74.810597][ T5101] #3: ffff8880b943e798 (&rq->__lock){-.-.}-{2:2}, at: raw_spin_rq_lock_nested+0x2a/0x140 [ 74.820969][ T5101] #4: ffffffff8e333fa0 (rcu_read_lock){....}-{1:2}, at: bpf_trace_run2+0x1fc/0x540 [ 74.830485][ T5101] #5: ffff8880658f8198 (&mm->mmap_lock){++++}-{3:3}, at: stack_map_get_build_id_offset+0x237/0x9d0 [ 74.841313][ T5101] [ 74.841313][ T5101] stack backtrace: [ 74.847197][ T5101] CPU: 0 PID: 5101 Comm: syz-executor955 Not tainted 6.10.0-rc2-syzkaller-00765-gbf977ee4a9e2 #0 [ 74.857701][ T5101] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/07/2024 [ 74.867840][ T5101] Call Trace: [ 74.871113][ T5101] [ 74.874057][ T5101] dump_stack_lvl+0x241/0x360 [ 74.878732][ T5101] ? __pfx_dump_stack_lvl+0x10/0x10 [ 74.884017][ T5101] ? print_circular_bug+0x130/0x1a0 [ 74.889213][ T5101] check_noncircular+0x36a/0x4a0 [ 74.894176][ T5101] ? __pfx_check_noncircular+0x10/0x10 [ 74.899994][ T5101] ? lockdep_lock+0x123/0x2b0 [ 74.904852][ T5101] ? __lock_acquire+0x1346/0x1fd0 [ 74.909871][ T5101] validate_chain+0x18e0/0x5900 [ 74.914729][ T5101] ? __pfx_validate_chain+0x10/0x10 [ 74.919923][ T5101] ? __read_once_word_nocheck+0x9/0x20 [ 74.925381][ T5101] ? deref_stack_reg+0x1c7/0x260 [ 74.930341][ T5101] ? __bfs+0x368/0x6f0 [ 74.934421][ T5101] ? __pfx___bfs+0x10/0x10 [ 74.938832][ T5101] ? mark_lock+0x9a/0x350 [ 74.943158][ T5101] ? mark_lock+0x9a/0x350 [ 74.947480][ T5101] __lock_acquire+0x1346/0x1fd0 [ 74.952351][ T5101] lock_acquire+0x1ed/0x550 [ 74.956845][ T5101] ? __mmap_lock_do_trace_acquire_returned+0x8f/0x630 [ 74.963691][ T5101] ? __pfx_lockdep_unlock+0x10/0x10 [ 74.968880][ T5101] ? __pfx_lock_acquire+0x10/0x10 [ 74.973900][ T5101] ? down_read_trylock+0x24f/0x3c0 [ 74.979010][ T5101] ? stack_map_get_build_id_offset+0x237/0x9d0 [ 74.985165][ T5101] ? __mmap_lock_do_trace_acquire_returned+0x8f/0x630 [ 74.991923][ T5101] __mmap_lock_do_trace_acquire_returned+0xa8/0x630 [ 74.998506][ T5101] ? __mmap_lock_do_trace_acquire_returned+0x8f/0x630 [ 75.005277][ T5101] stack_map_get_build_id_offset+0x9af/0x9d0 [ 75.011258][ T5101] ? __pfx_stack_map_get_build_id_offset+0x10/0x10 [ 75.017780][ T5101] __bpf_get_stack+0x4ad/0x5a0 [ 75.022545][ T5101] ? __pfx___bpf_get_stack+0x10/0x10 [ 75.027915][ T5101] ? __pfx___cant_migrate+0x10/0x10 [ 75.033108][ T5101] bpf_get_stack_raw_tp+0x1a3/0x240 [ 75.038404][ T5101] ? bpf_trace_run2+0x1fc/0x540 [ 75.043289][ T5101] bpf_prog_ec3b2eefa702d8d3+0x42/0x46 [ 75.048739][ T5101] bpf_trace_run2+0x2ec/0x540 [ 75.053435][ T5101] ? __pfx_bpf_trace_run2+0x10/0x10 [ 75.058637][ T5101] trace_tlb_flush+0x118/0x140 [ 75.063402][ T5101] switch_mm_irqs_off+0x7cb/0xae0 [ 75.068543][ T5101] ? __pfx_switch_mm_irqs_off+0x10/0x10 [ 75.074107][ T5101] __schedule+0x1066/0x4a20 [ 75.078614][ T5101] ? __pfx___schedule+0x10/0x10 [ 75.083480][ T5101] ? __pfx_lock_release+0x10/0x10 [ 75.088498][ T5101] ? _raw_spin_unlock_irqrestore+0xdd/0x140 [ 75.094416][ T5101] ? schedule+0x90/0x320 [ 75.098654][ T5101] schedule+0x14b/0x320 [ 75.102804][ T5101] synchronize_rcu_expedited+0x684/0x830 [ 75.108454][ T5101] ? __pfx_synchronize_rcu_expedited+0x10/0x10 [ 75.114626][ T5101] ? __pfx_wait_rcu_exp_gp+0x10/0x10 [ 75.119907][ T5101] ? __pfx___might_resched+0x10/0x10 [ 75.125188][ T5101] ? __pfx_autoremove_wake_function+0x10/0x10 [ 75.131268][ T5101] synchronize_rcu+0x11b/0x360 [ 75.136027][ T5101] ? __pfx_synchronize_rcu+0x10/0x10 [ 75.141324][ T5101] ? trace_mmap_lock_unreg+0x18/0x50 [ 75.146608][ T5101] free_memcg_path_bufs+0x1fc/0x300 [ 75.151897][ T5101] trace_mmap_lock_unreg+0x43/0x50 [ 75.157004][ T5101] tracepoint_probe_unregister+0x68e/0x990 [ 75.162808][ T5101] ? __pfx___bpf_trace_mmap_lock_acquire_returned+0x10/0x10 [ 75.170108][ T5101] ? radix_tree_delete_item+0x2e0/0x3f0 [ 75.175655][ T5101] bpf_raw_tp_link_release+0x45/0x70 [ 75.180955][ T5101] bpf_link_free+0xf5/0x250 [ 75.185464][ T5101] bpf_link_release+0x7b/0x90 [ 75.190138][ T5101] ? __pfx_bpf_link_release+0x10/0x10 [ 75.195507][ T5101] __fput+0x406/0x8b0 [ 75.199489][ T5101] __x64_sys_close+0x7f/0x110 [ 75.204159][ T5101] do_syscall_64+0xf3/0x230 [ 75.208653][ T5101] ? clear_bhb_loop+0x35/0x90 [ 75.213324][ T5101] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 75.219217][ T5101] RIP: 0033:0x7ff490bf3e20 [ 75.223625][ T5101] Code: Unable to access opcode bytes at 0x7ff490bf3df6. [ 75.230652][ T5101] RSP: 002b:00007ffec27de2f8 EFLAGS: 00000202 ORIG_RAX: 0000000000000003 [ 75.239059][ T5101] RAX: ffffffffffffffda RBX: 0000000000000005 RCX: 00007ff490bf3e20 executing program executing program [ 75.247043][ T5101] RDX: 0000000000000010 RSI: 0000000020000080 RDI: 0000000000000004 [ 75.255005][ T5101] RBP: 00000000000f4240 R08: 00007ff490c675f0 R09: 00007ff490c675f0 [ 75.262966][ T5101] R10: 0000000000000000 R11: 0000000000000202 R12: 00007ff490c675f0 [ 75.270950][ T5101] R13: 00007ffec27de5b8 R14: 00007ffec27de320 R15: 00007ffec27de310 [ 75.279009][ T5101] executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program