From ca81f97577a3fc5b6fb397d94344a620a1bcbff3 Mon Sep 17 00:00:00 2001 From: Nico Schottelius Date: Sat, 7 Nov 2009 21:11:05 +0100 Subject: [PATCH] the key itself plus the cinit release Signed-off-by: Nico Schottelius --- about.mdwn | 5 +- about/pgp-key-31877DF0.txt | 47 + .../cinit/archives/cinit-0.3pre18.tar.bz2 | Bin 0 -> 524915 bytes software/cinit/browse_source/cinit-0.3pre18/ | 4 + .../browse_source/cinit-0.3pre18/.ditz-config | 4 + .../cinit-0.3pre18/.ditz-plugins | 1 + .../browse_source/cinit-0.3pre18/.gitignore | 31 + .../browse_source/cinit-0.3pre18/Makefile | 145 + .../cinit/browse_source/cinit-0.3pre18/README | 238 + .../bin/cinit-conf.config.shell | 33 + .../cinit-0.3pre18/bin/cinit-conf.get-confdir | 42 + .../bin/cinit-conf.migrate.archlinux | 490 + .../cinit-conf.migrate.upstart.ubuntu.jaunty | 174 + .../cinit-0.3pre18/bin/cinit-conf.read-conf | 58 + .../bin/cinit-conf.svc-boot-enable | 46 + .../bin/cinit-conf.svc-create.template | 66 + .../cinit-0.3pre18/bin/cinit-conf.svc-delete | 46 + .../cinit-0.3pre18/bin/cinit-conf.svc-off | 43 + .../cinit-0.3pre18/bin/cinit-conf.svc-on | 39 + .../bin/cinit-conf.svc-param.add | 42 + .../bin/cinit-conf.svc-respawn.off | 46 + .../bin/cinit-conf.svc-respawn.on | 46 + .../cinit-0.3pre18/bin/cinit-conf.svc.acpid | 53 + .../cinit-0.3pre18/bin/cinit-conf.svc.agetty | 71 + .../bin/cinit-conf.svc.categories | 26 + .../bin/cinit-conf.svc.dependency.add | 65 + .../bin/cinit-conf.svc.fsck.linux | 50 + .../bin/cinit-conf.svc.getty.add | 75 + .../bin/cinit-conf.svc.getty.remove | 25 + .../bin/cinit-conf.svc.hostname.linux | 42 + .../cinit-0.3pre18/bin/cinit-conf.svc.init | 14 + .../bin/cinit-conf.svc.init.dependencies | 32 + .../bin/cinit-conf.svc.keymap.linux | 41 + .../bin/cinit-conf.svc.linux.network.lo | 18 + .../cinit-conf.svc.local-tuning.udev.ubuntu | 45 + .../bin/cinit-conf.svc.mount.dev-pts | 54 + .../bin/cinit-conf.svc.mount.dev-shm | 45 + .../bin/cinit-conf.svc.mount.getsource | 22 + .../bin/cinit-conf.svc.mount.nfs | 56 + .../bin/cinit-conf.svc.mount.proc | 38 + .../bin/cinit-conf.svc.mount.root | 41 + .../bin/cinit-conf.svc.mount.swap | 43 + .../bin/cinit-conf.svc.mount.sys | 19 + .../bin/cinit-conf.svc.mount.sysfs | 39 + .../bin/cinit-conf.svc.mount.udev | 40 + .../bin/cinit-conf.svc.mtab-clean.linux | 49 + .../bin/cinit-conf.svc.network.debian | 58 + .../bin/cinit-conf.svc.setup.console.linux | 48 + .../cinit-0.3pre18/bin/cinit-conf.svc.shell | 53 + .../cinit-0.3pre18/bin/cinit-conf.svc.sshd | 53 + .../bin/cinit-conf.svc.sysctl.linux | 63 + .../bin/cinit-conf.svc.tmp.clean | 58 + .../bin/cinit-conf.svc.tmp.create | 58 + .../bin/cinit-conf.svc.udev.copy-static | 40 + ...cinit-conf.sys-v-init.get-current-runlevel | 21 + .../bin/cinit-conf.sys-v-init.migrate-fstab | 26 + .../cinit-0.3pre18/bin/cinit.reboot | 18 + .../cinit-0.3pre18/bin/cinit.shutdown | 30 + .../cinit-0.3pre18/bin/cinit.svc.init | 15 + .../bin/cinit.svc.linux.debian.ntpdate | 47 + .../cinit-0.3pre18/bin/cinit.wait.for.daemon | 31 + .../browse_source/cinit-0.3pre18/bugs/README | 1 + ...3a541a2261c7322d6c59a6adb091301020c8d.yaml | 25 + ...142c646aa04e8e713fc8f886a44475581c670.yaml | 22 + ...cbf62dbdd9a7a026bcbb7d2863599c7183f70.yaml | 30 + ...421b885608485f73c9041c5c0af71df76331a.yaml | 18 + ...3dca921062d97b96830caf24e7898ad4fbbe2.yaml | 18 + ...22475f5d01c35eb9edd8d75c065c83032701b.yaml | 23 + ...e5a7b4c338f18f92d5bb1a2789d76d0e11ad9.yaml | 43 + ...45f06044e5329dca7f351a17676e65d4e3b38.yaml | 22 + ...a3675810b44b05ce51c021690fb3f21725e55.yaml | 23 + ...a514da472aa15fa57d2df06e8d5cc909016d0.yaml | 22 + ...20ff450d0c685a5567d25d77230763c835c8e.yaml | 19 + ...14c82109544e198e5cce002c0d94a66e6f4d7.yaml | 18 + ...b0e1478cb8e1fd7ef577b0acf8f7b2f516d6d.yaml | 26 + ...60e6061fb5d39549b85d42fc33f57de7a1396.yaml | 18 + ...7befd45553864b1d2ebc12509e06440a402d0.yaml | 18 + ...769f4f4f23b8a544ae3e20866d8fc2676a7e7.yaml | 18 + ...1cdbcb30d007bfb692504d9469a93f7c15b97.yaml | 18 + ...87a7f79046db51429db38e7b1da5234a3675e.yaml | 25 + ...a9d56ed460fb45e91d2c555d57133d2286f72.yaml | 24 + ...e1aee59a52ab1b3b0b02b02f07823d4f4b8d8.yaml | 28 + ...28a5e8b064827fac8f1bc905cd5b304961f77.yaml | 22 + ...7c9b51f82dd54eba8baa40aa5e8bba326ea01.yaml | 18 + ...020845511594b4b90bb38a2a839ef6ce4c9c8.yaml | 20 + ...32fffad054c5a1f781f28a60015346ad28dd6.yaml | 20 + ...7970bd20e1dc0b04f314fee5f39ba90d3d904.yaml | 18 + ...5e27c03e3dd22add144409f6dfe8b81d2c8d1.yaml | 22 + ...b9f0761d0a1e0ca47cc8e0e52d4ec16f51669.yaml | 20 + ...5cb93810ea790f795fedc2e9afc6475c9c0a8.yaml | 18 + ...682d63b1059f876c6cdde2323a596dba89d3c.yaml | 51 + ...8d3f9dca2df7ccaf8fb9ce2daab3e9255dae3.yaml | 18 + ...40277e32b0bd747d7f47a68d41009fc046fd9.yaml | 18 + .../cinit-0.3pre18/bugs/project.yaml | 44 + .../browse_source/cinit-0.3pre18/conf/.README | 7 + .../cinit-0.3pre18/conf/c_confdir | 3 + .../browse_source/cinit-0.3pre18/conf/c_delay | 4 + .../cinit-0.3pre18/conf/c_desaster | 5 + .../browse_source/cinit-0.3pre18/conf/c_env | 9 + .../browse_source/cinit-0.3pre18/conf/c_init | 3 + .../browse_source/cinit-0.3pre18/conf/c_last | 7 + .../browse_source/cinit-0.3pre18/conf/c_needs | 3 + .../browse_source/cinit-0.3pre18/conf/c_off | 3 + .../browse_source/cinit-0.3pre18/conf/c_on | 3 + .../browse_source/cinit-0.3pre18/conf/c_panic | 5 + .../cinit-0.3pre18/conf/c_params | 3 + .../cinit-0.3pre18/conf/c_respawn | 3 + .../browse_source/cinit-0.3pre18/conf/c_sock | 4 + .../browse_source/cinit-0.3pre18/conf/c_tmp | 3 + .../browse_source/cinit-0.3pre18/conf/c_tmpfs | 4 + .../cinit-0.3pre18/conf/c_tmpmount | 4 + .../browse_source/cinit-0.3pre18/conf/c_wants | 3 + .../browse_source/cinit-0.3pre18/conf/cc | 3 + .../browse_source/cinit-0.3pre18/conf/cflags | 6 + .../cinit-0.3pre18/conf/cinit_dir | 3 + .../cinit-0.3pre18/conf/cinitconfdir | 3 + .../browse_source/cinit-0.3pre18/conf/destdir | 6 + .../cinit-0.3pre18/conf/gettydir | 4 + .../cinit-0.3pre18/conf/install_directory | 3 + .../cinit-0.3pre18/conf/install_prog | 4 + .../cinit-0.3pre18/conf/ipc_method | 5 + .../browse_source/cinit-0.3pre18/conf/ld | 3 + .../browse_source/cinit-0.3pre18/conf/ldflags | 3 + .../cinit-0.3pre18/conf/max_delay | 4 + .../cinit-0.3pre18/conf/max_deps | 4 + .../cinit-0.3pre18/conf/msgq_pathname | 4 + .../cinit-0.3pre18/conf/msgq_to_clients | 4 + .../cinit-0.3pre18/conf/msgq_to_server | 4 + .../browse_source/cinit-0.3pre18/conf/os | 14 + .../cinit-0.3pre18/conf/p_asciidoc | 6 + .../cinit-0.3pre18/conf/p_docbooktoman | 6 + .../cinit-0.3pre18/conf/p_docbooktotexi | 6 + .../browse_source/cinit-0.3pre18/conf/prefix | 5 + .../browse_source/cinit-0.3pre18/conf/profile | 9 + .../cinit-0.3pre18/conf/service_categories | 3 + .../cinit-0.3pre18/conf/sleep_before_kill | 7 + .../cinit-0.3pre18/conf/sleep_kill | 8 + .../cinit-0.3pre18/conf/sleep_kill_svc | 5 + .../cinit-0.3pre18/conf/sleep_rerun | 4 + .../cinit-0.3pre18/conf/sleep_svc | 3 + .../cinit-0.3pre18/conf/sock_queue | 4 + .../browse_source/cinit-0.3pre18/conf/strip | 3 + .../browse_source/cinit-0.3pre18/conf/sulogin | 6 + .../browse_source/cinit-0.3pre18/conf/svcdir | 3 + .../browse_source/cinit-0.3pre18/conf/version | 3 + .../cinit-0.3pre18/contrib+tools/Makefile | 70 + .../cinit-0.3pre18/contrib+tools/README | 11 + .../cinit-0.3pre18/contrib+tools/README.ruby | 7 + .../contrib+tools/cconfig.graph.xml.rb | 117 + .../cinit-0.3pre18/contrib+tools/cinit-vis.pl | 72 + .../contrib+tools/cinit.graph.text.c | 200 + .../cinit-0.3pre18/contrib+tools/cinit.h | 17 + .../cinit-0.3pre18/contrib+tools/error.c | 124 + .../cinit-0.3pre18/contrib+tools/error.h | 29 + .../contrib+tools/make.cconfig.from.xml.rb | 227 + .../contrib+tools/mini_printf.c | 1 + .../cinit-0.3pre18/contrib+tools/usage.c | 1 + .../cinit-0.3pre18/doc/.buildwarn | 24 + .../browse_source/cinit-0.3pre18/doc/COPYING | 674 + .../browse_source/cinit-0.3pre18/doc/CREDITS | 25 + .../browse_source/cinit-0.3pre18/doc/Makefile | 107 + .../cinit-0.3pre18/doc/README.text | 57 + .../cinit-0.3pre18/doc/ancient/Changelog | 10 + .../cinit-0.3pre18/doc/ancient/README | 16 + .../cinit-0.3pre18/doc/ancient/TODO.lucky | 16 + .../cinit-0.3pre18/doc/ancient/caveats | 58 + .../doc/ancient/cinit-doc/author | 1 + .../doc/ancient/cinit-doc/availability | 1 + .../doc/ancient/cinit-doc/examples | 1 + .../doc/ancient/cinit-doc/files | 5 + .../doc/ancient/cinit-doc/long_description | 5 + .../doc/ancient/cinit-doc/meta/date | 1 + .../doc/ancient/cinit-doc/meta/man_section | 1 + .../doc/ancient/cinit-doc/meta/name | 1 + .../ancient/cinit-doc/meta/short_description | 1 + .../doc/ancient/cinit-doc/parameters | 1 + .../cinit-0.3pre18/doc/ancient/cinit-doc/path | 1 + .../doc/ancient/cinit-doc/see also | 1 + .../doc/ancient/cinit-doc/synopsis | 1 + .../cinit-0.3pre18/doc/ancient/cinit.commands | 73 + .../doc/ancient/cservice-doc/author | 1 + .../doc/ancient/cservice-doc/long_description | 1 + .../doc/ancient/cservice-doc/meta/date | 1 + .../doc/ancient/cservice-doc/meta/man_section | 1 + .../doc/ancient/cservice-doc/meta/name | 1 + .../cservice-doc/meta/short_description | 1 + .../doc/ancient/cservice-doc/parameters | 1 + .../doc/ancient/cservice-doc/path | 1 + .../doc/ancient/cservice-doc/see also | 1 + .../doc/ancient/cservice-doc/synopsis | 1 + .../cinit-0.3pre18/doc/ancient/extern/README | 2 + .../doc/ancient/extern/ipc.thoughts | 83 + .../doc/ancient/extern/ipc.usenet.posting | 48 + .../extern/linux.kernel.eats.arguments | 33 + .../ancient/extern/posix.aardvark.bug.report | 52 + .../cinit-0.3pre18/doc/ancient/fun-testing | 20 + .../doc/ancient/how_it_works_internally | 26 + .../doc/ancient/init-idea-first | 38 + .../doc/ancient/porting.to.other.os | 25 + .../doc/ancient/removing.zombies | 48 + .../cinit-0.3pre18/doc/ancient/security | 35 + .../doc/ancient/socket.poll_vs_o_async | 39 + .../doc/ancient/thoughts.closed | 52 + .../cinit-0.3pre18/doc/braindumps/README.text | 2 + .../doc/braindumps/circular-dependencies.text | 35 + .../doc/braindumps/converting-debian | 30 + .../doc/braindumps/converting-general | 10 + .../braindumps/creating-new-configurations | 6 + .../doc/braindumps/messages.text | 6 + .../possible_service_pre_calculation.text | 19 + .../braindumps/possible_service_status.text | 14 + .../braindumps/registering_needs_wants.text | 55 + .../doc/braindumps/root-vm-testing | 9 + .../doc/braindumps/shutdown.text | 84 + .../cinit-0.3pre18/doc/braindumps/sizes | 6 + .../cinit-0.3pre18/doc/changes/0.1 | 2 + .../cinit-0.3pre18/doc/changes/0.3pre15 | 3 + .../cinit-0.3pre18/doc/changes/0.3pre16 | 6 + .../cinit-0.3pre18/doc/changes/0.3pre17 | 3 + .../cinit-0.3pre18/doc/changes/0.3pre18 | 4 + .../doc/changes/00-before-0.3pre15 | 108 + .../cinit-0.3pre18/doc/devel/Doxyfile | 305 + .../cinit-0.3pre18/doc/devel/README.text | 18 + .../cinit-0.3pre18/doc/devel/cinit-0.4.text | 115 + .../doc/devel/cinit-status-translation.dia | Bin 0 -> 5090 bytes .../doc/devel/cinit-status-translation.png | Bin 0 -> 62619 bytes .../doc/devel/codingguideline.text | 149 + .../doc/devel/communication.text | 248 + .../cinit-0.3pre18/doc/devel/configuring.text | 18 + .../doc/devel/cross-compiling.text | 36 + .../cinit-0.3pre18/doc/devel/ipc.text | 169 + .../cinit-0.3pre18/doc/devel/lists.text | 22 + .../doc/devel/merging.other.initsystems.text | 68 + .../cinit-0.3pre18/doc/devel/optimising.cinit | 33 + .../doc/devel/testing-cinit-in-vm.text | 11 + .../cinit-0.3pre18/doc/devel/testing.text | 48 + .../cinit-0.3pre18/doc/examples/README | 1 + .../doc/examples/cinit-0.3/README | 1 + .../doc/examples/cinit-0.3/denkbrett/README | 5 + .../denkbrett/denkbrett-20070423-1.tar.bz2 | Bin 0 -> 1153 bytes .../denkbrett-20070423-1.tar.bz2.README | 1 + .../denkbrett/denkbrett-20070423-2.tar.bz2 | Bin 0 -> 1170 bytes .../denkbrett-20070423-2.tar.bz2.README | 3 + .../denkbrett/denkbrett-20070423-3.tar.bz2 | Bin 0 -> 1324 bytes .../denkbrett-20070423-3.tar.bz2.README | 2 + .../denkbrett/denkbrett-20070423-4.tar.bz2 | Bin 0 -> 1354 bytes .../denkbrett-20070423-4.tar.bz2.README | 2 + .../denkbrett/denkbrett-20070423-5.tar.bz2 | Bin 0 -> 1477 bytes .../denkbrett-20070423-5.tar.bz2.README | 2 + .../denkbrett/denkbrett-20070423-6.tar.bz2 | Bin 0 -> 1528 bytes .../denkbrett-20070423-6.tar.bz2.README | 3 + .../denkbrett/denkbrett-20070423-7.tar.bz2 | Bin 0 -> 1723 bytes .../denkbrett-20070423-7.tar.bz2.README | 3 + .../denkbrett/denkbrett-20070423-8.tar.bz2 | Bin 0 -> 2246 bytes .../denkbrett-20070423-8.tar.bz2.README | 1 + .../denkbrett/denkbrett-20070424-1.tar.bz2 | Bin 0 -> 2305 bytes .../denkbrett-20070424-1.tar.bz2.README | 2 + .../denkbrett/denkbrett-20070424-2.tar.bz2 | Bin 0 -> 2376 bytes .../denkbrett-20070424-2.tar.bz2.README | 1 + .../denkbrett/denkbrett-20070425-1.tar.bz2 | Bin 0 -> 3174 bytes .../denkbrett-20070425-1.tar.bz2.README | 3 + .../denkbrett/denkbrett-20070503-01.tar.bz2 | Bin 0 -> 3388 bytes .../denkbrett-20070503-01.tar.bz2.README | 3 + .../denkbrett/denkbrett-20070503-02.tar.bz2 | Bin 0 -> 3388 bytes .../denkbrett-20070503-02.tar.bz2.README | 1 + .../denkbrett/denkbrett-20070717-1.tar.bz2 | Bin 0 -> 3910 bytes .../denkbrett-20070717-1.tar.bz2.README | 1 + .../denkbrett/denkbrett-20070831-1.tar.bz2 | Bin 0 -> 4069 bytes .../denkbrett-20070831-1.tar.bz2.README | 1 + .../denkbrett/denkbrett-20070831-2.tar.bz2 | Bin 0 -> 4159 bytes .../denkbrett-20070831-2.tar.bz2.README | 1 + .../denkbrett/denkbrett-20070901-1.tar.bz2 | Bin 0 -> 4261 bytes .../denkbrett-20070901-1.tar.bz2.README | 7 + .../denkbrett/denkbrett-20070901-2.tar.bz2 | Bin 0 -> 4468 bytes .../denkbrett-20070901-2.tar.bz2.README | 1 + .../denkbrett/denkbrett-20070906-1.tar.bz2 | Bin 0 -> 4522 bytes .../denkbrett-20070906-1.tar.bz2.README | 2 + .../denkbrett/denkbrett-20070909-1.tar.bz2 | Bin 0 -> 4525 bytes .../denkbrett-20070909-1.tar.bz2.README | 1 + .../cinit-0.3/denkbrett/etc/cinit/conf/last | 6 + .../denkbrett/etc/cinit/conf/last.params | 3 + .../etc/cinit/conf/sleep_before_kill | 1 + .../etc/cinit/conf/sleep_before_kill.README | 2 + .../etc/cinit/svc/getty/1/needs/keyboard | 1 + .../etc/cinit/svc/getty/1/needs/mount-root | 1 + .../etc/cinit/svc/getty/1/needs/proc | 1 + .../denkbrett/etc/cinit/svc/getty/1/on | 1 + .../denkbrett/etc/cinit/svc/getty/1/on.env | 1 + .../denkbrett/etc/cinit/svc/getty/1/on.params | 2 + .../denkbrett/etc/cinit/svc/getty/1/respawn | 0 .../cinit/svc/getty/1/wants/console-unicode | 1 + .../etc/cinit/svc/getty/1/wants/hostname | 1 + .../etc/cinit/svc/getty/2/needs/keyboard | 1 + .../etc/cinit/svc/getty/2/needs/mount-root | 1 + .../etc/cinit/svc/getty/2/needs/proc | 1 + .../denkbrett/etc/cinit/svc/getty/2/on | 1 + .../denkbrett/etc/cinit/svc/getty/2/on.env | 1 + .../denkbrett/etc/cinit/svc/getty/2/on.params | 2 + .../denkbrett/etc/cinit/svc/getty/2/respawn | 0 .../cinit/svc/getty/2/wants/console-unicode | 1 + .../etc/cinit/svc/getty/2/wants/hostname | 1 + .../etc/cinit/svc/getty/3/needs/keyboard | 1 + .../etc/cinit/svc/getty/3/needs/mount-root | 1 + .../etc/cinit/svc/getty/3/needs/proc | 1 + .../denkbrett/etc/cinit/svc/getty/3/on | 1 + .../denkbrett/etc/cinit/svc/getty/3/on.env | 1 + .../denkbrett/etc/cinit/svc/getty/3/on.params | 2 + .../denkbrett/etc/cinit/svc/getty/3/respawn | 0 .../cinit/svc/getty/3/wants/console-unicode | 1 + .../etc/cinit/svc/getty/3/wants/hostname | 1 + .../etc/cinit/svc/getty/4/needs/keyboard | 1 + .../etc/cinit/svc/getty/4/needs/mount-root | 1 + .../etc/cinit/svc/getty/4/needs/proc | 1 + .../denkbrett/etc/cinit/svc/getty/4/on | 1 + .../denkbrett/etc/cinit/svc/getty/4/on.env | 1 + .../denkbrett/etc/cinit/svc/getty/4/on.params | 2 + .../denkbrett/etc/cinit/svc/getty/4/respawn | 0 .../cinit/svc/getty/4/wants/console-unicode | 1 + .../etc/cinit/svc/getty/4/wants/hostname | 1 + .../denkbrett/etc/cinit/svc/init/needs/acpid | 1 + .../etc/cinit/svc/init/needs/eth0.dhcp | 1 + .../etc/cinit/svc/init/needs/getty-2 | 1 + .../etc/cinit/svc/init/needs/getty-3 | 1 + .../etc/cinit/svc/init/needs/getty-4 | 1 + .../etc/cinit/svc/init/needs/keyboard | 1 + .../etc/cinit/svc/init/needs/loopback | 1 + .../etc/cinit/svc/init/needs/rescue-shell | 1 + .../denkbrett/etc/cinit/svc/init/needs/sysfs | 1 + .../cinit-0.3/denkbrett/etc/cinit/svc/init/on | 1 + .../denkbrett/etc/cinit/svc/init/on.params | 1 + .../etc/cinit/svc/init/wants/quiet-kernel | 1 + .../denkbrett/etc/cinit/svc/init/wants/udev | 1 + .../etc/cinit/svc/local-services/acpid/README | 1 + .../cinit/svc/local-services/acpid/needs/acpi | 1 + .../cinit/svc/local-services/acpid/needs/proc | 1 + .../cinit/svc/local-services/acpid/needs/root | 1 + .../etc/cinit/svc/local-services/acpid/on | 1 + .../cinit/svc/local-services/acpid/on.params | 1 + .../cinit/svc/local-services/acpid/respawn | 0 .../cinit/svc/local-services/metalog/README | 2 + .../svc/local-services/metalog/needs/root | 1 + .../etc/cinit/svc/local-services/metalog/on | 1 + .../syslog-ng/needs/clean-dev-log | 1 + .../svc/local-services/syslog-ng/needs/root | 1 + .../etc/cinit/svc/local-services/syslog-ng/on | 1 + .../svc/local-services/syslog-ng/on.params | 1 + .../svc/local-services/syslog-ng/respawn | 0 .../svc/local-tuning/clean-dev-log/README | 5 + .../svc/local-tuning/clean-dev-log/needs/root | 1 + .../cinit/svc/local-tuning/clean-dev-log/on | 1 + .../svc/local-tuning/clean-dev-log/on.params | 2 + .../cinit/svc/local-tuning/clean-mtab/README | 1 + .../local-tuning/clean-mtab/needs/root-mount | 1 + .../etc/cinit/svc/local-tuning/clean-mtab/on | 1 + .../svc/local-tuning/clean-mtab/on.params | 2 + .../svc/local-tuning/console-unicode/README | 1 + .../local-tuning/console-unicode/needs/proc | 1 + .../local-tuning/console-unicode/needs/udev | 1 + .../svc/local-tuning/console-unicode/off | 1 + .../cinit/svc/local-tuning/console-unicode/on | 1 + .../svc/local-tuning/console-unicode/on.env | 1 + .../local-tuning/cpufreq/cpufreq_ondemand/on | 1 + .../cpufreq/cpufreq_ondemand/on.params | 1 + .../cpufreq/needs/cpufreq_ondemand | 1 + .../cpufreq/needs/speedstep-centrino | 1 + .../svc/local-tuning/cpufreq/needs/sysfs | 1 + .../etc/cinit/svc/local-tuning/cpufreq/on | 2 + .../cpufreq/speedstep-centrino/on | 1 + .../cpufreq/speedstep-centrino/on.params | 1 + .../etc/cinit/svc/local-tuning/crypto/aes/on | 1 + .../svc/local-tuning/crypto/aes/on.params | 1 + .../cinit/svc/local-tuning/crypto/dm_crypt/on | 1 + .../local-tuning/crypto/dm_crypt/on.params | 1 + .../svc/local-tuning/drivers/acpi/ac/README | 1 + .../cinit/svc/local-tuning/drivers/acpi/ac/on | 1 + .../local-tuning/drivers/acpi/ac/on.params | 1 + .../local-tuning/drivers/acpi/battery/README | 1 + .../svc/local-tuning/drivers/acpi/battery/on | 1 + .../drivers/acpi/battery/on.params | 1 + .../local-tuning/drivers/acpi/button/README | 1 + .../svc/local-tuning/drivers/acpi/button/on | 1 + .../drivers/acpi/button/on.params | 1 + .../svc/local-tuning/drivers/acpi/fan/README | 1 + .../svc/local-tuning/drivers/acpi/fan/on | 1 + .../local-tuning/drivers/acpi/fan/on.params | 1 + .../local-tuning/drivers/acpi/ibm_acpi/README | 1 + .../svc/local-tuning/drivers/acpi/ibm_acpi/on | 1 + .../drivers/acpi/ibm_acpi/on.params | 1 + .../svc/local-tuning/drivers/acpi/needs/ac | 1 + .../local-tuning/drivers/acpi/needs/battery | 1 + .../local-tuning/drivers/acpi/needs/button | 1 + .../svc/local-tuning/drivers/acpi/needs/fan | 1 + .../local-tuning/drivers/acpi/needs/ibm_acpi | 1 + .../local-tuning/drivers/acpi/needs/thermal | 1 + .../local-tuning/drivers/acpi/thermal/README | 1 + .../svc/local-tuning/drivers/acpi/thermal/on | 1 + .../drivers/acpi/thermal/on.params | 1 + .../cinit/svc/local-tuning/drivers/eth0/on | 1 + .../svc/local-tuning/drivers/eth0/on.params | 1 + .../etc/cinit/svc/local-tuning/keyboard/on | 1 + .../cinit/svc/local-tuning/keyboard/on.params | 1 + .../cinit/svc/local-tuning/quiet-kernel/on | 1 + .../svc/local-tuning/quiet-kernel/on.params | 1 + .../cinit/svc/local-tuning/udev/needs/proc | 1 + .../etc/cinit/svc/local-tuning/udev/on | 1 + .../etc/cinit/svc/local-tuning/udev/on.params | 1 + .../svc/mount/home.dm_crypt/luksopen/README | 3 + .../mount/home.dm_crypt/luksopen/needs/aes | 1 + .../home.dm_crypt/luksopen/needs/dm_crypt | 1 + .../home.dm_crypt/luksopen/needs/keyboard | 1 + .../cinit/svc/mount/home.dm_crypt/luksopen/on | 5 + .../svc/mount/home.dm_crypt/needs/luksopen | 1 + .../etc/cinit/svc/mount/home.dm_crypt/on | 1 + .../cinit/svc/mount/home.dm_crypt/on.params | 1 + .../etc/cinit/svc/mount/proc/needs/clean-mtab | 1 + .../denkbrett/etc/cinit/svc/mount/proc/on | 1 + .../etc/cinit/svc/mount/proc/on.params | 1 + .../etc/cinit/svc/mount/root/fsck/needs/udev | 1 + .../etc/cinit/svc/mount/root/fsck/on | 17 + .../etc/cinit/svc/mount/root/fsck/on.old | 1 + .../etc/cinit/svc/mount/root/fsck/on.params | 1 + .../etc/cinit/svc/mount/root/needs/fsck | 1 + .../denkbrett/etc/cinit/svc/mount/root/on | 1 + .../etc/cinit/svc/mount/root/on.params | 4 + .../etc/cinit/svc/mount/sysfs/README | 1 + .../cinit/svc/mount/sysfs/needs/clean-mtab | 1 + .../denkbrett/etc/cinit/svc/mount/sysfs/on | 1 + .../etc/cinit/svc/mount/sysfs/on.params | 4 + .../svc/network/eth0.dhcp/needs/load-driver | 1 + .../cinit/svc/network/eth0.dhcp/needs/root | 1 + .../etc/cinit/svc/network/eth0.dhcp/on | 1 + .../etc/cinit/svc/network/eth0.dhcp/on.params | 4 + .../etc/cinit/svc/network/eth0.dhcp/respawn | 0 .../etc/cinit/svc/network/hostname/on | 1 + .../etc/cinit/svc/network/hostname/on.params | 1 + .../etc/cinit/svc/network/loopback/on | 1 + .../etc/cinit/svc/network/loopback/on.params | 3 + .../etc/cinit/svc/remote-services/sshd/on | 1 + .../cinit/svc/remote-services/sshd/on.params | 1 + .../denkbrett/etc/cinit/svc/rescue-shell/on | 1 + .../etc/cinit/svc/rescue-shell/on.env | 2 + .../etc/cinit/svc/rescue-shell/respawn | 0 .../doc/examples/cinit-0.3/denkbrett/rsync | 2 + .../examples/cinit-0.3/denkbrett/rsync.local | 3 + .../test+conf-last-2007-02-23.tar.bz2 | Bin 0 -> 631 bytes .../denkbrett/test-2007-02-23.tar.bz2 | Bin 0 -> 388 bytes .../cinit-0.3pre18/doc/gpl3-header.c | 25 + .../cinit-0.3pre18/doc/gpl3-header.sh | 23 + .../doc/logs/2006-10-25.config.wasserstoff | 16 + .../doc/logs/2006-11-22.startup-with-debug | 55 + .../doc/logs/2006-11-30.startup-0.3pre5 | 1821 + .../cinit-0.3pre18/doc/man/cinit-conf.text | 47 + .../cinit-0.3pre18/doc/man/cinit.text | 64 + .../cinit-0.3pre18/doc/man/cmd.text | 89 + .../cinit-0.3pre18/doc/man/cservice | 37 + .../cinit-0.3pre18/doc/man/halt.kill.text | 46 + .../cinit-0.3pre18/doc/man/poweroff.kill.text | 47 + .../cinit-0.3pre18/doc/man/reboot.kill.text | 47 + .../browse_source/cinit-0.3pre18/doc/todo/0.1 | 4 + .../cinit-0.3pre18/doc/todo/0.1.1 | 6 + .../browse_source/cinit-0.3pre18/doc/todo/0.2 | 1 + .../cinit-0.3pre18/doc/todo/0.2.1 | 1 + .../cinit-0.3pre18/doc/todo/0.2.2 | 3 + .../browse_source/cinit-0.3pre18/doc/todo/0.3 | 1 + .../cinit-0.3pre18/doc/todo/0.3pre11 | 10 + .../cinit-0.3pre18/doc/todo/0.3pre12 | 41 + .../cinit-0.3pre18/doc/todo/0.3pre13 | 19 + .../doc/todo/0.3pre13.race-condition | 12 + .../cinit-0.3pre18/doc/todo/0.3pre14 | 3 + .../cinit-0.3pre18/doc/todo/0.3pre15 | 62 + .../cinit-0.3pre18/doc/todo/0.3pre16 | 9 + .../cinit-0.3pre18/doc/todo/0.3pre17 | 11 + .../cinit-0.3pre18/doc/todo/0.3pre18 | 3 + .../cinit-0.3pre18/doc/todo/0.3pre19 | 4 + .../browse_source/cinit-0.3pre18/doc/todo/0.4 | 44 + .../cinit-0.3pre18/doc/todo/0.4.1 | 2 + .../cinit-0.3pre18/doc/todo/long_list | 21 + .../browse_source/cinit-0.3pre18/doc/user/FAQ | 35 + .../cinit-0.3pre18/doc/user/README.text | 21 + .../cinit-0.3pre18/doc/user/TODO | 4 + .../cinit-0.3pre18/doc/user/compiles.on.text | 19 + .../cinit-0.3pre18/doc/user/conf-system.text | 34 + .../doc/user/configuring.cinit.text | 337 + .../doc/user/cross-compiling.text | 6 + .../doc/user/current-init-problems.text | 170 + .../doc/user/daemons.backgrounding.text | 84 + .../doc/user/debugging.configuration | 32 + .../cinit-0.3pre18/doc/user/dependencies.text | 68 + .../doc/user/example-directory-structure.text | 140 + .../cinit-0.3pre18/doc/user/freebsd.text | 21 + .../cinit-0.3pre18/doc/user/ideas | 3 + .../doc/user/installing-cinit.text | 63 + .../cinit-0.3pre18/doc/user/main.text | 113 + .../cinit-0.3pre18/doc/user/meta.dependencies | 58 + .../cinit-0.3pre18/doc/user/paths.text | 121 + .../doc/user/problems-and-solutions.text | 33 + .../cinit-0.3pre18/doc/user/problems.text | 114 + .../cinit-0.3pre18/doc/user/profiles.text | 79 + .../cinit-0.3pre18/doc/user/replacing.init | 13 + .../doc/user/respawning-sleep.text | 52 + .../doc/user/special-services.text | 12 + .../cinit-0.3pre18/doc/user/supported-os.text | 32 + .../cinit-0.3pre18/doc/user/updating.cinit | 17 + .../cinit-0.3pre18/doc/user/using.rescue | 30 + .../libexec/cinit-conf/dialog-alias.sh | 12 + .../cinit-0.3pre18/scripts/README | 3 + .../scripts/build/cinit.configure.ipc | 20 + .../scripts/build/cinit.configure.mark | 8 + .../scripts/build/cinit.configure.os | 15 + .../scripts/build/cinit.configure.tools | 24 + .../scripts/cconfig.mk.makefile | 20 + .../cinit-0.3pre18/scripts/cinit.build-env | 12 + .../cinit-0.3pre18/scripts/cinit.get-confdir | 17 + .../cinit-0.3pre18/scripts/cinit.mkheader | 32 + .../cinit-0.3pre18/scripts/cinit.read-conf | 18 + .../scripts/configuration/README | 1 + .../configuration/freebsd/create_services.sh | 10 + .../configuration/freebsd/enable_services.sh | 10 + .../freebsd/search_enabled_services.sh | 12 + .../configuration/freebsd/search_services.sh | 12 + .../cinit-0.3pre18/scripts/future-bin/README | 1 + .../cinit-conf.migrate.sysvinit.debian | 126 + .../cinit-conf.migrate.sysvinit.debian.sid | 139 + .../future-bin/cinit-conf.miniconf.linux | 103 + .../future-bin/cinit-conf.miniconf.linux.todo | 4 + .../scripts/future-bin/cinit.install.test | 20 + .../future-bin/cinit.install.test.todo | 1 + .../future-bin/migrate-linux-debian-lenny.sh | 34 + .../cinit-0.3pre18/scripts/install/README | 1 + .../scripts/install/cinit.install.binary | 30 + .../scripts/install/cinit.install.dir | 14 + .../cinit-0.3pre18/scripts/internal/README | 1 + .../scripts/internal/cinit.release | 82 + .../scripts/internal/compile+run.sh | 20 + .../scripts/internal/compile_local.sh | 24 + .../internal/compile_run_as_compiler.sh | 14 + .../scripts/internal/compile_test.sh | 8 + .../scripts/internal/create_test_config.sh | 18 + .../scripts/internal/find_right_version.sh | 24 + .../scripts/internal/indent_script | 67 + .../scripts/internal/old/cdoc-man.sh | 57 + .../scripts/internal/qemu-test.sh | 22 + .../scripts/internal/stop_cinit.sh | 4 + .../scripts/internal/test-cmd.sh | 11 + .../scripts/internal/test/cinit-conf.sh | 23 + .../scripts/internal/test/cinit.uml.test | 40 + .../scripts/internal/test_on_hosts.sh | 12 + .../cinit-0.3pre18/scripts/internal/valgrind | 1 + .../cinit-0.3pre18/scripts/report.compile | 18 + .../cinit-0.3pre18/scripts/vm/README | 2 + .../cinit-0.3pre18/scripts/vm/qemu-start.sh | 5 + .../scripts/vm/uml-dir-start-plain.sh | 26 + .../scripts/vm/uml-img-start-cinit.sh | 26 + .../scripts/vm/uml-img-start-plain.sh | 26 + .../cinit-0.3pre18/scripts/vm/uml-mount.sh | 3 + .../cinit-0.3pre18/scripts/vm/uml-shell.sh | 5 + .../cinit-0.3pre18/scripts/vm/uml-umount.sh | 3 + .../scripts/wrapper/linux-sysvinit/shutdown | 207 + .../cinit-0.3pre18/size/2005-04-26-14:54:44 | 1 + .../cinit-0.3pre18/size/2005-04-26-16:47:50 | 1 + .../cinit-0.3pre18/size/2005-04-26-16:48:48 | 1 + .../cinit-0.3pre18/size/2005-04-26-16:50:45 | 1 + .../cinit-0.3pre18/size/2005-04-26-17:12:48 | 1 + .../cinit-0.3pre18/size/2005-04-26-17:13:43 | 1 + .../cinit-0.3pre18/size/2005-04-26-23:05:33 | 1 + .../cinit-0.3pre18/size/2005-04-27-00:39:24 | 1 + .../cinit-0.3pre18/size/2005-04-30-15:18:22 | 1 + .../cinit-0.3pre18/size/2005-04-30-15:20:40 | 1 + .../cinit-0.3pre18/size/2005-04-30-15:23:25 | 1 + .../cinit-0.3pre18/size/2005-04-30-15:25:44 | 1 + .../cinit-0.3pre18/size/2005-04-30-15:32:43 | 1 + .../cinit-0.3pre18/size/2005-04-30-15:33:37 | 1 + .../cinit-0.3pre18/size/2005-04-30-15:41:08 | 1 + .../cinit-0.3pre18/size/2005-04-30-15:41:18 | 1 + .../cinit-0.3pre18/size/2005-04-30-15:46:09 | 1 + .../cinit-0.3pre18/size/2005-04-30-16:48:16 | 1 + .../cinit-0.3pre18/size/2005-04-30-16:50:05 | 1 + .../cinit-0.3pre18/size/2005-04-30-17:02:27 | 0 .../cinit-0.3pre18/size/2005-04-30-17:03:00 | 0 .../cinit-0.3pre18/size/2005-04-30-17:05:11 | 1 + .../cinit-0.3pre18/size/2005-04-30-17:06:15 | 1 + .../cinit-0.3pre18/size/2005-04-30-17:11:59 | 1 + .../cinit-0.3pre18/size/2005-04-30-17:13:43 | 1 + .../cinit-0.3pre18/size/2005-04-30-22:28:13 | 1 + .../cinit-0.3pre18/size/2005-04-30-22:34:23 | 1 + .../cinit-0.3pre18/size/2005-05-02-13:27:51 | 1 + .../cinit-0.3pre18/size/2005-05-02-13:46:31 | 1 + .../cinit-0.3pre18/size/2005-05-02-13:49:29 | 1 + .../cinit-0.3pre18/size/2005-05-02-13:49:58 | 1 + .../cinit-0.3pre18/size/2005-05-02-13:52:20 | 1 + .../cinit-0.3pre18/size/2005-05-02-13:55:50 | 1 + .../cinit-0.3pre18/size/2005-05-02-13:58:14 | 1 + .../cinit-0.3pre18/size/2005-05-02-13:59:53 | 1 + .../cinit-0.3pre18/size/2005-05-02-14:00:26 | 1 + .../cinit-0.3pre18/size/2005-05-02-14:04:19 | 1 + .../cinit-0.3pre18/size/2005-05-06-15:47:56 | 1 + .../cinit-0.3pre18/size/2005-05-06-20:02:41 | 1 + .../cinit-0.3pre18/size/2005-05-06-20:39:08 | 1 + .../cinit-0.3pre18/size/2005-05-06-20:40:55 | 1 + .../cinit-0.3pre18/size/2005-05-06-20:44:39 | 1 + .../cinit-0.3pre18/size/2005-05-06-20:48:57 | 1 + .../cinit-0.3pre18/size/2005-05-06-20:49:46 | 1 + .../cinit-0.3pre18/size/2005-05-06-20:54:45 | 1 + .../cinit-0.3pre18/size/2005-05-06-20:57:17 | 1 + .../cinit-0.3pre18/size/2005-05-06-21:07:11 | 1 + .../cinit-0.3pre18/size/2005-05-06-22:22:43 | 1 + .../cinit-0.3pre18/size/2005-05-06-22:39:12 | 1 + .../cinit-0.3pre18/size/2005-05-06-22:43:21 | 1 + .../cinit-0.3pre18/size/2005-05-06-22:54:00 | 1 + .../cinit-0.3pre18/size/2005-05-06-22:55:07 | 1 + .../cinit-0.3pre18/size/2005-05-06-22:56:58 | 1 + .../cinit-0.3pre18/size/2005-05-06-22:58:39 | 1 + .../cinit-0.3pre18/size/2005-05-06-22:59:17 | 1 + .../cinit-0.3pre18/size/2005-05-06-23:00:07 | 1 + .../cinit-0.3pre18/size/2005-05-06-23:19:24 | 1 + .../cinit-0.3pre18/size/2005-05-06-23:53:59 | 1 + .../cinit-0.3pre18/size/2005-05-07-00:18:32 | 1 + .../cinit-0.3pre18/size/2005-05-07-00:20:46 | 1 + .../cinit-0.3pre18/size/2005-05-07-00:24:11 | 1 + .../cinit-0.3pre18/size/2005-05-07-00:26:55 | 1 + .../cinit-0.3pre18/size/2005-05-07-00:27:53 | 1 + .../cinit-0.3pre18/size/2005-05-07-00:28:24 | 1 + .../cinit-0.3pre18/size/2005-05-07-00:31:01 | 1 + .../cinit-0.3pre18/size/2005-05-07-00:37:58 | 1 + .../cinit-0.3pre18/size/2005-05-07-00:39:02 | 1 + .../cinit-0.3pre18/size/2005-05-07-00:41:50 | 1 + .../cinit-0.3pre18/size/2005-05-07-00:43:08 | 1 + .../cinit-0.3pre18/size/2005-05-07-00:55:51 | 1 + .../cinit-0.3pre18/size/2005-05-07-00:59:30 | 1 + .../cinit-0.3pre18/size/2005-05-07-01:07:13 | 1 + .../cinit-0.3pre18/size/2005-05-07-01:08:19 | 1 + .../cinit-0.3pre18/size/2005-05-07-01:16:38 | 1 + .../cinit-0.3pre18/size/2005-05-07-01:19:48 | 1 + .../cinit-0.3pre18/size/2005-05-07-01:52:58 | 1 + .../cinit-0.3pre18/size/2005-05-07-12:41:29 | 1 + .../cinit-0.3pre18/size/2005-05-07-12:43:55 | 1 + .../cinit-0.3pre18/size/2005-05-07-12:45:38 | 1 + .../cinit-0.3pre18/size/2005-05-07-12:48:21 | 1 + .../cinit-0.3pre18/size/2005-05-07-12:49:22 | 1 + .../cinit-0.3pre18/size/2005-05-07-12:50:57 | 1 + .../cinit-0.3pre18/size/2005-05-07-12:52:26 | 1 + .../cinit-0.3pre18/size/2005-05-07-12:54:04 | 1 + .../cinit-0.3pre18/size/2005-05-07-12:57:56 | 1 + .../cinit-0.3pre18/size/2005-05-07-13:06:20 | 1 + .../cinit-0.3pre18/size/2005-05-07-13:18:00 | 1 + .../cinit-0.3pre18/size/2005-05-07-13:21:37 | 1 + .../cinit-0.3pre18/size/2005-05-07-13:24:40 | 1 + .../cinit-0.3pre18/size/2005-05-07-13:25:56 | 1 + .../cinit-0.3pre18/size/2005-05-07-13:26:49 | 1 + .../cinit-0.3pre18/size/2005-05-07-13:30:20 | 1 + .../cinit-0.3pre18/size/2005-05-07-13:33:50 | 1 + .../cinit-0.3pre18/size/2005-05-07-13:51:24 | 1 + .../cinit-0.3pre18/size/2005-05-07-13:53:11 | 1 + .../cinit-0.3pre18/size/2005-05-07-13:53:22 | 1 + .../cinit-0.3pre18/size/2005-05-07-13:57:27 | 1 + .../cinit-0.3pre18/size/2005-05-07-13:58:26 | 1 + .../cinit-0.3pre18/size/2005-05-07-14:00:47 | 1 + .../cinit-0.3pre18/size/2005-05-07-14:12:17 | 1 + .../cinit-0.3pre18/size/2005-05-07-14:14:00 | 1 + .../cinit-0.3pre18/size/2005-05-07-14:40:38 | 1 + .../cinit-0.3pre18/size/2005-05-07-14:43:08 | 1 + .../cinit-0.3pre18/size/2005-05-07-14:46:22 | 1 + .../cinit-0.3pre18/size/2005-05-07-14:48:01 | 1 + .../cinit-0.3pre18/size/2005-05-07-14:49:20 | 1 + .../cinit-0.3pre18/size/2005-05-07-14:54:30 | 1 + .../cinit-0.3pre18/size/2005-05-07-14:55:05 | 1 + .../cinit-0.3pre18/size/2005-05-07-14:56:35 | 1 + .../cinit-0.3pre18/size/2005-05-07-15:01:01 | 1 + .../cinit-0.3pre18/size/2005-05-07-15:11:31 | 1 + .../cinit-0.3pre18/size/2005-05-07-15:19:50 | 1 + .../cinit-0.3pre18/size/2005-05-07-15:20:58 | 1 + .../cinit-0.3pre18/size/2005-05-07-15:24:21 | 1 + .../cinit-0.3pre18/size/2005-05-07-15:27:00 | 1 + .../cinit-0.3pre18/size/2005-05-07-15:28:54 | 1 + .../cinit-0.3pre18/size/2005-05-07-15:40:58 | 1 + .../cinit-0.3pre18/size/2005-05-07-16:11:52 | 1 + .../cinit-0.3pre18/size/2005-05-07-16:20:02 | 1 + .../cinit-0.3pre18/size/2005-05-07-16:26:18 | 1 + .../cinit-0.3pre18/size/2005-05-07-16:31:09 | 1 + .../cinit-0.3pre18/size/2005-05-07-16:35:42 | 1 + .../cinit-0.3pre18/size/2005-05-07-16:50:11 | 1 + .../cinit-0.3pre18/size/2005-05-07-16:50:40 | 1 + .../cinit-0.3pre18/size/2005-05-07-17:03:50 | 1 + .../cinit-0.3pre18/size/2005-05-07-17:07:50 | 1 + .../cinit-0.3pre18/size/2005-05-07-17:08:09 | 1 + .../cinit-0.3pre18/size/2005-05-07-17:08:26 | 1 + .../cinit-0.3pre18/size/2005-05-07-17:10:57 | 1 + .../cinit-0.3pre18/size/2005-05-07-18:24:22 | 1 + .../cinit-0.3pre18/size/2005-05-07-18:24:59 | 1 + .../cinit-0.3pre18/size/2005-05-07-18:37:23 | 1 + .../cinit-0.3pre18/size/2005-05-07-18:49:16 | 1 + .../cinit-0.3pre18/size/2005-05-08-10:44:00 | 1 + .../cinit-0.3pre18/size/2005-05-08-12:41:22 | 0 .../cinit-0.3pre18/size/2005-05-08-12:42:08 | 1 + .../cinit-0.3pre18/size/2005-05-08-12:42:57 | 1 + .../cinit-0.3pre18/size/2005-05-08-22:41:37 | 1 + .../cinit-0.3pre18/size/2005-05-08-23:03:37 | 1 + .../cinit-0.3pre18/size/2005-05-08-23:11:20 | 1 + .../cinit-0.3pre18/size/2005-05-08-23:40:29 | 1 + .../cinit-0.3pre18/size/2005-05-09-12:03:27 | 1 + .../cinit-0.3pre18/size/2005-05-09-12:05:57 | 1 + .../cinit-0.3pre18/size/2005-05-10-19:10:50 | 1 + .../cinit-0.3pre18/size/2005-05-10-19:16:39 | 1 + .../cinit-0.3pre18/size/2005-05-10-19:25:05 | 1 + .../cinit-0.3pre18/size/2005-05-10-19:26:14 | 1 + .../cinit-0.3pre18/size/2005-05-10-19:39:23 | 1 + .../cinit-0.3pre18/size/2005-05-10-20:13:51 | 1 + .../cinit-0.3pre18/size/2005-05-10-20:14:40 | 1 + .../cinit-0.3pre18/size/2005-05-10-20:27:10 | 1 + .../cinit-0.3pre18/size/2005-05-10-20:28:11 | 1 + .../cinit-0.3pre18/size/2005-05-10-20:28:31 | 1 + .../cinit-0.3pre18/size/2005-05-10-20:30:03 | 1 + .../cinit-0.3pre18/size/2005-05-10-20:32:29 | 1 + .../cinit-0.3pre18/size/2005-05-10-20:33:30 | 1 + .../cinit-0.3pre18/size/2005-05-10-20:38:26 | 1 + .../cinit-0.3pre18/size/2005-05-10-21:52:18 | 1 + .../cinit-0.3pre18/size/2005-05-10-21:54:00 | 1 + .../cinit-0.3pre18/size/2005-05-10-22:06:53 | 1 + .../cinit-0.3pre18/size/2005-05-10-22:07:06 | 1 + .../cinit-0.3pre18/size/2005-05-10-22:24:49 | 1 + .../cinit-0.3pre18/size/2005-05-10-22:27:59 | 1 + .../cinit-0.3pre18/size/2005-05-10-22:30:25 | 1 + .../cinit-0.3pre18/size/2005-05-10-23:42:29 | 1 + .../cinit-0.3pre18/size/2005-05-10-23:44:10 | 1 + .../cinit-0.3pre18/size/2005-05-10-23:46:40 | 1 + .../cinit-0.3pre18/size/2005-05-11-00:14:02 | 1 + .../cinit-0.3pre18/size/2005-05-11-00:17:19 | 1 + .../cinit-0.3pre18/size/2005-05-11-00:23:52 | 1 + .../cinit-0.3pre18/size/2005-05-11-08:04:16 | 1 + .../cinit-0.3pre18/size/2005-05-11-08:06:26 | 1 + .../cinit-0.3pre18/size/2005-05-11-08:09:49 | 1 + .../cinit-0.3pre18/size/2005-05-11-08:11:49 | 1 + .../cinit-0.3pre18/size/2005-05-13-20:34:19 | 1 + .../cinit-0.3pre18/size/2005-05-13-22:33:53 | 1 + .../cinit-0.3pre18/size/2005-05-15-22:32:07 | 1 + .../cinit-0.3pre18/size/2005-05-15-23:52:06 | 1 + .../cinit-0.3pre18/size/2005-05-15-23:56:00 | 1 + .../cinit-0.3pre18/size/2005-05-16-00:16:09 | 1 + .../cinit-0.3pre18/size/2005-05-16-00:20:52 | 1 + .../cinit-0.3pre18/size/2005-05-16-00:23:43 | 1 + .../cinit-0.3pre18/size/2005-05-16-00:27:36 | 1 + .../cinit-0.3pre18/size/2005-05-16-00:37:24 | 1 + .../cinit-0.3pre18/size/2005-05-16-00:39:43 | 1 + .../cinit-0.3pre18/size/2005-05-16-09:58:08 | 1 + .../cinit-0.3pre18/size/2005-05-16-10:09:00 | 1 + .../cinit-0.3pre18/size/2005-05-16-10:13:07 | 1 + .../cinit-0.3pre18/size/2005-05-16-10:14:43 | 1 + .../cinit-0.3pre18/size/2005-05-16-10:23:05 | 1 + .../cinit-0.3pre18/size/2005-05-16-10:27:48 | 1 + .../cinit-0.3pre18/size/2005-05-16-10:44:17 | 1 + .../cinit-0.3pre18/size/2005-05-16-10:52:29 | 1 + .../cinit-0.3pre18/size/2005-05-17-00:19:15 | 1 + .../cinit-0.3pre18/size/2005-05-17-16:02:33 | 1 + .../cinit-0.3pre18/size/2005-05-21-14:56:01 | 1 + .../cinit-0.3pre18/size/2005-05-21-15:01:28 | 1 + .../cinit-0.3pre18/size/2005-05-21-15:03:46 | 1 + .../cinit-0.3pre18/size/2005-05-21-15:06:24 | 1 + .../cinit-0.3pre18/size/2005-05-21-15:12:50 | 1 + .../cinit-0.3pre18/size/2005-05-21-15:14:38 | 1 + .../cinit-0.3pre18/size/2005-05-21-15:15:28 | 1 + .../cinit-0.3pre18/size/2005-05-21-15:16:15 | 1 + .../cinit-0.3pre18/size/2005-05-21-15:26:25 | 1 + .../cinit-0.3pre18/size/2005-05-21-15:27:30 | 1 + .../cinit-0.3pre18/size/2005-05-21-15:32:52 | 1 + .../cinit-0.3pre18/size/2005-05-21-15:35:00 | 1 + .../cinit-0.3pre18/size/2005-05-21-15:36:19 | 1 + .../cinit-0.3pre18/size/2005-05-21-17:05:20 | 1 + .../cinit-0.3pre18/size/2005-05-21-17:08:31 | 1 + .../cinit-0.3pre18/size/2005-05-21-17:11:25 | 1 + .../cinit-0.3pre18/size/2005-05-21-17:12:15 | 1 + .../cinit-0.3pre18/size/2005-05-21-17:12:49 | 1 + .../cinit-0.3pre18/size/2005-05-21-17:33:25 | 1 + .../cinit-0.3pre18/size/2005-05-21-17:47:39 | 1 + .../cinit-0.3pre18/size/2005-05-21-17:47:52 | 1 + .../cinit-0.3pre18/size/2005-05-23-21:04:37 | 1 + .../cinit-0.3pre18/size/2005-05-26-07:55:38 | 1 + .../cinit-0.3pre18/size/2005-05-26-08:27:51 | 1 + .../cinit-0.3pre18/size/2005-05-26-08:32:19 | 1 + .../cinit-0.3pre18/size/2005-05-27-05:51:30 | 1 + .../cinit-0.3pre18/size/2005-06-04-00:23:43 | 1 + .../cinit-0.3pre18/size/2005-06-04-10:08:43 | 1 + .../cinit-0.3pre18/size/2005-06-04-10:54:35 | 1 + .../cinit-0.3pre18/size/2005-06-05-12:34:54 | 1 + .../cinit-0.3pre18/size/2005-06-05-12:41:25 | 1 + .../cinit-0.3pre18/size/2005-06-05-14:40:37 | 1 + .../cinit-0.3pre18/size/2005-06-08-09:48:34 | 1 + .../cinit-0.3pre18/size/2005-06-08-10:09:27 | 1 + .../cinit-0.3pre18/size/2005-06-08-10:23:04 | 1 + .../cinit-0.3pre18/size/2005-06-09-08:44:09 | 1 + .../cinit-0.3pre18/size/2005-06-09-09:59:47 | 0 .../cinit-0.3pre18/size/2005-06-09-10:00:08 | 0 .../cinit-0.3pre18/size/2005-06-09-10:00:40 | 0 .../cinit-0.3pre18/size/2005-06-09-11:27:17 | 1 + .../cinit-0.3pre18/size/2005-06-09-11:28:30 | 1 + .../cinit-0.3pre18/size/2005-06-09-11:46:28 | 1 + .../cinit-0.3pre18/size/2005-06-09-11:47:04 | 1 + .../cinit-0.3pre18/size/2005-06-10-07:07:35 | 1 + .../cinit-0.3pre18/size/2005-06-10-18:14:05 | 1 + .../cinit-0.3pre18/size/2005-06-10-18:14:28 | 1 + .../cinit-0.3pre18/size/2005-06-10-18:18:11 | 1 + .../cinit-0.3pre18/size/2005-06-11-16:28:13 | 1 + .../cinit-0.3pre18/size/2005-06-11-19:13:20 | 1 + .../cinit-0.3pre18/size/2005-06-11-19:22:16 | 1 + .../cinit-0.3pre18/size/2005-06-11-19:25:11 | 1 + .../cinit-0.3pre18/size/2005-06-12-18:09:08 | 1 + .../cinit-0.3pre18/size/2005-06-12-18:09:22 | 1 + .../cinit-0.3pre18/size/2005-06-13-08:13:08 | 1 + .../cinit-0.3pre18/size/2005-06-13-13:28:35 | 1 + .../cinit-0.3pre18/size/2005-06-13-21:23:15 | 1 + .../cinit-0.3pre18/size/2005-06-13-21:26:52 | 3 + .../cinit-0.3pre18/size/2005-06-13-21:57:26 | 3 + .../cinit-0.3pre18/size/2005-06-14-06:35:49 | 3 + .../cinit-0.3pre18/size/2005-06-14-09:51:51 | 3 + .../cinit-0.3pre18/size/2005-06-14-09:58:58 | 3 + .../cinit-0.3pre18/size/2005-06-14-10:01:02 | 3 + .../cinit-0.3pre18/size/2005-06-14-13:16:40 | 3 + .../cinit-0.3pre18/size/2005-06-14-13:21:47 | 3 + .../cinit-0.3pre18/size/2005-06-14-13:26:18 | 3 + .../cinit-0.3pre18/size/2005-06-15-06:38:49 | 3 + .../cinit-0.3pre18/size/2005-06-15-06:46:05 | 3 + .../cinit-0.3pre18/size/2005-06-15-09:17:57 | 2 + .../cinit-0.3pre18/size/2005-06-15-11:13:26 | 3 + .../cinit-0.3pre18/size/2005-06-15-11:16:39 | 3 + .../cinit-0.3pre18/size/2005-06-15-11:30:39 | 3 + .../cinit-0.3pre18/size/2005-06-15-11:31:16 | 3 + .../cinit-0.3pre18/size/2005-06-15-14:08:57 | 3 + .../cinit-0.3pre18/size/2005-06-15-14:19:46 | 3 + .../cinit-0.3pre18/size/2005-06-15-20:37:50 | 3 + .../cinit-0.3pre18/size/2005-06-16-12:18:07 | 3 + .../cinit-0.3pre18/size/2005-06-16-14:18:59 | 3 + .../cinit-0.3pre18/size/2005-06-16-14:19:22 | 3 + .../cinit-0.3pre18/size/2005-06-17-19:03:48 | 3 + .../cinit-0.3pre18/size/2005-06-20-12:16:40 | 3 + .../cinit-0.3pre18/size/2005-06-20-15:16:31 | 3 + .../cinit-0.3pre18/size/2005-06-20-16:29:28 | 3 + .../cinit-0.3pre18/size/2005-06-20-16:29:50 | 3 + .../cinit-0.3pre18/size/2005-06-21-11:53:35 | 3 + .../cinit-0.3pre18/size/2005-06-22-07:33:11 | 3 + .../cinit-0.3pre18/size/2005-06-22-07:57:13 | 3 + .../cinit-0.3pre18/size/2005-06-22-08:08:40 | 3 + .../cinit-0.3pre18/size/2005-06-22-08:30:42 | 3 + .../cinit-0.3pre18/size/2005-06-22-09:19:42 | 3 + .../cinit-0.3pre18/size/2005-06-22-10:35:02 | 3 + .../cinit-0.3pre18/size/2005-06-22-10:43:24 | 3 + .../cinit-0.3pre18/size/2005-06-22-12:42:57 | 3 + .../cinit-0.3pre18/size/2005-06-22-13:52:41 | 3 + .../cinit-0.3pre18/size/2005-06-22-13:59:40 | 3 + .../cinit-0.3pre18/size/2005-06-22-14:19:41 | 3 + .../cinit-0.3pre18/size/2005-06-22-14:37:18 | 3 + .../cinit-0.3pre18/size/2005-06-23-06:22:23 | 3 + .../cinit-0.3pre18/size/2005-06-24-17:53:55 | 3 + .../cinit-0.3pre18/size/2005-06-24-17:55:29 | 3 + .../cinit-0.3pre18/size/2005-06-25-11:56:07 | 3 + .../cinit-0.3pre18/size/2005-06-26-13:19:49 | 3 + .../cinit-0.3pre18/size/2005-07-06-08:07:13 | 3 + .../cinit-0.3pre18/size/2005-07-06-08:11:07 | 3 + .../cinit-0.3pre18/size/2005-07-06-08:12:20 | 3 + .../cinit-0.3pre18/size/2005-07-06-08:13:39 | 3 + .../cinit-0.3pre18/size/2005-07-06-08:14:19 | 3 + .../cinit-0.3pre18/size/2005-07-06-08:14:59 | 3 + .../cinit-0.3pre18/size/2005-07-06-08:15:56 | 3 + .../cinit-0.3pre18/size/2005-07-06-10:08:05 | 3 + .../cinit-0.3pre18/size/2005-07-06-10:12:22 | 3 + .../cinit-0.3pre18/size/2005-07-06-10:12:31 | 3 + .../cinit-0.3pre18/size/2005-07-06-10:12:49 | 3 + .../cinit-0.3pre18/size/2005-07-06-10:13:08 | 3 + .../cinit-0.3pre18/size/2005-08-08-01:00:08 | 3 + .../cinit-0.3pre18/size/2005-08-29-21:21:34 | 3 + .../cinit-0.3pre18/size/2005-08-29-21:48:00 | 3 + .../cinit-0.3pre18/size/2005-08-29-23:50:55 | 3 + .../cinit-0.3pre18/size/2005-09-03-03:36:59 | 3 + .../cinit-0.3pre18/size/2005-09-03-04:34:35 | 3 + .../cinit-0.3pre18/size/2005-09-03-05:51:17 | 3 + .../cinit-0.3pre18/size/2005-09-03-05:54:20 | 4 + .../cinit-0.3pre18/size/2005-09-03-05:57:00 | 4 + .../cinit-0.3pre18/size/2005-09-03-05:58:07 | 4 + .../cinit-0.3pre18/size/2005-09-03-09:01:59 | 4 + .../cinit-0.3pre18/size/2005-09-05-19:41:12 | 4 + .../cinit-0.3pre18/size/2005-09-05-19:50:35 | 4 + .../cinit-0.3pre18/size/2005-09-24-01:42:38 | 4 + .../cinit-0.3pre18/size/2005-09-30-22:50:50 | 4 + .../cinit-0.3pre18/size/2005-09-30-23:06:39 | 4 + .../cinit-0.3pre18/size/2005-10-01-22:09:13 | 4 + .../cinit-0.3pre18/size/2005-10-01-22:17:39 | 4 + .../cinit-0.3pre18/size/2005-10-02-11:12:29 | 4 + .../cinit-0.3pre18/size/2005-10-02-11:13:35 | 4 + .../cinit-0.3pre18/size/2005-10-02-11:13:43 | 4 + .../cinit-0.3pre18/size/2005-10-02-16:00:24 | 4 + .../cinit-0.3pre18/size/2005-10-02-23:17:11 | 4 + .../cinit-0.3pre18/size/2005-10-03-00:54:39 | 4 + .../cinit-0.3pre18/size/2005-10-03-00:56:29 | 4 + .../cinit-0.3pre18/size/2005-10-13-09:43:02 | 4 + .../cinit-0.3pre18/size/2005-10-13-09:51:08 | 4 + .../cinit-0.3pre18/size/2005-10-13-09:55:52 | 4 + .../cinit-0.3pre18/size/2005-10-13-09:57:11 | 4 + .../cinit-0.3pre18/size/2005-10-13-09:58:04 | 4 + .../cinit-0.3pre18/size/2005-10-13-10:07:28 | 4 + .../cinit-0.3pre18/size/2005-10-15-15:26:52 | 4 + .../cinit-0.3pre18/size/2005-10-15-21:23:56 | 4 + .../cinit-0.3pre18/size/2005-11-17-17:03:53 | 4 + .../cinit-0.3pre18/size/2006-02-11-23:45:54 | 4 + .../cinit-0.3pre18/size/2006-02-12-00:06:11 | 4 + .../cinit-0.3pre18/size/2006-02-12-00:06:42 | 4 + .../cinit-0.3pre18/size/2006-02-12-00:08:24 | 4 + .../cinit-0.3pre18/size/2006-02-12-00:09:33 | 4 + .../cinit-0.3pre18/size/2006-02-12-00:13:32 | 4 + .../cinit-0.3pre18/size/2006-02-16-23:57:29 | 4 + .../cinit-0.3pre18/size/2006-02-17-00:16:18 | 4 + .../cinit-0.3pre18/size/2006-02-17-00:31:08 | 4 + .../cinit-0.3pre18/size/2006-02-17-22:48:35 | 4 + .../cinit-0.3pre18/size/2006-02-20-20:03:54 | 4 + .../cinit-0.3pre18/size/2006-02-20-20:04:33 | 4 + .../cinit-0.3pre18/size/2006-02-20-20:04:36 | 4 + .../cinit-0.3pre18/size/2006-02-20-20:07:47 | 4 + .../cinit-0.3pre18/size/2006-02-20-20:08:04 | 4 + .../cinit-0.3pre18/size/2006-02-20-20:12:33 | 4 + .../cinit-0.3pre18/size/2006-02-20-20:14:56 | 4 + .../cinit-0.3pre18/size/2006-06-01-23:32:43 | 4 + .../cinit-0.3pre18/size/2006-06-02-01:08:28 | 4 + .../cinit-0.3pre18/size/2006-06-02-01:29:13 | 4 + .../cinit-0.3pre18/size/2006-06-02-11:13:39 | 4 + .../cinit-0.3pre18/size/2006-06-02-11:36:37 | 4 + .../cinit-0.3pre18/size/2006-06-02-11:46:07 | 4 + .../cinit-0.3pre18/size/2006-06-02-15:17:17 | 4 + .../cinit-0.3pre18/size/2006-06-02-15:19:05 | 4 + .../cinit-0.3pre18/size/2006-06-02-15:19:52 | 4 + .../cinit-0.3pre18/size/2006-11-29-235707 | 1 + .../cinit-0.3pre18/size/2006-11-29-235834 | 1 + .../cinit-0.3pre18/size/2006-12-02-172536 | 1 + .../cinit-0.3pre18/size/2006-12-02-174429 | 1 + .../cinit-0.3pre18/size/2006-12-02-182536 | 1 + .../cinit-0.3pre18/size/2006-12-03-173231 | 1 + .../cinit-0.3pre18/size/2006-12-03-174544 | 1 + .../cinit-0.3pre18/size/2006-12-03-185602 | 1 + .../cinit-0.3pre18/size/2006-12-03-185901 | 1 + .../cinit-0.3pre18/size/2006-12-03-191215 | 1 + .../cinit-0.3pre18/size/2006-12-06-084947 | 1 + .../cinit-0.3pre18/size/2006-12-06-180205 | 1 + .../cinit-0.3pre18/size/2006-12-14-213559 | 1 + .../cinit-0.3pre18/size/2006-12-14-213702 | 1 + .../cinit-0.3pre18/size/2006-12-14-213717 | 1 + .../cinit-0.3pre18/size/2006-12-14-213739 | 1 + .../cinit-0.3pre18/size/2006-12-14-215315 | 1 + .../cinit-0.3pre18/size/2006-12-14-215334 | 1 + .../cinit-0.3pre18/size/2007-02-17-210059 | 1 + .../cinit-0.3pre18/size/2007-02-23-202443 | 1 + .../cinit-0.3pre18/size/2007-02-23-202720 | 1 + .../cinit-0.3pre18/size/2007-03-07-231936 | 1 + .../cinit-0.3pre18/size/2007-04-06-011811 | 1 + .../cinit-0.3pre18/size/2009-09-29-075620 | 1 + .../browse_source/cinit-0.3pre18/src/Makefile | 185 + .../cinit-0.3pre18/src/Makefile.tests | 27 + .../cinit-0.3pre18/src/ancient/README | 4 + .../cinit-0.3pre18/src/ancient/STOPPED | 12 + .../cinit-0.3pre18/src/ancient/ccontrol.c | 94 + .../src/ancient/charp_to_flag.c | 43 + .../src/ancient/cinit_get_svc_status.c01 | 54 + .../cinit-0.3pre18/src/ancient/comm.h | 81 + .../cinit-0.3pre18/src/ancient/cservice.c | 164 + .../src/ancient/do_change_status.c | 72 + .../src/ancient/do_reboot.c.orig | 144 + .../cinit-0.3pre18/src/ancient/do_result.c | 35 + .../cinit-0.3pre18/src/ancient/do_svc_name.c | 59 + .../cinit-0.3pre18/src/ancient/exec_svc.c | 298 + .../cinit-0.3pre18/src/ancient/main.c | 106 + .../src/ancient/msg_change_status.c | 30 + .../cinit-0.3pre18/src/ancient/msg_reboot.c | 21 + .../src/ancient/msg_svc_on_off.c | 26 + .../cinit-0.3pre18/src/ancient/pipes | 17 + .../cinit-0.3pre18/src/ancient/respawn_svc.c | 114 + .../cinit-0.3pre18/src/ancient/run_init_svc.c | 57 + .../src/ancient/run_init_svc2.c | 58 + .../cinit-0.3pre18/src/ancient/run_run_svcs.c | 95 + .../cinit-0.3pre18/src/ancient/run_svc.c | 144 + .../src/ancient/set_signals.c01 | 40 + .../src/ancient/sig_terminate.c | 73 + .../cinit-0.3pre18/src/ancient/test-signal.c | 56 + .../ancient/unused-coded/cinit_read_from.c | 23 + .../cinit-0.3pre18/src/client/cmd.c | 259 + .../cinit-0.3pre18/src/client/halt.kill.c | 25 + .../cinit-0.3pre18/src/client/poweroff.kill.c | 25 + .../cinit-0.3pre18/src/client/reboot.kill.c | 25 + .../cinit-0.3pre18/src/comm/README | 22 + .../src/comm/answer_svc_disable.c | 45 + .../cinit-0.3pre18/src/comm/answer_svc_pid.c | 42 + .../src/comm/answer_svc_status.c | 43 + .../cinit-0.3pre18/src/comm/answer_svc_stop.c | 43 + .../cinit-0.3pre18/src/comm/answer_version.c | 35 + .../src/comm/cinit_append_data.c | 32 + .../cinit-0.3pre18/src/comm/cinit_cp_data.c | 32 + .../cinit-0.3pre18/src/comm/read_command.c | 66 + .../cinit-0.3pre18/src/core/build_argv.c | 193 + .../cinit-0.3pre18/src/core/cinit.c | 127 + .../cinit-0.3pre18/src/core/do_reboot.c | 93 + .../cinit-0.3pre18/src/core/panic.c | 50 + .../cinit-0.3pre18/src/core/set_signals.c | 65 + .../cinit-0.3pre18/src/core/sig_child.c | 34 + .../cinit-0.3pre18/src/core/signal_init_map.c | 66 + .../src/generic/execute_and_wait.c | 52 + .../cinit-0.3pre18/src/generic/execute_sth.c | 41 + .../cinit-0.3pre18/src/generic/file_exists.c | 66 + .../cinit-0.3pre18/src/generic/mini_printf.c | 37 + .../src/generic/openreadclose.c | 77 + .../src/generic/path_absolute.c | 56 + .../cinit-0.3pre18/src/generic/path_append.c | 31 + .../cinit-0.3pre18/src/generic/print_errno.c | 25 + .../src/generic/sleep_before_kill.c | 56 + .../src/generic/strip_final_newline.c | 36 + .../cinit-0.3pre18/src/generic/usage.c | 24 + .../cinit-0.3pre18/src/include/build_argv.h | 52 + .../cinit-0.3pre18/src/include/cinit.h | 112 + .../cinit-0.3pre18/src/include/cmd.h | 53 + .../cinit-0.3pre18/src/include/intern.h | 125 + .../cinit-0.3pre18/src/include/ipc.h | 55 + .../cinit-0.3pre18/src/include/listing | 8 + .../cinit-0.3pre18/src/include/messages.h | 169 + .../cinit-0.3pre18/src/include/os.h | 34 + .../cinit-0.3pre18/src/include/reboot.h | 49 + .../cinit-0.3pre18/src/include/signals.h | 61 + .../cinit-0.3pre18/src/include/svc-intern.h | 108 + .../cinit-0.3pre18/src/include/svc-messages.h | 48 + .../cinit-0.3pre18/src/include/svc.h | 66 + .../cinit-0.3pre18/src/ipc/msgq-rt/README | 2 + .../src/ipc/msgq-rt/cinit_ipc_init.c | 21 + .../cinit-0.3pre18/src/ipc/msgq-rt/mq_open.c | 20 + .../cinit-0.3pre18/src/ipc/msgq-rt/msgq-rt.h | 39 + .../cinit-0.3pre18/src/ipc/msgq/README.text | 20 + .../src/ipc/msgq/cinit_ipc_cread.c | 28 + .../src/ipc/msgq/cinit_ipc_csend.c | 31 + .../src/ipc/msgq/cinit_ipc_destroy.c | 24 + .../src/ipc/msgq/cinit_ipc_init.c | 44 + .../src/ipc/msgq/cinit_ipc_listen.c | 69 + .../src/ipc/msgq/cinit_ipc_logoff.c | 14 + .../src/ipc/msgq/cinit_ipc_logon.c | 44 + .../cinit-0.3pre18/src/ipc/msgq/msgq.h | 58 + .../cinit-0.3pre18/src/ipc/msgq/objects | 5 + .../src/ipc/socket+linux-tmpfs/begin_msg.c | 24 + .../ipc/socket+linux-tmpfs/cinit_ipc_init.c | 125 + .../ipc/socket+linux-tmpfs/cinit_ipc_listen.c | 141 + .../src/ipc/socket+linux-tmpfs/connect_sock.c | 38 + .../cinit-0.3pre18/src/libcinit/README | 22 + .../src/libcinit/cinit_flag_to_uint32_t.c | 46 + .../src/libcinit/cinit_get_version.c | 38 + .../cinit-0.3pre18/src/libcinit/cinit_halt.c | 39 + .../src/libcinit/cinit_prepare_comm.c | 37 + .../src/libcinit/cinit_send_to.c | 41 + .../src/libcinit/cinit_svc_disable.c | 68 + .../src/libcinit/cinit_svc_enable.c | 48 + .../src/libcinit/cinit_svc_get_pid.c | 44 + .../src/libcinit/cinit_svc_get_status.c | 43 + .../cinit-0.3pre18/src/object_lists/cinit | 62 + .../cinit-0.3pre18/src/object_lists/cmd | 17 + .../cinit-0.3pre18/src/object_lists/halt.kill | 3 + .../src/object_lists/poweroff.kill | 3 + .../src/object_lists/reboot.kill | 3 + .../cinit-0.3pre18/src/os/freebsd/halt.c | 17 + .../cinit-0.3pre18/src/os/freebsd/objects | 3 + .../cinit-0.3pre18/src/os/freebsd/poweroff.c | 17 + .../cinit-0.3pre18/src/os/freebsd/reboot.c | 17 + .../cinit-0.3pre18/src/os/linux/halt.c | 16 + .../cinit-0.3pre18/src/os/linux/objects | 3 + .../cinit-0.3pre18/src/os/linux/poweroff.c | 17 + .../cinit-0.3pre18/src/os/linux/reboot.c | 17 + .../cinit-0.3pre18/src/os/netbsd/halt.c | 19 + .../cinit-0.3pre18/src/os/netbsd/objects | 3 + .../cinit-0.3pre18/src/os/netbsd/poweroff.c | 19 + .../cinit-0.3pre18/src/os/netbsd/reboot.c | 19 + .../cinit-0.3pre18/src/os/openbsd/halt.c | 17 + .../cinit-0.3pre18/src/os/openbsd/objects | 3 + .../cinit-0.3pre18/src/os/openbsd/poweroff.c | 17 + .../cinit-0.3pre18/src/os/openbsd/reboot.c | 17 + .../cinit-0.3pre18/src/svc/check_add_deps.c | 128 + .../cinit-0.3pre18/src/svc/dep_create.c | 38 + .../cinit-0.3pre18/src/svc/dep_entry_add.c | 44 + .../cinit-0.3pre18/src/svc/dep_entry_del.c | 55 + .../src/svc/dep_needs_wants_add.c | 81 + .../cinit-0.3pre18/src/svc/gen_halt_tree.c | 64 + .../cinit-0.3pre18/src/svc/gen_svc_tree.c | 59 + .../src/svc/list_delete_byname.c | 47 + .../src/svc/list_delete_bypointer.c | 42 + .../cinit-0.3pre18/src/svc/list_display_all.c | 49 + .../cinit-0.3pre18/src/svc/list_insert.c | 57 + .../cinit-0.3pre18/src/svc/list_modify.c | 57 + .../cinit-0.3pre18/src/svc/list_search.c | 46 + .../cinit-0.3pre18/src/svc/list_search_pid.c | 45 + .../src/svc/shutdown_services.c | 48 + .../cinit-0.3pre18/src/svc/svc_add_needs.c | 92 + .../cinit-0.3pre18/src/svc/svc_create.c | 56 + .../cinit-0.3pre18/src/svc/svc_disable.c | 107 + .../cinit-0.3pre18/src/svc/svc_fail.c | 38 + .../src/svc/svc_handle_pending.c | 110 + .../cinit-0.3pre18/src/svc/svc_needs_status.c | 62 + .../src/svc/svc_report_status.c | 39 + .../src/svc/svc_respawn_check.c | 40 + .../cinit-0.3pre18/src/svc/svc_set_status.c | 37 + .../src/svc/svc_should_respawn.c | 32 + .../cinit-0.3pre18/src/svc/svc_start.c | 142 + .../src/svc/svc_status_changed.c | 73 + .../cinit-0.3pre18/src/svc/svc_stop_deps.c | 66 + .../cinit-0.3pre18/src/svc/svc_success.c | 39 + .../cinit-0.3pre18/src/svc/tree_exec.c | 115 + .../cinit-0.3pre18/src/test/data1.c | 53 + .../cinit-0.3pre18/src/test/fork-latency.c | 147 + .../cinit-0.3pre18/src/test/fork-latency.c.A | 8 + .../cinit-0.3pre18/src/test/fork-latency.c.B | 7 + .../cinit-0.3pre18/src/test/fork-latency.c.C | 5 + .../cinit-0.3pre18/src/test/fork-latency.c.D | 8 + .../cinit-0.3pre18/src/test/fork-latency.c.E | 5 + .../cinit-0.3pre18/src/test/fork-latency.c.F | 40001 ++++++++++++++++ .../cinit-0.3pre18/src/test/fork-latency.c.G | 40001 ++++++++++++++++ .../cinit-0.3pre18/src/test/memcpy.c | 46 + .../cinit-0.3pre18/src/test/test-newline.c | 30 + .../src/test/test_build_argv+link.c | 37 + .../cinit-0.3pre18/src/test/test_build_argv.c | 37 + .../cinit-0.3pre18/src/test/test_exec | 7 + .../cinit-0.3pre18/src/test/test_exec.env | 1 + .../cinit-0.3pre18/src/test/test_exec.params | 1 + .../cinit-0.3pre18/src/test/test_exec_link | 1 + .../src/test/test_exec_link.env | 1 + .../src/test/test_exec_link.params | 1 + .../src/test/test_gen_svc_tree.c | 21 + .../src/test/test_openreadclose.c | 16 + .../cinit-0.3pre18/src/test/tired.c | 22 + .../src/test/transfer_structure.c | 56 + 1124 files changed, 103823 insertions(+), 1 deletion(-) create mode 100644 about/pgp-key-31877DF0.txt create mode 100644 software/cinit/archives/cinit-0.3pre18.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/ create mode 100644 software/cinit/browse_source/cinit-0.3pre18/.ditz-config create mode 100644 software/cinit/browse_source/cinit-0.3pre18/.ditz-plugins create mode 100644 software/cinit/browse_source/cinit-0.3pre18/.gitignore create mode 100644 software/cinit/browse_source/cinit-0.3pre18/Makefile create mode 100644 software/cinit/browse_source/cinit-0.3pre18/README create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.config.shell create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.get-confdir create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.migrate.archlinux create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.migrate.upstart.ubuntu.jaunty create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.read-conf create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-boot-enable create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-create.template create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-delete create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-off create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-on create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-param.add create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-respawn.off create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-respawn.on create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.acpid create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.agetty create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.categories create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.dependency.add create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.fsck.linux create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.getty.add create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.getty.remove create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.hostname.linux create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.init create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.init.dependencies create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.keymap.linux create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.linux.network.lo create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.local-tuning.udev.ubuntu create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.dev-pts create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.dev-shm create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.getsource create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.nfs create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.proc create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.root create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.swap create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.sys create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.sysfs create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.udev create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mtab-clean.linux create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.network.debian create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.setup.console.linux create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.shell create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.sshd create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.sysctl.linux create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.tmp.clean create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.tmp.create create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.udev.copy-static create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.sys-v-init.get-current-runlevel create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.sys-v-init.migrate-fstab create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit.reboot create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit.shutdown create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit.svc.init create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit.svc.linux.debian.ntpdate create mode 100755 software/cinit/browse_source/cinit-0.3pre18/bin/cinit.wait.for.daemon create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-0c63a541a2261c7322d6c59a6adb091301020c8d.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-0d8142c646aa04e8e713fc8f886a44475581c670.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-120cbf62dbdd9a7a026bcbb7d2863599c7183f70.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-1cc421b885608485f73c9041c5c0af71df76331a.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-1e83dca921062d97b96830caf24e7898ad4fbbe2.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-25822475f5d01c35eb9edd8d75c065c83032701b.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-278e5a7b4c338f18f92d5bb1a2789d76d0e11ad9.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-29d45f06044e5329dca7f351a17676e65d4e3b38.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-2a4a3675810b44b05ce51c021690fb3f21725e55.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-2fda514da472aa15fa57d2df06e8d5cc909016d0.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-3a620ff450d0c685a5567d25d77230763c835c8e.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-3cc14c82109544e198e5cce002c0d94a66e6f4d7.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-40bb0e1478cb8e1fd7ef577b0acf8f7b2f516d6d.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-4e460e6061fb5d39549b85d42fc33f57de7a1396.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-5bd7befd45553864b1d2ebc12509e06440a402d0.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-5c4769f4f4f23b8a544ae3e20866d8fc2676a7e7.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-8391cdbcb30d007bfb692504d9469a93f7c15b97.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-85687a7f79046db51429db38e7b1da5234a3675e.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-863a9d56ed460fb45e91d2c555d57133d2286f72.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-8d5e1aee59a52ab1b3b0b02b02f07823d4f4b8d8.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-b5428a5e8b064827fac8f1bc905cd5b304961f77.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-bb27c9b51f82dd54eba8baa40aa5e8bba326ea01.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-c8d020845511594b4b90bb38a2a839ef6ce4c9c8.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-d3732fffad054c5a1f781f28a60015346ad28dd6.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-d7a7970bd20e1dc0b04f314fee5f39ba90d3d904.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-dbc5e27c03e3dd22add144409f6dfe8b81d2c8d1.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-e40b9f0761d0a1e0ca47cc8e0e52d4ec16f51669.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-e435cb93810ea790f795fedc2e9afc6475c9c0a8.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-f10682d63b1059f876c6cdde2323a596dba89d3c.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-fa88d3f9dca2df7ccaf8fb9ce2daab3e9255dae3.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/issue-fea40277e32b0bd747d7f47a68d41009fc046fd9.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/bugs/project.yaml create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_confdir create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_delay create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_desaster create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_env create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_init create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_last create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_needs create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_off create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_panic create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_respawn create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_sock create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_tmp create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_tmpfs create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_tmpmount create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/c_wants create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/cc create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/cflags create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/cinit_dir create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/cinitconfdir create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/destdir create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/gettydir create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/install_directory create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/install_prog create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/ipc_method create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/ld create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/ldflags create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/max_delay create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/max_deps create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/msgq_pathname create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/msgq_to_clients create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/msgq_to_server create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/os create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/p_asciidoc create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/p_docbooktoman create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/p_docbooktotexi create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/prefix create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/profile create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/service_categories create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/sleep_before_kill create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/sleep_kill create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/sleep_kill_svc create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/sleep_rerun create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/sleep_svc create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/sock_queue create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/strip create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/sulogin create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/svcdir create mode 100644 software/cinit/browse_source/cinit-0.3pre18/conf/version create mode 100644 software/cinit/browse_source/cinit-0.3pre18/contrib+tools/Makefile create mode 100644 software/cinit/browse_source/cinit-0.3pre18/contrib+tools/README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/contrib+tools/README.ruby create mode 100755 software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cconfig.graph.xml.rb create mode 100755 software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cinit-vis.pl create mode 100644 software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cinit.graph.text.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cinit.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/contrib+tools/error.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/contrib+tools/error.h create mode 100755 software/cinit/browse_source/cinit-0.3pre18/contrib+tools/make.cconfig.from.xml.rb create mode 120000 software/cinit/browse_source/cinit-0.3pre18/contrib+tools/mini_printf.c create mode 120000 software/cinit/browse_source/cinit-0.3pre18/contrib+tools/usage.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/.buildwarn create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/COPYING create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/CREDITS create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/Makefile create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/README.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/Changelog create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/TODO.lucky create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/caveats create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/author create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/availability create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/examples create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/files create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/long_description create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/date create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/man_section create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/name create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/short_description create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/parameters create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/path create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/see also create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/synopsis create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit.commands create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/author create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/long_description create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/date create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/man_section create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/name create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/short_description create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/parameters create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/path create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/see also create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/synopsis create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/ipc.thoughts create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/ipc.usenet.posting create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/linux.kernel.eats.arguments create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/posix.aardvark.bug.report create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/fun-testing create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/how_it_works_internally create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/init-idea-first create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/porting.to.other.os create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/removing.zombies create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/security create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/socket.poll_vs_o_async create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/ancient/thoughts.closed create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/README.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/circular-dependencies.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/converting-debian create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/converting-general create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/creating-new-configurations create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/messages.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/possible_service_pre_calculation.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/possible_service_status.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/registering_needs_wants.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/root-vm-testing create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/shutdown.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/sizes create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.1 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre15 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre16 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre17 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre18 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/changes/00-before-0.3pre15 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/Doxyfile create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/README.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/cinit-0.4.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/cinit-status-translation.dia create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/cinit-status-translation.png create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/codingguideline.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/communication.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/configuring.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/cross-compiling.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/ipc.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/lists.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/merging.other.initsystems.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/optimising.cinit create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/testing-cinit-in-vm.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/devel/testing.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-1.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-1.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-2.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-2.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-3.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-3.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-4.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-4.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-5.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-5.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-6.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-6.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-7.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-7.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-8.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-8.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070424-1.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070424-1.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070424-2.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070424-2.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070425-1.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070425-1.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070503-01.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070503-01.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070503-02.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070503-02.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070717-1.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070717-1.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070831-1.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070831-1.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070831-2.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070831-2.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070901-1.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070901-1.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070901-2.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070901-2.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070906-1.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070906-1.tar.bz2.README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070909-1.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070909-1.tar.bz2.README create mode 100755 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/last create mode 100755 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/last.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/sleep_before_kill create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/sleep_before_kill.README create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/needs/keyboard create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/needs/mount-root create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/needs/proc create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/on.env create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/respawn create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/wants/console-unicode create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/wants/hostname create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/needs/keyboard create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/needs/mount-root create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/needs/proc create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/on.env create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/respawn create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/wants/console-unicode create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/wants/hostname create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/needs/keyboard create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/needs/mount-root create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/needs/proc create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/on.env create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/respawn create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/wants/console-unicode create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/wants/hostname create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/needs/keyboard create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/needs/mount-root create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/needs/proc create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/on.env create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/respawn create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/wants/console-unicode create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/wants/hostname create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/acpid create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/eth0.dhcp create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/getty-2 create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/getty-3 create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/getty-4 create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/keyboard create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/loopback create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/rescue-shell create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/sysfs create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/wants/quiet-kernel create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/wants/udev create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/README create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/needs/acpi create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/needs/proc create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/needs/root create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/respawn create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/metalog/README create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/metalog/needs/root create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/metalog/on create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/needs/clean-dev-log create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/needs/root create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/respawn create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/README create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/needs/root create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/README create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/needs/root-mount create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/README create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/needs/proc create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/needs/udev create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/off create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/on.env create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/cpufreq_ondemand/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/cpufreq_ondemand/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/needs/cpufreq_ondemand create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/needs/speedstep-centrino create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/needs/sysfs create mode 100755 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/on create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/speedstep-centrino/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/speedstep-centrino/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/aes/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/aes/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/dm_crypt/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/dm_crypt/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ac/README create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ac/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ac/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/battery/README create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/battery/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/battery/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/button/README create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/button/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/button/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/fan/README create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/fan/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/fan/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ibm_acpi/README create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ibm_acpi/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ibm_acpi/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/ac create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/battery create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/button create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/fan create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/ibm_acpi create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/thermal create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/thermal/README create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/thermal/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/thermal/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/eth0/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/eth0/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/keyboard/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/keyboard/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/quiet-kernel/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/quiet-kernel/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/udev/needs/proc create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/udev/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/udev/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/README create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/needs/aes create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/needs/dm_crypt create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/needs/keyboard create mode 100755 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/on create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/needs/luksopen create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/proc/needs/clean-mtab create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/proc/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/proc/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/needs/udev create mode 100755 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/on create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/on.old create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/needs/fsck create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/README create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/needs/clean-mtab create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/needs/load-driver create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/needs/root create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/on.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/respawn create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/hostname/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/hostname/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/loopback/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/loopback/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/remote-services/sshd/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/remote-services/sshd/on.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/rescue-shell/on create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/rescue-shell/on.env create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/rescue-shell/respawn create mode 100755 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/rsync create mode 100755 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/rsync.local create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/test+conf-last-2007-02-23.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/test-2007-02-23.tar.bz2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/gpl3-header.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/gpl3-header.sh create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/logs/2006-10-25.config.wasserstoff create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/logs/2006-11-22.startup-with-debug create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/logs/2006-11-30.startup-0.3pre5 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/man/cinit-conf.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/man/cinit.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/man/cmd.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/man/cservice create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/man/halt.kill.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/man/poweroff.kill.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/man/reboot.kill.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.1 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.1.1 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.2.1 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.2.2 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre11 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre12 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre13 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre13.race-condition create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre14 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre15 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre16 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre17 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre18 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre19 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.4 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.4.1 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/todo/long_list create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/FAQ create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/README.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/TODO create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/compiles.on.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/conf-system.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/configuring.cinit.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/cross-compiling.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/current-init-problems.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/daemons.backgrounding.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/debugging.configuration create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/dependencies.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/example-directory-structure.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/freebsd.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/ideas create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/installing-cinit.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/main.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/meta.dependencies create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/paths.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/problems-and-solutions.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/problems.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/profiles.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/replacing.init create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/respawning-sleep.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/special-services.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/supported-os.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/updating.cinit create mode 100644 software/cinit/browse_source/cinit-0.3pre18/doc/user/using.rescue create mode 100644 software/cinit/browse_source/cinit-0.3pre18/libexec/cinit-conf/dialog-alias.sh create mode 100644 software/cinit/browse_source/cinit-0.3pre18/scripts/README create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.ipc create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.mark create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.os create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.tools create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/cconfig.mk.makefile create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.build-env create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.get-confdir create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.mkheader create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.read-conf create mode 100644 software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/create_services.sh create mode 100644 software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/enable_services.sh create mode 100644 software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/search_enabled_services.sh create mode 100644 software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/search_services.sh create mode 100644 software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/README create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.migrate.sysvinit.debian create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.migrate.sysvinit.debian.sid create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.miniconf.linux create mode 100644 software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.miniconf.linux.todo create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit.install.test create mode 100644 software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit.install.test.todo create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/migrate-linux-debian-lenny.sh create mode 100644 software/cinit/browse_source/cinit-0.3pre18/scripts/install/README create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/install/cinit.install.binary create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/install/cinit.install.dir create mode 100644 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/README create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/cinit.release create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile+run.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile_local.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile_run_as_compiler.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile_test.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/create_test_config.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/find_right_version.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/indent_script create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/old/cdoc-man.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/qemu-test.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/stop_cinit.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test-cmd.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test/cinit-conf.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test/cinit.uml.test create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test_on_hosts.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/internal/valgrind create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/report.compile create mode 100644 software/cinit/browse_source/cinit-0.3pre18/scripts/vm/README create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/vm/qemu-start.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-dir-start-plain.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-img-start-cinit.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-img-start-plain.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-mount.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-shell.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-umount.sh create mode 100755 software/cinit/browse_source/cinit-0.3pre18/scripts/wrapper/linux-sysvinit/shutdown create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-14:54:44 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-16:47:50 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-16:48:48 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-16:50:45 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-17:12:48 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-17:13:43 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-23:05:33 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-27-00:39:24 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:18:22 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:20:40 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:23:25 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:25:44 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:32:43 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:33:37 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:41:08 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:41:18 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:46:09 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-16:48:16 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-16:50:05 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:02:27 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:03:00 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:05:11 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:06:15 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:11:59 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:13:43 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-22:28:13 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-22:34:23 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:27:51 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:46:31 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:49:29 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:49:58 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:52:20 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:55:50 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:58:14 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:59:53 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-14:00:26 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-14:04:19 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-15:47:56 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:02:41 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:39:08 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:40:55 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:44:39 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:48:57 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:49:46 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:54:45 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:57:17 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-21:07:11 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:22:43 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:39:12 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:43:21 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:54:00 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:55:07 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:56:58 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:58:39 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:59:17 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-23:00:07 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-23:19:24 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-23:53:59 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:18:32 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:20:46 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:24:11 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:26:55 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:27:53 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:28:24 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:31:01 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:37:58 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:39:02 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:41:50 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:43:08 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:55:51 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:59:30 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:07:13 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:08:19 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:16:38 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:19:48 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:52:58 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:41:29 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:43:55 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:45:38 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:48:21 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:49:22 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:50:57 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:52:26 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:54:04 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:57:56 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:06:20 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:18:00 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:21:37 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:24:40 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:25:56 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:26:49 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:30:20 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:33:50 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:51:24 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:53:11 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:53:22 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:57:27 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:58:26 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:00:47 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:12:17 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:14:00 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:40:38 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:43:08 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:46:22 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:48:01 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:49:20 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:54:30 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:55:05 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:56:35 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:01:01 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:11:31 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:19:50 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:20:58 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:24:21 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:27:00 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:28:54 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:40:58 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:11:52 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:20:02 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:26:18 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:31:09 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:35:42 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:50:11 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:50:40 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:03:50 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:07:50 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:08:09 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:08:26 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:10:57 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:24:22 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:24:59 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:37:23 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:49:16 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-10:44:00 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-12:41:22 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-12:42:08 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-12:42:57 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-22:41:37 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-23:03:37 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-23:11:20 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-23:40:29 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-09-12:03:27 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-09-12:05:57 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:10:50 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:16:39 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:25:05 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:26:14 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:39:23 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:13:51 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:14:40 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:27:10 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:28:11 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:28:31 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:30:03 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:32:29 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:33:30 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:38:26 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-21:52:18 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-21:54:00 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:06:53 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:07:06 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:24:49 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:27:59 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:30:25 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-23:42:29 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-23:44:10 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-23:46:40 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-00:14:02 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-00:17:19 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-00:23:52 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:04:16 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:06:26 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:09:49 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:11:49 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-13-20:34:19 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-13-22:33:53 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-15-22:32:07 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-15-23:52:06 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-15-23:56:00 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:16:09 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:20:52 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:23:43 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:27:36 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:37:24 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:39:43 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-09:58:08 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:09:00 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:13:07 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:14:43 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:23:05 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:27:48 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:44:17 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:52:29 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-17-00:19:15 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-17-16:02:33 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-14:56:01 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:01:28 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:03:46 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:06:24 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:12:50 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:14:38 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:15:28 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:16:15 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:26:25 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:27:30 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:32:52 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:35:00 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:36:19 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:05:20 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:08:31 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:11:25 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:12:15 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:12:49 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:33:25 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:47:39 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:47:52 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-23-21:04:37 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-26-07:55:38 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-26-08:27:51 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-26-08:32:19 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-05-27-05:51:30 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-04-00:23:43 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-04-10:08:43 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-04-10:54:35 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-05-12:34:54 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-05-12:41:25 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-05-14:40:37 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-08-09:48:34 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-08-10:09:27 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-08-10:23:04 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-08:44:09 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-09:59:47 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-10:00:08 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-10:00:40 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:27:17 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:28:30 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:46:28 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:47:04 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-07:07:35 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-18:14:05 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-18:14:28 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-18:18:11 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-16:28:13 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-19:13:20 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-19:22:16 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-19:25:11 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-12-18:09:08 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-12-18:09:22 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-08:13:08 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-13:28:35 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-21:23:15 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-21:26:52 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-21:57:26 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-06:35:49 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-09:51:51 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-09:58:58 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-10:01:02 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-13:16:40 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-13:21:47 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-13:26:18 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-06:38:49 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-06:46:05 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-09:17:57 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:13:26 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:16:39 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:30:39 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:31:16 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-14:08:57 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-14:19:46 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-20:37:50 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-16-12:18:07 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-16-14:18:59 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-16-14:19:22 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-17-19:03:48 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-12:16:40 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-15:16:31 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-16:29:28 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-16:29:50 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-21-11:53:35 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-07:33:11 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-07:57:13 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-08:08:40 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-08:30:42 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-09:19:42 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-10:35:02 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-10:43:24 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-12:42:57 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-13:52:41 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-13:59:40 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-14:19:41 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-14:37:18 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-23-06:22:23 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-24-17:53:55 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-24-17:55:29 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-25-11:56:07 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-06-26-13:19:49 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:07:13 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:11:07 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:12:20 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:13:39 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:14:19 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:14:59 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:15:56 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:08:05 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:12:22 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:12:31 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:12:49 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:13:08 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-08-08-01:00:08 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-08-29-21:21:34 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-08-29-21:48:00 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-08-29-23:50:55 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-03:36:59 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-04:34:35 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:51:17 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:54:20 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:57:00 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:58:07 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-09:01:59 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-09-05-19:41:12 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-09-05-19:50:35 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-09-24-01:42:38 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-09-30-22:50:50 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-09-30-23:06:39 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-01-22:09:13 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-01-22:17:39 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-11:12:29 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-11:13:35 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-11:13:43 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-16:00:24 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-23:17:11 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-03-00:54:39 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-03-00:56:29 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:43:02 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:51:08 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:55:52 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:57:11 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:58:04 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-10:07:28 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-15-15:26:52 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-10-15-21:23:56 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2005-11-17-17:03:53 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-11-23:45:54 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:06:11 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:06:42 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:08:24 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:09:33 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:13:32 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-16-23:57:29 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-17-00:16:18 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-17-00:31:08 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-17-22:48:35 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:03:54 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:04:33 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:04:36 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:07:47 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:08:04 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:12:33 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:14:56 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-06-01-23:32:43 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-01:08:28 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-01:29:13 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-11:13:39 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-11:36:37 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-11:46:07 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-15:17:17 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-15:19:05 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-15:19:52 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-11-29-235707 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-11-29-235834 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-02-172536 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-02-174429 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-02-182536 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-173231 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-174544 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-185602 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-185901 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-191215 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-06-084947 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-06-180205 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213559 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213702 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213717 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213739 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-215315 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-215334 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2007-02-17-210059 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2007-02-23-202443 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2007-02-23-202720 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2007-03-07-231936 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2007-04-06-011811 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/size/2009-09-29-075620 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/Makefile create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/Makefile.tests create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/STOPPED create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/ccontrol.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/charp_to_flag.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/cinit_get_svc_status.c01 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/comm.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/cservice.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_change_status.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_reboot.c.orig create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_result.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_svc_name.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/exec_svc.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/main.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/msg_change_status.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/msg_reboot.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/msg_svc_on_off.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/pipes create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/respawn_svc.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_init_svc.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_init_svc2.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_run_svcs.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_svc.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/set_signals.c01 create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/sig_terminate.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/test-signal.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ancient/unused-coded/cinit_read_from.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/client/cmd.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/client/halt.kill.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/client/poweroff.kill.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/client/reboot.kill.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/comm/README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_disable.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_pid.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_status.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_stop.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_version.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/comm/cinit_append_data.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/comm/cinit_cp_data.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/comm/read_command.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/core/build_argv.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/core/cinit.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/core/do_reboot.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/core/panic.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/core/set_signals.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/core/sig_child.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/core/signal_init_map.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/generic/execute_and_wait.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/generic/execute_sth.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/generic/file_exists.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/generic/mini_printf.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/generic/openreadclose.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/generic/path_absolute.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/generic/path_append.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/generic/print_errno.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/generic/sleep_before_kill.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/generic/strip_final_newline.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/generic/usage.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/include/build_argv.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/include/cinit.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/include/cmd.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/include/intern.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/include/ipc.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/include/listing create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/include/messages.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/include/os.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/include/reboot.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/include/signals.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/include/svc-intern.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/include/svc-messages.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/include/svc.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/cinit_ipc_init.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/mq_open.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/msgq-rt.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/README.text create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_cread.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_csend.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_destroy.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_init.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_listen.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_logoff.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_logon.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/msgq.h create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/objects create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/begin_msg.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/cinit_ipc_init.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/cinit_ipc_listen.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/connect_sock.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/libcinit/README create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_flag_to_uint32_t.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_get_version.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_halt.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_prepare_comm.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_send_to.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_disable.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_enable.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_get_pid.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_get_status.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/object_lists/cinit create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/object_lists/cmd create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/object_lists/halt.kill create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/object_lists/poweroff.kill create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/object_lists/reboot.kill create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/halt.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/objects create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/poweroff.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/reboot.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/linux/halt.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/linux/objects create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/linux/poweroff.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/linux/reboot.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/halt.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/objects create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/poweroff.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/reboot.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/halt.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/objects create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/poweroff.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/reboot.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/check_add_deps.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_create.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_entry_add.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_entry_del.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_needs_wants_add.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/gen_halt_tree.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/gen_svc_tree.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/list_delete_byname.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/list_delete_bypointer.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/list_display_all.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/list_insert.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/list_modify.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/list_search.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/list_search_pid.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/shutdown_services.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_add_needs.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_create.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_disable.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_fail.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_handle_pending.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_needs_status.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_report_status.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_respawn_check.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_set_status.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_should_respawn.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_start.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_status_changed.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_stop_deps.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_success.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/svc/tree_exec.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/data1.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.A create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.B create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.C create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.D create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.E create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.F create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.G create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/memcpy.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/test-newline.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/test_build_argv+link.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/test_build_argv.c create mode 100755 software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec.env create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec.params create mode 120000 software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec_link create mode 120000 software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec_link.env create mode 120000 software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec_link.params create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/test_gen_svc_tree.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/test_openreadclose.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/tired.c create mode 100644 software/cinit/browse_source/cinit-0.3pre18/src/test/transfer_structure.c diff --git a/about.mdwn b/about.mdwn index bdd4fe93..30c0dbbe 100644 --- a/about.mdwn +++ b/about.mdwn @@ -30,10 +30,13 @@ You can contact me via E-Mail at nico-webcontact (at the following domain) schottelius.org I recommened using PGP to encrypt any mail. The fingerprint of my -[[pgp-key|pgp-key-9217A3DF.txt]] is +[[pgp-key|pgp-key-31877DF0.txt]] is BFE4 C736 ABE5 406F 8F42 F7CF B8BE F92A 9885 188C +(the [[previous one|pgp-key-9217A3DF.txt]] was BFE4 C736 ABE5 406F 8F42 F7CF B8BE F92A 9885 188C). + + ## Donations If you enjoy some stuff I've written, you can donate some money via diff --git a/about/pgp-key-31877DF0.txt b/about/pgp-key-31877DF0.txt new file mode 100644 index 00000000..76501e1a --- /dev/null +++ b/about/pgp-key-31877DF0.txt @@ -0,0 +1,47 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.9 (GNU/Linux) + +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 +pKP2Q+oAoNZD6RUp3QPhjIH0w7q8FKgdsxcu +=Dkek +-----END PGP PUBLIC KEY BLOCK----- diff --git a/software/cinit/archives/cinit-0.3pre18.tar.bz2 b/software/cinit/archives/cinit-0.3pre18.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..ebf0aa6b1b0aca69e70b35580d913f1b51a84c48 GIT binary patch literal 524915 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
Xq5kFesuRW;4m=P}yuAaw@?gn-9@zxQhv8<)} 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%0DkIF?Kd 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 ICP%%5of0hehj{4Lf7pP90SX|4rD0 z$M^l{9BE=BAoG|_l#7D%Rjo5O6*jiAy>}P^>xEM%64+wnKx}mXS9hY=hYHg`nn4y7 zMzNT-11uLC>eDWmE6Yo?==fAY3+!R_7m@c082^Z%$y=C7#B_Wy7ytk{7^;X}Xox3i z6|F<$HS?0Y-0-JWN6W6}PclbNTn3`>me_KebiLTWA-0tN>qlVPK+B7qxfV5P9vd^5 z?^neRdeGPZXfj|GGerU`MXV+#Ei$|b<7WK~`x4vWh2#H*vDQ4G=`9Ik(EgYW<`jv) z|G=&t&nh)Ue95j8dCf*)8KMzKVHKiAM-6-gHi+RDX&($Bh>S7sR-SM$hY7OHsMIO5 z>a6ebZl?@)6?`lOH-{h~L}pKBn#tzzBy+*sq#V>YC*ODiO({DpM05lYg)X}q|5DdL zC-=F$_9$^A9)%={cSo<2ApcJ{L?KxTAg<1C20uDsFlna~Yaz(V zNwXCC{Y&`%rj#A*Mj-Ka*BiB=85epxbAS_?#PVVW4wphxgov92y$FsDOn50WWkuNI zHTdZY_$69%$1`|H2$FQx(M6ohaHi4kKnPsYq;@Gt9|tLtpt3hBN}w_UgKTi64Al07 z+Z-)Z#wZ^<@zE!)+JovFhAYm?-v(n4C3vVUw+9u#N-X10yaaOIt6%uMg zhC0~M9BLCCm=hj7WA`5V^{NA_{+}7S*x5Vw)b0^B15ask8sQzms;|>L{R%h`WFw2yFEtF$Q2- z>t*SH>U8QXJ2!NdeSumP0U@P?|8dZ90&_O(6^O8Bh`wvg^Bna2uwmCeW}kFS{E`pw zt!NJ-7dtwMxkF5-(eD5oh-oxCdyG=u)L_y@X6h|c%NrBjjz-;{r)#eg>k@+rXUIXQyV zqeaLMNoZP$XdOTYlNM8lsOabin#zEGhy&o7dAWrO2#fNzk1-rvG;an6#_;X zDS&^-1BBm(xuwty(ME}G5td^Tpth0k*d{sIz8@1ZWOyPXDdR8jfQbr;7BHDDAlc1; z=U*z$(i7+6NkSlfZpC}p4p|JR8VGXy-|fi%npK0klZ|0A>+s%}o@Qf|^KoI65Ktnl ziSN*VJjg{URdW_|R#9>rF@BRr<4PsclN`RMmnLT52^xtn9VJETNJ`L0N1W^jS3$@u)7J-{{C_evje#HNU|0juA zI+X}qL;r!}y!n}~9`Qq*IF84fz(Ef}$wm&9{yU-nubd#}xp+Z25031BD5K2NXq)c3p8^3^EboyF=G(9xqsoPiM%UjG!C=0G{q5kv0fRw1PuDOnR0YmIE7_Y>Q}Je#c-%zEboymnnDz!{`?@CnfNcLNH>~VJ6b62mqKk5#-A@YG1(W%4*5e-+v!N-novCCXSA`!SNQy^q;78Fq+J!Cx4si0EN1BpI zfDB~nJrGI3zPl&I65I+_O-lnsyX3L^`gl#`_~%?9cI$w#Kyg^;cAHJ8b}>jOgVl12)8)HK_<@JT{(&|rm!|wE@X=(S@G4}+d=V9T*^)M;z7+h*#amCAsd!^Mf1Kqf5 z)z#3+E1w}9P>f9ztpI+pP};<^s;8GJ+#i*;4|OMaY930Pd=n$FwgQ-7ILdnnH2(ff z!Wv0(UtytXnzD01`ZbIDUB$^6E=4Q(CGF8kQ2gyp@OP-`oIRfT^_|T=Okjp~FMCtH z*}eHS(C%e7TXSN}x#`#C+QDi2P)cj6vOt2jfLSul|Jc|4c%P(VtK{<9BNb8}Hf~nH zP52dBQWU(z6wP`?$OB!g8w2vU*ERRxK0phI%vx6O^gAJE4ee7C1<4}=`6Z~Z^<1T) zzyk8yv=@;|U?Ra&=y=GT>*NAvslOO9T|dkiC;-?{HSGdYh|W$xGltfDm7)AR1^q!y zblHH`G-hD7e`=9X@OWTrc!dGZq7-b=b~Q6a&!uKILW>ftTDol#&)DYE+VD6Rt(P1v z*5H@QtAH7Ix^q48_^qgqmYQ?}m;dLV%ITl2 z7$sJ%nk{lCq2-tz=kLitfarWKYO`*gSw5@c1#2<$>wGAV*#N5I%za-9&E|5~(a1Q8 zA0$mOz6eeVE`jjRBw5@)WUu2=Q4vWPRAc|t>r`77W)T^0UG^^RJ|L2rpsUzV308j~ z1i4CcvHR8p#irex0gBWu&|koM1c(-c3enyMx-AjjnHmAg1i5G=%(f)*WQ-qc_CyTr=0F zN32CURW0S&0=KPOaLng$SfoCg>iz|ku+(JWd_gmx>@q24D=7Kb$ja}>Q8;C&;B|RX z>N8N#G(1LbKiFpQaMH%xRJK<9^#~@^3Q#O@Cl>2udmFpo#>hFC-rIA!qu=;i=*6&s zq}!Ma*!;{2+~@PzZV{BaOIHY#;!bU5;T*B~MN@G&H1Phr0rPS=H!yjjcU)V_rB^Wx zwmv_23Q;VbkoC_WoN4Mc`O^Jl5g#0;T=a+MMp9<;CJZDK*7P;uuFVO1)Rj{>Y-7wO zXJg@|EN(7w$?~7yJ8xbbE1MN45ULHsme~I~81l1{&U#f8raFAo z>{`qV7K#@()eL(smd6v2?HMp!9My}zRhEBy)0x&MtYljw!_~3g32s}|XlQ0Czdmgk zIRNhW|2R1*G`%FNh$$#x6F70bFXXi^ommwata|+MERIi4`M+7;h{4b2b@Q}cKu(Y4tOKm|%+}piOVX~FYR8S7`Dg*C zY@!1P#>$JxfDW8sD^mn!k(VOVR%9tIiWQU#VoJ^y3tL~t&#a}Yu`tslRaCI0u^(uL z^FP3AJ}9y@0c!glju*jC(Iuj#6=8G^yJ?UeB;*e|5eGr9MmF&q=&%FSDvV%&w15Ey zG)E!{a=T~*=g9rlUqP<{rv`J@b28v?_B;NUwr#yjv{=l#Gr|QRek{Lq1?Oh|Ui@G5y1F~L ztC|{H+3pNb8#V-$fFi9RD{hG}c44rGo-p7iYz$lGA(^xymYOhE zM6if}{se0Tc|+3KLWki6y!7FJO(4-loT~pg_ZRZ2mMDME@tx>A_}fh&_tV+hXTJp;S_4rFJ3%}>hbCa#w@}Q= z^g78rIbdOH{Nd2bwd6FH4|l@Wok^5+mvzXFqG*l=W1?w?S^ z54=Hk3+4fY`bCxuGSGx?|MsQxCJt!`RBQGR(U(stOqcUy$@LHeu<<`v8|3ILVh8Q>WL~a;}Y^A+M0B|(e zdAGEutJZz^hF1MLUH>Qdta7kekd7L_I3mnXp50~G_HcS3A8TpL;Xi7%`_}rJ?Hh4D%RWynJ+sug%ELlh zbJH#omZ4I%T;j>AZ{_vto~o0!Q#Pe_o5yt3YCX>>T+Gz*!5-XxESlDn7=7SMh?ew(~ZMBoN4?+?>J3o8RKJ)PUu(4oFK9%iWDz*fAs{=CLTC& zvIul%2I~jU{jB<-SYE77f_+KT$OKvPk6HN$or+zAh;su@)}K}7#~}%MXN&n&g9CP{ zMTg?tEbr;dpV56I)=%Jupaij8LniwRn~Die?2|#r4!L5Cn?Bh;4Y5;A@8c0U#j^8M zzs}lnlT!n0KA@t%i{%F_s>SCB5TWr8ZzItGowoS>4`|IHi;h0{=DxQwN%@m^yTwRK z;uRpJM}3aJuIg|39dS6q^q)XvHp4uhmR1(9^^*fjB3fD~c3=NWFJce#7$AXtnqZ|q5 zdT&Qd_t6wf_M+~MKHtJe-DCgCv$!U3Ql^5W(H$>$EI@&tqZ3^Zzo=sWVIec7a;-yRu^lMl+7T67)`tp4&cSc1)H7CEU8ppde;O;BrmsrdK{_|~+^>#~)J+x3FV~bZ zf1bX%<+`u+D-*11r~`5)Q{ktDilbzTonyOM)ltU7orD~@iv!N;kH0s3*RQYPcH7+~ z`V3SKi`P?aN<|T<{{hNqmM=XZ1a-lU^J`SS8?f^Xx{?WnEUmZKdXLjKlVi>3jPd#| zZhO1}dChd4BSm~`LH_%AyP!*U9{N2TyLck|E|`YsU{-ht8Ln=^I^kcyW(o2#2mQJO zE1CRI;TK!`V)oqPmxfu1_%EXcP>`|{jfwsRJUwvjBdqfp-}};8&yQz5eptjY-1`w* z18RQ27e6*jmkgUF9vAO>+``c!ChdVUp+-xdRkw1_Jf11ed-i&xAX>%tzW3CMyCYJ zS1pbmQp3pFn7YNEI1qkJBR_AdLzA2-XimK9fi$d>H&1W*vuraZSYej^ z5}M_L<`Y8{qtLX%VX}5zlG~+yX(O7EjKvt!BA=h8y{QRLy+U3Ln*N}(bGrJ6*TSbT zMbGKC(K;vA#}NR3!K+YcBCBuKN4J=}v?O6S8tj+USQ!|p=$lTQSRSj9+S1EeFVt;U z-$GRG5h3YGLA0S#2Sc>}6R#Byj}b-RljYchBE z{vNvrQY2LP?+icxTwPPqOiLvAFY42_s6hK0=VqxJ_*q`mehM` z>vMtz^H_s?{{haKftSv_l-vGAY`qFXT+hg~8#9eItbt15b(=M-Qzs^Vghx1x`EW_s z%FapoFJXg!Cf5kt^;NrW9a>`pAnXmIN=ma`b$sf0bOstU<@N>O?-qeIUhDu=2LRnT zkirN`uqRJZHpS`0=YE!(CpX9@28-Q8+Qq)G!Iyw`uhPd39Fh*sjYnY{YIZ(L`WY2}*F|(k z;zCkA3J>kLJul;@?@xB@Jbq*u%{rRfKGlv`Mi$&4P#JJ7*5AJ= zv`do436b9@TGby>6RriLFRH+6Zy~V29#ndQ5;%{$ZFy9!FT?1J3c8Zs0I_VsSy8xP ziT2x0cmJx9UN>4V=TKA5 zZbio}TSEjdZHrS=*H~}4RB@qrqD#b=2B+NznoMPA2{qoUgm9Qg@Nd%U>0aim)YcV! z-Yt;(jZ0(^7Y04R7>z&8oeZgQLh%}iW?J(RCN8^MQnvHdHTzVYRF2%4i4r~8E2F%s z@VrT8>X@4y_JRi^4Ps$475Mnz5Fx8cw#r|fu|?VCkAYlDLFYy}hn0=rtd^8zS}`mZ zv}niG`EL?-6)vDq4rI){>S`CR#OW=JmR0w+%*U)^gpQOak!eM3F{`#D9HX&{(oA!X z=RfqWm`@8BDffzrL~VMztNOM1rCiCs)Nk6|$3>R)hdl{R&rfBfcrEj^t@_dW$El~3 zMvs->2SNvx+H$m}G!8M_T7^Z!>qo}aBm5$|f{51>(0W}~onN_;c^EUKZ)thiT`z25 zVrkQk@|Q)W6IQHGXJ31k?{Sl?**@~@!){+ZU`^t$$ua2aK> zdWO$UA6+8dQ3gmGEWo5ej|_8~CmfhgDyn#4R`s3{#X|V@TBVL(So^o?qG48w|6F!D zm!3U#B%FNLg$xQk`QmG3OvAy|Kz6|e;I53LF0n-fno*C3q`1P^B;Bj6fC-Tzwd+Qdd2-B zx%D(lp0CoyiLtItT#c`C;H~jEL^Ag5GwD^NFi4m_jG9YZy3ysbPwH)RIU5O51&@_KR%_ef9sMD*e$pO18Q{3V2oq|w1RlUP&)eF z>V^o({smt4#fXgA zVdYZJ^P9s|A196Ev=qk2@Zme=c*kX1o{Bbv);r z94+TVIFD)g%1xIP6+zwDXP{Ut8Mg$rHe_<(N% z?O0;ZaJo-uXYaa9|IjJq=>tXBE1HN?ol1(@Qy;%sVC2bMwr-+`JYy%i+C^(b^MdXAH%!%Wfi~*6z5? zBw8>B)2Nr^qPo`LvR^Yc`(|l_#a+%FN~unKQC{EB1WIr?rZ|n?7`(VJh=G~bo=|#) zxIX(ezfh2zo{2IRFB8nV8!qevVJU!hvb3Ds+%K+Rq0LTMJvG=Y$Ptw`5Y_oIds$x5 z8=6W4h+ed$al9!@-x12m>=c5a!hX`V^D)J{*NKUBX;nVct@Vx0vYlp)LoF;o1=N90 zBhhdPNRe>?{(5LoVQK{>BMapHAFAuIrt94iMDoCHDatqfM$tsVR3Mu0nd7@J>b;Iw zT<_;^iSWTh`eN;B9Vgi;!TH%81|3wMUe@jhBV*zi07@07!%p58JjIJ3&vu=1Yx>=g zHG(S!%Y6Fnvqvck*0~;ls?HJsK5fnfwJR!}?S!9u%=kHRPR>Dq6((J5{8*+>=MFys z=5HF0P$Ev)N8+S#JbSGl5_z5mEjU95^*R>lgR?)p=FEM%!mso+%xcU^9Hj$;vO$q% zULv{ddf!Siwz1(mIGo+YSQk}&YANG-QJ-5=eoEv^pTrrE?3x72GmV(~Ww-@gCY>fX zxbsu7^R2bLQC){_XvdcIxi>grR+N{ifx5r$m{nzX8}ql@bQ+hIU>0}V7~Veo6L*P1 zM1^LN&ZW+j`HwnpS_uJb;fseCU|@nQmWNAM!lLCTg1BLp)lMM37v^A(^mGT1IVnL2 z;oTEA)I~@gM8k#& z*1^=}UVAGZ#{T0P-0z-9gh?{)+IL3iz&WB5p?%5S!y|c`XPQQqKhyrNw- zg4@I8-T|f1{`L*Hfgh;12BH)2_oq%d2j@CS?U}}Xaqqi0ryLr~uz(9{P8t`^=Rm5s ziRvUB70+36>vquLOXl>n?H3?WrA>6y1zP+80wr%Gq=KtOmD}J|KuQJdMHolEs7^RnxO%wW4t3Lh>N-{YvObd#By3o3WhmB{rmtSt*7xs7nv-N z-AcZDRWdCd?+!|XE+lR_T0t-V-qx=NfqH6AXz&1`;Z8>;O9}LKtCq+?Yl1tGI1TPj z8{{11KN3}0?k*M?_|~pz=WGh22sPDzf(#J2auyug{i2=^!t3o!dREj?QOE~^p5oo8 zWwN$xkj;kFcB=rfH!aADdr{8%oGR%FRIQaC`eeGIgq>p2jH{eg8u2eCdy|Ca0`B>P z(A4*2&~WebtZJFGw8Uv?RICw92vZ?v&9qd@#&hLmC@Co$2k920C0jNzj227O24I%Y z|4uS8u@DwqjBJ5GPRZPg+_zK6$OybB9B2$&5LWDg~61)0UbR?z-dRM zzT0;vCk1M%Oe|jcjr1i{EQH7CCEbP0nKS7ZSUAetDPfT0~lB1a0)wP{9r5LmP`xKHfs13H+R#e(euihW;c5GEmCt(qT zN`|YrwN`-I@xjy-@3dm}18z$e;jdt@MHN$wNbX%tQ*tzxGntCuNCoet28#4ul5tW( zN|M2BZNcao@(5JC_w>1MuS)!d#ad(ctpDaqCRbDw}W4o-*hAB}&3Z3HQYeLDa@a97AxhG#hx8f_1VnN>H_QM}t8) znnP=p0pu_<3F&Mn&A{D-*d*i9HD8Tp!)yrGKsyiUW7I82kRx5u~PS|Df>GZoc~);5|A6el~{kj4EV1Cl6~;93$Y z3x$OjKzGaPh2_-N3R7769bz(juJ4mNhpLsZ@noDd`syoSzJ_Ljv?JAY&664ASS;2Z zaG{?br0|qXzW%;?5$JA7y*Fcz?X+_QJRbK(8xJy4Nio9!Ct%GO&8-`Zy+Q+7=;5u1O<%PA}JBaIdNz%-{Wjc9#F<4aVrz`G$&=kWGZk((}So?3Tr zfkw&2AM^!s?7055fty;Jnoa}2SRk;xy6O3AMsj)Cr5oivWmY!{4QGZ|_7j#Rx?LB$ z#t;Xb-ZSno*3YwB;+zrt(M`bY8EL-%zHtCeHyhcqy=hX_-^HyS8(_z3JaEG5a_||# zvwHLNdmEp|4LcVM^*gt~8gMFhhO*>SG>UYtayNRm7i%yFI8*XKYVhd5`h7590PcfW zvv(pdGe7}0p`A;C^DBo{_B(Y64AY2lRSfiSX*{fy@B^;Ol0#s0D^d|~(mUzdcuiN6Z zt=~t5zuYDt&DZaz*CB90UgUsIf>kg;7dnZjOw^c>w<8u_TEb$RPy#aXT1Cz^#T-se zf-7(nhQQ^_$U7=t=oOX2PVvn$A*-m_wSFrsV$yp|xs_O7bsJzzICl*h7QCzgC`fId zCT8_~_?hvVD_R5|fdz8R{NPjL6T%Egi(IK-)aDMvZ)Zs6vKcKMTjT}Phf$;%C|?Zf zDeCqqlCkOnOtQk!!_d?a{}qMB7-h!^$npNEwj`@`2mN@(w#P9h*>=q4g3hR?S%-%% z!?4jlqA*-T+cgIj*3ll(Vt~s>g}0Ne?w&Z|mU3B;>8A zYfH+7C0la5e+-T!>=Gs<>>{R#9YZ4bP-kM4m;}5s_&W4F7MmHp^agJ~Oau43$6YAE z0cGy4eHx)HLI2=SH=?kR%?ZM9jz(6OufPo=F8c8$L|JnDsq?7g1%P9b;m>chBs;tm z+^Mw1Kl#ugNmNt-<^x)^q@uqxnfqgeKp?6%e?mPBb^DlJ^SQ)nd^|9=_FH7g$ATQ& z##cPzE8&;qcwzL-3jCL0t)80EpwK=zC{kfoRCRQtvOKrk_}%sAHvz!2F}K!>W}!c` zz4)K$d6S$;vGtxGtAGJPXwGZ|QiUd1$V-bP^zzR%UmGqCC2SP$zsRD_0BplAAsiYT zSAVPZ;-(ka;Xw6lVCkud{l&m8@!DH1qT9qxY3V*%_y;N}gck2rb3cEjJBS>`u(d1c znBu%aLGGHsF3o zVyntF0}uJ5o8mHZ+52k^K6n+=>SriyGxpsP9%rAG;L7i+T!sxXsJAHbWeE#b>~K2X z6Zq^Pzqq?4&8;prG%vn0{i-d4%xDT4RDb%pb@BGj%BQ&+;g}V;l?p?$8u4pUncqYA zQaVd~D!w-y=6ZcnIBe0u?7d!=Q5VyaY%{(9xf9H?NOE}adlG@VZq=nld03m&blO}k zG^;K#M}B~~c+8736Y**R%NTi7|{WD>}BSGylf0cI%H}bnnEN%)V(_ zODc5egcdqMtEDPGmZQg298Se@M~dC`H0-TwN+wji1cFrS5%-wDP}oA>iwJ~O4X2i* z(ImgSmRMdI+zv!Q8Pd++WyL-48$fWqh~@U=#>)dN@x_I=!)&+uk{QqY{XC8sllK7+ z9R}E1NSH2T+fzeBfn$>6&X3k{)Gva+TGMD!n^pS*64;3SEEa}4#>IYxw(=~=S|YrV&B4EEEDkAu-S$R8LLwKA@HcZu|3Aijl5 zIDh;A4+EacsOY*ECIa`t(UJ}V^pdnQ8?*e; zA(cD0b0?t%jX#?IY#+v~06~VM+*VsoxE<|D-nR-MyS`fjqjzB_PY3Vo?w{P_)>!PQ z^{IupyWQ3-go-7juBf9jYr1g-aH}yo>Rjg}4Fky&ccKTyb_KcsxvS9e7nlRMghq zd)&~LDe&BOC0^aD<3X7gF`kR@=Rc+7v^JdigX*Ohz+*8F_gl!Uv~fNNf}=@cR<*BN zmXSX_f5%I5b5)2Q<_5ZE;N4ztcFhNZtE;IpebxG^uiKUm5jLLlSEEx6YeyTK0G2U@ zVS%m)7QEjZgN?fz*ue3-s;2wKpp0mLWReS(bS`7Jm&^#VTfq5*uMij{c;!Y5g4pU_ zV7HhFt}qpj0Xm&$V@%t4nmKrkZyon(d3wdP`ykK5_6*$aqT=N^_7M%uj3jwH*c0r5zP_$77Rj-YfB}!9(gx7hdM&$VM0O=1#RcY9MRapGVj@9>AQd zAD}kn2heZ%!aVaaG^4>Qfj4CeYs3U*L&XD((E!GVyx# zUJdH$pGzEp;kZK_^fgL?rHcm-mM)c^s{CT-f*xU9QWJG>i16#s@U2z88AY9|i?s3Y zk)>4?NPPD1_p=6K7BI`k$t&<5`=)^(w*=j|M}Odb1sNs5%a7W)QhLW62a;Qjq%H(6 zIgON_2M1rc!ya0EFU`o0SZo0q6m7;F$E>hHh25ZFk`UCDmw)5NJ|ZfNV!t)o--1l2 zTTdg@E=*YB6Q`Uoql>FsmfLaDmPw6|Ev`y1fpJ%4K#7`9whCu=DD}b1G1wJV-x|%l zeY$W-QKItBvQ@Qu%POA$6KQIC`>n<9t5dv+`1%tmp@t2E&+#Wh33%VbmNVDZ4|v1` z^5#lszy2CwY@G?BOF(@b8@*QR-YJVrplZJEz;?#GN({fL*8I@6-=sgla4>ZO+oI7j z=v7;vf;#MANOc+J;4&?LmeNcbvSZx|z)?T3<-;VR^(l6?Z6)L=a)KI%3gTXrShFp2 z$09w5To{uwK+-m$V}(G{_E%!P3RsEpsW3;VP83N%(q8@vOWI#&>_>p{(FD(0jPy(3 zS#!}}@u#cX;{@#sFSk9emer#t)&!M}M(L04n+GBYI>GPbOaU$aHP<@YW5G>}%~?)y z6=wRb;WsAs5S8YqQ zY#w@Y`$HA9oIN(=uadep=rZ?NCZZI_?+AeU!M0IE@2mC7cO-Mr<8!oL#_NaiWDf9z z=S+gVG4<{riv>J4gPta(EZsW)kb=!itaFSPuL#gz=wMbNCkv;D)3-46qYm@eBGuq z+=|@=?7ZR~?rI=3CE~F$fom`>ZC^jjWP_}Mk$Jm){%vR?pvJlK{we%Br{ z@3;Q#ZRJtpRw6hp>(mkvsK31El5L2ApT61Snw$Qu!v+g`U<@Zl|8U5yRpGdgy6<5d zQF-M>pq%YyxN-;F+CtnC18UnN@dkqF4J391@lyEq+P;muzoH^Y#!M3CFh+@r3VTe! zJc`E5gdi6j$w^bg5(G#Y{fi2Zg9xcj;WyrPXQfZ4vf3g?Hn_PDuF>{&59kx>64lN+ z2Grkdo3W&0)nuuaaJZ7`{yNzK=h=57VnJ_yx5F(E8#VEpfnwcwog=TlO@+US|HtUf zgEl~U;&d4R?2&M0i`ZOtdw*WERW=2{5;q(IJ0(tjfo+<U&5?l< z#g%Xd&ZwW zpMI^V&M$^^W$Dy_jpy$B|47JyjlQyRvr@6$O9_TC@pE2mNPoI2Yg$M|v<6)-VRz~z z4IZxK1Vghi@iNbIPusn$UGPM=_!7scA4$OwtQ>~@4Zg>c2ZbRdmnp?MFYpDPp@3Ax0$*t(a?>`T8R< z($;OxBuyJf`HQB=C5;j7o`dqjN}>1dy_+RiwrhAp*`=eq4aeX ze50vyIffh4YF{%Ah&fiiU-Ok`>(1A{j>Buk2ikEOge~U8)@Lhx;XXS;yP}dr=oFKzQ_< z^hJ@9853ICi-CIwWKsrIjt4v8c;{Z~Wg#0T!&i2&O1vuwH~_MTj=UBu9S*uF9Crf1 zGvMxCzl1~U1x~phw`;vZ+a7k!M!Zd^r2(1_@X;i%MVN>ZfFvZtBpd6we}k?`{{rS8 z^!5=CC6fu#d-igXy?k*)g=!C``>#)qPB*-&IHF+wm=6NM-D25d;iSqp|8%CzthCEu zxFD3P*FVxch#iCSPgavK2ID@H-*ML{>PPS|hPI05}NMZkw+ zp>;1x#b67rJ5*fBS@WIJ^7iKxQZ_~*8>42M-2J8J(lLkVk$qOxkj%Plv)8-U@NwCU zpbOeNXXCGYyBhfrhFuV40^ai{XTJgN} zrGqEO6InqxeZnd<&4x7rrz_f4;2-K$#$js!LKtr{aCEQAfWk9G9{jRjtjo6E6G0Tl zKYn?&$iZ>h5hz4!j$d>#WkVk#wfGJ-KLvgG~UYsCR$j}uK9S3jBN>T7-FfU;%*qMCn`SdCIOez=<`ld)rXdO zsf6rzUTEuRoJ3K?f&ByWpJ_mB33GbN#xDf@0t%Kq^NI%!XJ5C%kBmWKbI}Oew3w%n z=?|25!Jq>&=FI!ZS4R1ZPh|;;1T>xw?>EG?_qoyL4{&WBIoT(;etBBaGIt#J_;X3KL@w9nj>)! znJxq=O1=dXQ{22@8U+6*3Bqj>$bVCoNSPan!@cm0ASMlpT2!8Wb?i<6`~BNJjz(5T7ggyH-*&WD)opAhN62HbMj$9eEd+tBQc&cE945gdy!kM7A7)uF zn5b0DYlcn{4#er6&7UEE2)ipSEqz@nIE;O2s^8Qb6|bFaTeu7(B}m1|L6*P*UT?_m z^VD1l1Lq$>A!YpdIXl%cJGitOY~4;K%l4Y=?1fk?CQI2V`I?Coj#5o>H^;SsTtkV6 z9M>bS8JE6dbc&7_G8%0_>cb$Hw_0B{^L)-q5EqvC3Q6oUX<@wzS)&`gTmuz$(pb&? zFl6)Thd^Xcu|_cmG;%4&etg95T3FqcB?WGGW8?`0^UeslGP?*_O$ zhPMHaK}>v!ykb z)jizUYZ$~o17HXg0r z%dD2Ep3bsN3WLc8(#n5419X8hXEc)=>x?AMUGRwE1MaNJy}O94gh}4G{xC$cO0Ee| z2sqWcRvv9R@Fl7Y?|s{D&}W^1{H)z*{yb{o9{bf(u~v@j z!%%}q7(C310Se^~m+Ntlok0*BzVCaV^7AP8Y0y{-Q;7SVV~~I5-iFT(o${Jb{A}5- zsc!j=>=?_=M~t(Fmdj8E*V=E$#?(s%Pf^6>$(d}Wu=HeuG3t-g9zQFmHhH60>;J)^ zQr+iFJAWnk-u&+~XwBU?-(Agk7nhR;RO)>oX5P;Qtqd|iMEL^`fmc1(snqnHpaRQR=(Hp#3-NunAn^m3FDRH#+5vJL z8UFsLtizIjMAqwLmPyR!DwSfDl4xCP*X4qsJ_RF(S)=Q(Zu!u|_#}j;rtIE&IrB?e zGwlA4q2l&zV&IGvKS-UYw4GXtQOf=fQS39GfH=>(BX0OUT9(@p8Uf4(uVVYwarQe?xwjGSaJirl`Z#92cqla#0v*cFRGA>5J+oMXi@^ z-NCij+1`N9v+Yl&_@;YvZCU)4(phtJrGF~pt+&|g4LB1Jus+maJF1nXL7yi+)-*@ex@iF9au^ zE@R>i&oJb&QRP`qnG&>u{ zgFqOkWx@mZ<&LyDLGm}dQI2Jq&-d$*9Lo?h1-^oHyob!Y7AYrvTt>KRCD za?~NGS7!1Q4OLLF2}*$}fs#HWhT2 zb97joO5cFNzT2%w>sY>O8jpN^tWSzgHkdwae1W%di*xYU_i8DygDK4`;nP_l@K%4# z|9$hL5S^I7*!d~P?M(cs95t}06K<;RPqF779e^n3M; zc>U6Z3Ye@;LP5}=R}~%hS;P;Y2xq-pW8rJv>s4aiq%*0dwwe_4W}7xk0B>#PYwuoR z;N_pgQKsBZE&YBkPLp=W#6GN6zz_tr4e?y+nr$(atFDK7+U+p2h>Gr6Q%?&xmf|$Q zr~kz8!#bZbylupEyCr}K5;-BM$(iefJ^?iH#N!yN$)HDc_`STEK7s9>PE|g>sO?C? z&S}xn1`$HyaL|NC;cy49a<~`Q_w!9hqI{b7T>AJba8L9W^L515*Uk)fP)W|OcNTN= zgf<;iAdC0)w~q4&8b0AwMYNX7<7bz6lvw_Hbi=USYf%Zlc%a#Gy4_+hV?)2Y5jWQf zE@xS1@KP2#O$7H+F;~_nBm@ODd4Mc*;CQ@6C<94Qh&R}HwHTGjPWwY@&j-Zo0y2dU z_1wRe7f=mngeVU+I+Fx%5)rWed6OIdY`~Uka(0bnuWI;{Doy=ubbe1{NvI5V{$@^#*Qqe{TaMh!pg+Kp`C)<_O^N1yHc|;$B%3U z=5YH;(*j4LC&L4?;zWmnhqFS0Y)o#(diAC>*qbNNRH1x-)?~K*t$#=@|NZ_{pSoG% zGc+K*AG}&N=WsU(Z12ZE%CIdvc(i$YH|D+8`9R!qMBK1k)R)&E>{{Gk8Q%You{VK- za((~DM@px(D(#DEO64F;NS3r4LL1UpQX9Z@sHiYZCB&E+ zk(q>fWH1Sx|NYF2?R-9;@Bc?Ho!2?eGxu}f*L~gZ>;1m2>!yQUrn)fp(AOtJ?+yPV z8^;nH;7oAd*p`Hg0Rmn$xef9L8`y@rH>v`d{MB)TKb-6m-v<64CI-11L5B8q1H9k* z>=$45EbFXk6ozFd{~4{Og1MaPcYbjY0dlJdPQO4ii>Q+%yJck^pc~E3ex06r%*|zt zAJTtXSLEc>k#qeS{Zsapq|GX;UDG0%Q$mcip;0aX`~%Pe)=sWRYjxx#Zfwr_v^p@d z)bhw&yW+iriDi7ChRz3nKv--fBPziR*zjZzt#LpdUTM5PYoH;O0fP6d#EG=$w}6FV z5V2F35KHf>9!$6%u+s97h_*1{w?03w*WE;x_K+geH)i=5+~iArEok(>hZ{Yt3mFZG z<#B}K!>{3<%i#EU5@MLk9ftZU4oiB&#yc^NgOgL%d)o!*?Aok3 z_MNU-v!WMYpUMzF{v}L)+u`FR!5h-D1L`B=p#VXlkIl39!`HGSDvo8my}w{1Pp+TF zSZ7`lm9IIJqyOy0&3JT<^&{jtz1OduF<9NdJMtWPTG`?ye4Xkl7CaNhI{dWnIPrvp zp{25I*6*Emok1#iq=I43)je?8sk^qboA&)4YLje^rA%GbE3e0GBHDUNT$Sz{T^(@^ zy>|XjgID;W<>QQC8YrmyBtIK$UOA@h?ohuL`*d}7*e!|ijpCbNN`Z1c18DxBJPKw= zm()ATpSkguhj^9FKEo~S#|eW1UpXw7DZeQh{8Bsd&TBFrSl1Cc@b?>2#pcW)oeH=S(<1Mjt0j;5xf;a zE;<`Dd5-$V9t-#2*zRihbJJy8X6^#VBcSzC-OdrVIag_iHSs^{yI_^QZ+@N4LS8pi z_L>o|rHVINLCwngYUNlm3%#guu_2wvYvUTLa|{pMt`gIp2yU`-9zT;rYb{U?nydY? z%jei|tz@A=%GpFw*-Bo`{hL4SRiyoj=C^21z}4*WaZ`3C*ec%ij7X;lPQ<3(C#%)p@|r-%iwzps;iKpcl?} z;BaIvVdGOUYm+E>1w7qzAZsn4y2>S?kRR~Eint}OUmI2IL+Be`Ts+==9Fjkp8+7ns za8TK;u5Jm01&C$~uiW84gbBERd}pR4uRi^I z)%e;{SR0k%8Q2oEXMK6W$cBtjrOxif76rnOy}pT~C7^%>*Dc_oMu+M%z{h=0J8`;G zE3nJjus`gU``anwSts1R5wBcbclKX{^#Zk(aJkh3mr+(p{%qhGm-xD7t>2vlF1TN1 zJJ{G!+Y!=!g)BF5DO)vFZ&^_oad7N>#G|A&Gt%~YFjwr-{P$Lnj6G^&Uh$yb$Ek{# z$>qLg7oate_h=wfqkdsbdXDP7{9~CkQ#q}tZ$dJ&UzF9gqu%;<$VuLvZN2r(v*(ue z5z^+G)9I~E^~H`>XMaSZ`$PKQw)U@Ps&5Es$lR-G!+0z$kVk7JVPAnAR<96v?PmyV-R%k=&x4iEq>C?k{Y=DX%S+Zn)R(Tf7{DC4mjr zGxc-q=C8I+T$g$`o!AvNe9q0cV$37V-3;$a^&P-{af9sIo#H?HaPJ6;18R)z1cSZe z7t4N|G>LmA3Z8YX!BxX-0(?eZ2@(>k%M5xy)qkN^4;Mo9{cdAdqsrCM2UTL}E-qVm z)rXs(H!MsIzWqeFUh!*JKn?5=dd8i=@S}f$QSV>|doW0aM!t#bkP&IsQ_Rz{9*hkd zsI}_?^C*EULps|#-sJmm8vg)6Y^#?3;n+YmVO!IqTy z=>R{L+kk}Fkq=_)b41BIIvHfpV`yEYFid7Nk;)*ae$U%3{xnF3@xeK=#^QqL;^w7U=$UGUQzjiCF z`iE)~fu?$n;J#r|0!dF4%{k$4P>#V)xl4knqVqjP1^J&^b(KF2QzrM7_rdPW! z>lZTON^6bz=?T}Qn^=DI%K!i<6uHT7k}%>nd`;~)=UJzijwkqy22Q$56p`?j~EIP@JjCdO@rWGf$o8_W@B?lZt6w2yj7N#omG_?O``Vv#g= z0a{Z)1Mt$_NCe2^?NS?)lE0>Kn^3tQ`>c2X@p-G15Z0IA!alccKg97~*@#m#p*A)k z?_#s`8S}lTEhX66avvfT>KfL$dZzFrRyhn@7kz%^bK`YQ)meOf4EZk}uMIen2#CsXK`G&fFaCXk^LOnS`xzfsyMb~!Il=}?IapW}@dq3^ zq>4{J<^|thvF<=@Xs16TY%x(~R7eE>Fm3m`A~c8#r%0ReD_`8&)=~8icY#S3)K-(v`TXP`kYK=<>@ScSsxyBik#Uy4;Y~hZ zN%W4Wf-B5Lomw+mW3u&^^QQOy(mo54hem!6?8#X@@&J8xt|gcObjyhYA&bAXg$#|3 z7WQ1zBIa#2vpfreEDcaK0NOgCw9v>nb#OM0WAt4Q1fig%n9x zO(q)NGw;AT3Yb<=d@MGr52()s$^_r z#$7Kwg;%X_vNY%}KwuQkeze;i$-tX z$>~{&O~PP7y@0x)Ky+Pi@-4>Hl)H1LB9?@YZ_3NAm$mKt z$+lazPv*3&e4b&@SZ=^-?%Jy|9d@^xTzg!YE1a|bnj)~Hqw_q7&}#W=9DkEGvj0R<3@`1{?5 z!ObZ*E?6x~kMK*lZO6D31I`VU%wfwsy}|nqaOHef#f4PuEtDn)la}-bc)1R1pB)c> z4~!fdiPH&H8g`TJPrZ=1HuuEY?`RxEd zXLkPAbnCNP8wOkry$Uds%_4UNuaW_Pt^-Mo+4y?!~sG(8QeEs%=`r)*VxxANtU#V zR9dkjEqMlIha%|TMW%9o)@aJ@@Yhn&a+Fq+2Bxz1+b*EobDXp)uR8^Ct1J-(1Q$Sx zd(o^haOvU?Sz6tgR4WrimxROhsM6|G_@iFIm9DZ+92xOc)05#-B)+@+rI0pv-~3NHm+q7hsm z&$iiUL7Zeah(}{eCmxJr3Fv|#+*Ob3pv_ky#}$%k(xy}4$~e$J=yBw`U?@6SKmaA<9dAIGEWBux3nx!T?z!y$t+gJ9-BjNMI8>{YP%Bmb#4{`XUX4K=bzGO z3vq7C-Q29)f`POIdU(6EBPYjOe0u=Y$7$s5Ytbcl`$g?1A8tA$`&^)fzeca^UQmNG zMQ>198wK+5)aL#9>jKCRtQpOx!TO*OCX+14r-wMKw{LJ~ zS#R_?(CJC$l!D{HmdWHeuy$NB`C3f=S;Sx{p=7f9MGUrp<2JKkU)V+p_?K_Tc*pb8iyO`j;VvDrZfpTPA5{{bULX^TOl(qwkm;8aD5f~p3vZO|bsfwm>8M7#SdYg^S0;6fPE^gyNo5hA< z?VAyk!6Q7d)Ed@SiF-I=)o-(<{fR%%c^*wTmNJBKn2Auhg27TgP(N{YuRv>@A`vwd zXH`RI5Ed%C+&^)!xdPIzKIlx$0R<)W8o|QsavZnrN+aSeM{%j=-`E0h>qWk&B`uiC z?N%sn%|m8`@%vs3KqzqnVn~O>xZ&zIlh*mT8sDxx)OE7tfW`S$G+HZYNS{uj%mfJ? z^HAk6dqE3%Q8%1lfE2M>C=`;JFcVdxVBvaia~EQcBbCERzF1~@>aL=XNK^&)>4Fnc zLZ-LvXBR^FW=%U@e%*&jNr)*R&*0@WWMcJ3H2z58%<{F-m-F79x%(dDO{n|u92W?Ns)1q>@l!Y)mb)fa-FvapRCbOgXK zOaGdKLR`d!olDU?E(>!1FV{wW=Y*VncY(3sOS*pItH#;O33 zpuLsTsX4LF*2*8btl^UAr%r0@kXNV}bcO`zL>3Q|VO0c{Ng(=t0+yvh^rkAhDv#5Gn&%iH!*uZV)iLtYOuS`V{&$&PW z$cFm~zTbpbDo9L)(E|AjX_OT{sE%J=212Lm)#+Ql^&CtUvJVE>ZD{%BDS1LE8vCu) z&p|h|rwb@OP90nGaX1yT2NySgBcXHl%M1TxQECd|%8uzk>f6(hWZ$+Z7 z*nyc;qU*g+Xf=)_jxpco5`c@3UFxbdsjB%m0y~1xMwrtUy|OTOf2+aUOeoOV5u>~D z<60*x!^ju?g+))W8dbjD{etOd1`f*rV^=8uLFa8E2J3tQvD;Z;EfoVtM+ zgKhjI2SK(r(b9iSap+s<^Y}Eq-Eo}(3(w(-2}bokdmK)+?=9cvv@U^H%Jk^)Vaj3R zNI*0a;1pG>*|K=MQdGF|rrFGV2*8n-jd17=$1Z04OAjz!? z(nz2~2|Nj-?|TvvU+0EH3&V;Z7xt+E`v%0El=++0Ba4NN>Q5#xe4|ADc}2o{`zL}y z-Sl2b`|pLVW8Fy<6=hEz7{r)xxu6V=X$*u0xU4~%;nuwXz73&u%0(G@V!9P!x^$4n zl%RUhVdzzb$Q*vzME9k6fOec@>S}l!VfnK@JmD>&%Oce~3Fkr&dfJ;^5V1-${1DAK zKH|N&5=y*dZiG8eG`K7m!uj8eXjtRZj-{?GTRd%*EArM5$w!27{P89C$TvvlyzW`= zAbR6z?B<(+9X-@Rc3KVw7wnvYepxPq! zvDNC$%;Y*4*4W*Kk{zcX@;j^C2u09kfe(c&wwGkkK;7W=}f?L*wsbIt8K(FNuN7(ew+@XKJ83=~`}r z?EB+13ds@dgS0JOJ-3z+XKwaL)7ICVfcCkx!?PUU)NHLLI5{%x z>TL_FzSsu(H6=vm#T0(TEqGVyo3FFsO`DaJmwV?W7<%U#@Pp$yw16k-*ooGphHGp_ ztJ~|LnU^AlI13#^z97Ev60W`fI{&^z+%WVf5;P3?9}~OezfUZc7>I+v&mP<}|8TW| zy2mvSb|CRp@ary{!h_#!2RaOn@1Xq_}e*<4y>K)YX9Pdah9f=3iG z{?vvhUtbUYq#1)UB!jY!t(WFYo}6-^_HzDS1E}e+6sNw* zG^89?+fqiHEsAj3`3*nNoAd)t^$i~9sshM1Hk}h=a$;gK> zjWdJ>Y^ZBcxbsG(&D*uP#P&yix~CU3v^F<^L0_V6l?^*sC-r*m$e31$pNlNH{3PdC zN%1Epcy;*g`71sH9={HZ=X&s~L498A!g+^JFKC2Lo*DP{!8&Qv!DFOnT8~?(ToM=! zA*FT5yQRhvC`E}J@Y6DU;qj0O)Bn#!N2rb1`O=l3_ z9Bb9I{SpTcb;P-I8*upsnJ*+qN!d7y?qm0ky*3dM`j^rza6F1%P-DX`$d|profiKz zt9&WW0{cR1{d=_XDkK)k6>+>7$ct6D`w=UgkkPlNsU^CsR8d?U?Y_B8y*Q}7DUMcb zQaoZ}P@Omb3e`^Ae`G>{Ij{|@|MBH-t7pLWKu>zbwP~e6 zCa-(*N6Z0C&C-*{{CuSIcG+&dWm=8yy!r9j>fAqVBTE$Tp9}6o_>+50)h<;4;X#?v zPWmKCl1m8YqSO$iKW4tj+?r1W3$%g0v2ZUnsk1!eb4M)R1nTc-gO}&v9;4>Egfd_Y zlPJASTnN;_T(b*z5_f7_jC_t>n|p$AdvQLL;8j>WJ?mhmbSzg&D%v`HoTLaV;0!z{q>P}0C+qX@8&dqRU z#1$u98R!!`{;3#{n*Kp6Yz5n}O7j2q!sl&5e8Am^0RtiRxUWoNX#Keyxy2mdEUCGH zM;^ngy8KtG|1VMKp*vX#}}QN z;gQRM>`PZ!)V4GG0uui@(U&2~uZSw94M+7z{oSL>&6b8_FceKLx0JMQ2J01)SzEB6IxW8(|7`};>MB56*Ogt=|V~W z@Xx;v^@R``^{rEkcHjT?xxVrf?3rc9$?-)_lWPhSf$0tTlG_N=X|(N$_VwjP5& z2C-0o`Vf4iBwyc9IbvEd=`}sCaM?9D*OGICvCf ze)}^^aQ7|m%cx~ZxBuq1FI%|M{gT|9A#4JpG3g($Z#{<_)EMzrtx@sf?c29&CV}u8 z5O6E@v*kjJR6T~9(v{5ErjPT*(Ow{=1sp^a^td+U_dp>T%3q49aO7sE-1}6%3YmZl zqZZ8;G%Qi3?yPlN!1<7~ACrs8LAP*B)9P~1W*s!~opB`~(=nf!>D?HJ-Q(ZC|5QA8 z>$XmQR&z3@##>jSszF?nsV^{GlVr=WYokM2ut^J?Oo_Sy3w->5`=$*2o}F$5dMgVA0=jo-1o zl4K`BgW}PSqF(*6C0AN_a*3bM0N7NPd)n>m*~Wj$I*hw|a^L=e`t2&D3w~ws<72r0 z@|@yxdCqc+V9=%Zg@Y12;K#5Fh^t!6i5{;)8Je#~j7v%3%IUfUmW1Ix=R($&Cfj?@ zzBbq9JK=HcKu7tpPr%y?=`FT?e;qy;VmqtJv#+3BE+PnUB?4yjL;t$xojla&b zhWdW=aXA%(m69=Q7t2q<|9H%(eS*(PJcpx6s>Sg_BM`P2k&~p+u&gTM==T|FiXdM~ zY58gewTImc7KMrU4Av0IISxxguO$&aqVg7>4Y!Ow>awmAS*Cf55K)T&FrTk zBLz({G%Ox@cX558S(K#I=T!wM+F%qT<5-cI8V3IicrrhzIwo_}e-`MV|DJLw;q#+GOCxLI>K z-Uaqi<;P5Dh2e0Z%(o`T{cLjw+nU$e0@m-FZBIbhTpf*NUO^_=6V@kMH*Em~7WuO7 z!qf$`YC4^mP=BG*&(`Al5o;-4R6|ZQuU@~g)oPEgy8hRBDlgvVpZw9QFSn*qZzaye zt;>fW(mop`JiOaGMK~TjXe(_IxRY|P&osfl=2Rcjf0iKF|!U z8;M(f8VhTZUyH|MriB-m1n8`^FQd^4NV{K=AE?Q$2L(!lOi%zxO$t}d!le~aOtR$T z4|-brPb|YFWatVJG%qPcFzw-_i|>2IJJ8RrioAHp!={z(g4F0+;^!k zg@a`%hj99o9eYWkz$v`PxN6deDxYx=5B#{}b6Q*jwH6zTM(uzTm57U%ddum~7L;{{ z)~Q+R3cQxjUzkuZij+z=(ZS?j4uL0sOJ_r~*Xxx|k}89V2E~aYcS*tM*&@n1uRF<} z0-A-}=b{O-ws_Z)fKA!-lmTXD8-Mls=8#X$9_|5jAqbu56x1pa3}Gsb2& zdtt<@L+Q*CU=LCE6M78yDsPSR2oE0;XWx^_n+34>I~}Ilmv1$DZ)!MT=^@jHU2F z@F1BWVboc=vo)gb5QZu8@mRbc`UV;l4R{X%N*-eV0zrjbKRT-<*PlR>(;3_3K}9b+ z7o`P3OqjJE{ZeFv0P0qGg_KqMzx$8QlB-{^W^`Uw1iM_}BHZ^>4ctOo4;PG$DOe-z zN@eF0Xm#p=Sh4~%yKi1UuN!E-0N6?!rXpbScp0FN<^AJEY&i!3F6=%dyYgXltl={Q zO6=jjI*ZOqDd#2OaQ&bXxFr)jWo9Fn@AF+&BWOC33Ul%iIR@ueAQ#4@&0a^U8)3a} zw8iZIc=2#ug#i>w!Y9JjmkPg!Lp;Uy8D#R`6bc1_P{vY8W?wL%@Cac@E1+_KrXsmh z0?G^bm4IH9JzX!-1RS8q{Iv+7sM7vw4#_ItQR$S;;Ykh%FQ7`r;DV^X{tAaBlZB|w zI`DghgUe{S94JWiBOOC~F`pbW1J2?>oZ@nMpoa2hH+rcz5R05QtOwOdOVC??QiY)Q zQpFklLFLe{W{@$M?lBO}aYV1r_<-1n?pDP(ff`O1aEU6TF{`QH4GKI73p1}Tfa^QE zr@q2ci{r4*LE$iBGU*;N1^hHaVDnYbX5czeZPMZI2rW_98x-pAU<63+MgX;O&iu|P zKw4O)P?L)?ne=XFGfGRKnM+RGU;Tamd(@_By`}FL1&O-IiC}W3g3n#j467nDO~GBa zN94kz<(?z`?zsm|bxXQug!}MB?`U+c%5-=NWQvM+nwF@OkCmVgT;XO?yFlkxP%?*B z(8j9)p)m?EmGGHOpZNjS+KwYoA7*xkl+OzW>;~kXi^DygiaUGhLL>?`XZw!VtCrtR zUJ4%Ggk}10xnk^Dad`Nw56UXmU2)FpI!2{20SR0d=wL0a8VsFX-{Ir)y+j{pn|Grn z<$erGQ89da3F4YUkUC16C&_Xn2I6&%v)tCszM6>Tn5*Eh9=D0I;JZn9Y57Swb`*MarOAPVD1 z@LXjI1r(C9ENCgpRtS>52G-^WA%BZV6jL|Jd@s+IcbrpuJd2T7 z=f3~-YH%Ct`5i`JVp1$pR+d$Q;tFf}6i+w3rj=FnJm2!87*LcBj1%KDoTa-p4z;e2rUF-^r`BdBA3>w}UMwnwugO)?<9Hi!u-mVIL4vIhOyF>{A@5GO zR2@ACRN~|Kc_tqeJ2tedUAjBPkhYU2nnMc8hx7sT#6ARXBpRfp+(YKwbEJNGa)DGUeh#SpAivPkq447L3si`BsEr_?%7 zSO`$$x#LTxRKZeJUMQ{Ym$ha_Zhg3f%dOu?dD^s%QW{;p3QNDjp{kh8KqJEux_`r$ zG0*P?{aiUg;PPn7`4S*rPvMH(PK2*>ulGQ3&VuB(YIoe3IG=K4v;{VANB2GPD(s6} zFRo5Qpj`qlSeV8UayTafk?F^mlNs;0m02_>zh3_^Hawlkea)>m!W_~#YUQziAn_F@ zOxX1N6fZF6V)fu>T%mbdvRS|eY~GVHmuX0nJ@RfZsfM=W8_Dz(w_Sz#>(*WWlxI4Z z>dX}Jw|}N;ST~1&q%U)h)^=TX0`2FQF)WR}<-zvF!SSi!f$jY;)p^I*-93dZ#^bPB zYg8P}q3uYos(cv?*q0sl$A<3#7&a~lgP#I(IDZ`)NL9`1NW$6cn&2INu8<7M0;lzl zU>wZ_bjQP5L0jWDvC~}CT5OH@N8gVT#K#tDs7nl_p}k{F)uyaZiPrP#Z&5cpR!oQ+ zmtH)E!vTKvncmO1$kW}RLC!S^(>Ge&0rl0(p#ODzepJFAX>|2OY+1oF4>k(KoVpd` zKM~ghHb^?28lI2k;~rs8UpC=eTYjH-6q3)-S9&RwQA&g=1B<|YQz0Ab(FUCH80`_< z=5A0;03jn}0J_-nL-D{XUVwcoD8N?)MWz!VxsuXKTD~ODz`AY-;fL+$S?Z%=)`>i6 z-9aijoHF{v9E^FA3;jM9DfSRoXdsO=GR8}MONEoj)$r8@nC4QXUP5Q+<_yK zH&OUL1NJ7T!M#FnQcR`52WIqgAH)Q%Y*+6<-X(Fc2SSmd?-2|1IBI)2N)ucINs~sV z)fb+vAI=H>%sIYM;uF=`@u2JJ4`a*4;=%fq_(8^zD#24l;1=qSwIAt4pAjIYc=#RN ziAF}Fk;cfEq7QIzh6`yN$X3~T`^a4on;~alJ9$UEiwT5*K?AKnxIw;tn6u$1sI=DW z$z_W?_vuXCm}}m|lD=(dqCex-IDmWp1H2J$p9rvvi#h!~@ejj|2}$(32F6Eu{M+ir zMfX@cDxOw>lu~;5VcWHDtqq*0@+i<)NUaWtha^mV?V!F;t82k>;nlWIM!@rq3C`tI zYXsW|Og$J2iv{5yC>^#{+GpT2K1x6TsYN=NS)O7a_%X{E_z;0h{iE@#Q~7RQBG*g+ z#LOr%nJ4)mqOkS*2KkWJ#L?V7G0QDk?C*CP0{Op{^-7Na*HiiqI+o{F5yK>djU(|v zaHo|B;@@Ngia!h#VE$J#P&ipCH3Qd`){NeeY~6lHL6aNTv(%eO+IRdzAu+^fcr-S9 z_KRetoMRobpaDrnD#$`JlaSu`?&fX3o$c;s)H*xi4X5Rzt7^u1go0=0wGPaTAhbzl zzErSQcD+yKgoLZj)Xc+#J@R6ZtTwI#z;%^RRZWvCR$#S!8OZQ!>$s@(e@}hZw*~>T zm@wQmLUq&oOGTpWWu?oi_6WYUeB}96*2iScpn>RG&IZQyGzcXIyg^|Cp`jSGIjIiF z8%*q2#V`^w>yOAN6n$Or4C&SqZh5>rapStn1?Ar_6pygNhj|2VSfYVK#n}Wqkm>xx zX9h^J2=|^uj~nMNW>)zb(w>2lPztNoe*_r_>n`GPLgR`bQj#?}UK|bEn$?LZHec<@ z@yzby)6+}z4C-%;r)dha)KSLJ=rfum$KLyD4G9ZJxSmA+8XB-?Qwm)JwQ1<0LaJxU z`z3*Q$LTvUx7AT9`*Z+0O1WnurR-!~NkAeW+>=FGY;-ML8l;;fd2{(EE;t@h@4)7u zr)g4ar@r3zMj5*Xn=={v+%KQ&o7bCf0N8YI6(=Gv)6d5#?g;W@Bse(6+6pOU=;o#%7asGo)Nz5HEYoxvXzfp{_~XcT8$yx$B){d9;q|4lEde?N z;)9D(ID;paf*$wVPUV^2F&ZNnCOMw32~I#Bj=fEikGp|Fy}gd;fc#7^_~#3Hg(s{T`b$ zKu!PaZ4x^b`c%JT=*x!)l7(j&GV(&lIh1R7W+65?N$<1hYl(FtWAoxqG@{9ayu0c~ ztLImK5mc$`TW$IwXzi;F^f(*i>~|=7-?4M6Y`MRw+%RQdT;M~elm=wHLLG;?GaW0* zXwSvWJ-B)A>jvbt0aUg@pvphnarwnbpLxY5ZzQ8kodFYLP#rLsAg<1?#cj<+85#>_ z*$A$m`5*5*#l}8$eP&GC+yi|QiLRgzn3Nm=CMWs=Zy(oXf6c%y08Cyk?>LydG$s7- zct?K4X=_{_sryC#=JNeo{KE-m;g}ZPbnIn75Wgk)hz7iWp~*UY!A?78+d1oA%hCTc|8k#X=f5nL|&@6u%%g|G8*gwPTS zU8RYgJtpWT`ZoZ^6%VOl#xV*5NU_%WDAL2T zn8Lk-X)aj38(wptP|HNnyoP7tvkjpG-!;>$x5VsI#-4DPaaoi48jZYqf%6Wh_?|Px zqN%99Dww3I^5o4TOIMN-i#2$1oJf(s0KSSVwAa`sIF9o^bB_ctx<-gm*d{#y_V%dK_ua8>Zsog%Tn_80qo< zuh02<>~k%+HU*zSjB+DkF5j@V zSmRi1A+YhbLB3oM+=Y1ESrA2I!m#NvaCmLaGir`0x+f4a$9YXbK|IUi9ehB5JL9L3 z$)oXtlrI5yk&N2H9HW)AAR@Tqhm&QC?xXUGGdqmR7vZT*(R;W2A?lyX{E&o3o*W4p zFuzJKk~dMWhjK8qifRWhPUNhZ1ZEP)&r8iJc+aQBz&(UK;Y42WIayg*k6-imG3M51 z7HcxM$1TMU*_weIBQDp&ulA{H^DHViM-^?{E*AXEITk_ETksy^{1IAfeP_i`dU>W7 zB=S#`9}|Xwp6ieMZH?uE3g?Sa2d{{rJM>3io%E=Sg(EV|b$qdAoTOSZ$T#Zh&=Pyy ziK~JxmhRTrzcu^t_=C5=!JNwv7O1s3xX>67{z|&H>Ab!%K^=ey<^a&i8EVMYb#R`CtvR~bl)|vcVap4sTyOU}rPHwQ|iSX1V`jww=2yHQ_x*{OHQ9 z(cGBLl2|WptJAODrC)5FORfx;)m7N0I3D1V0(DT3$$AjS8csYHCn;91a`iDHUSy>sc#l?9D^Ij+jC zcfId@YMmT?UjHm&<5e6E;~NC|`Z%EXt8?O`6fe{6`xXT)s5wo2u>|8?mcUfcJ&aiC z`_y|uO|KzJ+)Vw+EwRkmyU`Kj+1~RLxpA$`+UW!DL2a>hEX{ZiJ!ja=hqqbaj7cdd^LjzAh&5_gp&q!<& zxV%5vV9IO8pYQ?ITjToyAer|p^i$R#FFSO_>ddHXEey+77o;dL4SWhOAmNXMy{(v_ z|4m328c6yGO;ODFap%IOrg{)aNN$6Mwy`#RLM?k8l1~@k$gX(_>!UShV zOjMfGo#;N)!`D9>AC8PX1@OJ-)%#g25}JetIbkqDkXC&Fo^{j}ECR;@e;-Bc?9+{~ z<-Tb3tiKU^;IUxnKJT|JcUmuLugdTD$C4tDbN!01W?tRNr6#P5vyaW{kIk#Ec^M3< zf%;ipyQl&0IJda;Uq$_%sZH_o0#-OV(aIN_4-7XQ$-MWOG~cV`5zSaLpH}oiZ#KrY zSphWJ&DoA0D%|fKo$PumlJ)=>^qp2(=h$xc=e1C7mfr=TE(se(D791OB4`os9?CWALfa$&X9~Dkr}d z^0)mRV8Z;zTozqzngL=3z{#{eNU-v-afA*^*z*?N3R-h#ET3y^1#@JU^itKf;iP*) z2xnrfU?4T7U0WzTNiytAs2E>}Fgyl-HNgNNN#QjE8$5_}!2u<8<^MK(*;8x>p4dZ1 zgUvs)L^SH3k(4lVa1vI6gHBs|tkjUnl_eWeUn&8lGTvtaF9EWjqz8f&EXvuVsiwza z_Q(MN8g47ESS=%yeiJ)cm9#+!P^9C&I(YvsdYW)M-YD3RRmqIIX%24BDAi;QXb@Xs`|gD>1v?f&AD|z;4Odefj?b>o%i(V5Bfc=E7vX9hDv;CSQ;Z8C;PU zzUZvnv6U=33o4RaKEP5^f+9xxH#q&^x~lVP58<#WUW$+v0&R}K>d>a|utFmpj=XHB z1n%<)o*`>FIYCZ(BklGEK6lgiu>CA>)JiWG6dJZeAcXwPVnuSXnY4gS2$6`S*91Bc z3Rc$UFHR!%ZQa(Za0_fn(D%&^L1}AOx%Ca1fcyeVVPL`+d@1da-E#z{6~kn)`t<>+ z1g3F6J1t!Cwgh}Cm@qV%j8FhfGmTE6JSkZRZZmhiAZ?Y2n2higi9}5^SoE7LrRDo8 zH&b#qNz=VPI)2v@i5kKGqld_{u{n6M1c%DUg-=pJuMLN*i9q2A$eRT>EjdLU()wX4 zd;CLCj1&&;JzGk{Qo|L$ktXq#k`%gCtWzS8%G#cJo3NH{Ml-G;!%?pekUQB&L3hy0 zN8swE18#1o18KB;+7bmr+BI_2M}{G4p4y~a)KJikF_eRie1*+p@8sAhhEsVe_q0ha z;PK134+*ck?LZES*?PEu3Ct0g4sNjMY2jVL(IdO8%^@5Cg~|4FTZ?-^bt{)&pE9Z8oCtZSC=3oMXYK8$bCYP ztdxLgc5f9f;N};EA>QrmlCSFhCyBJjo<1Eu9A7sZY&^oh#~G>6tp^H*N)RAnDi?Jp zqydRWX465d@ZBT~?GZx!mUG%@N&$^_hW3TSJoY1nW*wl9ogLEji#tb21cA1gGpU2L zLS}>do>jdhg5K?s3Z_YDBw{KZOgjGp8hKX*t%ho79-wxi|7Ou>%)W<{5Y75HOYVm$ z+@|FpMbz#ow1*4ARe*IUb}x8*cA5ZW+MeNZB^SZ%;mzQFx}lY(C5Y)=l_0TBz`@qg zK#dj(q1e@A+&rnFxsKz9JTG=xt76t+YKj1rMfx}^k*GvT_~1-eQ0!*Gse^$>^SGkg zNE0!c$DaC~bm@0Jm%+5OWlg)eutk?(8>zg&l^4Wb&<= z68pbk(h@8-_)-9U5^cFuPH7yn_sf#F%0o`n=ud!Te)*e&O}p;LL`|PPUt)LU=QLOCCC*F~i2j3#Ea2{Ct64 zvYXwG=0+|kZ@Rf$Re{BZX1`ppDOjp06|GdhJkd7d^gNvDq^C!~b%0zNhZCc6cv@lk zfvtCF8`J|ksWqM}kFGg28k8{~J;%&S^w7GEk;h~h(@BRXRlf68AeAqA>dCRQj)_=x zaO1AI`U?xmu|kyk+V5ZKL)se6Kc_bwEq=|gOpt?82o}Hx!S7FgYoP|w zAgN_gexel+*d3a;pJ2 zni#%dn1FK61f8EGY1NB)tLi#vL^&sa=>9=#}8e4Ui^KXQXIiTL5Y{{#{6BZpmWhf72{wv~L0P(nCLGGur>; zId<4_>w^Y)V`0Np5LJvm#2|Remb&l;;ds=d1V9)_I5oHdOlxg7aAq>H4lp#b)CF)I z!IV356{IbU!@Bsq&uvIx@6MT=6?&P$g-@oN_?BBjPq1(x=AxZ(nX+H=rETlE*%-B_ zOB6m1G@N1miN#aROdG95}Vm^-BD2M}qEQpVP*yUS2Qndb1r{)bhmpcFNty z&Z;vT+OZ5!UbGZb*YF(N_Si7}8@Q~Zs?{~`P*={*24$}u@d@YH@50zba;7uRkptE* zN}lPINT_s&RSdN@o9cL0wUdJ7f5n{e>qgW%xJ4y=2UEu3iD>z}G1|}QSPPK`))&On z2?peN`lMJdQ*ZGEjAmGU?i_%&%&LxR)r9XW2Dq!(!T-sOkTEEasKWebvh?>uCS+6nB2o2w{JT#k#OV zio@q9JeH-WfL7Fh2VaxIi;L}&!sYj?1lgS>paovtafE83$IO*;s1w65JqbcJvH*=C zQ zSh3#VbTy&Dc>;q$09p&j#xK?u_mCjOO~Gg^vwJc=C@ITQ=fD^pkmwp3(MhJkwm%!| zO>mfYI*qUQ8dC$CSCXcy&`4&uP}2BE;(Q~ovIXJ?7}{^Kbu zC*VaWty?l6Q%SXGI@NY-w#9fx;D&>BJ}^~)zx{3PG$n%;^|+8OuO!1Uhz>I;(uV+7 z1P`RuGKV=araVzUuM2j0vuy0`jrj({Pdd0fT2?63JDOtbdm;b@u|bng8m*Wpc@44v zWa6zf0Ea>E#ISsiSKBvBa%}$f zP!hw-Gv#g?(RWH%5Sq(T4y2;B-XF^>^uFwGf%D&>lcRd5>jg>gjHr#&=SEZ0PH4jF zedyXWK8$v1jWDK3rwzXc+n=<_KR;vQtO+#}@j?dhy@z4nYbL4wIV&^j_C!6@rCvoo z_tJ+P8W!~>WCjSwf-Hkdyp);SmR7ZKkarJCXj%Rrro__f8GVS)A7Sz5Vgke6%VA)Y zxL@znK^M5gL$P`5$vm*ITC|0;blDMoIm4n~>?1A?NaFKgdBANbQIZtE|KV&b$^{v6 zBizD)Hz-G;RI!20vFx>RHxBFzrbg|EHc;&kZ7-BLED(#|x8?cb6AcLK=pXDS6pzec z;o@06`*hsErDMr%Zmy*LBy)Lhdow`AfGeTlMkPp7sg4V4cDUN!YOfAg0NI{hrhc~G za^=o740a8A#wz61D$?c|D#s>snoiq0bwq5&owbV=#st0^++WIkl;_l$C*njmVs~|{ z7rWjd7IovRKiuH*qM@LTL$uof3p~fJx{JK`9x*x9Po04*Rau8t;oh?g^U|dM6|Hy8 z%+k%xC4d}xPiNmO-@lxv`hz1JW-rDa&>|X89_0pL10v{ClYR8_nmMuh^U|^tQV!;o?Thj z&TJ1uT`ykg0Elv0MhdV3`d)jRRT+M*~;rwaq5ty zaOBj%3uExYCSeGW0COrT+6qE@erl}H`Y%iPAm;W7|7>+D!Ghc3vSB`?k@PNp92^9X zk!km*qM|C#479b_8aen*`QdYX6a&xXf-MY)bzqQ%xXk6l!x;=BUu0MO&Um!2Fje9s z_G*OX+e!_s0T=O`*Ywl>V^)AZrJ@}{Cd=Cr!MUwcH!vM^Z819!H)Sc7#Ac_#4dx$lXKwsWnn~Jbub`f>j@N3sLI0FF=a4y_=a>ju|M!z44m4(m z)Y29h-Tjg-a|3CX_3^`}_lY1296g&;UW)nO z3zzwtlU?{F93;+xQQ^Z`R8nU&G7)zT` z6Ojq)9iG(>CxPVjg4l#VHPDu4+Xqg95%>#xi)wKK02MZZ%$$Z?UdV$ir;8_bCop!f zpJ#)#mPzT_R&MT^-Ly_F9y5Y(?t>~J_?-rE&|CKgGFkEtWEGBL!4z;GhhjKlzRHxz z_Y@y)0!f$F;lrSrP=DG6Al-TnZ`O^WWP3(z&a`L>l2n=P{WF3Go_H*NkT@Hs4i8nE}7L_7V{N7sh z`fbdPSLnN-=q8ZbdC}WjliHS}TDF$O^Ho_~rj1#=##Qt7yb!M~ZuRQv&zR!a#px4v zx!Xy)K(oi-nyP(B0LlQQUZ#6zc8o_+ve_RBm=_h2^YUgRWb9}uiT_YF(LI7C)bW*W z9O)9S7}R(AkI7#EXJXm>sQ85PqW1;r^8$AL=iHY8ZA>=zTwxEC8`$PM4i9Vq$IcBn z4QpfHDUZc@ypWon6gZFxb+VL zZi{yfW>CE@LInPH$6kKTmSKC~41712tEGs|Uxx1Fc&t1V1nb>CqA(YR=i_fj+0 zC@OjS)KX)Npq{cFubB?2`V;oEb}kMi*Nio;guxrSN`1Y5!0~hwduKwsqi0WV@kE`UP>otbf(&Wtu=`BcFasAJ)PCmUtBl4$KKLBP z^UmS;Mmsn9>Q(T1(Z{>9);->;I-xdpnwFRbR2DPhLXvL0*tl*q8p$x1hs`NoD7D9L)i#%+Jcz0WBw!`uM;7m_(G+r35G_T9vU)Yf_tih?|56KZeFa4MGIbhSkX7{--e@w2FVYu2EAGRlHI5FmLo{QuQ~@)@*J`BQiQ^47Qk|%Z;t3_t$}sC^{0*;%p=7NbFsdc@3yACo3AG zbuo{ChK>xxSO(wGn5pQS42^>omCA&mrJ9J+fB@xC^ADgLL8~Q3LSay7W~4uW4Fd4Y zJB%PaCA=E!=kK!e1_10FOF`>NMDPgOYg52NC#J&?SjC;AO(3jK0eA;};3fl?+!Sw= zm=U?NF{4BFym@^A5>$i;&k&383_(__Ylww~h0JjM5P~Wl6RAm2Z?Yk`T2LV*#+?V? zO@CY*WMgi9w`0ABKzhTBhdn|pg6>0$OFreN= z>Klv<33uPDoflhs(C~3{LXgvaS$g_W3`VagDu5BlY~m-!ZLGlWs@VCViJ4OL8iNm9 zAVbi?UShbCOI2UiV@BPGk`HCLx;TINU6I9wn;WsET2sCE3Tgn>pk&i%irwOo11l$!g*+O`=us2i2 zhK%lX+?NuG5B&0VqcMYhdyx^;K~$@fzUva%^%!_hv4;zZ-DZSJm4$!$Lg_qZLICBS zCI*qN(eErwXmu8VmPJh@V@B)Bzm}c(Zv5>y#=a;eh7qR5Lj~rwPJ5xC(q`%HIZY0J zZV%2;=?7CVQ5Hs6R#$plB-7WQUBaxw_^*)vjneuuU)#YkP@m((;^iV;x`@C9SN~Cg z@P=dTK=7k@YV}fL3F;(1wF+Zyq=q-l@}sd`eVT9-$W?O2MW4pe8rRj6_1)+t9+|aI z%>C=GZHkGDYX=J&8YD`wFxY#mH$YsT?dla}hi9tlYpmFS8GVJhfG}$MVVsF>!^gm{ z<8YC<9QA-GJn?123~c*3q!peVn++|$=uarX4nj(2eOy3)#Yw@)+~rhiX#4?vs3@%0 zm%^HJGsb~S-;L~fM5wo7_0GZIfAd`(%+_;Y`EF6KHQLnj%|-|;Sg!S)5<2V!dk z8l)h#1F~bWJN+sQ=B}Wx2Yv8@NO8lNH-o~^MXC2P4Ib_33jo4`?p~Dqdq`(5;Et%czYH)v|JdtT*VvlQX&f;OYoS2u@;;B2Fq2vxEZ_Z*pam zZcNY9Q%*E7Ck8P((3sa&*DX%UT<5MW#_t!v(I;WlBS&9}#L?%|iZJL%+AhgR6ev@t zq`x}tt>y2Q&dp0=C9EvnyWIS600Z8=Z**SBz3mFc09g(|qdF8FZPup%!3%PL<~A#H z9h0~0wy;S{yer`v6tO8~P0PV(H@7^s(}!yqPxE4QQVR2jqI`>*T&Yb&BpMta2-i{* zILS;C|8~FUkQ>R-AtZ7kq>Nw+4Rw)USzZPT?dG4St7M3wJq;%FG>HGzIh?NoF&aVw zh4i7XF+xt^(Yxpjox`;Q6%!3lyPddy?uPFP#4(GNYbCL+-Ur95&Sa~zmt}5Vrbmmz z_JCTp6w{%)#``o|)??Sh)N*aY3FpZ^9lSAHfaywy5HQbq+f^P z=Ucn|ap|o(*Eh0kk^f4YgjEF3EKRP*gSXCRnv-^1(Xy0qQxMC;OK5qlCTG*_gWd;<)Ty3CDQMLk>`oAih_Yv%AwgTZQ%$Bn90cJaD1G zHRJu$D<7NQeu+JuOuYLcfj^uuONGEwxgkV!6Vqv_`HAOz*F9FMGHMfs1Ef*w9JwjP zY!i)=Q0YYb;QDG{SYTM59BmC2;!N7QU8g(^kc#OU9t491e9*8jgEQouMM~1>Vvzo6 za|J0Xd=^g>rU5gQWHskaZ|bhJt8OGE9Ku1_o4tNLXNSW$a^9+J+IvOl>!;S3)LF^> zw3*|l>RwF9w7&09s@`QYBde-!U$CQQK~EO`U{K4ahHieE_Y45Qk2z1Qw%#1+ty$x| zfXXOVT;TSA#t1U2OU}%#zeJdD@Of+0RM~@0`|kSo1M>l!MB9GK34y;V0KsYu}0E1ygqO%D)ML6)CAB9Ic#E2n$*?)#y^4igZlfj?29t#wz_@Qn}@9 z6i6g4BOQ)5^`L1U*3_dWZ1oe*(;8uzq-3w*LbB#WO1a)(Gmn>_?C9uJHw$vB#Z76j znvrsEByK+&Gx@tb19GPv(-wJDGUg7f(7x0j3Q9pYO3}7OI=Ptixaw(z-r9=Xv-C}& zDsB|Fip{Q$oai)y%eR`%JJVW|cf{j)SoVER+MbF9c}rLK9|9_km-SYDP#HIMM$T1H#i zG}L&Mi91Ga3~F_8z`qhFDQ#;&U%{HA2n8^lRbi{A=^}Cg!kqu>z0rc9(6WWa#Z8TR*$x zNDubPm|=AxP-r6X)56c}?7QKMc)+@mMm3iTI#OSP%HmcJ2pR=& z3K_hz2LRwS@yon8!M8c?I|p>QL)%Y!DtfX2ht}Snd6Qfbar{lw=F??M-cTAPH0&MV z7N8Vx=~-GYaGiUTc7;tXl1#ULXwytU3Pz{U!isB{1zqopw^#-fYfRaqc(xbBv-!<| zgVn%>N@XmJELkyBmE68p{+&bh7gPS~V%x|L+28wz( z5^B%)Ws|w?&kaAQ`5rpy&i)oxdl65(lR0c01n3p#5%xvz@s6HWO=)Oh)=&s0XS^>H zD>clMDf-fod(v2TNhflmI zz?To?IqF1>RSDL#FR{K6h1BNUwqT+NhGp{zkak~+u-T&PH(GV%D}lOhX`oVzb|uj6 zP%5FGR3ENosIrnk@p}LiJjj()8z*fxe`zK)QqT{|(4hegg5$0elwc##TI36hWR->? zNwqU(5ed+%!*HqLvNb8nndB5a&J4WyO<)zMKAy5m2|sThAzl3*t!CQjOFZL?q#H3g zmxwQYn0&cz4c#SwRhm?X-*=#MOS%FZnvT%fA{a9iLV9IqFfcot1`6CJ9-)%`eJS+<-2^7Fy%T4 zIfkjt!N7P(yj?&fIENFGRBAJxPJiSpPBtX#!}1bPY2B&OiGxHOUJ^rLOzd!Rt@MOt z9S|%}wkn=r(LyQU&Tl6W7I&O%w-vAK3PpS$lt?Q>>kO0Ci5=%Mr}?L_pYA|T*qV5n z4uR!>)Yfeatf#q&odm;!)F3VieP$U zL!<@IcJ`JN(2tdIX-)3zb9`6-$4YTx2Em7T$E>Z5Ju#17xv#V07ZkHyuUDfr)60W2qGsJ{J)d z`};`*O38k&fQTq;jfL;dMkHtC?uz3ck}+EVLr@Xew)5b{{8NQ@xAT_-r49%te$hs- z4T+q)5cx-F($d>AU$z<8H}2j)_J@eAAm0NhAnsHz3ExnZ=(Mu5Y(vi1KxsbpV6_a}PKOGW`(=07lo;TW11(2xQ|xApv2qRoo>3ntvG= zj^Z>woCR<;AjpkL;Lbj3U%qsREs1p$cVT_h2K}X^s=&QA@2yoy0!@(Ze$v`H`XMgd z1;0u6rBD$lGBTz;=c^NAldF?_3nHk=z5eFf2V-!R#PUAA>x%FS( zhOKedZ<*JbdD}{LXX)H1yX2dAqill0K{}nuU@jvp_E_Md?aANxPZO8q$Eo|UDDYz8 z_QByb+%^FPUWTThJ5f^!mT=8#$7*9_%T4Bq4=kJJ40ZbIQi^w}I8iIWLH*6481T?^8?voZs#npZ?S;QPLm)jPE1JQjW&bxn>#~D@=wv zx~xLW8jK>%6wnyD0kklxyT!?WQ<$(XInMLhsj+*uZ*nPXIPpC6c0b1Y;9j=giZRaf zd}v;iJl1~cr`U2xtCzJwK01BpR=w=!m5aFH#xs{sHu1ULR>ObTQ})q7{ljXRa)Q?C zdyTtGdlJ8Iux7FMKt=~@4^%JNYZR*IXT5ojGlgtjeCq1f1NG}&9&FRbiu_sy&=bYf)q^ol_vqD>`gEhCaW#hh&r>SzC+Vu1o;u&%*yNeCAswN(-0NkDT0~m0x3|* zKR8%jlDx5^x6~w|PUdtRNxMWMebDbbH~+-W>Q;L0X=6IQ6!&OMBvt_7OPz%9^1%Zb zq#JfvDALO3*Rai~HNs5LtHZ~L2py3)Swz1SV-A{#H0Xi$1R^kH82AyC;9x{0G)NH* zMlPcM5AW|NjoNOs)&+_+LIE{_NQOI<2s*75rlSdL839!qjE*q70b+o`0PheA!Juyv zw)(#I>>i5W2+CuGg{CvTr+5glCWr&CPZ4(D5@0!qbu56IgecFj7xiPI4e%0|#w9~_ zY5{!utZ!a??cnOcpy1T4fF$t7p&KPYD8%r9(CT7Dp^Q**E~qHMyZlD>jM!{m}X{m<7Q>A&7- zSRY~9I?hM7XJJrI@4(aB&=M|c&~;FTYfv|LQ2J?68N0Z@%=u{YYPzA*^8lIW#+Xrx zkHVDiXT^n$#!ka*P_$#TCiS*hUGcwmGkLkrtXqF8^Ji5J+P&-zUfzJr-~ZiX783)Z z`~QQ7{NH!k>_I-eUmCSnK$6rza=(^~xCGFeEa1R<0!2rHb~7m95F#PNup98=iEu&` zjv76b(1Msm0^vliRakoZkFOm9G7$t5735jTz)l<3o&4)-NEwdKi81_%$N_)3K_K;3 zM42U{?Ehg%(Okj(%RB+Fl2ZT--T(b;A-h`4D;ZuVi8&I(X`$?HXo*KGa62X3 z%wolR;v9|tsWxs%rMN(m;ZN*`Lwd_{#QVkkED0)-D~4HxJ@wD`I$^a~f#R@C{xrH! zAC4$Wzt&R!YL7_F{e;!umGs+xu>wQsfRdX`Yyf00A$_8xhN}|oF#>!`d|QgWV+6j; zU&t>;vc~e4(gz=3kAcGhiWPrY5>W1loS5{_eHL*-qza%YQMi>ydNl@tG_+ zkWi36NxbMr*9po#hBw|nFT0pt`$-suy}%?sTgbKg3&FsQLOTrpc;x<4m|-r&3t zWdj5wkEmY+^r&E4AbSb@D3BD$XG0!{=n5b0N}~V4zd$xF_EX42u^)u*6#Qmd$nak# zE6QG7tb#oc0wgM{LJNWwgkn4#sRx-%gsNY(wp71ejZhDEkU;TKb?XI^7J_7$AS)&p z^2GlOSSe`gi)h8bO55{V$fQw1%PM8MGs(XwNKE+Ldql zqFFH*adEN08jT=@=9qhj#Po}UKwQ6t>>0KNLNEeF`OZkN3?WG?$ULo4%7@;4^W1Qj$JW(uM{U!;o!TztPYCE#k2+GflMV)XAc656Tb z2gUOrX6@f7x#1zj%z&S?k-=Z>0Z0NB@-A1ftP=N8PonX!9cq^aWLkNLA&_OD}^KP`CQXE3Yl?+>#E`VHmZ70SzWv2|YuQ~I^OA8W!MAbxyy%hx|F zW8vSgo>qOJ#^&;7zA?;|DpSGXfXVF!eA_77XqP3$k)FRYL;1z|s%i6#iIKkE9Wz@S zRWQ^A%q!TIKJ}S_5iuP`%KjaLy5C*9;%n#M4Kmp1uVs6d;il1Pw$#}B@aW(ulLot3 zsUCF5L{0L&!BD+%{;?+rL0$aE#NY1C+>xu7X5jXO7HsJ$&#}Mo(WKAtuL`}O$nF~f zPL~IpI(Tp&KDgZ6F;Q>rlakKmo`K6F{3{gK;#Jx0zL%QjGqoa1j4u(D zpT9nd{nVopmOIV1n5Z8-C>MK(Qa)Ecz~;E&W%(TCywQE~(;9iHoO>Iu-ylX!Kk!)@>4tF+O8@EjYAwxwzm9O z)zdqWD+t0x#MlRJN`2gSDab%7uiqqf%Ajejsxoz=G=KSO`NZxUwAsZOB_ZV(ZqWjd zUru|(9e2d`yXV8IE`6zvfGO0axxUK2QSWpyn%(_PAyF`4x)p|ORsQjU*&U~rIM|P+ zb@AjE6!vNCqM931uYR&qY@OOUvyE~hGKEOKW>Y_JO6=OdA|A=U$yO)y?P+suDS9&9 zMMh^V1>tbAih_KQF9x2uoWK2lpZMTV$5n5h2UeF|Tn zoRD&Req89@ZF|T1Z|~hYtJuk7=7dco18BZ>A*e~Kipo-u{cO2+LYMUHQ@+&F5E57Q zE4Nos|MP3?7pzyWLhQm`oelVLxY+BJCuQHo_KY1&CVwxVk|!@~M44AS^Y^Qbw~4H! wkCVq2AA5I<(N7I3YF$2ihU_Odt*6J|>Yua^z+-~@ZAvG9T)S3k!%f`(02F8>+5i9m literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/ b/software/cinit/browse_source/cinit-0.3pre18/ new file mode 100644 index 00000000..73dc3060 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/ @@ -0,0 +1,4 @@ +This is a non-existing file, how did you find it? ;-) + +It seems like you know a bit about your system, perhaps +you want to join cinit development in #cLinux on irc.freenode.org? diff --git a/software/cinit/browse_source/cinit-0.3pre18/.ditz-config b/software/cinit/browse_source/cinit-0.3pre18/.ditz-config new file mode 100644 index 00000000..e831e23d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/.ditz-config @@ -0,0 +1,4 @@ +--- !ditz.rubyforge.org,2008-03-06/config +name: Nico Schottelius +email: nico@ikn.schottelius.org +issue_dir: bugs diff --git a/software/cinit/browse_source/cinit-0.3pre18/.ditz-plugins b/software/cinit/browse_source/cinit-0.3pre18/.ditz-plugins new file mode 100644 index 00000000..2756e1e9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/.ditz-plugins @@ -0,0 +1 @@ +- git diff --git a/software/cinit/browse_source/cinit-0.3pre18/.gitignore b/software/cinit/browse_source/cinit-0.3pre18/.gitignore new file mode 100644 index 00000000..08ec3283 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/.gitignore @@ -0,0 +1,31 @@ +*.o +*.a +MT +ddoc +contrib+tools/cinit.graph.text +config.h +sbin +tmp +os/current +tmpbin +src/os/current +src/ipc/current +src/cinit +*.html +*.htm +*.man +*.texi +*.texi +*.docbook +src/halt.kill +src/poweroff.kill +src/reboot.kill +doc/man/*.[0-9] +doc/man/*.xml +src/cmd +.*.swp +.exclude +src/.configured +src/cinit.halt +src/cinit.poweroff +src/cinit.reboot diff --git a/software/cinit/browse_source/cinit-0.3pre18/Makefile b/software/cinit/browse_source/cinit-0.3pre18/Makefile new file mode 100644 index 00000000..fc7bcdd0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/Makefile @@ -0,0 +1,145 @@ +# +# 2005-2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Don't edit Makefiles, use conf/* for configuration. +# + +# Directories and files +CDIRS=src doc + +# +# Targets +# + +# +# Warn per default, make sure the user knows what she does +# +warn: + @cat doc/.buildwarn + +all: sources documentation +dev-all: all + +install clean dist distclean: + @for subdir in ${CDIRS}; do \ + echo "Making $@ in $$subdir"; \ + (cd $$subdir && ${MAKE} ${MAKEFLAGS} $@) || break; \ + done; + +.PHONY: sources +sources: + ${MAKE} -C src all + +.PHONY: documentation +documentation: + ${MAKE} -C doc documentation + +install-miniconf: + ./bin/cinit.install.miniconf + +install-dir: + ./bin/cinit.install.dir + +config: + @./bin/cinit.configure.os + @./bin/cinit.configure.tools + @./bin/cinit.configure.ipc + @touch src/.configured + +################################################################################ +# Tests +# +tests: + # does not work, due getting killed, due to design :-) + #./scripts/internal/compile_run_as_compiler.sh + ./scripts/internal/test_on_hosts.sh ./scripts/internal/compile_test.sh + +### User Mode Linux / DIRECTORY +UML_DIR_OS_DEBIAN=lenny +UML_ROOT_DIR=~/cinit/vm/uml/$(UML_DIR_OS_DEBIAN) +UML_ROOT_DIR_ABS=$(shell cd $(UML_ROOT_DIR) && pwd -P) +CONFDIR=etc/cinit/ + +uml-install-debian: + mkdir -p $(UML_ROOT_DIR) + sudo /usr/sbin/debootstrap $(UML_DIR_OS_DEBIAN) $(UML_ROOT_DIR) + me=$$(whoami); sudo chown -R $$me $(UML_ROOT_DIR) + +# only install binaries, no need to test documentation +uml-install-config: + rsync -av --delete ./$(CONFDIR) $(UML_ROOT_DIR)/$(CONFDIR) + +uml-install-cinit: + dir=$$(cd $(UML_ROOT_DIR); pwd -P); make -C src DESTDIR=$$dir install + +uml-dir-start-cinit: uml-install-config + dir=$$(cd $(UML_ROOT_DIR); pwd -P); linux root=/dev/root rootflags=$$dir rootfstype=hostfs init=/sbin/cinit + +uml-dir-start-plain: + ./scripts/vm/uml-dir-start-plain.sh $(UML_ROOT_DIR_ABS) + +### User Mode Linux / IMAGE +UML_IMG_FILE=~/cinit/vm/uml/Debian-3.0r0.ext2 +uml-img-start-cinit: + ./scripts/vm/uml-img-start-cinit.sh $(UML_IMG_FILE) + +uml-img-start-plain: + ./scripts/vm/uml-img-start-plain.sh $(UML_IMG_FILE) + +# debian-etch +de-install: + rsync -av --delete ./ root@de:cinit + rsync -av --delete ./etc/cinit/ root@de:/etc/cinit + ssh root@de '(cd cinit; make clean install)' + +de-run: + ssh root@de reboot + +UBUNTUHOST=cinit@192.168.122.107 +UBUNTUCONF=./etc/cinit-ubuntu +UBUNTUINSTALL="cd cinit && make clean && sudo make install" +UBUNTUTEST="sudo reboot" +ubuntu-sync: + rsync -av --delete ./ $(UBUNTUHOST):cinit +ubuntu-install: ubuntu-sync + ssh "$(UBUNTUHOST)" $(UBUNTUINSTALL) + +ubuntu-test: ubuntu-install + ssh "$(UBUNTUHOST)" $(UBUNTUTEST) + +################################################################################ +# +# Developer targets +# + +release: ./scripts/internal/cinit.release + ./scripts/internal/cinit.release now + +scripts/internal/cinit.release: ./scripts/internal/test-cmd.sh + ./scripts/internal/test-cmd.sh + +WEBFILE=~/privat/computer/net/netzseiten/www.nico.schottelius.org/src/software/cinit.mdwn +.PHONY: web +web: README + cp $< $(WEBFILE) + +cinitconfconfdir=../cinit-conf/conf +sync-conf: + rsync --delete -av ./conf/ $(cinitconfconfdir) + cd $(cinitconfconfdir); git add .; git commit -m "sync with cinit/conf" diff --git a/software/cinit/browse_source/cinit-0.3pre18/README b/software/cinit/browse_source/cinit-0.3pre18/README new file mode 100644 index 00000000..6bf95015 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/README @@ -0,0 +1,238 @@ +cinit is a fast, small and simple init with support for profiles + +## Introduction + +cinit is a fast init system with dependency features and +profile support. It was orientated on the design of +Richard Goochs +[need concept](http://www.atnf.csiro.au/people/rgooch/linux/boot-scripts/) +and Felix von Leitners +[minit](http://www.fefe.de/minit/). +Minit does not support real dependencies (you don't know whether the +service you depend on really started) and the need concept is somehow +slow (as seen in gentoo). +In addition, minit needs libowfat and dietlibc, which may not be found +on every Unix system. + +### Cinit main features + +* portability: it should run on every Unix +* true dependencies (soft and hard!) +* parallel execution +* highly customisable (see conf/*) +* profile support (specify what services to start depending on the profile) + + +### Why should I use cinit? + + * To significant speedup the startup process + * To use highest level of parallelisation at startup + * To benefit from real dependencies (so called ***needs*** and ***wants***) + * To easily create profiles that can be chosen at startup (even **before** init is started!) + +### How does cinit work? + +Cinit creates a dependency tree at startup and executes the services. +A service can have two type of dependencies: + + * ***wants*** describe soft dependencies (i.e. it's not fatal if the wanted service fails to start) + * ***needs*** describe hard dependencies (if the needed service fails, the depending won't be started) + +Let's have a look at an example: + + + A + (wants) + / \ + |------> B \ C + | / \ / \ + ^ (needs) (needs) (wants) + | D E F + | | + |------<------(needs)----| + + +Or in words: + + * B and C do not have dependencies + * They will be started at the beginning + * A wants B and C + * A waits until B and C are executed and started afterwards, + independently of the success of B and C + * A will also be started, if B and C fail to start. + * D needs B + * D will only be started, if B is successfully started + * E needs B and C + * E will only be started, if both B and C are successfully started + * F wants C and needs B + * F will only be started, if B is successfully started + * F waits until C is started and is started afterwards + +## Getting cinit + +### Development versions +You can get the latest (development) version via git: + + git clone git://git.schottelius.org/cLinux/cinit.git + +Additionally, the following other git ressources are available: + + * [Gitweb](http://git.schottelius.org/?p=cLinux/cinit.git;a=summary). + * [Mirror at github](http://github.com/telmich/cinit) + * [Mirror at gitorious](http://gitorious.org/cinit) + + +### Archives + + * [[cinit-0.3pre18.tar.bz2|archives/cinit-0.3pre18.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre18/)) + [[changes|browse_source/cinit-0.3pre18/doc/changes/0.3pre18]] + * [[cinit-0.3pre17.tar.bz2|archives/cinit-0.3pre17.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre17/)) + [[changes|browse_source/cinit-0.3pre17/doc/changes/0.3pre17]] + * [[cinit-0.3pre16.tar.bz2|archives/cinit-0.3pre16.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre16/)) + [[changes|browse_source/cinit-0.3pre16/doc/changes/0.3pre16]] + * [[cinit-0.3pre15.tar.bz2|archives/cinit-0.3pre15.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre15/)) + [[changes|browse_source/cinit-0.3pre15/doc/changes/0.3pre15]] + * [[cinit-0.3pre14.tar.bz2|archives/cinit-0.3pre14.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre14/)) + [[changes|browse_source/cinit-0.3pre14/CHANGES]] + * [[cinit-0.3pre13.tar.bz2|archives/cinit-0.3pre13.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre13/)) + [[changes|browse_source/cinit-0.3pre13/CHANGES]] + * [[cinit-0.3pre12.tar.bz2|archives/cinit-0.3pre12.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre12/)) + [[changes|browse_source/cinit-0.3pre12/CHANGES]] + * [[cinit-0.3pre11.tar.bz2|archives/cinit-0.3pre11.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre11/)) + [[changes|browse_source/cinit-0.3pre11/CHANGES]] + * [[cinit-0.3pre10.tar.bz2|archives/cinit-0.3pre10.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre10/)) + [[changes|browse_source/cinit-0.3pre10/CHANGES]] + * [[cinit-0.3pre9.tar.bz2|archives/cinit-0.3pre9.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre9/)) + [[changes|browse_source/cinit-0.3pre9/CHANGES]] + * [[cinit-0.3pre8.tar.bz2|archives/cinit-0.3pre8.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre8/)) + [[changes|browse_source/cinit-0.3pre8/CHANGES]] + * [[cinit-0.3pre7.tar.bz2|archives/cinit-0.3pre7.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre7/)) + [[changes|browse_source/cinit-0.3pre7/CHANGES]] + * [[cinit-0.3pre6.tar.bz2|archives/cinit-0.3pre6.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre6/)) + [[changes|browse_source/cinit-0.3pre6/CHANGES]] + * [[cinit-0.3pre5.tar.bz2|archives/cinit-0.3pre5.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre5/)) + [[changes|browse_source/cinit-0.3pre5/CHANGES]] + * [[cinit-0.3pre4.tar.bz2|archives/cinit-0.3pre4.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre4/)) + [[changes|browse_source/cinit-0.3pre4/CHANGES]] + * [[cinit-0.3pre3.tar.bz2|archives/cinit-0.3pre3.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre3/)) + [[changes|browse_source/cinit-0.3pre3/CHANGES]] + * [[cinit-0.3pre2.tar.bz2|archives/cinit-0.3pre2.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre2/)) + [[changes|browse_source/cinit-0.3pre2/CHANGES]] + * [[cinit-0.3pre1.tar.bz2|archives/cinit-0.3pre1.tar.bz2]] + ([browse source](browse_source/cinit-0.3pre1/)) + [[changes|browse_source/cinit-0.3pre1/CHANGES]] + * [[cinit-0.2.1.tar.bz2|archives/cinit-0.2.1.tar.bz2]] + ([browse source](browse_source/cinit-0.2.1/)) + [[changes|browse_source/cinit-0.2.1/CHANGES]] + * [[cinit-0.2.tar.bz2|archives/cinit-0.2.tar.bz2]] + ([browse source](browse_source/cinit-0.2/)) + [[changes|browse_source/cinit-0.2/CHANGES]] + * [[cinit-0.1.tar.bz2|archives/cinit-0.1.tar.bz2]] + ([browse source](browse_source/cinit-0.1/)) + [[changes|browse_source/cinit-0.1/CHANGES]] + * [[cinit-0.0.8.tar.bz2|archives/cinit-0.0.8.tar.bz2]] + ([browse source](browse_source/cinit-0.0.8/)) + [[changes|browse_source/cinit-0.0.8/CHANGES]] + * [[cinit-0.0.7.tar.bz2|archives/cinit-0.0.7.tar.bz2]] + ([browse source](browse_source/cinit-0.0.7/)) + [[changes|browse_source/cinit-0.0.7/CHANGES]] + * [[cinit-0.0.6.tar.bz2|archives/cinit-0.0.6.tar.bz2]] + ([browse source](browse_source/cinit-0.0.6/)) + [[changes|browse_source/cinit-0.0.6/CHANGES]] + * [[cinit-0.0.5.tar.bz2|archives/cinit-0.0.5.tar.bz2]] + ([browse source](browse_source/cinit-0.0.5/)) + [[changes|browse_source/cinit-0.0.5/CHANGES]] + * [[cinit-0.0.4.tar.bz2|archives/cinit-0.0.4.tar.bz2]] + ([browse source](browse_source/cinit-0.0.4/)) + [[changes|browse_source/cinit-0.0.4/CHANGES]] + +## Documentation +The documentation is currently spread all over the ***doc/*** directory +within the tarball and is being cleaned up. Additionally there +are two presentations available: + + * [[2005-10-22: (German) speech at Technophil|software/cinit/speeches/2005-10-22]] + * [[2005-08-06: (German) online speech|software/cinit/speeches/2005-08-06]] + +### Pre-Configuring +If you want to fine tune cinit parameters, add different path names, +change the DESTDIR, ... have a look at conf/*. + + +### Installing cinit +You can install cinit parallel to any other init-system, it won't +kill other init's config nor /sbin/init, if it exists: + + # make all install + +This will create /sbin/cinit. +If /sbin/init does not exist, it will be linked to /sbin/cinit. + +### Configuring cinit +You'll have to configure cinit in /etc/cinit and add services, +before you can use it. + +Please read doc/configuring.cinit for details. +Please read doc/FAO if there are still questions open. + +There are some testing examples below doc/examples/, to be used +as a starting point. + +There are currently no tools to merge your existing init-system +to cinit (like sysvinit-merge, bsd-merge or minit-merge) available, +but they are in the making (see various bugs in ditz). + +### Configuring the OS / Kernel + +After configuring cinit you need to tell your kernel to boot cinit instead +of your current init system. How to do that depends on your system: + + * Linux/LILO and Linux/yaboot (ppc): + * append="init=/sbin/cinit" + * grub1 and grub2: + * kernel init=/sbin/cinit + +## Support + +### IRC +You can join the development ***IRC channel*** +[#cLinux on irc.freenode.org](irc://irc.freenode.org/#cLinux). + +### Mailing list +Bug reports, questions, patches, etc. should be send to the +[cinit mailing list](http://l.schottelius.org/mailman/listinfo/cinit). + +## Related websites + + * [cinit](http://www.nico.schottelius.org/software/cinit/) + * [cinit mailing list](http://l.schottelius.org/mailman/listinfo/cinit) + * BSD init systems (same codebase): + * [FreeBSDs init](http://www.freebsd.org/cgi/cvsweb.cgi/src/sbin/init/) + * [NetBSDs init](http://cvsweb.netbsd.org/bsdweb.cgi/src/sbin/init/) + * [OpenBSDs init](http://www.openbsd.org/cgi-bin/cvsweb/src/sbin/init/) + * [initng](http://www.initng.org/) + * [minit](http://www.fefe.de/minit/) + * [runit](http://smarden.org/runit/) + * [need/simpleinit](http://www.atnf.csiro.au/~rgooch/linux/boot-scripts/) + * [sys-v-init](ftp://ftp.cistron.nl/pub/people/miquels/sysvinit/) + * [upstart](http://www.netsplit.com/blog/work/canonical/upstart.html) + + +[[!tag unix]] diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.config.shell b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.config.shell new file mode 100755 index 00000000..cb08a0c6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.config.shell @@ -0,0 +1,33 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Create a minimal "usable" config +# + +set -e + +. "$(dirname $0)/cinit-conf.read-conf" + +cinit-conf.svc.init +cinit-conf.svc.categories +cinit-conf.svc.mount.proc +cinit-conf.svc.mount.root +cinit-conf.svc.shell +cinit-conf.svc-boot-enable "local-services/shell" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.get-confdir b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.get-confdir new file mode 100755 index 00000000..5deb8a85 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.get-confdir @@ -0,0 +1,42 @@ +#!/bin/sh +# +# 2005-2008 Nico Schottelius (nico-cinit-conf at schottelius.org) +# +# This file is part of cinit-conf. +# +# cinit-conf is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit-conf is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit-conf. If not, see . +# + +# cinit: read configuration into variables +# Date: 2005-05-24 (Last Changed: 2005-08-08) +# + +hier="${0%/*}" + +# try environment first +if [ "$CINIT_CONF_CONF_DIR" ]; then + CONFDIR=$CINIT_CONF_CONF_DIR +elif [ -d "${hier}/../conf/" ]; then + CONFDIR="${hier}/../conf/" +elif [ -d "/etc/cinit-conf/" ]; then + CONFDIR="/etc/cinit-conf/" +else + echo 'Did not find cinit-conf configuration!' >&2 + echo "Please set the variable CINIT_CONF_CONF_DIR" >&2 + exit 1 +fi + +CONFDIR=$(cd "${CONFDIR}" && pwd -P) + +echo $CONFDIR diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.migrate.archlinux b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.migrate.archlinux new file mode 100755 index 00000000..7d52f78c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.migrate.archlinux @@ -0,0 +1,490 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Try to migrate archlinux to cinit +# + +set -e + +################################################################################ +# +# Base layout, same for every OS +# +cinit-conf.svc.init +cinit-conf.svc.categories + +# Arch Linux has a minimal /etc/inittab, nice to migrate! +# Arch only starts /etc/rc.sysinit. Even nicer to migrate! + +# These are covered already by our existing scripts +#/bin/mount -n -t tmpfs none /dev -o mode=0755 +#/bin/mount -n -t proc none /proc +#/bin/mount -n -t sysfs none /sys + +# Copy static device nodes to /dev +# /bin/cp -a /lib/udev/devices/* /dev/ +cinit-conf.svc.udev.copy-static + +# start up our mini logger until syslog takes over +/sbin/minilogd + +# anything more serious than KERN_WARNING goes to the console +# 'verbose' cmdline parameter enables more messages +if /bin/grep -q " verbose" /proc/cmdline; then + /bin/dmesg -n 8 +else + /bin/dmesg -n 3 +fi + +# enable rtc access +/sbin/modprobe rtc-cmos >/dev/null 2>&1 +RTC_MAJOR=$(/bin/grep -w rtc /proc/devices 2>/dev/null) +RTC_MAJOR="${RTC_MAJOR%% *}" +if [ -n "$RTC_MAJOR" ]; then + /bin/mknod /dev/rtc0 c $RTC_MAJOR 0 + /bin/ln -s /dev/rtc0 /dev/rtc +fi + +HWCLOCK_PARAMS="--hctosys" +if [ "$HARDWARECLOCK" = "UTC" ]; then + HWCLOCK_PARAMS="$HWCLOCK_PARAMS --utc" +elif [ "$HARDWARECLOCK" = "localtime" ]; then + HWCLOCK_PARAMS="$HWCLOCK_PARAMS --localtime" +else + HWCLOCK_PARAMS="" +fi + +# Set clock early to fix some bugs with filesystem checks +# Clock is set again later to match rc.conf +if [ -n "$HWCLOCK_PARAMS" -a -f /etc/localtime ]; then + /sbin/hwclock $HWCLOCK_PARAMS --noadjfile +fi + +echo > /proc/sys/kernel/hotplug + +if [ -x /sbin/udevadm ]; then + stat_busy "Starting UDev Daemon" + /sbin/udevd --daemon + stat_done +else + # Static /dev, our last resort + status "Using static /dev filesystem" true +fi + +# Trigger udev uevents +if /bin/pidof -o %PPID /sbin/udevd >/dev/null; then + stat_busy "Triggering UDev uevents" + /sbin/udevadm trigger + stat_done +fi + +# Load modules from the MODULES array defined in rc.conf +if ! [ "$load_modules" = "off" ]; then + if [ -f /proc/modules ]; then + stat_busy "Loading Modules" + for mod in "${MODULES[@]}"; do + if [ "$mod" = "${mod#!}" ]; then + /sbin/modprobe $mod + fi + done + stat_done + fi + if [ -d /proc/acpi ]; then + stat_busy "Loading standard ACPI modules" + ACPI_MODULES="ac battery button fan processor thermal" + k="$(echo $BLACKLIST ${MOD_BLACKLIST[@]} | /bin/sed 's|-|_|g')" + j="$(echo ${MODULES[@]} | /bin/sed 's|-|_|g')" + #add disabled MODULES (!) to blacklist - much requested feature + for m in ${j}; do + [ "$m" != "${m#!}" ] && k="${k} ${m#!}" + done + # add disablemodules= from commandline to blacklist + k="${k} $(echo ${disablemodules} | /bin/sed 's|-|_|g' | /bin/sed 's|,| |g')" + for n in ${ACPI_MODULES}; do + if ! echo ${k} | /bin/grep "\<$n\>" 2>&1 >/dev/null; then + /sbin/modprobe $n > /dev/null 2>&1 + fi + done + stat_done + fi +fi + +# Wait for udev uevents +if /bin/pidof -o %PPID /sbin/udevd >/dev/null; then + stat_busy "Waiting for UDev uevents to be processed" + udevstart="$(/bin/date +%s%0N)" + /sbin/udevadm settle + stat_done + udevend="$(/bin/date +%s%0N)" + printhl " UDev uevent processing time: $((($udevend-$udevstart)/1000000))ms" +fi + +# bring up the loopback interface +if [ -d /sys/class/net/lo ]; then + stat_busy "Bringing up loopback interface" + /sbin/ifconfig lo 127.0.0.1 up + if [ $? -ne 0 ]; then + stat_fail + else + stat_done + fi +fi + +# If necessary, find md devices and manually assemble RAID arrays +if [ -f /etc/mdadm.conf -a "$(/bin/grep ^ARRAY /etc/mdadm.conf 2>/dev/null)" ]; then + # udev won't create these md nodes, so we do it ourselves + for dev in $(/bin/grep ^ARRAY /etc/mdadm.conf | /bin/awk '{print $2}'); do + path=$(echo $dev | /bin/sed 's|/[^/]*$||') + node=$(echo $dev | /bin/sed "s|^$path/||") + minor=$(echo $node | /bin/sed 's|^[^0-9]*||') + [ ! -e $path/$node ] && /bin/mknod $path/$node b 9 $minor + done + status "Activating RAID arrays" /sbin/mdadm --assemble --scan +fi + +if [ "$USELVM" = "yes" -o "$USELVM" = "YES" ]; then + if [ -x /sbin/lvm -a -d /sys/block ]; then + # Kernel 2.6.x, LVM2 groups + /sbin/modprobe -q dm-mod 2>/dev/null + stat_busy "Activating LVM2 groups" + /sbin/lvm vgscan --ignorelockingfailure --mknodes >/dev/null + /sbin/lvm vgchange --ignorelockingfailure -a y >/dev/null + if [ $? -ne 0 ]; then + stat_fail + else + stat_done + fi + fi +fi + +# Set up non-root encrypted partition mappings +if [ -f /etc/crypttab -a -n "$(/bin/grep -v ^# /etc/crypttab | /bin/grep -v ^$)" ]; then + /sbin/modprobe -q dm-mod 2>/dev/null + stat_busy "Unlocking encrypted volumes:" + csfailed=0 + CS=/sbin/cryptsetup.static + do_crypt() { + if [ $# -ge 3 ]; then + cname="$1" + csrc="$2" + cpass="$3" + shift 3 + copts="$*" + stat_append "${cname}.." + # For some fun reason, the parameter ordering varies for + # LUKS and non-LUKS devices. Joy. + if [ "${cpass}" = "SWAP" ]; then + # This is DANGEROUS! The only possible safety check + # is to not proceed in case we find a LUKS device + # This may cause dataloss if it is not used carefully + if $CS isLuks $csrc 2>/dev/null; then + false + else + $CS -d /dev/urandom $copts create $cname $csrc >/dev/null + if [ $? -eq 0 ]; then + stat_append "creating swapspace.." + /sbin/mkswap -f -L $cname /dev/mapper/$cname >/dev/null + fi + fi + elif [ "${cpass}" = "ASK" ]; then + printf "\nOpening '${cname}' volume:\n" + + if $CS isLuks $csrc 2>/dev/null; then + $CS $copts luksOpen $csrc $cname < /dev/console + else + $CS $copts create $cname $csrc < /dev/console + fi + elif [ "${cpass:0:1}" != "/" ]; then + if $CS isLuks $csrc 2>/dev/null; then + echo "$cpass" | $CS $copts luksOpen $csrc $cname >/dev/null + else + echo "$cpass" | $CS $copts create $cname $csrc >/dev/null + fi + else + if $CS isLuks $csrc 2>/dev/null; then + $CS -d $cpass $copts luksOpen $csrc $cname >/dev/null + else + $CS -d $cpass $copts create $cname $csrc >/dev/null + fi + fi + if [ $? -ne 0 ]; then + csfailed=1 + stat_append "failed " + else + stat_append "ok " + fi + fi + } + while read line; do + eval do_crypt "$line" + done /dev/null + /sbin/lvm vgchange --ignorelockingfailure -a y >/dev/null + fi + fi +fi + +status "Mounting Root Read-only" /bin/mount -n -o remount,ro / + +FORCEFSCK= +[ -f /forcefsck ] && FORCEFSCK="-- -f" +NETFS="nonfs,nonfs4,nosmbfs,nocifs,nocodafs,noncpfs,nosysfs,noshfs,nofuse,nofuseblk,noglusterfs" + +fsck_reboot() { + echo "Automatic reboot in progress..." + /bin/umount -a + /bin/mount -n -o remount,ro / + /sbin/reboot -f + exit 0 +} + +if [ -x /sbin/fsck ]; then + stat_busy "Checking Filesystems" + FSCK_OUT=/dev/stdout + FSCK_ERR=/dev/null + /sbin/fsck -A -T -C -a -t $NETFS $FORCEFSCK >$FSCK_OUT 2>$FSCK_ERR + fsckret=$? + if [ ${fsckret} -gt 1 ]; then + stat_fail + fi + if [ $((${fsckret}&2)) -eq 2 ]; then + echo + echo "********************** REBOOT REQUIRED *********************" + echo "* *" + echo "* The system will be rebooted automatically in 15 seconds. *" + echo "* *" + echo "************************************************************" + echo + /bin/sleep 15 + fsck_reboot + fi + if [ ${fsckret} -gt 1 -a ${fsckret} -ne 32 ]; then + echo + echo "***************** FILESYSTEM CHECK FAILED ****************" + echo "* *" + echo "* Please repair manually and reboot. Note that the root *" + echo "* file system is currently mounted read-only. To remount *" + echo "* it read-write type: mount -n -o remount,rw / *" + echo "* When you exit the maintenance shell the system will *" + echo "* reboot automatically. *" + echo "* *" + echo "************************************************************" + echo + /sbin/sulogin -p + fsck_reboot + fi + stat_done +fi + +stat_busy "Mounting Local Filesystems" +/bin/mount -n -o remount,rw / +/bin/rm -f /etc/mtab* +# make sure / gets written to /etc/mtab +/bin/mount -o remount,rw / +# Write /proc, /sys and /dev to /etc/mtab +if [ -e /proc/mounts ]; then + /bin/grep -e "/proc " -e "/sys " -e "/dev " /proc/mounts >> /etc/mtab +fi +# now mount all the local filesystems +/bin/mount -a -t $NETFS -O no_netdev +stat_done + +status "Activating Swap" /sbin/swapon -a + +stat_busy "Configuring System Clock" +if [ ! -f /var/lib/hwclock/adjtime ]; then + echo "0.0 0 0.0" > /var/lib/hwclock/adjtime +fi +if [ "$TIMEZONE" != "" -a -e "/usr/share/zoneinfo/$TIMEZONE" ]; then + /bin/rm -f /etc/localtime + /bin/cp "/usr/share/zoneinfo/$TIMEZONE" /etc/localtime +fi + +if [ -n "$HWCLOCK_PARAMS" ]; then + /sbin/hwclock --adjust #Adjust for system drift + /sbin/hwclock $HWCLOCK_PARAMS +fi +stat_done + +RANDOM_SEED=/var/lib/misc/random-seed +if [ -f $RANDOM_SEED ]; then + stat_busy "Initializing Random Seed" + /bin/cat $RANDOM_SEED > /dev/urandom + stat_done +fi + +stat_busy "Removing Leftover Files" +/bin/rm -f /etc/nologin &>/dev/null +/bin/rm -f /etc/shutdownpid &>/dev/null +/bin/rm -f /var/lock/* &>/dev/null +/bin/rm -rf /tmp/* /tmp/.* &>/dev/null +/bin/rm -f /forcefsck &>/dev/null +(cd /var/run && /usr/bin/find . ! -type d -exec /bin/rm -f -- {} \; ) +: > /var/run/utmp +/bin/chmod 0664 /var/run/utmp +# Keep {x,k,g}dm happy with xorg +/bin/mkdir /tmp/.ICE-unix && /bin/chmod 1777 /tmp/.ICE-unix +/bin/mkdir /tmp/.X11-unix && /bin/chmod 1777 /tmp/.X11-unix +stat_done + +#status "Updating Shared Library Links" /sbin/ldconfig + +if [ "$HOSTNAME" != "" ]; then + status "Setting Hostname: $HOSTNAME" /bin/hostname $HOSTNAME +fi + +# Set the NIS domain name, if necessary +[ -f /etc/conf.d/nisdomainname ] && . /etc/conf.d/nisdomainname +if [ "$NISDOMAINNAME" != "" ]; then + status "Setting NIS Domain Name: $NISDOMAINNAME" /bin/nisdomainname $NISDOMAINNAME +fi + +status "Updating Module Dependencies" /sbin/depmod -A + +# Flush old locale settings +: >/etc/profile.d/locale.sh +/bin/chmod 755 /etc/profile.d/locale.sh +# Set user defined locale +[ -z "$LOCALE" ] && LOCALE="en_US" +stat_busy "Setting Locale: $LOCALE" +echo "export LANG=$LOCALE" >>/etc/profile.d/locale.sh +stat_done + +# Adding persistent network/cdrom generated rules +if [ -f "/dev/.udev/tmp-rules--70-persistent-cd.rules" ]; then + stat_busy "Adding persistent cdrom udev rules" + /bin/cat /dev/.udev/tmp-rules--70-persistent-cd.rules >> /etc/udev/rules.d/70-persistent-cd.rules + stat_done +fi +if [ -f "/dev/.udev/tmp-rules--70-persistent-net.rules" ]; then + stat_busy "Adding persistent network udev rules" + /bin/cat /dev/.udev/tmp-rules--70-persistent-net.rules >> /etc/udev/rules.d/70-persistent-net.rules + stat_done +fi + +/bin/dmesg >| /var/log/dmesg.log + +# End of file +# vim: set ts=2 noet: + +# The part before here is migrated, the rest came from the template +exit 0 + +# /etc/event.d/rc-default guesses 2, so we also assume it's 2. +default_runlevel=2 + +################################################################################ +# Sys-v-init on Linux and variants (=upstart) execute rcS before rc2. +# +# Upstart on jaunty is starts /etc/event.d/rc-default, which +# starts /etc/event.d/rcS which starts /etc/init.d/rcS which +# starts /etc/init.d/rc S which starts the shell scripts in +# /etc/rcS.d/ (does not sound very efficient to me). + +# cinit@cinit-desktop:/etc/event.d$ ls -1 /etc/rcS.d/ | sed 's/^/# /' +# README: not migrated: +# S01mountkernfs.sh: sysfs, proc; ignored spufs, /var/run, /lib/init: migrated +cinit-conf.svc.mount.proc +cinit-conf.svc.mount.sys + +# S01readahead: ignored +# S02hostname.sh: migrated +cinit-conf.svc.hostname.linux $(hostname) + +# S06keyboard-setup: migrated +cinit-conf.svc.keymap.linux + +# S07linux-restricted-modules-common: ignored +# S10udev: migrated +cinit-conf.svc.mount.udev +cinit-conf.svc.local-tuning.udev.ubuntu + +# S11mountdevsubfs.sh: migrated! +cinit-conf.svc.mount.dev-shm +cinit-conf.svc.mount.dev-pts + +# S13pcmciautils: ignored +# S15module-init-tools: not migrated: I think modules should be put into services +# S17procps: migrated +cinit-conf.svc.sysctl.linux + +# S20checkroot.sh: migrated for / +cinit-conf.svc.mount.root + +# S22mtab.sh: manually create mtab; migrated (though a little bit hacky) +cinit-conf.svc.mtab-clean.linux + +# S25brltty: ignored: don't have a braille terminal here to test it +# S30checkfs.sh: ignored, not yet supported, have to find other mountpoints first +# S35mountall.sh: ignored: same as S30checkfs.sh +# S36mountall-bootclean.sh: migrated +# /var/run is not a tempdir, do not clean it +cinit-conf.svc.tmp.clean "/tmp" "/var/tmp" "/var/lock" +cinit-conf.svc.tmp.create "/tmp" "/var/tmp" "/var/lock" + +# S37apparmor: ignored +# S37mountoverflowtmp: ignored, that's a boottime bugfix +# S37udev-finish: no need to migrate, if having correct dependencies. +# S39readahead-desktop: ignored, as it seems not to work here +# S39ufw: disabled here by default -> skip +# S40networking +cinit-conf.svc.network.debian + +# S45mountnfs.sh: migrated, only much smaller +cinit-conf.svc.mount.nfs + +# S46mountnfs-bootclean.sh: already done (cinit-conf.svc.tmp.*) +# S49console-setup: migrated +cinit-conf.svc.setup.console.linux + +# S55bootmisc.sh +# S55urandom +# S70screen-cleanup +# S70x11-common + +cat << eof + +Ubuntu upstart migration completed. + +WARNING: + + This is a "lazy" migration: Ubuntu init scripts are migrated + similar, but not identical. Some services have been skipped, because + they are not necessary with cinit or in general. + + Check /etc/cinit before rebooting with cinit! + +KNOWN BUGS: + + S20checkroot.sh: Only / is being fscked, other partitions are ignored. + +HINT: + + Make sure init=/sbin/cinit is set in your bootloader. + +eof diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.migrate.upstart.ubuntu.jaunty b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.migrate.upstart.ubuntu.jaunty new file mode 100755 index 00000000..d13d5007 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.migrate.upstart.ubuntu.jaunty @@ -0,0 +1,174 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Try to migrate upstarts config from ubuntu jaunty to cinit config +# + +set -e + +# /etc/event.d/rc-default guesses 2, so we also assume it's 2. +default_runlevel=2 + +################################################################################ +# +# Base layout, same for every OS +# +cinit-conf.svc.init +cinit-conf.svc.categories +cinit-conf.svc.init.dependencies + +################################################################################ +# Sys-v-init on Linux and variants (=upstart) execute rcS before rc2. +# +# Upstart on jaunty is starts /etc/event.d/rc-default, which +# starts /etc/event.d/rcS which starts /etc/init.d/rcS which +# starts /etc/init.d/rc S which starts the shell scripts in +# /etc/rcS.d/ (does not sound very efficient to me). + +# cinit@cinit-desktop:/etc/event.d$ ls -1 /etc/rcS.d/ | sed 's/^/# /' +# README: not migrated: +# S01mountkernfs.sh: sysfs, proc; ignored spufs, /var/run, /lib/init: migrated +cinit-conf.svc.mount.proc +cinit-conf.svc.mount.sys + +# S01readahead: ignored +# S02hostname.sh: migrated +cinit-conf.svc.hostname.linux $(hostname) + +# S06keyboard-setup: migrated +cinit-conf.svc.keymap.linux + +# S07linux-restricted-modules-common: ignored +# S10udev: migrated +cinit-conf.svc.mount.udev +cinit-conf.svc.local-tuning.udev.ubuntu + +# S11mountdevsubfs.sh: migrated! +cinit-conf.svc.mount.dev-shm +cinit-conf.svc.mount.dev-pts + +# S13pcmciautils: ignored +# S15module-init-tools: not migrated: I think modules should be put into services +# S17procps: migrated +cinit-conf.svc.sysctl.linux + +# S20checkroot.sh: migrated for / +cinit-conf.svc.mount.root + +# S22mtab.sh: manually create mtab; migrated (though a little bit hacky) +cinit-conf.svc.mtab-clean.linux + +# S25brltty: ignored: don't have a braille terminal here to test it +# S30checkfs.sh: ignored, not yet supported, have to find other mountpoints first +# S35mountall.sh: ignored: same as S30checkfs.sh +# S36mountall-bootclean.sh: migrated +# /var/run is not a tempdir, do not clean it +cinit-conf.svc.tmp.clean "/tmp" "/var/tmp" "/var/lock" +cinit-conf.svc.tmp.create "/tmp" "/var/tmp" "/var/lock" + +# S37apparmor: ignored +# S37mountoverflowtmp: ignored, that's a boottime bugfix +# S37udev-finish: no need to migrate, if having correct dependencies. +# S39readahead-desktop: ignored, as it seems not to work here +# S39ufw: disabled here by default -> skip +# S40networking +cinit-conf.svc.network.debian + +# S45mountnfs.sh: migrated, only much smaller +cinit-conf.svc.mount.nfs + +# S46mountnfs-bootclean.sh: already done (cinit-conf.svc.tmp.*) +# S49console-setup: migrated +cinit-conf.svc.setup.console.linux + +# S55bootmisc.sh: skipped +# S55urandom: skipped, should be done later! +# S70screen-cleanup: skipped, unclean, should be done later! +# S70x11-common: also skipped, want to finish this script. + +################################################################################ +# +# /etc/rc2.d/ migration +# +# cinit@cinit-desktop:/etc/rc2.d$ ls -1 +# README +# S01policykit: ignored +# S10acpid: migrated (without module loading) +cinit-conf.svc.acpid +# Skipping the following ones currently +# S10sysklogd +# S11klogd +# S12dbus +# S16ssh +cinit-conf.svc.sshd +# S20apport +# S20hotkey-setup +# S24hal +# S25bluetooth +# S30gdm +# S50NetworkManager +# S50avahi-daemon +# S50cups +# S50pulseaudio +# S50rsync +# S50saned +# S50system-tools-backends +# S70bootlogs.sh +# S70dns-clean +# S70pppd-dns +# S89anacron +# S89atd +# S89cron +# S90binfmt-support +# S98usplash +# S99acpi-support +# S99laptop-mode +# S99ondemand +# S99rc.local +# S99rmnologin +# S99stop-readahead + +################################################################################ +# +# Enable local login with six getties +# +cinit-conf.svc.agetty 6 + +cat << eof + +Ubuntu upstart migration completed. + +WARNING: + + This is a "lazy" migration: Ubuntu init scripts are migrated + similar, but not identical. Some services have been skipped, because + they are not necessary with cinit or in general. + + Check /etc/cinit before rebooting with cinit! + +KNOWN BUGS: + + S20checkroot.sh: Only / is being fscked, other partitions are ignored. + +HINT: + + Make sure init=/sbin/cinit is set in your bootloader. + +eof diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.read-conf b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.read-conf new file mode 100755 index 00000000..f21a805a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.read-conf @@ -0,0 +1,58 @@ +#!/bin/sh +# +# 2008 Nico Schottelius (nico-cinit-conf at schottelius.org) +# +# This file is part of cinit-conf. +# +# cinit-conf is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit-conf is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit-conf. If not, see . +# + +hier="${0%/*}" + +: ${CONFDIR:="$("${hier}/cinit-conf.get-confdir")"} + +# read general values and overwrite specific ones later +for conf in ${CONFDIR}/*; do + NAME="$(basename $conf | tr a-z A-Z)" + # short version + eval : \${$NAME:=$(head -n1 "${conf}")} + + # long version + #if eval test -z \$$NAME; then + # eval $NAME=\"$(head -n 1 $conf)\" + # eval export $NAME + #fi +# eval echo $NAME = \$$NAME +done + +# comment out: generated automatically now +#: ${DESTDIR="$(head -n1 "${CONFDIR}/destdir")"} +#: ${SERVICE_CATEGORIES="$(head -n1 "${CONFDIR}/service_categories")"} +#: ${GETTYDIR="${SVCDIR}/$(head -n1 "${CONFDIR}/gettydir")"} +#: ${INSTALL_PROG="$(head -n1 "${CONFDIR}/install_prog")"} +#: ${INSTALL_DIRECTORY="$(head -n1 "${CONFDIR}/install_directory")"} +#: ${C_ON="$(head -n1 "${CONFDIR}/c_on")"} +#: ${C_PARAMS="$(head -n1 "${CONFDIR}/c_params")"} +#: ${C_RESPAWN="$(head -n1 "${CONFDIR}/c_respawn")"} + +# overwrite or set: add destdir and put things together +# R_* = real = should be used in scripts +: ${R_CINIT_DIR:="${DESTDIR}/${CINIT_DIR}"} +: ${R_CINITCONF_DIR:="${R_CINIT_DIR}/${CINITCONFDIR}"} +: ${R_SVC_DIR:="${R_CINIT_DIR}/${SVCDIR}"} + +# T_*: theorethic (not real, usable for linking) +: ${T_CINIT_DIR:="${CINIT_DIR}"} +: ${T_CINITCONF_DIR:="${T_CINIT_DIR}/${CINITCONFDIR}"} +: ${T_SVC_DIR:="${T_CINIT_DIR}/${SVCDIR}"} diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-boot-enable b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-boot-enable new file mode 100755 index 00000000..dd0ce633 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-boot-enable @@ -0,0 +1,46 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit-conf. If not, see . +# +# Enable a service at boottime: add it to init wants list +# + +set -e + +################################################################################ +# standard vars stolen from cconf +__pwd="$(pwd -P)" +__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)" +__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname" + +. "${__abs_mydir}/cinit-conf.read-conf" + + +if [ $# -lt 1 ]; then + echo "${__myname}: services... " + echo "" + echo " I add the services to init, so they will be started at boot." + echo "" + exit 1 +fi + +SVC="init" + +cinit-conf.svc.dependency.add "${SVC}" "wants" "$@" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-create.template b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-create.template new file mode 100755 index 00000000..96898b63 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-create.template @@ -0,0 +1,66 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Create an almost empty service +# + +set -e + +# init variables +. "$(dirname $0)/cinit-conf.read-conf" + +if [ $# -lt 1 ]; then + echo "`basename $0`: service-name(s)" + echo " I create templates for your services" + exit 1 +fi + +for svc in $@; do + INSTDIR="${R_SVC_DIR}/${svc}" + + if [ -e "$INSTDIR" ]; then + echo "$svc already exists, skipping." + continue + fi + + echo -n "Creating template $svc ..." + "$INSTALL_PROG" "$INSTALL_DIRECTORY" "${INSTDIR}" + + # needs + "$INSTALL_PROG" "$INSTALL_DIRECTORY" "${INSTDIR}/${C_NEEDS}" + + # wants + "$INSTALL_PROG" "$INSTALL_DIRECTORY" "${INSTDIR}/${C_WANTS}" + + # README + cat << eof > "${INSTDIR}/README" +This service was created by $0. + +Please update this README to match the real content. + +Add entries to ${C_NEEDS} for the services this services really needs +(it will not start if one failed to start). + +Add services to ${C_WANTS} for the services this services wants +(it will start if one or more fail)." +eof + + echo "done." +done diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-delete b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-delete new file mode 100755 index 00000000..77e0b8e5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-delete @@ -0,0 +1,46 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Delete services +# + +set -e + +# init variables +. "$(dirname $0)/cinit-conf.read-conf" + +if [ $# -lt 1 ]; then + echo "`basename $0`: service-name(s)" + echo " I delete your services" + exit 1 +fi + +for svc in "$@"; do + SERVICE="${R_SVC_DIR}/${svc}" + + if [ ! -e "$SERVICE" ]; then + echo "${svc}: does not exists, cannot remove.." + continue + fi + + echo -n "Removing $svc ..." + rm -rf "${SERVICE}" + echo "done." +done diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-off b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-off new file mode 100755 index 00000000..8ac78b21 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-off @@ -0,0 +1,43 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Select program to start on service stop +# + +################################################################################ +# standard vars stolen from cconf +__pwd="$(pwd -P)" +__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)" +__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname" + +set -e +. "${__abs_mydir}/cinit-conf.read-conf" + +if [ $# -ne 2 ]; then + echo "${__myname}: service path-to-executable" + exit 1 +fi + +svc="$1"; shift +executable="$1"; shift + +echo "${svc}:${C_OFF}->${executable}" + +ln -sf "${executable}" "${R_SVC_DIR}/${svc}/${C_OFF}" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-on b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-on new file mode 100755 index 00000000..7b8121c7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-on @@ -0,0 +1,39 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Select program to start on service start +# + +set -e + +# init variables +. "$(dirname $0)/cinit-conf.read-conf" + +if [ $# -ne 2 ]; then + echo "$(basename $0): service path-to-executable" + exit 1 +fi + +svc="$1"; shift +executable="$1"; shift + +echo "${svc}:${C_ON}->${executable}" + +ln -sf "${executable}" "${R_SVC_DIR}/${svc}/${C_ON}" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-param.add b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-param.add new file mode 100755 index 00000000..6daa7059 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-param.add @@ -0,0 +1,42 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Select program to start on service start +# + +set -e + +# init variables +. "$(dirname $0)/cinit-conf.read-conf" + +if [ $# -lt 3 ]; then + echo "$(basename $0): service (${C_ON}|${C_OFF}) params..." + exit 1 +fi + +svc="$1"; shift +type="$1"; shift + +while [ $# -gt 0 ]; do + param="$1"; shift + file="${svc}/${type}${C_PARAMS}" + echo "${file}+=${param}" + echo "${param}" >> "${R_SVC_DIR}/${file}" +done diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-respawn.off b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-respawn.off new file mode 100755 index 00000000..1809f43e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-respawn.off @@ -0,0 +1,46 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Disable respawing for a service +# + +set -e + +################################################################################ +# standard vars stolen from cconf +__pwd="$(pwd -P)" +__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)" +__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname" + +# init variables +. "${__mydir}/cinit-conf.read-conf" + +if [ $# -lt 1 ]; then + echo "${__myname}: service-name(s)" + echo " Services will lose their respawn mark" + exit 1 +fi + +for svc in "$@"; do + echo -n "${svc}:respaw->off" + rm -f "${R_SVC_DIR}/${svc}/${C_RESPAWN}" + echo "finished." +done + diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-respawn.on b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-respawn.on new file mode 100755 index 00000000..b00adb14 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc-respawn.on @@ -0,0 +1,46 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Enable respawing for a service +# + +set -e + +################################################################################ +# standard vars stolen from cconf +__pwd="$(pwd -P)" +__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)" +__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname" + +# init variables +. "${__mydir}/cinit-conf.read-conf" + +if [ $# -lt 1 ]; then + echo "${__myname}: service-name(s)" + echo " Services will be marked respawning" + exit 1 +fi + +for svc in "$@"; do + echo -n "${svc}:respaw->on" + touch "${R_SVC_DIR}/${svc}/${C_RESPAWN}" + echo "finished." +done + diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.acpid b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.acpid new file mode 100755 index 00000000..f92a80d6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.acpid @@ -0,0 +1,53 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Start acpid +# + +################################################################################ +# standard vars stolen from cconf +__pwd="$(pwd -P)" +__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)" +__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname" + +set -e +. "$(dirname $0)/cinit-conf.read-conf" + + +if [ $# -ne 0 ]; then + echo "${__myname}: " + echo "" + echo " I start the old acpid" + echo "" + exit 23 +fi + +SVC="local-services/acpid" +BINARY_PATH="$(which acpid)" +NEEDS="mount/root mount/proc" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-f" + +# no known dependencies +cinit-conf.svc.dependency.add "${SVC}" "needs" $NEEDS + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.agetty b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.agetty new file mode 100755 index 00000000..a168e5bd --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.agetty @@ -0,0 +1,71 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Enable agetty (6 times is fine) +# + +################################################################################ +# standard vars stolen from cconf +__pwd="$(pwd -P)" +__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)" +__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname" + +set -e +. "$(dirname $0)/cinit-conf.read-conf" + + +if [ $# -ne 1 ]; then + echo "${__myname}: " + echo "" + echo " Allow login to your system using agetty" + echo "" + exit 23 +fi +num_getties="$1"; shift + +SVCBASE="local-services/agetty" + +# agetty is called getty within debian/ubuntu -> FIXME: also search for agetty +BINARY_PATH="$(which getty)" +NEEDS="mount/root mount/proc" + +# Create container to hold all the getties +cinit-conf.svc-create.template "${SVCBASE}" + +i=0 +while [ "$i" -lt "$num_getties" ]; do + SVC="${SVCBASE}/$i" + tty="tty${i}" + speed="38400" + + cinit-conf.svc-create.template "${SVC}" + cinit-conf.svc.respawn.on "${SVC}" + cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" + cinit-conf.svc-param.add "${SVC}" "${C_ON}" "${speed}" "${tty}" + + cinit-conf.svc.dependency.add "${SVC}" "needs" $NEEDS + + # add each getty to the "super-getty-service" + cinit-conf.svc.dependency.add "${SVCBASE}" "needs" "${SVC}" + + i=$(($i+1)) +done + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.categories b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.categories new file mode 100755 index 00000000..6db485fc --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.categories @@ -0,0 +1,26 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Create default categories +# + +. "$(dirname $0)/cinit-conf.read-conf" + +cinit-conf.svc-create.template $SERVICE_CATEGORIES diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.dependency.add b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.dependency.add new file mode 100755 index 00000000..ea94ae95 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.dependency.add @@ -0,0 +1,65 @@ +#!/bin/sh +# +# 2008-2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit-conf. If not, see . +# +# cinit: create dependency: service a needs or wants service b +# + +set -e +. "$(dirname $0)/cinit-conf.read-conf" + +if [ $# -lt 3 ]; then + echo "`basename $0`: service_A [wants|needs] service_B" + echo "" + echo " Service A needs or wants Service B." + echo " You must specify whether to use wants or needs." + echo "" + exit 23 +fi + +SVC_A="$1"; shift +DEP="$1"; shift + +# adding 'wishes' for x-mas and requires for 'the mass' and 'tv' +case "${DEP}" in + wishes|wants) DEP="$C_WANTS" ;; + needs|requires) DEP="$C_NEEDS" ;; + *) echo "Use \"want\" or \"need\" as type of dependency." +esac + +SVC_A_LDIR="${R_SVC_DIR}/${SVC_A}/${DEP}" +# Try to create dependency directory, if it does not exist +if [ ! -d "${SVC_A_LDIR}" ]; then + echo "${SVC_A}:+${DEP}" + mkdir "${SVC_A_LDIR}" +fi + +# allow multiple dependencies to be added in one run +while [ $# -gt 0 ]; do + SVC_B="$1"; shift + + # remove slashes in the name for destination + SVC_B_LNAME="$(echo "$SVC_B" | sed 's#/#-#g')" + SVC_B_SOURCE="${T_SVC_DIR}/${SVC_B}" + SVC_A_LDEST="${SVC_A_LDIR}/${SVC_B_LNAME}" + + echo "${SVC_A} ${DEP} ${SVC_B} (${SVC_B_LNAME})" + ln -sf "${SVC_B_SOURCE}" "${SVC_A_LDEST}" +done + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.fsck.linux b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.fsck.linux new file mode 100755 index 00000000..ab522794 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.fsck.linux @@ -0,0 +1,50 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Filesystemcheck +# Warning: Ubuntu has UUIDs: +# root@ubuntu:~# cat /etc/fstab +# /etc/fstab: static file system information. +# +# Use 'vol_id --uuid' to print the universally unique identifier for a +# device; this may be used with UUID= as a more robust way to name devices +# that works even if disks are added and removed. See fstab(5). +# [...] +# UUID=405998e4-63ba-4190-8a69-488bd81b9d39 / ext3 relatime,errors=remount-ro 0 1 +# +# But the mtab of the running system contains the useful entry +# + +set -e + +. "$(dirname $0)/cinit-conf.read-conf" + +if [ $# -ne 2 ]; then + echo "$(basename $0): servicename device" + exit 1 +fi + +SVC="$1"; shift +DEVICE="$1"; shift +BINARY_PATH="$(which fsck)" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "${DEVICE}" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.getty.add b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.getty.add new file mode 100755 index 00000000..ea4e1815 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.getty.add @@ -0,0 +1,75 @@ +#!/bin/sh +# Nico Schottelius +# cinit: create gettys +# Date: 2005-05-24 (Last changed: 2005-08-07) +# + +set -e + +# init variables +. "$(dirname $0)/cinit-conf.read-conf" + +BASEDIR="${R_SVC_DIR}/${GETTYDIR}" +LAST_NUMBER=$(cd "$BASEDIR" && ls | awk '/^((0[xX])[0-9a-fA-F]+)|([0-9]+)$/ { print }' | sort -n | tail -n 1) + +[ ! "$LAST_NUMBER" ] && LAST_NUMBER=0 + +NUMBER=$(echo $LAST_NUMBER + 1 | bc) + +[ ! "$NUMBER" ] && NUMBER=1 + +DDIR=$BASEDIR/$NUMBER + +#echo "Creating getty number $NUMBER in $DDIR ..." + +if [ "$USE_THIS_GETTY" ]; then + GETTYS="$USE_THIS_GETTY" +else + GETTYS=`echo /sbin/*getty*` +fi + +for getty in $GETTYS; do + case $getty in + */fgetty|*/mingetty) + mygetty=$getty + params="/dev/tty${NUMBER}" + ;; + */agetty|*/getty) + mygetty=$getty + params="38400 tty${NUMBER} linux" + ;; + */mgetty) + mygetty=$getty + params="38400 tty${NUMBER}" + ;; + *) + echo "Unknown Getty type $getty" + echo "Please report standard parameters to me." + esac + + [ "$mygetty" ] && break +done + +# check input +if [ ! "$mygetty" ]; then + read -p "Getty to use [$mygetty]: " rgetty +fi +if [ ! "$params" ]; then + read -p "Parameters to pass [$params]: " rparams +fi +if [ ! "$params" -o ! "$mygetty" ]; then + echo "Sorry, either getty or parameters are not supplied." + exit 23 +fi + +echo -n "Creating $mygetty ($params) in $DDIR ... " +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "$DDIR" +ln -s "$mygetty" "$DDIR/$C_ON" + +for param in $params; do + echo $param >> "$DDIR/${C_ON}${C_PARAMS}" +done + +touch "$DDIR/$C_RESPAWN" + +echo "finished." diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.getty.remove b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.getty.remove new file mode 100755 index 00000000..8a9801dd --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.getty.remove @@ -0,0 +1,25 @@ +#!/bin/sh +# Nico Schottelius +# cinit: create gettys + +# init variables +. "$(dirname $0)/cinit-conf.read-conf" + +BASEDIR="$DESTDIR/$CINIT_DIR/$GETTY_DIR" +NUMBER=$(cd $BASEDIR && ls | awk '/^((0[xX])[0-9a-fA-F]+)|([0-9]+)$/ { print }' | tail -n 1) + +if [ ! "$NUMBER" ]; then + echo "There is no getty to remove." + exit 1 +fi + +DDIR="$BASEDIR/$NUMBER" + +echo "Removing getty number $NUMBER located in $DDIR ..." +read -p "Are you sure [y/N]? " yes + +if [ "$yes" = "y" ]; then + rm -r "$DDIR" +else + echo "Aborted." +fi diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.hostname.linux b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.hostname.linux new file mode 100755 index 00000000..50eb7737 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.hostname.linux @@ -0,0 +1,42 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Setup the hostname +# + +set -e + +. "$(dirname $0)/cinit-conf.read-conf" + +if [ $# -ne 1 ]; then + echo "$(basename $0): hostname" + exit 1 +fi + +HOSTNAME="$1" +: ${HOSTNAME_BIN:=/bin/hostname} + +SVC="network/hostname" + +cinit-conf.svc-create.template "${SVC}" +ln -sf "$HOSTNAME_BIN" "${R_SVC_DIR}/${SVC}/${C_ON}" +echo "$HOSTNAME" > "${R_SVC_DIR}/${SVC}/${C_ON}${C_PARAMS}" + +cinit-conf.svc.dependency.add "${SVC}" needs "mount/proc" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.init b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.init new file mode 100755 index 00000000..7d6f4329 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.init @@ -0,0 +1,14 @@ +#!/bin/sh +# Nico Schottelius +# cinit: install needed directories +# Date: - (Last Modified: 2005-08-06) +# + +. "$(dirname $0)/cinit-conf.read-conf" + +set -e +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "${R_CINITCONF_DIR}" +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "${R_SVC_DIR}" + +# init must be there. always. +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "${R_SVC_DIR}/init" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.init.dependencies b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.init.dependencies new file mode 100755 index 00000000..b21ed402 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.init.dependencies @@ -0,0 +1,32 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# cinit: add standard sub-configuration directories to init wants +# + +set -e + +. "$(dirname $0)/cinit-conf.read-conf" + +cinit-conf.svc.dependency.add init wants getty +cinit-conf.svc.dependency.add init wants local-services +cinit-conf.svc.dependency.add init wants local-tuning +cinit-conf.svc.dependency.add init wants mount +cinit-conf.svc.dependency.add init wants network diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.keymap.linux b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.keymap.linux new file mode 100755 index 00000000..faa12530 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.keymap.linux @@ -0,0 +1,41 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Setup console keymap +# + +. "$(dirname $0)/cinit-conf.read-conf" + +set -e + +if [ $# -ne 0 ]; then + echo "$(basename $0) (no args)" + exit 1 +fi + +SVC="local-tuning/keymap" +BINARY_PATH="$(which setupcon)" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-k" + +# FIXME: what are the correct dependencies? +cinit-conf.svc.dependency.add "${SVC}" "needs" "mount/proc" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.linux.network.lo b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.linux.network.lo new file mode 100755 index 00000000..0211a8b3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.linux.network.lo @@ -0,0 +1,18 @@ +#!/bin/sh +# Nico Schottelius +# cinit: install service: loopback device +# Date: 2005-08-07 +# + +. "$(dirname $0)/cinit-conf.read-conf" + +set -e + +# - mount /proc +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "${DESTDIR}/${CINIT_DIR}/network/lo" +ln -sf /sbin/ifconfig "${DESTDIR}/${CINIT_DIR}/network/lo/$C_ON" +echo lo > "${DESTDIR}/${CINIT_DIR}/network/lo/${C_ON}${C_PARAMS}" +echo 127.0.0.1/8 >> "${DESTDIR}/${CINIT_DIR}/network/lo/${C_ON}${C_PARAMS}" +echo up >> "${DESTDIR}/${CINIT_DIR}/network/lo/${C_ON}${C_PARAMS}" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.local-tuning.udev.ubuntu b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.local-tuning.udev.ubuntu new file mode 100755 index 00000000..eeb53214 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.local-tuning.udev.ubuntu @@ -0,0 +1,45 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Configure the udev service +# + +. "$(dirname $0)/cinit-conf.read-conf" + +set -e + +if [ $# -ne 0 ]; then + echo "$(basename $0) (no args)" + exit 1 +fi + +BINARY_PATH="$(which udevadm)" + +SVC="local-tuning/udev" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "settle" + +# dependencies +cinit-conf.svc.dependency.add "${SVC}" needs "mount/sys" +cinit-conf.svc.dependency.add "${SVC}" needs "mount/udev" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.dev-pts b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.dev-pts new file mode 100755 index 00000000..8d8c0da9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.dev-pts @@ -0,0 +1,54 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Mount /dev/shm, as specified in Ubuntu: +# +# domount tmpfs shmfs /dev/shm tmpfs -onosuid,nodev$SHM_OPT +# +# + + +. "$(dirname $0)/cinit-conf.read-conf" + +set -e + +if [ $# -ne 0 ]; then + echo "$(basename $0) (no args)" + exit 1 +fi + +SVC="mount/dev-pts" +BINARY_PATH="$(which mount)" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" + +# Ubuntu: domount devpts "" /dev/pts devpts -onoexec,nosuid,gid=$TTYGRP,mode=$TTYMODE +# root@cinit-desktop:/home/cinit/cinit# grep -e TTYGRP -e TTYMODE /etc/default/* +# /etc/default/devpts:TTYGRP=5 +# /etc/default/devpts:TTYMODE=620 +# root@cinit-desktop:/home/cinit/cinit# awk -F: '$3 ~ /^5$/ { print $1 }' /etc/group +# tty + + +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-n" "-t" "devpts" "devpts" "/dev/pts" "-onoexec,nosuid,gid=5,mode=620" +cinit-conf.svc.dependency.add "${SVC}" "needs" "mount/udev" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.dev-shm b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.dev-shm new file mode 100755 index 00000000..3466b68f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.dev-shm @@ -0,0 +1,45 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Mount /dev/shm, as specified in Ubuntu: +# +# domount tmpfs shmfs /dev/shm tmpfs -onosuid,nodev$SHM_OPT +# +# + + +. "$(dirname $0)/cinit-conf.read-conf" + +set -e + +if [ $# -ne 0 ]; then + echo "$(basename $0) (no args)" + exit 1 +fi + +SVC="mount/dev-shm" +BINARY_PATH="$(which mount)" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-n" "-t" "tmpfs" "-onosuid,nodev" "shmfs" "/dev/shm" +cinit-conf.svc.dependency.add "${SVC}" "needs" "mount/udev" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.getsource b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.getsource new file mode 100755 index 00000000..9ee21f6c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.getsource @@ -0,0 +1,22 @@ +#!/bin/sh +# +# 2008 Nico Schottelius (nico-cinit-conf at schottelius.org) +# +# This file is part of cinit-conf. +# +# cinit-conf is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit-conf is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit-conf. If not, see . +# + +# FIXME: Skip ^#!, make for generic mounts! +awk '$2 ~ /^\/$/ { print $0 }' < /etc/fstab diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.nfs b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.nfs new file mode 100755 index 00000000..3bea7463 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.nfs @@ -0,0 +1,56 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Mount NFS shares +# + +################################################################################ +# standard vars stolen from cconf +__pwd="$(pwd -P)" +__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)" +__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname" + +set -e +. "$(dirname $0)/cinit-conf.read-conf" + + +if [ $# -ne 0 ]; then + echo "${__myname}: " + echo "" + echo " Enable NFS mounts" + echo "" + exit 23 +fi + +SVC="mount/nfs" +BINARY_PATH="$(which mount)" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-a" "-t" "nfs" + +BINARY_PATH="$(which umount)" +cinit-conf.svc-off "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_OFF}" "-a" "-t" "nfs" + +# NFS mounts always need the network to be up +cinit-conf.svc.dependency.add "${SVC}" "needs" $NEEDS "network" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.proc b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.proc new file mode 100755 index 00000000..42ae9171 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.proc @@ -0,0 +1,38 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Mount /proc +# + +. "$(dirname $0)/cinit-conf.read-conf" + +set -e + +# - mount /proc +SVC="mount/proc" + +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "${R_SVC_DIR}/${SVC}" +ln -sf /bin/mount "${R_SVC_DIR}/${SVC}/${C_ON}" +echo proc > "${R_SVC_DIR}/${SVC}/${C_ON}${C_PARAMS}" +echo -t >> "${R_SVC_DIR}/${SVC}/${C_ON}${C_PARAMS}" +echo proc >> "${R_SVC_DIR}/${SVC}/${C_ON}${C_PARAMS}" +echo /proc >> "${R_SVC_DIR}/${SVC}/${C_ON}${C_PARAMS}" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.root b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.root new file mode 100755 index 00000000..17eff913 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.root @@ -0,0 +1,41 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# mount / read/write (and fsck it before) +# + +set -e + +. "$(dirname $0)/cinit-conf.read-conf" + +# mount root read/write +SVC="mount/root" +BINARY_PATH="$(which mount)" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-n" "-o" "remount,rw" "/" + +SVC_FSCK="${SVC}/fsck" +BINARY_PATH="$(which fsck)" +DEV="$(mount | awk '$3 ~ /\/$/ { print $1 }')" + +cinit-conf.svc.fsck.linux "${SVC_FSCK}" "${DEV}" +cinit-conf.svc.dependency.add "${SVC}" "needs" "${SVC_FSCK}" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.swap b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.swap new file mode 100755 index 00000000..10ca6be3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.swap @@ -0,0 +1,43 @@ +#!/bin/sh +# Nico Schottelius +# cinit: install swap +# Date: 2005-10-15 +# + +. "$(dirname $0)/cinit-conf.read-conf" + +SERVICE=mount/swap + +if [ $# -ne 0 ]; then + echo "$(basename $0) (no args)" + exit 1 +fi + +BINARY=swapon +BINARY_PATH=$($(dirname $0)/cinit.path-find $BINARY) +if [ $? -ne 0 ]; then + echo "Did not find binary $BINARY." + exit 1 +fi + +HAS_SWAP=$(awk '$3 ~ /swap/ { print $3 }' /etc/fstab) +if [ -z "$HAS_SWAP" ]; then + echo "Seems you have no swap, service not installing" + exit 1 +fi +if [ -d "${DESTDIR}/${CINIT_DIR}/${SERVICE}" ]; then + echo "Service ${SERVICE} already exists." + exit 1 +fi + +echo -n "Installing ${SERVICE} to ${DESTDIR}${CINIT_DIR}/${SERVICE} ..." + +"$INSTALL_PROG" "$INSTALL_DIRECTORY" \ + "${DESTDIR}/${CINIT_DIR}/${SERVICE}" +ln -sf "$BINARY_PATH" "${DESTDIR}/${CINIT_DIR}/${SERVICE}/$C_ON" + +echo "-a" >> "${DESTDIR}/${CINIT_DIR}/${SERVICE}/$C_ON$C_PARAMS" + +echo "finished." + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.sys b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.sys new file mode 100755 index 00000000..fa09253d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.sys @@ -0,0 +1,19 @@ +#!/bin/sh +# Nico Schottelius +# cinit: install service: mount /sys +# Date: 2005-08-07 +# + +. "$(dirname $0)/cinit-conf.read-conf" + +set -e + +# - mount /sys +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "${DESTDIR}/${CINIT_DIR}/mount/sys" +ln -sf /bin/mount "${DESTDIR}/${CINIT_DIR}/mount/sys/$C_ON" +echo sys > "${DESTDIR}/${CINIT_DIR}/mount/sys/${C_ON}${C_PARAMS}" +echo -t >> "${DESTDIR}/${CINIT_DIR}/mount/sys/${C_ON}${C_PARAMS}" +echo sysfs >> "${DESTDIR}/${CINIT_DIR}/mount/sys/${C_ON}${C_PARAMS}" +echo /sys >> "${DESTDIR}/${CINIT_DIR}/mount/sys/${C_ON}${C_PARAMS}" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.sysfs b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.sysfs new file mode 100755 index 00000000..05da04f3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.sysfs @@ -0,0 +1,39 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Mount sysfs +# + + +. "$(dirname $0)/cinit-conf.read-conf" + +set -e + +DDIR="${R_SVC_DIR}/mount/sys/" + +# - mount /sys +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "${DDIR}" +ln -sf /bin/mount "${DDIR}${C_ON}" +echo sysfs > "${DDIR}${C_ON}${C_PARAMS}" +echo -t >> "${DDIR}${C_ON}${C_PARAMS}" +echo sysfs >> "${DDIR}${C_ON}${C_PARAMS}" +echo /sys >> "${DDIR}${C_ON}${C_PARAMS}" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.udev b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.udev new file mode 100755 index 00000000..0233336f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mount.udev @@ -0,0 +1,40 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Setup console keymap +# + +. "$(dirname $0)/cinit-conf.read-conf" + +set -e + +if [ $# -ne 0 ]; then + echo "$(basename $0) (no args)" + exit 1 +fi + +SVC="mount/udev" +BINARY_PATH="$(which mount)" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-n" "-t" "tmpfs" "-o" "mode=0755" "udev" "/dev" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mtab-clean.linux b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mtab-clean.linux new file mode 100755 index 00000000..ac84719b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.mtab-clean.linux @@ -0,0 +1,49 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Initialise the /etc/mtab file on Linux: +# Ubuntu Jaunty manually creates it, we just ignore it +# and link it to /proc/mounts. +# +# This is probably not the perfect way, as /proc/mounts +# contains more stuff than useful. Maybe we can add a +# "add mount to mtab" dependency to all mount/X/ services, +# that depends on mount/root. +# +# + +. "$(dirname $0)/cinit-conf.read-conf" + +set -e + +SVC="local-tuning/cleanup-mtab" +BINARY_PATH="$(which ln)" + +# Is mount/proc needed or is it sane to link to an empty /etc/mtab +# by linking that to a non-existing file? +NEEDS="mount/root mount/proc" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-sf" "/proc/mounts" "/etc/mtab" + +cinit-conf.svc.dependency.add "${SVC}" "needs" $NEEDS + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.network.debian b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.network.debian new file mode 100755 index 00000000..a8e1ac1a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.network.debian @@ -0,0 +1,58 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Start network +# + +################################################################################ +# standard vars stolen from cconf +__pwd="$(pwd -P)" +__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)" +__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname" + +set -e +. "$(dirname $0)/cinit-conf.read-conf" + + +if [ $# -ne 0 ]; then + echo "${__myname}: " + echo "" + echo " I start all your network devices" + echo "" + exit 23 +fi + +SVC="network/devices" +BINARY_PATH="$(which ifup)" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-a" + +# FIXME: Is it really senseful to call ifdown at shutdown? +# Or is that useless anyway? Besides some DHCP_RELEASEs +BINARY_PATH="$(which ifdown)" +cinit-conf.svc-off "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_OFF}" "-a" + +# no known dependencies +#cinit-conf.svc.dependency.add "${SVC}" "needs" $NEEDS + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.setup.console.linux b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.setup.console.linux new file mode 100755 index 00000000..f9a980ee --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.setup.console.linux @@ -0,0 +1,48 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# Setup the Linux console +# + +################################################################################ +# standard vars stolen from cconf +__pwd="$(pwd -P)" +__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)" +__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname" + +set -e +. "$(dirname $0)/cinit-conf.read-conf" + + +if [ $# -ne 0 ]; then + echo "${__myname}: " + echo "" + echo " Setup Linux console" + echo "" + exit 23 +fi + +SVC="local-tuning/setup-console" +BINARY_PATH="$(which setupcon)" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "--force" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.shell b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.shell new file mode 100755 index 00000000..490ee3de --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.shell @@ -0,0 +1,53 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Start a shell - the debugging example +# + +################################################################################ +# standard vars stolen from cconf +__pwd="$(pwd -P)" +__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)" +__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname" + +set -e +. "$(dirname $0)/cinit-conf.read-conf" + + +if [ $# -ne 0 ]; then + echo "${__myname}: " + echo "" + echo " I start a local shell" + echo "" + exit 23 +fi + +SVC="local-services/shell" +BINARY_PATH="$(which sh)" +WANTS="mount/root mount/proc" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-i" +cinit-conf.svc-respawn.on "${SVC}" + +cinit-conf.svc.dependency.add "${SVC}" "wants" $WANTS + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.sshd b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.sshd new file mode 100755 index 00000000..672b02f2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.sshd @@ -0,0 +1,53 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Start sshd +# + +################################################################################ +# standard vars stolen from cconf +__pwd="$(pwd -P)" +__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)" +__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname" + +set -e +. "$(dirname $0)/cinit-conf.read-conf" + + +if [ $# -ne 0 ]; then + echo "${__myname}: " + echo "" + echo " I start the OpenSSH server (not just sshd, Mike)." + echo "" + exit 23 +fi + +SVC="remote-services/sshd" +BINARY_PATH="$(which sshd)" +#NEEDS="mount/root mount/proc" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-D" + +# no known dependencies +#cinit-conf.svc.dependency.add "${SVC}" "needs" $NEEDS + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.sysctl.linux b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.sysctl.linux new file mode 100755 index 00000000..e4f21a4a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.sysctl.linux @@ -0,0 +1,63 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Load sysctl values +# +# Ubuntu: for file in /etc/sysctl.conf /etc/sysctl.d/*.conf +# + + +. "$(dirname $0)/cinit-conf.read-conf" + +################################################################################ +# standard vars stolen from cconf +__pwd="$(pwd -P)" +__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)" +__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname" + +set -e + +if [ $# -ne 0 ]; then + echo "$(basename $0) (no args)" + exit 1 +fi + +SVC="local-tuning/sysctl" +BINARY_PATH="$(which sysctl)" + +# main service +cinit-conf.svc-delete "${SVC}" +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-p" "/etc/sysctl.conf" + +# create "sub"-services +for file in /etc/sysctl.d/*.conf; do + bsvc="${file##*/}" + bsvc="${bsvc%*.conf}" + svc="${SVC}/${bsvc}" + + cinit-conf.svc-create.template "${svc}" + cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" + cinit-conf.svc-param.add "${svc}" "${C_ON}" "-p" "${file}" + cinit-conf.svc.dependency.add "${SVC}" "needs" "${svc}" +done + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.tmp.clean b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.tmp.clean new file mode 100755 index 00000000..02e6dd5f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.tmp.clean @@ -0,0 +1,58 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Cleanup temp directories +# + +################################################################################ +# standard vars stolen from cconf +__pwd="$(pwd -P)" +__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)" +__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname" + +set -e +. "$(dirname $0)/cinit-conf.read-conf" + + +if [ $# -lt 1 ]; then + echo "${__myname}: tmpdirs... " + echo "" + echo " I remove those tempdirs on bootup." + echo "" + exit 23 +fi + +SVC="local-tuning/tmp-clean" +BINARY_PATH="$(which rm)" + +# FIXME: We would need all the related partions to be r/w +# So probably add a warning somewhere or add another argument, +# specifyng other needs +NEEDS="mount/root" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-rf" +cinit-conf.svc.dependency.add "${SVC}" "needs" $NEEDS + +# all other arguments are temp directories +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "$@" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.tmp.create b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.tmp.create new file mode 100755 index 00000000..3a2d6b5f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.tmp.create @@ -0,0 +1,58 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Recreate temp directories +# + +################################################################################ +# standard vars stolen from cconf +__pwd="$(pwd -P)" +__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)" +__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname" + +set -e +. "$(dirname $0)/cinit-conf.read-conf" + + +if [ $# -lt 1 ]; then + echo "${__myname}: tmpdirs... " + echo "" + echo " I create those tempdirs on bootup." + echo "" + exit 23 +fi + +SVC="local-tuning/tmp/create" +BINARY_PATH="$(which mkdir)" + +# FIXME: We would need all the related partions to be r/w +# So probably add a warning somewhere or add another argument, +# specifyng other needs +NEEDS="mount/root" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" + +# all other arguments are temp directories +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-m" "1777" "$@" + +cinit-conf.svc.dependency.add "${SVC}" "needs" $NEEDS + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.udev.copy-static b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.udev.copy-static new file mode 100755 index 00000000..3eb7c10e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.svc.udev.copy-static @@ -0,0 +1,40 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Copny static files to /dev +# + +. "$(dirname $0)/cinit-conf.read-conf" + +set -e + +if [ $# -ne 0 ]; then + echo "$(basename $0) (no args)" + exit 1 +fi + +SVC="local-tuning/udev/copy-static" +BINARY_PATH="$(which cp)" + +cinit-conf.svc-create.template "${SVC}" +cinit-conf.svc-on "${SVC}" "${BINARY_PATH}" +cinit-conf.svc-param.add "${SVC}" "${C_ON}" "-a" "/lib/udev/devices/" "/dev/" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.sys-v-init.get-current-runlevel b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.sys-v-init.get-current-runlevel new file mode 100755 index 00000000..aba723f9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.sys-v-init.get-current-runlevel @@ -0,0 +1,21 @@ +#!/bin/sh +# +# 2008 Nico Schottelius (nico-cinit-conf at schottelius.org) +# +# This file is part of cinit-conf. +# +# cinit-conf is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit-conf is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit-conf. If not, see . +# + +runlevel | cut -d " " -f2 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.sys-v-init.migrate-fstab b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.sys-v-init.migrate-fstab new file mode 100755 index 00000000..f3c08736 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit-conf.sys-v-init.migrate-fstab @@ -0,0 +1,26 @@ +#!/bin/sh +# +# 2008 Nico Schottelius (nico-cinit-conf at schottelius.org) +# +# This file is part of cinit-conf. +# +# cinit-conf is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit-conf is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit-conf. If not, see . +# + +# read root + +# read swap + +# FIXME: read others: later +echo "Warning: Only configuring / and swap, ignoring other devices for now" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.reboot b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.reboot new file mode 100755 index 00000000..f7967d3e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.reboot @@ -0,0 +1,18 @@ +#!/bin/sh +# Nico Schottelius +# reboot system +# 2005-06-09 + + +usage() +{ + echo "`basename $0`" + echo " Reboot the system:" + exit 1 +} + +if [ $# -ne 0 ]; then + usage +fi + +kill -HUP 1 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.shutdown b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.shutdown new file mode 100755 index 00000000..702c8a17 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.shutdown @@ -0,0 +1,30 @@ +#!/bin/sh +# Nico Schottelius +# shutdown system +# TODO: use ccontrol! +# 2005-05-24 (Last changed: 2005-06-18) + + +usage() +{ + echo "`basename $0` -[ohr]" + echo " Shutdown the system:" + echo " -p|--power-off: Power off" + echo " -h|--halt: Halt" + echo " -r|--reboot: Reboot" + echo " -s|--rescue: Rescue mode" + echo " " + exit 1 +} + +if [ $# -ne 1 ]; then + usage +fi + +case $1 in + -r|--reboot) kill -HUP 1 ;; + -p|--power-off) kill -TERM 1 ;; + -h|--halt) kill -USR1 1 ;; + -s|--rescue) kill -USR2 1 ;; + *) usage ;; +esac diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.svc.init b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.svc.init new file mode 100755 index 00000000..bdbfb8cd --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.svc.init @@ -0,0 +1,15 @@ +#!/bin/sh +# Nico Schottelius +# cinit: install service: init +# Date: 2005-08-07 +# + +. "$(dirname $0)/cinit-conf.read-conf" + +set -e + +ln -sf /bin/echo "${DESTDIR}/${CINIT_DIR}/${C_INIT}/$C_ON" +echo '*** cinit initial service successfully started ***' \ + > "${DESTDIR}/${CINIT_DIR}/${C_INIT}/${C_ON}${C_PARAMS}" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.svc.linux.debian.ntpdate b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.svc.linux.debian.ntpdate new file mode 100755 index 00000000..2b9ef315 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.svc.linux.debian.ntpdate @@ -0,0 +1,47 @@ +#!/bin/sh +# Nico Schottelius +# cinit: install ntpdate +# Date: 2005-10-15 +# + +. "$(dirname $0)/cinit-conf.read-conf" + +set -e + +if [ $# -ne 0 ]; then + echo "$(basename $0) (no args)" + exit 1 +fi + +. /etc/default/ntpdate + +if [ -z "$NTPSERVERS" ]; then + echo "No ntp servers found, aborting" + exit 1 +fi + +BINARY_PATH=$($(dirname $0)/cinit.path-find ntpdate) + +if [ $? -ne 0 ]; then + echo "Did not find binary ntpdate." + exit 1 +fi + +if [ -d "${DESTDIR}/${CINIT_DIR}/local-tuning/ntpdate" ]; then + echo "Service ntpdate already exists." + exit 1 +fi + +echo -n "Installing ntpdate to ${DESTDIR}/${CINIT_DIR}/local-tuning/ntpdate ..." + +"$INSTALL_PROG" "$INSTALL_DIRECTORY" \ + "${DESTDIR}/${CINIT_DIR}/local-tuning/ntpdate" +ln -sf "$BINARY_PATH" "${DESTDIR}/${CINIT_DIR}/local-tuning/ntpdate/$C_ON" + +for server in $NTPSERVERS; do + echo "$server" >> "${DESTDIR}/${CINIT_DIR}/local-tuning/ntpdate/$C_ON$C_PARAMS" +done + +echo "finished." + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.wait.for.daemon b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.wait.for.daemon new file mode 100755 index 00000000..7f027455 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bin/cinit.wait.for.daemon @@ -0,0 +1,31 @@ +#!/bin/sh +# Nico Schottelius +# wait for daemon to terminate +# the pidfile is our first argument, +# the dameon the second and all others are for the daemon +# 2005-06-12 (Last Changed: 2005-06-17) + +# how long to sleep before rechecking +SLEEP=5 + +if [ $# -lt 2 ]; then + echo "`basename $0` [daemon arguments]" + exit 1 +fi + +PIDFILE=$1; shift +DAEMON=$1; shift + +# remove old pidfile +[ -e "$PIDFILE" ] && rm -f $PIDFILE + +$DAEMON $@ + +PID=$(cat "$PIDFILE") + +ISALIVE=$(ps ax | awk '{ print $1 }' | grep "^$PID\$") + +while [ "$ISALIVE" ]; do + sleep ${SLEEP} + ISALIVE=$(ps ax | awk '{ print $1 }' | grep "^$PID\$") +done diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/README b/software/cinit/browse_source/cinit-0.3pre18/bugs/README new file mode 100644 index 00000000..6472dbf7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/README @@ -0,0 +1 @@ +This directory is maintained by ditz. diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-0c63a541a2261c7322d6c59a6adb091301020c8d.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-0c63a541a2261c7322d6c59a6adb091301020c8d.yaml new file mode 100644 index 00000000..5a125ca4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-0c63a541a2261c7322d6c59a6adb091301020c8d.yaml @@ -0,0 +1,25 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Create minimal sample configurations for different OS +desc: |- + Similar to what I thought todo in cinit.install.test: + + [ -e /etc/gentoo-release ] && TAR=${TARDIR}/gentoo.tar + [ -e /etc/debian_version ] && TAR=${TARDIR}/debian.tar + [ -e /etc/SuSE-release ] && TAR=${TARDIR}/suse.tar + [ -e /etc/mandrake-release ] && TAR=${TARDIR}/mandrake.tar + [ -e /etc/fedora-release ] && TAR=${TARDIR}/fedora.tar +type: :task +component: portability +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-24 20:14:42.832701 Z +references: [] + +id: 0c63a541a2261c7322d6c59a6adb091301020c8d +log_events: +- - 2009-09-24 20:14:44.120614 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-0d8142c646aa04e8e713fc8f886a44475581c670.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-0d8142c646aa04e8e713fc8f886a44475581c670.yaml new file mode 100644 index 00000000..4c082d64 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-0d8142c646aa04e8e713fc8f886a44475581c670.yaml @@ -0,0 +1,22 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: How to handle OS specific signal handlers +desc: |- + -- cinit ignores the Keyboard request + - Currently there is no support to react on 'ctr+alt+del': + + Maybe allow signal handlers to be passed to something like services? +type: :task +component: core +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 05:29:28.589652 Z +references: [] + +id: 0d8142c646aa04e8e713fc8f886a44475581c670 +log_events: +- - 2009-09-28 05:29:31.033914 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-120cbf62dbdd9a7a026bcbb7d2863599c7183f70.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-120cbf62dbdd9a7a026bcbb7d2863599c7183f70.yaml new file mode 100644 index 00000000..71b24dea --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-120cbf62dbdd9a7a026bcbb7d2863599c7183f70.yaml @@ -0,0 +1,30 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Add install targets +desc: |- + install: + make install => does not overwrite critical targets + * cinit + * *.kill (see client/*) + * cmd + make force-install => overwrites /sbin/{halt,poweroff,reboot}? + => with script that wraps cmd + make install-template: + * creates categories + make install-miniconf: + * creates categories + * creates one service starting a shell (depending on the OS!) +type: :task +component: build +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 05:42:21.470333 Z +references: [] + +id: 120cbf62dbdd9a7a026bcbb7d2863599c7183f70 +log_events: +- - 2009-09-28 05:42:22.146097 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-1cc421b885608485f73c9041c5c0af71df76331a.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-1cc421b885608485f73c9041c5c0af71df76331a.yaml new file mode 100644 index 00000000..10759001 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-1cc421b885608485f73c9041c5c0af71df76331a.yaml @@ -0,0 +1,18 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Documentate, how to write an init system +desc: So others can redo it. +type: :task +component: documentation +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-29 05:17:05.878201 Z +references: [] + +id: 1cc421b885608485f73c9041c5c0af71df76331a +log_events: +- - 2009-09-29 05:17:06.729534 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-1e83dca921062d97b96830caf24e7898ad4fbbe2.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-1e83dca921062d97b96830caf24e7898ad4fbbe2.yaml new file mode 100644 index 00000000..1a6a63a0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-1e83dca921062d97b96830caf24e7898ad4fbbe2.yaml @@ -0,0 +1,18 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: add error handling to cinit.install.binary +desc: Double check the whole installation process +type: :task +component: build +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 05:32:13.897529 Z +references: [] + +id: 1e83dca921062d97b96830caf24e7898ad4fbbe2 +log_events: +- - 2009-09-28 05:32:14.581391 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-25822475f5d01c35eb9edd8d75c065c83032701b.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-25822475f5d01c35eb9edd8d75c065c83032701b.yaml new file mode 100644 index 00000000..d815cbd6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-25822475f5d01c35eb9edd8d75c065c83032701b.yaml @@ -0,0 +1,23 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: "Documentate: How to cross compile" +desc: |- + conf/os to destination os + conf/cc + conf/ld + conf/cflags + conf/ldflags +type: :task +component: documentation +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-07 06:31:53.866741 Z +references: [] + +id: 25822475f5d01c35eb9edd8d75c065c83032701b +log_events: +- - 2009-09-07 06:31:54.990478 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-278e5a7b4c338f18f92d5bb1a2789d76d0e11ad9.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-278e5a7b4c338f18f92d5bb1a2789d76d0e11ad9.yaml new file mode 100644 index 00000000..40245817 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-278e5a7b4c338f18f92d5bb1a2789d76d0e11ad9.yaml @@ -0,0 +1,43 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Add reason, why service was not started +desc: |- + -------------------------------------------------------------------------------- + csvc: + 11:09 < folken23> telmich: oder service allready started. + -------------------------------------------------------------------------------- + cinit: + 11:09 < folken23> telmich: zsb. eine grund angabe warum ein dienst nicht gestartet + werden konnte. + 11:09 < folken23> telmich: e.g. file nicht gefunden, service hat nicht 0 + zurueckgeworfen. + ---> errno in execute_sth! +type: :task +component: cinit +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 05:36:51.093468 Z +references: [] + +id: 278e5a7b4c338f18f92d5bb1a2789d76d0e11ad9 +log_events: +- - 2009-09-28 05:36:51.957356 Z + - Nico Schottelius + - created + - "" +- - 2009-09-29 05:15:14.622132 Z + - Nico Schottelius + - commented + - |- + And add better status messages: + -> starting + [ started once ] + [ respawning ] + [ failed ] (+ REASON!) + [ needs failed ] (which ones) + + -> stopping + [ stopping ] (for dependencies) + [ stopped ] ? + [ not running ] ? diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-29d45f06044e5329dca7f351a17676e65d4e3b38.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-29d45f06044e5329dca7f351a17676e65d4e3b38.yaml new file mode 100644 index 00000000..7cd1909c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-29d45f06044e5329dca7f351a17676e65d4e3b38.yaml @@ -0,0 +1,22 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: "Bugfix: SIGCHLD not handled carefully" +desc: "" +type: :task +component: core +release: "0.3" +reporter: Nico Schottelius +status: :in_progress +disposition: +creation_time: 2009-09-29 05:34:17.833638 Z +references: [] + +id: 29d45f06044e5329dca7f351a17676e65d4e3b38 +log_events: +- - 2009-09-29 05:34:18.397430 Z + - Nico Schottelius + - created + - "" +- - 2009-09-29 05:35:28.338069 Z + - Nico Schottelius + - changed status from unstarted to in_progress + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-2a4a3675810b44b05ce51c021690fb3f21725e55.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-2a4a3675810b44b05ce51c021690fb3f21725e55.yaml new file mode 100644 index 00000000..cccc3fa5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-2a4a3675810b44b05ce51c021690fb3f21725e55.yaml @@ -0,0 +1,23 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: write sys-v-init-shutdown-wrapper +desc: |- + So people can use their known tools: + * shutdown + * halt + * reboot + * poweroff +type: :task +component: user interface +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 18:35:44.468421 Z +references: [] + +id: 2a4a3675810b44b05ce51c021690fb3f21725e55 +log_events: +- - 2009-09-28 18:35:45.292294 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-2fda514da472aa15fa57d2df06e8d5cc909016d0.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-2fda514da472aa15fa57d2df06e8d5cc909016d0.yaml new file mode 100644 index 00000000..dc0c9622 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-2fda514da472aa15fa57d2df06e8d5cc909016d0.yaml @@ -0,0 +1,22 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Write a small manual +desc: |- + How to + - install + - configure + - boot (different OS) +type: :task +component: documentation +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 18:37:34.300443 Z +references: [] + +id: 2fda514da472aa15fa57d2df06e8d5cc909016d0 +log_events: +- - 2009-09-28 18:37:35.280232 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-3a620ff450d0c685a5567d25d77230763c835c8e.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-3a620ff450d0c685a5567d25d77230763c835c8e.yaml new file mode 100644 index 00000000..ac9f8430 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-3a620ff450d0c685a5567d25d77230763c835c8e.yaml @@ -0,0 +1,19 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Allow non-parallel bootup +desc: For easier debugging and people who are confused with parallel startup +type: :task +component: core +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-10-24 14:18:44.270577 Z +references: [] + +id: 3a620ff450d0c685a5567d25d77230763c835c8e +log_events: +- - 2009-10-24 14:18:44.990439 Z + - Nico Schottelius + - created + - "" +git_branch: diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-3cc14c82109544e198e5cce002c0d94a66e6f4d7.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-3cc14c82109544e198e5cce002c0d94a66e6f4d7.yaml new file mode 100644 index 00000000..8e7731a6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-3cc14c82109544e198e5cce002c0d94a66e6f4d7.yaml @@ -0,0 +1,18 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Export service information +desc: Like pid, path, ... +type: :task +component: cinit +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-29 05:18:47.901610 Z +references: [] + +id: 3cc14c82109544e198e5cce002c0d94a66e6f4d7 +log_events: +- - 2009-09-29 05:18:48.369488 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-40bb0e1478cb8e1fd7ef577b0acf8f7b2f516d6d.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-40bb0e1478cb8e1fd7ef577b0acf8f7b2f516d6d.yaml new file mode 100644 index 00000000..35fdf1ff --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-40bb0e1478cb8e1fd7ef577b0acf8f7b2f516d6d.yaml @@ -0,0 +1,26 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Add service start/stop +desc: Hack cinit_svc_disable.c +type: :task +component: cinit +release: "0.3" +reporter: Nico Schottelius +status: :in_progress +disposition: +creation_time: 2009-09-29 05:31:38.533662 Z +references: [] + +id: 40bb0e1478cb8e1fd7ef577b0acf8f7b2f516d6d +log_events: +- - 2009-09-29 05:31:39.209477 Z + - Nico Schottelius + - created + - "" +- - 2009-09-29 05:32:40.681588 Z + - Nico Schottelius + - commented + - "svc_stop vs. svc_disable: coded tired?" +- - 2009-09-29 05:33:27.666143 Z + - Nico Schottelius + - changed status from unstarted to in_progress + - on it... diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-4e460e6061fb5d39549b85d42fc33f57de7a1396.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-4e460e6061fb5d39549b85d42fc33f57de7a1396.yaml new file mode 100644 index 00000000..01d7564a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-4e460e6061fb5d39549b85d42fc33f57de7a1396.yaml @@ -0,0 +1,18 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Maybe create libcinit? +desc: At least for use in cmd() +type: :task +component: cinit +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 05:43:27.689712 Z +references: [] + +id: 4e460e6061fb5d39549b85d42fc33f57de7a1396 +log_events: +- - 2009-09-28 05:43:28.069533 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-5bd7befd45553864b1d2ebc12509e06440a402d0.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-5bd7befd45553864b1d2ebc12509e06440a402d0.yaml new file mode 100644 index 00000000..c033e3d9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-5bd7befd45553864b1d2ebc12509e06440a402d0.yaml @@ -0,0 +1,18 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Documentate how to migrate from another init system +desc: "" +type: :task +component: documentation +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 20:00:00.854675 Z +references: [] + +id: 5bd7befd45553864b1d2ebc12509e06440a402d0 +log_events: +- - 2009-09-28 20:00:01.450291 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-5c4769f4f4f23b8a544ae3e20866d8fc2676a7e7.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-5c4769f4f4f23b8a544ae3e20866d8fc2676a7e7.yaml new file mode 100644 index 00000000..5fcbc43d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-5c4769f4f4f23b8a544ae3e20866d8fc2676a7e7.yaml @@ -0,0 +1,18 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: add code do implement stopping / restarting service with/without dependency tree +desc: "" +type: :task +component: cinit +release: 0.3.1 +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 05:33:24.966097 Z +references: [] + +id: 5c4769f4f4f23b8a544ae3e20866d8fc2676a7e7 +log_events: +- - 2009-09-28 05:33:25.929966 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-8391cdbcb30d007bfb692504d9469a93f7c15b97.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-8391cdbcb30d007bfb692504d9469a93f7c15b97.yaml new file mode 100644 index 00000000..a4da0c19 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-8391cdbcb30d007bfb692504d9469a93f7c15b97.yaml @@ -0,0 +1,18 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Mase sure cinit runs on POSIX +desc: Double check that there are no linux deps in it anymore (from cinit-0.2) +type: :task +component: portability +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-29 05:16:19.961614 Z +references: [] + +id: 8391cdbcb30d007bfb692504d9469a93f7c15b97 +log_events: +- - 2009-09-29 05:16:20.858087 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-85687a7f79046db51429db38e7b1da5234a3675e.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-85687a7f79046db51429db38e7b1da5234a3675e.yaml new file mode 100644 index 00000000..f87e898a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-85687a7f79046db51429db38e7b1da5234a3675e.yaml @@ -0,0 +1,25 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: write examples for profiles +desc: |- + o switch ssh known_hosts based on profile + o different proxy settings in browsers + - environment + - mozilla settings + o start samba (for lan) + o start samba (for company lan) + o use nis and nfs (company profile) +type: :task +component: documentation +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-29 05:19:26.941625 Z +references: [] + +id: 85687a7f79046db51429db38e7b1da5234a3675e +log_events: +- - 2009-09-29 05:19:27.345506 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-863a9d56ed460fb45e91d2c555d57133d2286f72.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-863a9d56ed460fb45e91d2c555d57133d2286f72.yaml new file mode 100644 index 00000000..9716ac2e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-863a9d56ed460fb45e91d2c555d57133d2286f72.yaml @@ -0,0 +1,24 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Add speedup part in documentation +desc: |- + - cinit will start a little bit faster if you omit non needed + 'wants' and 'needs' dirs as they need to be scanned if they + do not exist + - Dependencies beginning with a '.' (dot) are ignored. + So you can temporarily disable a dependency moving it to + want/.name +type: :task +component: documentation +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 05:30:01.562097 Z +references: [] + +id: 863a9d56ed460fb45e91d2c555d57133d2286f72 +log_events: +- - 2009-09-28 05:30:02.433805 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-8d5e1aee59a52ab1b3b0b02b02f07823d4f4b8d8.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-8d5e1aee59a52ab1b3b0b02b02f07823d4f4b8d8.yaml new file mode 100644 index 00000000..50eaa305 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-8d5e1aee59a52ab1b3b0b02b02f07823d4f4b8d8.yaml @@ -0,0 +1,28 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Create cinit-conf framework or libexec +desc: |- + Maybe include + - cinit_service_modify(name|path) + - cinit_service_create() - interactive + - cinit_service_delete(name|path) - interactive + * has to take care about needs / wants! + - cinit_magic_configuration_generation() + * tries to build a completly fresh configuration, by analysing your system + + Non interactive tools + - cinit_svc_del +type: :task +component: user interface +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-29 05:28:48.049604 Z +references: [] + +id: 8d5e1aee59a52ab1b3b0b02b02f07823d4f4b8d8 +log_events: +- - 2009-09-29 05:28:48.665510 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-b5428a5e8b064827fac8f1bc905cd5b304961f77.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-b5428a5e8b064827fac8f1bc905cd5b304961f77.yaml new file mode 100644 index 00000000..5666d6be --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-b5428a5e8b064827fac8f1bc905cd5b304961f77.yaml @@ -0,0 +1,22 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Add dumpstate function +desc: |- + It should write a cconfig tree similar to the configuration + Additionally it should contain a "state" field + + This feature is the base for hot-upgrading cinit. +type: :task +component: cinit +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-10-05 20:57:25.373348 Z +references: [] + +id: b5428a5e8b064827fac8f1bc905cd5b304961f77 +log_events: +- - 2009-10-05 20:57:25.943152 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-bb27c9b51f82dd54eba8baa40aa5e8bba326ea01.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-bb27c9b51f82dd54eba8baa40aa5e8bba326ea01.yaml new file mode 100644 index 00000000..f90ec206 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-bb27c9b51f82dd54eba8baa40aa5e8bba326ea01.yaml @@ -0,0 +1,18 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: export profile information +desc: Possible via $CINIT_PROFILE +type: :task +component: cinit +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-29 05:19:54.965525 Z +references: [] + +id: bb27c9b51f82dd54eba8baa40aa5e8bba326ea01 +log_events: +- - 2009-09-29 05:19:55.929526 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-c8d020845511594b4b90bb38a2a839ef6ce4c9c8.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-c8d020845511594b4b90bb38a2a839ef6ce4c9c8.yaml new file mode 100644 index 00000000..886b3337 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-c8d020845511594b4b90bb38a2a839ef6ce4c9c8.yaml @@ -0,0 +1,20 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Cleanup environment before starting child +desc: |- + Close fds, free mem, ... + Chcek what's necessary, what's senseful, ... +type: :task +component: cinit +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 05:41:22.857702 Z +references: [] + +id: c8d020845511594b4b90bb38a2a839ef6ce4c9c8 +log_events: +- - 2009-09-28 05:41:23.909476 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-d3732fffad054c5a1f781f28a60015346ad28dd6.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-d3732fffad054c5a1f781f28a60015346ad28dd6.yaml new file mode 100644 index 00000000..fed5b461 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-d3732fffad054c5a1f781f28a60015346ad28dd6.yaml @@ -0,0 +1,20 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: write cinit-conf.check +desc: |- + * report broken links in needs/wants + * report circular dependencies +type: :task +component: user interface +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 18:36:27.892997 Z +references: [] + +id: d3732fffad054c5a1f781f28a60015346ad28dd6 +log_events: +- - 2009-09-28 18:36:28.504859 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-d7a7970bd20e1dc0b04f314fee5f39ba90d3d904.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-d7a7970bd20e1dc0b04f314fee5f39ba90d3d904.yaml new file mode 100644 index 00000000..8b379025 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-d7a7970bd20e1dc0b04f314fee5f39ba90d3d904.yaml @@ -0,0 +1,18 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Cleanup contrib+tools +desc: Tools may be old or not even compiling. Cleanup! +type: :task +component: cinit +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-29 05:22:54.298139 Z +references: [] + +id: d7a7970bd20e1dc0b04f314fee5f39ba90d3d904 +log_events: +- - 2009-09-29 05:22:55.166003 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-dbc5e27c03e3dd22add144409f6dfe8b81d2c8d1.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-dbc5e27c03e3dd22add144409f6dfe8b81d2c8d1.yaml new file mode 100644 index 00000000..27f2d088 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-dbc5e27c03e3dd22add144409f6dfe8b81d2c8d1.yaml @@ -0,0 +1,22 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Documentate sleeping behaviour (when respawing processes) +desc: |- + - cinit will sleep after respawing if ... + + a) the service did not terminate normally (!WIFEXITED(status)) + b) the service did return a non-zero exit status +type: :task +component: documentation +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 05:27:32.721481 Z +references: [] + +id: dbc5e27c03e3dd22add144409f6dfe8b81d2c8d1 +log_events: +- - 2009-09-28 05:27:33.821345 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-e40b9f0761d0a1e0ca47cc8e0e52d4ec16f51669.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-e40b9f0761d0a1e0ca47cc8e0e52d4ec16f51669.yaml new file mode 100644 index 00000000..08026edf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-e40b9f0761d0a1e0ca47cc8e0e52d4ec16f51669.yaml @@ -0,0 +1,20 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: define service status in one document, so repeatition stops +desc: |- + maybe use doxygen? + Chose focus: user | developer +type: :task +component: documentation +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 05:31:11.886061 Z +references: [] + +id: e40b9f0761d0a1e0ca47cc8e0e52d4ec16f51669 +log_events: +- - 2009-09-28 05:31:12.802016 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-e435cb93810ea790f795fedc2e9afc6475c9c0a8.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-e435cb93810ea790f795fedc2e9afc6475c9c0a8.yaml new file mode 100644 index 00000000..13713f55 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-e435cb93810ea790f795fedc2e9afc6475c9c0a8.yaml @@ -0,0 +1,18 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: "FAQ: what happens when a service does not terminate...." +desc: write faq! +type: :task +component: documentation +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-28 20:11:41.130314 Z +references: [] + +id: e435cb93810ea790f795fedc2e9afc6475c9c0a8 +log_events: +- - 2009-09-28 20:11:41.862145 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-f10682d63b1059f876c6cdde2323a596dba89d3c.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-f10682d63b1059f876c6cdde2323a596dba89d3c.yaml new file mode 100644 index 00000000..0685c6f4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-f10682d63b1059f876c6cdde2323a596dba89d3c.yaml @@ -0,0 +1,51 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Test new build sytem +desc: |- + Migrate conf/ to general conf/-buildsystem (write documentation for it). + + gpm2 may be an example for this! + + conf/targets: + targets to make available in Makefile and their dependencies + + abstract the build-process somehow, so one can create build-targets? + + c-programs/ (includes cc / ld) + cinit (link to conf/object_listings cinit?) + conf/object_listings + lists of dependencies: + conf/object_listings/cinit contains all objects needed for cinit + + conf/programs/ + like cc, ld, install, ... + + conf/built-options/ + like --... in ./configure + + conf/install/ + + options/ + destdir (prefixed before everything) + prefix (standard prefix) + bin (relative to prefix, if not beginning with a /) + sbin (relative to prefix, if not beginning with a /) + lib (relative to prefix, if not beginning with a /) + targets/ + cinit/ + built-target (link to conf/targets/cinit) + destination (relative to +type: :task +component: build +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-29 05:21:55.313650 Z +references: [] + +id: f10682d63b1059f876c6cdde2323a596dba89d3c +log_events: +- - 2009-09-29 05:21:55.845402 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-fa88d3f9dca2df7ccaf8fb9ce2daab3e9255dae3.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-fa88d3f9dca2df7ccaf8fb9ce2daab3e9255dae3.yaml new file mode 100644 index 00000000..23949d0a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-fa88d3f9dca2df7ccaf8fb9ce2daab3e9255dae3.yaml @@ -0,0 +1,18 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: Check shutdown code +desc: To verify the right way +type: :task +component: core +release: "0.3" +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-29 05:34:46.305951 Z +references: [] + +id: fa88d3f9dca2df7ccaf8fb9ce2daab3e9255dae3 +log_events: +- - 2009-09-29 05:34:46.774065 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-fea40277e32b0bd747d7f47a68d41009fc046fd9.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-fea40277e32b0bd747d7f47a68d41009fc046fd9.yaml new file mode 100644 index 00000000..57911dc1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/issue-fea40277e32b0bd747d7f47a68d41009fc046fd9.yaml @@ -0,0 +1,18 @@ +--- !ditz.rubyforge.org,2008-03-06/issue +title: add logging support for services +desc: Similar to DJB tools? multilog? +type: :task +component: cinit +release: future +reporter: Nico Schottelius +status: :unstarted +disposition: +creation_time: 2009-09-29 05:18:00.717667 Z +references: [] + +id: fea40277e32b0bd747d7f47a68d41009fc046fd9 +log_events: +- - 2009-09-29 05:18:01.146029 Z + - Nico Schottelius + - created + - "" diff --git a/software/cinit/browse_source/cinit-0.3pre18/bugs/project.yaml b/software/cinit/browse_source/cinit-0.3pre18/bugs/project.yaml new file mode 100644 index 00000000..490b5cff --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/bugs/project.yaml @@ -0,0 +1,44 @@ +--- !ditz.rubyforge.org,2008-03-06/project +name: cinit +version: "0.5" +components: +- !ditz.rubyforge.org,2008-03-06/component + name: cinit +- !ditz.rubyforge.org,2008-03-06/component + name: core +- !ditz.rubyforge.org,2008-03-06/component + name: user interface +- !ditz.rubyforge.org,2008-03-06/component + name: portability +- !ditz.rubyforge.org,2008-03-06/component + name: documentation +- !ditz.rubyforge.org,2008-03-06/component + name: build +releases: +- !ditz.rubyforge.org,2008-03-06/release + name: "0.3" + status: :unreleased + release_time: + log_events: + - - 2009-09-07 06:28:02.974644 Z + - Nico Schottelius + - created + - The first cleaned up version +- !ditz.rubyforge.org,2008-03-06/release + name: future + status: :unreleased + release_time: + log_events: + - - 2009-09-07 06:29:14.264777 Z + - Nico Schottelius + - created + - All things to be fixed in the future. +- !ditz.rubyforge.org,2008-03-06/release + name: 0.3.1 + status: :unreleased + release_time: + log_events: + - - 2009-09-28 05:32:55.870041 Z + - Nico Schottelius + - created + - Bugfix of 0.3 diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/.README b/software/cinit/browse_source/cinit-0.3pre18/conf/.README new file mode 100644 index 00000000..c4d984c7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/.README @@ -0,0 +1,7 @@ +This is an example for a cinit and cinit-conf configuration. + +The first line of a file contains the configuration value, +the rest of the file may contain a description. + +The conf/ directory is shared by cinit and cinit-conf and may contain files that +are only relevant for one of the two projects. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_confdir b/software/cinit/browse_source/cinit-0.3pre18/conf/c_confdir new file mode 100644 index 00000000..091e6192 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_confdir @@ -0,0 +1,3 @@ +conf + +The directory below cinit_dir for cinit configuration. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_delay b/software/cinit/browse_source/cinit-0.3pre18/conf/c_delay new file mode 100644 index 00000000..dc30f147 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_delay @@ -0,0 +1,4 @@ +delay + +Name of the file which contains the delay between sending SIGKILL after +SIGTERM for respawning processes. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_desaster b/software/cinit/browse_source/cinit-0.3pre18/conf/c_desaster new file mode 100644 index 00000000..153a63cb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_desaster @@ -0,0 +1,5 @@ +/bin/sh + +The path to a program, that we execute if nothing +else helps. We'll execute it, if the standard panic +action fails (as specified in cinit_dir/c_confdir/panic). diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_env b/software/cinit/browse_source/cinit-0.3pre18/conf/c_env new file mode 100644 index 00000000..ec4d643b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_env @@ -0,0 +1,9 @@ +.env + +The extension to c_on and c_off, which will contain the environment \n seperated. + +For instance: + +CLIENT_IP=192.168.23.42 +ACCEPT_CONN=32 + diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_init b/software/cinit/browse_source/cinit-0.3pre18/conf/c_init new file mode 100644 index 00000000..22a77d8e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_init @@ -0,0 +1,3 @@ +init + +The name of the init service. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_last b/software/cinit/browse_source/cinit-0.3pre18/conf/c_last new file mode 100644 index 00000000..8debf155 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_last @@ -0,0 +1,7 @@ +last + +Name of the file below cinit_dir/c_confdir/ to execute right before +reboot/halt/poweroff. + +This maybe a shellscript with the OS-specific umount procedure (like umount -a), +see doc/user/configuring.cinit for more details. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_needs b/software/cinit/browse_source/cinit-0.3pre18/conf/c_needs new file mode 100644 index 00000000..eb715d7d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_needs @@ -0,0 +1,3 @@ +needs + +Name of the service sub-directory containing the needed services. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_off b/software/cinit/browse_source/cinit-0.3pre18/conf/c_off new file mode 100644 index 00000000..57e63cea --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_off @@ -0,0 +1,3 @@ +off + +Name of the file we start, when stopping the service. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_on b/software/cinit/browse_source/cinit-0.3pre18/conf/c_on new file mode 100644 index 00000000..8eadc0a5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_on @@ -0,0 +1,3 @@ +on + +Name of the file we start, when starting the service. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_panic b/software/cinit/browse_source/cinit-0.3pre18/conf/c_panic new file mode 100644 index 00000000..7fdb77b3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_panic @@ -0,0 +1,5 @@ +panic + +Name of the file below cinit_dir/c_confdir/ to execute on panic. +This name .params (normally panic.params) will be passed as parameters/ +argumunts to panic. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_params b/software/cinit/browse_source/cinit-0.3pre18/conf/c_params new file mode 100644 index 00000000..d86d37cb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_params @@ -0,0 +1,3 @@ +.params + +The extension to c_on and c_off, which will contain the parameters \n seperated. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_respawn b/software/cinit/browse_source/cinit-0.3pre18/conf/c_respawn new file mode 100644 index 00000000..cc85fbea --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_respawn @@ -0,0 +1,3 @@ +respawn + +If this file exists in a service directory, cinit will respawn the service. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_sock b/software/cinit/browse_source/cinit-0.3pre18/conf/c_sock new file mode 100644 index 00000000..46a50941 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_sock @@ -0,0 +1,4 @@ +coala + +The name of the socket cinit will use (currently: below tmpdir, +see doc/ipc.thoughts). diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_tmp b/software/cinit/browse_source/cinit-0.3pre18/conf/c_tmp new file mode 100644 index 00000000..48e98e42 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_tmp @@ -0,0 +1,3 @@ +tmp + +The name of the temporary directory, where we'll mount tmpfs to create the socket diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_tmpfs b/software/cinit/browse_source/cinit-0.3pre18/conf/c_tmpfs new file mode 100644 index 00000000..ba29caef --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_tmpfs @@ -0,0 +1,4 @@ +tmpfs + +The name of the filesystem to use to mount a memory filesystem. +On Linux this is "tmpfs". diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_tmpmount b/software/cinit/browse_source/cinit-0.3pre18/conf/c_tmpmount new file mode 100644 index 00000000..3469fe57 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_tmpmount @@ -0,0 +1,4 @@ +tmpfs + +The name of the mount target, we'll mount with c_tmpfs on the c_tmp directory. +On Linux this can be anything, but we will use the default "tmpfs". diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/c_wants b/software/cinit/browse_source/cinit-0.3pre18/conf/c_wants new file mode 100644 index 00000000..20fe3184 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/c_wants @@ -0,0 +1,3 @@ +wants + +Name of the service sub-directory containing the wanted services. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/cc b/software/cinit/browse_source/cinit-0.3pre18/conf/cc new file mode 100644 index 00000000..b168ae6c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/cc @@ -0,0 +1,3 @@ +gcc + +The c-compiler to use. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/cflags b/software/cinit/browse_source/cinit-0.3pre18/conf/cflags new file mode 100644 index 00000000..f205afb8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/cflags @@ -0,0 +1,6 @@ +-pipe -W -Wall -Werror -Iinclude -g -D_XOPEN_SOURCE=600 -D_USE_POSIX + +Standard flags to pass to (g)cc. + +-D_XOPEN_SOURCE=600 must be used on glibc to select the right standard. +-D_USE_POSIX is needed for sigemptyset on glibc diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/cinit_dir b/software/cinit/browse_source/cinit-0.3pre18/conf/cinit_dir new file mode 100644 index 00000000..06e7d1ff --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/cinit_dir @@ -0,0 +1,3 @@ +/etc/cinit + +This is where all configuration for cinit will be stored. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/cinitconfdir b/software/cinit/browse_source/cinit-0.3pre18/conf/cinitconfdir new file mode 100644 index 00000000..9dc3b52b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/cinitconfdir @@ -0,0 +1,3 @@ +conf + +General cinit-configuration (below cinitdir) diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/destdir b/software/cinit/browse_source/cinit-0.3pre18/conf/destdir new file mode 100644 index 00000000..3326ace6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/destdir @@ -0,0 +1,6 @@ + + +The destination to install to. This is not used when running cinit, +but only for installing it. Normally the first line is blank. + +cinit-conf uses this file for installing the configuration. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/gettydir b/software/cinit/browse_source/cinit-0.3pre18/conf/gettydir new file mode 100644 index 00000000..2cb4da05 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/gettydir @@ -0,0 +1,4 @@ +getty + +This is the subdirectry in which the scripts will create the gettys, +if you are using 'install-conf'. It's not used be cinit internally. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/install_directory b/software/cinit/browse_source/cinit-0.3pre18/conf/install_directory new file mode 100644 index 00000000..80cab694 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/install_directory @@ -0,0 +1,3 @@ +-d + +Parameter to pass to install_prog to create directories. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/install_prog b/software/cinit/browse_source/cinit-0.3pre18/conf/install_prog new file mode 100644 index 00000000..2f21943a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/install_prog @@ -0,0 +1,4 @@ +/usr/bin/install + +Program we use to install. install_directory contains parameter +to create directory. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/ipc_method b/software/cinit/browse_source/cinit-0.3pre18/conf/ipc_method new file mode 100644 index 00000000..fc75e273 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/ipc_method @@ -0,0 +1,5 @@ +msgq + +The type of IPC (inter process communication) to use. +Valid values can be optained by issuing `ls src/ipc/`. + diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/ld b/software/cinit/browse_source/cinit-0.3pre18/conf/ld new file mode 100644 index 00000000..b60e4836 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/ld @@ -0,0 +1,3 @@ +gcc + +Comment missing. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/ldflags b/software/cinit/browse_source/cinit-0.3pre18/conf/ldflags new file mode 100644 index 00000000..fc214daf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/ldflags @@ -0,0 +1,3 @@ + + +No flags specified normally. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/max_delay b/software/cinit/browse_source/cinit-0.3pre18/conf/max_delay new file mode 100644 index 00000000..30725bf8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/max_delay @@ -0,0 +1,4 @@ +30 + +Maximum number of seconds to sleep between retrying to start it +(respawn only). diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/max_deps b/software/cinit/browse_source/cinit-0.3pre18/conf/max_deps new file mode 100644 index 00000000..13db68e9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/max_deps @@ -0,0 +1,4 @@ +32 + +Maximum number of direct dependencies (in each wants and needs, +that way doubling this number) a service may have. The default is 32. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/msgq_pathname b/software/cinit/browse_source/cinit-0.3pre18/conf/msgq_pathname new file mode 100644 index 00000000..1bef0b6b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/msgq_pathname @@ -0,0 +1,4 @@ +/bin/sh + +Used to generate an unique identifier for the message queue. +See ftok(3). diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/msgq_to_clients b/software/cinit/browse_source/cinit-0.3pre18/conf/msgq_to_clients new file mode 100644 index 00000000..dd15808a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/msgq_to_clients @@ -0,0 +1,4 @@ +o + +This is use in ftok to generate a key_t for the message queue use to write +to the clients. See ftok(3). diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/msgq_to_server b/software/cinit/browse_source/cinit-0.3pre18/conf/msgq_to_server new file mode 100644 index 00000000..f87ae3f4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/msgq_to_server @@ -0,0 +1,4 @@ +i + +This is use in ftok to generate a key_t for the message queue use to write +to the server. See ftok(3). diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/os b/software/cinit/browse_source/cinit-0.3pre18/conf/os new file mode 100644 index 00000000..ddbf8f9c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/os @@ -0,0 +1,14 @@ +linux + +Select the operating system compiling for. + +Current possibilities: + + - linux + + +Currently Planned possibilities: + + - freebsd + - openbsd + - netbsd diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/p_asciidoc b/software/cinit/browse_source/cinit-0.3pre18/conf/p_asciidoc new file mode 100644 index 00000000..52485c86 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/p_asciidoc @@ -0,0 +1,6 @@ +asciidoc + +The binary on your system (with or without path) which does what I expect +asciidoc todo. + +Default: asciidoc diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/p_docbooktoman b/software/cinit/browse_source/cinit-0.3pre18/conf/p_docbooktoman new file mode 100644 index 00000000..d62c9015 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/p_docbooktoman @@ -0,0 +1,6 @@ +docbook2x-man + +The binary on your system (with or without path) which converts +docbook to manpages. + +Default: docbook2x-man diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/p_docbooktotexi b/software/cinit/browse_source/cinit-0.3pre18/conf/p_docbooktotexi new file mode 100644 index 00000000..278f6805 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/p_docbooktotexi @@ -0,0 +1,6 @@ +docbook2x-texi + +The binary on your system (with or without path) which converts +docbook to texinfo. + +Default: docbook2x-texi diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/prefix b/software/cinit/browse_source/cinit-0.3pre18/conf/prefix new file mode 100644 index 00000000..6b90469f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/prefix @@ -0,0 +1,5 @@ + + +Where to install cinit. Normally this will be /, but you can put it anywhere. +The subdirectory 'sbin' under this prefix must be readable by the kernel. +This is normally either empty or "/". diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/profile b/software/cinit/browse_source/cinit-0.3pre18/conf/profile new file mode 100644 index 00000000..b9104bf6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/profile @@ -0,0 +1,9 @@ +cprofile: + +The argument should be passed to cinit to recognize that +a profile will follow. "cprofile:" is the standard, as +the Linux kernel eats everything in the form 'var=parm'. +The old (pre cinit-0.1) option "cprofile=" should therefore +NOT be used. + +Under Linux you tell it the bootloader like grub or LILO. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/service_categories b/software/cinit/browse_source/cinit-0.3pre18/conf/service_categories new file mode 100644 index 00000000..92a5a683 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/service_categories @@ -0,0 +1,3 @@ +local-tuning local-services mount network remote-services + +List of directories normally created below /etc/cinit/svc/ as 'pseudo-services'. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_before_kill b/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_before_kill new file mode 100644 index 00000000..2671f22d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_before_kill @@ -0,0 +1,7 @@ +sleep_before_kill + +The file that specifies how long to sleep after sending SIGTERM, before sending +SIGKILL to every process. If this file is non-existing the builtin value from +'sleep_kill'. + +The file should be located below conf/ diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_kill b/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_kill new file mode 100644 index 00000000..b419241a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_kill @@ -0,0 +1,8 @@ +2 + +Seconds to sleep after sending SIGTERM, before sending SIGKILL to every +process. 5 is a good working value, but makes me tired. Testing with +2 currently. + +Note: This does NOT affect terminating services, they are shutdown by +their own 'off' functions. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_kill_svc b/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_kill_svc new file mode 100644 index 00000000..e399ac10 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_kill_svc @@ -0,0 +1,5 @@ +1 + +Seconds to sleep after sending SIGTERM, before sending SIGKILL to +the service we are shutting down. This is only used for +bringing down respawning processes. Default: 1. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_rerun b/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_rerun new file mode 100644 index 00000000..703339f9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_rerun @@ -0,0 +1,4 @@ +1 + +How many seconds to sleep before rechecking if the service was executed. +Used by run_svc(). diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_svc b/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_svc new file mode 100644 index 00000000..e20aed6a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/sleep_svc @@ -0,0 +1,3 @@ +5 + +How many seconds to sleep before respawning a failed process. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/sock_queue b/software/cinit/browse_source/cinit-0.3pre18/conf/sock_queue new file mode 100644 index 00000000..4917a1f8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/sock_queue @@ -0,0 +1,4 @@ +32 + +Maximum process waiting in the socket queue. The default is much +more than enough. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/strip b/software/cinit/browse_source/cinit-0.3pre18/conf/strip new file mode 100644 index 00000000..08736418 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/strip @@ -0,0 +1,3 @@ +strip -R .comment -R .note + +Strip out unecessary parts of the binaries. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/sulogin b/software/cinit/browse_source/cinit-0.3pre18/conf/sulogin new file mode 100644 index 00000000..24859afc --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/sulogin @@ -0,0 +1,6 @@ +/sbin/sulogin + +The path to sulogin. We'll execute it, if the standard panic +action fails (as specified in cinit_dir/c_confdir/panic). + +If you need arguments, you tave to hack serv/panic.c diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/svcdir b/software/cinit/browse_source/cinit-0.3pre18/conf/svcdir new file mode 100644 index 00000000..087a3848 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/svcdir @@ -0,0 +1,3 @@ +svc + +Directory below /etc/cinit that contains the services. diff --git a/software/cinit/browse_source/cinit-0.3pre18/conf/version b/software/cinit/browse_source/cinit-0.3pre18/conf/version new file mode 100644 index 00000000..35c08b90 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/conf/version @@ -0,0 +1,3 @@ +"0.3pre18" + +The version of cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/Makefile b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/Makefile new file mode 100644 index 00000000..23cc41f0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/Makefile @@ -0,0 +1,70 @@ +# +# (c) 2005 Peter Portmann (pp at bluewin.ch) +# cinit/contrib+tools +# +# This script is written for the clinux-System and published +# under the terms of GPL 2.0 +# +# Version: 0.2 +# clean with a single command instead of two commands. +# +# ChangeLog: +# 0.1 initial version +# +# Todo: +# +# Features: + +# +# compile/link options +# +# do not use DEBUG and OPTIMIZE at the same time! +#DEBUG=-DDEBUG +#OPTIMIZE=-Werror +DEBUG=-g -DDEBUG +#OPTIMIZE=-pipe -Os -Werror + +# init should be static per default! +LDFLAGS= + +# programs +CC=gcc $(DEBUG) $(OPTIMIZE) $(TIMEME) +CFLAGS=-Wall -I. -I../ +LD=gcc +STRIP=strip -R .comment -R .note + +INSTALL = install + +prefix = /usr +bindir = $(prefix)/bin + +# objects + +CLIENT=cinit.graph.text.o + +COMMUNICATION=error.o usage.o mini_printf.o + +OBJ=$(CLIENT) $(COMMUNICATION) + +# +PROGRAMS=cinit.graph.text +SCRIPTS=cconfig.graph.xml.rb \ + make.cconfig.from.xml.rb \ + cinit-vis.pl + +# targets +all: $(PROGRAMS) + +cinit.graph.text: $(OBJ) + $(LD) $(LDFLAGS) $(OBJ) -o $@ + $(STRIP) $@ + +clean: + rm -f *.o $(PROGRAMS) + +install: all + @echo '*** Installing contrib+tools ***' + $(INSTALL) -d -m755 $(DESTDIR)$(bindir) + for bin in $(SCRIPTS) $(PROGRAMS); do \ + $(INSTALL) $$bin $(DESTDIR)/$(bindir); \ + done diff --git a/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/README b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/README new file mode 100644 index 00000000..85fa2f5c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/README @@ -0,0 +1,11 @@ +contrib+tools/ + programs written by others and external tools not necessary + needed but (very) nice to have + + + cinit-vis.pl - draw an ascii graph of cinit configuration [perl] + cinit.graph.text - draw an ascii graph of cinit configuration [c] + + cconfig.graph.xml.rb - creates a xml file from a cconfig [ruby] + make.cconfig.from.xml.rb - creates a cconfig from a xml file [ruby] + diff --git a/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/README.ruby b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/README.ruby new file mode 100644 index 00000000..ed210cee --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/README.ruby @@ -0,0 +1,7 @@ +The ruby tools for general cconfig [0] are written by René Nussbaumer [1]. +You can find the documentation for them at [2]. + + +[0]: http://nico.schotteli.us/papers/linux/cconfig/ +[1]: http://killerfox.forkbomb.ch/ +[2]: http://killerfox.forkbomb.ch/articles/cconfig/tools diff --git a/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cconfig.graph.xml.rb b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cconfig.graph.xml.rb new file mode 100755 index 00000000..d18ba422 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cconfig.graph.xml.rb @@ -0,0 +1,117 @@ +#!/usr/bin/env ruby + +=begin + + Writes an XML-Tree for a cconfig directory + Idea by Nico Schottelius aka telmich + Implemented and (C) by René Nussbaumer aka KillerFox + + This script is written for the clinux-System and published + under the terms of GPL 2.0 + + Version: 0.3 + + ChangeLog: + Version 0.3 (René Nussbaumer): + * Added support for binary files + * Added sha1 checksum for binary files + + Version 0.2 (René Nussbaumer): + * Changed checking order: symlink, directory, file. Because of + a logical bug -> directory follows symlink so, when a symlink + points to a directory no «link» element is created. + + Version 0.1 (René Nussbaumer): + * Holy hack for directory scanning (needs to be optimized) + * Hack for rexml to print out «lost» tags. This rexml sux. + + Todo: + * Optimize scanning. + * Use another xml library instead of rexml crap. + Problem: Produce dependencies -> no std-lib + + Features: + * Create a flat (no deepnes without directory) and 1:1 image + of an cconfig directory + +=end + +require 'rexml/document' +require 'base64' +require 'digest/sha1' + +require 'filemagic' + +@version = '0.3' + +def determineTarget(entry) + return 'external' if(!File.expand_path(entry).index(@initpath)) + return 'link' if(FileTest.symlink?(entry)) + return 'object' if(FileTest.directory?(entry)) + return 'attribute' if(FileTest.file?(entry)) + return 'unknown' # Should never be reached +end + +def createTree(dir, parent) + dir.each { |entry| + next if(entry =~ /^(\.|\.\.)$/) + + if(FileTest.symlink?(entry)) + e = parent.add_element('link') + + # Much fun with links + e.add_attributes( { 'name' => entry, 'target' => determineTarget(File.readlink(entry)) } ) + e.add_text(File.readlink(entry)) + elsif(FileTest.directory?(entry)) + e = parent.add_element('object') + e.add_attribute('name', entry) + + # Bad, that we need to change the directory every time. + oldPwd = Dir.pwd + Dir.chdir(entry) + createTree(Dir.new('.'), e) + Dir.chdir(oldPwd) + elsif(FileTest.file?(entry)) + e = parent.add_element('attribute') + e.add_attribute('name', entry) + if(File.stat(entry).size?) + # Yeah, we got one WITH content! W00h00, let's party. + + fm = FileMagic.new(FileMagic::MAGIC_MIME) + if(fm.file(entry) =~ /executable/) + e.add_attribute('type', 'binary') + text = File.new(entry).read + e.add_attribute('sha1', Digest::SHA1.hexdigest(text)) + e.add_text(Base64.encode64(text)) + else + e.add_text(File.new(entry).read) + end + fm.close() + end + end + } +end + + +if(!ARGV[0] || !FileTest.directory?(ARGV[0])) + puts 'You need to specify a directory' + Kernel.exit(-1) +end + +doc = REXML::Document.new + +e = doc.add_element('cconfig') +e.add_attribute('name', File.basename(ARGV[0])) +e.add_attribute('version', @version) + +@initpath = File.expand_path(ARGV[0]) +Dir.chdir(ARGV[0]) +createTree(Dir.new('.'), doc.root) + +out = '' +doc.write(out, 0, false, true) + +REXML::XMLDecl.new('1.0', 'utf-8').write($stdout) # This should automatically printed by rexml. Damn bugs. +puts '' +puts out # Workaround for a buggy rexml + diff --git a/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cinit-vis.pl b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cinit-vis.pl new file mode 100755 index 00000000..4a439fc6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cinit-vis.pl @@ -0,0 +1,72 @@ +#!/usr/bin/perl -w +# (c) by Marcus Przyklink (downhill-clinux@burningchaos.org) +# written for cinit and published under GPL +# beautified a bit by Nico Schottelius +# optimized by René Nussbaumer +# Version: 0.1 + +use strict; +use warnings; + +# +# Variables for location and output +# +# cinit-directory +my $path = "/etc/cinit/svc/"; +# started profile +my $starting_point = "init"; +# the spaces for each level (integer: amount of spaces) +my $space = 3; +# marker for need +my $need = "-->"; +# marker for want +my $want = "==>"; + +# +# main function, recursively list the components of the cinit system +# +if (@ARGV) { + if( $ARGV[0] =~ /-(h|-help)/ ) { + print "Usage: " . __FILE__ . " without parameters for standard-use (check variables in file)\n"; + print " Parameters:\n"; + print " -h for this help\n"; + print " profile-name for a profile\n"; + exit(0); + } + else { + $starting_point = $ARGV[0]; + } +} + +# +# start first instance +# +sub get_deeper { + my ($point, $tmp_counter, $need_want) = splice @_; + + print " " x ($space * $tmp_counter) . ($need_want ? $need : $want) . " " . $point . "\n"; + + opendir(DIR, "${path}${point}/needs") and + my @next_need = sort grep(!/^\./, readdir(DIR)) and + closedir(DIR); + opendir(DIR, "${path}${point}/wants") and + my @next_want = sort grep(!/^\./, readdir(DIR)) and + closedir(DIR); + + for(@next_need) { + get_deeper($_, $tmp_counter + 1, 1); + } + for(@next_want) { + get_deeper($_, $tmp_counter + 1, 0); + } +} + +# +# start first instance +# +get_deeper($starting_point, 0, 0); + +# +# work done, go home +# +exit(0); diff --git a/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cinit.graph.text.c b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cinit.graph.text.c new file mode 100644 index 00000000..5e5316ae --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cinit.graph.text.c @@ -0,0 +1,200 @@ +/** + (c) 2005 Peter Portmann (pp at bluewin.ch) + cinit.graph.text.c + + This script is written for the clinux-System and published + under the terms of GPL 2.0 + + Version: 0.2 + + ChangeLog: + Version 0.2 (Peter Portmann): + * Not assigned link destinies are marked by (!). + * Not readable directories are marked by "directory not readable". + + Version 0.1 (Peter Portmann): + * Print of the directory structure of the contained files and links + without following the links. + + Todo: + + Features: +*/ + +//#include +#include +#include +#include +#include +#include +#include +#include +//#include "cinit.h" +#include "error.h" + +#define FTW_F 1 /* file isn't a directory */ +#define FTW_D 2 /* file is a directory */ +#define FTW_DNR 3 /* not readable directory */ +#define FTW_NS 4 /* unsuccesfully stat on this file */ +#define MAX_CHAR 4096 + +/*********************************************************************** + * cinit.graph.text - textual representation of the cinit directory + */ + +#define CSERVICE_BANNER "cinit.graph.text - textual representatio of the cinit directory\n\n" +#define USAGE_TEXT "\n\nUsage:\n\ncinit.graph.text \n" \ + "\tpath\t- cinit installationpath\n" + +typedef int EACH_ENTRY(const char *, const struct stat *, int); +typedef enum { FALSE=0, TRUE=1 } bool; + +static char dirpath[PATH_MAX]; +static int depth = 0; +static long int filecount = 0; + +static EACH_ENTRY each_entry; +static int pp_ftw(char *, EACH_ENTRY *); +static int each_getinfo(EACH_ENTRY *); + +/*********************************************************************** + * pp_ftw: file tree walk + */ +static int pp_ftw(char *filepath, EACH_ENTRY *function) +{ + int n; + + if(chdir(filepath) < 0) /* In angegebenen Pfad wechseln */ + err_msg(FATAL_SYS, "can't change to %s", filepath); + + if(getcwd(dirpath, PATH_MAX) == 0) /* Absoluten Pfadnamen ermitteln */ + err_msg(FATAL_SYS, "error using getcwd for %s", filepath); + + n = each_getinfo(function); + + return(n); +} + +/*********************************************************************** + * each_getinfo: get more info for each file. + */ +static int each_getinfo(EACH_ENTRY *function) +{ + struct stat statpuff; + struct dirent *direntz; + DIR *dirz; + int n; + char *zgr; + + if(lstat(dirpath, &statpuff) < 0) + return(function(dirpath, &statpuff, FTW_NS)); /* Error on stat */ + + if(S_ISDIR(statpuff.st_mode) == 0) + return(function(dirpath, &statpuff, FTW_F)); /* no directory */ + + /* It's a directory. + * Call function() for it. After that handel each file in the directory. */ + + if((dirz = opendir(dirpath)) == NULL) { /* Directory not readable */ + closedir(dirz); + return(function(dirpath, &statpuff, FTW_DNR)); + } + + if((n = function(dirpath, &statpuff, FTW_D)) != 0) /* return the directorydirpath */ + return(n); + + zgr = dirpath + strlen(dirpath); /* append slash to the dirpathname */ + *zgr++ = '/'; + *zgr = '\0'; + + while((direntz = readdir(dirz)) != NULL) { + /* ignor . and .. */ + if(strcmp(direntz->d_name, ".") && strcmp(direntz->d_name, "..")) { + strcpy(zgr, direntz->d_name); /* append filename after slash */ + depth++; + if(each_getinfo(function) != 0) { /* Recursion */ + depth--; + break; + } + depth--; + } + } + *(zgr-1) = '\0'; /* deleting evrything after the slash */ + + if(closedir(dirz) < 0) + err_msg(WARNING, "closedir for %s failed", dirpath); + + return(n); +} + +/*********************************************************************** + * each_entry: handling each file and build the graph step by step. + */ +static int each_entry(const char *filepath, const struct stat *statzgr, int filetype) +{ + struct stat statpuff; + static bool erstemal=TRUE; + int i; + + char link[MAX_CHAR]; + + filecount++; + if(!erstemal) { + for(i=1 ; i<=depth ; i++) + printf("%4c|", ' '); + printf("----%s", strrchr(filepath, '/')+1); + } else { + printf("%s", filepath); + erstemal = FALSE; + } + + switch(filetype) { + case FTW_F: + switch(statzgr->st_mode & S_IFMT) { + case S_IFREG: break; + case S_IFCHR: printf(" c"); break; + case S_IFBLK: printf(" b"); break; + case S_IFIFO: printf(" f"); break; + case S_IFLNK: + printf(" -> "); + if(( i=readlink(filepath, link, MAX_CHAR)) != -1) + printf("%.*s", i, link); + if(stat(filepath, &statpuff) < 0) + printf(" (!)"); + break; + case S_IFSOCK: printf(" s"); break; + default: printf(" ?"); break; + } + printf("\n"); + break; + + case FTW_D: + printf("/\n"); + break; + + case FTW_DNR: + printf("/ directory not readable\n"); + break; + + case FTW_NS: + err_msg(WARNING_SYS, "Error using 'stat' on file %s", filepath); + break; + + default: + err_msg(FATAL_SYS, "Unknown Filetype (%d) by file %s", filetype, filepath); + break; + } + + return(0); +} + +/*********************************************************************** + * main: + */ +int main(int argc, char *argv[]) +{ + if(argc != 2) + usage(CSERVICE_BANNER, USAGE_TEXT); + + exit(pp_ftw(argv[1], each_entry)); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cinit.h b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cinit.h new file mode 100644 index 00000000..cbde3195 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/cinit.h @@ -0,0 +1,17 @@ +/*********************************************************************** + * + * 2007 Nico Schottelius (nico-cinit //@\\ schottelius.org) + * + * part of cLinux/cinit + * + * Dummy header file to intgrate mini_printf and usage + */ + +#ifndef CINIT_DUMMY_HEADER +#define CINIT_DUMMY_HEADER + +void usage(char *banner, char *text); +void mini_printf(char *str,int fd); + + +#endif diff --git a/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/error.c b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/error.c new file mode 100644 index 00000000..8174c702 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/error.c @@ -0,0 +1,124 @@ +/** + (c) 2005 Peter Portmann (pp at bluewin.ch) + error.c + + This script is written for the clinux-System and published + under the terms of GPL 2.0 + + Version: 0.1 + + ChangeLog: + + Todo: + + Features: +*/ + +#include "error.h" +#include +#include +#include +#include +#include +#include + +#define MAX_CHAR 4096 + +int debug; /* Aufrufer von log_msg oder log_open muss debug setzen: + 0, wenn interaktiv; 1, wenn Daemon-Prozess */ + +/*---- Lokale Routinen zur Abarbeitung der Argumentliste --------------------*/ +static void msg_err(int sys_msg, const char *fmt, va_list az) +{ + int fehler_nr = errno; + char puffer[MAX_CHAR]; + + vsprintf(puffer, fmt, az); + if (sys_msg) + sprintf(puffer+strlen(puffer), ": %s ", strerror(fehler_nr)); + fflush(stdout); /* fuer Fall, dass stdout und stderr gleich sind */ + fprintf(stderr, "%s\n", puffer); + fflush(NULL); /* alle Ausgabepuffer flushen */ + return; +} + +static void msg_log(int sys_msg, int prio, const char *fmt, va_list az) +{ + int fehler_nr = errno; + char puffer[MAX_CHAR]; + + vsprintf(puffer, fmt, az); + if (sys_msg) + sprintf(puffer+strlen(puffer), ": %s ", strerror(fehler_nr)); + if (debug) { + fflush(stdout); /* fuer Fall, dass stdout und stderr gleich sind */ + fprintf(stderr, "%s\n", puffer); + fflush(NULL); /* alle Ausgabepuffer flushen */ + } else { + strcat(puffer, "\n"); + syslog(prio, puffer); + } + return; +} + +/*---- Global aufrufbare Fehlerroutinen -------------------------------------*/ +void err_msg(int kennung, const char *fmt, ...) +{ + va_list az; + + va_start(az, fmt); + switch (kennung) { + case WARNING: + case FATAL: + msg_err(0, fmt, az); + break; + case WARNING_SYS: + case FATAL_SYS: + case DUMP: + msg_err(1, fmt, az); + break; + default: + msg_err(1, "Falscher Aufruf von err_msg...", az); + exit(3); + } + va_end(az); + + if (kennung==WARNING || kennung==WARNING_SYS) + return; + else if (kennung==DUMP) + abort(); /* core dump */ + exit(1); +} + +void log_msg(int kennung, const char *fmt, ...) +{ + va_list az; + + va_start(az, fmt); + switch (kennung) { + case WARNING: + case FATAL: + msg_log(0, LOG_ERR, fmt, az); + break; + case WARNING_SYS: + case FATAL_SYS: + msg_log(1, LOG_ERR, fmt, az); + break; + default: + msg_log(1, LOG_ERR, "Falscher Aufruf von log_msg...", az); + exit(3); + } + va_end(az); + + if (kennung==WARNING || kennung==WARNING_SYS) + return; + exit(2); +} + +/*---- log_open --------------------------------------------------------------- + initialisiert syslog() bei einem Daemon-Prozess */ +void log_open(const char *kennung, int option, int facility) +{ + if (debug==0) + openlog(kennung, option, facility); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/error.h b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/error.h new file mode 100644 index 00000000..a55690fb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/error.h @@ -0,0 +1,29 @@ +#ifndef ERROR_H +#define ERROR_H +/** + (c) 2005 Peter Portmann (pp at bluewin.ch) + error.h + + This script is written for the clinux-System and published + under the terms of GPL 2.0 + + Version: 0.1 + + ChangeLog: + + Todo: + + Features: +*/ + +#define WARNING 0 +#define WARNING_SYS 1 +#define FATAL 2 +#define FATAL_SYS 3 +#define DUMP 4 + +void log_msg(int kennung, const char *fmt, ...); +void err_msg(int kennung, const char *fmt, ...); + + +#endif diff --git a/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/make.cconfig.from.xml.rb b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/make.cconfig.from.xml.rb new file mode 100755 index 00000000..05f35cc6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/make.cconfig.from.xml.rb @@ -0,0 +1,227 @@ +#!/usr/bin/env ruby + +=begin + + Create a cconfig directory based on a xml input. + (C) 2005 by René Nussbaumer aka KillerFox + + This script is written for the clinux-System and published + under the terms of GPL 2.0 + + Version: 0.3 + + ChangeLog: + Version 0.3 (René Nussbaumer): + * Added binary file support + * Added sha1 checksum for binary files + + Version 0.2 (René Nussbaumer): + * Added some commandline options + * Added «level» so control the restrictivity of the program + * Added more «intelligence» to the program, to detect internal broken dependcies. + * Support «debug»-Levels. + * Print statistic at the end of the programs about warnings and errors. + + Version 0.1 (René Nussbaumer): + * Initial + + Todo: + * Use an rexml alternative + * Some cleanup + * Optimize + * Testing? + + Features: + * Create a cconfig directory based on a xml + +=end + +require 'rexml/document' +require 'getoptlong' +require 'base64' +require 'digest/sha1' + +@verbose = 0 +@level = 1 +@version = '0.3' + +@warnings = 0 +@errors = 0 +@checklist = Array.new + +def printMsg(prefix, msg) + puts '%-12s %s' % [prefix + ':', msg] +end + +def error(msg, fatal = 0) + @errors += 1 + fatal = 0 if(@level < 1) + fatal = 255 if(@level > 1 && !fatal) + printMsg(fatal != 0 ? 'PANIC' : 'ERROR', msg) + Kernel.exit(-fatal) if(fatal != 0) +end + +def warn(msg) + error(msg, 1) if(@level > 1) + @warnings += 1 + printMsg('WARNING', msg) +end + +def info(msg) + printMsg('INFO', msg) +end + +def debug(msg, verbosity = 1) + if(@verbose >= verbosity) + printMsg("DEBUG(#{verbosity})", msg) + end +end + +def createObject(name) + error("#{name} already exists.", 1) if(FileTest.exists?(name)) + begin + Dir.mkdir(name) + rescue + error("Could not create directory #{name}: #{$!}. Abort.", 7) + end + debug("Object #{File.expand_path(name)} has been created.", 4) +end + +def createAttribute(name, content = nil) + warn("#{name} already exists. Overwrite.") if(FileTest.exists?(name)) + begin + file = File.new(name, 'w') + file.print content if(content && !content.empty?) + file.close + debug("Attribute #{File.expand_path(name)} has been created", 4) + rescue + error("Could not create file #{name}: #{$!}. Skipped.") + end +end + +def createLink(name, target, type) + warn("#{name} already exists. Overwrite.") if(FileTest.exists?(name)) + error("Broken dependencies! Please take a look if #{target} exists on your system", 2) if(type == 'external' && !FileTest.exists?(target)) + if(!FileTest.exists?(target) && type != 'external') + #info("Possible break. But maybe the target #{target} does not yet exists. Checking later.") + exptarget = File.expand_path(target) + @checklist << exptarget + debug("Adding #{target} to the list of internal dependcies to check.", 2) + end + begin + error('You\'ve a system which does not support symbolic links. Abort.', 3) if(File.symlink(target, name) != 0) + rescue + error("Could not create symlink #{name} => #{target}: #{$!}.", 3) + end + debug("Link #{File.expand_path(name)} has been created", 4) +end + +def doWork(elm) + name = elm.name + attrname = elm.attributes['name'] + error("XML Tag with missing name attribute!", 5) if(!attrname) + if(name =~ /(object|cconfig)/) + if(name == 'cconfig') + if(elm.attributes['version']) + info("Found a version string: #{elm.attributes['version']}") + warn("This XML is maybe incompatible with this programm. I'm a version #{@version} script. The XML is generated with a version #{elm.attributes['version']} script. Please update.") if(elm.attributes['version'] > @version) + end + end + createObject(attrname) + if(elm.has_elements?) + pwd = Dir.pwd + Dir.chdir(attrname) + elm.each_element { |e| + doWork(e) + } + Dir.chdir(pwd) + end + elsif(name == 'attribute') + text = nil + e = nil + text = e.value if((e = elm.get_text)) + if(text && elm.attributes['type'] && elm.attributes['type'] == 'binary') + text = Base64.decode64(text) + if(Digest::SHA1.hexdigest(text) != elm.attributes['sha1']) + warn("SHA1 differs from file: #{Dir.pwd}#{attrname}") + end + end + createAttribute(attrname, text) + elsif(name == 'link') + error("link-Tag without content.", 6) if(!elm.has_text?) + error("link with missing target. Skipped.") if(!elm.attributes['target']) + createLink(attrname, elm.get_text.value, elm.attributes['target']) + end +end + +puts "This is #{File.basename(__FILE__)} v#{@version} by René Nussbaumer" +puts + +opts = GetoptLong.new( + ['--verbose', '-v', GetoptLong::OPTIONAL_ARGUMENT], + ['--level', '-l', GetoptLong::REQUIRED_ARGUMENT], + ['--version', '-V', GetoptLong::NO_ARGUMENT] +) + +opts.each { |arg,value| + case arg + when '--verbose' + @verbose += 1 + value.each_byte { |x| + if(x.chr == 'v') + @verbose += 1 + end + } + debug("Verbosity set to: #{@verbose}") + when '--level' + debug("Setting level to: #{value}", 3) + case value + when 'low' + @level = 0 + when 'normal' + @level = 1 + when 'paranoid' + @level = 2 + else + warn('Unknown level: ' + value) + end + when '--version' + Kernel.exit(0) + else + warn("Unknown option #{arg}#{value && !value.empty? ? ('with value ' + value) : ''}") + end +} + +if(!ARGV[0]) + puts 'Need at least one argument' + puts "Usage: #{__FILE__} " + Kernel.exit(1) +end + + +filedesc = $stdin + +if(ARGV[0] != '-') + filedesc = File.new(ARGV[0]) +end + +doc = REXML::Document.new filedesc + +doWork(doc.root) + +if(!@checklist.empty?) + info('Now checking all broken internal dependcies again') + broken = 0 + @checklist.each { |path| + debug("Checking #{path}.", 2) + if(!FileTest.exists?(path)) + broken += 1 + warn("Broken dependcies. #{path} does not exist. Please fix.") + end + } + info('Looks good.') if(broken == 0) + info('Bad, bad.') if(broken > 0) +end + +info("Successed. #{@warnings} warnings, #{@errors} errors") + diff --git a/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/mini_printf.c b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/mini_printf.c new file mode 120000 index 00000000..3e9a596c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/mini_printf.c @@ -0,0 +1 @@ +../src/generic/mini_printf.c \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/usage.c b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/usage.c new file mode 120000 index 00000000..c26691ac --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/contrib+tools/usage.c @@ -0,0 +1 @@ +../src/generic/usage.c \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/.buildwarn b/software/cinit/browse_source/cinit-0.3pre18/doc/.buildwarn new file mode 100644 index 00000000..41183a43 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/.buildwarn @@ -0,0 +1,24 @@ + +Welcome to the cinit +******************** + +Hints: +------ + - Settings can be found in conf/* (also used for compiling) + - Cinit configuration is normally found in /etc/cinit + +Documentation +------------- +The documentation can be found in doc/: + + - doc/user/ contains documentation for users + - doc/devel/ contains documentation for developers + + Please read doc/user/installing-cinit.text BEFORE installing. + +Building cinit +-------------- + + "make all" - to build cinit + "make install" - to install cinit, documentation and core tools + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/COPYING b/software/cinit/browse_source/cinit-0.3pre18/doc/COPYING new file mode 100644 index 00000000..94a9ed02 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/COPYING @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/CREDITS b/software/cinit/browse_source/cinit-0.3pre18/doc/CREDITS new file mode 100644 index 00000000..febdcf4b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/CREDITS @@ -0,0 +1,25 @@ +-------------------------------------------------------------------------------- +Credits - People contributed to cinit +Nico Schottelius, 2005-05-17 (Last Change: ls -l) +-------------------------------------------------------------------------------- + +The following list is sorted chronological, new contributors are +added at the end of the list. + + +René Nussbaumer + * helping with the general IPC idea + * testing and proof-reading code +Marcus Przyklink + * coding linear lists, making MAX_SVC obsolete + * providing cinit-vs.pl to visualize the cinit-tree +Matteo Croce + * finding good strip parameters to save about 30KiB (on glibc) +Sandro Koechli + * testing, testing and testing cinit and cinit documentation +Marcus Wagner + * building and maintaining the Debian package +Peter Portmann + * testing cinit and documentation, writing cinit.graph.text in C, other coding +Tonnerre Lombard + * NetBSD support (host + hints) diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/Makefile b/software/cinit/browse_source/cinit-0.3pre18/doc/Makefile new file mode 100644 index 00000000..0daac842 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/Makefile @@ -0,0 +1,107 @@ +# +# Makefile stolen from ccollect +# Nico Schottelius, Fri Jan 13 12:13:08 CET 2006 +# + +A2X=a2x +ASCIIDOC=asciidoc +DOCBOOKTOTEXI=docbook2x-texi +DOCBOOKTOMAN=docbook2x-man +XSLTPROC=xsltproc +XSL=/usr/share/xml/docbook/stylesheet/nwalsh/html/docbook.xsl + +# +# Asciidoc will be used to generate other formats later +# +MANDOCS = man/cinit.text man/halt.kill.text man/poweroff.kill.text \ + man/reboot.kill.text man/cmd.text +USERDOCS = user/compiles.on.text user/configuring.cinit.text \ + user/conf-system.text \ + user/cross-compiling.text user/current-init-problems.text \ + user/daemons.backgrounding.text user/dependencies.text \ + user/example-directory-structure.text \ + user/installing-cinit.text user/paths.text \ + user/profiles.text user/README.text +DEVELDOCS = devel/codingguideline.text +DOCS = $(MANDOCS) $(USERDOCS) $(DEVELDOCS) + +# +# Doku +# +HTMLDOCS = $(DOCS:.text=.html) +DBHTMLDOCS = $(DOCS:.text=.htm) + +#TEXIDOCS = $(DOCS:.text=.texi) + +MANPDOCS = $(MANDOCS:.text=.man) + +DOCBDOCS = $(DOCS:.text=.docbook) + +DOC_ALL = $(HTMLDOCS) $(DBHTMLDOCS) $(TEXIDOCS) $(MANPDOCS) + +# +# End user targets +# +help: + @echo "----------- documentation make targets --------------" + @echo "documentation: generate HTML, Texinfo and manpage" + @echo "html: only generate HTML (via asciidoc/docbook/xsltproc)" + @echo "htm: only generate HTML (via asciidoc)" + @echo "info: only generate Texinfo" + @echo "man: only generate manpages" + @echo "pdf: only generate pdfs (requires: fop)" + +install: $(DOC_ALL) + @echo "===> Copy " man/*.[0-9] "to the correct manpaths" + +# +# Internal targets +# +html: $(HTMLDOCS) +htm: $(DBHTMLDOCS) +info: $(TEXIDOCS) +man: $(MANPDOCS) +documentation: $(DOC_ALL) + + +# +# Generic targets +# + +# docbook gets .htm, asciidoc directly .html (or the other way round) +%.html: %.docbook + ${XSLTPROC} -o $@ ${XSL} $< + +%.htm: %.text + ${ASCIIDOC} -n -o $@ $< + +%.docbook: %.text + ${ASCIIDOC} -n -b docbook -o $@ $< + +%.texi: %.docbook + ${DOCBOOKTOTEXI} --to-stdout $< > $@ + +%.mandocbook: %.text + ${ASCIIDOC} -b docbook -d manpage -o $@ $< + +#%.man: %.mandocbook +# ${DOCBOOKTOMAN} --to-stdout $< > $@ + +%.man: %.text + ${A2X} -f manpage $< + +%.pdf: %.text + ${A2X} -f pdf $< + +# +# Distribution +# +clean distclean: + rm -f $(DOC_ALL) + rm -f man/*.texi man/*.xml man/*.[0-9] + +# +# Be nice with the users and generate documentation for them +# +dist: distclean documentation + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/README.text b/software/cinit/browse_source/cinit-0.3pre18/doc/README.text new file mode 100644 index 00000000..46fe59fe --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/README.text @@ -0,0 +1,57 @@ +cinit/doc +========= +Nico Schottelius +0.1, Initial Version from 2006-11-30 +:Author Initials: NS + +This directory contains the cinit documentation. + +Files and directories in this directory +---------------------------------------- + +ancient +~~~~~~~ +Old documents, only thought to irritate you. +They are not interesting for most people and may contain +obsoleted or wrong information. + + +braindumps +~~~~~~~~~~ +Files I used to make the situation clear to myself. +They are not interesting for most people and may contain +obsoleted or wrong information. + + +devel +~~~~~ +Developer related documents. Contains information for adding code, +for developing external tools to cinit or code guidelines for writing +patches to cinit. + + +logs +~~~~ +Logfiles or raw data dumps. + + +Makefile +~~~~~~~~ +The makefile used to generate the documentation. + + +man +~~~ +Manpages. + + +README.text +~~~~~~~~~~~ +This file + + +user +~~~~ +The most important part: Documentation for users (aka sysadmins, +hackers, endusers?): Explains howto install, configure, use and +debug cinit. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/Changelog b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/Changelog new file mode 100644 index 00000000..0fbf76f5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/Changelog @@ -0,0 +1,10 @@ +Mo Okt 3 00:19:40 CEST 2005 + *Changelog can now be found in git database (cg-log) +Sun May 8 12:20:35 CEST 2005 + *Changelog can now be found in monotone database (monotone log) +Sat Apr 30 15:53:53 CEST 2005 + * add socket code +Tue Apr 26 15:29:53 CEST 2005 + * removed is_cinit support, initial messaging framework +Mon Apr 18 14:07:50 CEST 2005 + * added is_cinit -> recognize if you are cinit or a fork diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/README b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/README new file mode 100644 index 00000000..45e193f3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/README @@ -0,0 +1,16 @@ +Ancient +======= +Nico Schottelius +0.1, for cinit 0.3, Initial Version from 2006-06-02 + + +These files may be incorrect, outdated, totally wrong or even trying +to take over world dominance. + + +Why are they still there? +------------------------- + +Just because to document the early days of cinit. If you are +a software archaeologist in the year 2423, you'll be happy that +I saved those files. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/TODO.lucky b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/TODO.lucky new file mode 100644 index 00000000..3ac57ee5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/TODO.lucky @@ -0,0 +1,16 @@ +18:18 hey, ich hatte gerade ein wenig lust mich mit cinit zu befassen, hier also mein + kleiner bug-report: in src/include fehlt cinit.h, (alles auf das aktuelle + tarball bezogen), ich hab's aus pre9 genommen, hatte ich noch da, da git nicht + wollte(Cannot get remote repository information.), ausserdem hast du _ statt - + in doc/man/cinit.text verwendet bei der email, das mag docbook nicht, die + beiden zeilen habe ich korrigiert, danch ging schon mal make all und auch make + ins +18:35 und warum installiert er die man pages nicht mit? +07:20 so, kleiner zwischenbericht, das argv problem bei lvm gibt es mit pre10 nicht + mehr, d.h. dass man auch kein shell-skript mehr braucht um lvm/luks-devices zu + mounten :) +07:20 soweit sieht eig. alles gut aus +07:21 wenn das so bleibt, dann werd' ich dauerhaft auf cinit umsteigen :) +07:21 und wenn sich die gelegenheit bietet, dann stell ich cinit auch mal in der + info-ag von unserer schule vor :) + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/caveats b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/caveats new file mode 100644 index 00000000..5ab123e7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/caveats @@ -0,0 +1,58 @@ +-------------------------------------------------------------------------------- +'Geheimnisse' in German, +Nico Schottelius, 2005-05-XX (Last Modified: 2005-06-11) +-------------------------------------------------------------------------------- + +- Dependencies beginning with a '.' (dot) are ignored. + So you can temporarily disable a dependency moving it to + want/.name + +- Why is the name of the socket "coala"? + Well, coala could mean 'cinit object abstract layer access', but + perhaps it's a much simpler reason. + +- cinit will start a little bit faster if you omit non needed + 'wants' and 'needs' dirs as they need to be scanned if they + do not exist + +- Currently there is no support to react on 'ctr+alt+del': + 1. It is not handled to switch on / off + (Linux: See man 2 reboot and /proc/sys/kernel/ctrl-alt-del) + 2. If the kernel handles it and sends signals to cinit + (SIGINT on Linux) they will be ignored. + There is no problem in implementing a handler for this signal, + the only reason why it is not there + (well, a template is in old/sig_special.c) is that nobody + could tell me what would be the most senseful thing to handle + ctrl-alt-del. If you can, I'll perhaps integrate it. + 3. ctrl-alt-del is currently disabled under Linux within + the service local-tuning/ctrl-alt-del + +- cinit ignores the Keyboard request + Same thing with 'ctr-alt-del': SIGWINCH is sent, but I don't + know what to do when recieving it. + +- cinit does not care about its pid + nor does cinit care if it is already running + + in serv/cinit.c is a line calling run_init_svc(). + If you call that only if getpid() == 1, cinit will behave like sysvinit + and refuse to start if pid is not 1. + + Currently cinit has no chance to control whether it's started or + not as /etc/cinit/tmp mounted again for every start. + +- cinit will sleep after respawing if ... + + a) the service did not terminate normally (!WIFEXITED(status)) + b) the service did return a non-zero exit status + +- sleeping before rechecking if a service is finished can be optimised + + Currently run_svc() checks every SLEEP_RERUN seconds (default: 1), + if the service it should start was finished by another instance + of run_svc(). As run_svc() internally uses nanosleep() for sleeping, + one could modify run_svc to use conf/sleep_rerun as a nanoseconds + value. This would add most likely much often checking, but would + result in faster results from run_svc. + What's the best value for SLEEP_RERUN is currently unknown. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/author b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/author new file mode 100644 index 00000000..aa021fa0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/author @@ -0,0 +1 @@ +Nico Schottelius diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/availability b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/availability new file mode 100644 index 00000000..cfb3f8a8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/availability @@ -0,0 +1 @@ +cinit is currently Linux-specific. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/examples b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/examples new file mode 100644 index 00000000..1a7d2dcb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/examples @@ -0,0 +1 @@ +See http://linux.schottelius.org/cinit/#config diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/files b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/files new file mode 100644 index 00000000..4d6c0921 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/files @@ -0,0 +1,5 @@ +/sbin/cinit - the init system +/sbin/cservice - control cinit +/sbin/cinit.reboot (/sbin/reboot if non-existent before) +/sbin/cinit.shutdown (/sbin/shutdown if non-existent before) +/etc/cinit - configuration directory diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/long_description b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/long_description new file mode 100644 index 00000000..18c3c082 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/long_description @@ -0,0 +1,5 @@ +cinit is a fast executing, small and simple init with support for profiles. It +minds dependencies (hard and soft, 'needs' and 'wants') and executes processes +in parallel. And it has a simple configuration, which makes many shell-scripts +unecessary (but you still could use them if you really want), which leads to +better performance and less memory using. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/date b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/date new file mode 100644 index 00000000..7dc64037 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/date @@ -0,0 +1 @@ +2005-08-21 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/man_section b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/man_section new file mode 100644 index 00000000..45a4fb75 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/man_section @@ -0,0 +1 @@ +8 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/name b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/name new file mode 100644 index 00000000..b853da25 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/name @@ -0,0 +1 @@ +cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/short_description b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/short_description new file mode 100644 index 00000000..34837bde --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/meta/short_description @@ -0,0 +1 @@ +fast executing, small and simple init with profile-support diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/parameters b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/parameters new file mode 100644 index 00000000..54df4727 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/parameters @@ -0,0 +1 @@ +cprofile: diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/path b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/path new file mode 100644 index 00000000..37edf339 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/path @@ -0,0 +1 @@ +/sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/see also b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/see also new file mode 100644 index 00000000..cb5ee6f8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/see also @@ -0,0 +1 @@ +http://linux.schottelius.org/cinit/ diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/synopsis b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/synopsis new file mode 100644 index 00000000..81c1e93c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit-doc/synopsis @@ -0,0 +1 @@ +/sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit.commands b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit.commands new file mode 100644 index 00000000..d34d13bd --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cinit.commands @@ -0,0 +1,73 @@ +-------------------------------------------------------------------------------- +cinit commands, +Nico Schottelius 2005-04-28 (Last Modified: 2005-06-11) +-------------------------------------------------------------------------------- + +cinit allows communication through a socket (see ipc.thoughs for reasons). + +Sockets allow to find out the accessing uid, gid and pid (using SO_PEERCRED as +socketoption). + +The communication-protocol is binary, the implementation can be found +in comm/* mostly (clients use begin_msg() and server sigio() additonally). + +-------------------------------------------------------------------------------- +Protocol overview +-------------------------------------------------------------------------------- + +Any communication begins with a command. A command is a one byte +unsigned char. Depending on the command, the communication has its own +semantics. + + +Commands are: (values can be found in cinit.h) + + CMD_START_SVC: I want to start a service. + CMD_CHG_STATUS: I want to change the status of a service. + CMD_STOP_SVC: Please shutdown a service. + + CMD_RESCUE: Kill everything, and spawn a sulogin shell. + CMD_UPDATE: Hot-reboot system and reload cinit. + + CMD_HALT: Halt the system + CMD_REBOOT: Reboot the system + CMD_POWEROFF: Power-off the system + +-------------------------------------------------------------------------------- +Detailled command-listing +-------------------------------------------------------------------------------- + +CMD_START_SVC + 1. int len; /* length of service name, including \0 */ + 2. char *svc; /* name of the service, absolute pathname */ + + cinit returns: + a) status of service + b) fail + +CMD_CHG_STATUS: I want to change the status of a service. + 0. int len; + 1. char *svc; + 2. char status; /* status: + once: started successfully the service once. + fail: tried to start once, but the service exit ungracefully + respawn: I am on it, as soon it exists I'll restart! */ + 2. pid_t pid /* the pid of the service, if started once + or the pid of the service watcher, if respawning */ + + cinit returns: MSG_OK|MSG_FAIL (char) + +CMD_STOP_SVC: Please shutdown a service and its dependencies. + 1. int len; /* length of service name, including \0 */ + 2. char *svc; /* name of the service, absolute pathname */ + + cinit returns: Status of service (should be ST_OFF) + + +The following commands do not return anything nor do they need any parameter: + +CMD_RESCUE: Kill everything, and spawn a sulogin shell. Irreversible. +CMD_HALT: Halt the system. +CMD_REBOOT: Reboot the system. +CMD_POWEROFF: Power-off the system. +CMD_UPDATE: Update cinit, hot-reboot the system. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/author b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/author new file mode 100644 index 00000000..aa021fa0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/author @@ -0,0 +1 @@ +Nico Schottelius diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/long_description b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/long_description new file mode 100644 index 00000000..82818a93 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/long_description @@ -0,0 +1 @@ +cservice controls cinit. Please use cservice -h for help. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/date b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/date new file mode 100644 index 00000000..7dc64037 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/date @@ -0,0 +1 @@ +2005-08-21 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/man_section b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/man_section new file mode 100644 index 00000000..45a4fb75 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/man_section @@ -0,0 +1 @@ +8 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/name b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/name new file mode 100644 index 00000000..49c847bb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/name @@ -0,0 +1 @@ +cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/short_description b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/short_description new file mode 100644 index 00000000..34837bde --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/meta/short_description @@ -0,0 +1 @@ +fast executing, small and simple init with profile-support diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/parameters b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/parameters new file mode 100644 index 00000000..605b08b4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/parameters @@ -0,0 +1 @@ +[-eaphru] [thilo] diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/path b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/path new file mode 100644 index 00000000..85b0cb56 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/path @@ -0,0 +1 @@ +/sbin/cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/see also b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/see also new file mode 100644 index 00000000..cb5ee6f8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/see also @@ -0,0 +1 @@ +http://linux.schottelius.org/cinit/ diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/synopsis b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/synopsis new file mode 100644 index 00000000..81c1e93c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/cservice-doc/synopsis @@ -0,0 +1 @@ +/sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/README b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/README new file mode 100644 index 00000000..e734d6d2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/README @@ -0,0 +1,2 @@ +doc/extern/ + Some things related to cinit from the outside world. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/ipc.thoughts b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/ipc.thoughts new file mode 100644 index 00000000..e2619d34 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/ipc.thoughts @@ -0,0 +1,83 @@ +-------------------------------------------------------------------------------- +Thoughts about different UNIX-IPC, +Nico Schottelius, 2005-04-28 (Last Modified: 2005-06-11) +-------------------------------------------------------------------------------- + +Howto cinit communicates with + a) cinit-forks + b) any other program + +a) cinit-forks + +a.1) shared memory + +Access could generally be done with shared memory. The problem with +that is, that -lrt is required, which implicits -lpthread, which +makes linking staticly problematic (at least for glibc). + +a.2) pipes + +A maximum of ~510 pipes could be used ( (1024-3)/2 ), +1024 is the maximum opened file deskriptors, +minus 3 (stdin/stdout/stderr) already opened, divided +by two, because two fds needed per client. + +Pipes cannot be used easily through forks of forks. + +a.3) fifos + +FIFOs are easy to use, but you would need to create two FIFOs +for _every_ service, as with only two FIFOs we cannot reliable +detect, _who_ is writting to us currently and who wants to read. + +The same limit as above is true for fifo, too: A maximum of ~510 +services. + +a.4) system-v-ipc + +No documentation found nor tested. + +a.5) sockets + +Are indeed a very clean way. There's only one problem: +bind() fails on read-only mounted devices: + + - The socket either does not exists and cannot be created + - or the socket exists, but bind() refuses to reuse it + (error: Address already in use) + +Imho bind() should even honour the socket-option SO_REUSEADDR, +which allows to re-use a socket, if there's no other program bound to. + +As far as I can see, SO_REUSEADDR is only honoured, if socket is of +type PF_INET (we use PF_UNIX) and POSIX does only specify how to +check for support, but not that sockets have to be able to use +SO_REUSEADDR (see posix.aardvark.bug.report). + +That way, we are forced to mount a temporarily filesystem on +/etc/cinit/tmp and create the socket below this directory. This is not +the clean and easy solution one would wish. Still, sockets +seem to be the cleanest and most reliable way to have IPC for +this situation. + +See socket(2), bind(2), listen(2), accept(2), socket(7) and unix(7) +for help. + +b) any other program + +What you can do is to tell cinit to + - reboot, + - halt, + - poweroff, + - update itself (hot-reboot) + - and to start a rescue mode (see using.rescue). + +Simple send cinit a signal, what to do: + HUP: reboot + USR1: halt + USR2: rescue + TERM: poweroff + CONT: update + +See signal(2) and signal(7) for help and serv/sig_reboot.c for implementation. +-------------------------------------------------------------------------------- diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/ipc.usenet.posting b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/ipc.usenet.posting new file mode 100644 index 00000000..28abcec3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/ipc.usenet.posting @@ -0,0 +1,48 @@ +From: Nico Schottelius +Subject: Unix IPC, socket/AF_UNIX; bind on r/o devices? +Date: 09 May 2005 09:51:27 GMT +To: comp.unix.programmer + +Hello! + +Situation: + - everything mounted readonly (as when starting the system) + - one process with n children, which may have n children (recursive) + - all the children and children of children should be able to talk to the + first parent + +Problem: + - Using bind() will fail, because + a) socket cannot created + b) the existing socket cannot be reused + +Other possibilities not working: + - shared memory is not an option, as one need + -lrt, which needs -lpthread, which is problematic to link statically + + - pipes: handling the pipes from parent to child of child of child + would be hard to program + + - socketpair: should be the same problematic as it's with pipes + + - fifos: one would have to create the fifos before and two fifos + for each child; possible, but very unelegant; and one would have + to memorize, which child is connected to which fifo; again possible, + but somehow unelegant + + - signaling: one could implement communication with some kind of + morse code with signals, but that won't be a good solution + +Questions: + - Is there any way, case b) (socket already existing) can be solved in + a way that I tell bind() to use an existing socket? + - What would be the best solution to talk bidirectional to clients + in this scenario? + +I appreciate any hint, as I really like the socket mechanism and would +like to keep it. + + +Thanks in advance, + +Nico diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/linux.kernel.eats.arguments b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/linux.kernel.eats.arguments new file mode 100644 index 00000000..dbaf57d9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/linux.kernel.eats.arguments @@ -0,0 +1,33 @@ +-------------------------------------------------------------------------------- +Linux, the kernel, eats arguments +Nico Schottelius 2005-06-17 (Last Modified: 2005-06-17) +-------------------------------------------------------------------------------- + +If you specify + + variable=value + +to the Linux kernel, the argument will NOT be passed to cinit. + +Here's the relevant code block from init/main.c of the Linux kernel: + +------------------------------------------------------------------------------- + +From init(void * unused) the function run_init_process(char *init_filename) +is called, which passes argv_init (char * argv_init[MAX_INIT_ARGS+2]) to init. + +First init_setup(char *str) resets all elements of the argv_init to NULL. + +The function unknown_bootoption(char *param, char *val) fills the +argv_init array, but only with parameters, which have no value +(val). + +The function parse_args calls unknown_bootoption with the unknown options. + +------------------------------------------------------------------------------- + +This way the profile support in all cinit versions below cinit-0.1 will +only work if you change conf/profile, because "cprofile=value" will +not be given to cinit, because it's not treated as a command line option. + +The original value "cprofile=" is replaced by "cprofile:" as of cinit-0.1. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/posix.aardvark.bug.report b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/posix.aardvark.bug.report new file mode 100644 index 00000000..0c606b41 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/extern/posix.aardvark.bug.report @@ -0,0 +1,52 @@ +To: austin-review-l__AT__opengroup.org +From: nico-posix__AT__schottelius.org +Subject: Bug in TC2-d6 bind - bind a name to a socket +Reply-To: austin-group-l__AT__opengroup.org + + Bug report from : Nico Schottelius , cLinux + +(Note that the reply-to line automatically redirects +to austin-group-l__AT__opengroup.org for further discussion on bug reports) + +@ page 1 line 0 section bind - bind a name to a socket objection {-1} + +Problem: + +bind should 'assign a name to a socket', but in particular environments it will fail, where it could succeed. + +Long Description: + +When opening a new socket, with type PF_UNIX +(sock = socket(PF_UNIX,SOCK_STREAM,0);) and one sets +the socket option SO_REUSEADDR +(setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &tmp, sizeof(tmp))), +bind does not honour this setting. + +It is reported on irc channels, that SO_REUSEADDR is only supported on +PF_INET sockets and that's what I would claim a bug. + +If a socket exists in the filesystem and no process is bound to +it, bind wail fail anyway. + +This is especially problematic, when one is in an environment, +which is pre-startup (like beeing init) and one wants to use +sockets, but everything is mounted read-only. + +So, if bind() would honour the option, it would be able +to bind() to a socket, which exists (as creating one on a +read-only filesystem is not possible). + + + +Action: + +Proposal: + +Add better specification to either socket(7) or bind(2), which +explains the behaviour of bind, when this option is set +or even better: Specify, that bind should take care of this bit, +also when using PF_UNIX. + +In general the socket(7) manpage should explain more in detail +or at least reference other documents (unix(7)?), which explain what the +option for a specific protocol does. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/fun-testing b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/fun-testing new file mode 100644 index 00000000..47e4b74d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/fun-testing @@ -0,0 +1,20 @@ +kind tot 17 ... +Read path: / +Read path: e +Read path: t +Read path: c +Read path: / +Read path: c +Read path: i +Read path: n +Read path: i +Read path: t +Read path: / +Read path: t +Read path: e +Read path: s +Read path: t +Read path: s +Read path: v +Read path: c + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/how_it_works_internally b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/how_it_works_internally new file mode 100644 index 00000000..9c836cb0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/how_it_works_internally @@ -0,0 +1,26 @@ +The following is a very simple process structure of cinit internals: + +cinit-main starts +\ + |-> execute run_init_svc() + | \ run_svc(CINIT_INIT); + | | check status <-------------------\ + | | set status = temp | + | \ check dependencies | + | | fork(run_svc()) for every WANT | + | | run_svc() for every NEED / + | / check if respawning { do .. while(repawn?) + | \ yes: (remember: run_svc _must_ return!) + | | msg_change_status(respawn) + | | add watcher_signal handler to stop! (SIGTERM) + | | fork(exec_svc) <--| + | | waitpid(fork) | while(1) { ... } + | \ sleep(WAIT_SECS) ---/ + | | no: fork(exec_svc) + | \ waitpid(fork) -> yes, wait! + | | msg_change_status + | / + | / + | -> while(1) + | - listen to signals + | - listen on socket diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/init-idea-first b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/init-idea-first new file mode 100644 index 00000000..2d677d8d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/init-idea-first @@ -0,0 +1,38 @@ +- restarting/respawning + touch respawn +- dependencies + a needs started b +- clean multiply dependencies +- start & stop dependencies + start_depends + stop_depends +- parallel executation +- start and stop commands + start -> link + start_param -> parameters, like minit + stop -> link + stop_param -> parameters, like minit + + if no stop command is available, try to kill the pid we started at stop + +/startup/ + start_depends=gettys +/shutdown/ + stop_depends=power_off + + +gettys/ + start_depends=getty/1 + start_depends=getty/2 + start_depends=getty/3 + start_depends=getty/4 ... + +getty/1/ + start=/sbin/fgetty + respawn + +power_off/ + stop_depend=umount + +umount/ + stop_depend= diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/porting.to.other.os b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/porting.to.other.os new file mode 100644 index 00000000..65fdc07b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/porting.to.other.os @@ -0,0 +1,25 @@ +-------------------------------------------------------------------------------- +Porting cinit to other operating systems, +Nico Schottelius, 2005-06-02 +-------------------------------------------------------------------------------- + +cinit is currently Linux-specific. + +It currently does not compile / work on other Unices, because +we use O_ASYNC flag of open(2) which is _not_ a standard. + +This way we can act very elegant on incoming connections by our +forks. If somebody finds a at least as elegant solution +to act on incoming data which is more portable, I would +be happy to recieve a diff -u. + +Additionally we currently do mount a temporarily filesystem +on /etc/cinit/tmp, which allows us to create a socket, where +nothing is mounted r/w yet. + +If a Unix has some kind of tmpfs, this can easily be changed +to the appropriate value in conf/*tmp*. + +The O_ASYNC thing will perhaps become a compile option to cinit +(via conf/socket_function for instance), so that using standard +mechanism will be possible. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/removing.zombies b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/removing.zombies new file mode 100644 index 00000000..9527e652 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/removing.zombies @@ -0,0 +1,48 @@ +-------------------------------------------------------------------------------- +Removing Zombies, +Nico Schottelius 2005-06-15 (Last Modified: 2005-06-15) +-------------------------------------------------------------------------------- + +First of all, the definition of a zombie: + + ''Defunct ("zombie") process, terminated but not reaped by its parent.'' + [Excerpt from ps(1)] + + ''In the case of a terminated child, performing a wait allows the system to + release the resources associated with the child; if a wait is not performed, + then terminated the child remains in a "zombie" state (see NOTES below). + + [...] + + NOTES + A child that terminates, but has not been waited for becomes a "zom- + bie". The kernel maintains a minimal set of information about the + zombie process (PID, termination status, resource usage information) + in order to allow the parent to later perform a wait to obtain + information about the child. As long as a zombie is not removed + from the system via a wait, it will consume a slot in the kernel + process table, and if this table fills, it will not be possible to + create further processes. If a parent process terminates, then its + "zombie" children (if any) are adopted by init(8), which automati- + cally performs a wait to remove the zombies.'' + [Excerpt from waitpid(2)] + + So you can see, that if some process misbehaves and forgets about + its children, we, cinit, will adopt it. In the first versions of + cinit (cinit-0.0.1 <-> cinit-0.0.7) we ignored SIGCHLD. This way + the zombies stayed in the system. Since cinit-0.0.8 we have + sig_chld(), which removes the zombies. + + So far so good. Now let's remove this feature. Yes, you heard right. + + If cinit does not catch the zombies they will stay in the system. + Yes, that's ugly. And that's how it should be. You should see, which + software is broken and should contact the authors to fix it. + + To restore the 'old' behaviour of cinit, change + generic/set_signals.c (ignore SIGCHLD) + Makefile: remove serv/sig_child.c from modules list + + cinit in general will keep the behaviour of reaping the vestiges, + which broken software left behind (as it is cleaner for the system to + deallocate unused ressources). diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/security b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/security new file mode 100644 index 00000000..f1dac591 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/security @@ -0,0 +1,35 @@ +-------------------------------------------------------------------------------- +security, +Nico Schottelius 2005-06-13 (Last Modified: 2005-06-14) +-------------------------------------------------------------------------------- + +A little note about cinit security and how to exploit it: + +cinit trusts its socket, /etc/cinit/tmp/coala. If somebody not +authorised has access to it, your system is taken over. + +Through this socket anybody with write access can: + + - shutdown, restart and power-off the host + - spawn a local unprotected shell + - execute anything as the user cinit runs (most likely root) + +Currently cinit does not care very much about the socket permissions. +On my system this creates a socket with srwxr-x-rx permissions, which +isi suitable for normal operation, which will not accept connect() +by others than root. + +But you can also loosen the security and allow people from a specfic group +to control your system: + + ei # chmod 770 /etc/cinit/tmp/coala + ei # chown root:cinit /etc/cinit/tmp/coala + +Now everybody in the cinit group can control your system. +Please think twice before doing that, as you read above, anyone from +the cinit group may start a root shell on the initial console then! + +For extra parnoid settings you can do the following: + + ei # chmod 700 /etc/cinit/tmp/coala + ei # chown root:root /etc/cinit/tmp/coala diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/socket.poll_vs_o_async b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/socket.poll_vs_o_async new file mode 100644 index 00000000..477f2bff --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/socket.poll_vs_o_async @@ -0,0 +1,39 @@ +-------------------------------------------------------------------------------- +Socket: poll(2) vs. O_ASYNC, +Nico Schottelius 2005-06-22 (Last Modified: 2005-06-22) +-------------------------------------------------------------------------------- + +0. General problem +1. O_ASYNC +2. poll(2) + + +0. General problem + +cinit has to react, as soon as there's data on the socket. + +1. O_ASYNC + +When you open a socket with O_ASYNC (or specify it with fcntl(2)) under +Linux, your process recieves the SIGIO signal from the kernel, as soon +as data is available. + +The problem is the handling of signals seems not to be serialised: + +The function, which is called on the SIGIO signal (called sigio() here) +calls other functions. Those functions way recieve SIGIO while working, +so the first data stream is not yet finished, though the next +stream is beeing read. + +This gives very nice race-conditions, which are very nice to debug. + +2. poll(2) + +poll(2) is a standard Unix-call (XPG4-UNIX), which waits a specific +timeout (or infinite time if you specify a value less that zero) for +the socket (or the fd in general) to be in a state where +data is available to read (in fact poll can do much more, but we are +not interested only in POLLIN and POLLPRI). + +While poll(2) seems to be a very bit slower than sigio it works reliable. + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/thoughts.closed b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/thoughts.closed new file mode 100644 index 00000000..91a8e080 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/ancient/thoughts.closed @@ -0,0 +1,52 @@ +-------------------------------------------------------------------------------- +Closed thoughts, +Nico Schottelius, 2005-05-XX (Last Modified: 2005-06-14) +-------------------------------------------------------------------------------- + +1. using SIDs (service IDs) to communicated with external processes + + This was a very bad idea: The external program could exploit us by + specifying an arbitary big SID (as the SID is simply the index + of our service array). + +2. using function pointers to handle messages + + Seems like it works fine. We have handlers for each + message (do_*), which are called by client and server. + The function pointer is simply to read or write, dependending + if it is the client or the server. This way we don't need + to rewrite communications parts. + +3. Using different storage + + First all services were saved in a service array of the size + MAX_SVC. This has been replaced by a double-linked list. + Have a look at serv/list.c. + +4. Using sockets for IPC (between cinit forks) + + Works very fine, though we have to mount a temporarily fs before. + +5. Removing the maximum number of direct dependencies + + Is not planned, as it looks like the current number (32, see + conf/max_deps) seems to be much more than needed. And if + one really needs more, simply increase conf/max_deps. + +6. Using a directory params with 1,2,3,4 for argv + + This would make substituting a single argument easier, but only + if you know which one you have to change. This would add + an additional dirent(), which would not replace the current read(), but + add more open() and close()s. As this does not seem to make live + easier for system administrators, this is not implemented. + If you really like it, hack client/exec_svc.c + +7. Using TCP/IP sockets + + This would be a very small change in the code, but would allow + to control cinit over network. Since there is no authentication, + this would be highly insecure. On the other hand, cinit + could control the parallel start of many hosts, if they + should become 'one' computer at the end. As this is not needed + currently, it's not implemented. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/README.text b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/README.text new file mode 100644 index 00000000..c4947a13 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/README.text @@ -0,0 +1,2 @@ +DO NOT READ CONTENT IN THIS DIRECTORY. +(or at least do not blame me, if you get really confused after reading it) diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/circular-dependencies.text b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/circular-dependencies.text new file mode 100644 index 00000000..dcc91ea7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/circular-dependencies.text @@ -0,0 +1,35 @@ +What todo with circular dependencies? + a needs b + b needs a + + - try to start them? + status a: is_starting + status b: not_set + a wants b, so a service starter for b starts + status a: is_starting, waiting for b + status b: is_starting + service starter for b sees that a is needed + service starter for b sees that a is already being started + service starter for b begins to execute b + status a: is_starting, waiting for b + status b: is_starting, executing "on" + service starter b finishes + status a: is_starting, waiting for b + status b: FAILED | RESPAWN | ONCE + service a continues + b successful: execute on + b failed: register / print that we do not start, because + b failed + + -> this would only catch possible deadlocks, if the dependency + tree / status check is done dynamically + -> in case of pre-building the dep-tree this situation must + be concerned: + - start both a and b? + - or stop due to circular dependency? + + - Abort on detection of a circular dependency + * possible without pre-calculating? + - perhaps only with direct communication possible? + * pre calculate + - do not start that services? diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/converting-debian b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/converting-debian new file mode 100644 index 00000000..ee40fdff --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/converting-debian @@ -0,0 +1,30 @@ +# If you would like to automatically convert a debian system, you could +# use this script as a start point +# +# how it could look like +# + +# create cinit base configuration + +# analyse enabled services +level=$(awk -F: '/^id/ { print $2 }' /etc/inittab) +rcdir="/etc/rc${level}.d/" +initdir=/etc/init.d + +cd "$rcdir" +for svc in *; do + if [ -d "${debian_map_dir}/${svc}" ]; then + echo "Adding $svc" + else + + fi +done + +# Also add existing services in /etc/init.d +for ... + if [ ! -e $rcdir/$svc ] + if [ -d "${debian_map_dir}/${svc}" ]; then + echo "Adding, but not enabling" + fi + fi +done diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/converting-general b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/converting-general new file mode 100644 index 00000000..8a0a2e40 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/converting-general @@ -0,0 +1,10 @@ +kern=$(uname -s) + +case "${kern}" in + $known_kern) + $scriptdir/$kern + ;; + *) + echo "Unknown system" + ;; +esac diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/creating-new-configurations b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/creating-new-configurations new file mode 100644 index 00000000..a251de5d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/creating-new-configurations @@ -0,0 +1,6 @@ +scripts/create_baseconfig.sh # create base +scripts/cinit.install.standard.dirs # create common categories + +- create fsck +- set hostname +- create getty(s) diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/messages.text b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/messages.text new file mode 100644 index 00000000..f4ef769e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/messages.text @@ -0,0 +1,6 @@ +This document describes the messages used between cinit and its +"clients" (i.e. ccontrol, cservice, cinit.halt, ...): + +Signal messages +--------------- +As signals diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/possible_service_pre_calculation.text b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/possible_service_pre_calculation.text new file mode 100644 index 00000000..96ec3a73 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/possible_service_pre_calculation.text @@ -0,0 +1,19 @@ +- start at + * create a new service entry (if not exists) <--- + * reads needs | + - follow dependencies ------------------------ + * only if service does not yet exist! | + * read wants | + - follow dependencies ------------------------ + * only if service does not yet exist! + * create + - needed by entry in dependencies + - needs entry in service + - wanted by entry in dependencies + - wants entry in service + + * record + - (on,off)(,.env,.params)? + - alternatively put that code into service starter + * add services without further needs into a special + "begin" structure to be reused at fireing of the services? diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/possible_service_status.text b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/possible_service_status.text new file mode 100644 index 00000000..eb0f21e9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/possible_service_status.text @@ -0,0 +1,14 @@ + + - NOT_SET: this service has not yet been initialized + - RESPAWNING: happily respawning + - RESPAWN_DELAY: waiting delay before restarting + * HINT: using alarm()? + - senseful for single process service watcher + * HINT: using nanosleep()? + - senseful for per service process watcher + - NEED_FAILED + * add a (somehow terminated) list of services that failed? + * use global status to checkout which services failed? + - WANT_FAILED? + * NOT NECESSARY, it is a simple want, we do not need it. + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/registering_needs_wants.text b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/registering_needs_wants.text new file mode 100644 index 00000000..ededbd41 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/registering_needs_wants.text @@ -0,0 +1,55 @@ +Each service has a list of services it + - needs + - is needed by + - wants + - is wanted by + + +Each entry is a service pointer. +The simplest list could look like this: + + service a: + needs: + b f g NULL + +So the needs pointer is NULL terminated: + needs = realloc(count_links) + -> how to get the count? + 0x02 + 0x + + Better: A double linked list (like the main service list)? + +Could look like: + service a: + needs: + *service + *next + *prev + +This design could also be used for wants. + +On the other hand, we've to register us at the needed/wanted service: + + service b: + needed_by: + *service + *next + *prev + + +So each service needs four pointers: + needs + needed_by + wants + wanted_by + +And on each request both lists have to be modified! + +Example: + + Service "a" adds "b" as needed: + + - add "a" needs "b" + - add "b" needed_by "a" + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/root-vm-testing b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/root-vm-testing new file mode 100644 index 00000000..a8773dea --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/root-vm-testing @@ -0,0 +1,9 @@ +[19:33] denkbrett:root% cat uml-mount.sh +SDIR=$(dirname $0) +DDIR=$(dirname $0)/root +sudo mount "$SDIR/Debian-3.0r0.ext2" "$DDIR" -o loop,acl + +denkbrett# tar cfj ~nico/projekte/cinit/conf-vm-2007-03-05.tar.bz2 cinit +denkbrett# chown -R nico cinit +denkbrett# chown nico ../sbin + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/shutdown.text b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/shutdown.text new file mode 100644 index 00000000..ac76425d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/shutdown.text @@ -0,0 +1,84 @@ +cinit - braindumps - shutdown +============================= +Nico Schottelius +v0.1, for cinit-0.3, 2007-01-11 +:Author Initials: NS + +Just some braindumps. Do not read. + +Introduction +------------ +Shutting down the system. + +When? +----- +- reboot +- halt +- power off +- further needed? + +How / What? +------------ +- Stop services in the correct order + * reuse the service tree / needs / needed_by! + * call off, if existent + * if respawning, send SIGTERM? + - not if off is existent? + * give some variables to off? + - $RESPAWN_PID: if respawning +- send SIGTERM to other apps? + * or put that into special? special/post_svc_shutdown +- call special/{halt,poweroff,reboot} + * no, implemented that directly into cinit! +- implement timely controlled shutdown: + * cinit.shutdown forks (?) itself and waits, then sends a signal + to cinit to initiate the shutdown process + * create mappers for target OS + - Linux + - {free,net,open}bsd + - others may contribute theirself +- also implement poweroff + * kill -TERM 1 +- also implement reboot + * kill -HUP 1 +- also implement halt + * kill -USR1 1 + + +The implementation +----------------- +x shutdown is initiated +x disable communication (nobody can influence us anymore) +x install special signal handler? + - no. we do not care about zombies anymore, we are gone soon anyway + - simply reset to the default +- begin to shutdown services + * where to start? + * begin shutdown at the end of the tree, viewing/sorting it by the 'needed_by' + -> where to begin sort? + -> worst implementation: scan all services (easy for now) + -> result: list of services, that noone needs :-) + * stop those services and step above + - stop a service, as soon as noone needs it anymore + * check all needed_by links + * more or less the inverted gen_svc_tree +- how to shutdown a service + * if existing, call off + - if off does not exist: + * if respawn: send sigterm to the process + * also implement sigkill at this stage? + - think we can delay it to the end + - otherwise users can use off! + - implement environment for off ($cinit_respawn_pid, $cinit_service_name) + - do *NOT* care about the return value, we can't do anything for it + anymore anyway +- after all services are shutdown, kill all remaining services + * SIGTERM + * wait(defined_time_in_seconds) + * SIGKILL +- call the last command + * to cleanup the system + - umount -a (if needed) + - swapoff (if needed) + - sync (if needed) +- switch off diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/sizes b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/sizes new file mode 100644 index 00000000..ddd30f75 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/braindumps/sizes @@ -0,0 +1,6 @@ +sysvinit: +root 1 0.0 0.0 1944 648 ? Ss 02:12 0:00 init [2] + +cinit-0.3pre8-glibc-linux: +compiler 25323 0.0 0.0 1564 392 pts/2 S+ 20:22 0:00 ./cinit + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.1 b/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.1 new file mode 100644 index 00000000..a0db62e6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.1 @@ -0,0 +1,2 @@ +* Initial release +* Support for adding getties diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre15 b/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre15 new file mode 100644 index 00000000..bd197d02 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre15 @@ -0,0 +1,3 @@ +Released: 2009-09-23 +Changes: + * Changed child handling (no function calls in sig_child handler anymore) diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre16 b/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre16 new file mode 100644 index 00000000..6749eede --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre16 @@ -0,0 +1,6 @@ +Released: 2009-09-29 +Changes: + * Re-integrated cinit-conf + * Merged READE and cinit website + * Cleaned up bin/: Executables can now be installed + * Cleaned up top level directory diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre17 b/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre17 new file mode 100644 index 00000000..ec103f77 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre17 @@ -0,0 +1,3 @@ +Released: 2009-10-05 +Changes: + * Populated bin/ with a lot of scripts to migrate ubuntu/upstart to cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre18 b/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre18 new file mode 100644 index 00000000..40dfc92a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/changes/0.3pre18 @@ -0,0 +1,4 @@ +Released: 2009-11-05 +Changes: + * Added script to partially migrate Ubuntu Jaunty almost completly to cinit + * Added script to create minimal configuration (cinit-conf.config.shell) diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/changes/00-before-0.3pre15 b/software/cinit/browse_source/cinit-0.3pre18/doc/changes/00-before-0.3pre15 new file mode 100644 index 00000000..ce8f4b43 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/changes/00-before-0.3pre15 @@ -0,0 +1,108 @@ +cinit-0.3pre14: 2008-03-17 + - Added test-suite for cmd + - Added support to shutdown services in cinit and cmd + (without needs and wants) + - Added linux-sysvinit wrapper for shutdown (See + scripts/wrapper/linux-sysvinit/shutdown) + - Rewrote most parts of cmd (to make it more beautiful) + - Changed license to GPL 3.0 + +cinit-0.3pre13: 2007-09-26 + - Added -V (get cmd version), -h (help), -p (get pid) to cmd + - Cleaned up namemsage in msgq.h + - Added global service lock + - Splitted of svc.h to svc.h, svc-intern.h and svc-messages.h + - Prepared logic splitoff from cinit_ipc_listen() + - Fixed bug: fork() has a general race condition + (see src/test/fork-latency.c) through use of global lock + +cinit-0.3pre12: 2007-09-06 + - Added DESTDIR support + - Added support to get service status via cmd: cmd -s + * also supports relative paths to CINIT_DIR ("/etc/cinit") + - Fixed git clone problem: hooks are needed for dumb git + - Fixed bug: We did not wait for services to finsh, which we depend on being + ran once. + +cinit-0.3pre11: 2007-09-01 + - Added basic communication: + * client binary "cmd" with argument -v returns cinit-version + - Updated {halt,reboot,poweroff}.kill + +cinit-0.3pre10: + - Fixed make install target + - Added halt.kill, poweroff.kill and reboot.kill (including manpages!) + - Fixed invalid comparision in core/cinit.c + - Be verbose: Print what we execute + - Updated documentation + +cinit-0.3pre9: 2007-05-15 + - Implemented sleeping before respawn (static delay) + - Report broken links on execution, but ignore empty services + - Cleaned up message queue error reporting + +cinit-0.3pre8: 2007-04-06 + - Updated and merged documentation: Codingstyle and Codingguide + - Cleaned sigaction-code (fixes segfault on glibc) + - Cleaned object listings + - Added notifications at shutdown + - Fixed status check + +cinit-0.3pre7: 2007-02-17 + - Many code cleanups + - Fixed glibc problem with sigaction (for details view src/core/set_signals.c) + - Added general shutdown support (will *NOT* yet stop services, + but still stop your system) + +cinit-0.3pre6: + - Many code cleanups + - Added user documentation and cleaned up documentation in general + +cinit-0.3pre5: + - Finished new SIGCHLD handler + - First cleanups for real release. + - This version is the first 0.3pre version that can handle respawn! + +cinit-0.3pre4: + - Re-implemented execution of services. + - This version is the first 0.3pre version that COULD bootup your system! + +cinit-0.3pre3: + - Finished execution all services via the reversed service tree. + +cinit-0.3pre2: + - Finished generation of the dependency tree. + +cinit-0.3pre1: + - cinit should now compile on mostly all unices + - introduced much new code + - THIS IS A DEVELOPER RELEASE, NOT USABLE IN PRODUCTION ENVIRONMENTS. + +cinit-0.2.1: (Bugfix release) + - Fixed problem in contrib+tools/Makefile when installing + - added many new scripts to convert sys-v-init, which are still early beta + (see bin/cinit.merge.sysvinit-debian-sid) + +cinit-0.2: + - Much more verbose error reporting + - You can now also disable 'once ran' services, + - You can restart services with csevice -r + - Online speech in German is available + - C_DELAY support - variable delay for sending SIGKILL after SIGTERM + - First /etc/csys configuration example (wasserstoff) is available + - a Mailing list was created + - Added tools to analyze cinit configuration + (cinit-vis.pl, cinit.graph.text.c) + - Added tools to import and export configuration to XML + (make.cconfig.from.xml.rb,cconfig.graph.xml.rb) + - Removed unecessary signalling + - Added many helper scripts to install services (cinit.install.service*) + - Fixed many small bugs in old helper scripts (cinit.add.getty, cinit.get-conf, ...) + - Added ccontrol, which allows to control cinit + - Added update (-u) via ccontrol + - Stripped cservice, which now "only" controls services + - Removed swapoff from cinit code, should be handled by off + - Much better error and processing descriptions + - A bit more verbose reporting + - Restructured run_svc, now with better error detection + - Removed Kernel panic, when halting system diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/devel/Doxyfile b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/Doxyfile new file mode 100644 index 00000000..d7de54af --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/Doxyfile @@ -0,0 +1,305 @@ +# Doxyfile 1.5.6 + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- +DOXYFILE_ENCODING = UTF-8 +PROJECT_NAME = cinit +PROJECT_NUMBER = 0.3pre15 +OUTPUT_DIRECTORY = /home/user/nico/oeffentlich/computer/projekte/cinit/doxygen +CREATE_SUBDIRS = NO +OUTPUT_LANGUAGE = English +BRIEF_MEMBER_DESC = YES +REPEAT_BRIEF = YES +ABBREVIATE_BRIEF = "The $name class" \ + "The $name widget" \ + "The $name file" \ + is \ + provides \ + specifies \ + contains \ + represents \ + a \ + an \ + the +ALWAYS_DETAILED_SEC = NO +INLINE_INHERITED_MEMB = NO +FULL_PATH_NAMES = YES +STRIP_FROM_PATH = /home/user/nico/oeffentlich/computer/projekte/cinit/cinit/src +STRIP_FROM_INC_PATH = +SHORT_NAMES = NO +JAVADOC_AUTOBRIEF = NO +QT_AUTOBRIEF = NO +MULTILINE_CPP_IS_BRIEF = NO +DETAILS_AT_TOP = NO +INHERIT_DOCS = YES +SEPARATE_MEMBER_PAGES = NO +TAB_SIZE = 3 +ALIASES = +OPTIMIZE_OUTPUT_FOR_C = YES +OPTIMIZE_OUTPUT_JAVA = NO +OPTIMIZE_FOR_FORTRAN = NO +OPTIMIZE_OUTPUT_VHDL = NO +BUILTIN_STL_SUPPORT = NO +CPP_CLI_SUPPORT = NO +SIP_SUPPORT = NO +IDL_PROPERTY_SUPPORT = YES +DISTRIBUTE_GROUP_DOC = NO +SUBGROUPING = YES +TYPEDEF_HIDES_STRUCT = NO +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- +EXTRACT_ALL = YES +EXTRACT_PRIVATE = YES +EXTRACT_STATIC = YES +EXTRACT_LOCAL_CLASSES = YES +EXTRACT_LOCAL_METHODS = NO +EXTRACT_ANON_NSPACES = NO +HIDE_UNDOC_MEMBERS = NO +HIDE_UNDOC_CLASSES = NO +HIDE_FRIEND_COMPOUNDS = NO +HIDE_IN_BODY_DOCS = NO +INTERNAL_DOCS = NO +CASE_SENSE_NAMES = YES +HIDE_SCOPE_NAMES = NO +SHOW_INCLUDE_FILES = YES +INLINE_INFO = YES +SORT_MEMBER_DOCS = YES +SORT_BRIEF_DOCS = NO +SORT_GROUP_NAMES = NO +SORT_BY_SCOPE_NAME = NO +GENERATE_TODOLIST = YES +GENERATE_TESTLIST = YES +GENERATE_BUGLIST = YES +GENERATE_DEPRECATEDLIST= YES +ENABLED_SECTIONS = +MAX_INITIALIZER_LINES = 30 +SHOW_USED_FILES = YES +SHOW_DIRECTORIES = NO +SHOW_FILES = YES +SHOW_NAMESPACES = YES +FILE_VERSION_FILTER = +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- +QUIET = NO +WARNINGS = YES +WARN_IF_UNDOCUMENTED = YES +WARN_IF_DOC_ERROR = YES +WARN_NO_PARAMDOC = NO +WARN_FORMAT = "$file:$line: $text" +WARN_LOGFILE = +#--------------------------------------------------------------------------- +# configuration options related to the input files +#--------------------------------------------------------------------------- +INPUT = /home/user/nico/oeffentlich/computer/projekte/cinit/cinit/src +INPUT_ENCODING = UTF-8 +FILE_PATTERNS = *.c \ + *.cc \ + *.cxx \ + *.cpp \ + *.c++ \ + *.d \ + *.java \ + *.ii \ + *.ixx \ + *.ipp \ + *.i++ \ + *.inl \ + *.h \ + *.hh \ + *.hxx \ + *.hpp \ + *.h++ \ + *.idl \ + *.odl \ + *.cs \ + *.php \ + *.php3 \ + *.inc \ + *.m \ + *.mm \ + *.dox \ + *.py \ + *.f90 \ + *.f \ + *.vhd \ + *.vhdl \ + *.C \ + *.CC \ + *.C++ \ + *.II \ + *.I++ \ + *.H \ + *.HH \ + *.H++ \ + *.CS \ + *.PHP \ + *.PHP3 \ + *.M \ + *.MM \ + *.PY \ + *.F90 \ + *.F \ + *.VHD \ + *.VHDL +RECURSIVE = YES +EXCLUDE = /home/user/nico/oeffentlich/computer/projekte/cinit/cinit/src/ancient/ \ + /home/user/nico/oeffentlich/computer/projekte/cinit/cinit/src/test/ +EXCLUDE_SYMLINKS = NO +EXCLUDE_PATTERNS = +EXCLUDE_SYMBOLS = +EXAMPLE_PATH = +EXAMPLE_PATTERNS = * +EXAMPLE_RECURSIVE = NO +IMAGE_PATH = +INPUT_FILTER = +FILTER_PATTERNS = +FILTER_SOURCE_FILES = NO +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- +SOURCE_BROWSER = YES +INLINE_SOURCES = NO +STRIP_CODE_COMMENTS = YES +REFERENCED_BY_RELATION = YES +REFERENCES_RELATION = YES +REFERENCES_LINK_SOURCE = YES +USE_HTAGS = NO +VERBATIM_HEADERS = YES +#--------------------------------------------------------------------------- +# configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- +ALPHABETICAL_INDEX = NO +COLS_IN_ALPHA_INDEX = 5 +IGNORE_PREFIX = +#--------------------------------------------------------------------------- +# configuration options related to the HTML output +#--------------------------------------------------------------------------- +GENERATE_HTML = YES +HTML_OUTPUT = html +HTML_FILE_EXTENSION = .html +HTML_HEADER = +HTML_FOOTER = +HTML_STYLESHEET = +HTML_ALIGN_MEMBERS = YES +GENERATE_HTMLHELP = NO +GENERATE_DOCSET = NO +DOCSET_FEEDNAME = "Doxygen generated docs" +DOCSET_BUNDLE_ID = org.doxygen.Project +HTML_DYNAMIC_SECTIONS = NO +CHM_FILE = +HHC_LOCATION = +GENERATE_CHI = NO +CHM_INDEX_ENCODING = +BINARY_TOC = NO +TOC_EXPAND = NO +DISABLE_INDEX = NO +ENUM_VALUES_PER_LINE = 4 +GENERATE_TREEVIEW = NONE +TREEVIEW_WIDTH = 250 +FORMULA_FONTSIZE = 10 +#--------------------------------------------------------------------------- +# configuration options related to the LaTeX output +#--------------------------------------------------------------------------- +GENERATE_LATEX = YES +LATEX_OUTPUT = latex +LATEX_CMD_NAME = latex +MAKEINDEX_CMD_NAME = makeindex +COMPACT_LATEX = NO +PAPER_TYPE = a4wide +EXTRA_PACKAGES = +LATEX_HEADER = +PDF_HYPERLINKS = YES +USE_PDFLATEX = YES +LATEX_BATCHMODE = NO +LATEX_HIDE_INDICES = NO +#--------------------------------------------------------------------------- +# configuration options related to the RTF output +#--------------------------------------------------------------------------- +GENERATE_RTF = NO +RTF_OUTPUT = rtf +COMPACT_RTF = NO +RTF_HYPERLINKS = NO +RTF_STYLESHEET_FILE = +RTF_EXTENSIONS_FILE = +#--------------------------------------------------------------------------- +# configuration options related to the man page output +#--------------------------------------------------------------------------- +GENERATE_MAN = YES +MAN_OUTPUT = man +MAN_EXTENSION = .3 +MAN_LINKS = NO +#--------------------------------------------------------------------------- +# configuration options related to the XML output +#--------------------------------------------------------------------------- +GENERATE_XML = NO +XML_OUTPUT = xml +XML_SCHEMA = +XML_DTD = +XML_PROGRAMLISTING = YES +#--------------------------------------------------------------------------- +# configuration options for the AutoGen Definitions output +#--------------------------------------------------------------------------- +GENERATE_AUTOGEN_DEF = NO +#--------------------------------------------------------------------------- +# configuration options related to the Perl module output +#--------------------------------------------------------------------------- +GENERATE_PERLMOD = NO +PERLMOD_LATEX = NO +PERLMOD_PRETTY = YES +PERLMOD_MAKEVAR_PREFIX = +#--------------------------------------------------------------------------- +# Configuration options related to the preprocessor +#--------------------------------------------------------------------------- +ENABLE_PREPROCESSING = YES +MACRO_EXPANSION = NO +EXPAND_ONLY_PREDEF = NO +SEARCH_INCLUDES = YES +INCLUDE_PATH = +INCLUDE_FILE_PATTERNS = +PREDEFINED = +EXPAND_AS_DEFINED = +SKIP_FUNCTION_MACROS = YES +#--------------------------------------------------------------------------- +# Configuration::additions related to external references +#--------------------------------------------------------------------------- +TAGFILES = +GENERATE_TAGFILE = +ALLEXTERNALS = NO +EXTERNAL_GROUPS = YES +PERL_PATH = /usr/bin/perl +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- +CLASS_DIAGRAMS = NO +MSCGEN_PATH = +HIDE_UNDOC_RELATIONS = YES +HAVE_DOT = YES +DOT_FONTNAME = FreeSans +DOT_FONTPATH = +CLASS_GRAPH = YES +COLLABORATION_GRAPH = YES +GROUP_GRAPHS = YES +UML_LOOK = NO +TEMPLATE_RELATIONS = NO +INCLUDE_GRAPH = YES +INCLUDED_BY_GRAPH = YES +CALL_GRAPH = NO +CALLER_GRAPH = NO +GRAPHICAL_HIERARCHY = YES +DIRECTORY_GRAPH = YES +DOT_IMAGE_FORMAT = png +DOT_PATH = +DOTFILE_DIRS = +DOT_GRAPH_MAX_NODES = 50 +MAX_DOT_GRAPH_DEPTH = 1000 +DOT_TRANSPARENT = YES +DOT_MULTI_TARGETS = NO +GENERATE_LEGEND = YES +DOT_CLEANUP = YES +#--------------------------------------------------------------------------- +# Configuration::additions related to the search engine +#--------------------------------------------------------------------------- +SEARCHENGINE = NO diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/devel/README.text b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/README.text new file mode 100644 index 00000000..20524651 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/README.text @@ -0,0 +1,18 @@ +cinit/doc/devel +=============== +Nico Schottelius +0.1, Initial Version from 2006-07-09 +:Author Initials: NS + +This directory contains cinit development documents. + +Introduction +------------ +This file describes the related documents in the current directory. + +Who should read those documents? +-------------------------------- +(cinit-)developers. + +Content +------- diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/devel/cinit-0.4.text b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/cinit-0.4.text new file mode 100644 index 00000000..61b718f8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/cinit-0.4.text @@ -0,0 +1,115 @@ +cinit 0.4 - Redesign of cinit +============================================ +Nico Schottelius +0.4.0, for cinit 0.4, Initial Version from 2006-03-11 +:Author Initials: NS + + +cinit 0.2 ran fine and the general project of developing a +parallel executing init system is finished. +With cinit 0.4 there are new aims to reach. + + +Introduction +------------ + +. AIMS + - portability: no Linux-dependency anymore + - cleaner signal handling + - better documentation so more people can use it + + +Current problems +---------------- + +Temporary filesystem and socket problematic +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The mount(2) system call is os-specific. +The temporary fs is os-specific. + + +Signal handlers are not clean +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Race conditions when multiple signals arrive + + +Reboot code is os specific +~~~~~~~~~~~~~~~~~~~~~~~~~~ + +serv/sig_reboot.c contains umount, remount hard coded. + + +Solutions +--------- + +Temporary filesystem and socket problematic +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Remove +- the mount call +- do not create an initial socket + +Wait until we recieve a signal, then we create a socket +under the configured socket directory (see `conf/sockdir`). + + +Signal handlers are not clean +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Reboot code is os specific +~~~~~~~~~~~~~~~~~~~~~~~~~~ + + +Misc +~~~~ + +- Configuration + /etc/cinit/config/ + init -> link to initial service + pre_boot + pre_boot_args + post_boot + post_boot_args + /etc/cinit/services/ + /etc/cinit/profiles/ + links to the starting services + + + +cinit - Internals +================= +Nico Schottelius +0.1 for cinit-0.3, Initial version: So Feb 19 10:25:46 CET 2006 +:Author Initials: NS + + +Introduction +------------ +This document describes the internals of cinit. It is thought +to be read by developers. + + +Child handler code in cinit-0.3 +------------------------------- + +In cinit versions <= cinit-0.2.1 the respawning services where +handled by an extra child handler, which was a fork of cinit. This +had some problems: + + - We allocated more memory than necessary, unecessary parts of + cinit were copied + - The SIG_CHILD-handler was not written very clean, in some versions + it was completly missing. + + +. So in `cinit-0.3` we changed it the following way: + - no extra child handlers + - handle everything in the SIG_CHILD handling function + - when sig_child is recieved do: + - check against respawn list + - if it is a respawning service, [do the following in a seperate fork?] + check whether it successfully stoped + - if yes: restart immediatly + - if no: sleep $sleep_time and then restart diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/devel/cinit-status-translation.dia b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/cinit-status-translation.dia new file mode 100644 index 0000000000000000000000000000000000000000..55935dd084910e1c4e64848a4a2b95f380fbbb7f GIT binary patch literal 5090 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 E0J@X`_W%F@ literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/devel/cinit-status-translation.png b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/cinit-status-translation.png new file mode 100644 index 0000000000000000000000000000000000000000..6bafa1190d7b1878a4e7d380ba5c63b2fca760bb GIT binary patch literal 62619 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%0AFg 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 z +0.1, for cinit, Initial version from 2006-11-13 +:Author Initials: NS + +This document describes the coding style used in cinit. + + +Indent +------ +Indent the code by 3 spaces for each level. +Indent variable names, so the names begin all at the same position. +Use three spaces to place them. + + +Whitespaces +----------- +Where to put or avoid whitespaces (space or linefeed (lf)). + + +Spaces +~~~~~~ +- After closing brace "if(test) return 0;" +- Spaces before and after '=', '>', '<', '==', '!='', '>=', '<=', '>>', '<<', '&', '&&', '|', '||' +- After start of comment and before end of comment: '/* text */' + + + After ')', ',' + +No spaces +~~~~~~~~~ +- Within braces and code "(!test)", +- Before braces "if(code)" +- No space before ), so if '))', do not put a space after the first ')' + + +Linebreaks +~~~~~~~~~~ +This somehow includes the setting of braces (indirectly through (not) setting +spaces. + +If +^^ + +Put the if, the braces and the opening curly brace on one line, +put the closing one together with `else` and the new opening +curly brace on one line: + +------------------------------------------------------------------------------ +if(...) { + /* code */ +} else { + /* else: code */ +} +------------------------------------------------------------------------------ + +While +^^^^^ +------------------------------------------------------------------------------ +while(condition) { + /* repeat */ +} +------------------------------------------------------------------------------ + +Do-While +^^^^^^^^ +------------------------------------------------------------------------------ +do { + /* something */ +} while(running); +------------------------------------------------------------------------------ + +Switch +^^^^^^ + +------------------------------------------------------------------------------ +switch(value) { + case DO_SOMETHING: + /* code */ + break; + default: + break; +} +------------------------------------------------------------------------------ + + + +Where to put curly braces +------------------------- + +Functions +~~~~~~~~~ +Opening and closing curly braces are placed on a seperate row: + +------------------------------------------------------------------------------ +int func(int params) +{ + body +} +------------------------------------------------------------------------------ + + +If, else, while, do-while +~~~~~~~~~~~~~~~~~~~~~~~~~ +See above. + + +Comments +--------- +where necessery, do not state the obvious in comments: + + /* this code increments tmp */ + ++tmp; + +If there is more than one line containing a comment, try to adjust them +so they look the same in width and position: + +------------------------------------------------------------------------------ + int illuminati = 23; /* do not want to comment that */ + int the_answer_to_everything = 42; /* 42. */ + + [...] + + while(illuminati < the_answer_to_everything) { /* only try before them */ + overtake_world(&self); /* overtake is complex */ + } +------------------------------------------------------------------------------ + + +Header +------- +Put a header into each file, containing: + + - Date of file being put into existence (year is enough) + - Name and e-mail (obfuscated if you want) of the author(s) + - Description of the function + - Copyright statement (if not included GPLv2 or later is assumed) + + +Includes +~~~~~~~~ +Include system headers first, then place own headers. Comment the includes, +wherefore you added them. Example: + +------------------------------------------------------------------------------ +#include /* write */ +#include "cinit.h> /* cinit_ipc_* */ +------------------------------------------------------------------------------ diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/devel/communication.text b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/communication.text new file mode 100644 index 00000000..64ea30cf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/communication.text @@ -0,0 +1,248 @@ +cinit - communication +===================== +Nico Schottelius +0.1 for cinit-0.3, Initial version: 2006-08-11 +:Author Initials: NS + +This document describes the internal communication of cinit. +It is thought to be read by developers. + + +Introduction +------------ +This document describes the messages used between cinit, cinit forks +and other programs that want to talk to cinit. It does NOT +describe the communication method, but only the messages sent +(for the communication method read "ipc.text"). + + +Document status +~~~~~~~~~~~~~~~ +This document is still being written, it is not finished. + + +About Messages +-------------- + +Order +~~~~~ +The client always initiates the communication. +cinit will begin listening to messages directly after its start. + + +Numbers +~~~~~~~ +Can be found in include/cinit.h. + + +Data +~~~~~ +A message always conists of a predefined structure (see src/headers/comm.h). +Can't use a structure, were missing the point that we cannot transfer dynamic +length strings. Thus the protocol consists of: + + client(int) => cinit + cinit(ini) => client + => after that follows command specific data + +The byte order is host specific (may be little or big endian). + +STRUCTURE WITH STATIC SIZE. MSGRCV! +IPC LAYER CREATES TRANSPORT! + +Type +~~~~ +Messages are binary data. + +The messages +------------ +The client always uses the same structure (struct msg_client) to contact +cinit. This way cinit does not need to handle dynamic data structures. + +cinit in contrast delivers different data structures to its clients, +depending on the question. + +The questions are issued by any type of client, the internal command used is +noted in square brackets ([]). + +The answers are given by cinit. + + +Question: Start a service (and its dependencies) [CMD_START_SVC] +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +This command is issued either by a cinit fork or by an external client. +cinit will start a fork, which tries to start the service and its dependencies. + +The client must provide cinit with the following information: +. Name of the service to be started +. Reason why to start it +. eventually additional information (see below) + +The reason +^^^^^^^^^^ +Can be one of: +- RS_NONE (it's a manual start request) +- RS_WANTS (a currently starting service wants to start this service) +- RS_NEEDS (a currently starting service needs to start this service) + +If the reason is RS_WANTS or RS_NEEDS the client must supply the name +of the service, which wants it to be started. + + +Question: Start a service (nothing else) [CMD_START_SVC_ONLY] +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +This command may only be issued by an external client. +cinit will start a fork, which tries to start the service and which will +report the status back. + + +Question: Stop a service (and its dependencies) [CMD_STOP_SVC] +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +This command is issued either by a cinit fork or by an external client. +cinit will start a fork, which tries to stop the service and each service +that 'needs' it. + +This function works recursively, thus also killing those services, that +need the service that need the current service. + + +Question: Stop a service (nothing else) [CMD_STOP_SVC_ONLY] +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +This command may only be issued by an external client. +cinit will start a fork, which tries to stop this service and which will +report the status back. + + +Question: Stop a service (plus 'needs' and 'wants') [CMD_STOP_SVC_WANTS] +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Same as 'Stop a service (and its dependencies)', but also stop the +services that want to have this service. + +This function works recursively, thus also killing those services, that +'need' or 'want' the service that 'need' or 'want' the current service. + + +Question: What's the status of service XYZ? +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Code, length of service name, the service name (without \0). +int, int, char[]; + + + +Question: Could you change the status? [CMD_CHG_STAT] +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +A cinit fork reports the new status of a service. + + +Question: Could you start the rescue mode? [CMD_RESCUE] +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +This command may only be issued by an external client. +cinit will not give an answer to this question. +cinit will stop all services, kill all other processes and after that +spawn the rescue program. + + +Question: Could you halt the system? [CMD_HALT] +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +This command may only be issued by an external client. +cinit will not give an answer to this question. +cinit will stop all services, kill all other processes and after that +halt the system. + + +Question: Could you reboot the system? [CMD_REBOOT] +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +This command may only be issued by an external client. +cinit will not give an answer to this question. +cinit will stop all services, kill all other processes and after that +reboot the system. + + +Question: Could you poweroff the system? [CMD_POWEROFF] +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +This command may only be issued by an external client. +cinit will not give an answer to this question. +cinit will stop all services, kill all other processes and after that +poweroff the system. If poweroff is not possible, the system will +be halted. + + +Question: Could you warmboot the system? [CMD_WBOOT] +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +This command may only be issued by an external client. +cinit will not give an answer to this question. +cinit will stop all services, kill all other processes and after that +restart itself and the bootup process. + + +Question: Could you send information about a service? [CMD_INFO] +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +This command may only be issued by an external client. +cinit will respond with detailled information about the service +to the client. + + +Answer: Return short status of a service +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +This answer is used as a response to: + + - Question: Start a service (and its dependencies) + - Question: Start a service (nothing else) + - Question: Stop a service (and its dependencies) + - Question: Stop a service (nothing else) + - Question: Stop a service (plus 'needs' and 'wants') + - Question: Could you change the status? + +cinit only responds the status of the asked service. +The structure send is "asw_sstatus", which only include a status byte. + + +Answer: Return long status of a service +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +This answer is used as a response to: + + - Question: Could you send information about a service? + + +old Messages (to be transferred into this document) +--------------------------------------------------- + CMD_START_SVC: I want to start a service. + CMD_CHG_STATUS: I want to change the status of a service. + CMD_STOP_SVC: Please shutdown a service. + + CMD_RESCUE: Kill everything, and spawn a sulogin shell. + CMD_UPDATE: Hot-reboot system and reload cinit. + + CMD_HALT: Halt the system + CMD_REBOOT: Reboot the system + CMD_POWEROFF: Power-off the system + +-------------------------------------------------------------------------------- +Service status: + +-------------------------------------------------------------------------------- +service status (cinit), +Nico Schottelius 2005-09-29 (Last Modified: -) +-------------------------------------------------------------------------------- + +There are service status and service returns. Service status is a status +a service can have. A service return is a value from a function that +describes what happened with the service. + +Status has ST_ prefix, return has RT_ prefix. +See cinit.h for most up to date versions. + + +ST_NEED_FAIL - this service will not be started, until the needs are started +ST_FAIL - this service failed to start +ST_UNSPEC - some unknown error. This should never happen. +ST_ERR - ??? /* tried earlier, service failed, won't retry */ + +ST_SUCCESS - service was successfully started - senseful? +ST_TMP - some instance is currently working on it +ST_ONCE - executed once sucessfully +ST_RESPAWN - service is running and respawning + +ST_TMPNOW 55 /* now you are on it - only for clients */ +#define ST_OFF 56 /* Switching service off */ + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/devel/configuring.text b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/configuring.text new file mode 100644 index 00000000..405a4d29 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/configuring.text @@ -0,0 +1,18 @@ +cinit/doc/devel/using-conf.text +================================ +Nico Schottelius +0.1, Initial Version from 2006-07-28 +:Author Initials: NS + +About conf/* and how to use the configurations. + +Introduction +------------ + +Who should read those documents? +-------------------------------- + +Content +------- + + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/devel/cross-compiling.text b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/cross-compiling.text new file mode 100644 index 00000000..fdf70564 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/cross-compiling.text @@ -0,0 +1,36 @@ +TODO: + - merge into "Cross compiling" + +cinit - Problems that may arise +=============================== +Nico Schottelius +0.1, for cinit 0.3, Initial Version from 2006-06-03 +:Author Initials: NS + +Max open files + OS dependent + +Installing cinit + +Introduction +------------ +General sections, OS-specific, ... + +Installing +---------- + +From source +~~~~~~~~~~~ + +In General +^^^^^^^^^^ +Download, edit conf/os to the os + +Cross-compiling +^^^^^^^^^^^^^^^ +conf/os to destination os +conf/cc +conf/ld +conf/cflags +conf/ldflags + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/devel/ipc.text b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/ipc.text new file mode 100644 index 00000000..e57ac039 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/ipc.text @@ -0,0 +1,169 @@ +IPC - in cinit and in general +============================= +Nico Schottelius +0.1, Initial Version from 2006-07-09 +:Author Initials: NS + +IPC - Inter process communication + +Introduction +------------ +This document describes the IPC methods used and/or tested for +cinit. + +It does not describe in detail, how the different methods work +(this is already done many times, there's great documentation +available online), but more the advantages and disadvantages +(especially for an init system). + +What is IPC? +~~~~~~~~~~~~ +IPC describes methods to communicate between different processes +(programs). + +IPC as described by SUSV3 (The Single UNIX Specification Version 3) +aka IEEE Std 1003.1, 2004 Edition aka POSIX only defines +MSQ, SHM and Semaphores as IPC. This document also covers +Sockets and FIFOs. + + +What is not (yet) covered by this document? +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Speed of different IPC methods, different behaviour on different +unices. + + +Why do you need IPC for an init system? +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + +cinit IPC history + analysis +---------------------------- + + +FIFOs +~~~~~ +First in - first out +File on the filesystem +Always need two files for two way communication + +Hints +^^^^^ +The first idea for IPC in cinit was to use two FIFOs, like minit does. +Wrong assumption: +runit also uses fifos, but two fifos for each services. That way +more parallel transmissions is possible. +You have to pay attention: Maximum number of opened files! +(On Linux 2.6 this is 1024, which makes a maximum of 512 services. +This limit is most likely never reached, but you have to keep it +in mind). + +Sockets +~~~~~~~ +Clean and beautiful. They allow easy two way communication. + +If you created a socket, fs is r/o, you cannot use it, although +there is SO_REUSE. + +First method: Using memory mapped part (tmpfs). +Second method: use interal communication (pipes!) and external after +/etc/cinit/ becomes writable. + + +Current IPC configuration +-------------------------- + +- switchable (conf/ipc_method) +- each ipc implementation needs: + + ipc.h -> for global variables and ipc specific things + prefix variables with ipc_ + int cinit_ipc_init(void); -> general initialization + return 1 on success, 0 on failure + int cinit_ipc_listen(void); -> begin to listen for messages + int cinit_ipc_send(void *data) -> send data to a client + +Abstraction layer: cinit_ipc_* +------------------------------ +You can choose or even reimplement ipc code for cinit. You only have to create +a directory below src/ipc/ and create the following necessary functions: + +int cinit_ipc_init(void); +~~~~~~~~~~~~~~~~~~~~~~~~~ +Initialise the IPC functions in cinit. + + +int cinit_ipc_listen(void); +~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Never ending looping function that listens for commands and passes the +retrieved command to read_command(). + +other +~~~~~~ +int cinit_ipc_sclose(void); /* fork of cinit come from outside! */ +int cinit_ipc_ssend(void *data); /* send to a client from the server */ +void cinit_ipc_destroy(void); /* destroy ipc handler in cinit */ + + +cinit_get_data(int ident, int size, void *data) => read size bytes from client +with ident + +/***************************************************************************** + * Functions: in clients + */ + int cinit_ipc_logon(void); /* logon to init (client init) */ + int cinit_ipc_connect(void); /* connect to init */ + int cinit_ipc_csend(struct cinit_message *data); /* send to the server from a client */ + + +-------------------------------------------------------------------------------- +Messages: + + struct cinit_question qsn; + struct cinit_answer asr; + +question: + +answer: + +int cinit_send_to(struct cinit_question *data, struct cinit_answer *res) + -> return 0 on ipc errors + +-------------------------------------------------------------------------------- +enable / disable services: + + - send svc + - send flags + + - recv return: + CINIT_ASW_SVC_STOPPED: successfully stopped the service + + CINIT_ASW_SVC_ERR: failed to stop the service + CINIT_ASW_SVC_WANTS: wants failed + CINIT_ASW_SVC_NEEDS: needs failed + opt contains number of failed services + retriev them from cinit after that + +-------------------------------------------------------------------------------- +TO SORT: + +1. message queues + o clients schreiben rein + o datenpaket gross genug fuer antwort? + +2. shared memory + o client kann direkt rauslesen, was gestartet werden muss + o client kann direkt abhaengigkeiten starten, muss diese aber + eintragen + +Ausprobieren: + - Mutexe + - Message Queues + - + +Ideen: + Message queue + 1. Client geht auf die normale + als id = pid (cast!) + dann rueck via anderer queue + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/devel/lists.text b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/lists.text new file mode 100644 index 00000000..6360acb3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/lists.text @@ -0,0 +1,22 @@ +Lists in cinit-0.3 are generalized, all have the same general layout: + + - double linked + - have 'prev' and 'next' as pointers + + Add an element to a list + + /--------------------------\ + |<->first<->middle<->last<->| + + + After insert: + + /-------------------------------\ + |<->first<->middle<->last<->new<->| + + We alway have 'first'. + Need to adjust: + - new->prev = last (= first->next) + - new->next = first + - first->prev = new + - first->prev->next (= last->next) = new diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/devel/merging.other.initsystems.text b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/merging.other.initsystems.text new file mode 100644 index 00000000..0baa4789 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/merging.other.initsystems.text @@ -0,0 +1,68 @@ +TODO: + - rewrite to asciidoc + - implement a sample merge + +-------------------------------------------------------------------------------- +Merging other init systems to cinit, +Nico Schottelius, 2005-06-02 (Last Modified: 2005-06-11) +-------------------------------------------------------------------------------- + +1. Preamble +2. General to do +3. Create a script + + +1. Preamble + +There is no tool available to merge any existing init-system-configuration +to cinit style. This is not because the author of cinit does not +care about support for that. He simply he has + + a) no access to every init-system available + b) not the time to analyze every init system + +He instead spends the time to improve and bugfix cinit. +This does not mean that he does not accepts scripts, which do the work. +In fact, creating and submitting a merge tool is much appreciated! + + +2. General to do + + 1. Choose your target init and possibly target platform: + - sysvinit may be different on AIX, SuSE and Debian + - /etc/rc may look different on each *BSD + - Sometimes even same platforms differ in versions: + SuSE 5.1 uses a different configuration then SuSE 9.0 + + So decide whether you want and can write a general merge tool + or if you have to specialize. + After deciding, name the script you want to write with the following + syntax: + + cinit-merge.$init-$platform-$version + + $platform and $version (either both or only platform) can be omitted. + + Examples: + + cinit-merge.sysvinit-debian-3.0 + cinit-merge.minit + + 2. Analyze how it works, detect the mechanism in it + + Your script has to detect if dependencies exist and resolve + them. It has to take care of special configurations and possibly + warn the user. + + +3. Create a script + +Now, after you learned how the old init system works, you can start creating +the merge-script (naming see above). + +This merge script + a) will perhaps not cover full old system (if so, warnings should be printed + b) should try to avoid using old (shell)-scripts, as starting + a shell for every service needed makes starting up slow + c) will include some basic features, that are needed everytime on this + platform (setting kernel configuration, hostname, etc) diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/devel/optimising.cinit b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/optimising.cinit new file mode 100644 index 00000000..4f4b5c02 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/optimising.cinit @@ -0,0 +1,33 @@ +-------------------------------------------------------------------------------- +optimising cinit, +Nico Schottelius, 2005-06-09 (Last Modified: -) +-------------------------------------------------------------------------------- + +0. Warning +1. gcc options +2. striping + + +0. Warning + +Any optimisation may cause cinit (not just cinit, but any program) to fail +and to do mysterious things instead of expected actions. + + +1. gcc options + +gcc knows of several optimisation flags. Mostly interesting is -Os for small +size (this is btw broken on gcc-3.4.3 on x86!). + +One can also pass -Werror so that any warning makes the compile to fail. + +The current standard for cinit is: (see CFLAGS in the Makefile). + + +2. striping + +With strip(1) you can remove specific sections of object files. +You have to find out, which ones you can remove safely +(for instance with objdump(1)). + +The current standard for cinit is: (see STRIP in the Makefile) diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/devel/testing-cinit-in-vm.text b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/testing-cinit-in-vm.text new file mode 100644 index 00000000..824b94c9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/testing-cinit-in-vm.text @@ -0,0 +1,11 @@ + +m = manually +a = automated + +m Install OS of your choice into KVM, including make, gcc, ssh and rsync +m Startup VM +a Transfer data to VM +a Compile cinit on VM +a Install cinit and configuration on VM +m Configure bootloader to add cinit as alternative choice +m Reboot and start cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/devel/testing.text b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/testing.text new file mode 100644 index 00000000..6ac0b6da --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/devel/testing.text @@ -0,0 +1,48 @@ +-------------------------------------------------------------------------------- +testing cinit in a User-Mode-Linux (uml), +Nico Schottelius 2005-06-14 (Last Modified: 2005-06-14) +-------------------------------------------------------------------------------- + +1. Get an image you want to install cinit to +2. Compile an UML +3. change bin/cinit.uml.test to your needs +4. put a configuration (/etc/cinit) on to your image +5. ./bin/cinit.uml.test + -> wait, your Linux starts with cinit enabled. + +If you omit 4, you'll see how cinit will fail without having its base +directory. + + + +-------------------------------------------------------------------------------- +Using a raw (x86) hd image: +Access partition 1 via losetup: + +sudo losetup -o 32256 /dev/loop0 "$hierabs/debian-hd.img" +linux ubd0=/dev/loop0 init=/sbin/cinit "$@" + +Offset was taken from fdisk: + +[19:22] denkbrett:emu# fdisk -l -u /dev/sda + +Disk /dev/sda: 80.0 GB, 80026361856 bytes +255 heads, 63 sectors/track, 9729 cylinders, total 156301488 sectors +Units = sectors of 1 * 512 = 512 bytes +Disk identifier: 0x1669c708 + + Device Boot Start End Blocks Id System +/dev/sda1 63 19535039 9767488+ 83 Linux +/dev/sda2 19535040 23438834 1951897+ 82 Linux swap / Solaris +/dev/sda3 23438835 156296384 66428775 83 Linux + +===> 63*512bytes spaeter beginnt sda1 + +[19:23] denkbrett:~% echo 512\*63 |bc -l +32256 + +Results in losetup -o 32256 /dev/loop0 ./debian-hd.img + +Scripts from the nsbin project (lo-*) can be used. +It can be found at http://unix.schottelius.org/cgi-bin/gitweb.cgi. +-------------------------------------------------------------------------------- diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/README new file mode 100644 index 00000000..f803f9b5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/README @@ -0,0 +1 @@ +This directory contains example configurations. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/README new file mode 100644 index 00000000..a862330c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/README @@ -0,0 +1 @@ +Example configurations for cinit-0.3. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/README new file mode 100644 index 00000000..0b059353 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/README @@ -0,0 +1,5 @@ +This directory contains configuration examples from +'denkbrett' which is Nico Schottelius' main notebook. + +It's a x86 Linux notebook, so x86 and Linux specific +services will be loaded (like acpid, udev). diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-1.tar.bz2 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-1.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..22889cc0289dcd5c77fe48ad0aa54ec9a53a6242 GIT binary patch literal 1153 zcmV-{1b+KMT4*^jL0KkKS=9csdjJQrf2Yro06=&b|NsBrKfwR*-|zqd2mpW*01y!v zPz4*)v!^!0pu?txXkwa^6g1N{4FCWQ01s2t4^fGsp^y(ruuB_GKWO%t|Z;+VQV=9|9r&SX&+&Qb_p^gLgW!-gY<`e`1;)7e^FklAGDF+!`tScObhnuLvwoRWk?qWRbP&XOmRUTjwHkpkQ)>}laCw60yn-G$1v}Krwua# zW+LMCAlbKA)x?Z6wK+i=!b>AE*`l+o5)&nD(AF80f~ZQ2!lh`|QBv*Q8qFL-TEal) z3P>WOc&y@XSt~)3TW!Mbu`5jra&GUNToTka?{MUN8HTvJ+(Qy&QJZLLnM7tlhcrKY zJNQZA03OsoEE@dsA0gxz=MIuC#0G6TAEF!9+A}jl-P)(6c;ecA*qVw5VXq8+iE9@@|lRb>EkyMI6E7MjJ zO-2Waoe+@}kQ7%A0)zw#=_f5*-6C(AYnDZMQE*pvPTS%^5E*uk37hoJX18(}Ex16! zLZQ1c+lm4`TzFcBJqK~15YKPFU9N`Np8C*ZM^9VOUP%yXEG5~vCWEgP6jBmvV!$J0 zk=1Nven>zXa=jQ?3Z~7bS;bRGcA*^)ytNi&)#FSK`Oq!vqQmMYwNJBYk?aEIQl8rXp6G;UEM+7M_ z#_C*iMQYq&vf6=nIA6DArE4^KI{+_xe=ufd9M~sgIycdcQCcEM8H8vosH=oB!X&tb Tam&z(ANaeHDZ+$?r}dlI7~Toh literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-1.tar.bz2.README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-1.tar.bz2.README new file mode 100644 index 00000000..e0582b25 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-1.tar.bz2.README @@ -0,0 +1 @@ +shell running, getty missing diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-2.tar.bz2 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-2.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..bc129f7256ea62d55410e335ecc1ea3d655c3362 GIT binary patch literal 1170 zcmV;D1a135T4*^jL0KkKS+K84)c^01y!v zPz4*&VUhqc*=$yXk^)o6(1xa))IBNbGz|a@)EiN>ni?L7p!Gcv=8YN}VF1$tX`l>- zh9C_XjSLZx0U;)Z2%1eA8U~M35C8xJMu5-&0OpMv8ess_0%@QOhK3*w7>x`OkO2~u zWig~Dl=hH%kTd`TLrn&N2AU601Jv(=M||_=*x%RJ?vFCN5Tgp@2~|c+5jIDdRb78l z{d`{QgysTiDp4XCfZ2BX@&t+|KVdSnoKt<}Qn@UT)*XS((@|o)nvH5;vk!10;qcP!xiRa47*o zfPikcY%kG*?Rg!h3%NUr zq>Nw*8R&*I@)JsAKoS^W1dN9R{T=+8nQ}vk?spzoW%}m$@O&uceyq7)$;X+wDfw3! zLRfe~0Bz%NfOUg}JT_X@ZPJm$DF z6|!vlFLM#+XC3rojp#^+92>Im>Xta+nR3QwI5(YQvu?Vi#y6~xSgkVytO_4V$44CA zxKn&Hc;_AQHsPjVOvGDykZjwmYZplt($wYzUJ_XumdzENV33)ux*EeWkW~p$m{hGA z$|_yEqgkVfYgkAe!9a+p-YYnpmP*iMmfLWIu zB+8>%VpW2~ur!0lYrt#C?8lh^Ix+3XH=2XMa1<59aPN13s*C5|1u!jWQ+?s%IlJTu zH&F6;bYT@Dp@6(_6+fw5|y7RYWphyE{s;tg6`?sQ2~@FZB?&@nTcSE2u#Pk(+kNW4JCxT zdxB^?Sfar+VJ#%Yg{Y2P65B080g~Ghi$DR`+bz}r9D$xAuJsovDVn+fLfuf@fqKrE zDVV-~0Z0~MiKA6^vh5d0RzV|yfv(t`jWrYt!G7^|a5>265-?x{b-KU{eiQ_Tb5q-t zo+T|HNhJmVmyt{&rSR3oRwHIsfr!SZSdde)6@~ literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-2.tar.bz2.README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-2.tar.bz2.README new file mode 100644 index 00000000..b5a39918 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-2.tar.bz2.README @@ -0,0 +1,3 @@ +getty on tty2 running, but displays +"Unable to determine your tty name". +Possibly problem with empty /dev. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-3.tar.bz2 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-3.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..2b1bc744ce94825db2972f74843a9ab9ffd315c3 GIT binary patch literal 1324 zcmV+{1=IRMT4*^jL0KkKS%@`N$^Z#(f2Yro06=&b|NsBrf8hWB-|zqd2mpW(01_FP zPzBr2vbCl(0vI4DNg*^7Oo^itQ_%G$fIUEH(-2}AG->J$s2M#?sBmN&Gy#)LLrn%j zh+zXjXvD;5002s45hWU#r~#p%^#A|>13+kK000~r28{q@(-6}^kYX4>&>Ar@8UO$h zB{UFCDdwsAC#i&n6KzlfA?iIr>HyFKKnJPX2qUz4N&QK7d#=E{IDOT9ZAoT=TLw(b zY@xChFomzezcSb#caujlK6s~LfFl&*Nftp6xxxT|zZ;{V=!ej!pDEpRt5}=F@YUe! zT5{B@D>RW}g&Iu`FqG46CWav~!)><2lJ5Y5HFjwvuXR?fr+S*S)ZElu(RYh6%eunf zSghhil7T3d15gPlCQ-< z#t=(v=YVCtWLiI#6@J?-OL9XDU0t*iA!3+3Lv73?DUo{Yg;YL7!{U`FA;(mXV(7R~ z%NY@!O}K5g=bY;E)n-j$7sfGtET9umTd&I&h{OdfaWP zPbG3j5x!~9x(Oh^j}fy32z$pQJrHeuc^)T(2VMrEA`ELM8os$XD4K3hN89xXpF5@y zM)>1{mtl>Ma6~A?F2lTbiz2j46K>Tef|QMmnZZg5?VNnv)mL(kI9*RBBWfW)g7-k< zmTIwOkkEme15ME0gHVu#t)Q`{ou?AZ*2`&pw{Duu*~^LQa>~ubL^7zOmGC!gni*;> z22-06l}6lVnK^Pg>W=Sv(*lhup*kV_=PNXF)>jgj89Z|gxi;evQ4+@*7TD5+ZO!Vg zNG(KZ^vHqTKo}zuhl=EuJDs9L6pfG*AQEFG@mn{b);lXyu@Y>>M>6RK_k;tjtyB>d z7IAKEym4clL}2REE?T0g%_+-(G_rE{t;B8cuY_t&ON3I2`5U!C~V7?d>O?U0#OzL<^2$)Kw<3P z$CO2qBLlFJ>a1F_q~ryUTNc^C%#B<|(kQuEKE&)LN>ft8VK4%+$_KKSDaWIY z4Pih{dITcSBJJil^#U&dcA_Syw1#lu1a>&kggC4m@h;pNeIQ3+dHaGe4LRa@bs?8; zUelUG5-A+RfYMi(=}r#I6c;6~Ib0|;6)ps9SOM3p1u$ literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-3.tar.bz2.README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-3.tar.bz2.README new file mode 100644 index 00000000..9f87a662 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-3.tar.bz2.README @@ -0,0 +1,2 @@ +Added fsck for root filesystem +and added (currently) unneeded /proc service. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-4.tar.bz2 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-4.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..31a73e9a586016450509abba8f1cf5ebcfe473fa GIT binary patch literal 1354 zcmV-Q1-1G@T4*^jL0KkKS*#IEX8;Muf2Yro06=&b|NsBrf8hWB-|zqd2mpW(05BPt zPzD>&vaPjX0Sr_Ggpy4%O*CmSF*M3~CYm0TKxk+KY8fJ6wKqtxE0aAX=Z0h3Ha zO$I@TVFN&D#KdR-07_&LB$}9j00*c500x6i28MtD0l|=H&<0I04Kx`BA%qP9qZ1LJ z009zHK{Yhcr|O@oey6EDJt)%=wE$!`lhhud4FF^SY1$$P?H*!(QeB?wt}f0Wbzgz5 z!A2VjY#B2#!9_9^FEOJ0F|W|JC*R`Jy&lM?l)zDnZ3uu+5W8|B0s{P=j)S5fLY}PF zIhy9JVs8_}SA(5R)|D(PG?8M38chx`l+$e}LKAS?ZLuVqOT7q!HFRktvvpTA?x#~& znwy%7nlABXIcZ&CZ^0`#ktCo>B?Ukvk;*oSP%|)1*eR7OYC08i^{l&;g3ziZLvA(oldP);@&*je^Zcb@ob@m_0kCC=$<)&CZ7mKx=c?1GCZRMlUvI#^+lF;A2`b0tIv z3Y^-lJfY+|ZjVph^`a-x=@A5PjyN#o*OAPUzy%nE*LRN5a8`+eZQ7*JQjxK9xG6zh zvyYpes@?FB!s+>N8&L>^7aYKnTH#3~By#|5063I$q8btrRUybmns%H^FI?2FX}-o& zrn5G3;(C0tvt$6uqK;R<-Lhz9sI(bQY(`ZZaLm&rteGxvs65T)m=tMM3DghgIXg6R z)mIXi89Z~0xi;evR1(J;7TCmuZO!VgNG%bk(jo_SqyeOqX()PGB(db}5+I~%0GR-) z7EL}cd)R9om8w{YHe#cla|ZX21KsJDU;rT=P+h-W2FUhrpzZjn2>`BodLiG= zgLaA4a2+Q}N(Twi)!^s@3Pa`h#T^J>g>=1NiQGO0B#@q>8!}E=@a6)+5{R%5CyhBd z4t@X^NY%y3A{}g0x`vWQW@pO|+(?OFXxR!8I;~A}mIT65P9NlL*61i(ALN?|H9_U-{|mX=BjUNaZ6{a}j#*fnr8R!+RVD7=}nG3})WYi2vg5 MNT&)C6@n>@;0J(LSpWb4 literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-4.tar.bz2.README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-4.tar.bz2.README new file mode 100644 index 00000000..3f43b0d9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-4.tar.bz2.README @@ -0,0 +1,2 @@ +Added needs /proc to getty/1 and 2. +Now we can login through getty! diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-5.tar.bz2 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070423-5.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..9a490a3272a5a2be714c62af758906ffa649c9f9 GIT binary patch literal 1477 zcmV;$1v>gdT4*^jL0KkKSubleMgR)k|EJH806=&b|NsBrf8hWB-|zqd2mpXE01z3N zU#)SjZQ$X~dqd+uhY3Vfdng)YF(ds``I5G_y0Li8y zrh_2FFoB>nVq!D^03|XLNg+Xy0B8(=000d%G&BGJ4h(}vfHG-_X`sk43?OI?7?_O! z02~SZ8$JxW~yw3^t3N&sCY=%tCXU`?&nF~w|sKXqqFF}4s;pfxLFI@-LV2Z$a zNfd}pXbOe>o{oc|u8C`IT~(tSt#$X^hB&3-cwOkawK+P)D+W{2CT87S?dsju?yWIR%|*=@dPcP6%Xc@-3@euWaqUJCt~~oi z;?0^A#vtHdoQsC@HieGkxFtMXC~cPy>G19hNY>@WG$w&a7&L@ z9A$NR?{UCW4fS zp?1y+P+||Cqd2`zsUw7H?WvRk3T_KFsiO|t+lVgjgG=CYR;x!h)lWo0cQP0G@7(7A(q&<3Y^mR-O> zVEEIWH?Af$O>7KzMYN=r)fG&UntS4<}E63^zcqo?oOo zQC$LLg?z7<@;gU~gCr+$4<8O>*`7TLtUzds0QGuPUbEWRRdkJ5vRNy1RXT=y*_ok| zQ*KU9B^uD_?*-IBTvqC!_Dot5eZed%l%W>UlB~9u4YXfG$ZfCI1Dl%9+yK_VGXWM4 z^DJeKRx+`ZnOb6=M3InH*U{P$nkdBVW*_#@@nW>8&u5!VppiKGh5&XGKGvf@Hh8YW z=FJ8SL3-V6=RCnsJATF|VjLq2^P#J>Y&Zf6z$97}1B;a59KdQ618g`Vrpv-6 zfHu)x=NeFk{lV3Vw{Z7B+4fOg;{*3aU>bBp^=cC?J?g68LF{YY*ZqQnA7(u5W86WAHJ9-f)`2cW f=9X@Y3TWYZ%P(meo;sM8Q(G#-=G8e|BR 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 b%|-#H?GhE7)~%pXKjQ94rwS4sR3uJ7kx>-t literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070424-1.tar.bz2.README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070424-1.tar.bz2.README new file mode 100644 index 00000000..6e166f28 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070424-1.tar.bz2.README @@ -0,0 +1,2 @@ +Added acpid, removed luksopen currently from the dependency +list. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070424-2.tar.bz2 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070424-2.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..7af7167ff29c95e265fcf98a7089f862b3f3b4f2 GIT binary patch literal 2376 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 MBAh5lZ|F*109duasQ>@~ literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070425-1.tar.bz2.README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070425-1.tar.bz2.README new file mode 100644 index 00000000..0fa9cf4f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070425-1.tar.bz2.README @@ -0,0 +1,3 @@ +Added two more getties: getty/3 and getty/4 and added +them to init/needs. And yes, this configuration is in +use on my production system :-) diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070503-01.tar.bz2 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070503-01.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..f91c0c58d0a711893426b3bac71405f502bf6bd6 GIT binary patch literal 3388 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 S{1rhBad#wBg$V$g+8&Vjp!N3v literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070503-01.tar.bz2.README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070503-01.tar.bz2.README new file mode 100644 index 00000000..80b538b3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070503-01.tar.bz2.README @@ -0,0 +1,3 @@ +Added unicode_start/stop and made it wants for gettys. +Added the sys-v-init-udev-script to init/wants, I am currently +to lazy to reimplement the whole udev bunch. Anyone else? ;-) diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070503-02.tar.bz2 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070503-02.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..98454c867b29e0391a26553aedf8915fcec75e3c GIT binary patch literal 3388 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 SduoCj;_gVN3K9o0La6{5!4~%b literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070503-02.tar.bz2.README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070503-02.tar.bz2.README new file mode 100644 index 00000000..78e81d56 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070503-02.tar.bz2.README @@ -0,0 +1 @@ +Sleep before kill decreased to 2. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070717-1.tar.bz2 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070717-1.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..1880c52d029bb9ec6d0c90457f553e993e794c20 GIT binary patch literal 3910 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 JBm{el{=g6ZbDIDF literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070831-2.tar.bz2.README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070831-2.tar.bz2.README new file mode 100644 index 00000000..3493ca3d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070831-2.tar.bz2.README @@ -0,0 +1 @@ +- Added dmesg -n1 so there's less noise on startup. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070901-1.tar.bz2 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070901-1.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..8df7a9c952bac25de1c857b15fa97384af4a9f7a GIT binary patch literal 4261 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 HUI9{YcO|v$ literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070901-1.tar.bz2.README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070901-1.tar.bz2.README new file mode 100644 index 00000000..cb6f8d8e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070901-1.tar.bz2.README @@ -0,0 +1,7 @@ +- Added needs: + unicode / console: /proc + udev: /proc + syslog-ng: mount/root + +- fixed mount/root/fsck: missed "then" + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070901-2.tar.bz2 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070901-2.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..33f75a620d1460b9410e8bcfb113b0bdffdf8b4c GIT binary patch literal 4468 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 I19r%p06^gTi~s-t literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070906-1.tar.bz2.README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070906-1.tar.bz2.README new file mode 100644 index 00000000..650274b7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070906-1.tar.bz2.README @@ -0,0 +1,2 @@ +Add TERM=linux to console-unicode and also depend it on udev so +devices are existing. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070909-1.tar.bz2 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070909-1.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..d8c7dd55161d25f69c1547828b15a6530dcc2c94 GIT binary patch literal 4525 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 LML1B9%B1{*gPs3- literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070909-1.tar.bz2.README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070909-1.tar.bz2.README new file mode 100644 index 00000000..f6d5eb89 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/denkbrett-20070909-1.tar.bz2.README @@ -0,0 +1 @@ +acpid needs to write to /var/run! diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/last b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/last new file mode 100755 index 00000000..f722a251 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/last @@ -0,0 +1,6 @@ +#!/bin/sh +umount -a +sync +# report, there should be nothing left +ps axuwww +umount -a diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/last.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/last.params new file mode 100755 index 00000000..ec169e3c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/last.params @@ -0,0 +1,3 @@ +#!/bin/sh +echo "This is the last command executed" +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/sleep_before_kill b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/sleep_before_kill new file mode 100644 index 00000000..7ed6ff82 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/sleep_before_kill @@ -0,0 +1 @@ +5 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/sleep_before_kill.README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/sleep_before_kill.README new file mode 100644 index 00000000..e9d11095 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/conf/sleep_before_kill.README @@ -0,0 +1,2 @@ +Test with 30 seconds sleep, that is really enough to see if it differs from +builtin 2 seconds. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/needs/keyboard b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/needs/keyboard new file mode 120000 index 00000000..d34736ff --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/needs/keyboard @@ -0,0 +1 @@ +../.././../local-tuning/keyboard \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/needs/mount-root b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/needs/mount-root new file mode 120000 index 00000000..5254b0c5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/needs/mount-root @@ -0,0 +1 @@ +/etc/cinit/svc/mount/root \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/needs/proc b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/needs/proc new file mode 120000 index 00000000..d9ee6dd9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/needs/proc @@ -0,0 +1 @@ +../../../mount/proc \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/on new file mode 120000 index 00000000..43d48c29 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/on @@ -0,0 +1 @@ +/sbin/getty \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/on.env b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/on.env new file mode 100644 index 00000000..a7a61938 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/on.env @@ -0,0 +1 @@ +TERM=linux diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/on.params new file mode 100644 index 00000000..db1290b9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/on.params @@ -0,0 +1,2 @@ +38400 +tty1 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/respawn b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/respawn new file mode 100644 index 00000000..e69de29b diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/wants/console-unicode b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/wants/console-unicode new file mode 120000 index 00000000..6d239a86 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/wants/console-unicode @@ -0,0 +1 @@ +../../../local-tuning/console-unicode \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/wants/hostname b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/wants/hostname new file mode 120000 index 00000000..0daec325 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/1/wants/hostname @@ -0,0 +1 @@ +../../../network/hostname \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/needs/keyboard b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/needs/keyboard new file mode 120000 index 00000000..d34736ff --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/needs/keyboard @@ -0,0 +1 @@ +../.././../local-tuning/keyboard \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/needs/mount-root b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/needs/mount-root new file mode 120000 index 00000000..5254b0c5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/needs/mount-root @@ -0,0 +1 @@ +/etc/cinit/svc/mount/root \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/needs/proc b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/needs/proc new file mode 120000 index 00000000..d9ee6dd9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/needs/proc @@ -0,0 +1 @@ +../../../mount/proc \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/on new file mode 120000 index 00000000..43d48c29 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/on @@ -0,0 +1 @@ +/sbin/getty \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/on.env b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/on.env new file mode 100644 index 00000000..a7a61938 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/on.env @@ -0,0 +1 @@ +TERM=linux diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/on.params new file mode 100644 index 00000000..bc8c9b28 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/on.params @@ -0,0 +1,2 @@ +38400 +tty2 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/respawn b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/respawn new file mode 100644 index 00000000..e69de29b diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/wants/console-unicode b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/wants/console-unicode new file mode 120000 index 00000000..6d239a86 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/wants/console-unicode @@ -0,0 +1 @@ +../../../local-tuning/console-unicode \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/wants/hostname b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/wants/hostname new file mode 120000 index 00000000..0daec325 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/2/wants/hostname @@ -0,0 +1 @@ +../../../network/hostname \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/needs/keyboard b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/needs/keyboard new file mode 120000 index 00000000..d34736ff --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/needs/keyboard @@ -0,0 +1 @@ +../.././../local-tuning/keyboard \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/needs/mount-root b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/needs/mount-root new file mode 120000 index 00000000..5254b0c5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/needs/mount-root @@ -0,0 +1 @@ +/etc/cinit/svc/mount/root \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/needs/proc b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/needs/proc new file mode 120000 index 00000000..d9ee6dd9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/needs/proc @@ -0,0 +1 @@ +../../../mount/proc \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/on new file mode 120000 index 00000000..43d48c29 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/on @@ -0,0 +1 @@ +/sbin/getty \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/on.env b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/on.env new file mode 100644 index 00000000..a7a61938 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/on.env @@ -0,0 +1 @@ +TERM=linux diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/on.params new file mode 100644 index 00000000..7efd5e45 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/on.params @@ -0,0 +1,2 @@ +38400 +tty3 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/respawn b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/respawn new file mode 100644 index 00000000..e69de29b diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/wants/console-unicode b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/wants/console-unicode new file mode 120000 index 00000000..6d239a86 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/wants/console-unicode @@ -0,0 +1 @@ +../../../local-tuning/console-unicode \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/wants/hostname b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/wants/hostname new file mode 120000 index 00000000..0daec325 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/3/wants/hostname @@ -0,0 +1 @@ +../../../network/hostname \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/needs/keyboard b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/needs/keyboard new file mode 120000 index 00000000..d34736ff --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/needs/keyboard @@ -0,0 +1 @@ +../.././../local-tuning/keyboard \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/needs/mount-root b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/needs/mount-root new file mode 120000 index 00000000..5254b0c5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/needs/mount-root @@ -0,0 +1 @@ +/etc/cinit/svc/mount/root \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/needs/proc b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/needs/proc new file mode 120000 index 00000000..d9ee6dd9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/needs/proc @@ -0,0 +1 @@ +../../../mount/proc \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/on new file mode 120000 index 00000000..43d48c29 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/on @@ -0,0 +1 @@ +/sbin/getty \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/on.env b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/on.env new file mode 100644 index 00000000..a7a61938 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/on.env @@ -0,0 +1 @@ +TERM=linux diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/on.params new file mode 100644 index 00000000..47e2d7a7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/on.params @@ -0,0 +1,2 @@ +38400 +tty4 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/respawn b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/respawn new file mode 100644 index 00000000..e69de29b diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/wants/console-unicode b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/wants/console-unicode new file mode 120000 index 00000000..6d239a86 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/wants/console-unicode @@ -0,0 +1 @@ +../../../local-tuning/console-unicode \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/wants/hostname b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/wants/hostname new file mode 120000 index 00000000..0daec325 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/getty/4/wants/hostname @@ -0,0 +1 @@ +../../../network/hostname \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/acpid b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/acpid new file mode 120000 index 00000000..88098497 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/acpid @@ -0,0 +1 @@ +../../local-services/acpid \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/eth0.dhcp b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/eth0.dhcp new file mode 120000 index 00000000..8d2c9b8d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/eth0.dhcp @@ -0,0 +1 @@ +../../network/eth0.dhcp \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/getty-2 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/getty-2 new file mode 120000 index 00000000..92f3bf2f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/getty-2 @@ -0,0 +1 @@ +../../getty/2 \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/getty-3 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/getty-3 new file mode 120000 index 00000000..9c0aeaed --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/getty-3 @@ -0,0 +1 @@ +../../getty/3 \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/getty-4 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/getty-4 new file mode 120000 index 00000000..7b967eed --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/getty-4 @@ -0,0 +1 @@ +../../getty/4 \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/keyboard b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/keyboard new file mode 120000 index 00000000..c4488690 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/keyboard @@ -0,0 +1 @@ +../../local-tuning/keyboard \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/loopback b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/loopback new file mode 120000 index 00000000..69fe6f89 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/loopback @@ -0,0 +1 @@ +../../network/loopback \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/rescue-shell b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/rescue-shell new file mode 120000 index 00000000..be06dd0a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/rescue-shell @@ -0,0 +1 @@ +../../rescue-shell \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/sysfs b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/sysfs new file mode 120000 index 00000000..67c524a9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/needs/sysfs @@ -0,0 +1 @@ +../../mount/sysfs \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/on new file mode 120000 index 00000000..7bbf7ccd --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/on @@ -0,0 +1 @@ +/bin/echo \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/on.params new file mode 100644 index 00000000..6e271318 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/on.params @@ -0,0 +1 @@ +*** cinit successfully started *** diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/wants/quiet-kernel b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/wants/quiet-kernel new file mode 120000 index 00000000..8da32e9b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/wants/quiet-kernel @@ -0,0 +1 @@ +../../local-tuning/quiet-kernel \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/wants/udev b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/wants/udev new file mode 120000 index 00000000..9dfe9879 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/init/wants/udev @@ -0,0 +1 @@ +../../local-tuning/udev \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/README new file mode 100644 index 00000000..d5190e7e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/README @@ -0,0 +1 @@ +Load acpi drivers before we are started. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/needs/acpi b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/needs/acpi new file mode 120000 index 00000000..888ba93b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/needs/acpi @@ -0,0 +1 @@ +../../../local-tuning/drivers/acpi \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/needs/proc b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/needs/proc new file mode 120000 index 00000000..d9ee6dd9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/needs/proc @@ -0,0 +1 @@ +../../../mount/proc \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/needs/root b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/needs/root new file mode 120000 index 00000000..b46717bb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/needs/root @@ -0,0 +1 @@ +../../../mount/root \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/on new file mode 120000 index 00000000..43369f77 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/on @@ -0,0 +1 @@ +/usr/sbin/acpid \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/on.params new file mode 100644 index 00000000..105c5f3d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/on.params @@ -0,0 +1 @@ +-f diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/respawn b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/acpid/respawn new file mode 100644 index 00000000..e69de29b diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/metalog/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/metalog/README new file mode 100644 index 00000000..628fab6a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/metalog/README @@ -0,0 +1,2 @@ +Metalog is a smart syslogd replacement and it does not fork +normally. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/metalog/needs/root b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/metalog/needs/root new file mode 120000 index 00000000..b46717bb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/metalog/needs/root @@ -0,0 +1 @@ +../../../mount/root \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/metalog/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/metalog/on new file mode 120000 index 00000000..54fdda86 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/metalog/on @@ -0,0 +1 @@ +/usr/sbin/metalog \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/needs/clean-dev-log b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/needs/clean-dev-log new file mode 120000 index 00000000..515549d6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/needs/clean-dev-log @@ -0,0 +1 @@ +../../../local-tuning/clean-dev-log \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/needs/root b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/needs/root new file mode 120000 index 00000000..b46717bb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/needs/root @@ -0,0 +1 @@ +../../../mount/root \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/on new file mode 120000 index 00000000..099ec19b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/on @@ -0,0 +1 @@ +/sbin/syslog-ng \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/on.params new file mode 100644 index 00000000..ee1f6c5c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/on.params @@ -0,0 +1 @@ +-F diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/respawn b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-services/syslog-ng/respawn new file mode 100644 index 00000000..e69de29b diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/README new file mode 100644 index 00000000..dd8ef91c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/README @@ -0,0 +1,5 @@ +Remove /dev/log from previous run, so syslog* (syslog-ng,metalog,syslogd) +can start. + +We're directly needed by the syslog variants, so if they are +not started, we are not started. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/needs/root b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/needs/root new file mode 120000 index 00000000..b46717bb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/needs/root @@ -0,0 +1 @@ +../../../mount/root \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/on new file mode 120000 index 00000000..3530dc46 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/on @@ -0,0 +1 @@ +/bin/rm \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/on.params new file mode 100644 index 00000000..6d8ffbb5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-dev-log/on.params @@ -0,0 +1,2 @@ +-f +/dev/log diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/README new file mode 100644 index 00000000..20ff9536 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/README @@ -0,0 +1 @@ +Remove the /etc/mtab, so it's in a clean state. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/needs/root-mount b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/needs/root-mount new file mode 120000 index 00000000..b46717bb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/needs/root-mount @@ -0,0 +1 @@ +../../../mount/root \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/on new file mode 120000 index 00000000..3530dc46 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/on @@ -0,0 +1 @@ +/bin/rm \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/on.params new file mode 100644 index 00000000..fceff107 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/clean-mtab/on.params @@ -0,0 +1,2 @@ +-f +/etc/mtab diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/README new file mode 100644 index 00000000..fa12de87 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/README @@ -0,0 +1 @@ +Enable unicode on the Linux console. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/needs/proc b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/needs/proc new file mode 120000 index 00000000..d9ee6dd9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/needs/proc @@ -0,0 +1 @@ +../../../mount/proc \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/needs/udev b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/needs/udev new file mode 120000 index 00000000..45ebbd7c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/needs/udev @@ -0,0 +1 @@ +../../udev/ \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/off b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/off new file mode 120000 index 00000000..d1b3dabc --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/off @@ -0,0 +1 @@ +/usr/bin/unicode_stop \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/on new file mode 120000 index 00000000..1a8ea15c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/on @@ -0,0 +1 @@ +/usr/bin/unicode_start \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/on.env b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/on.env new file mode 100644 index 00000000..a7a61938 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/console-unicode/on.env @@ -0,0 +1 @@ +TERM=linux diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/cpufreq_ondemand/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/cpufreq_ondemand/on new file mode 120000 index 00000000..722ec623 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/cpufreq_ondemand/on @@ -0,0 +1 @@ +/sbin/modprobe \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/cpufreq_ondemand/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/cpufreq_ondemand/on.params new file mode 100644 index 00000000..6999c48d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/cpufreq_ondemand/on.params @@ -0,0 +1 @@ +cpufreq_ondemand diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/needs/cpufreq_ondemand b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/needs/cpufreq_ondemand new file mode 120000 index 00000000..8d465d25 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/needs/cpufreq_ondemand @@ -0,0 +1 @@ +../cpufreq_ondemand \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/needs/speedstep-centrino b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/needs/speedstep-centrino new file mode 120000 index 00000000..7a81f768 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/needs/speedstep-centrino @@ -0,0 +1 @@ +../speedstep-centrino \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/needs/sysfs b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/needs/sysfs new file mode 120000 index 00000000..abdd5e9c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/needs/sysfs @@ -0,0 +1 @@ +../../../mount/sysfs \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/on new file mode 100755 index 00000000..9ded0cc1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/on @@ -0,0 +1,2 @@ +#!/bin/sh +echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/speedstep-centrino/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/speedstep-centrino/on new file mode 120000 index 00000000..722ec623 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/speedstep-centrino/on @@ -0,0 +1 @@ +/sbin/modprobe \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/speedstep-centrino/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/speedstep-centrino/on.params new file mode 100644 index 00000000..b0daf284 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/cpufreq/speedstep-centrino/on.params @@ -0,0 +1 @@ +speedstep-centrino diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/aes/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/aes/on new file mode 120000 index 00000000..722ec623 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/aes/on @@ -0,0 +1 @@ +/sbin/modprobe \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/aes/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/aes/on.params new file mode 100644 index 00000000..9ccaeece --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/aes/on.params @@ -0,0 +1 @@ +aes diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/dm_crypt/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/dm_crypt/on new file mode 120000 index 00000000..722ec623 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/dm_crypt/on @@ -0,0 +1 @@ +/sbin/modprobe \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/dm_crypt/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/dm_crypt/on.params new file mode 100644 index 00000000..d2a85215 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/crypto/dm_crypt/on.params @@ -0,0 +1 @@ +dm_crypt diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ac/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ac/README new file mode 100644 index 00000000..a8b1c282 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ac/README @@ -0,0 +1 @@ +Support for acpi ac information. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ac/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ac/on new file mode 120000 index 00000000..722ec623 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ac/on @@ -0,0 +1 @@ +/sbin/modprobe \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ac/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ac/on.params new file mode 100644 index 00000000..a9eb3bbf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ac/on.params @@ -0,0 +1 @@ +ac diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/battery/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/battery/README new file mode 100644 index 00000000..448a4a0b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/battery/README @@ -0,0 +1 @@ +Support for acpi battery information. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/battery/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/battery/on new file mode 120000 index 00000000..722ec623 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/battery/on @@ -0,0 +1 @@ +/sbin/modprobe \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/battery/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/battery/on.params new file mode 100644 index 00000000..37ac71bf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/battery/on.params @@ -0,0 +1 @@ +battery diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/button/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/button/README new file mode 100644 index 00000000..bda85f4c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/button/README @@ -0,0 +1 @@ +Support for acpi buttons. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/button/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/button/on new file mode 120000 index 00000000..722ec623 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/button/on @@ -0,0 +1 @@ +/sbin/modprobe \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/button/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/button/on.params new file mode 100644 index 00000000..ef3f216a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/button/on.params @@ -0,0 +1 @@ +button diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/fan/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/fan/README new file mode 100644 index 00000000..d9ad05c2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/fan/README @@ -0,0 +1 @@ +Support for acpi fans. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/fan/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/fan/on new file mode 120000 index 00000000..722ec623 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/fan/on @@ -0,0 +1 @@ +/sbin/modprobe \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/fan/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/fan/on.params new file mode 100644 index 00000000..6de1f525 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/fan/on.params @@ -0,0 +1 @@ +fan diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ibm_acpi/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ibm_acpi/README new file mode 100644 index 00000000..ff0f6f4a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ibm_acpi/README @@ -0,0 +1 @@ +Extra functionality for my ibm t60. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ibm_acpi/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ibm_acpi/on new file mode 120000 index 00000000..722ec623 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ibm_acpi/on @@ -0,0 +1 @@ +/sbin/modprobe \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ibm_acpi/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ibm_acpi/on.params new file mode 100644 index 00000000..80916c68 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/ibm_acpi/on.params @@ -0,0 +1 @@ +ibm_acpi diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/ac b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/ac new file mode 120000 index 00000000..4d2aefc1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/ac @@ -0,0 +1 @@ +../ac \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/battery b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/battery new file mode 120000 index 00000000..990e6bcd --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/battery @@ -0,0 +1 @@ +../battery \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/button b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/button new file mode 120000 index 00000000..b99dcf7c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/button @@ -0,0 +1 @@ +../button \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/fan b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/fan new file mode 120000 index 00000000..7923f9b5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/fan @@ -0,0 +1 @@ +../fan \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/ibm_acpi b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/ibm_acpi new file mode 120000 index 00000000..d32add47 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/ibm_acpi @@ -0,0 +1 @@ +../ibm_acpi \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/thermal b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/thermal new file mode 120000 index 00000000..f2d6718c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/needs/thermal @@ -0,0 +1 @@ +../thermal \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/thermal/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/thermal/README new file mode 100644 index 00000000..da0b9c13 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/thermal/README @@ -0,0 +1 @@ +Support for acpi thermal information: temperature and fans. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/thermal/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/thermal/on new file mode 120000 index 00000000..722ec623 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/thermal/on @@ -0,0 +1 @@ +/sbin/modprobe \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/thermal/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/thermal/on.params new file mode 100644 index 00000000..a175d50f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/acpi/thermal/on.params @@ -0,0 +1 @@ +thermal diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/eth0/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/eth0/on new file mode 120000 index 00000000..722ec623 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/eth0/on @@ -0,0 +1 @@ +/sbin/modprobe \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/eth0/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/eth0/on.params new file mode 100644 index 00000000..9f318065 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/drivers/eth0/on.params @@ -0,0 +1 @@ +e1000 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/keyboard/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/keyboard/on new file mode 120000 index 00000000..a5ce029b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/keyboard/on @@ -0,0 +1 @@ +/bin/loadkeys \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/keyboard/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/keyboard/on.params new file mode 100644 index 00000000..1c96d177 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/keyboard/on.params @@ -0,0 +1 @@ +us diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/quiet-kernel/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/quiet-kernel/on new file mode 120000 index 00000000..09bd56b7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/quiet-kernel/on @@ -0,0 +1 @@ +/bin/dmesg \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/quiet-kernel/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/quiet-kernel/on.params new file mode 100644 index 00000000..d22a4869 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/quiet-kernel/on.params @@ -0,0 +1 @@ +-n1 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/udev/needs/proc b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/udev/needs/proc new file mode 120000 index 00000000..d9ee6dd9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/udev/needs/proc @@ -0,0 +1 @@ +../../../mount/proc \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/udev/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/udev/on new file mode 120000 index 00000000..1ecced27 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/udev/on @@ -0,0 +1 @@ +/etc/init.d/udev \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/udev/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/udev/on.params new file mode 100644 index 00000000..d44e18fb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/local-tuning/udev/on.params @@ -0,0 +1 @@ +start diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/README new file mode 100644 index 00000000..7d699823 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/README @@ -0,0 +1,3 @@ +Need to load keyboard layout before trying to decrypt. +I also need dm_crypt and the aes module, as both are not +compiled into my kernel. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/needs/aes b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/needs/aes new file mode 120000 index 00000000..15b8e7d6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/needs/aes @@ -0,0 +1 @@ +../../../../local-tuning/crypto/aes \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/needs/dm_crypt b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/needs/dm_crypt new file mode 120000 index 00000000..9066e234 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/needs/dm_crypt @@ -0,0 +1 @@ +../../../../local-tuning/crypto/dm_crypt \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/needs/keyboard b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/needs/keyboard new file mode 120000 index 00000000..34376346 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/needs/keyboard @@ -0,0 +1 @@ +../../../../local-tuning/keyboard \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/on new file mode 100755 index 00000000..a40f7a4f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/luksopen/on @@ -0,0 +1,5 @@ +#!/bin/sh +# read key until success +while true; do + cryptsetup luksOpen /dev/sda3 home && break +done diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/needs/luksopen b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/needs/luksopen new file mode 120000 index 00000000..f0585cf1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/needs/luksopen @@ -0,0 +1 @@ +../luksopen/ \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/on new file mode 120000 index 00000000..fb886059 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/on @@ -0,0 +1 @@ +/bin/mount \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/on.params new file mode 100644 index 00000000..05280cb0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/home.dm_crypt/on.params @@ -0,0 +1 @@ +/home diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/proc/needs/clean-mtab b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/proc/needs/clean-mtab new file mode 120000 index 00000000..0bea57c3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/proc/needs/clean-mtab @@ -0,0 +1 @@ +../../../local-tuning/clean-mtab \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/proc/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/proc/on new file mode 120000 index 00000000..fb886059 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/proc/on @@ -0,0 +1 @@ +/bin/mount \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/proc/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/proc/on.params new file mode 100644 index 00000000..4c3fcfb4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/proc/on.params @@ -0,0 +1 @@ +/proc diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/needs/udev b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/needs/udev new file mode 120000 index 00000000..3d36cb50 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/needs/udev @@ -0,0 +1 @@ +../../../../local-tuning/udev/ \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/on new file mode 100755 index 00000000..ea236360 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/on @@ -0,0 +1,17 @@ +#!/bin/sh +# Wrapper for fsck that returns 1 on success... +# Nico Schottelius +# 2007-05-25 +# for cLinux/cinit + +fsck=/sbin/fsck +dev="$1" + +"$fsck" "$dev" + +# return of 1 == repaired successful +if [ $? -gt 1 ]; then + exit 1 +fi + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/on.old b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/on.old new file mode 120000 index 00000000..2a85786a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/on.old @@ -0,0 +1 @@ +/sbin/fsck.jfs \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/on.params new file mode 100644 index 00000000..90020847 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/fsck/on.params @@ -0,0 +1 @@ +/dev/hda1 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/needs/fsck b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/needs/fsck new file mode 120000 index 00000000..c2e5e63f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/needs/fsck @@ -0,0 +1 @@ +../fsck \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/on new file mode 120000 index 00000000..fb886059 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/on @@ -0,0 +1 @@ +/bin/mount \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/on.params new file mode 100644 index 00000000..6a052263 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/root/on.params @@ -0,0 +1,4 @@ +-n +-o +remount,rw +/ diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/README b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/README new file mode 100644 index 00000000..e01cb66a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/README @@ -0,0 +1 @@ +Udev needs us. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/needs/clean-mtab b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/needs/clean-mtab new file mode 120000 index 00000000..0bea57c3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/needs/clean-mtab @@ -0,0 +1 @@ +../../../local-tuning/clean-mtab \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/on new file mode 120000 index 00000000..fb886059 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/on @@ -0,0 +1 @@ +/bin/mount \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/on.params new file mode 100644 index 00000000..a6b724ca --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/mount/sysfs/on.params @@ -0,0 +1,4 @@ +sysfs +-t +sysfs +/sys diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/needs/load-driver b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/needs/load-driver new file mode 120000 index 00000000..2c9afe03 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/needs/load-driver @@ -0,0 +1 @@ +../../../local-tuning/drivers/eth0 \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/needs/root b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/needs/root new file mode 120000 index 00000000..68ea58e3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/needs/root @@ -0,0 +1 @@ +../../../mount/root/ \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/on new file mode 120000 index 00000000..639430c4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/on @@ -0,0 +1 @@ +/sbin/udhcpc \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/on.params new file mode 100644 index 00000000..5f192cbc --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/on.params @@ -0,0 +1,4 @@ +-f +-n +-i +eth0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/respawn b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/eth0.dhcp/respawn new file mode 100644 index 00000000..e69de29b diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/hostname/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/hostname/on new file mode 120000 index 00000000..5779a119 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/hostname/on @@ -0,0 +1 @@ +/bin/hostname \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/hostname/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/hostname/on.params new file mode 100644 index 00000000..3614fe72 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/hostname/on.params @@ -0,0 +1 @@ +cinit-host diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/loopback/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/loopback/on new file mode 120000 index 00000000..e27843a4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/loopback/on @@ -0,0 +1 @@ +/sbin/ifconfig \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/loopback/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/loopback/on.params new file mode 100644 index 00000000..e58476c5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/network/loopback/on.params @@ -0,0 +1,3 @@ +lo +127.0.0.1 +up diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/remote-services/sshd/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/remote-services/sshd/on new file mode 120000 index 00000000..cf9865a6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/remote-services/sshd/on @@ -0,0 +1 @@ +/usr/sbin/sshd \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/remote-services/sshd/on.params b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/remote-services/sshd/on.params new file mode 100644 index 00000000..eb11be00 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/remote-services/sshd/on.params @@ -0,0 +1 @@ +-D diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/rescue-shell/on b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/rescue-shell/on new file mode 120000 index 00000000..db1611f6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/rescue-shell/on @@ -0,0 +1 @@ +/bin/sh \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/rescue-shell/on.env b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/rescue-shell/on.env new file mode 100644 index 00000000..54ba45f1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/rescue-shell/on.env @@ -0,0 +1,2 @@ +TERM=linux +PATH=/sbin:/bin:/usr/sbin:/usr/bin diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/rescue-shell/respawn b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/etc/cinit/svc/rescue-shell/respawn new file mode 100644 index 00000000..e69de29b diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/rsync b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/rsync new file mode 100755 index 00000000..f9649179 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/rsync @@ -0,0 +1,2 @@ +chmod a+r * +rsync -av ./ nico@home.schottelius.org:unix/cinit/samples/cinit-0.3/denkbrett/ diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/rsync.local b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/rsync.local new file mode 100755 index 00000000..d7ee374b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/rsync.local @@ -0,0 +1,3 @@ +DIR=~nico/projekte/cinit/configs/denkbrett/ +rsync -av ./ "$DIR" +chown nico "$DIR"/* diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/test+conf-last-2007-02-23.tar.bz2 b/software/cinit/browse_source/cinit-0.3pre18/doc/examples/cinit-0.3/denkbrett/test+conf-last-2007-02-23.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..1b760767a6383420bc0a870f57d0299c2393868b GIT binary patch literal 631 zcmV--0*L)WT4*^jL0KkKSy%(qv;YG7f2Yro06=^P|Db*zH30wb-|zqd2mrtU03ZOE zKmuF|#lD+mE7r#y6P zo&UL?o5zb@%i1g+AR#K#LXEqF6jp7`O1e#zSd%Li`0%6kuC zD)kflcKQ{&+IzeW=KrPY!X3xZ?a2h#Cn$G}zPV6v@vj=7e7SrdP z@~EDVsG<6T0IBUAgg{h_0@EuVOcqX%GDad7#d#zN*1Rm}#UOz)`CJ@h zKC_M@hb~X{XDLZE7Iv#aI2GZAb!AAtX+a4?7xzz6^!00=Mv znIHmEDAA#y^#BKNanF^h>LPC;0mEd+h|1uYJ=yD${oOsqw3NqTE?X)r96+^8Z+5GN`Ll~6;vMr*9V zuXN~RAX2e()Y2?|AO+TL&`H{9VZu;X*@0U#HB5N2rVd literal 0 HcmV?d00001 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/gpl3-header.c b/software/cinit/browse_source/cinit-0.3pre18/doc/gpl3-header.c new file mode 100644 index 00000000..d8030109 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/gpl3-header.c @@ -0,0 +1,25 @@ +/******************************************************************************* + * + * 2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * purpose_of_this_file_is_also_there_behind_the_big_header + * + */ + + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/gpl3-header.sh b/software/cinit/browse_source/cinit-0.3pre18/doc/gpl3-header.sh new file mode 100644 index 00000000..29b75e61 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/gpl3-header.sh @@ -0,0 +1,23 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Description here +# + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/logs/2006-10-25.config.wasserstoff b/software/cinit/browse_source/cinit-0.3pre18/doc/logs/2006-10-25.config.wasserstoff new file mode 100644 index 00000000..f28bd71a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/logs/2006-10-25.config.wasserstoff @@ -0,0 +1,16 @@ +[17:12] wasserstoff:svc# pwd +/etc/cinit/svc +[17:12] wasserstoff:svc# ls +init +17:12] wasserstoff:svc# mkdir getty +[17:12] wasserstoff:svc# mkdir getty/2/ +[17:12] wasserstoff:svc# cd getty/2 +[17:12] wasserstoff:2# ln -s /sbin/getty on +17:12] wasserstoff:2# echo 38400 > on.params +[17:13] wasserstoff:2# echo tty2 >> on.params +[17:13] wasserstoff:2# cd ../../init +[17:14] wasserstoff:init# mkdir needs +[17:14] wasserstoff:init# cd needs +[17:14] wasserstoff:needs# ln -s ../../getty/2 getty-2 +[17:14] wasserstoff:needs# + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/logs/2006-11-22.startup-with-debug b/software/cinit/browse_source/cinit-0.3pre18/doc/logs/2006-11-22.startup-with-debug new file mode 100644 index 00000000..44121cf4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/logs/2006-11-22.startup-with-debug @@ -0,0 +1,55 @@ +[0:08] wasserstoff:cinit-0.3pre3% ./src/cinit +cinit-0.3pre3: Booting from /etc/cinit/svc/init +gen_tree::/etc/cinit/svc/init +CAD::/etc/cinit/svc/init +CAD::NEW::/etc/cinit/svc/init::/etc/cinit/svc/getty:: +gen_tree::/etc/cinit/svc/getty +CAD::/etc/cinit/svc/getty +CAD::NEW::/etc/cinit/svc/getty::/etc/cinit/svc/getty/2:: +gen_tree::/etc/cinit/svc/getty/2 +CAD::/etc/cinit/svc/getty/2 +CAD::NEW::/etc/cinit/svc/getty/2::/etc/cinit/svc/local-tuning/keyboard-layout:: +gen_tree::/etc/cinit/svc/local-tuning/keyboard-layout +CAD::/etc/cinit/svc/local-tuning/keyboard-layout +CAD::/etc/cinit/svc/local-tuning/keyboard-layout +START::/etc/cinit/svc/local-tuning/keyboard-layout +CAD::/etc/cinit/svc/getty/2 +CAD::NEW::/etc/cinit/svc/getty::/etc/cinit/svc/getty/3:: +gen_tree::/etc/cinit/svc/getty/3 +CAD::/etc/cinit/svc/getty/3 +CAD::NEW::/etc/cinit/svc/getty/3::/etc/cinit/svc/local-tuning/keyboard-layout:: +CAD::/etc/cinit/svc/getty/3 +CAD::/etc/cinit/svc/getty +CAD::NEW::/etc/cinit/svc/init::/etc/cinit/svc/local-tuning:: +gen_tree::/etc/cinit/svc/local-tuning +CAD::/etc/cinit/svc/local-tuning +CAD::NEW::/etc/cinit/svc/local-tuning::/etc/cinit/svc/local-tuning/keyboard-layout:: +CAD::/etc/cinit/svc/local-tuning +CAD::NEW::/etc/cinit/svc/init::/etc/cinit/svc/mount:: +gen_tree::/etc/cinit/svc/mount +CAD::/etc/cinit/svc/mount +CAD::NEW::/etc/cinit/svc/mount::/etc/cinit/svc/mount/root:: +gen_tree::/etc/cinit/svc/mount/root +CAD::/etc/cinit/svc/mount/root +CAD::/etc/cinit/svc/mount/root +START::/etc/cinit/svc/mount/root +CAD::/etc/cinit/svc/mount +CAD::NEW::/etc/cinit/svc/init::/etc/cinit/svc/network:: +gen_tree::/etc/cinit/svc/network +CAD::/etc/cinit/svc/network +CAD::NEW::/etc/cinit/svc/network::/etc/cinit/svc/network/eth0:: +respawn: /etc/cinit/svc/network/eth0 +gen_tree::/etc/cinit/svc/network/eth0 +CAD::/etc/cinit/svc/network/eth0 +CAD::/etc/cinit/svc/network/eth0 +START::/etc/cinit/svc/network/eth0 +CAD::NEW::/etc/cinit/svc/network::/etc/cinit/svc/network/loopback:: +gen_tree::/etc/cinit/svc/network/loopback +CAD::/etc/cinit/svc/network/loopback +CAD::/etc/cinit/svc/network/loopback +START::/etc/cinit/svc/network/loopback +CAD::/etc/cinit/svc/network +CAD::/etc/cinit/svc/init +========> tree_exec() +/etc/cinit/svc/local-tuning/keyboard-layout:::abhaengigkeiten gestartet, exec; add wants, needsdep_needs_wants_add::/etc/cinit/svc/local-tuning/keyboard-layout add: (/etc/cinit/svc/getty/2) + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/logs/2006-11-30.startup-0.3pre5 b/software/cinit/browse_source/cinit-0.3pre18/doc/logs/2006-11-30.startup-0.3pre5 new file mode 100644 index 00000000..2ded7712 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/logs/2006-11-30.startup-0.3pre5 @@ -0,0 +1,1821 @@ +cinit-0.3pre4: Booting from /etc/cinit/svc/init +gen_tree::/etc/cinit/svc/init +CAD::/etc/cinit/svc/init +CAD::NEW::/etc/cinit/svc/init::/etc/cinit/svc/getty +gen_tree::/etc/cinit/svc/getty +CAD::/etc/cinit/svc/getty +CAD::NEW::/etc/cinit/svc/getty::/etc/cinit/svc/getty/2 +gen_tree::/etc/cinit/svc/getty/2 +CAD::/etc/cinit/svc/getty/2 +CAD::NEW::/etc/cinit/svc/getty/2::/etc/cinit/svc/local-tuning/keyboard-layout +gen_tree::/etc/cinit/svc/local-tuning/keyboard-layout +CAD::/etc/cinit/svc/local-tuning/keyboard-layout +CAD::/etc/cinit/svc/local-tuning/keyboard-layout +START::/etc/cinit/svc/local-tuning/keyboard-layout +CAD::/etc/cinit/svc/getty/2 +CAD::NEW::/etc/cinit/svc/getty::/etc/cinit/svc/getty/3 +gen_tree::/etc/cinit/svc/getty/3 +CAD::/etc/cinit/svc/getty/3 +CAD::NEW::/etc/cinit/svc/getty/3::/etc/cinit/svc/local-tuning/keyboard-layout +CAD::/etc/cinit/svc/getty/3 +CAD::/etc/cinit/svc/getty +CAD::NEW::/etc/cinit/svc/init::/etc/cinit/svc/local-tuning +gen_tree::/etc/cinit/svc/local-tuning +CAD::/etc/cinit/svc/local-tuning +CAD::NEW::/etc/cinit/svc/local-tuning::/etc/cinit/svc/local-tuning/keyboard-layout +CAD::/etc/cinit/svc/local-tuning +CAD::NEW::/etc/cinit/svc/init::/etc/cinit/svc/mount +gen_tree::/etc/cinit/svc/mount +CAD::/etc/cinit/svc/mount +CAD::NEW::/etc/cinit/svc/mount::/etc/cinit/svc/mount/root +gen_tree::/etc/cinit/svc/mount/root +CAD::/etc/cinit/svc/mount/root +CAD::/etc/cinit/svc/mount/root +START::/etc/cinit/svc/mount/root +CAD::/etc/cinit/svc/mount +CAD::NEW::/etc/cinit/svc/init::/etc/cinit/svc/network +gen_tree::/etc/cinit/svc/network +CAD::/etc/cinit/svc/network +CAD::NEW::/etc/cinit/svc/network::/etc/cinit/svc/network/eth0 +respawn: /etc/cinit/svc/network/eth0 +gen_tree::/etc/cinit/svc/network/eth0 +CAD::/etc/cinit/svc/network/eth0 +CAD::/etc/cinit/svc/network/eth0 +START::/etc/cinit/svc/network/eth0 +CAD::NEW::/etc/cinit/svc/network::/etc/cinit/svc/network/loopback +gen_tree::/etc/cinit/svc/network/loopback +CAD::/etc/cinit/svc/network/loopback +CAD::/etc/cinit/svc/network/loopback +START::/etc/cinit/svc/network/loopback +CAD::/etc/cinit/svc/network +CAD::NEW::/etc/cinit/svc/init::/etc/cinit/svc/test +gen_tree::/etc/cinit/svc/test +CAD::/etc/cinit/svc/test +CAD::NEW::/etc/cinit/svc/test::/etc/cinit/svc/test/env +gen_tree::/etc/cinit/svc/test/env +CAD::/etc/cinit/svc/test/env +CAD::/etc/cinit/svc/test/env +START::/etc/cinit/svc/test/env +CAD::/etc/cinit/svc/test +CAD::/etc/cinit/svc/init +========> tree_exec() +TEX::/etc/cinit/svc/local-tuning/keyboard-layout +abhaengigkeiten gestartet, exec; add wants, needs +ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +DNWA::/etc/cinit/svc/local-tuning/keyboard-layout::/etc/cinit/svc/getty/2::(A)::::/etc/cinit/svc/getty/3::(A)::::/etc/cinit/svc/local-tuning::(A):: +DNWA::/etc/cinit/svc/local-tuning/keyboard-layout +TEX::/etc/cinit/svc/mount/root +abhaengigkeiten gestartet, exec; add wants, needs +ES::/etc/cinit/svc/mount/root/on +CBA::/etc/cinit/svc/mount/root/on +ORC:/etc/cinit/svc/mount/root/on.params +DNWA::/etc/cinit/svc/mount/root::/etc/cinit/svc/mount::(A):: +DNWA::/etc/cinit/svc/mount/root +TEX::/etc/cinit/svc/network/eth0 +abhaengigkeiten gestartet, exec; add wants, needs +ES::/etc/cinit/svc/network/eth0/on +CBA::/etc/cinit/svc/network/eth0/on +ORC:/etc/cinit/svc/network/eth0/on.params +DNWA::/etc/cinit/svc/network/eth0::/etc/cinit/svc/network::(A):: +DNWA::/etc/cinit/svc/network/eth0 +TEX::/etc/cinit/svc/network/loopback +abhaengigkeiten gestartet, exec; add wants, needs +ES::/etc/cinit/svc/network/loopback/on +CBA::/etc/cinit/svc/network/loopback/on +ORC:/etc/cinit/svc/network/loopback/on.params +DNWA::/etc/cinit/svc/network/loopback::/etc/cinit/svc/network +DNWA::/etc/cinit/svc/network/loopback +TEX::/etc/cinit/svc/test/env +abhaengigkeiten gestartet, exec; add wants, needs +ES::/etc/cinit/svc/test/env/on +CBA::/etc/cinit/svc/test/env/on +DNWA::/etc/cinit/svc/test/env::/etc/cinit/svc/test::(A):: +DNWA::/etc/cinit/svc/test/env +TEX::/etc/cinit/svc/getty/2 +::/etc/cinit/svc/local-tuning/keyboard-layout +/etc/cinit/svc/local-tuning/keyboard-layout: <<4>> +abhaengigkeiten gestartet, exec; add wants, needs +ES::/etc/cinit/svc/getty/2/on +CBA::/etc/cinit/svc/getty/2/on +DNWA::/etc/cinit/svc/getty/2::/etc/cinit/svc/getty::(A):: +DNWA::/etc/cinit/svc/getty/2 +TEX::/etc/cinit/svc/getty/3 +::/etc/cinit/svc/local-tuning/keyboard-layout +/etc/cinit/svc/local-tuning/keyboard-layout: <<4>> +abhaengigkeiten gestartet, exec; add wants, needs +ES::/etc/cinit/svc/getty/3/on +CBA::/etc/cinit/svc/getty/3/on +ORC:/etc/cinit/svc/getty/3/on.params +DNWA::/etc/cinit/svc/getty/3::/etc/cinit/svc/getty +DNWA::/etc/cinit/svc/getty/3 +TEX::/etc/cinit/svc/local-tuning +::/etc/cinit/svc/local-tuning/keyboard-layout +/etc/cinit/svc/local-tuning/keyboard-layout: <<4>> +abhaengigkeiten gestartet, exec; add wants, needs +ES::/etc/cinit/svc/local-tuning/on +CBA::/etc/cinit/svc/local-tuning/on +CBA::/etc/cinit/svc/local-tuning/on +/etc/cinit/svc/local-tuning/on: No such file or directory +SC::Cleanup: reparenting +DNWA::/etc/cinit/svc/local-tuning::/etc/cinit/svc/init::(A):: +DNWA::/etc/cinit/svc/local-tuning +TEX::/etc/cinit/svc/mount +::/etc/cinit/svc/mount/root +/etc/cinit/svc/mount/root: <<4>> +abhaengigkeiten gestartet, exec; add wants, needs +ES::/etc/cinit/svc/mount/on +CBA::/etc/cinit/svc/mount/on +CBA::/etc/cinit/svc/mount/on +/etc/cinit/svc/mount/on: No such file or directory +SC::Cleanup: reparenting +DNWA::/etc/cinit/svc/mount::/etc/cinit/svc/init +DNWA::/etc/cinit/svc/mount +TEX::/etc/cinit/svc/network +::/etc/cinit/svc/network/eth0 +/etc/cinit/svc/network/eth0: <<16>> +::/etc/cinit/svc/network/loopback +/etc/cinit/svc/network/loopback: <<4>> +abhaengigkeiten gestartet, exec; add wants, needs +ES::/etc/cinit/svc/network/on +CBA::/etc/cinit/svc/network/on +CBA::/etc/cinit/svc/network/on +/etc/cinit/svc/network/on: No such file or directory +SC::Cleanup: reparenting +DNWA::/etc/cinit/svc/network::/etc/cinit/svc/init +DNWA::/etc/cinit/svc/network +TEX::/etc/cinit/svc/test +::/etc/cinit/svc/test/env +/etc/cinit/svc/test/env: <<4>> +abhaengigkeiten gestartet, exec; add wants, needs +ES::/etc/cinit/svc/test/on +CBA::/etc/cinit/svc/test/on +CBA::/etc/cinit/svc/test/on +/etc/cinit/svc/test/on: No such file or directory +SC::Cleanup: reparenting +DNWA::/etc/cinit/svc/test::/etc/cinit/svc/init +DNWA::/etc/cinit/svc/test +TEX::/etc/cinit/svc/getty +::/etc/cinit/svc/getty/2 +/etc/cinit/svc/getty/2: <<4>> +::/etc/cinit/svc/getty/3 +/etc/cinit/svc/getty/3: <<4>> +abhaengigkeiten gestartet, exec; add wants, needs +ES::/etc/cinit/svc/getty/on +CBA::/etc/cinit/svc/getty/on +CBA::/etc/cinit/svc/getty/on +/etc/cinit/svc/getty/on: No such file or directory +SC::Cleanup: reparenting +DNWA::/etc/cinit/svc/getty::/etc/cinit/svc/init +DNWA::/etc/cinit/svc/getty +TEX::/etc/cinit/svc/init +::/etc/cinit/svc/getty +/etc/cinit/svc/getty: <<4>> +::/etc/cinit/svc/local-tuning +/etc/cinit/svc/local-tuning: <<4>> +::/etc/cinit/svc/mount +/etc/cinit/svc/mount: <<4>> +::/etc/cinit/svc/network +/etc/cinit/svc/network: <<4>> +::/etc/cinit/svc/test +/etc/cinit/svc/test: <<4>> +abhaengigkeiten gestartet, exec; add wants, needs +ES::/etc/cinit/svc/init/on +CBA::/etc/cinit/svc/init/on +DNWA::/etc/cinit/svc/init +DNWA::/etc/cinit/svc/init +=> cinit started. +ORC:/etc/cinit/svc/test/env/on.params +SFN: NULL +ORC:/etc/cinit/svc/test/env/on.env +ORC: 38400 +tty3 + +ORC:/etc/cinit/svc/getty/3/on.env +SFN: NULL +CBA::/etc/cinit/svc/getty/3/on +ORC:/etc/cinit/svc/getty/3/on.params +ORC: 38400 +tty3 + +ORC:/etc/cinit/svc/getty/3/on.env +SFN: NULL +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +ORC:/etc/cinit/svc/init/on.params +ORC:/etc/cinit/svc/getty/2/on.params +ORC: -f +-i +eth0 + +ORC:/etc/cinit/svc/network/eth0/on.env +SFN: NULL +CBA::/etc/cinit/svc/network/eth0/on +ORC:/etc/cinit/svc/network/eth0/on.params +ORC: -f +-i +eth0 + +ORC:/etc/cinit/svc/network/eth0/on.env +SFN: NULL +ORC: test=Wunderbar es tut + +CBA::/etc/cinit/svc/test/env/on +ORC:/etc/cinit/svc/test/env/on.params +SFN: NULL +ORC:/etc/cinit/svc/test/env/on.env +ORC: test=Wunderbar es tut + +pre-test +Wunderbar es tut +post-test +SC::/etc/cinit/svc/test/env::FAILED::::RESPAWN::ES::/etc/cinit/svc/test/env/on +CBA::/etc/cinit/svc/test/env/on +ORC:/etc/cinit/svc/test/env/on.params +SFN: NULL +ORC:/etc/cinit/svc/test/env/on.env +ORC: test=Wunderbar es tut + +CBA::/etc/cinit/svc/test/env/on +ORC:/etc/cinit/svc/test/env/on.params +SFN: NULL +ORC:/etc/cinit/svc/test/env/on.env +ORC: test=Wunderbar es tut + +pre-test +Wunderbar es tut +post-test + +msgrcv: Interrupted system call +ORC: lo +127.0.0.1 +up + +ORC:/etc/cinit/svc/network/loopback/on.env +SFN: NULL +CBA::/etc/cinit/svc/network/loopback/on +ORC:/etc/cinit/svc/network/loopback/on.params +ORC: lo +127.0.0.1 +up + +ORC:/etc/cinit/svc/network/loopback/on.env +SFN: NULL +ORC: -n +-o +remount,rw +/ + +ORC:/etc/cinit/svc/mount/root/on.env +SFN: NULL +CBA::/etc/cinit/svc/mount/root/on +ORC:/etc/cinit/svc/mount/root/on.params +ORC: -n +-o +remount,rw +/ + +ORC:/etc/cinit/svc/mount/root/on.env +SFN: NULL +ORC: 38400 +tty2 + +ORC:/etc/cinit/svc/getty/2/on.env +SFN: NULL +CBA::/etc/cinit/svc/getty/2/on +ORC:/etc/cinit/svc/getty/2/on.params +ORC: 38400 +tty2 + +ORC:/etc/cinit/svc/getty/2/on.env +SFN: NULL +udhcpc (v0.9.9-pre) started +socket failed!: Operation not permitted +SC::/etc/cinit/svc/network/eth0::FAILED::::RESPAWN::ES::/etc/cinit/svc/network/eth0/on +CBA::/etc/cinit/svc/network/eth0/on +ORC:/etc/cinit/svc/network/eth0/on.params +ORC: -f +-i +eth0 + +ORC:/etc/cinit/svc/network/eth0/on.env +SFN: NULL +CBA::/etc/cinit/svc/network/eth0/on +ORC:/etc/cinit/svc/network/eth0/on.params +ORC: -f +-i +eth0 + +ORC:/etc/cinit/svc/network/eth0/on.env +SFN: NULL +udhcpc (v0.9.9-pre) started +socket failed!: Operation not permitted + +msgrcv: Interrupted system call +ORC: The initial service has been started. + +ORC:/etc/cinit/svc/init/on.env +SFN: NULL +CBA::/etc/cinit/svc/init/on +ORC:/etc/cinit/svc/init/on.params +ORC: The initial service has been started. + +ORC:/etc/cinit/svc/init/on.env +SFN: NULL +The initial service has been started. +SC::/etc/cinit/svc/init::FAILED::::RESPAWN::ES::/etc/cinit/svc/init/on +CBA::/etc/cinit/svc/init/on +ORC:/etc/cinit/svc/init/on.params +ORC: The initial service has been started. + +ORC:/etc/cinit/svc/init/on.env +SFN: NULL +CBA::/etc/cinit/svc/init/on +ORC:/etc/cinit/svc/init/on.params +ORC: The initial service has been started. + +ORC:/etc/cinit/svc/init/on.env +SFN: NULL +The initial service has been started. + +msgrcv: Interrupted system call +SIOCSIFADDR: Permission denied +SIOCSIFFLAGS: Permission denied +SIOCSIFFLAGS: Permission denied +Unknown server error +ifconfig: `--help' gives usage information. +SC::/etc/cinit/svc/network/loopback::FAILED::::RESPAWN::ES::/etc/cinit/svc/network/loopback/on +CBA::/etc/cinit/svc/network/loopback/on +ORC:/etc/cinit/svc/network/loopback/on.params +ORC: lo +127.0.0.1 +up + +ORC:/etc/cinit/svc/network/loopback/on.env +SFN: NULL +CBA::/etc/cinit/svc/network/loopback/on +ORC:/etc/cinit/svc/network/loopback/on.params +ORC: lo +127.0.0.1 +up + +ORC:/etc/cinit/svc/network/loopback/on.env +SFN: NULL +SIOCSIFADDR: Permission denied +SIOCSIFFLAGS: Permission denied +SIOCSIFFLAGS: Permission denied +Unknown server error +ifconfig: `--help' gives usage information. + +msgrcv: Interrupted system call +mount: only root can do that +SC::/etc/cinit/svc/mount/root::FAILED::::RESPAWN::ES::/etc/cinit/svc/mount/root/on +CBA::/etc/cinit/svc/mount/root/on +ORC:/etc/cinit/svc/mount/root/on.params +ORC: -n +-o +remount,rw +/ + +ORC:/etc/cinit/svc/mount/root/on.env +SFN: NULL +CBA::/etc/cinit/svc/mount/root/on +ORC:/etc/cinit/svc/mount/root/on.params +ORC: -n +-o +remount,rw +/ + +ORC:/etc/cinit/svc/mount/root/on.env +SFN: NULL +mount: only root can do that + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +LSP:: 32705: /etc/cinit/svc/init:1 (0) +LSP:: 32705: /etc/cinit/svc/test/env:4 (32702) +LSP:: 32705: /etc/cinit/svc/test:65 (0) +LSP:: 32705: /etc/cinit/svc/network/loopback:4 (32701) +LSP:: 32705: /etc/cinit/svc/network/eth0:16 (32700) +LSP:: 32705: /etc/cinit/svc/network:65 (0) +LSP:: 32705: /etc/cinit/svc/mount/root:4 (32699) +LSP:: 32705: /etc/cinit/svc/mount:65 (0) +LSP:: 32705: /etc/cinit/svc/local-tuning:65 (0) +LSP:: 32705: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 32705: /etc/cinit/svc/local-tuning/keyboard-layout:4 (32698) +LSP:: 32705: /etc/cinit/svc/getty/2:4 (32703) +LSP:: 32705: /etc/cinit/svc/getty:65 (0) +LSP:: 32706: /etc/cinit/svc/init:65 (0) +LSP:: 32706: /etc/cinit/svc/test/env:4 (32702) +LSP:: 32706: /etc/cinit/svc/test:65 (0) +LSP:: 32706: /etc/cinit/svc/network/loopback:4 (32701) +LSP:: 32706: /etc/cinit/svc/network/eth0:16 (32700) +LSP:: 32706: /etc/cinit/svc/network:65 (0) +LSP:: 32706: /etc/cinit/svc/mount/root:4 (32699) +LSP:: 32706: /etc/cinit/svc/mount:65 (0) +LSP:: 32706: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 32706: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 32706: /etc/cinit/svc/local-tuning/keyboard-layout:4 (32698) +LSP:: 32706: /etc/cinit/svc/getty/2:4 (32703) +LSP:: 32706: /etc/cinit/svc/getty:65 (0) +LSP:: 32707: /etc/cinit/svc/init:65 (0) +LSP:: 32707: /etc/cinit/svc/test/env:4 (32702) +LSP:: 32707: /etc/cinit/svc/test:65 (0) +LSP:: 32707: /etc/cinit/svc/network/loopback:4 (32701) +LSP:: 32707: /etc/cinit/svc/network/eth0:16 (32700) +LSP:: 32707: /etc/cinit/svc/network:65 (0) +LSP:: 32707: /etc/cinit/svc/mount/root:4 (32699) +LSP:: 32707: /etc/cinit/svc/mount:4 (32706) +LSP:: 32707: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 32707: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 32707: /etc/cinit/svc/local-tuning/keyboard-layout:4 (32698) +LSP:: 32707: /etc/cinit/svc/getty/2:4 (32703) +LSP:: 32707: /etc/cinit/svc/getty:65 (0) +LSP:: 32708: /etc/cinit/svc/init:65 (0) +LSP:: 32708: /etc/cinit/svc/test/env:4 (32702) +LSP:: 32708: /etc/cinit/svc/test:65 (0) +LSP:: 32708: /etc/cinit/svc/network/loopback:4 (32701) +LSP:: 32708: /etc/cinit/svc/network/eth0:16 (32700) +LSP:: 32708: /etc/cinit/svc/network:4 (32707) +LSP:: 32708: /etc/cinit/svc/mount/root:4 (32699) +LSP:: 32708: /etc/cinit/svc/mount:4 (32706) +LSP:: 32708: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 32708: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 32708: /etc/cinit/svc/local-tuning/keyboard-layout:4 (32698) +LSP:: 32708: /etc/cinit/svc/getty/2:4 (32703) +LSP:: 32708: /etc/cinit/svc/getty:65 (0) +LSP:: 32709: /etc/cinit/svc/init:65 (0) +LSP:: 32709: /etc/cinit/svc/test/env:4 (32702) +LSP:: 32709: /etc/cinit/svc/test:4 (32708) +LSP:: 32709: /etc/cinit/svc/network/loopback:4 (32701) +LSP:: 32709: /etc/cinit/svc/network/eth0:16 (32700) +LSP:: 32709: /etc/cinit/svc/network:4 (32707) +LSP:: 32709: /etc/cinit/svc/mount/root:4 (32699) +LSP:: 32709: /etc/cinit/svc/mount:4 (32706) +LSP:: 32709: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 32709: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 32709: /etc/cinit/svc/local-tuning/keyboard-layout:4 (32698) +LSP:: 32709: /etc/cinit/svc/getty/2:4 (32703) +LSP:: 32709: /etc/cinit/svc/getty:65 (0) +LSP:: 32702: /etc/cinit/svc/init:4 (32710) +LSP:: 32702: /etc/cinit/svc/test/env:4 (32702) +pid: 0, m_client +LSP:: 32700: /etc/cinit/svc/init:4 (32710) +LSP:: 32700: /etc/cinit/svc/test/env:16 (32717) +LSP:: 32700: /etc/cinit/svc/test:4 (32708) +LSP:: 32700: /etc/cinit/svc/network/loopback:4 (32701) +LSP:: 32700: /etc/cinit/svc/network/eth0:16 (32700) +pid: 0, m_client +LSP:: 32710: /etc/cinit/svc/init:4 (32710) +pid: 0, m_client +LSP:: 32701: /etc/cinit/svc/init:16 (32719) +LSP:: 32701: /etc/cinit/svc/test/env:16 (32717) +LSP:: 32701: /etc/cinit/svc/test:4 (32708) +LSP:: 32701: /etc/cinit/svc/network/loopback:4 (32701) +pid: 0, m_client +LSP:: 32699: /etc/cinit/svc/init:16 (32719) +LSP:: 32699: /etc/cinit/svc/test/env:16 (32717) +LSP:: 32699: /etc/cinit/svc/test:4 (32708) +LSP:: 32699: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 32699: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 32699: /etc/cinit/svc/network:4 (32707) +LSP:: 32699: /etc/cinit/svc/mount/root:4 (32699) +pid: 0, m_client +LSP::SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz + 32698: /etc/cinit/svc/init:16 (32719) +LSP:: 32698: /etc/cinit/svc/test/env:16 (32717) +LSP:: 32698: /etc/cinit/svc/test:4 (32708) +LSP:: 32698: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 32698: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 32698: /etc/cinit/svc/network:4 (32707) +LSP:: 32698: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 32698: /etc/cinit/svc/mount:4 (32706) +LSP:: 32698: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 32698: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 32698: /etc/cinit/svc/local-tuning/keyboard-layout:4 (32698) +pid: 0, m_client +LSP:: 32728: /etc/cinit/svc/init:16 (32719) +LSP:: 32728: /etc/cinit/svc/test/env:16 (32717) +LSP:: 32728: /etc/cinit/svc/test:4 (32708) +LSP:: 32728: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 32728: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 32728: /etc/cinit/svc/network:4 (32707) +LSP:: 32728: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 32728: /etc/cinit/svc/mount:4 (32706) +LSP:: 32728: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 32728: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 32728: /etc/cinit/svc/local-tuning/keyboard-layout:16 (32728) +pid: 0, m_client +LSP:: 32735: /etc/cinit/svc/init:16 (32719) +LSP:: 32735: /etc/cinit/svc/test/env:16 (32717) +LSP:: 32735: /etc/cinit/svc/test:4 (32708) +LSP:: 32735: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 32735: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 32735: /etc/cinit/svc/network:4 (32707) +LSP:: 32735: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 32735: /etc/cinit/svc/mount:4 (32706) +LSP:: 32735: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 32735: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 32735: /etc/cinit/svc/local-tuning/keyboard-layout:16 (32735) +pid: 0, m_client +LSP:: 32742: /etc/cinit/svc/init:16 (32719) +LSP:: 32742: /etc/cinit/svc/test/env:16 (32717) +LSP:: 32742: /etc/cinit/svc/test:4 (32708) +LSP:: 32742: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 32742: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 32742: /etc/cinit/svc/network:4 (32707) +LSP:: 32742: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 32742: /etc/cinit/svc/mount:4 (32706) +LSP:: 32742: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 32742: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 32742: /etc/cinit/svc/local-tuning/keyboard-layout:16 (32742) +pid: 0, m_client +LSP:: 32749: /etc/cinit/svc/init:16 (32719) +LSP:: 32749: /etc/cinit/svc/test/env:16 (32717) +LSP:: 32749: /etc/cinit/svc/test:4 (32708) +LSP:: 32749: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 32749: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 32749: /etc/cinit/svc/network:4 (32707) +LSP:: 32749: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 32749: /etc/cinit/svc/mount:4 (32706) +LSP:: 32749: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 32749: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 32749: /etc/cinit/svc/local-tuning/keyboard-layout:16 (32749) +pid: 0, m_client +LSP:: 32756: /etc/cinit/svc/init:16 (32719) +LSP:: 32756: /etc/cinit/svc/test/env:16 (32717) +LSP:: 32756: /etc/cinit/svc/test:4 (32708) +LSP:: 32756: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 32756: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 32756: /etc/cinit/svc/network:4 (32707) +LSP:: 32756: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 32756: /etc/cinit/svc/mount:4 (32706) +LSP:: 32756: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 32756: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 32756: /etc/cinit/svc/local-tuning/keyboard-layout:16 (32756) +pid: 0, m_client +LSP:: 32763: /etc/cinit/svc/init:16 (32719) +LSP:: 32763: /etc/cinit/svc/test/env:16 (32717) +LSP:: 32763: /etc/cinit/svc/test:4 (32708) +LSP:: 32763: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 32763: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 32763: /etc/cinit/svc/network:4 (32707) +LSP:: 32763: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 32763: /etc/cinit/svc/mount:4 (32706) +LSP:: 32763: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 32763: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 32763: /etc/cinit/svc/local-tuning/keyboard-layout:16 (32763) +pid: 0, m_client +LSP:: 302: /etc/cinit/svc/init:16 (32719) +LSP:: 302: /etc/cinit/svc/test/env:16 (32717) +LSP:: 302: /etc/cinit/svc/test:4 (32708) +LSP:: 302: /etc/ciSC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN:: +msgrcv: Interrupted system call +ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +nit/svc/network/loopback:16 (32720) +LSP:: 302: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 302: /etc/cinit/svc/network:4 (32707) +LSP:: 302: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 302: /etc/cinit/svc/mount:4 (32706) +LSP:: 302: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 302: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 302: /etc/cinit/svc/local-tuning/keyboard-layout:16 (302) +pid: 0, m_client +LSP:: 312: /etc/cinit/svc/init:16 (32719) +LSP:: 312: /etc/cinit/svc/test/env:16 (32717) +LSP:: 312: /etc/cinit/svc/test:4 (32708) +LSP:: 312: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 312: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 312: /etc/cinit/svc/network:4 (32707) +LSP:: 312: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 312: /etc/cinit/svc/mount:4 (32706) +LSP:: 312: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 312: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 312: /etc/cinit/svc/local-tuning/keyboard-layout:16 (312) +pid: 0, m_client +LSP:: 326: /etc/cinit/svc/init:16 (32719) +LSP:: 326: /etc/cinit/svc/test/env:16 (32717) +LSP:: 326: /etc/cinit/svc/test:4 (32708) +LSP:: 326: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 326: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 326: /etc/cinit/svc/network:4 (32707) +LSP:: 326: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 326: /etc/cinit/svc/mount:4 (32706) +LSP:: 326: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 326: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 326: /etc/cinit/svc/local-tuning/keyboard-layout:16 (326) +pid: 0, m_client +LSP:: 333: /etc/cinit/svc/init:16 (32719) +LSP:: 333: /etc/cinit/svc/test/env:16 (32717) +LSP:: 333: /etc/cinit/svc/test:4 (32708) +LSP:: 333: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 333: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 333: /etc/cinit/svc/network:4 (32707) +LSP:: 333: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 333: /etc/cinit/svc/mount:4 (32706) +LSP:: 333: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 333: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 333: /etc/cinit/svc/local-tuning/keyboard-layout:16 (333) +pid: 0, m_client +LSP:: 340: /etc/cinit/svc/init:16 (32719) +LSP:: 340: /etc/cinit/svc/test/env:16 (32717) +LSP:: 340: /etc/cinit/svc/test:4 (32708) +LSP:: 340: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 340: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 340: /etc/cinit/svc/network:4 (32707) +LSP:: 340: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 340: /etc/cinit/svc/mount:4 (32706) +LSP:: 340: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 340: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 340: /etc/cinit/svc/local-tuning/keyboard-layout:16 (340) +pid: 0, m_client +LSP:: 347: /etc/cinit/svc/init:16 (32719) +LSP:: 347: /etc/cinit/svc/test/env:16 (32717) +LSP:: 347: /etc/cinit/svc/test:4 (32708) +LSP:: 347: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 347: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 347: /etc/cinit/svc/network:4 (32707) +LSP:: 347: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 347: /etc/cinit/svc/mount:4 (32706) +LSP:: 347: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 347: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 347: /etc/cinit/svc/local-tuning/keyboard-layout:16 (347) +pid: 0, m_client +LSP:: 354: /etc/cinit/svc/init:16 (32719) +LSP:: 354: /etc/cinit/svc/test/env:16 (32717) +LSP:: 354: /etc/cinit/svc/test:4 (32708) +LSP:: 354: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 354: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 354: /etc/cinit/svc/network:4 (32707) +LSP:: 354: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 354: /etc/cinit/svc/mount:4 (32706) +LSP:: 354: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 354: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 354: /etc/cinit/svc/local-tuning/keyboard-layout:16 (354) +pid: 0, m_client +LSP:: 372: /etc/cinit/svc/init:16 (32719) +LSP:: 372: /etc/cinit/svc/test/env:16 (32717) +LSP:: 372: /etc/cinit/svc/test:4 (32708) +LSP:: 372: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 372: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 372: /etc/cinit/svc/network:4 (32707) +LSP:: 372: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 372: /etc/cinit/svc/mount:4 (32706) +LSP:: 372: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 372: /etc/cinit/svc/getty/3:4 (327SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +04) +LSP:: 372: /etc/cinit/svc/local-tuning/keyboard-layout:16 (372) +pid: 0, m_client +LSP:: 379: /etc/cinit/svc/init:16 (32719) +LSP:: 379: /etc/cinit/svc/test/env:16 (32717) +LSP:: 379: /etc/cinit/svc/test:4 (32708) +LSP:: 379: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 379: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 379: /etc/cinit/svc/network:4 (32707) +LSP:: 379: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 379: /etc/cinit/svc/mount:4 (32706) +LSP:: 379: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 379: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 379: /etc/cinit/svc/local-tuning/keyboard-layout:16 (379) +pid: 0, m_client +LSP:: 386: /etc/cinit/svc/init:16 (32719) +LSP:: 386: /etc/cinit/svc/test/env:16 (32717) +LSP:: 386: /etc/cinit/svc/test:4 (32708) +LSP:: 386: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 386: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 386: /etc/cinit/svc/network:4 (32707) +LSP:: 386: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 386: /etc/cinit/svc/mount:4 (32706) +LSP:: 386: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 386: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 386: /etc/cinit/svc/local-tuning/keyboard-layout:16 (386) +pid: 0, m_client +LSP:: 393: /etc/cinit/svc/init:16 (32719) +LSP:: 393: /etc/cinit/svc/test/env:16 (32717) +LSP:: 393: /etc/cinit/svc/test:4 (32708) +LSP:: 393: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 393: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 393: /etc/cinit/svc/network:4 (32707) +LSP:: 393: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 393: /etc/cinit/svc/mount:4 (32706) +LSP:: 393: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 393: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 393: /etc/cinit/svc/local-tuning/keyboard-layout:16 (393) +pid: 0, m_client +LSP:: 400: /etc/cinit/svc/init:16 (32719) +LSP:: 400: /etc/cinit/svc/test/env:16 (32717) +LSP:: 400: /etc/cinit/svc/test:4 (32708) +LSP:: 400: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 400: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 400: /etc/cinit/svc/network:4 (32707) +LSP:: 400: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 400: /etc/cinit/svc/mount:4 (32706) +LSP:: 400: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 400: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 400: /etc/cinit/svc/local-tuning/keyboard-layout:16 (400) +pid: 0, m_client +LSP:: 407: /etc/cinit/svc/init:16 (32719) +LSP:: 407: /etc/cinit/svc/test/env:16 (32717) +LSP:: 407: /etc/cinit/svc/test:4 (32708) +LSP:: 407: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 407: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 407: /etc/cinit/svc/network:4 (32707) +LSP:: 407: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 407: /etc/cinit/svc/mount:4 (32706) +LSP:: 407: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 407: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 407: /etc/cinit/svc/local-tuning/keyboard-layout:16 (407) +pid: 0, m_client +LSP:: 414: /etc/cinit/svc/init:16 (32719) +LSP:: 414: /etc/cinit/svc/test/env:16 (32717) +LSP:: 414: /etc/cinit/svc/test:4 (32708) +LSP:: 414: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 414: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 414: /etc/cinit/svc/network:4 (32707) +LSP:: 414: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 414: /etc/cinit/svc/mount:4 (32706) +LSP:: 414: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 414: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 414: /etc/cinit/svc/local-tuning/keyboard-layout:16 (414) +pid: 0, m_client +LSP:: 421: /etc/cinit/svc/init:16 (32719) +LSP:: 421: /etc/cinit/svc/test/env:16 (32717) +LSP:: 421: /etc/cinit/svc/test:4 (32708) +LSP:: 421: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 421: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 421: /etc/cinit/svc/network:4 (32707) +LSP:: 421: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 421: /etc/cinit/svc/mount:4 (32706) +LSP:: 421: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 421: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 421: /etc/cinit/svc/local-tuning/keyboard-layout:16 (421) +pid: 0, m_client +LSP:: 428: /etc/cinit/svc/init:16 (32719) +LSP:: 428: /etc/cinit/svc/test/env:16 (32717) +LSP:: 428: /etc/cinit/svc/test:4 (32708) +LSP:: 428: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 428: /etc/cinit/svc/network/eth0:16SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call + (32718) +LSP:: 428: /etc/cinit/svc/network:4 (32707) +LSP:: 428: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 428: /etc/cinit/svc/mount:4 (32706) +LSP:: 428: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 428: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 428: /etc/cinit/svc/local-tuning/keyboard-layout:16 (428) +pid: 0, m_client +LSP:: 435: /etc/cinit/svc/init:16 (32719) +LSP:: 435: /etc/cinit/svc/test/env:16 (32717) +LSP:: 435: /etc/cinit/svc/test:4 (32708) +LSP:: 435: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 435: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 435: /etc/cinit/svc/network:4 (32707) +LSP:: 435: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 435: /etc/cinit/svc/mount:4 (32706) +LSP:: 435: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 435: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 435: /etc/cinit/svc/local-tuning/keyboard-layout:16 (435) +pid: 0, m_client +LSP:: 452: /etc/cinit/svc/init:16 (32719) +LSP:: 452: /etc/cinit/svc/test/env:16 (32717) +LSP:: 452: /etc/cinit/svc/test:4 (32708) +LSP:: 452: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 452: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 452: /etc/cinit/svc/network:4 (32707) +LSP:: 452: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 452: /etc/cinit/svc/mount:4 (32706) +LSP:: 452: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 452: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 452: /etc/cinit/svc/local-tuning/keyboard-layout:16 (452) +pid: 0, m_client +LSP:: 459: /etc/cinit/svc/init:16 (32719) +LSP:: 459: /etc/cinit/svc/test/env:16 (32717) +LSP:: 459: /etc/cinit/svc/test:4 (32708) +LSP:: 459: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 459: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 459: /etc/cinit/svc/network:4 (32707) +LSP:: 459: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 459: /etc/cinit/svc/mount:4 (32706) +LSP:: 459: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 459: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 459: /etc/cinit/svc/local-tuning/keyboard-layout:16 (459) +pid: 0, m_client +LSP:: 466: /etc/cinit/svc/init:16 (32719) +LSP:: 466: /etc/cinit/svc/test/env:16 (32717) +LSP:: 466: /etc/cinit/svc/test:4 (32708) +LSP:: 466: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 466: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 466: /etc/cinit/svc/network:4 (32707) +LSP:: 466: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 466: /etc/cinit/svc/mount:4 (32706) +LSP:: 466: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 466: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 466: /etc/cinit/svc/local-tuning/keyboard-layout:16 (466) +pid: 0, m_client +LSP:: 473: /etc/cinit/svc/init:16 (32719) +LSP:: 473: /etc/cinit/svc/test/env:16 (32717) +LSP:: 473: /etc/cinit/svc/test:4 (32708) +LSP:: 473: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 473: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 473: /etc/cinit/svc/network:4 (32707) +LSP:: 473: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 473: /etc/cinit/svc/mount:4 (32706) +LSP:: 473: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 473: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 473: /etc/cinit/svc/local-tuning/keyboard-layout:16 (473) +pid: 0, m_client +LSP:: 480: /etc/cinit/svc/init:16 (32719) +LSP:: 480: /etc/cinit/svc/test/env:16 (32717) +LSP:: 480: /etc/cinit/svc/test:4 (32708) +LSP:: 480: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 480: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 480: /etc/cinit/svc/network:4 (32707) +LSP:: 480: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 480: /etc/cinit/svc/mount:4 (32706) +LSP:: 480: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 480: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 480: /etc/cinit/svc/local-tuning/keyboard-layout:16 (480) +pid: 0, m_client +LSP:: 487: /etc/cinit/svc/init:16 (32719) +LSP:: 487: /etc/cinit/svc/test/env:16 (32717) +LSP:: 487: /etc/cinit/svc/test:4 (32708) +LSP:: 487: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 487: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 487: /etc/cinit/svc/network:4 (32707) +LSP:: 487: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 487: /etc/cinit/svc/mount:4 (32706) +LSP:: 487: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 487: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 487: /etc/cinit/svc/local-tuning/keyboard-layout:16 (487) +pid: 0, mLoading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +_client +LSP:: 494: /etc/cinit/svc/init:16 (32719) +LSP:: 494: /etc/cinit/svc/test/env:16 (32717) +LSP:: 494: /etc/cinit/svc/test:4 (32708) +LSP:: 494: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 494: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 494: /etc/cinit/svc/network:4 (32707) +LSP:: 494: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 494: /etc/cinit/svc/mount:4 (32706) +LSP:: 494: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 494: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 494: /etc/cinit/svc/local-tuning/keyboard-layout:16 (494) +pid: 0, m_client +LSP:: 501: /etc/cinit/svc/init:16 (32719) +LSP:: 501: /etc/cinit/svc/test/env:16 (32717) +LSP:: 501: /etc/cinit/svc/test:4 (32708) +LSP:: 501: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 501: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 501: /etc/cinit/svc/network:4 (32707) +LSP:: 501: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 501: /etc/cinit/svc/mount:4 (32706) +LSP:: 501: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 501: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 501: /etc/cinit/svc/local-tuning/keyboard-layout:16 (501) +pid: 0, m_client +LSP:: 510: /etc/cinit/svc/init:16 (32719) +LSP:: 510: /etc/cinit/svc/test/env:16 (32717) +LSP:: 510: /etc/cinit/svc/test:4 (32708) +LSP:: 510: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 510: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 510: /etc/cinit/svc/network:4 (32707) +LSP:: 510: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 510: /etc/cinit/svc/mount:4 (32706) +LSP:: 510: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 510: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 510: /etc/cinit/svc/local-tuning/keyboard-layout:16 (510) +pid: 0, m_client +LSP:: 520: /etc/cinit/svc/init:16 (32719) +LSP:: 520: /etc/cinit/svc/test/env:16 (32717) +LSP:: 520: /etc/cinit/svc/test:4 (32708) +LSP:: 520: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 520: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 520: /etc/cinit/svc/network:4 (32707) +LSP:: 520: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 520: /etc/cinit/svc/mount:4 (32706) +LSP:: 520: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 520: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 520: /etc/cinit/svc/local-tuning/keyboard-layout:16 (520) +pid: 0, m_client +LSP:: 533: /etc/cinit/svc/init:16 (32719) +LSP:: 533: /etc/cinit/svc/test/env:16 (32717) +LSP:: 533: /etc/cinit/svc/test:4 (32708) +LSP:: 533: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 533: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 533: /etc/cinit/svc/network:4 (32707) +LSP:: 533: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 533: /etc/cinit/svc/mount:4 (32706) +LSP:: 533: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 533: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 533: /etc/cinit/svc/local-tuning/keyboard-layout:16 (533) +pid: 0, m_client +LSP:: 541: /etc/cinit/svc/init:16 (32719) +LSP:: 541: /etc/cinit/svc/test/env:16 (32717) +LSP:: 541: /etc/cinit/svc/test:4 (32708) +LSP:: 541: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 541: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 541: /etc/cinit/svc/network:4 (32707) +LSP:: 541: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 541: /etc/cinit/svc/mount:4 (32706) +LSP:: 541: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 541: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 541: /etc/cinit/svc/local-tuning/keyboard-layout:16 (541) +pid: 0, m_client +LSP:: 548: /etc/cinit/svc/init:16 (32719) +LSP:: 548: /etc/cinit/svc/test/env:16 (32717) +LSP:: 548: /etc/cinit/svc/test:4 (32708) +LSP:: 548: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 548: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 548: /etc/cinit/svc/network:4 (32707) +LSP:: 548: /etc/cinit/svc/mount/root:16 (32721) +LSP:: 548: /etc/cinit/svc/mount:4 (32706) +LSP:: 548: /etc/cinit/svc/local-tuning:4 (32705) +LSP:: 548: /etc/cinit/svc/getty/3:4 (32704) +LSP:: 548: /etc/cinit/svc/local-tuning/keyboard-layout:16 (548) +pid: 0, m_client +LSP:: 555: /etc/cinit/svc/init:16 (32719) +LSP:: 555: /etc/cinit/svc/test/env:16 (32717) +LSP:: 555: /etc/cinit/svc/test:4 (32708) +LSP:: 555: /etc/cinit/svc/network/loopback:16 (32720) +LSP:: 555: /etc/cinit/svc/network/eth0:16 (32718) +LSP:: 555: /etc/cinit/svc/network:4 (32707) +LSP:: 555: /etc/cinit/svSC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +findkeymap: No such file or directory +cannot open file +Loading /usr/share/keymaps/i386/dvorak/dvorak.kmap.gz +SC::/etc/cinit/svc/local-tuning/keyboard-layout::FAILED::::RESPAWN::ES::/etc/cinit/svc/local-tuning/keyboard-layout/on +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL +CBA::/etc/cinit/svc/local-tuning/keyboard-layout/on +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.params +ORC: dvorak + +ORC:/etc/cinit/svc/local-tuning/keyboard-layout/on.env +SFN: NULL + +msgrcv: Interrupted system call diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/man/cinit-conf.text b/software/cinit/browse_source/cinit-0.3pre18/doc/man/cinit-conf.text new file mode 100644 index 00000000..0e86ec25 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/man/cinit-conf.text @@ -0,0 +1,47 @@ +cinit-conf - helps to configure cinit +===================================== +Nico Schottelius +0.0.1, Initial version written on 20080418 in the Bus to Gossau + +cinit-conf aims to be a suite to help to configure cinit and +migrate systems to cinit. + +Introduction +------------ +`cinit` is a fast init system with dependency features and +profile support. As `cinit` is not widely known and it is quite +different in its approach compared to traditional init systems, +the configuration is also quite different. + +To make life easier for people to migrate to and manage `cinit`, +this project was started. + +If you use `cinit-conf`, please send feedback to me using `report_success.sh`. + + +What can it do? +~~~~~~~~~~~~~~~ +.In its current state, `cinit-conf` can +- add getties on Linux (bin/cinit-conf.getty.add) +- find its configuration directory (bin/cinit-conf.get-confdir) + + +What should it can do? +~~~~~~~~~~~~~~~~~~~~~~ +Much more ;-) + +.Also known as features planned, but not implemented. +- Migrate complete installations +- Provide a big toolset to be used by humans and in scripts +- Make your life easier, because you are able to use `cinit` + + +Wherefore can I use it? +~~~~~~~~~~~~~~~~~~~~~~~ +Currenty only to add a getty, but more features will follow soon. + + +How to use +---------- +Execute ./bin/cinit-conf.getty.add. + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/man/cinit.text b/software/cinit/browse_source/cinit-0.3pre18/doc/man/cinit.text new file mode 100644 index 00000000..19d0015a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/man/cinit.text @@ -0,0 +1,64 @@ +cinit(8) +======== +Nico Schottelius + + +NAME +---- +cinit - fast executing, small and simple init with support for profiles + + +SYNOPSIS +-------- +'cinit' [cprofile:name_of_profile] + + +DESCRIPTION +----------- +Cinit is an init system. It normally gets started by the operating +system (Linux, *BSD, ...) directly after the kernel has been loaded. + +Cinit uses parallel execution of services as far as possible. To +ensure the correct boot order you need to specify which service +'needs' or 'wants' another service. The resulting dependency tree +is used at startup to determine which service to start when. + +This may result in different boot orders depending on whether +one service is one time faster or slower. Due to the dependencies +this is not a problem, but allowed and wished per design. + +For more information refer to the texinfo or html documentation. + + +OPTIONS +------- + +cprofile:name_of_profile:: + If specified, cinit will start the named profile instead of the + standard 'init' service + + +BUGS +---- +cinit is not tested nor documented very well currently. + +The porting to other OS is not finished yet (mainly missing +system level binaries: shutdown, reboot, halt). + +Both is work in progress. + + +AUTHOR +------ +Nico Schottelius + + +RESOURCES +--------- +Main web site: http://unix.schottelius.org/cinit/[] + + +COPYING +------- +Copyright \(C) 2006 Nico Schottelius. Free use of this software is +granted under the terms of the GNU General Public License (GPL). diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/man/cmd.text b/software/cinit/browse_source/cinit-0.3pre18/doc/man/cmd.text new file mode 100644 index 00000000..b834fabf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/man/cmd.text @@ -0,0 +1,89 @@ +cmd(8) +====== +Nico Schottelius + + +NAME +---- +cmd - cinit management and information tool + + +SYNOPSIS +-------- +'cmd' [-ed (i|w|n)] [-(p|s) ] [-v] + + +DESCRIPTION +----------- +cmd adds the management possibility to cinit(8). You can retrieve +several information from cinit and change services. + +OPTIONS +------- +-d:: + Disable service (see below for required parameters) + (NOT YET IMPLEMENTED) + +-e:: + Enable service + - i: Included all needs and wants + - n: Exclude needs + - w: Exclude wants + (NOT YET IMPLEMENTED) + +-p:: + Retrieve last process id (pid) for the specific service. For respawn + services this is the pid of the running service. For services that are + started only once it is the pid it had when running. + (NOT YET IMPLEMENTED) + +-s:: + Retrieve status of a service. Warning: Do not add trailing slash. + Path can be specified absolute (/etc/cinit/svc/mount/root) or + relative (mount/root). + +-v:: + Get version of cinit. + +-V:: + Get version of cmd. + + + +EXAMPLES +-------- +Get version:: + [8:44] denkbrett:src# cmd -v + + Version of cinit: 0.3pre12 + +Get status:: + [8:37] denkbrett:src# ./cmd -s mount/root + + Status of /etc/cinit/svc/mount/root is: 2001 + + +EXIT STATUS +----------- +Cmd returns 0 on success, 1 on user errors, 2 on communication errors and +3 on unknown reason errors. + +BUGS +---- +Not everything is implemented. + + +AUTHOR +------ +Nico Schottelius + + +RESOURCES +--------- +Main web site: http://unix.schottelius.org/cinit/[] + + +COPYING +------- +Copyright \(C) 2007 Nico Schottelius. Free use of this software is +granted under the terms of the GNU General Public License Version 3 (GPLv3). diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/man/cservice b/software/cinit/browse_source/cinit-0.3pre18/doc/man/cservice new file mode 100644 index 00000000..26a472b8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/man/cservice @@ -0,0 +1,37 @@ +WARNING: + cservice is not yet ready for cinit-0.3! + +-------------------------------------------------------------------------------- +cservice, +Nico Schottelius, 2005-06-10 (Last Modified: 2005-06-22) +-------------------------------------------------------------------------------- + +cservice - control cinit + +cservice -[phearsu] + -e - (ein) start a service (including all needed dependencies) + -a - (aus) stop a respawing service, don't care about other services + + -r - reboot + -h - halt + -p - poweroff (on some systems the same as halt) + -s - reScue mode - only a shell + + -u - update: hot reboot - shutdown system and execute /sbin/cinit + +A service may be specified either as relative or as absolute path. + +-h, -p, -r, -s and -u need the "Magic Word" to do their work: "thilo" + +-------------------------------------------------------------------------------- + +Some examples: + + cservice -e /etc/cinit/getty/8 # fire up getty/8 + cd /etc/cinit/getty; cservice -a ./8 # shut down getty/8 + cservice -h thilo # halt + cservice -r thilo # reboot + cservice -s thilo # rescue + cservice -u thilo # update + +-------------------------------------------------------------------------------- diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/man/halt.kill.text b/software/cinit/browse_source/cinit-0.3pre18/doc/man/halt.kill.text new file mode 100644 index 00000000..4a31e257 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/man/halt.kill.text @@ -0,0 +1,46 @@ +halt.kill(8) +============ +Nico Schottelius + + +NAME +---- +halt.kill - Halts systems running cinit through a kill call + +SYNOPSIS +-------- +'halt.kill' + + +DESCRIPTION +----------- +You normally halt your system through 'cmd'. If cmd is unavailable or +the IPC system has problem there is still the possibilty to halt +it through a signal. See 'src/include/signals.h' for more details which +signals are used. + +OPTIONS +------- + +none:: + No options are used, If you execute halt.kill, your system will be halted. + + +AUTHOR +------ +Nico Schottelius + + +RESOURCES +--------- +Main web site: http://unix.schottelius.org/cinit/[] + +SEE ALSO +--------- +cmd(8) + + +COPYING +------- +Copyright \(C) 2007 Nico Schottelius. Free use of this software is +granted under the terms of the GNU General Public License (GPL). diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/man/poweroff.kill.text b/software/cinit/browse_source/cinit-0.3pre18/doc/man/poweroff.kill.text new file mode 100644 index 00000000..62807ba1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/man/poweroff.kill.text @@ -0,0 +1,47 @@ +poweroff.kill(8) +================ +Nico Schottelius + + +NAME +---- +poweroff.kill - Halts and powers off systems running cinit through a kill call + +SYNOPSIS +-------- +'poweroff.kill' + + +DESCRIPTION +----------- +You normally poweroff your system through 'cmd'. If cmd is unavailable or +the IPC system has problem there is still the possibilty to poweroff +it through a signal. See 'src/include/signals.h' for more details which +signals are used. + +OPTIONS +------- + +none:: + No options are used, If you execute poweroff.kill, your system will be + powered off. + + +AUTHOR +------ +Nico Schottelius + + +RESOURCES +--------- +Main web site: http://unix.schottelius.org/cinit/[] + +SEE ALSO +--------- +cmd(8), halt.kill(8), reboot.kill(8) + + +COPYING +------- +Copyright \(C) 2007 Nico Schottelius. Free use of this software is +granted under the terms of the GNU General Public License (GPL). diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/man/reboot.kill.text b/software/cinit/browse_source/cinit-0.3pre18/doc/man/reboot.kill.text new file mode 100644 index 00000000..a748553e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/man/reboot.kill.text @@ -0,0 +1,47 @@ +reboot.kill(8) +============== +Nico Schottelius + + +NAME +---- +reboot.kill - Reboots systems running cinit through a kill call + +SYNOPSIS +-------- +'reboot.kill' + + +DESCRIPTION +----------- +You normally reboot your system through 'cmd'. If cmd is unavailable or +the IPC system has problem there is still the possibilty to reboot +it through a signal. See 'src/include/signals.h' for more details which +signals are used. + +OPTIONS +------- + +none:: + No options are used, If you execute reboot.kill, your system will be + rebooted. + + +AUTHOR +------ +Nico Schottelius + + +RESOURCES +--------- +Main web site: http://unix.schottelius.org/cinit/[] + +SEE ALSO +--------- +cmd(8), halt.kill(8), poweroff.kill(8) + + +COPYING +------- +Copyright \(C) 2007 Nico Schottelius. Free use of this software is +granted under the terms of the GNU General Public License (GPL). diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.1 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.1 new file mode 100644 index 00000000..d875ff2d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.1 @@ -0,0 +1,4 @@ +- initial release: show the project +- add gpl3 header to all scripts in bin/ +- add README +- add some todos diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.1.1 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.1.1 new file mode 100644 index 00000000..34999cb8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.1.1 @@ -0,0 +1,6 @@ +- make it possible to migrate a Debian Lenny +- continue rename cinit.* to cinit-conf.* + * migration from cinit-bin +- fixup inclusion +- add more helper scripts +- add report_success.sh diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.2 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.2 new file mode 100644 index 00000000..9b5c3496 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.2 @@ -0,0 +1 @@ +- make it possible to migrate a Debian (Lenny): basic (without everything, make it run) diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.2.1 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.2.1 new file mode 100644 index 00000000..117995bc --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.2.1 @@ -0,0 +1 @@ +- add manpages diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.2.2 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.2.2 new file mode 100644 index 00000000..d359b248 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.2.2 @@ -0,0 +1,3 @@ +- remove calls to dirname! + . "$(dirname $0)/cinit-conf.read-conf" + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3 new file mode 100644 index 00000000..4f27dd34 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3 @@ -0,0 +1 @@ +- make bla_dir and bladir consistent diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre11 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre11 new file mode 100644 index 00000000..ec532269 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre11 @@ -0,0 +1,10 @@ +Done: +- cleanup ipc: + merge cinit_ipc_logon() and cinit_ipc_connect()? + => already done! +- finish cmd in general, perhaps only including one command. +[18:51] denkbrett:src# LANG=C cp cinit /sbin/cinit +cp: cannot create regular file `/sbin/cinit': Text file busy + => mv & cp! + => documentation! + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre12 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre12 new file mode 100644 index 00000000..edbe41d9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre12 @@ -0,0 +1,41 @@ +Wished release date: 6/7. September + +-------------------------------------------------------------------------------- +Done: +- begin to write documentation about client functions + => noone needs that anyway. skip and concentrate on functions now. + +cleanup ipc! + where to call !cinit_ipc_logon and !cinit_ipc_connect? + +-------------------------------------------------------------------------------- +Add +Hallo, + +Liebster Nico, wuerdest du die dazu durchringen "make install" und +vllt. sogar "make install-test" in die cinit 0.3er branch aufnehmen? + +vlg Lucky + ==> added make install in previous releases, make test maybe come back + later again. +- cleanup communication: + put parts of comm.h into cinit.h => global exposure + or define new structure in cinit.h? + => removed comm.h +- check svc path in cmd: if it's relative, add /etc/cinit/svc to it + => added. +- add update for git => so cloning does not fail! + => added hook. +Use http://www.opengroup.org/onlinepubs/009695399/basedefs/stdint.h.html + => partly implemented + +- remove manual pid support, use the one supplied by msgctl() + => ok. +- there seems to be a race condition in the execution of the + dependency tree: it happens that services that depend on + mounted /proc, have needs on mount/proc are still exited + before /proc is mounted. + problem of cinit or of mount, exiting too early? + guess the first one, so fix it :-) + + => missing check in svc_needs_status.c diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre13 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre13 new file mode 100644 index 00000000..ff8d4296 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre13 @@ -0,0 +1,19 @@ +Wished released date: 10./11. September + +-------------------------------------------------------------------------------- +Done: +- add get_svc_pid() +- cleanup msgq.h: namespace! +- cleanup cmd: add real usage, add -h for help +- cleanup cinit_ipc_logon()! [already done before] +- cleanup headers: ==> not yet needed. + seems to make more sense, to have more than one exposed header. + cinit.h gets to fast too big. so splitoff to: + /* main */ + /* ... */ +- create libcinit.a/so and link against it => not need right now. +- pre12 seems to have an IPC problem: Fix it. ==> problem with not finishing cinit startup +- global symbol to track the connection to cinit in the client + => cinit_ipc_cinit() - initalise ipc in the client (only once) + => not really our problem, client should be able to remember + whether she called us once or twice. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre13.race-condition b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre13.race-condition new file mode 100644 index 00000000..19bea29a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre13.race-condition @@ -0,0 +1,12 @@ +09:49 < telmich> is it possible, that if I fork() and call _exit(0) in the child, that the + _exit(0) is executed earlier than the fork() call returns in the parent? +09:49 < telmich> I'm having some race condition in cinit, where the pid is not yet updated in + the service structure, and the child exited before and thus cinit does not + update the service +09:49 < telmich> as being run +09:51 < telmich> rexy_: currently I'm thinking about implementing a lock before starting the + fork() +09:51 < telmich> rexy_: thus cinit will react differently, if the starting function is still + running +09:51 < telmich> rexy_: but I'm somehow confused, that fork() allows such race condition + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre14 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre14 new file mode 100644 index 00000000..e002d60c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre14 @@ -0,0 +1,3 @@ +Wished release date: 13. September +- add support for shutting down services + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre15 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre15 new file mode 100644 index 00000000..8f81446a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre15 @@ -0,0 +1,62 @@ +Wished release date: 20. September +- Add support for starting/stoping services via cmd + - add support for additional information (like which services stopped + when having dependencies) + - if cinit has to stop / start others, how to report? + - add strings to cinit internally to a buffer? + -> or struct cinit_answer + status + +- add support to enable services + +- create some boot profiles +- cinit.install.standard.dirs.argv +- code check: + * check needs: + really started, after started or after finished starting? + * wants: + are they checked? + +- fix devel/codingguideline.text! + +- perhaps merge svc_need_status to svc_status + +cinit-communication: + cinit_get_failed_needs(char *name, int *cnt); +- add support for shutting down services on halt +- cleanup msgq/cinit_ipc_listen.c +- move logic out of the child handler: + => use the new while()-loop in core/cinit.c! + + time() and co. are problematic in a child handler! + + introduce global list of services to execute + => perhaps reuse already existing dependency-list? + + tree_exec(): check whether adding something to the dep list hurts + => don't think so. + expand / change ipc handler: + make it return the message + move while() loop to core/cinit.c + + in the while loop, the global dependency list should + be empty. + + if it is not, we should start something. + + => chance cinit_ipc_listen() to use without while() loop + => export logic to core/cinit.c +- map status numbers to messages +- Cleanup doc/user/NEW_using_cinit_freebsd + => make a real document! +- write / update manpage for cmd! +- add sleep() support after service exited. + +-------------------------------------------------------------------------------- +Done: +- add minimal test-suite: + cmd -s /etc/cinit/svc/init + cmd -p /etc/cinit/svc/init + cmd -v + cmd -V +- change to GPLv3? + => ask Markus (cinit), Killerfox (cconfig) and Peter (cconfig) diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre16 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre16 new file mode 100644 index 00000000..16e6efb5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre16 @@ -0,0 +1,9 @@ +Wished release date: 27. September +- check porting code: + * advise users to set conf/os + * add uname -r | tr ... as make osconfig +- check that all parts of cinit compile at least under: + * linux, linux on 64bit + * FreeBSD + * NetBSD +- cleanup output diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre17 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre17 new file mode 100644 index 00000000..82976e37 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre17 @@ -0,0 +1,11 @@ +Wished release date: 3. October + +"Code quality assurance release" + +- Fix bugs all outstanding bugs. +- Give cinit some time, write some documentation and make pre17 the last pre of the 0.3 + serie. +- Give the code out to other developers, request explicit strong critics + => So even + "This could be in theory, if Mars is behind Pluto on Sunday evening" bugs + are out. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre18 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre18 new file mode 100644 index 00000000..d02aac8c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre18 @@ -0,0 +1,3 @@ +- add support to manually set status of a service: + cmd -s respawn, failed, once, ... +- make get status = -g diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre19 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre19 new file mode 100644 index 00000000..2e4dfe15 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.3pre19 @@ -0,0 +1,4 @@ +- enable fast shutdown: + - ignores services and jumps directly to conf/last +- enable ultrafast shutdown + - even skips conf/last diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.4 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.4 new file mode 100644 index 00000000..3b772d4c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.4 @@ -0,0 +1,44 @@ +-------------------------------------------------------------------------------- +Clean service status messages: + Ausgaben nach Beendigung vom Starten des Services. + + [ on ] %s + Ergebnis + [ off ] %s +-------------------------------------------------------------------------------- +16:13 < KillerFox> telmich: hast du eigentlich schon hooks in cinit? +20:07 < KillerFox> Vapier führt mal wieder Selbstgespräche. +23:39 < telmich> KillerFox: wozu? +23:42 < KillerFox> telmich: es wäre durchaus interessant, um z.B. sterbende Prozesse wieder zu + starten und so. +23:42 < KillerFox> oder einen Hinweis per Mail zu verschicken. +23:43 < telmich> ahh, du meinst so benachrichtigungen von cinit an $prozess? +23:43 < KillerFox> jein +23:43 < KillerFox> du machst z.B. /etc/cinit/hooks/ +23:43 < KillerFox> darin gibts dann Scripte die bei bestimmten Ereignise aufgerufen werden. +23:43 < KillerFox> z.B. wenn ein Prozess stirbt +23:44 < KillerFox> du kannst dir natürlich auch überlegen, es auf Prozessebene herunter zu + hacken +23:44 < telmich> ja, eher letzeres +23:44 < KillerFox> so könnte man auch ein paar nette Sachen machen. z.B. Aufräumarbeiten + nachdem ein Prozess beendet wurde oder so +23:45 < KillerFox> telmich: ich finde beides Sinnvoller +23:45 < KillerFox> telmich: globale und lokale Hooks +23:45 < KillerFox> lokale überschreiben globale oder so +23:45 < telmich> oder laufen beide +23:45 < KillerFox> oder man kaskadiert sie. +23:45 < KillerFox> genau +23:46 < KillerFox> sinnvolle hooks: pre-start, start, post-start, pre-stop, stop, post-stop, + crash +23:46 < KillerFox> oder sowas +23:47 < KillerFox> vielleicht fallen dir noch mehr ein. +23:48 < KillerFox> die Kommunikation könnte man dann wahlweise über Parameter oder + Umgebungsvariablen lösen +23:48 < KillerFox> um z.B. mitzuteilen welcher Prozess gestoppt wurde +23:49 < KillerFox> z.B. wenn man in pre-stop je nach Bedingung den Stop-Vorgang abbrechen will. +23:49 < telmich> via ${ipc} => kommt darauf an, was implementiert ist; zZ ist es ja msgq +23:50 < telmich> ahh, so +23:50 < telmich> das waere noch recht trivial ueber pipes +23:50 < KillerFox> fifos/sockets, was auch immer. +23:50 < KillerFox> das müsste man dann mit einer Bibliothek lösen oder so +23:50 < telmich> ja, die ist auch im aufbau in libcinit/ + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.4.1 b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.4.1 new file mode 100644 index 00000000..b0d7685d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/0.4.1 @@ -0,0 +1,2 @@ +- Generate automatic asciidoc from conf/* + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/todo/long_list b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/long_list new file mode 100644 index 00000000..ec11f18d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/todo/long_list @@ -0,0 +1,21 @@ +Code +---- + +Performance +~~~~~~~~~~~ + +- Perhaps replace malloc for path with static buffer? + +Compatibility +~~~~~~~~~~~~~ +- create migration scripts + +Usage +~~~~~ +- Aid in debugging cinit-configuration (check without reboot) +- Integrate into OS package system + +Other +~~~~~ +- add log support to shm +- Check and clean doc/: Remove *TODO*+ROADMAP and leave behin doc/TODO (or ditz) diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/FAQ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/FAQ new file mode 100644 index 00000000..53494f73 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/FAQ @@ -0,0 +1,35 @@ +-------------------------------------------------------------------------------- +FAQ - Frequently asked questions, +Nico Schottelius, 2005-06-05 (Last Modified: 2005-06-12) +-------------------------------------------------------------------------------- + +Q: So, what's good in cinit? +A: Fast executing, clean design, parallel execution, profile support, + small binary size (~50KiB static against uclibc), easy configuration, + just to name the main facts. + +Q: How do I start cinit? +A: You don't start cinit directly, but your kernel does. + Please have a look at your system documentation how to tell your kernel + to load /sbin/cinit as init. You'll also find some examples in + the README file. + +Q: What is /etc/cinit/init used for? +A: The init service is not just a placeholder, it is the beginning of + executing services. + +Q: /etc/cinit/init seems not to be used when I use profiles? +A: That's true. When you select a profile, cinit will begin in this + directory: "cprofile:home" will use /etc/cinit/home as starting + point. + +Q: Why does it take so long before my getty is respawned? +A: cinit only waits 5 seconds (see conf/sleep_svc), if + a) a service didn't exit normally + b) the service had a non-zero exit code + + So fixing the problem would mean fixing your getty / shell. + +Q: I am using a tarball from samples/ and there is no getty on tty1!? +A: That's true, the first console is used for logging purpose in the + examples. You still have six console (tty2-tty7) running getty. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/README.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/README.text new file mode 100644 index 00000000..3467ba63 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/README.text @@ -0,0 +1,21 @@ +cinit/doc/devel +=============== +Nico Schottelius +0.1, Initial Version from 2006-07-09 +:Author Initials: NS + +This directory contains cinit user documents. + +Introduction +------------ +This file describes the related documents in the current directory. + +Who should read those documents? +-------------------------------- +People using cinit. + +Content +------- + +hints.text: Some general hints +tuning.text: Some tuning hints diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/TODO b/software/cinit/browse_source/cinit-0.3pre18/doc/user/TODO new file mode 100644 index 00000000..6044e97a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/TODO @@ -0,0 +1,4 @@ +All the content in this file is unsorted. Reading may harm you. + +Confdir: /etc/cinit/conf/ +panic: /etc/cinit/conf/panic, /etc/cinit/conf/panic.params diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/compiles.on.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/compiles.on.text new file mode 100644 index 00000000..ad467d38 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/compiles.on.text @@ -0,0 +1,19 @@ +cinit - known configurations cinit compiles on +============================================== +Nico Schottelius +0.1, for cinit 0.3, Initial Version from 2006-12-08 +:Author Initials: NS + + +This document lists all the configuration known to me on that +cinit compiles. If you compiled cinit with another configuration, +drop a mail to nico-cinit-report [at] schottelius.org. + +The list +-------- +cinit is known to compile on: + +- x86-Linux-Debian-3.0-gcc-4-glibc-2.3.2 +- x86-Linux-Debian-3.0-gcc-3.4.3-glibc-2.3.5 +- ppc-Linux-Gentoo-2004.3-gcc-3.4.3-glibc-2.3.5 +- ppc-Linux-Gentoo-2004.3-gcc-3.4.3-uclibc-0.9.27 diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/conf-system.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/conf-system.text new file mode 100644 index 00000000..600112c3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/conf-system.text @@ -0,0 +1,34 @@ +The conf/ system +================= +Nico Schottelius +0.1, for cinit 0.3, Initial version from 2006-12-08 +:Author Initials: NS + +This documentes describes the configuration system used by cinit. + + +What is the conf/ system? +------------------------- +The conf/ system is the configuration system for the cinit build. +The first line of each file below conf/ is a configuration value +with the name of the file: + +---------------------------------------------------------------------- +[9:00] hydrogenium:cinit-0.3pre6% head -n 1 conf/cc +gcc +---------------------------------------------------------------------- + +This means that the variable "cc" has the value "gcc". + + +What is the reason for conf/? +----------------------------- +I needed a small and simple configuration system, which may be included +in the full build process. + + +Is conf/ also usable for other projects? +---------------------------------------- +In its current state conf/ is just a prototype, with which I experiement +a lot. But it is possible that the future aim is to provide a simele +configuration and autoconfiguraton mechanism. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/configuring.cinit.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/configuring.cinit.text new file mode 100644 index 00000000..8e45937d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/configuring.cinit.text @@ -0,0 +1,337 @@ +cinit - Configuring +=================== +Nico Schottelius +0.1, for cinit 0.3, Initial version from 2005-05-28 +:Author Initials: NS + + +This documentes describes how to configure cinit. +You should already have cinit installed, otherwise read +"cinit - Installing" first. + + +Less is more +------------ +In contrast to a lot of other init system configurations, the +cinit configuration is not a "catch all", but more a "minimalistic" +configuration: I don't think it's wise to include support for +exotic configurations and a lot of if/else combinations in an init +system configuration. These if/else should be solved at the configuration +time, *not* everytime at boot! + + +General configuration layout +---------------------------- +Cinit uses the <<>> configuration syntax, which means that +the configuration is kept as simple as possible. The following +sections will show you what that means. + +The cinit configuration consists of +- a special configuration directory +- and the service definitions. + +Paths +----- +Normally the configuration is kept below '/etc/cinit' +(though you can change this before compiling in conf/cinit_dir). + +The full description of the path layout of cinit and how to change it +can be found in 'paths.text'. + +Conf +---- +The special configuration directory is normally called `conf/` +(defined at compile-time in `conf/c_confdir`). + +For all executables into this directory apply the same rules as mentioned +below in "Execution: on and off": Appened .params specifies parameters, +appended .env specifies environment. + + +conf/last +~~~~~~~~~ +This is the last part that will be executed. After it has finished, cinit +will halt, power-off or reboot your machine. + +You can use it for whatever task to accomplish (as most things of cinit), but +the idea behind it is to use it for cleaning up things that are not covered +by the off parts of the services. This maybe swapoff (although this is an unecessary +call before poweroff, imho and even if needed this could be handled within the +off part of the same services that enabled it) or `umount -a` for everything +manually mounted and not unmounted yet. + + +conf/sleep_before_kill +~~~~~~~~~~~~~~~~~~~~~~ +This file contains just one line: The number of seconds to sleep after SIGTERM was sent +to every remaining process before sending SIGKILL to all processes. If this file +is unreadable or not existent, cinit will fall back to the value compiled in +(which was specified at build time in conf/sleep_kill). + + +Services +-------- +cinit is service based. Other init systems use shell +scripts (for instance /etc/rc, /etc/init.d/rc as starters +and /etc/rc*.d/* as "service definitions"). + +'current-init-problems.text' explains why cinit does *not* +use nor recommends the use of shell scripts. + +A service is simply a directory. This directory contains information about + +- what should be started when starting the service +- what should be started when stoping the service +- what dependencies the service has +- whether to restart it, when it exits + + +Full service definition +~~~~~~~~~~~~~~~~~~~~~~~ +. A service consists of + - a base directory (like /etc/cinit/svc/mount/root/) + - dependency configuration (`needs` and `wants`) + - start/stop programs (`on` and `off`) + - respawn flag (`respawn`) + + +Base directory +^^^^^^^^^^^^^^ +You can create the base directory everywhere below /etc/cinit/svc. +You may and it is recommened to create a directory structure +(see 'example-directory-structure.text'). + + +Dependencies +^^^^^^^^^^^^ +The subdirectories + +- `wants` +- and `needs` + +contain the dependencies for the service. + +Read 'dependencies.text' for more information. + + +Respawning +^^^^^^^^^^^ +If you create the empty file 'respawn' (adjustable via conf/c_respawn) +the service will be restarted after it exits. + +-------------------------------------------------------------------------------- +# Tell cinit to respawn the eth0.udhcpc service +touch /etc/cinit/svc/network/eth0.udhcpc +-------------------------------------------------------------------------------- + + +Execution: on and off +^^^^^^^^^^^^^^^^^^^^^ +When a service starts, the file `on` in the service +directory is executed. It is ok, if this file is not existing. +When a service stops, the file `off` in the service +directory is executed. + +The file with the extension `.params` is used to specify the arguments +to pass. Each line contains exactly one parameter. + +The file with the extension `.env` is used to specify the environment +to pass. Each line contains exactly one variable definition in the form +'variable=value'. + +. The following six files are possibly used on starting/stoping: + - ./on (the program called on startup) + - ./on.params (the parameters to pass to the program, see conf/c_params) + - ./on.env (the environment to pass to the program, see conf/c_env) + - ./off (the program called when shutting down the service) + - ./off.params (the parameters to pass to the program) + - ./on.env (the environment to pass to the program) + +Some examples: +---------------------------------------------------------------------- + /etc/cinit/svc/init: + ./wants -> services it wants + ./needs -> services it needs +---------------------------------------------------------------------- + +A more or less normal service without dependencies: +---------------------------------------------------------------------- + /etc/cinit/testsvc: + on -> link to program + on.param -> parameters to program + respawn -> restart it +---------------------------------------------------------------------- + +A service with all options used: +---------------------------------------------------------------------- + /etc/cinit/fullsvc: + on -> program to start when switching on + on.params -> parameters to pass to start program + on.env -> environment to pass to start program + + respawn -> respawn service + + off -> program to start when switching off + off.params -> parameters to pass to stop program + off.env -> environment to pass to stop program + + wants/* -> services it wants before starting (non-critical ones) + needs/* -> links to needed services (critical!) before starting +---------------------------------------------------------------------- + + +Profiles +-------- +Profiles allow you to define different startup scenarios and select +those before bootup. Read 'profiles.text' for more information about +profiles. + +The profile support was added in cinit-0.0.6. + + +Service execution order +------------------------ +The first service executed is '/etc/cinit/svc/init'. +If a profile is selected '/etc/cinit/svc/`profilename`' is used +instead. + +Cinit builds a full service dependency tree through the `wants` +and `needs` of the first service and its dependencies +(recursively). + +After the tree is generated, cinit begins to start the services +at the end of the tree. These services have no `needs`. + +If you manage to create circular dependencies your system will not startup. +You can verify the correctness your configuration with the script +`cinit.check.config`. + + +Hints +----- + +Service executing / parameters +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +The on and off files can and should be links to the programs you want +to execute instead of a shell script. This way you save yourself the overhead +of loading a shell. The speed enhancement is very big if you have shells +like bash installed as /bin/sh (which is *not* senseful anyway, I would +recommend dash or ksh for /bin/sh). + +The on.params and off.params files could also be links to system configuration: + +Assume the service is called local-tuning/keyboard. +The service could look like this: +---------------------------------------------------------------------- + on -> /bin/loadkeys + on.params -> /etc/sys/keyboard.mapping + + And /etc/sys/keyboard.mapping would contain only the string + "dvorak" (or "de-latin1" or "sg-latin1" or ...). +---------------------------------------------------------------------- + + +Daemons +~~~~~~~~ +Daemons are programs that go away to the background (using fork()) after +start). + +The fork-away strategy seems to be some illness introduced by traditional +init systems, that are dependent on the fact, that a process exits on +startup. + +cinit in contrast remembers the process ID (pid) of the services it +restarts (those with `respawn` enabled). + +So when the daemon fork()s away and the parent process exits it looks to +cinit like the watched service died and cinit will restart it. + +Happily, most processes can be taught not to go to background. +Some processes even do that by default and very less are broken that +one cannot tell them not to background. + +A list of known processes that are normally used in respawn +processes can be found in 'daemons.backgrounding.text'. + +If your process is not listed in `daemons.backgrounding.text', +check the documentation of your daemon program, if may have a +switch to disable forking. + +But, with a small hack it is even possible to respawn those broken processes: + +We start a program, that + - starts the daemon, + - monitors the pidfile of the daemon, + - waits until that pid does not exist anymore + - and then exits. + +Such a program is included into the cinit source tarball, +though I do not recommend using it. The better way is to implement +non forking mode into your process. + +The name of the program (actually a shell script) is 'cinit.wait.for.daemon'. + +You can use it as the `on` part of a service and add + + - the pidfile, + - the process binary + - and the process parameters + +to `on.params`. + +Thus the service could look like: +---------------------------------------------------------------------- + svc-broken-daemon/ + on -> /sbin/cinit.wait.for.daemon + on.params: + /var/run/apache.pid + /usr/packages/apache-2.0.51/bin/httpd + -DSSL +---------------------------------------------------------------------- +(This is not a so good example, because Apache supports non-forking mode). + +Be aware: This is just a hack, first try to avoid backgrounding +and you won't need this hack! + + +Logging +~~~~~~~ +Currently there's no special logging support. +When a process writes to stdout, it will be displayed on +the same stdout cinit is connected to. + +In newer versions cinit (perhaps cinit-0.4) will also support logging +stdout and stderr of a service. + + +How to migrate your old init-system configuration to cinit +---------------------------------------------------------- +This is highly dependent on your actual system, your system +configuration and your own ideas. + +Cinit is able to replace all other init systems I know about. + +So the only question is "How to do it?". + +There are some hints on how to migrate to cinit in general and also +some os specific help in the file 'migrating-init-systems.text', + + +Debugging the configuration +---------------------------- +Use `ls -lR /etc/cinit` or one of the tools found in contrib+tools/. + + +Examples +-------- +Currently there are some example configurations available +at http://unix.schottelius.org/cinit/samples/cinit-0.3/, sorted +by host on which they are created. + +In near future, there will also be a file name configuration.example.text, +which will lead you to a sample configuration. + + +References +---------- ++ [[[cconfig]]] http://nico.schotteli.us/papers/linux/cconfig/ diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/cross-compiling.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/cross-compiling.text new file mode 100644 index 00000000..67208534 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/cross-compiling.text @@ -0,0 +1,6 @@ +conf/os to destination os +conf/cc +conf/ld +conf/cflags +conf/ldflags + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/current-init-problems.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/current-init-problems.text new file mode 100644 index 00000000..529c2f84 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/current-init-problems.text @@ -0,0 +1,170 @@ +Currently available init systems and their problems +=================================================== +Nico Schottelius +0.1, for cinit 0.3, Initial version from 2006-12-11 +:Author Initials: NS + + +This document describes some other init systems, especially +the "traditional" ones and describes their problems. + + +Introduction +------------- +some history, sysv, bsd, + +minit, runit, initng, cinit, upstart + + +Implementations +--------------- +List of current implementations as of 2006-12-12. + + +Linux Sys-V-Init +~~~~~~~~~~~~~~~~ +Debian Sid + +/etc/inittab + +"First script" /etc/init.d/rcS (specified +/etc/init.d/rcS: Bourne shell script text executable + +Runlevels: 0-6, different states + +-------------------------------------------------------------------------------- +[9:51] hydrogenium:cinit-0.3pre6% /sbin/runlevel +N 2 +-------------------------------------------------------------------------------- + + +Depending on runlevel, the init calls /etc/init.d/rc $runlevel. + +This is manually configured in /etc/inittab + +/etc/init.d/rc: Bourne shell script text executable + +/etc/init.d/rc + +Calls symlinks in /etc/rc?.d. Each runlevel a directory: + +-------------------------------------------------------------------------------- +[9:51] hydrogenium:cinit-0.3pre6% ls -ld /etc/rc*.d +drwxr-xr-x 2 root root 4096 2006-12-01 16:56 /etc/rc0.d +drwxr-xr-x 2 root root 4096 2006-12-01 16:56 /etc/rc1.d +drwxr-xr-x 3 root root 4096 2006-12-01 16:56 /etc/rc2.d +drwxr-xr-x 2 root root 4096 2006-12-01 16:56 /etc/rc3.d +drwxr-xr-x 2 root root 4096 2006-12-01 16:56 /etc/rc4.d +drwxr-xr-x 2 root root 4096 2006-12-01 16:56 /etc/rc5.d +drwxr-xr-x 2 root root 4096 2006-12-01 16:56 /etc/rc6.d +drwxr-xr-x 2 root root 4096 2006-11-28 23:17 /etc/rcS.d +-------------------------------------------------------------------------------- + + + +rlmanager: sys-v-init hack +~~~~~~~~~~~~~~~~~~~~~~~~~~ +rlmanager: one script to be executed, sources +simply configuration + +Gentoo Linux +~~~~~~~~~~~~ +no content yet + +BSD init +~~~~~~~~ +Analyzed on FreeBSD. +/etc/rc +/etc/rc.d/ system services +/usr/local/etc/rc.d/ user installed services +Scripts may use values from /etc/rc.conf to check whether +they should be started or not. + +runit +~~~~~ +Three stages: Script1, dependencies, Script3 + + +Initng +~~~~~~ +no content yet + +minit +~~~~~ +Focus on being small. Needs libowfat. +Log support through pipe. + + + + + +Problems overview +----------------- + +Scripts +~~~~~~~ +Scripts are slow. Startup time. Execution time. Unecessary overhead. + + +Sequential startup +~~~~~~~~~~~~~~~~~~ +In the 'old' init systems there is no support of parallel execution. +So if one services hangs at startup, the whole system has to wait +(for instance a dhcp request). In the worst case this may result in +a non-booting system. Systems with dependencies can start the gettys +for login before, in parallel to or even after blocking services are +started. The fact, that they *are* started means you can interact with +the system, you can end looping or blocking services. + +So sequential startup may not only be the reason for a pretty +slow system, but also for an unmaintainable one. + +Unecessary services +~~~~~~~~~~~~~~~~~~~ +Many implementations try to do whatever-is-possible on boot, trying to +cover every possible and impossible situation. + +Portmap without any program that needs it. + +Starting all installed services per default (Debian) vs. let the +user choose what to start (Gentoo). + +Nicht entfernte Altlasten ab und zu. + + +No dependencies +~~~~~~~~~~~~~~~ +Systems without dependencies may result in a chaos state after booting up. + + +Only soft dependencies +~~~~~~~~~~~~~~~~~~~~~~~ +The dependencies are used, but because of soft dependencies, services +may be started although their dependency is missing. + + +Parallel init system debugging +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In contrast to the old init systems, parallel executing init systems +are much harder to debug. If the starting init systems does not have +proper logging / reporting to the user (like cinit-0.2 has), the user +may never find out, what happened and why. + + +Parallel / dependency checking init system with variable boot order +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +The boot order may be different each time you boot and is dependent +on the success or failure of services. This way you can never tell +exactly how and in which order they are executed. On multiprocessor +machines, where processes may be truely executed in parallel, there +is no order anymore, but there are n orders on n processors. + +To solve this issue, init systems which support parallel execution +should ship with some testing tools, that simulate a startup. + +cinit will ship with such a tool in cinit-0.4. + + +References +---------- +no content yet diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/daemons.backgrounding.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/daemons.backgrounding.text new file mode 100644 index 00000000..5b61b91d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/daemons.backgrounding.text @@ -0,0 +1,84 @@ +cinit - Daemons backgrounding +============================= +Nico Schottelius +0.1, for cinit 0.3, Initial versinon from 2005-06-12 + + +This document describes the backgrounding process and how to disable it. + + + +Definition +----------- +A daemon is a program which runs in the background. +Running in the background means you cannot access the process +directly (like you can press a key in a shell). + + +Daemons and cinit +------------------ +cinit normally watches system services and restarts them +(`respawn` flag in the configuration). If the process goes to background, +cinit cannot control it directly anymore. + +List of daemons and non-forking parameters +------------------------------------------- + +The following daemons / servers are known to avoid backgrounding easily: + +- acpid [x86 power management]: -f (undocumentated but works) +- apache [webserver]: -DFOREGROUND +- asterisk [pbx]: -f +- bind [dns server/caching]: -f +- cardmgr [pcmcia/cardbus]: -f +- cron (vixie) [schedular]: -f +- cupsd [printer server]: -f or -F +- dhclient [dhcp client]: -d +- dhcp3 (isc) [dhcp server]: -f +- distccd [compile server]: normal behaviour +- dnsmasq [dhcp/tfpt/dns]: -k +- dovecot [imap/pop3 server]: -F +- fam [file alteration monitor]:-f +- fcron [schedular]: -f +- frox [ftp proxy]: "NoDetach" in config +- freeradius [radiusd]: -f +- gdm [display manager]: -nodaemon +- hybrid [irc server]: -foreground +- icecast2 [sound streamer]: normal behaviour +- mini-lpd [printer server]: normal behaviour +- metalog [log server]: normal behaviour +- monotone [vcs]: normal behaviour +- mpd [music server]: --no-daemon +- nessusd ["security server"]: normal behaviour +- ntpd [time server]: -n +- nylon [socks proxy]: -f (prints output to terminal) +- oidentd [identd server]: -i +- oops [http proxy]: normal behaviour +- openpbx [pbx]: -f +- openssh [ssh server]: -D +- openvpn [vpn server]: normal behaviour +- pbbuttonsd [power management]:normal behaviour +- portmap [portmapper]: -f +- proftpd [ftp server]: -n +- qmail [mta]: normal behaviour +- rsync ["file server"]: --no-detach +- silcd ["secure chat server"]: -F, --foreground +- slapd [ldap]: -d +- snmpd [snmp daemon]: -f +- stunnel [ssl wrapper]: "foreground = yes" in config +- svnserve [vcs]: --foreground +- syslogd [log server]: -n +- syslog-ng [log server]: -F +- tcpserver [super server]: normal behaviour +- udhcpc [dhcp client]: normal behaviour +- vsftpd [ftp server]: normal behaviour (or: config: background=no) +- xinetd [super server]: -dontfork + + +Problematic daemons +------------------- +Those are the daemons that do not offer the possibility (as of release 0.2): + +- atd (no switch, no configuraton option) +- inetd (some variants) +- nscd (no switch, no configuraton option) diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/debugging.configuration b/software/cinit/browse_source/cinit-0.3pre18/doc/user/debugging.configuration new file mode 100644 index 00000000..1289865e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/debugging.configuration @@ -0,0 +1,32 @@ +-------------------------------------------------------------------------------- +Debugging your init configuration, +Nico Schottelius 2005-06-17 (Last Modified: 2005-06-17) +-------------------------------------------------------------------------------- + +As writing an init configuration is not the easiest thing, +here are some problems (P) and debugging hints (H): + +P: There's no output! +H: If you don't start a service which outputs something there won't be any, + cinit starts up silently. + +P: Service XYZ seems not to work? +H: Try the following in your shell: + cd /etc/cinit/the-service; ./on "$(on.params)" + If that succeeds it has perhaps something missing which should have been + started before. +H: Create a test-service, which contains the following: + on: link to /bin/echo + on.params: "A test string" (with or without the quotes) + Now add the test-service to the needs directory of service XYZ. + If you see output the next time, the service is started. + Otherwise you forgot to make another service dependent on service + XYZ. + +P: How can I test if a non-outputting service successfully started? +H: Create another service, which depends on your service and make + it echo something. + +P: Does that profile support really work? +H: Try that: cprofile:NONEXISTENT and you'll see. + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/dependencies.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/dependencies.text new file mode 100644 index 00000000..e1154a54 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/dependencies.text @@ -0,0 +1,68 @@ +cinit - Dependencies +==================== +Nico Schottelius +0.1, for cinit 0.3, Initial Version from 2005-12-13 +:Author Initials: NS + +This document describes the different dependency types of cinit. + + +Dependencies in general +----------------------- +Each service may have two types (non-exclusive) types of dependencies: +The so called `needs` or `wants`. These are directories below the service +directory and contain symbolic links to the dependencies. +The name of the link can be freely chosen. + +An example: + +The service '/etc/cinit/svc/getty/2' needs the service +'/etc/cinit/svc/local-tuning/keyboard-layout': +-------------------------------------------------------------------------------- +[21:35] hydrogenium:needs# cd /etc/cinit/svc/getty/2/needs +[21:35] hydrogenium:needs# ls -l +insgesamt 0 +lrwxrwxrwx 1 root root 37 2006-10-26 17:51 keyboard-layout -> ../../../local-tuning/keyboard-layout +[21:35] hydrogenium:needs# cd keyboard-layout/ +[21:35] hydrogenium:keyboard-layout# pwd -P +/etc/cinit/svc/local-tuning/keyboard-layout +-------------------------------------------------------------------------------- +(Warning: This is an incomplete example, it misses at least `mount/root` +as dependency) + +This service could additionally want something else, too. It is also +possible that a service only `wants` another service or that a service +has no dependencies. + + +Absolute versus relative links +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +cinit does not care whether a link is relative or absolute. And +as far as I can see it does not make any difference to usability. + +In general, it seems to be a little bit 'easier' to use relative links +when manually configuring cinit ('ln -s ../../../service' versus +'ln -s /etc/cinit/svc/category/service'), but easier readable when +analysing them (with `ls -l'). + + +The two types +------------- + +needs +~~~~~ +`Needs` are the 'hard dependencies': If a services fails to start that +is linked in the `needs` directory, the service will not be started. + + +wants +~~~~~ +`Wants` are the 'soft dependencies': cinit will try to start the dependencies +found in `wants` before the service, but the service will also be started, +indenpendend of success of the dependencies. + + +Circular dependency problem +---------------------------- +If you manage to create circular dependencies cinit will fall into an +endless loop. Use `cinit.check.config` to verify your configuration. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/example-directory-structure.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/example-directory-structure.text new file mode 100644 index 00000000..d19ac1fa --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/example-directory-structure.text @@ -0,0 +1,140 @@ +cinit - Example directory structure +=================================== +Nico Schottelius +0.1, for cinit 0.3, Initial Version from 2005-12-12 +:Author Initials: NS + + +This document describes a tested directory hierarchy that +you could adapt for your setup. But this is no need, you +are free to design your own layout and/or improve this one. + + +Main idea +--------- +The main reason for this layout is that all services directly located +in /etc/cinit/svc/ would create a not-so-easy maintainable chaos. + + +Categories +---------- +When thinking about grouping some parts together, there came some categories +to my mind: + +- init: This must be there. It is no real choice (well, working with profiles + is an alternative) +- we need to mount things +- things that are used to 'configure' my local system +- network connectivity +- services only locally reachable +- services remote reachable +- something that let me login + +With these requirements the following categories (=directories) were created: + + +getty +~~~~~ +Gettys are those little and nice programs that allow you to login. +As we normally want to have more than one it seems to be senseful +to create a category for it. + +For the creation of the getty services itself, an extremly simply +scheme is used: Simply create services with the number of the getty +that is running. This results in the following setup: + +-------------------------------------------------------------------------------- + /etc/cinit/svc/getty/ + 2/ + 3/ + 4/ + ... +-------------------------------------------------------------------------------- + +The number '1' is skipped, because cinit normally logs to stdout that is +connected to the first console. + +`/etc/cinit/svc/getty/needs/` contains all enabled gettys. This way +`/etc/cinit/svc/init/needs/` can refer to `/etc/cinit/svc/getty/` only +but will catch all gettys. + +If you want to allow users to login via a graphical login screen +(also known as X11 with xdm/gdm/kdm) you could add this service as +`getty/gdm` for instance, because gdm is just another getty (just with +more colours). + + +init +~~~~ +`init` is the service everything begins with. You simply put all other +categories into the `needs` (or if soft-dependencies to `wants`) of this +service. + + +local-services +~~~~~~~~~~~~~~ +This directory contains all the services that are only locally reachable. +This may contain local webserver, a MTA that only accepts mails +via /usr/sbin/sendmail (like qmail is capable of) or some other local +only available services. + + +local-tuning +~~~~~~~~~~~~ +This directory is used for local configuration. It contains services, +that setup the keyboard layout (perhaps called `local-tuning/keyboard-layout` +needed by `getty`!), adjust system to hardware time, cleans /tmp +(`local-tuning/tmpclean`), ... + + +mount +~~~~~ +This directory contains the service to remount the root filesystem +read-write (`mount/root`) which is dependend on the filesystem +check (`mount/root/fsck`, also have a look at 'special-services.text'). +It also contains the services that mount the pseudo filesystems +(`mount/proc` (FreeBSD, Linux) and `mount/sys` (Linux)) and all +other partitions (`mount/home`, `mount/usr`,...) which again contain +a dependency to the filesystem check, if necessary. + + +network +~~~~~~~ +The `network` directory should cover all of the network basics. +This includes setting the hostname (`network/hostname`) configuring +network devices (`network/eth0.static`, `network.ath0.master`) limiting +network accesses (`network/firewall`), enable packet forwarding +(`network/ip-forward`), adjusting the available bandwith +(`network/traffic-shaping`), ... + + +If there are too many network devices, you could create a subfolder named +`network/devices/`. + +I used to suffix the network devices with the mode they run, so I can +use different modes in different profiles (setup the wireless card in +master mode at home, in ad-hoc mode at a friend and in managed mode at +work). + + +remote-services +~~~~~~~~~~~~~~~~ +Remote-services are all services that are reachable from remote hosts. +This includes ssh (`remote-services/opensshd`), webserver +(`remote-services/lighttpd` or `remote-services/apache22`). + +Most servers `need` a working network interface, before they can be +started, but mostly it is enough to have the loopback interface up. + +This results in the possible `needs` dependency for `network/loopback` +and soft dependencies, what we call `wants` on `network`. + +Other examples for remote services are +- dns (`remote-services/dnscache`, `remote-services/tinydns`, + `remote-services/bind`) +- fileserver (`remote-services/smbd`, `remote-services/mmbd`) +- network infrastructure (`remote-services/bgpd`) +- many others + +Many daemons used for `remote-services` are described in +'daemons.backgrounding.text'. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/freebsd.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/freebsd.text new file mode 100644 index 00000000..05499166 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/freebsd.text @@ -0,0 +1,21 @@ +11:33 < mux> from sys/kern/init_main.c: +11:33 < telmich> mux: that's true; I just tried with linux and I tell the + bootloader, who tells the kernel then +11:33 < mux> static char init_path[MAXPATHLEN] = +11:33 < mux> #ifdef INIT_PATH __XSTRING(INIT_PATH); +11:33 < mux> #else +"/sbin/init:/sbin/oinit:/sbin/init.bak:/rescue/init:/stand/sysinstall"; +11:33 < mux> #endif +11:33 < mux> but you give a loader tunable +11:34 < mux> if ((var = getenv("init_path")) != NULL) { +11:34 < mux> strlcpy(init_path, var, sizeof(init_path)); +11:34 < mux> freeenv(var); +11:34 < mux> } +11:34 < mux> here you are +11:34 < telmich> ahh, that's good +11:34 * telmich has to try cinit on freebsd the next days :-) +12:34 < mux> (s/you give/you can give/) +11:35 < mux> so, simply init_path)="/sbin/cinit" in /boot/loader.conf should do + it +11:35 < mux> minus the typo + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/ideas b/software/cinit/browse_source/cinit-0.3pre18/doc/user/ideas new file mode 100644 index 00000000..d3f13d29 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/ideas @@ -0,0 +1,3 @@ +- cinit-multi-machine-daemon: + coordinating bootup with several machines + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/installing-cinit.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/installing-cinit.text new file mode 100644 index 00000000..34902057 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/installing-cinit.text @@ -0,0 +1,63 @@ +cinit - Installing +================== +Nico Schottelius +0.1, for cinit 0.3, Initial version from 2006-06-02 +:Author Initials: NS + +This documentes describes how to install cinit. + + +Installing +---------- +Installing cinit is not a big deal, so is this document. +Where possible I added a list of commands to execute at the +end of each section. + + +From source +~~~~~~~~~~~ +Retrieve the latest source from http://unix.schottelius.org/cinit/. +Then extract it, change to the source directory, adjust your OS in the +file "conf/os" and type "make all". + +To report success run scripts/report.compile and send the output +to nico-cinit-report |at| schottelius.org. I will use this information +to know how and where cinit is compiled. Personal values like hostnames +or your e-mail address will *not* be published. + +Code to install cinit: +---------------------------------------------------------------------- +# the program we use to retrieve the source (fetch on FreeBSD) +get=wget +# change to current version +version=0.3pre6 +url=http://unix.schottelius.org/cinit/cinit-${version}.tar.bz2 +# get it +$get "$url" +# exctract it +tar xvjf "cinit-${version}.tar.bz2" +# build it and report success +who=nico-cinit-report +where=schottelius.org +cd cinit-${version} && make all && \ +./scripts/report.compile | mail -s "cinit: compile report" "${who}@${where}" +---------------------------------------------------------------------- + +Warning: Currently the install target is missing. Simply copy +"src/cinit" to /sbin/cinit. + + +Changing compile time parameters +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +All compile time configurations are kept below the "conf" +directory. Please read 'conf-system.text' for more information. + + +Cross-compiling +--------------- +For cross compiling see 'cross-compiling.text'. + + +Continue reading +---------------- +After having installed cinit, continue reading the document "Configuring cinit". diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/main.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/main.text new file mode 100644 index 00000000..ddf88304 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/main.text @@ -0,0 +1,113 @@ +cinit - a modern init system +============================= +Nico Schottelius +v0.1, for cinit-0.2.2, 2005-01-18 +:Author Initials: NS + + +Introduction +============ + +cinit is a fast init system with dependency features and +profile support. It was orientated on the design off Richard Gooch's +need [0] and Felix von Leitner's minit[1]. Minit does not support real +dependencies (you don't know whether the service you depend on really +started) and the need concept is somehow slow (as seen in gentoo). +In addition, minit needs libowfat and dietlibc, which may not be found +on every Unix system. + +cinit main features: +- portability: it should run on every Linux system (and it's quite easy + to port it to other Unices) +- true dependencies +- parallel execution +- highly customisable (see conf/*) +- profile support (specify what services to start depending on the profile) + + +Getting cinit +============= + +This README is part of the source, so you should have it. +If not, goto the homepage [2] and download the tar archive +or get the lastest snapshot via git. + + +Pre-Configuring +=============== + +If you want to fine tune cinit parameters, add different path names, +change the DESTDIR, ... have a look at conf/*. + + +Installing +========== + +You can install cinit parallel to any other init-system, it won't +kill other init's config nor /sbin/init, if it exists. + +You only have to tell your kernel to execute /sbin/cinit instead +of /sbin/init. + +Everybody do: +# make all install + +This will create /sbin/cinit. +If /sbin/init does not exist, it will be linked to /sbin/cinit. + +If it's the first time you operate with cinit, you can also do: +# make install-test + +This will populate /etc/cinit with a testing configuration, +which is somehow minimalistic +(mounting root r/w, starting gettys, setting hostname). + +Although this should work on most Linux systems, it's really +minimalistic. Please configure your cinit installation yourself, +see below how to do that. + +After configuring you need to tell your kernel to boot cinit instead +of your current init system. How to do that depends on your system: + + Linux/LILO and Linux/yaboot (ppc): + append="init=/sbin/cinit" + Linux/grub1 and Linux/grub2: + kernel init=/sbin/cinit + + +Configuring +=========== + +You'll have to configure /etc/cinit and add your existing services. + +Please read doc/configuring.cinit for details. +Please read doc/FAO if there are still questions open. +Please join #cLinux on irc.freenode.org if there are still questions open. + +There can be found some (currently only one) testing examples +below samples/ (some I do use for testing, beware if you use it: +It loads the dvorak keymapping at startup!). + +There are currently no tools to merge your existing init-system +to cinit (like sysvinit-merge, bsd-merge or minit-merge) available. +If someone cares and tries to do that, I would be happy to include +the script(s). + +Additionally I would be thankful for tar-balls containing a complete +replacement of $your_unix_init. + + +Author, Contact, Bug reports, etc. +================================== +Nico Schottelius (nico-linux-cinit<>schottelius [[dot]] org) is the +author. Bug reports should be send to this address. + +The homepage of cinit is [2]. + + +References: +=========== + +[0]: need: http://www.atnf.csiro.au/people/rgooch/linux/boot-scripts/ +[1]: minit: http://www.fefe.de/minit/ +[2]: cinit: http://linux.schottelius.org/cinit/ diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/meta.dependencies b/software/cinit/browse_source/cinit-0.3pre18/doc/user/meta.dependencies new file mode 100644 index 00000000..fe743c48 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/meta.dependencies @@ -0,0 +1,58 @@ +-------------------------------------------------------------------------------- +Meta-dependencies, +Nico Schottelius, 2005-05-24 +-------------------------------------------------------------------------------- + +1. What are Meta-Dependencies? +2. What are the advantages / disadvantages of it? +3. The solutions + +1. What are Meta-Dependencies? + +A Meta-depedency describes the type of service another service wants, but +not the exact service. + +Example: + remote-services/ssh wants a dns-resolver, it does not care about + what it is (tinycache, bind, maradns, ...), but that it does + name caching. + + +2. What are the advantages / disadvantages of it? + +Meta means beeing indirect. Indirect means beeing slow. So, if +cinit would have to care about meta-dependencies, the code would become +much bigger and slower. + +On the other hand, one would perhaps like to use meta-dependencies, if +one tests different services with the same functionality or switches +them dependending on the situation (see profile.support). + + +3. The solutions + +As told above, cinit won't care about meta-dependencies and as you'll see +why it does not even need to. + +The first solution would be to have a mapping table outside of cinit. +This table could be a file for every meta-dependency and contain the +possibilities: + + dns-resolver: + remote-services/bind + local-services/tinydns + ... + +So one would have to call a program, which creates the real cinit +configuration. This is imho not a very elegant solution and could cause +problems, when handling self-written services. + +Another possibility is to use symlinks: Create service-directories +for all services beeing installed, but do dependencies in "wants/" +and "needs/" to a symlink (for instance create /etc/cinit/meta +and link to real services in there): + + /etc/cinit/meta/dns-resolver -> ../remote-services/bind/ + +This way you have the indirection (meta-dependencies) in the filesystem +and cinit does not need any additional code. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/paths.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/paths.text new file mode 100644 index 00000000..d44bca61 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/paths.text @@ -0,0 +1,121 @@ +cinit - Configuration +====================== +Nico Schottelius +0.1, for cinit 0.3, Initial Version from 2006-06-03 +:Author Initials: NS + +Configuring cinit - the paths used + + +Main structure +--------------- +The base directory under which all configurations are found +is '/etc/cinit' (changable via conf/cinit_dir). + +The basic hierarchy is shown below: +---------------------------------------------------------------------- +/etc/cinit + svc -> services (adjustable: conf/svcdir) + conf -> general configuration (adjustable: conf/confdir) +---------------------------------------------------------------------- + + +The subdirectory 'conf' +~~~~~~~~~~~~~~~~~~~~~~~ +In this directory are general configurations located. +See below for the list of files that are located in this +directory. + + +The subdirectory 'svc' +~~~~~~~~~~~~~~~~~~~~~~ +This directory contains the services. A service is a directory. + + +Filenams for executable files +------------------------------ +When you create something that cinit should execute (like on +starting a service, on stopping a service, on panic, ...), cinit +will recognize the following extensions: + +. cinit executions extensions + - 'name' - the file that should be executed + - `'name'.params` - the parameter to pass to 'name' when executing + - `'name'.env` - the environment to pass to 'name' when executing + + +Name.params +~~~~~~~~~~~ +The 'params' file is a simple file containing one argument on each +line. + +Example: +---------------------------------------------------------------------- +[17:34] hydrogenium:cinit-0.3pre6% ls -l /etc/cinit/svc/init/on +lrwxrwxrwx 1 root root 9 2006-11-16 09:12 /etc/cinit/svc/init/on -> /bin/echo +[17:34] hydrogenium:cinit-0.3pre6% cat /etc/cinit/svc/init/on.params +The initial service has been started. (first parameter) +Some other useful information. (second parameter) +---------------------------------------------------------------------- + +Name.env +~~~~~~~~ +The 'env' file contains the environment definition. +Specify one assignment on each line, containing only "variable=value". + +Example: +---------------------------------------------------------------------- +[18:00] hydrogenium:% cat /etc/cinit/svc/remote-services/tinydns/on.env +IP=192.168.42.23 +---------------------------------------------------------------------- + +eof + +List of executable files +------------------------ +This list shows you what files are executable for cinit. + +on / off +~~~~~~~~~ +The files `on` and `off` are executed if found within a service +definition. `on` is called when starting the service, `off` +is called when stoping it. + + +conf/panic +~~~~~~~~~~ +This file will be executed by cinit if it has to panic. +Panic situation may occur, when there are heavy problems +like failing memory allocation in core areas. You can +change the name of the file in the pre-compilation settings +in `conf/c_panic`. + +If `conf/panic` is missing and cinit has to panic, a builtin +panic action will be called (see `conf/sulogin`). + + +conf/halt +~~~~~~~~~ +`conf/halt` will be called when cinit has shutdown all services +and wants to halt the system. + +You can change the name of the file in the pre-compilation settings +in `conf/c_halt`. + + +conf/poweroff +~~~~~~~~~~~~~ +`conf/poweroff` will be called when cinit has shutdown all services +and wants to poweroff the system. + +You can change the name of the file in the pre-compilation settings +in `conf/c_poweroff`. + + +conf/reboot +~~~~~~~~~~~ +`conf/reboot` will be called when cinit has shutdown all services +and wants to reboot the system. + +You can change the name of the file in the pre-compilation settings +in `conf/c_reboot`. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/problems-and-solutions.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/problems-and-solutions.text new file mode 100644 index 00000000..92cdd241 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/problems-and-solutions.text @@ -0,0 +1,33 @@ +cinit - Problems occured and solutions used +=========================================== +Nico Schottelius +0.1, for cinit 0.3, Initial version from 2007-05-28 +:Author Initials: NS + +This documentes describes real problems people had with +cinit and their appropriate solutions. Feel free to add +your problems and solutions here. + + +Introduction +------------ + + +Adding problems and solutions +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Simply add your problem and solution and sign your paragraph +with your name. Then send the diff -u to the cinit mailinglist +or setup a git-repository so I can pull the changes. + + +Hibernate +--------- +uses /sbin/runlevel, which should *not* respond with 0 or 6 +as the second number. As cinit does not have /sbin/runlevel, +because cinit does not have any runlevels, you could hardcode +it to values hibernate accepts: + +---------------------------------------------------------------------- +#!/bin/sh +echo N 2 +---------------------------------------------------------------------- diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/problems.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/problems.text new file mode 100644 index 00000000..4fe8a315 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/problems.text @@ -0,0 +1,114 @@ +Problems using cinit +==================== +Nico Schottelius +0.1, for cinit 0.3, Initial Version from 2007-04-24 +:Author Initials: NS + + +Using a high-speed, true dependency aware, profile supporting +logical acting and reliable init system like cinit is not +completly problem free. This document describes some common +problems you may have and their solutions. + + +Possible problems +----------------- + +Confused users +~~~~~~~~~~~~~~ +Compared to traditional init systems like sys-v-init or bsd-init +cinit introduces a complet new boot concept. This does not just +mean that you have services instead of shell-scripts (which is +one reason cinit is starting up faster), but also that the boot +order may be changed dynamically at bootup:, if a service fails. +And even if no service fails, the boot order may be different +on each boot, because processes are started in parallel and +may return earlier or later on each boot. To coordinate the +parallel running processes, cinit uses depencies, which are pretty +easy to understad when configurung, but may need some more +detailled watching at boot to understand it. + +The 'confused users'-problem is perhaps also the biggest +problem for introducing cinit as a replacement to current +init systems. + + +Configuration issues +~~~~~~~~~~~~~~~~~~~~ + +Not marking services as respawn +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +When cinit starts, it will wait for every service to exit. +So if you have a dependency on a service +that never exits, the whole init process may hang (dependending +on the dependencies). If you have services that are intendet +*not* to exit after start, you *have* to mark those with +`respawn`: Those services are started and watched by cinit +and will be restarted. This was a design choice to ensure +that all 'always running' processes *are* restarted. + +I did not find any service that should not exit and not +have a respawn flag. If you really really really have such +a service and you can prove to me that the respawn flag +would do harm to your system, I will think about implementing +a flag that tells cinit not to wait for it, but mark it +as successfully run after it has been started. + +User interaction +~~~~~~~~~~~~~~~~ + +User input +~~~~~~~~~~ +There may be the situation that you have to press a key +or enter some data when a service starts up (like entering +the password for your crypto harddisks). With cinit, this +will look like a mess, because other services may write to +the same console the service wrote a user prompt. + +The best solution for this problem is in my humble +opinion to create an user-input daemon that serialises +the requests and displays one after another. + +This could look like this: Your daemon wants to ask for +a passphrase for the SSL-certificate. You add aa needs +to this daemon to the 'input-daemon'. When you +start this service, it will contact the input-daemon +running on another virtual console and displaying a text +and an input field that is passed back to this service. +After that the input daemon changes back to the initial +console or asks for the next input, if there is another +request available. + +This input daemon may also be run on a graphical (X11) display. +. +Output to the user +~~~~~~~~~~~~~~~~~~ +When cinit starts up there may be many messages printed +out that also may look like printed random order. +To prevent your endusers from being confused you can create +some kind of graphical interface (like a framebuffer +or X11 display) that reads the output of cinit and converts +it to flashing images. It could look like this: + +---------------------------------------------------------------------- + + Your (graphical?) display: + -------------------------------------------------------------- + | /-----------------\ | + | | Red border, | | + | | failed to start | | + | \-----------------/ | + | | + | /------ | + | | Green border, | + | image van | + | | + | | + | | + | | + | | + | | + -------------------------------------------------------------- + + +---------------------------------------------------------------------- diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/profiles.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/profiles.text new file mode 100644 index 00000000..ab4d3c4c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/profiles.text @@ -0,0 +1,79 @@ +cinit - Profiles +================ +Nico Schottelius +0.1, for cinit 0.3, Initial Version from 2005-06-04 +:Author Initials: NS + + +cinit profiles described. + + +What are profiles? +------------------ +Profiles are different configurations for different scenarios. +This means you can use the 'home' profile to setup things +differently than at work, where you would use either +no profile (standard configuration) or the 'work' profile. + + +How to use profiles? +--------------------- +Simply pass 'cprofile:PROFILENAME' (like cprofile:home) to cinit. + + +How to pass argumenents to cinit? +--------------------------------- +How to pass arguments to your init system depends on your operating +system and on your bootloader. + +Linux +~~~~~ +Under Linux the init-system gets the kernel arguments +(see linux.kernel.eats.arguments) as arguments. +So you can use + + kernel /usr/src/linux/vmlinuz cprofile:work (grub1,grub2) + append="cprofile:work" (LILO,yaboot) + +Other Unices should work like Linux, please consult your local +documentation. + + +How to configure profiles? +-------------------------- +It's very simple: Normally cinit would call /etc/cinit/svc/init as +the first service (with all its dependencies). If you pass 'cprofile=wireless' +to it, cinit will start from /etc/cinit/svc/wireless +instead. + +So the only thing you have to do is to create a service directory +below /etc/cinit/svc with the name of the profile you want to use. + +You can simply copy the init-dir and use it as a template: + + ei # cd /etc/cinit/svc; rsync -a init yourprofile + + Standard cp will copy the linked files, not the links, that's why I use rsync + You could also use tar: + + ei # cd /etc/cinit/svc/init; tar c . | (mkdir ../myprof; cd ../myprof; tar x ) + +That's it! + + +Some examples +------------- + +Here are some examples we found in #cLinux: + +-------------------------------------------------------------------------------- + profile name what it does + + musibox only start mp3blaster + terminal start only minicom, which opens the serial line + net-terminal start a respawning shell script, which starts + ssh to the selected host + video start X+mplayer, which plays the dvd/cdrom + wireless What to start when beeing in an unknown wlan + home/work selected services (nfs, ip, ...) for home or work +-------------------------------------------------------------------------------- diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/replacing.init b/software/cinit/browse_source/cinit-0.3pre18/doc/user/replacing.init new file mode 100644 index 00000000..2858c56c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/replacing.init @@ -0,0 +1,13 @@ +-------------------------------------------------------------------------------- +replacing your current init system, +Nico Schottelius 2005-06-14 (Last Modified: 2005-06-14) +-------------------------------------------------------------------------------- + +Simply install cinit (make install), configure cinit +(see configuring.cinit), restart system using +cinit (see README/Installing) delete /sbin/init +and link, move or copy cinit to init (ln -s /sbin/cinit /sbin/init), reboot. + +That's everything in general, the biggest part will be to configuring cinit. + +See also doc/merging.other.initsystems. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/respawning-sleep.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/respawning-sleep.text new file mode 100644 index 00000000..24ed17e0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/respawning-sleep.text @@ -0,0 +1,52 @@ +cinit - Respawning and sleeping +=============================== +Nico Schottelius +0.1, for cinit 0.3, Initial Version from 2007-04-13 +:Author Initials: NS + + +How cinit sleeps, before a service is respawned. + +Introduction +------------ +When a service, that is configured to be respawning, exits cinit restarts it. +Because services may be broken and thus cinit would try to restart it many +times in a second, it is necessary to sleep between restarts. + +The big question: How to sleep? +------------------------------------ +The first possibility is to sleep a fixed amount of time between restarts: +For instance one second. This is not a good solution, because this waits +one unecessary second if the process just crashed. It may be too less, if +the service is really broken. + +The second possibility is to sleep a dynamic amount of time. + + +The next big question: How long to sleep? +----------------------------------------- +I think that as long as a service is broken we should not investigate to much +time into restarting it. So we can define a maximum amount of time to sleep +(for instance 30 seconds). The minimum amount of time to sleep is zero seconds. + +When the service is first started, the sleep time defaults to the minimum +amount of time. Each time the service is restarted, the sleep time is adjusted: + +sleep time (st) = Maximum sleep time (mst) / Time the process was running (tr) + +- If tr is < 1 it is adjusted to 1 and thus st is set to mst. +- If tr is > mst, st is set to 0. + + +How to force restart of a service? +---------------------------------- +Use cvsc (to be implemented). + + +Hom is it implemented? +---------------------- +Everytime cinit has to respawn a service it has to fork() itself. +The sleep call is implemented in the fork, so cinit itself does not have +to care about it. After the sleep time is over or the fork() recieves +SIGALARM it executes the real service. cinit itself records as start time +the current time plus sleep time. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/special-services.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/special-services.text new file mode 100644 index 00000000..4367bed1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/special-services.text @@ -0,0 +1,12 @@ +at: + no non-forking mode +fsck: + returns non-zero if it repaired something. + You have to wrap it into a shell-script :-( + + #!/bin/sh + fsck $@ + [ $? -le 1 ] && exit 0 + exit 1 + +Non-zero exit in general diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/supported-os.text b/software/cinit/browse_source/cinit-0.3pre18/doc/user/supported-os.text new file mode 100644 index 00000000..97b29506 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/supported-os.text @@ -0,0 +1,32 @@ +Supported operating systems +=============== +Nico Schottelius +0.1, Initial Version from 2007-02-15 +:Author Initials: NS + +This document lists the supported operating systems. + + +Supported OS +------------ +This means currently that cinit compiles on that system + +Tested by the author +~~~~~~~~~~~~~~~~~~~~ +- GNU/Linux +- FreeBSD +- NetBSD + +Reported by others +~~~~~~~~~~~~~~~~~~ +[none] + +Unsupported OS +-------------- + +OpenBSD +~~~~~~~ +Seems to not comply to Posix / XSI. Have a look at +http://home.schottelius.org/~nico/unix/openbsd/ftok-sys-ipc.h-problem. +This is a demo of the problem on OpenBSD 4.0 with cinit-0.3pre7-git. + diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/updating.cinit b/software/cinit/browse_source/cinit-0.3pre18/doc/user/updating.cinit new file mode 100644 index 00000000..fc0d3fef --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/updating.cinit @@ -0,0 +1,17 @@ +-------------------------------------------------------------------------------- +updating cinit, +Nico Schottelius 2005-06-14 (Last Modified: 2005-06-14) +-------------------------------------------------------------------------------- + +To exchange cinit without rebooting do the following: + + 1. install new cinit (make install) + 2. call cservice -u thilo (if you have cinit-0.1 or later) + + For older versions: + + 2. go to rescue mode (cservice -s thilo) + 3. re-exec cinit (exec /sbin/cinit) + +Attention: This will kill everything running and restart as if you would just + have booted. diff --git a/software/cinit/browse_source/cinit-0.3pre18/doc/user/using.rescue b/software/cinit/browse_source/cinit-0.3pre18/doc/user/using.rescue new file mode 100644 index 00000000..f58ff512 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/doc/user/using.rescue @@ -0,0 +1,30 @@ +-------------------------------------------------------------------------------- +How to use the rescue mode, +Nico Schottelius 2005-06-13 (Last Modified: 2005-06-13) +-------------------------------------------------------------------------------- + +cinit knows of a so called "rescue mode" (other init systems also +name it "Single user"). + +In this rescue mode you have a shell. Exactly one shell. + +No getty, no daemon, nothing will be alive, not even cinit. + +You start the rescue mode either by + a) sending SIGUSR2 to cinit (kill -USR2 1) + b) using cservice (cservice -s thilo) + +You can do maintaining then. When you finished, you can either + a) hard-reboot/poweroff/halt + b) restart cinit and restart the system without needing to reboot + +In the later case, you simply have to replace your shell with +cinit. In most shells you can do that by entering the following: + +shell # exec /sbin/cinit + +This assumes that you left the system in a clean state: Exactly as +the kernel would start (Well, cinit may ignore if some things are there, +but do not wonder if some services will fail, if their job is already done.). + +Oh, and yes, you could even update cinit this way ;-) diff --git a/software/cinit/browse_source/cinit-0.3pre18/libexec/cinit-conf/dialog-alias.sh b/software/cinit/browse_source/cinit-0.3pre18/libexec/cinit-conf/dialog-alias.sh new file mode 100644 index 00000000..89813726 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/libexec/cinit-conf/dialog-alias.sh @@ -0,0 +1,12 @@ +#!/bin/sh +# Nico Schottelius +# the cLinux project +# Created: 2004-12-25 +# Last-Modified: +# choose the correct dialog version + +if [ -z "$DISPLAY" ]; then + alias dialog="dialog --shadow --backtitle \"$full_version\"" +else + alias dialog="Xdialog --backtitle \"$full_version\"" +fi diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/README b/software/cinit/browse_source/cinit-0.3pre18/scripts/README new file mode 100644 index 00000000..95afabe2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/README @@ -0,0 +1,3 @@ +Scripts for internal use. + +Users: Use bin/ for usable helper programs. diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.ipc b/software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.ipc new file mode 100755 index 00000000..b8154ba9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.ipc @@ -0,0 +1,20 @@ +#!/bin/sh +# Nico Schottelius, 2006-07-28 +# +# cinit: configure the ipc method to use +# + +HIER=$(dirname $0) +DDIR=$HIER/../../src/ipc +DFILE=${DDIR}/current +IPC_METHOD=$(head -n 1 "$HIER/../../conf/ipc_method") + +echo "Configure: IPC: Using \"$IPC_METHOD\" as IPC method" + +# always remove link before, as ln seems to be broken +# Doing ln -sf src/ipc/$method current twice, will create the file +# "current" _BELOW_ src/ipc/$method and not overwrite the link +# src/ipc/current + +rm -f "${DFILE}" +ln -sf "${IPC_METHOD}" "${DFILE}" diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.mark b/software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.mark new file mode 100755 index 00000000..62454c7f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.mark @@ -0,0 +1,8 @@ +#!/bin/sh +# Nico Schottelius +# cinit: touch a file to mark everything configured +# 2006-08-27 +# + +echo "Configure: MK: Marking directory as configured" +touch .configured diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.os b/software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.os new file mode 100755 index 00000000..ece6f53c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.os @@ -0,0 +1,15 @@ +#!/bin/sh +# Nico Schottelius +# cinit: setups symlinks for the os +# + +DDIR=$(dirname $0)/../../src/os +DFILE="$DDIR/current" +OSCONFIG=$(dirname $0)/../../conf/os + +OS=$(head -n 1 "$OSCONFIG") + +echo "Configure: OS: Binaries are created for $OS ..." + +rm -f "${DFILE}" +ln -sf "${OS}" "${DFILE}" diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.tools b/software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.tools new file mode 100755 index 00000000..39c2f00d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/build/cinit.configure.tools @@ -0,0 +1,24 @@ +#!/bin/sh +# Nico Schottelius +# cinit: setups scripts for compiling and linking +# + +HIER=$(dirname $0) +DDIR=$HIER/../../tmpbin/ +CC=$(head -n 1 "$HIER/../../conf/cc") +CFLAGS=$(head -n 1 "$HIER/../../conf/cflags") +LD=$(head -n 1 "$HIER/../../conf/ld") +LDFLAGS=$(head -n 1 "$HIER/../../conf/ldflags") +STRIP=$(head -n 1 "$HIER/../../conf/strip") + +echo "Configure: CC: Creating cc, ld and strip ..." + +mkdir -p "$DDIR" +cd "$DDIR" + +echo "$CC $CFLAGS \"\$@\"" > cc +echo "$LD $LDFLAGS \"\$@\"" > ld +echo "$STRIP \"\$@\"" > strip + +# set correct permissions +chmod 0700 * diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/cconfig.mk.makefile b/software/cinit/browse_source/cinit-0.3pre18/scripts/cconfig.mk.makefile new file mode 100755 index 00000000..822addce --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/cconfig.mk.makefile @@ -0,0 +1,20 @@ +#!/bin/sh +# Nico Schottelius +# 2007-05-20, 0110 CEST +# cconfig: create makefile from conf/ directory +# currently: all files +# later: only built-defines +# + + +CONFS=$($(dirname $0)/cinit.get-confdir)/../conf/* + +echo "#" +echo "# Warning: Autogenerated by $0, do not edit. " +echo "#" +for conf in ${CONFS}; do + NAME="$(basename $conf | tr a-z A-Z)" + value=$(head -n 1 $conf) + + echo "${NAME}=${value}" +done diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.build-env b/software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.build-env new file mode 100755 index 00000000..94e093e9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.build-env @@ -0,0 +1,12 @@ +#!/bin/sh +# Nico Schottelius +# cinit: build environment to be used in scripts +# * Should be sourced by using scripts +# 2006-10-26 +# + +. $(dirname $0)/cinit.read-conf + +export BASEDIR=${DESTDIR}${CINIT_DIR} +export SERVICES=${BASEDIR}/${SVCDIR} +export CONFIG=${BASEDIR}/${CONFDIR} diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.get-confdir b/software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.get-confdir new file mode 100755 index 00000000..38d8572d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.get-confdir @@ -0,0 +1,17 @@ +#!/bin/sh +# Nico Schottelius +# cinit: read configuration into variables +# Date: 2005-05-24 (Last Changed: 2005-08-08) + +# try environment first +if [ "$CINIT_CONF_DIR" ]; then + CONFDIR=$CINIT_CONF_DIR +elif [ -d $(dirname $0)/../conf/ ]; then + CONFDIR=$(dirname $0)/../conf/ +else + echo 'Did not find cinit configuration!' >&2 + echo "Please set the variable CINIT_CONF_DIR" >&2 + exit 1 +fi + +echo $CONFDIR diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.mkheader b/software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.mkheader new file mode 100755 index 00000000..80e3f7cf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.mkheader @@ -0,0 +1,32 @@ +#!/bin/sh +# Nico Schottelius +# cinit: create header file +# + + +CONFS=$($(dirname $0)/cinit.get-confdir)/../conf/* + +echo "/* Warning: Autogenerated by $0, do not edit. */" +for conf in $CONFS; do + NAME="$(basename $conf | tr a-z A-Z)" + value=$(head -n 1 $conf) + + # check if numeric: no quotes needed + is_numeric=$(echo $value | awk '/^((0[xX])[0-9a-fA-F]+)|([0-9]+)$/ { print }') + is_string="$(echo $value | grep '^"')" + + # + # Check for quote type + # + if [ ! "$is_numeric" -a ! "$is_string" ]; then + one_char=$(echo -n $value | wc -c) + + if [ "$one_char" -eq 1 ]; then + value="'$value'" + else + # is a string + value="\"$value\"" + fi + fi + echo "#define" "$NAME" "$value" +done diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.read-conf b/software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.read-conf new file mode 100755 index 00000000..80a32463 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/cinit.read-conf @@ -0,0 +1,18 @@ +#!/bin/sh +# Nico Schottelius +# cinit: read configuration into variables +# ~ 2005 +# + +CONFS=$($(dirname $0)/cinit.get-confdir) + +set -e + +for conf in ${CONFS}/*; do + NAME="$(basename $conf | tr a-z A-Z)" + if eval test -z \$$NAME; then + eval $NAME=\"$(head -n 1 $conf)\" + eval export $NAME + fi +# eval echo $NAME = \$$NAME +done diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/README b/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/README new file mode 100644 index 00000000..64c0d174 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/README @@ -0,0 +1 @@ +Scripts used to generate or aid in creating a configuration. diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/create_services.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/create_services.sh new file mode 100644 index 00000000..52e123a9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/create_services.sh @@ -0,0 +1,10 @@ +#!/bin/sh +# Nico Schottelius +# 2007-05-21 +# +# Task: +# Reads list of services to create from stdin +# Create services (add correct dependencies) +# +# Options: +# -d: alternate destination directory (instead of /etc/cinit/svc) diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/enable_services.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/enable_services.sh new file mode 100644 index 00000000..ce4563a9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/enable_services.sh @@ -0,0 +1,10 @@ +#!/bin/sh +# Nico Schottelius +# 2007-05-21 +# +# Task: +# Reads list of services to enabled from stdin +# Services must already exist +# +# Options: +# -d: alternate destination directory (instead of /etc/cinit/svc) diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/search_enabled_services.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/search_enabled_services.sh new file mode 100644 index 00000000..69e519b9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/search_enabled_services.sh @@ -0,0 +1,12 @@ +#!/bin/sh +# Nico Schottelius +# 2007-05-21 +# +# Task: +# Search for enabled services: +# - /etc/rc.conf +# - /usr/local/etc/rc.d/ +# Output list of services to stdout +# +# Options: +# -r diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/search_services.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/search_services.sh new file mode 100644 index 00000000..2043e857 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/configuration/freebsd/search_services.sh @@ -0,0 +1,12 @@ +#!/bin/sh +# Nico Schottelius +# 2007-05-21 +# +# Task: +# Search all services: +# - /etc/rc.conf +# - /usr/local/etc/rc.d/ +# Output list of all services to stdout +# +# Options: +# -r diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/README b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/README new file mode 100644 index 00000000..c0e8b95b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/README @@ -0,0 +1 @@ +Scripts that should move to bin/ as soon as they are ready to be used. diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.migrate.sysvinit.debian b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.migrate.sysvinit.debian new file mode 100755 index 00000000..0fdcb5f1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.migrate.sysvinit.debian @@ -0,0 +1,126 @@ +#!/bin/sh +# Nico Schottelius +# Date: Sun Oct 16 16:57:03 CEST 2005 +# cLinux/cinit +# Automagically convert Debian-Sysv-Iinit +# THIS IS NOT CLEAN. +# THIS IS NOT EVEN INTENTED TO BE CLEAN. +# This is just a small hack, because my girlfriend wants her notebook back. +# -- She's not my girlfriend anymore, but now I want to test cinit-0.3pre15 on +# my notebook + +echo "***> $(basename $0): converting Debian-Sys-V-Init" + +# read standard values, may be overwritten from outside +. $(dirname $0)/cinit-conf.read-conf + +if [ -d "${CINIT_DIR}" ]; then + echo "ERROR: Configuration directory exists already at ${CINIT_DIR}." + exit 1 +fi + +echo "***> Finding standard config ..." +# variables, which can be set from the outside +: ${ROOT_DEV:=$(awk '$2 ~ /^\/$/ { print $1 }' ${DESTDIR}/etc/fstab)} +: ${ROOT_FSCK:=$(awk '$2 ~ /^\/$/ { print $6 }' ${DESTDIR}/etc/fstab)} +: ${ROOT_FS:=$(awk '$2 ~ /^\/$/ { print $3 }' ${DESTDIR}/etc/fstab)} +: ${HOSTNAME:=$(hostname)} + + +echo "***> Configuration" +echo "Destdir: (\$DESTDIR): $DESTDIR" +echo "Hostname (\$HOSTNAME): $HOSTNAME" +#echo "Keymap (\$C_KEYMAP): $C_KEYMAP" +echo "Root device (\$ROOT_DEV): $ROOT_DEV" +echo "Root fsck (\$ROOT_FSCK): $ROOT_FSCK" +echo "Root FS (\$ROOT_FS): $ROOT_FS" +echo "Config-Dir: (\$CINIT_DIR): $CINIT_DIR" +read -p "Is this correct (Y/n) " correct + +set -x +echo "***> Installing standard structure and dependencies" +set -e +$(dirname $0)/cinit-conf.install.dirs.base +$(dirname $0)/cinit-conf.install.dirs.svc-categories +$(dirname $0)/cinit-conf.install.standard.init.deps + +echo "***> Adding mount / r/w" +$(dirname $0)/cinit-conf.install.service.mount-root + +if [ "$ROOT_FSCK" = "1" ]; then + echo "***> Adding fsck for $ROOT_DEV ..." + $(dirname $0)/cinit-conf.install.service.linux.fsck root "$ROOT_DEV" "$ROOT_FS" + echo "***> Adding dependency" + $(dirname $0)/cinit-conf.add.dependency mount/root needs fsck/root +else + echo "***> Skipping fsck for $ROOT_DEV (\$ROOT_FSCK is not 1 in fstab)..." +fi + +echo "***> Setting up hostname: $HOSTNAME" +$(dirname $0)/cinit-conf.install.service.linux.hostname "$HOSTNAME" + +echo "***> Creating getties (tty1-8)" +for i in `seq 1 8`; do + $(dirname $0)/cinit-conf.getty.add + + # each getty needs: + # - root r/w + $(dirname $0)/cinit.add.dependency getty/$i needs mount/root + # - hostname + $(dirname $0)/cinit.add.dependency getty/$i needs network/hostname +done + +echo "***> Enabling getties (tty2-8)" +for i in `seq 2 8`; do + # add getties to getty/ + $(dirname $0)/cinit-conf.add.dependency getty wants getty/$i +done + +exit 0 +# FIXME: Stopped here + +echo "***> Setting up standard mounts ..." +$(dirname $0)/cinit.install.service.hostname.generic "$HOSTNAME" + +# +# Convert services: check /etc/rcS.d and /etc/rcX.d +# +echo "***> Converting services ..." +for script in $(cd /etc/rcS.d/; ls S*; cd /etc/rc${RUNLEVEL}.d/; ls S*); do + echo -n "$script: " + case $script in + # SCRIPTS READY + *ntpdate) + $(dirname $0)/cinit.install.service.ntpdate.debian + $(dirname $0)/cinit.add.dependency local-tuning/ntpdate needs network + ;; + *udev*) + $(dirname $0)/cinit.install.service.udev + + # SCRIPTS NEVER READY + *glibc.sh|*module-init-tools|*modutils|*procps.sh|*hotplug-net|*bootmisc.sh|*nviboot|*screen-cleanup|*x11-common|*sudo|*makedev|*rmnologin) + echo "Ignoring (useless)." + ;; + + # SCRIPTS NOT YET READY + *mountvirtfs|*checkroot.sh|*ifupdown-clean|*checkfs.sh|*mountall.sh|*ifupdown|*hostname*|*mountnfs.sh|*alsa|*rsync|*ssh|*fam|*cron|*gdm) + echo "converting planned later." + ;; + + # SCRIPTS LATER TO DO + *bootlogd|*keymap.sh|*hwclock*|*discover|*pppd-dns|*dns-clean|*networking|*portmap|*console-screen.sh|*urandom|*klogd|*apmd|*dbus-1|*exim4|*pcmcia|*nfs-common|*stop-bootlogd) + echo "unsupported currently (FIXME PLEASE)." + ;; + *sysklogd|*ppp|*inetd|*lpd|*aumix|*atd) + echo "unsupported (choose a better alternative)." + ;; + *initrd-tools.sh|*libdevmapper*|*hotplug) + echo "Ignoring (general or bloated script)." + ;; + *) + echo "Ignoring (unknown)" + ;; + esac +done + +echo "***> Finished." diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.migrate.sysvinit.debian.sid b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.migrate.sysvinit.debian.sid new file mode 100755 index 00000000..c0945edb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.migrate.sysvinit.debian.sid @@ -0,0 +1,139 @@ +#!/bin/sh +# Nico Schottelius +# Date: Sun Oct 16 16:57:03 CEST 2005 +# cLinux/cinit +# Automagically convert Debian-Sysv-Iinit +# THIS IS NOT CLEAN. +# THIS IS NOT EVEN INTENTED TO BE CLEAN. +# This is just a small hack, because my girlfriend wants her notebook back. +# -- She's not my girlfriend anymore, but now I want to test cinit-0.3pre15 on +# my notebook + +echo "***> $(basename $0): converting Debian-Sys-V-Init" + +# read standard values, may be overwritten from outside +. $(dirname $0)/cinit-conf.read-conf + +echo "***> Finding standard config ..." +# variables, which can be set from the outside +ROOT_DEV=${ROOT_DEV:-$(awk '$2 ~ /^\/$/ { print $1 }' /etc/fstab)} +ROOT_FSCK=${ROOT_FSCK:-$(awk '$2 ~ /^\/$/ { print $6 }' /etc/fstab)} +ROOT_FS=${ROOT_FS:-$(awk '$2 ~ /^\/$/ { print $3 }' /etc/fstab)} +RUNLEVEL=${RUNLEVEL:-$(runlevel | awk '{ print $2 }')} + +echo "***> Detecting keymap (this may take some time)" + +if [ -z "$C_KEYMAP" ]; then + echo "Please set the variable C_KEYMAP to your keymap." + echo "It is impossible to detect reliable your keymap in Debian." + exit 1 +fi + + +echo "***> Configuration" +echo "Hostname (\$HOSTNAME): $HOSTNAME" +echo "Keymap (\$C_KEYMAP): $C_KEYMAP" +echo "Root device (\$ROOT_DEV): $ROOT_DEV" +echo "Root fsck (\$ROOT_FSCK): $ROOT_FSCK" +echo "Root FS (\$ROOT_FS): $ROOT_FS" +echo "Runlevel (\$RUNLEVEL): $RUNLEVEL" +echo "Destdir: (\$DESTDIR): $DESTDIR" +echo "Config-Dir: (\$CINIT_DIR): $CINIT_DIR" +read -p "Is this correct (Y/n) " correct + +if [ "$correct" != "y" -a "$correct" != "Y" ]; then + echo "***> Abort." + exit 1 +fi + +if [ -d "${DESTDIR}${CINIT_DIR}" ]; then + echo "ERROR: Configuration already exists at ${DESTDIR}${CINIT_DIR}." + exit 1 +fi + +echo "***> Installing standard structure and dependencies" +set -e +$(dirname $0)/cinit.install.config-dir +$(dirname $0)/cinit.install.standard.dirs +$(dirname $0)/cinit.install.standard.init.deps + +echo "***> Adding mount / r/w" +$(dirname $0)/cinit.install.service.mount-root + +if [ "$ROOT_FSCK" = "1" ]; then + echo "***> Adding fsck for $ROOT_DEV ..." + $(dirname $0)/cinit.install.fsck root "$ROOT_DEV" "$ROOT_FS" + echo "***> Adding dependency" + $(dirname $0)/cinit.add.dependency mount/root needs fsck/root +else + echo "***> Skipping fsck for $ROOT_DEV ..." +fi + +echo "***> Setting up standard mounts ..." +$(dirname $0)/cinit.install.service.hostname.generic "$HOSTNAME" + +echo "***> Setting up hostname: $HOSTNAME" +$(dirname $0)/cinit.install.service.hostname.generic "$HOSTNAME" + +echo "***> Setting up keymap" +$(dirname $0)/cinit.install.service.keymap.c_keymap + +echo "***> Creating getties (tty1-8)" +for i in `seq 1 8`; do + $(dirname $0)/cinit.add.getty + + # each getty needs: + # - root r/w + $(dirname $0)/cinit.add.dependency getty/$i needs mount/root + # - hostname + $(dirname $0)/cinit.add.dependency getty/$i needs network/hostname +done + +echo "***> Enabling getties (tty2-8)" +for i in `seq 2 8`; do + # add getties to getty/ + $(dirname $0)/cinit.add.dependency getty wants getty/$i +done + +# +# Convert services: check /etc/rcS.d and /etc/rcX.d +# +echo "***> Converting services ..." +for script in $(cd /etc/rcS.d/; ls S*; cd /etc/rc${RUNLEVEL}.d/; ls S*); do + echo -n "$script: " + case $script in + # SCRIPTS READY + *ntpdate) + $(dirname $0)/cinit.install.service.ntpdate.debian + $(dirname $0)/cinit.add.dependency local-tuning/ntpdate needs network + ;; + *udev*) + $(dirname $0)/cinit.install.service.udev + + # SCRIPTS NEVER READY + *glibc.sh|*module-init-tools|*modutils|*procps.sh|*hotplug-net|*bootmisc.sh|*nviboot|*screen-cleanup|*x11-common|*sudo|*makedev|*rmnologin) + echo "Ignoring (useless)." + ;; + + # SCRIPTS NOT YET READY + *mountvirtfs|*checkroot.sh|*ifupdown-clean|*checkfs.sh|*mountall.sh|*ifupdown|*hostname*|*mountnfs.sh|*alsa|*rsync|*ssh|*fam|*cron|*gdm) + echo "converting planned later." + ;; + + # SCRIPTS LATER TO DO + *bootlogd|*keymap.sh|*hwclock*|*discover|*pppd-dns|*dns-clean|*networking|*portmap|*console-screen.sh|*urandom|*klogd|*apmd|*dbus-1|*exim4|*pcmcia|*nfs-common|*stop-bootlogd) + echo "unsupported currently (FIXME PLEASE)." + ;; + *sysklogd|*ppp|*inetd|*lpd|*aumix|*atd) + echo "unsupported (choose a better alternative)." + ;; + *initrd-tools.sh|*libdevmapper*|*hotplug) + echo "Ignoring (general or bloated script)." + ;; + *) + echo "Ignoring (unknown)" + ;; + esac +done + +echo "***> Finished." diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.miniconf.linux b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.miniconf.linux new file mode 100755 index 00000000..45dcc632 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.miniconf.linux @@ -0,0 +1,103 @@ +#!/bin/sh +# Nico Schottelius +# cinit: install basic setup +# Date: 2005-08-07 +# + + +. $(dirname $0)/cinit.read-conf + +echo "****************************************************************************" +echo "******************************* WARNING ************************************" +echo "****************************************************************************" +echo "" +echo "This will install a minimal cinit configuration." +echo "This configuration _SHOULD_ be able to run on _MOST_ systems." +echo "Still, it's highly EXPERIEMENTAL, use with CAUTION." +echo "" +echo "Please make sure, that" +echo " - you are using a journaling filesystem (fsck is not used)" +echo " - you have agetty, fgetty or mingetty installed" +echo " - you are runnig Linux 2.6 (sysfs is used)" +echo " - you have udev or static device nodes (you need /dev/tty*)" +echo " - getties will run on tty2-tty7, tty1 is used or logging" +echo "" +echo "****************************************************************************" +echo "******************************* WARNING ************************************" +echo "****************************************************************************" + +notosoftwarepatents="Please keep an eye on software patents, they are evil." +read -p "Do you really want to continue? [y/N] " notosoftwarepatents + +if [ "$notosoftwarepatents" = "y" -o "$notosoftwarepatents" = "Y" ]; then + echo "Let us try it ..." +else + echo 'Bye bye!' + exit 0 +fi + +set -e + +# Create basic layout +$(dirname $0)/cinit.install.standard-dirs + +# Install services: +# - mount root r/w +# - mount /proc +# - mount /sys +# - install getties on tty2-tty7 +# - add cleanup for /etc/mtab +# - add loopback device +# - init service + echo + +################################### mount ##################################### +# mount root read/write +$(dirname $0)/cinit.install.service.mount-root + +# - mount /proc +$(dirname $0)/cinit.install.service.mount-proc + +# - mount /sys +$(dirname $0)/cinit.install.service.mount-sys + +# mount needs everything below it +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "${DESTDIR}/${CINIT_DIR}/mount/$C_NEEDS" +ln -sf "${DESTDIR}/${CINIT_DIR}/mount/root" "${DESTDIR}/${CINIT_DIR}/mount/$C_NEEDS" +ln -sf "${DESTDIR}/${CINIT_DIR}/mount/proc" "${DESTDIR}/${CINIT_DIR}/mount/$C_NEEDS" +ln -sf "${DESTDIR}/${CINIT_DIR}/mount/sys" "${DESTDIR}/${CINIT_DIR}/mount/$C_NEEDS" + +################################### getty ##################################### +# mount root read/write +# install getties +begin_getty=2 +end_getty=7 +i=$begin_getty + +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "${DESTDIR}/${CINIT_DIR}/getty/$C_WANTS" +while [ "$i" -le "$end_getty" ]; do + $(dirname $0)/cinit.add.getty + ln -sf "${DESTDIR}/${CINIT_DIR}/getty/$i" "${DESTDIR}/${CINIT_DIR}/getty/$C_WANTS" + i=$(($i+1)) +done + +################################### mtab ##################################### +# - add cleanup for /etc/mtab +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "${DESTDIR}/${CINIT_DIR}/local-tuning/$C_NEEDS" +$(dirname $0)/cinit.install.service.cleanup-mtab +ln -sf "${DESTDIR}/${CINIT_DIR}/local-tuning/cleanup-mtab" "${DESTDIR}/${CINIT_DIR}/local-tuning/$C_NEEDS" + +################################### lo ##################################### +# - add loopback device +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "${DESTDIR}/${CINIT_DIR}/network/$C_NEEDS" +$(dirname $0)/cinit.install.service.network-lo +ln -sf "${DESTDIR}/${CINIT_DIR}/network/lo" "${DESTDIR}/${CINIT_DIR}/network/$C_NEEDS" + +# - init service + echo +# init depends on mount, getty -> everything from base-layout +$(dirname $0)/cinit.install.service.init +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "${DESTDIR}/${CINIT_DIR}/${C_INIT}/${C_NEEDS}" + +ln -sf "${DESTDIR}/${CINIT_DIR}/local-services/" "${DESTDIR}/${CINIT_DIR}/${C_INIT}/${C_NEEDS}" +ln -sf "${DESTDIR}/${CINIT_DIR}/getty/" "${DESTDIR}/${CINIT_DIR}/${C_INIT}/${C_NEEDS}" +ln -sf "${DESTDIR}/${CINIT_DIR}/local-tuning/" "${DESTDIR}/${CINIT_DIR}/${C_INIT}/${C_NEEDS}" +ln -sf "${DESTDIR}/${CINIT_DIR}/network/" "${DESTDIR}/${CINIT_DIR}/${C_INIT}/${C_NEEDS}" diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.miniconf.linux.todo b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.miniconf.linux.todo new file mode 100644 index 00000000..953c06e7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit-conf.miniconf.linux.todo @@ -0,0 +1,4 @@ +Make it work with a system. + +Same aim as cinit.install.test, but different approach: +This script tries to build the config dynamically. diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit.install.test b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit.install.test new file mode 100755 index 00000000..154c9375 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit.install.test @@ -0,0 +1,20 @@ +#!/bin/sh +# Nico Schottelius +# cinit: install basic test config +# + +. $(dirname $0)/cinit.read-conf + +TARDIR=$(dirname $0)/../samples + +case `uname -s` in + Linux) + [ -e /etc/gentoo-release ] && TAR=${TARDIR}/gentoo.tar + [ -e /etc/debian_version ] && TAR=${TARDIR}/debian.tar + [ -e /etc/SuSE-release ] && TAR=${TARDIR}/suse.tar + [ -e /etc/mandrake-release ] && TAR=${TARDIR}/mandrake.tar + [ -e /etc/fedora-release ] && TAR=${TARDIR}/fedora.tar + ;; +esac + +tar xf ${TAR} -C "$DESTDIR/$PREFIX/$CINIT_DIR" diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit.install.test.todo b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit.install.test.todo new file mode 100644 index 00000000..8e48d55e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/cinit.install.test.todo @@ -0,0 +1 @@ +See ditz: portability-1 diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/migrate-linux-debian-lenny.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/migrate-linux-debian-lenny.sh new file mode 100755 index 00000000..8f3185e0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/future-bin/migrate-linux-debian-lenny.sh @@ -0,0 +1,34 @@ +#!/bin/sh +# +# 2008 Nico Schottelius (nico-cinit-conf at schottelius.org) +# +# This file is part of cinit-conf. +# +# cinit-conf is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit-conf is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit-conf. If not, see . +# + +bd="${0%/*}" +export bd + +echo "Trying to configure cinit for your Debian Linux" + +# migrate /etc/fstab to mounts + +"$bd/linux/sys-v-init/migrate-fstab.sh" + +# migrate / create 6 getties + +# migrate network + +# migrate services diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/install/README b/software/cinit/browse_source/cinit-0.3pre18/scripts/install/README new file mode 100644 index 00000000..7870c76e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/install/README @@ -0,0 +1 @@ +Scripts to be used for installing (NOT CONFIGURING) cinit. diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/install/cinit.install.binary b/software/cinit/browse_source/cinit-0.3pre18/scripts/install/cinit.install.binary new file mode 100755 index 00000000..a368ac23 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/install/cinit.install.binary @@ -0,0 +1,30 @@ +#!/bin/sh +# Nico Schottelius +# cinit: install basic setup +# Date: - +# + +. $(dirname $0)/cinit.read-conf + +"$INSTALL_PROG" sbin/cinit $DESTDIR/$PREFIX/sbin/cinit +"$INSTALL_PROG" sbin/cservice $DESTDIR/$PREFIX/sbin/cservice +"$INSTALL_PROG" sbin/ccontrol $DESTDIR/$PREFIX/sbin/ccontrol +"$INSTALL_PROG" bin/cinit.reboot $DESTDIR/$PREFIX/sbin/cinit.reboot +"$INSTALL_PROG" bin/cinit.shutdown $DESTDIR/$PREFIX/sbin/cinit.shutdown +"$INSTALL_PROG" bin/cinit.wait.for.daemon \ + $DESTDIR/$PREFIX/sbin/cinit.wait.for.daemon + +# install as /sbin/init, if /sbin/init does not exist +if [ ! -e $DESTDIR/$PREFIX/sbin/init ]; then + ln -s $PREFIX/sbin/cinit $DESTDIR/$PREFIX/sbin/init +fi + +# install as /sbin/shutdown, if it does not exist +if [ ! -e $DESTDIR/$PREFIX/sbin/shutdown ]; then + ln -s $PREFIX/sbin/cinit.shutdown $DESTDIR/$PREFIX/sbin/shutdown +fi + +# install as /sbin/reboot, if it does not exist +if [ ! -e $DESTDIR/$PREFIX/sbin/reboot ]; then + ln -s $PREFIX/sbin/cinit.reboot $DESTDIR/$PREFIX/sbin/reboot +fi diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/install/cinit.install.dir b/software/cinit/browse_source/cinit-0.3pre18/scripts/install/cinit.install.dir new file mode 100755 index 00000000..5e16f690 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/install/cinit.install.dir @@ -0,0 +1,14 @@ +#!/bin/sh +# Nico Schottelius +# cinit: install needed directories +# Date: - (Last Modified: 2005-08-06) +# + +. $(dirname $0)/cinit.read-conf + +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "$DESTDIR/$PREFIX/sbin" +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "$DESTDIR/$CINIT_DIR" +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "$DESTDIR/$CINIT_DIR/$C_TMP" +"$INSTALL_PROG" "$INSTALL_DIRECTORY" "$DESTDIR/$CINIT_DIR/$C_INIT" + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/README b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/README new file mode 100644 index 00000000..2162b6b1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/README @@ -0,0 +1 @@ +Only to be used by Nico Schottelius. diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/cinit.release b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/cinit.release new file mode 100755 index 00000000..ca2f8513 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/cinit.release @@ -0,0 +1,82 @@ +#!/bin/sh +# Nico Schottelius +# Build release tar +# Date: Sat Oct 15 21:38:29 CEST 2005 +# Last Changed: ls -l + +if [ $# -ne 1 ]; then + echo "This is a maintainer-only script to release cinit" + echo $(basename $0): version + exit 1 +fi + +# paths +D_BASE="/home/users/nico/privat/rechner/netz/seiten/www.nico.schottelius.org/src/software/cinit" +D_DIR=${D_BASE}/archives/ +D_SOURCE=${D_BASE}/browse_source/ + +# versions to check +VERSION_CONF="$(head -n1 $(dirname $0)/../../conf/version | sed 's/^"\(.*\)"$/\1/')" +VERSION_ARGV="$1" +VERSION_GIT="$(git describe)" +VERSION_README=$(grep -q "$VERSION_ARGV" README && echo $VERSION_ARGV) + +echo "=> Version commandline: $VERSION_ARGV" +echo "=> Version conf/version: $VERSION_CONF" +echo "=> Version git: $VERSION_GIT" +echo "=> Version README: $VERSION_README" + +if [ "$VERSION_ARGV" = "$VERSION_CONF" -a "$VERSION_ARGV" = "$VERSION_GIT" ]; then + echo "=> Version confirmed." +else + echo "*** VERSION MISMATCH ***" + exit 42 +fi + +# Finally, accept the right version +VERSION="$VERSION_GIT" +NAME="cinit-${VERSION}" +TARNAME="cinit-${VERSION}.tar.bz2" +TARPATH="$D_DIR/$TARNAME" + +echo -n "=> Continue to release $NAME? " +read yes + +git archive $VERSION --prefix="${NAME}/" --output="${TARPATH}" +( cd "$D_SOURCE" && tar xvf "$TARPATH" ) + +echo "Please do not forget to update the website..." + +################################################################################ +# Unused, but interesting + +# make sure the examples are not executed anymore +exit 0 + +# match cinit-$version as directory name +VERSION_DIR="$(cd "$DIR"; pwd -P | sed 's;.*/cinit-;;')" + +# grep version string from CHANGES file (often used, obsoleted here) +VERSION_CHANGES="$(head -n1 "$(dirname $0)/../../CHANGES" | sed 's/cinit-\(.*\):.*/\1/')" + +# Correct umask 077 results +echo "Correcting paranoid permissions" +ssh "$D_HOST" "find \"$D_SOURCE/$RDIR\" -type f -exec chmod 0644 {} \\;" +ssh "$D_HOST" "find \"$D_SOURCE/$RDIR\" -type d -exec chmod 0755 {} \\;" +ssh "$D_HOST" "cd \"$D_SOURCE\" && rm -f \"$LINK\" && ln -s \"$RDIR\" \"$LINK\"" + +# Create archive +echo "Creating bzip2 compressed tar" +cd $DDIR +tar cj -X $DIR/.exclude -f "$OUT_NAME" "$RDIR" +chmod 0644 "$OUT_NAME" + +# Transfer to a remote host +echo "Transfering to $D_HOST" +scp "$OUT_NAME" "$D_HOST:$D_DIR" + +echo "Extracting to $D_SOURCE" +ssh "$D_HOST" "tar xfj $D_DIR/$OUT_NAME -C $D_SOURCE" + + + diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile+run.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile+run.sh new file mode 100755 index 00000000..30ec68a6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile+run.sh @@ -0,0 +1,20 @@ +#!/bin/sh +# yah - yet another hack + +if [ ! "$1" ]; then + echo "HOSTNAME" + exit 23 +fi + +host="$1" + +hier=$(dirname $0) + +$hier/compile_test.sh "$host" + +if [ $? -ne 0 ]; then + echo "aborting, did not compile on $1" + exit 1 +fi + +ssh "${host}" './cinit/src/cinit & (sleep 30; kill -9 $(pgrep cinit))' diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile_local.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile_local.sh new file mode 100755 index 00000000..e2bfce5e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile_local.sh @@ -0,0 +1,24 @@ +# just a hack + +dir=$(dirname $0) + +sys=$(uname -s) +sys_small=$(echo $sys | tr '[A-Z]' '[a-z]') + +case $(uname -s) in + NetBSD|OpenBSD) + make=gmake + ;; + *) + make=make + ;; +esac + +cd "${dir}/../../" +echo $sys_small > conf/os +# automatically called by make.. +#./bin/cinit.configure.os + +cd "src" +$make clean +$make cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile_run_as_compiler.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile_run_as_compiler.sh new file mode 100755 index 00000000..f1ba01d9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile_run_as_compiler.sh @@ -0,0 +1,14 @@ +what=$(dirname $0)/../../ +what_real=$(cd "$what" && pwd -P) +dest=~compiler/cinit-test + +set -e +sudo rsync -av "${what_real}/" "$dest" +sudo chown -R compiler "$dest" +sudo -u compiler "${dest}/scripts/internal/compile_local.sh" +sudo -u compiler "${dest}/src/cinit" & +sleep 13 +sudo -u compiler "${dest}/scripts/internal/stop_cinit.sh" + +# exit 0 for make +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile_test.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile_test.sh new file mode 100755 index 00000000..335f31ac --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/compile_test.sh @@ -0,0 +1,8 @@ +#!/bin/sh +# yah - yet another hack + +host="$1" +what=$(dirname $0)/../../ + +rsync --exclude .git --exclude \*.o -av "${what}" "${host}:cinit" +ssh "${host}" "./cinit/scripts/internal/compile_local.sh" diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/create_test_config.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/create_test_config.sh new file mode 100755 index 00000000..720ce969 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/create_test_config.sh @@ -0,0 +1,18 @@ +hier=$(dirname $0) + +set -e +${hier}/../cinit.install.standard.dirs +cat > /etc/cinit/svc/init/on << eof +#!/bin/sh +echo test1 +sleep 4 +echo test2 - \$@ +eof +chmod 0755 /etc/cinit/svc/init/on + +cat > /etc/cinit/svc/init/on.params << eof +es +scheint +zu +gehen +eof diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/find_right_version.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/find_right_version.sh new file mode 100755 index 00000000..759f23c8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/find_right_version.sh @@ -0,0 +1,24 @@ +#!/bin/sh + +src="$(dirname $0)/../../" +src_abs=$(cd "$src" && pwd -P) + +for commit in $( git log --pretty=short | awk '/^commit/ { print $2 }'); do + set -e + cd "$src_abs" + temp=$(mktemp -d /tmp/cinit.XXXXXXXXXX) + git-archive --format=tar "$commit" | ( cd "$temp"; tar x ) + cd "${temp}/src" + set +e + make clean && make cinit && ./cinit + if [ "$?" -eq 0 ]; then + echo "Commit $commit is ok" + exit 0 + fi + echo "Broken $commit" + sleep 1 + set -e + rm -rf "$temp" +done + +exit 1 diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/indent_script b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/indent_script new file mode 100755 index 00000000..5e1a8b0d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/indent_script @@ -0,0 +1,67 @@ +#!/bin/sh +# Nico Schottelius (nico-linux at schottelius.org) +# indents like kr with a little bit more beauty look +# 13-May-2004 +# written for the monotone project, adapted for all my projects +# +# Copying: GPLv3 + +if [ $# -lt 1 ]; then + echo "$0: " + exit 1 +fi + +opts="" +opts="${opts} -bap" # --blank-lines-after-procedures +opts="${opts} -bbb" # --blank-lines-before-block-comments +opts="${opts} -bad" # --blank-lines-after-declarations +opts="${opts} -bbo" # --break-before-boolean-operator +opts="${opts} -br" # --braces-on-if-line +opts="${opts} -brs" # --braces-on-struct-decl-line +opts="${opts} -cdb" # --comment-delimiters-on-blank-lines +opts="${opts} -cbi0" # --case-brace-indentation +opts="${opts} -cdw" # --cuddle-do-while +opts="${opts} -ce" # --cuddle-else, see -br +opts="${opts} -ci0" # --continuation-indentation (see -lp) +opts="${opts} -cli3" # --case-indentation +opts="${opts} -cp33" # --else-endif-columnn +opts="${opts} -cs" # --space-after-cast +opts="${opts} -d0" # --line-comments-indentationn +opts="${opts} -di0" # --declaration-indentation +opts="${opts} -fca" # --format-all-comments +opts="${opts} -hnl" # --honour-newlines +opts="${opts} -i3" # --indent-level +opts="${opts} -ip0" # --parameter-indentation +opts="${opts} -l80" # --line-length +opts="${opts} -lc80" # --line-length +opts="${opts} -lp" # --continue-at-parentheses +opts="${opts} -lps" # --leave-preprocessor-space +opts="${opts} -nbc" # --no-blank-lines-after-commas +opts="${opts} -nbfda" # --dont-break-function-decl-args +opts="${opts} -nbfde" # NOT --break-function-decl-args +opts="${opts} -nfc1" # --dont-format-first-column-comments +opts="${opts} -npcs" # --no-space-after-function-call-names +opts="${opts} -nprs" # --no-space-after-parentheses +opts="${opts} -npsl" # --dont-break-procedure-type +opts="${opts} -nsaf" # --no-space-after-for +opts="${opts} -nsai" # --no-space-after-if +opts="${opts} -nsaw" # --no-space-after-while +opts="${opts} -npsl" # --dont-break-procedure-type +opts="${opts} -nut" # --no-tabs +opts="${opts} -nv" # --no-verbosity +opts="${opts} -npro" # --ignore-profile +opts="${opts} -pi0" # --paren-indentationn +opts="${opts} -ppi3" # preprocessor indent +opts="${opts} -sbi0" # --struct-brace-indentation +opts="${opts} -sc" # --start-left-side-of-comments +opts="${opts} -sob" # --swallow-optional-blank-lines +opts="${opts} -ss" # --space-special-semicolon + + + +for file in "$@"; do + indent $opts "$file" +done + # old: +# -ad \ +# -ts3 -nut -sc -ce -cdw -cli0 -nbc lp -ppi3 -di1 -c33 -cd33 -ncdb -ci3 -cp33 -cs -d0 -di0 -l75 -nfc1 -nfca -hnl -ip0 -nprs -saf -sai -saw -nsob -nss -npsl "$file" diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/old/cdoc-man.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/old/cdoc-man.sh new file mode 100755 index 00000000..fc1adde5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/old/cdoc-man.sh @@ -0,0 +1,57 @@ +#!/bin/sh +# +# Nico Schottelius +# Date: 21-Aug-2005 +# Last Modified: - +# + +set -e + +[ $# -ne 1 ] && exit 23 + +SRC=$1 + +cd "$SRC" + +# +# Title heading +# +echo .TH $(cat "meta/name" "meta/man_section" "meta/date") + +# +# Name +# +echo .SH NAME +echo $(cat meta/name) - $(cat meta/short_description) + +# +# Synopsis +# +echo .SH SYNOPSIS +echo $(cat path) $(cat parameters) + +# +# description +# +echo .SH DESCRIPTION +echo $(cat long_description) + +# +# availability +# +for section in availability examples "see also" author; do + if [ -f "$section" ]; then + echo .SH $section | tr '[a-z]' '[A-Z]' + cat "$section" + fi +done + +# +# files +# +if [ -f files ]; then + echo .SH FILES + cat files | sed 's/\(.*\)/.IP "\1" /' +fi + +exit 0 diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/qemu-test.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/qemu-test.sh new file mode 100755 index 00000000..fd41312e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/qemu-test.sh @@ -0,0 +1,22 @@ +#!/bin/sh +# Nico Schottelius +# 2007-09-03: For testing cinit in qemu +# + +emud="${HOME}/emu" +img="${emud}/debian-hd.img" +ddir="${emud}/mount" +loop=/dev/loop1 +fsck="/sbin/fsck.jfs" + +# my jfs is on the first partition, 512*63 bytes offset +offset="32256" + +set -e +set -x +sudo losetup -o "${offset}" "${loop}" "${img}" +sudo "${fsck}" "${loop}" +sudo mount "${loop}" "${ddir}" + +sudo umount "${loop}" +sudo losetup -d "${loop}" diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/stop_cinit.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/stop_cinit.sh new file mode 100755 index 00000000..86e4d82b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/stop_cinit.sh @@ -0,0 +1,4 @@ +#!/bin/sh +# Linux specific, but don't care, I am the only person that should use it + +killall -TERM cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test-cmd.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test-cmd.sh new file mode 100755 index 00000000..dbfc5c73 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test-cmd.sh @@ -0,0 +1,11 @@ +#!/bin/sh +# Nico Schottelius +# 2007-09-27: Test cmd +# + + +echo "Testing cmd..." +sudo /sbin/cmd -s /etc/cinit/svc/init +sudo /sbin/cmd -p /etc/cinit/svc/init +sudo /sbin/cmd -v +sudo /sbin/cmd -V diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test/cinit-conf.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test/cinit-conf.sh new file mode 100755 index 00000000..0e29816e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test/cinit-conf.sh @@ -0,0 +1,23 @@ +#!/bin/sh +# Nico Schottelius +# Date: 2005-08-08 +# cinit-conf + +LIBEXEC=$(dirname $0)/../libexec/cinit-conf/ + +. ${LIBEXEC}/dialog-alias.sh + +dialog --calendar "Test" 0 0 18 12 1982 +dialog --checklist "Checktest" 0 0 0 item1 on item2 off item3 on +dialog --infobox "Infotext" 0 0 +dialog --inputbox "inputbox" 0 0 "vorgegebener text" +dialog --menu "menu" 0 0 0 tag1 item1 tag2 item2 bla blub +dialog --infobox "Infotext" 0 0 +dialog --msgbox "Infotext" 0 0 +dialog --radiolist "Infotext" 0 0 0 tag1 item1 on tag2 item2 off +dialog --textbox ~/.bashrc 0 0 +dialog --yesno "Ja oder nein?" 0 0 + +dialog --gauge "Checktest" 0 0 10 + +#dialog --inputmenu "Infotext" 0 0 0 tag1 item1 tag2 item2 bla blub diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test/cinit.uml.test b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test/cinit.uml.test new file mode 100755 index 00000000..f6ea7fb4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test/cinit.uml.test @@ -0,0 +1,40 @@ +#!/bin/sh +# Nico Schottelius +# build, install and test cinit in an uml image + +set -e +set -x + +###################### Params ######################################## +# where the cinit source can be found +CINIT=/root/cinit-0.1 + +# the image you want to put cinit on (I am using gentoo stage3) +IMG=stage3-p4.img + +# where to mount the image +MNT=/mnt/uml + +# what fsck to use +FSCK=fsck.jfs + +# the uml-linux-kernel +LINUX=./linux-2.6.11.11 + +# parameters to kernel - should not needed to be changed +LINUX_PARAM="ubd0=$IMG umid=cinit$$ init=/sbin/cinit" +###################################################################### +HIER=$(pwd) + + +"$FSCK" "$IMG" +mount "$IMG" "$MNT" -o loop +echo "$MNT" > "$CINIT/conf/destdir" +make -C "$CINIT" clean all install +umount "$MNT" + +"$FSCK" "$IMG" +"$LINUX" $LINUX_PARAM + +# restore console, if broken +#reset diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test_on_hosts.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test_on_hosts.sh new file mode 100755 index 00000000..afeb2627 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/test_on_hosts.sh @@ -0,0 +1,12 @@ +#!/bin/sh +# yah + +hosts="penrose.bsdprojects.net jiffies.forkbomb.ch ddna044.netstream.ch" + +set -e + +for host in $hosts; do + echo "$1 on $host" + "$1" "$host" | sed "s/^/${host}: /" + echo "==> Finished $host" +done diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/valgrind b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/valgrind new file mode 100755 index 00000000..f769f9da --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/internal/valgrind @@ -0,0 +1 @@ +valgrind -v --tool=memcheck --leak-check=yes --show-reachable=yes --num-callers=20 --track-fds=yes --leak-resolution=high ./cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/report.compile b/software/cinit/browse_source/cinit-0.3pre18/scripts/report.compile new file mode 100755 index 00000000..ac591412 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/report.compile @@ -0,0 +1,18 @@ +#!/bin/sh +# Nico Schottelius +# 2006-12-08 +# Report compile success +# + +echo "cinit compile success report" +echo "----------------------------" +"$(dirname $0)/cinit.mkheader" +echo "----------------------------" +uname -a +echo "----------------------------" +. "$(dirname $0)/cinit.read-conf" +echo '$CC' +"$CC" -v +echo "----------------------------" +echo -n "Size: " +ls -l "$(dirname $0)/../src/cinit" diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/README b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/README new file mode 100644 index 00000000..653e9875 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/README @@ -0,0 +1,2 @@ +Directory to keep scripts related to controlling vms, +which are used for testing cinit. diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/qemu-start.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/qemu-start.sh new file mode 100755 index 00000000..ac863a20 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/qemu-start.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +ROOT=$(dirname $0)/../root/Debian-3.0r0.ext2 + +qemu -hda "$ROOT" "$@" diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-dir-start-plain.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-dir-start-plain.sh new file mode 100755 index 00000000..41b1b218 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-dir-start-plain.sh @@ -0,0 +1,26 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Start an image with its standard init +# + +ROOT="$1"; shift + +linux root=/dev/root rootflags="$ROOT" rootfstype=hostfs "$@" diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-img-start-cinit.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-img-start-cinit.sh new file mode 100755 index 00000000..8a147d6d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-img-start-cinit.sh @@ -0,0 +1,26 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Start an image with cinit as init +# + +ROOT="$1"; shift + +linux "ubd0=$ROOT" init=/sbin/cinit "$@" diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-img-start-plain.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-img-start-plain.sh new file mode 100755 index 00000000..311eaf13 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-img-start-plain.sh @@ -0,0 +1,26 @@ +#!/bin/sh +# +# 2009 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. +# +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . +# +# +# Start an image with its standard init +# + +ROOT="$1"; shift + +linux "ubd0=$ROOT" "$@" diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-mount.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-mount.sh new file mode 100755 index 00000000..bd52286a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-mount.sh @@ -0,0 +1,3 @@ +SDIR=$(dirname $0) +DDIR=$(dirname $0)/root +sudo mount "$SDIR/Debian-3.0r0.ext2" "$DDIR" -o loop,acl,sync diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-shell.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-shell.sh new file mode 100755 index 00000000..e1776af2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-shell.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +ROOT=$(dirname $0)/Debian-3.0r0.ext2 + +linux ubd0=$ROOT init=/bin/sh "$@" diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-umount.sh b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-umount.sh new file mode 100755 index 00000000..70453e35 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/vm/uml-umount.sh @@ -0,0 +1,3 @@ +SDIR=$(dirname $0) +DDIR=$(dirname $0)/root +sudo umount "$DDIR" diff --git a/software/cinit/browse_source/cinit-0.3pre18/scripts/wrapper/linux-sysvinit/shutdown b/software/cinit/browse_source/cinit-0.3pre18/scripts/wrapper/linux-sysvinit/shutdown new file mode 100755 index 00000000..b8cf3837 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/scripts/wrapper/linux-sysvinit/shutdown @@ -0,0 +1,207 @@ +#!/bin/sh +# Nico Schottelius (nico-cinit /at/ schottelius.org) +# 2007-05-21 +# Behave as being shutdown from Linux' sysvinit + +# Always needed variables / functions +_0_short=${0##*/} +_o_seperator=":" +_oecho_seperator=":" +_eecho_seperator=">" + +# ok-exit/echo +_oecho() +{ + echo "${_0_short}${_oecho_seperator}" "$@" +} + +_oexit() +{ + _oecho "$@" + exit 0 +} + +# error-exit/echo +_eecho() +{ + echo "${_0_short}${_oecho_seperator}" "$@" >&2 +} + +_eexit() +{ + _eecho "$@" + exit 1 +} + +# Program specific variables + +time_t=0 # -t sec +warn_only_k=0 # -k +reboot_r=0 # -r +halt_h=0 # -h +poweroff_P=0 # -P +cancel_c=0 # -c +time=-1 # [time] +message="" # [warning-message] +cmd="" # what to execute internally +pidfile="/var/run/cinit.shutdown" +pid="" +runs="" + +version="0.1" +version_date="2007-10-30" + +message_intro="The system is going down for" +message_reboot="reboot" +message_halt="halt" +message_poweroff="poweroff" + +# unimplemented: -a, -H, -f, -F +# deprecated and thus not implemented: -n + +# traping signals +trap_signals() +{ + _oexit "Aborted shutdown" +} + +# all the functions + +usage() +{ + +cat << cinit_usage + +*** cinit linux-sysvinit shutdown wrapper (Version ${version} ${version_date}) *** + +Usage shutdown [-akrhHPfnc] [-t secs] time [warning message] + -a: use /etc/shutdown.allow + -k: don't really shutdown, only warn. + -r: reboot after shutdown. + -h: halt after shutdown. + -P: halt action is to turn off power. + -H: halt action is to just halt. + -f: do a 'fast' reboot (skip fsck). + -F: Force fsck on reboot. + -n: do not go through "init" but go down real fast. + -c: cancel a running shutdown. + -t secs: delay between warning and kill signal. + ** the "time" argument is mandatory! (try "now") ** + +You can also call "cinit.{halt|reboot|poweroff}" directly +(instead of using this wrapper). + +cinit_usage + +exit 0 + +} + +warn() +{ + ( echo ""; echo "$@"; echo "" ) | wall + ( echo ""; echo "$@"; echo "" ) +} + +if [ "$#" -lt 1 ]; then + usage +fi + +# getopt! +while [ "$#" -ge 1 ]; do + arg="$1"; shift + + case "${arg}" in + -a|-F|-f|-n) + _oexit "Sorry, ${arg} is not implemented." + ;; + -t) + if [ "$#" -lt 1 ]; then + _eexit "-t needs the time argument" + fi + time_t="$1"; shift + ;; + -k) + warn_only_k=1 + cmd=true + ;; + -r) + reboot_r=1 + cmd=cinit.reboot + message_what="${message_reboot}" + ;; + -h|-H) + halt_h=1 + cmd=cinit.halt + message_what="${message_halt}" + ;; + -P) + poweroff_P=1 + cmd=cinit.poweroff + message_what="${message_poweroff}" + ;; + -c) + cancel_c=1 + ;; + *) + # time unset? + if [ "${time}" = -1 ]; then + time="${arg}" + [ "${time}" = "now" ] && time=0 + elif [ -z "${message}" ]; then + message="${arg}" + else + _eexit "Already specified time and message" + fi + ;; + esac +done + +if [ -f "${pidfile}" ]; then + pid=$(cat "${pidfile}") + runs=$(kill -CONT "${pid}" >/dev/null 2>&1 && echo yes) +fi + +# do cancel or abort or locking +if [ "${cancel_c}" -eq 1 ]; then + if [ "${runs}" ]; then + kill -TERM "${pid}" + _oexit "Terminated running shutdown at \"${pid}\"." + else + _eexit "Cannot abort shutdown, not running." + fi +fi + +if [ -z "${time}" ]; then + usage +fi + +if [ -z "${cmd}" ]; then + _eexit "You need to specify one of -h, -P, -H, -r." +fi + +# add lock +if [ "${pid}" ]; then + if [ "${runs}" ]; then + _eexit "Shutdown already running." + else + _oecho "Overwriting stale pidfile" + fi +fi +echo $$ > "${pidfile}" + +if [ "${message}" ]; then + warn "${message}" +fi + +# signals to abort on +trap trap_signals INT HUP TERM + +while [ "${time}" -gt 0 ]; do + warn "${message_intro} ${message_what} in ${time} minute(s)." + sleep 60 + time=$((${time}-1)) +done + +warn "${message_intro} ${message_what} now." +"${cmd}" diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-14:54:44 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-14:54:44 new file mode 100644 index 00000000..cb646bb8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-14:54:44 @@ -0,0 +1 @@ +-rwx------ 1 nico users 74380 Apr 26 14:54 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-16:47:50 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-16:47:50 new file mode 100644 index 00000000..204585a1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-16:47:50 @@ -0,0 +1 @@ +-rwx------ 1 nico users 581695 Apr 26 16:46 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-16:48:48 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-16:48:48 new file mode 100644 index 00000000..204585a1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-16:48:48 @@ -0,0 +1 @@ +-rwx------ 1 nico users 581695 Apr 26 16:46 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-16:50:45 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-16:50:45 new file mode 100644 index 00000000..7a0db7d2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-16:50:45 @@ -0,0 +1 @@ +-rwx------ 1 nico users 581179 Apr 26 16:50 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-17:12:48 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-17:12:48 new file mode 100644 index 00000000..d239e089 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-17:12:48 @@ -0,0 +1 @@ +-rwx------ 1 nico users 582701 Apr 26 17:12 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-17:13:43 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-17:13:43 new file mode 100644 index 00000000..aad49034 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-17:13:43 @@ -0,0 +1 @@ +-rwx------ 1 nico users 582297 Apr 26 17:13 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-23:05:33 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-23:05:33 new file mode 100644 index 00000000..4a636b8c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-26-23:05:33 @@ -0,0 +1 @@ +-rwx------ 1 nico users 36307 Apr 26 22:39 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-27-00:39:24 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-27-00:39:24 new file mode 100644 index 00000000..e93028d8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-27-00:39:24 @@ -0,0 +1 @@ +-rwx------ 1 nico users 36307 Apr 27 00:39 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:18:22 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:18:22 new file mode 100644 index 00000000..f0d2e75f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:18:22 @@ -0,0 +1 @@ +-rwx------ 1 nico users 585344 Apr 30 15:18 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:20:40 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:20:40 new file mode 100644 index 00000000..3b01bfe1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:20:40 @@ -0,0 +1 @@ +-rwx------ 1 nico users 585344 Apr 30 15:20 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:23:25 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:23:25 new file mode 100644 index 00000000..750e3303 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:23:25 @@ -0,0 +1 @@ +-rwx------ 1 nico users 585344 Apr 30 15:23 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:25:44 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:25:44 new file mode 100644 index 00000000..5ed85ca3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:25:44 @@ -0,0 +1 @@ +-rwx------ 1 nico users 585364 Apr 30 15:25 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:32:43 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:32:43 new file mode 100644 index 00000000..3c54e71a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:32:43 @@ -0,0 +1 @@ +-rwx------ 1 nico users 585364 Apr 30 15:32 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:33:37 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:33:37 new file mode 100644 index 00000000..c24acefd --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:33:37 @@ -0,0 +1 @@ +-rwx------ 1 nico users 585364 Apr 30 15:33 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:41:08 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:41:08 new file mode 100644 index 00000000..d29de765 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:41:08 @@ -0,0 +1 @@ +-rwx------ 1 nico users 586640 Apr 30 15:41 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:41:18 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:41:18 new file mode 100644 index 00000000..b29d001c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:41:18 @@ -0,0 +1 @@ +-rwx------ 1 nico users 586400 Apr 30 15:41 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:46:09 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:46:09 new file mode 100644 index 00000000..7ecb58be --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-15:46:09 @@ -0,0 +1 @@ +-rwx------ 1 nico users 586368 Apr 30 15:46 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-16:48:16 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-16:48:16 new file mode 100644 index 00000000..413bd06c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-16:48:16 @@ -0,0 +1 @@ +-rwx------ 1 nico users 587874 Apr 30 16:48 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-16:50:05 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-16:50:05 new file mode 100644 index 00000000..d87323e5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-16:50:05 @@ -0,0 +1 @@ +-rwx------ 1 nico users 587818 Apr 30 16:50 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:02:27 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:02:27 new file mode 100644 index 00000000..e69de29b diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:03:00 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:03:00 new file mode 100644 index 00000000..e69de29b diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:05:11 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:05:11 new file mode 100644 index 00000000..c2e30760 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:05:11 @@ -0,0 +1 @@ +-rwx------ 1 nico users 583878 Apr 30 17:05 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:06:15 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:06:15 new file mode 100644 index 00000000..d11fe194 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:06:15 @@ -0,0 +1 @@ +-rwx------ 1 nico users 583958 Apr 30 17:06 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:11:59 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:11:59 new file mode 100644 index 00000000..513f7663 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:11:59 @@ -0,0 +1 @@ +-rwx------ 1 nico users 583974 Apr 30 17:11 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:13:43 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:13:43 new file mode 100644 index 00000000..76110937 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-17:13:43 @@ -0,0 +1 @@ +-rwx------ 1 nico users 584050 Apr 30 17:13 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-22:28:13 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-22:28:13 new file mode 100644 index 00000000..1370e416 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-22:28:13 @@ -0,0 +1 @@ +-rwx------ 1 nico users 584050 Apr 30 22:28 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-22:34:23 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-22:34:23 new file mode 100644 index 00000000..ceba126c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-04-30-22:34:23 @@ -0,0 +1 @@ +-rwx------ 1 nico users 583838 Apr 30 22:34 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:27:51 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:27:51 new file mode 100644 index 00000000..b21e993d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:27:51 @@ -0,0 +1 @@ +-rwx------ 1 nico users 584543 May 2 13:27 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:46:31 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:46:31 new file mode 100644 index 00000000..95c008db --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:46:31 @@ -0,0 +1 @@ +-rwx------ 1 nico users 584719 May 2 13:46 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:49:29 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:49:29 new file mode 100644 index 00000000..284469ac --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:49:29 @@ -0,0 +1 @@ +-rwx------ 1 nico users 584775 May 2 13:49 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:49:58 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:49:58 new file mode 100644 index 00000000..9b87df79 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:49:58 @@ -0,0 +1 @@ +-rwx------ 1 nico users 584843 May 2 13:49 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:52:20 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:52:20 new file mode 100644 index 00000000..a4705b4e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:52:20 @@ -0,0 +1 @@ +-rwx------ 1 nico users 584711 May 2 13:52 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:55:50 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:55:50 new file mode 100644 index 00000000..847e1f56 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:55:50 @@ -0,0 +1 @@ +-rwx------ 1 nico users 584759 May 2 13:55 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:58:14 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:58:14 new file mode 100644 index 00000000..a9094c6f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:58:14 @@ -0,0 +1 @@ +-rwx------ 1 nico users 584759 May 2 13:58 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:59:53 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:59:53 new file mode 100644 index 00000000..921e7860 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-13:59:53 @@ -0,0 +1 @@ +-rwx------ 1 nico users 584915 May 2 13:59 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-14:00:26 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-14:00:26 new file mode 100644 index 00000000..aeb6907a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-14:00:26 @@ -0,0 +1 @@ +-rwx------ 1 nico users 584915 May 2 14:00 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-14:04:19 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-14:04:19 new file mode 100644 index 00000000..138af335 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-02-14:04:19 @@ -0,0 +1 @@ +-rwx------ 1 nico users 583802 May 2 14:04 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-15:47:56 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-15:47:56 new file mode 100644 index 00000000..87f3513e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-15:47:56 @@ -0,0 +1 @@ +-rwx------ 1 nico users 586826 May 6 15:47 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:02:41 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:02:41 new file mode 100644 index 00000000..85073f60 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:02:41 @@ -0,0 +1 @@ +-rwx------ 1 nico users 586774 May 6 20:02 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:39:08 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:39:08 new file mode 100644 index 00000000..0c2bb0af --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:39:08 @@ -0,0 +1 @@ +-rwx------ 1 nico users 586194 May 6 20:39 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:40:55 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:40:55 new file mode 100644 index 00000000..34e3fd85 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:40:55 @@ -0,0 +1 @@ +-rwx------ 1 nico users 586578 May 6 20:40 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:44:39 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:44:39 new file mode 100644 index 00000000..2b6d7b2a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:44:39 @@ -0,0 +1 @@ +-rwx------ 1 nico users 586594 May 6 20:44 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:48:57 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:48:57 new file mode 100644 index 00000000..55fa5821 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:48:57 @@ -0,0 +1 @@ +-rwx------ 1 nico users 586646 May 6 20:48 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:49:46 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:49:46 new file mode 100644 index 00000000..533c3fd6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:49:46 @@ -0,0 +1 @@ +-rwx------ 1 nico users 586546 May 6 20:49 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:54:45 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:54:45 new file mode 100644 index 00000000..bffbdd24 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:54:45 @@ -0,0 +1 @@ +-rwx------ 1 nico users 586354 May 6 20:54 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:57:17 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:57:17 new file mode 100644 index 00000000..071f56c6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-20:57:17 @@ -0,0 +1 @@ +-rwx------ 1 nico users 586354 May 6 20:57 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-21:07:11 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-21:07:11 new file mode 100644 index 00000000..2c71d62b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-21:07:11 @@ -0,0 +1 @@ +-rwx------ 1 nico users 586414 May 6 21:07 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:22:43 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:22:43 new file mode 100644 index 00000000..6963a07e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:22:43 @@ -0,0 +1 @@ +-rwx------ 1 nico users 590128 May 6 22:22 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:39:12 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:39:12 new file mode 100644 index 00000000..90e36387 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:39:12 @@ -0,0 +1 @@ +-rwx------ 1 nico users 590128 May 6 22:39 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:43:21 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:43:21 new file mode 100644 index 00000000..9f5f1b76 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:43:21 @@ -0,0 +1 @@ +-rwx------ 1 nico users 590180 May 6 22:43 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:54:00 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:54:00 new file mode 100644 index 00000000..fe51f37f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:54:00 @@ -0,0 +1 @@ +-rwx------ 1 nico users 590108 May 6 22:54 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:55:07 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:55:07 new file mode 100644 index 00000000..4d2854b5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:55:07 @@ -0,0 +1 @@ +-rwx------ 1 nico users 590108 May 6 22:55 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:56:58 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:56:58 new file mode 100644 index 00000000..5c7685ba --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:56:58 @@ -0,0 +1 @@ +-rwx------ 1 nico users 590148 May 6 22:56 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:58:39 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:58:39 new file mode 100644 index 00000000..4720079f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:58:39 @@ -0,0 +1 @@ +-rwx------ 1 nico users 590180 May 6 22:58 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:59:17 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:59:17 new file mode 100644 index 00000000..d7c4fd66 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-22:59:17 @@ -0,0 +1 @@ +-rwx------ 1 nico users 590232 May 6 22:59 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-23:00:07 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-23:00:07 new file mode 100644 index 00000000..c0db4814 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-23:00:07 @@ -0,0 +1 @@ +-rwx------ 1 nico users 590232 May 6 23:00 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-23:19:24 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-23:19:24 new file mode 100644 index 00000000..cd0fb013 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-23:19:24 @@ -0,0 +1 @@ +-rwx------ 1 nico users 590364 May 6 23:19 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-23:53:59 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-23:53:59 new file mode 100644 index 00000000..873c4553 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-06-23:53:59 @@ -0,0 +1 @@ +-rwx------ 1 nico users 83116 May 6 23:53 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:18:32 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:18:32 new file mode 100644 index 00000000..00b835d4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:18:32 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591984 May 7 00:18 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:20:46 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:20:46 new file mode 100644 index 00000000..3b1a8332 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:20:46 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591988 May 7 00:20 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:24:11 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:24:11 new file mode 100644 index 00000000..cb129627 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:24:11 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591988 May 7 00:24 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:26:55 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:26:55 new file mode 100644 index 00000000..d681556a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:26:55 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591988 May 7 00:26 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:27:53 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:27:53 new file mode 100644 index 00000000..b1ac1360 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:27:53 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591988 May 7 00:27 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:28:24 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:28:24 new file mode 100644 index 00000000..df645c5f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:28:24 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591992 May 7 00:28 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:31:01 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:31:01 new file mode 100644 index 00000000..4ad1fccf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:31:01 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591992 May 7 00:31 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:37:58 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:37:58 new file mode 100644 index 00000000..a5eaa893 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:37:58 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591992 May 7 00:37 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:39:02 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:39:02 new file mode 100644 index 00000000..16613354 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:39:02 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591992 May 7 00:39 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:41:50 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:41:50 new file mode 100644 index 00000000..634db82e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:41:50 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591988 May 7 00:41 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:43:08 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:43:08 new file mode 100644 index 00000000..29e5ab44 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:43:08 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591988 May 7 00:43 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:55:51 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:55:51 new file mode 100644 index 00000000..2066a3b4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:55:51 @@ -0,0 +1 @@ +-rwx------ 1 nico users 592323 May 7 00:55 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:59:30 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:59:30 new file mode 100644 index 00000000..03900b64 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-00:59:30 @@ -0,0 +1 @@ +-rwx------ 1 nico users 592323 May 7 00:59 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:07:13 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:07:13 new file mode 100644 index 00000000..f2b3d846 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:07:13 @@ -0,0 +1 @@ +-rwx------ 1 nico users 592323 May 7 01:07 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:08:19 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:08:19 new file mode 100644 index 00000000..17cb5c2b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:08:19 @@ -0,0 +1 @@ +-rwx------ 1 nico users 574191 May 7 01:08 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:16:38 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:16:38 new file mode 100644 index 00000000..9433ec26 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:16:38 @@ -0,0 +1 @@ +-rwx------ 1 nico users 592323 May 7 01:16 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:19:48 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:19:48 new file mode 100644 index 00000000..0c40f566 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:19:48 @@ -0,0 +1 @@ +-rwx------ 1 nico users 592323 May 7 01:19 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:52:58 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:52:58 new file mode 100644 index 00000000..1aaadbc1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-01:52:58 @@ -0,0 +1 @@ +-rwx------ 1 nico users 592343 May 7 01:52 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:41:29 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:41:29 new file mode 100644 index 00000000..2be2f9a2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:41:29 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591445 May 7 12:41 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:43:55 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:43:55 new file mode 100644 index 00000000..30ec92e0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:43:55 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591525 May 7 12:43 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:45:38 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:45:38 new file mode 100644 index 00000000..c5d8b280 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:45:38 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591525 May 7 12:45 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:48:21 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:48:21 new file mode 100644 index 00000000..2525b992 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:48:21 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591525 May 7 12:48 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:49:22 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:49:22 new file mode 100644 index 00000000..aafaa448 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:49:22 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591525 May 7 12:49 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:50:57 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:50:57 new file mode 100644 index 00000000..689e0fd2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:50:57 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591589 May 7 12:50 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:52:26 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:52:26 new file mode 100644 index 00000000..b7771920 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:52:26 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591729 May 7 12:52 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:54:04 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:54:04 new file mode 100644 index 00000000..474189e8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:54:04 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591729 May 7 12:54 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:57:56 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:57:56 new file mode 100644 index 00000000..271bb163 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-12:57:56 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591933 May 7 12:57 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:06:20 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:06:20 new file mode 100644 index 00000000..d2c651e8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:06:20 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591981 May 7 13:06 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:18:00 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:18:00 new file mode 100644 index 00000000..960ca358 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:18:00 @@ -0,0 +1 @@ +-rwx------ 1 nico users 591981 May 7 13:18 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:21:37 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:21:37 new file mode 100644 index 00000000..8d92e4f3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:21:37 @@ -0,0 +1 @@ +-rwx------ 1 nico users 592137 May 7 13:21 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:24:40 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:24:40 new file mode 100644 index 00000000..a025210f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:24:40 @@ -0,0 +1 @@ +-rwx------ 1 nico users 592137 May 7 13:24 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:25:56 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:25:56 new file mode 100644 index 00000000..15de8275 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:25:56 @@ -0,0 +1 @@ +-rwx------ 1 nico users 592137 May 7 13:25 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:26:49 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:26:49 new file mode 100644 index 00000000..fa232442 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:26:49 @@ -0,0 +1 @@ +-rwx------ 1 nico users 593597 May 7 13:26 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:30:20 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:30:20 new file mode 100644 index 00000000..37d26b60 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:30:20 @@ -0,0 +1 @@ +-rwx------ 1 nico users 593613 May 7 13:30 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:33:50 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:33:50 new file mode 100644 index 00000000..3a8a3343 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:33:50 @@ -0,0 +1 @@ +-rwx------ 1 nico users 593613 May 7 13:33 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:51:24 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:51:24 new file mode 100644 index 00000000..139a41ae --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:51:24 @@ -0,0 +1 @@ +-rwx------ 1 nico users 595209 May 7 13:51 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:53:11 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:53:11 new file mode 100644 index 00000000..a4a9383c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:53:11 @@ -0,0 +1 @@ +-rwx------ 1 nico users 594213 May 7 13:53 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:53:22 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:53:22 new file mode 100644 index 00000000..a4a9383c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:53:22 @@ -0,0 +1 @@ +-rwx------ 1 nico users 594213 May 7 13:53 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:57:27 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:57:27 new file mode 100644 index 00000000..4d0c5820 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:57:27 @@ -0,0 +1 @@ +-rwx------ 1 nico users 594245 May 7 13:57 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:58:26 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:58:26 new file mode 100644 index 00000000..f62f9890 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-13:58:26 @@ -0,0 +1 @@ +-rwx------ 1 nico users 594201 May 7 13:58 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:00:47 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:00:47 new file mode 100644 index 00000000..1b1c2687 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:00:47 @@ -0,0 +1 @@ +-rwx------ 1 nico users 594209 May 7 14:00 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:12:17 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:12:17 new file mode 100644 index 00000000..eb6c69a8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:12:17 @@ -0,0 +1 @@ +-rwx------ 1 nico users 594209 May 7 14:12 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:14:00 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:14:00 new file mode 100644 index 00000000..7de2bc3e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:14:00 @@ -0,0 +1 @@ +-rwx------ 1 nico users 594209 May 7 14:14 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:40:38 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:40:38 new file mode 100644 index 00000000..5cce7d61 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:40:38 @@ -0,0 +1 @@ +-rwx------ 1 nico users 597457 May 7 14:40 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:43:08 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:43:08 new file mode 100644 index 00000000..11a18f12 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:43:08 @@ -0,0 +1 @@ +-rwx------ 1 nico users 597245 May 7 14:43 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:46:22 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:46:22 new file mode 100644 index 00000000..17920fb6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:46:22 @@ -0,0 +1 @@ +-rwx------ 1 nico users 597349 May 7 14:46 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:48:01 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:48:01 new file mode 100644 index 00000000..28b127b9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:48:01 @@ -0,0 +1 @@ +-rwx------ 1 nico users 597405 May 7 14:48 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:49:20 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:49:20 new file mode 100644 index 00000000..be0db14c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:49:20 @@ -0,0 +1 @@ +-rwx------ 1 nico users 597465 May 7 14:49 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:54:30 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:54:30 new file mode 100644 index 00000000..a7bb306d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:54:30 @@ -0,0 +1 @@ +-rwx------ 1 nico users 597521 May 7 14:54 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:55:05 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:55:05 new file mode 100644 index 00000000..5d0fa0e1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:55:05 @@ -0,0 +1 @@ +-rwx------ 1 nico users 597521 May 7 14:55 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:56:35 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:56:35 new file mode 100644 index 00000000..2a3d7b76 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-14:56:35 @@ -0,0 +1 @@ +-rwx------ 1 nico users 597521 May 7 14:56 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:01:01 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:01:01 new file mode 100644 index 00000000..7c8b202b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:01:01 @@ -0,0 +1 @@ +-rwx------ 1 nico users 597521 May 7 15:01 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:11:31 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:11:31 new file mode 100644 index 00000000..6d39491b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:11:31 @@ -0,0 +1 @@ +-rwx------ 1 nico users 65883 May 7 15:11 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:19:50 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:19:50 new file mode 100644 index 00000000..f6cbfa60 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:19:50 @@ -0,0 +1 @@ +-rwx------ 1 nico users 600423 May 7 15:19 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:20:58 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:20:58 new file mode 100644 index 00000000..44f8ed6e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:20:58 @@ -0,0 +1 @@ +-rwx------ 1 nico users 600423 May 7 15:20 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:24:21 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:24:21 new file mode 100644 index 00000000..ac80b6cc --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:24:21 @@ -0,0 +1 @@ +-rwx------ 1 nico users 600487 May 7 15:24 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:27:00 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:27:00 new file mode 100644 index 00000000..a2d19633 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:27:00 @@ -0,0 +1 @@ +-rwx------ 1 nico users 600487 May 7 15:27 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:28:54 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:28:54 new file mode 100644 index 00000000..c010ebe3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:28:54 @@ -0,0 +1 @@ +-rwx------ 1 nico users 600483 May 7 15:28 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:40:58 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:40:58 new file mode 100644 index 00000000..97b6ef8b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-15:40:58 @@ -0,0 +1 @@ +-rwx------ 1 nico users 600479 May 7 15:40 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:11:52 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:11:52 new file mode 100644 index 00000000..f4b32610 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:11:52 @@ -0,0 +1 @@ +-rwx------ 1 nico users 601444 May 7 16:11 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:20:02 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:20:02 new file mode 100644 index 00000000..23608225 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:20:02 @@ -0,0 +1 @@ +-rwx------ 1 nico users 602184 May 7 16:20 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:26:18 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:26:18 new file mode 100644 index 00000000..a52756b8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:26:18 @@ -0,0 +1 @@ +-rwx------ 1 nico users 602192 May 7 16:26 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:31:09 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:31:09 new file mode 100644 index 00000000..40f890cf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:31:09 @@ -0,0 +1 @@ +-rwx------ 1 nico users 602192 May 7 16:31 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:35:42 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:35:42 new file mode 100644 index 00000000..601a1bfe --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:35:42 @@ -0,0 +1 @@ +-rwx------ 1 nico users 602192 May 7 16:35 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:50:11 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:50:11 new file mode 100644 index 00000000..4c5693a0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:50:11 @@ -0,0 +1 @@ +-rwx------ 1 nico users 602260 May 7 16:50 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:50:40 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:50:40 new file mode 100644 index 00000000..1a1cd156 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-16:50:40 @@ -0,0 +1 @@ +-rwx------ 1 nico users 602248 May 7 16:50 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:03:50 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:03:50 new file mode 100644 index 00000000..8b6f5a43 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:03:50 @@ -0,0 +1 @@ +-rwx------ 1 nico users 602248 May 7 17:03 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:07:50 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:07:50 new file mode 100644 index 00000000..d19fc7ae --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:07:50 @@ -0,0 +1 @@ +-rwx------ 1 nico users 596181 May 7 17:07 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:08:09 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:08:09 new file mode 100644 index 00000000..22b48319 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:08:09 @@ -0,0 +1 @@ +-rwx------ 1 nico users 596181 May 7 17:08 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:08:26 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:08:26 new file mode 100644 index 00000000..de1d5756 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:08:26 @@ -0,0 +1 @@ +-rwx------ 1 nico users 575617 May 7 17:08 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:10:57 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:10:57 new file mode 100644 index 00000000..ccf3d46e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-17:10:57 @@ -0,0 +1 @@ +-rwx------ 1 nico users 575513 May 7 17:10 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:24:22 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:24:22 new file mode 100644 index 00000000..9b515805 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:24:22 @@ -0,0 +1 @@ +-rwx------ 1 nico users 575513 May 7 18:24 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:24:59 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:24:59 new file mode 100644 index 00000000..9b515805 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:24:59 @@ -0,0 +1 @@ +-rwx------ 1 nico users 575513 May 7 18:24 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:37:23 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:37:23 new file mode 100644 index 00000000..4c797f80 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:37:23 @@ -0,0 +1 @@ +-rwx------ 1 nico users 575521 May 7 18:37 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:49:16 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:49:16 new file mode 100644 index 00000000..f6a6637e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-07-18:49:16 @@ -0,0 +1 @@ +-rwx------ 1 nico users 26118 May 7 18:49 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-10:44:00 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-10:44:00 new file mode 100644 index 00000000..4dad0f2e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-10:44:00 @@ -0,0 +1 @@ +-rwx------ 1 nico users 64935 May 8 10:44 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-12:41:22 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-12:41:22 new file mode 100644 index 00000000..e69de29b diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-12:42:08 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-12:42:08 new file mode 100644 index 00000000..a356e57e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-12:42:08 @@ -0,0 +1 @@ +-rwx------ 1 nico users 23195 May 8 12:42 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-12:42:57 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-12:42:57 new file mode 100644 index 00000000..60f39860 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-12:42:57 @@ -0,0 +1 @@ +-rwx------ 1 nico users 574244 May 8 12:42 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-22:41:37 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-22:41:37 new file mode 100644 index 00000000..eeb969f5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-22:41:37 @@ -0,0 +1 @@ +-rwx------ 1 nico users 574244 May 8 22:41 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-23:03:37 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-23:03:37 new file mode 100644 index 00000000..7b69f761 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-23:03:37 @@ -0,0 +1 @@ +-rwx------ 1 nico users 595364 May 8 23:03 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-23:11:20 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-23:11:20 new file mode 100644 index 00000000..b79e90ca --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-23:11:20 @@ -0,0 +1 @@ +-rwx------ 1 nico users 600779 May 8 23:11 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-23:40:29 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-23:40:29 new file mode 100644 index 00000000..6cf221bc --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-08-23:40:29 @@ -0,0 +1 @@ +-rwx------ 1 nico users 600887 May 8 23:40 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-09-12:03:27 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-09-12:03:27 new file mode 100644 index 00000000..78304c2a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-09-12:03:27 @@ -0,0 +1 @@ +-rwx------ 1 nico users 600967 May 9 12:03 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-09-12:05:57 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-09-12:05:57 new file mode 100644 index 00000000..a810ae44 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-09-12:05:57 @@ -0,0 +1 @@ +-rwx------ 1 nico users 600971 May 9 12:05 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:10:50 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:10:50 new file mode 100644 index 00000000..e8e895de --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:10:50 @@ -0,0 +1 @@ +-rwx------ 1 nico users 600979 May 10 19:10 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:16:39 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:16:39 new file mode 100644 index 00000000..14426e45 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:16:39 @@ -0,0 +1 @@ +-rwx------ 1 nico users 602483 May 10 19:16 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:25:05 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:25:05 new file mode 100644 index 00000000..0b5026c7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:25:05 @@ -0,0 +1 @@ +-rwx------ 1 nico users 602483 May 10 19:25 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:26:14 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:26:14 new file mode 100644 index 00000000..c1ba5203 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:26:14 @@ -0,0 +1 @@ +-rwx------ 1 nico users 602483 May 10 19:26 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:39:23 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:39:23 new file mode 100644 index 00000000..9b30a737 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-19:39:23 @@ -0,0 +1 @@ +-rwx------ 1 nico users 603383 May 10 19:39 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:13:51 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:13:51 new file mode 100644 index 00000000..81fab8bc --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:13:51 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605373 May 10 20:13 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:14:40 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:14:40 new file mode 100644 index 00000000..f73e7147 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:14:40 @@ -0,0 +1 @@ +-rwx------ 1 nico users 604245 May 10 20:14 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:27:10 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:27:10 new file mode 100644 index 00000000..a7fa3a2e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:27:10 @@ -0,0 +1 @@ +-rwx------ 1 nico users 604511 May 10 20:27 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:28:11 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:28:11 new file mode 100644 index 00000000..e3597646 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:28:11 @@ -0,0 +1 @@ +-rwx------ 1 nico users 604507 May 10 20:28 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:28:31 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:28:31 new file mode 100644 index 00000000..f5b63078 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:28:31 @@ -0,0 +1 @@ +-rwx------ 1 nico users 604471 May 10 20:28 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:30:03 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:30:03 new file mode 100644 index 00000000..7377ee59 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:30:03 @@ -0,0 +1 @@ +-rwx------ 1 nico users 604471 May 10 20:30 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:32:29 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:32:29 new file mode 100644 index 00000000..b46425f9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:32:29 @@ -0,0 +1 @@ +-rwx------ 1 nico users 604471 May 10 20:32 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:33:30 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:33:30 new file mode 100644 index 00000000..ad3cb32e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:33:30 @@ -0,0 +1 @@ +-rwx------ 1 nico users 604471 May 10 20:33 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:38:26 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:38:26 new file mode 100644 index 00000000..b78fde41 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-20:38:26 @@ -0,0 +1 @@ +-rwx------ 1 nico users 604245 May 10 20:38 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-21:52:18 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-21:52:18 new file mode 100644 index 00000000..5319df7a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-21:52:18 @@ -0,0 +1 @@ +-rwx------ 1 nico users 604533 May 10 21:52 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-21:54:00 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-21:54:00 new file mode 100644 index 00000000..41ed8e4c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-21:54:00 @@ -0,0 +1 @@ +-rwx------ 1 nico users 604637 May 10 21:54 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:06:53 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:06:53 new file mode 100644 index 00000000..34791fa3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:06:53 @@ -0,0 +1 @@ +-rwx------ 1 nico users 604641 May 10 22:06 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:07:06 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:07:06 new file mode 100644 index 00000000..9579bf3d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:07:06 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95212 May 10 22:07 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:24:49 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:24:49 new file mode 100644 index 00000000..0d88b035 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:24:49 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95668 May 10 22:24 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:27:59 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:27:59 new file mode 100644 index 00000000..a2b8778b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:27:59 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95400 May 10 22:27 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:30:25 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:30:25 new file mode 100644 index 00000000..ae278de2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-22:30:25 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95456 May 10 22:30 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-23:42:29 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-23:42:29 new file mode 100644 index 00000000..11bcf1e3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-23:42:29 @@ -0,0 +1 @@ +-rwx------ 1 nico users 606417 May 10 23:42 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-23:44:10 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-23:44:10 new file mode 100644 index 00000000..6ffc3a31 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-23:44:10 @@ -0,0 +1 @@ +-rwx------ 1 nico users 606369 May 10 23:44 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-23:46:40 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-23:46:40 new file mode 100644 index 00000000..e3aa20c0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-10-23:46:40 @@ -0,0 +1 @@ +-rwx------ 1 nico users 606373 May 10 23:46 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-00:14:02 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-00:14:02 new file mode 100644 index 00000000..86483ada --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-00:14:02 @@ -0,0 +1 @@ +-rwx------ 1 nico users 604923 May 11 00:14 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-00:17:19 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-00:17:19 new file mode 100644 index 00000000..fdaa4339 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-00:17:19 @@ -0,0 +1 @@ +-rwx------ 1 nico users 604923 May 11 00:17 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-00:23:52 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-00:23:52 new file mode 100644 index 00000000..7e94e61a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-00:23:52 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605007 May 11 00:23 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:04:16 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:04:16 new file mode 100644 index 00000000..33d8fd01 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:04:16 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95830 May 11 08:04 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:06:26 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:06:26 new file mode 100644 index 00000000..c96a3211 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:06:26 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95830 May 11 08:06 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:09:49 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:09:49 new file mode 100644 index 00000000..0e444a28 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:09:49 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95854 May 11 08:09 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:11:49 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:11:49 new file mode 100644 index 00000000..856ac480 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-11-08:11:49 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95862 May 11 08:11 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-13-20:34:19 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-13-20:34:19 new file mode 100644 index 00000000..86818bfe --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-13-20:34:19 @@ -0,0 +1 @@ +-rwx------ 1 nico users 69502 May 13 20:34 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-13-22:33:53 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-13-22:33:53 new file mode 100644 index 00000000..77c8fb8c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-13-22:33:53 @@ -0,0 +1 @@ +-rwx------ 1 nico users 579289 May 13 22:33 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-15-22:32:07 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-15-22:32:07 new file mode 100644 index 00000000..59557c4b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-15-22:32:07 @@ -0,0 +1 @@ +-rwx------ 1 nico users 579289 May 15 22:32 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-15-23:52:06 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-15-23:52:06 new file mode 100644 index 00000000..757e6dc6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-15-23:52:06 @@ -0,0 +1 @@ +-rwx------ 1 nico users 579305 May 15 23:52 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-15-23:56:00 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-15-23:56:00 new file mode 100644 index 00000000..24c85104 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-15-23:56:00 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605145 May 15 23:56 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:16:09 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:16:09 new file mode 100644 index 00000000..27254aa3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:16:09 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605205 May 16 00:16 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:20:52 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:20:52 new file mode 100644 index 00000000..a053d473 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:20:52 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605317 May 16 00:20 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:23:43 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:23:43 new file mode 100644 index 00000000..d43f64a7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:23:43 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605373 May 16 00:23 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:27:36 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:27:36 new file mode 100644 index 00000000..ca2ccc40 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:27:36 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605569 May 16 00:27 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:37:24 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:37:24 new file mode 100644 index 00000000..ea664c90 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:37:24 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605561 May 16 00:37 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:39:43 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:39:43 new file mode 100644 index 00000000..3eb8d279 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-00:39:43 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605267 May 16 00:39 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-09:58:08 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-09:58:08 new file mode 100644 index 00000000..90a5b698 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-09:58:08 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605567 May 16 09:58 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:09:00 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:09:00 new file mode 100644 index 00000000..4c34f810 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:09:00 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605583 May 16 10:09 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:13:07 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:13:07 new file mode 100644 index 00000000..b6a851e6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:13:07 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605619 May 16 10:13 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:14:43 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:14:43 new file mode 100644 index 00000000..d7555f0d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:14:43 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605461 May 16 10:14 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:23:05 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:23:05 new file mode 100644 index 00000000..2c4fc649 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:23:05 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605493 May 16 10:23 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:27:48 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:27:48 new file mode 100644 index 00000000..b8f9fc63 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:27:48 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605493 May 16 10:27 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:44:17 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:44:17 new file mode 100644 index 00000000..a4b493e5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:44:17 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605561 May 16 10:44 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:52:29 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:52:29 new file mode 100644 index 00000000..20f10201 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-16-10:52:29 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605561 May 16 10:52 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-17-00:19:15 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-17-00:19:15 new file mode 100644 index 00000000..4f112228 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-17-00:19:15 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605405 May 17 00:19 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-17-16:02:33 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-17-16:02:33 new file mode 100644 index 00000000..e1b6b2d9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-17-16:02:33 @@ -0,0 +1 @@ +-rwx------ 1 nico users 605405 May 17 16:02 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-14:56:01 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-14:56:01 new file mode 100644 index 00000000..c5e08e25 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-14:56:01 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95794 May 21 14:56 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:01:28 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:01:28 new file mode 100644 index 00000000..f084d66c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:01:28 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97550 May 21 15:01 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:03:46 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:03:46 new file mode 100644 index 00000000..3300d96b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:03:46 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97546 May 21 15:03 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:06:24 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:06:24 new file mode 100644 index 00000000..c07965d9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:06:24 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95186 May 21 15:06 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:12:50 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:12:50 new file mode 100644 index 00000000..58d948d6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:12:50 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97562 May 21 15:12 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:14:38 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:14:38 new file mode 100644 index 00000000..a54dbd5f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:14:38 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97562 May 21 15:14 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:15:28 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:15:28 new file mode 100644 index 00000000..fb57cba5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:15:28 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97562 May 21 15:15 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:16:15 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:16:15 new file mode 100644 index 00000000..7411b66d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:16:15 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97562 May 21 15:16 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:26:25 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:26:25 new file mode 100644 index 00000000..48fc5eb9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:26:25 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97562 May 21 15:26 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:27:30 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:27:30 new file mode 100644 index 00000000..f9ceed5d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:27:30 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97562 May 21 15:27 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:32:52 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:32:52 new file mode 100644 index 00000000..9e7e39a9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:32:52 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97622 May 21 15:32 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:35:00 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:35:00 new file mode 100644 index 00000000..0f2d5463 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:35:00 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97638 May 21 15:35 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:36:19 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:36:19 new file mode 100644 index 00000000..8f465621 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-15:36:19 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97638 May 21 15:36 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:05:20 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:05:20 new file mode 100644 index 00000000..fdd3f0f3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:05:20 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95350 May 21 17:05 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:08:31 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:08:31 new file mode 100644 index 00000000..ee8a1e86 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:08:31 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95358 May 21 17:08 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:11:25 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:11:25 new file mode 100644 index 00000000..164d40ed --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:11:25 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95334 May 21 17:11 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:12:15 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:12:15 new file mode 100644 index 00000000..164d40ed --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:12:15 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95334 May 21 17:11 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:12:49 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:12:49 new file mode 100644 index 00000000..125b84d8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:12:49 @@ -0,0 +1 @@ +-rwx------ 1 nico users 95422 May 21 17:12 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:33:25 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:33:25 new file mode 100644 index 00000000..2c6102d8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:33:25 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97722 May 21 17:33 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:47:39 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:47:39 new file mode 100644 index 00000000..2c6102d8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:47:39 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97722 May 21 17:33 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:47:52 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:47:52 new file mode 100644 index 00000000..f86bd095 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-21-17:47:52 @@ -0,0 +1 @@ +-rwx------ 1 nico users 71102 May 21 17:47 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-23-21:04:37 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-23-21:04:37 new file mode 100644 index 00000000..e9159f80 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-23-21:04:37 @@ -0,0 +1 @@ +-rwx------ 1 nico users 71102 May 23 21:04 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-26-07:55:38 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-26-07:55:38 new file mode 100644 index 00000000..d814eb2d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-26-07:55:38 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97762 May 26 07:55 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-26-08:27:51 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-26-08:27:51 new file mode 100644 index 00000000..3d6940fd --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-26-08:27:51 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97923 May 26 08:27 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-26-08:32:19 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-26-08:32:19 new file mode 100644 index 00000000..1528030b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-26-08:32:19 @@ -0,0 +1 @@ +-rwx------ 1 nico users 97923 May 26 08:32 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-27-05:51:30 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-27-05:51:30 new file mode 100644 index 00000000..9f0f1c2a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-05-27-05:51:30 @@ -0,0 +1 @@ +-rwx------ 1 nico users 48484 May 27 05:51 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-04-00:23:43 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-04-00:23:43 new file mode 100644 index 00000000..0fbb4e6d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-04-00:23:43 @@ -0,0 +1 @@ +-rwx------ 1 nico users 48484 Jun 4 00:23 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-04-10:08:43 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-04-10:08:43 new file mode 100644 index 00000000..13fa7ebf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-04-10:08:43 @@ -0,0 +1 @@ +-rwx------ 1 nico users 53748 Jun 4 10:08 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-04-10:54:35 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-04-10:54:35 new file mode 100644 index 00000000..2af16040 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-04-10:54:35 @@ -0,0 +1 @@ +-rwx------ 1 nico users 53692 Jun 4 10:54 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-05-12:34:54 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-05-12:34:54 new file mode 100644 index 00000000..bde025a7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-05-12:34:54 @@ -0,0 +1 @@ +-rwx------ 1 nico users 48484 Jun 5 12:34 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-05-12:41:25 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-05-12:41:25 new file mode 100644 index 00000000..8069fae4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-05-12:41:25 @@ -0,0 +1 @@ +-rwx------ 1 nico users 48484 Jun 5 12:41 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-05-14:40:37 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-05-14:40:37 new file mode 100644 index 00000000..bba7655d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-05-14:40:37 @@ -0,0 +1 @@ +-rwx------ 1 nico users 14692 Jun 5 14:40 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-08-09:48:34 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-08-09:48:34 new file mode 100644 index 00000000..8f26ae30 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-08-09:48:34 @@ -0,0 +1 @@ +-rwx------ 1 nico users 48484 Jun 8 09:48 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-08-10:09:27 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-08-10:09:27 new file mode 100644 index 00000000..e1eeb6a9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-08-10:09:27 @@ -0,0 +1 @@ +-rwx------ 1 nico users 48480 Jun 8 10:09 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-08-10:23:04 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-08-10:23:04 new file mode 100644 index 00000000..0858c419 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-08-10:23:04 @@ -0,0 +1 @@ +-rwx------ 1 nico users 53724 Jun 8 10:23 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-08:44:09 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-08:44:09 new file mode 100644 index 00000000..b96788fa --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-08:44:09 @@ -0,0 +1 @@ +-rwx------ 1 nico users 53524 Jun 9 08:44 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-09:59:47 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-09:59:47 new file mode 100644 index 00000000..e69de29b diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-10:00:08 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-10:00:08 new file mode 100644 index 00000000..e69de29b diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-10:00:40 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-10:00:40 new file mode 100644 index 00000000..e69de29b diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:27:17 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:27:17 new file mode 100644 index 00000000..2b821ff2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:27:17 @@ -0,0 +1 @@ +-rwx------ 1 nico users 53652 Jun 9 11:27 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:28:30 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:28:30 new file mode 100644 index 00000000..66dcc65d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:28:30 @@ -0,0 +1 @@ +-rwx------ 1 nico users 53660 Jun 9 11:28 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:46:28 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:46:28 new file mode 100644 index 00000000..f106b674 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:46:28 @@ -0,0 +1 @@ +-rwx------ 1 nico users 52576 Jun 9 11:46 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:47:04 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:47:04 new file mode 100644 index 00000000..531df2bc --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-09-11:47:04 @@ -0,0 +1 @@ +-rwx------ 1 nico users 52576 Jun 9 11:47 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-07:07:35 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-07:07:35 new file mode 100644 index 00000000..9c72c2f8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-07:07:35 @@ -0,0 +1 @@ +-rwx------ 1 nico users 52576 Jun 10 07:07 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-18:14:05 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-18:14:05 new file mode 100644 index 00000000..6b4262c7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-18:14:05 @@ -0,0 +1 @@ +-rwx------ 1 nico users 71206 Jun 10 18:14 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-18:14:28 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-18:14:28 new file mode 100644 index 00000000..6b4262c7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-18:14:28 @@ -0,0 +1 @@ +-rwx------ 1 nico users 71206 Jun 10 18:14 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-18:18:11 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-18:18:11 new file mode 100644 index 00000000..fb6745a5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-10-18:18:11 @@ -0,0 +1 @@ +-rwx------ 1 nico users 50856 Jun 10 18:14 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-16:28:13 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-16:28:13 new file mode 100644 index 00000000..7fb4b100 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-16:28:13 @@ -0,0 +1 @@ +-rwx------ 1 nico users 50856 Jun 11 16:28 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-19:13:20 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-19:13:20 new file mode 100644 index 00000000..cc6a8ef3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-19:13:20 @@ -0,0 +1 @@ +-rwx------ 1 nico users 50856 Jun 11 19:13 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-19:22:16 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-19:22:16 new file mode 100644 index 00000000..cc6a8ef3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-19:22:16 @@ -0,0 +1 @@ +-rwx------ 1 nico users 50856 Jun 11 19:13 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-19:25:11 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-19:25:11 new file mode 100644 index 00000000..68e12d0e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-11-19:25:11 @@ -0,0 +1 @@ +-rwx------ 1 nico users 50856 Jun 11 19:25 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-12-18:09:08 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-12-18:09:08 new file mode 100644 index 00000000..82ce820c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-12-18:09:08 @@ -0,0 +1 @@ +-rwx------ 1 nico users 50860 Jun 12 18:09 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-12-18:09:22 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-12-18:09:22 new file mode 100644 index 00000000..82ce820c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-12-18:09:22 @@ -0,0 +1 @@ +-rwx------ 1 nico users 50860 Jun 12 18:09 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-08:13:08 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-08:13:08 new file mode 100644 index 00000000..eab7486c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-08:13:08 @@ -0,0 +1 @@ +-rwx------ 1 nico users 50860 Jun 13 08:13 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-13:28:35 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-13:28:35 new file mode 100644 index 00000000..b744b7e4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-13:28:35 @@ -0,0 +1 @@ +-rwx------ 1 nico users 46764 Jun 13 13:28 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-21:23:15 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-21:23:15 new file mode 100644 index 00000000..4bcdddba --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-21:23:15 @@ -0,0 +1 @@ +-rwx------ 1 nico users 46868 Jun 13 21:23 sbin/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-21:26:52 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-21:26:52 new file mode 100644 index 00000000..b88d9416 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-21:26:52 @@ -0,0 +1,3 @@ +total 88 +-rwx------ 1 nico users 46868 Jun 13 21:26 cinit +-rwx------ 1 nico users 38568 Jun 13 21:26 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-21:57:26 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-21:57:26 new file mode 100644 index 00000000..d8953654 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-13-21:57:26 @@ -0,0 +1,3 @@ +total 92 +-rwx------ 1 nico users 46868 Jun 13 21:57 cinit +-rwx------ 1 nico users 44148 Jun 13 21:57 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-06:35:49 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-06:35:49 new file mode 100644 index 00000000..91ebffd7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-06:35:49 @@ -0,0 +1,3 @@ +total 92 +-rwx------ 1 nico users 47044 Jun 14 06:35 cinit +-rwx------ 1 nico users 44148 Jun 13 21:57 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-09:51:51 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-09:51:51 new file mode 100644 index 00000000..11a36249 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-09:51:51 @@ -0,0 +1,3 @@ +total 100 +-rwx------ 1 nico users 52236 Jun 14 09:51 cinit +-rwx------ 1 nico users 47356 Jun 14 09:51 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-09:58:58 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-09:58:58 new file mode 100644 index 00000000..a6d36a9c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-09:58:58 @@ -0,0 +1,3 @@ +total 100 +-rwx------ 1 nico users 52324 Jun 14 09:58 cinit +-rwx------ 1 nico users 47356 Jun 14 09:58 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-10:01:02 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-10:01:02 new file mode 100644 index 00000000..cd4e9dad --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-10:01:02 @@ -0,0 +1,3 @@ +total 100 +-rwx------ 1 nico users 52380 Jun 14 10:01 cinit +-rwx------ 1 nico users 47356 Jun 14 10:01 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-13:16:40 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-13:16:40 new file mode 100644 index 00000000..a4445099 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-13:16:40 @@ -0,0 +1,3 @@ +total 100 +-rwx------ 1 nico users 52692 Jun 14 13:16 cinit +-rwx------ 1 nico users 47324 Jun 14 13:16 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-13:21:47 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-13:21:47 new file mode 100644 index 00000000..80015aa5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-13:21:47 @@ -0,0 +1,3 @@ +total 104 +-rwx------ 1 nico users 54956 Jun 14 13:21 cinit +-rwx------ 1 nico users 47324 Jun 14 13:21 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-13:26:18 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-13:26:18 new file mode 100644 index 00000000..74b71d92 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-14-13:26:18 @@ -0,0 +1,3 @@ +total 104 +-rwx------ 1 nico users 54956 Jun 14 13:26 cinit +-rwx------ 1 nico users 47324 Jun 14 13:26 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-06:38:49 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-06:38:49 new file mode 100644 index 00000000..7cb89e92 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-06:38:49 @@ -0,0 +1,3 @@ +total 104 +-rwx------ 1 nico users 54956 Jun 15 06:38 cinit +-rwx------ 1 nico users 47324 Jun 15 06:38 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-06:46:05 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-06:46:05 new file mode 100644 index 00000000..e0e1051d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-06:46:05 @@ -0,0 +1,3 @@ +total 104 +-rwx------ 1 nico users 54956 Jun 15 06:46 cinit +-rwx------ 1 nico users 47324 Jun 15 06:46 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-09:17:57 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-09:17:57 new file mode 100644 index 00000000..efff0d89 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-09:17:57 @@ -0,0 +1,2 @@ +total 48 +-rwx------ 1 nico users 47324 Jun 15 08:46 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:13:26 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:13:26 new file mode 100644 index 00000000..a6d7b57a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:13:26 @@ -0,0 +1,3 @@ +total 104 +-rwx------ 1 nico users 54956 Jun 15 11:13 cinit +-rwx------ 1 nico users 48196 Jun 15 11:13 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:16:39 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:16:39 new file mode 100644 index 00000000..6e551c3f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:16:39 @@ -0,0 +1,3 @@ +total 104 +-rwx------ 1 nico users 54956 Jun 15 11:16 cinit +-rwx------ 1 nico users 48196 Jun 15 11:16 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:30:39 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:30:39 new file mode 100644 index 00000000..c6962be4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:30:39 @@ -0,0 +1,3 @@ +total 104 +-rwx------ 1 nico users 54956 Jun 15 11:30 cinit +-rwx------ 1 nico users 48180 Jun 15 11:30 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:31:16 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:31:16 new file mode 100644 index 00000000..54d722c8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-11:31:16 @@ -0,0 +1,3 @@ +total 104 +-rwx------ 1 nico users 54956 Jun 15 11:31 cinit +-rwx------ 1 nico users 48180 Jun 15 11:31 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-14:08:57 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-14:08:57 new file mode 100644 index 00000000..b4a1905c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-14:08:57 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jun 15 14:08 cinit +-rwx------ 1 nico users 50860 Jun 15 14:08 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-14:19:46 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-14:19:46 new file mode 100644 index 00000000..4b9133d4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-14:19:46 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jun 15 14:19 cinit +-rwx------ 1 nico users 50860 Jun 15 14:19 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-20:37:50 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-20:37:50 new file mode 100644 index 00000000..1196c864 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-15-20:37:50 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jun 15 20:37 cinit +-rwx------ 1 nico users 50860 Jun 15 20:37 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-16-12:18:07 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-16-12:18:07 new file mode 100644 index 00000000..43633af1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-16-12:18:07 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jun 16 12:18 cinit +-rwx------ 1 nico users 50860 Jun 16 12:18 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-16-14:18:59 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-16-14:18:59 new file mode 100644 index 00000000..82a8e92a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-16-14:18:59 @@ -0,0 +1,3 @@ +total 100 +-rwx------ 1 nico users 51800 Jun 16 14:18 cinit +-rwx------ 1 nico users 47568 Jun 16 14:18 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-16-14:19:22 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-16-14:19:22 new file mode 100644 index 00000000..14d12028 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-16-14:19:22 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47568 Jun 16 14:19 cinit +-rwx------ 1 nico users 46760 Jun 16 14:19 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-17-19:03:48 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-17-19:03:48 new file mode 100644 index 00000000..e379e004 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-17-19:03:48 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47568 Jun 17 19:03 cinit +-rwx------ 1 nico users 46760 Jun 17 19:03 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-12:16:40 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-12:16:40 new file mode 100644 index 00000000..1f0c3325 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-12:16:40 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jun 20 12:16 cinit +-rwx------ 1 nico users 50860 Jun 20 12:16 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-15:16:31 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-15:16:31 new file mode 100644 index 00000000..75dc3e7a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-15:16:31 @@ -0,0 +1,3 @@ +total 136 +-rwx------ 1 nico users 68355 Jun 20 15:16 cinit +-rwx------ 1 nico users 66247 Jun 20 15:16 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-16:29:28 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-16:29:28 new file mode 100644 index 00000000..1294bde5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-16:29:28 @@ -0,0 +1,3 @@ +total 136 +-rwx------ 1 nico users 68355 Jun 20 16:29 cinit +-rwx------ 1 nico users 66247 Jun 20 15:16 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-16:29:50 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-16:29:50 new file mode 100644 index 00000000..69fe7490 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-20-16:29:50 @@ -0,0 +1,3 @@ +total 136 +-rwx------ 1 nico users 68355 Jun 20 16:29 cinit +-rwx------ 1 nico users 66247 Jun 20 16:29 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-21-11:53:35 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-21-11:53:35 new file mode 100644 index 00000000..4a1e7b6d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-21-11:53:35 @@ -0,0 +1,3 @@ +total 192 +-rwx------ 1 nico users 102039 Jun 21 11:53 cinit +-rwx------ 1 nico users 87871 Jun 21 11:53 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-07:33:11 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-07:33:11 new file mode 100644 index 00000000..e6c8ff14 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-07:33:11 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47544 Jun 22 07:33 cinit +-rwx------ 1 nico users 46760 Jun 22 07:33 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-07:57:13 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-07:57:13 new file mode 100644 index 00000000..17161d13 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-07:57:13 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47536 Jun 22 07:57 cinit +-rwx------ 1 nico users 46760 Jun 22 07:57 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-08:08:40 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-08:08:40 new file mode 100644 index 00000000..770083f3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-08:08:40 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47424 Jun 22 08:08 cinit +-rwx------ 1 nico users 46760 Jun 22 08:08 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-08:30:42 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-08:30:42 new file mode 100644 index 00000000..aa95fb3c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-08:30:42 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47360 Jun 22 08:30 cinit +-rwx------ 1 nico users 46760 Jun 22 08:30 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-09:19:42 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-09:19:42 new file mode 100644 index 00000000..70c261bb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-09:19:42 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jun 22 09:19 cinit +-rwx------ 1 nico users 50860 Jun 22 09:19 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-10:35:02 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-10:35:02 new file mode 100644 index 00000000..41fcadb2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-10:35:02 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47584 Jun 22 10:35 cinit +-rwx------ 1 nico users 46760 Jun 22 10:35 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-10:43:24 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-10:43:24 new file mode 100644 index 00000000..b8bc4076 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-10:43:24 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jun 22 10:43 cinit +-rwx------ 1 nico users 50860 Jun 22 10:43 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-12:42:57 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-12:42:57 new file mode 100644 index 00000000..c8119859 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-12:42:57 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47568 Jun 22 12:42 cinit +-rwx------ 1 nico users 46760 Jun 22 12:42 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-13:52:41 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-13:52:41 new file mode 100644 index 00000000..793b92fa --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-13:52:41 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47624 Jun 22 13:52 cinit +-rwx------ 1 nico users 46760 Jun 22 13:52 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-13:59:40 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-13:59:40 new file mode 100644 index 00000000..d114c557 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-13:59:40 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47624 Jun 22 13:59 cinit +-rwx------ 1 nico users 46760 Jun 22 13:59 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-14:19:41 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-14:19:41 new file mode 100644 index 00000000..8d56882f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-14:19:41 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47640 Jun 22 14:19 cinit +-rwx------ 1 nico users 46760 Jun 22 14:19 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-14:37:18 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-14:37:18 new file mode 100644 index 00000000..b7c3e4c2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-22-14:37:18 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47648 Jun 22 14:37 cinit +-rwx------ 1 nico users 46760 Jun 22 14:37 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-23-06:22:23 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-23-06:22:23 new file mode 100644 index 00000000..9e38a5e0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-23-06:22:23 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47648 Jun 23 06:22 cinit +-rwx------ 1 nico users 46760 Jun 23 06:22 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-24-17:53:55 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-24-17:53:55 new file mode 100644 index 00000000..3b750eaf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-24-17:53:55 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47720 Jun 24 17:53 cinit +-rwx------ 1 nico users 46760 Jun 24 17:53 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-24-17:55:29 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-24-17:55:29 new file mode 100644 index 00000000..c30dcaf6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-24-17:55:29 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47720 Jun 24 17:55 cinit +-rwx------ 1 nico users 46760 Jun 24 17:55 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-25-11:56:07 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-25-11:56:07 new file mode 100644 index 00000000..0f917aee --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-25-11:56:07 @@ -0,0 +1,3 @@ +total 96 +-rwx------ 1 nico users 47712 Jun 25 11:56 cinit +-rwx------ 1 nico users 46760 Jun 25 11:56 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-26-13:19:49 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-26-13:19:49 new file mode 100644 index 00000000..a4de830b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-06-26-13:19:49 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jun 26 13:19 cinit +-rwx------ 1 nico users 50860 Jun 26 13:19 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:07:13 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:07:13 new file mode 100644 index 00000000..e2c59ddf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:07:13 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jul 6 08:07 cinit +-rwx------ 1 nico users 50860 Jul 6 08:07 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:11:07 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:11:07 new file mode 100644 index 00000000..7e4c645b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:11:07 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jul 6 08:11 cinit +-rwx------ 1 nico users 50860 Jul 6 08:11 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:12:20 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:12:20 new file mode 100644 index 00000000..e562350c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:12:20 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jul 6 08:12 cinit +-rwx------ 1 nico users 50860 Jul 6 08:12 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:13:39 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:13:39 new file mode 100644 index 00000000..32fd8268 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:13:39 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jul 6 08:13 cinit +-rwx------ 1 nico users 50860 Jul 6 08:13 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:14:19 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:14:19 new file mode 100644 index 00000000..f68919a5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:14:19 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jul 6 08:14 cinit +-rwx------ 1 nico users 50860 Jul 6 08:14 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:14:59 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:14:59 new file mode 100644 index 00000000..f68919a5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:14:59 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jul 6 08:14 cinit +-rwx------ 1 nico users 50860 Jul 6 08:14 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:15:56 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:15:56 new file mode 100644 index 00000000..cf26e6f7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-08:15:56 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jul 6 08:15 cinit +-rwx------ 1 nico users 50860 Jul 6 08:15 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:08:05 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:08:05 new file mode 100644 index 00000000..d5f0f2c4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:08:05 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jul 6 10:08 cinit +-rwx------ 1 nico users 50860 Jul 6 10:08 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:12:22 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:12:22 new file mode 100644 index 00000000..d5f0f2c4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:12:22 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jul 6 10:08 cinit +-rwx------ 1 nico users 50860 Jul 6 10:08 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:12:31 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:12:31 new file mode 100644 index 00000000..6bd138ad --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:12:31 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jul 6 10:12 cinit +-rwx------ 1 nico users 50860 Jul 6 10:12 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:12:49 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:12:49 new file mode 100644 index 00000000..6bd138ad --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:12:49 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jul 6 10:12 cinit +-rwx------ 1 nico users 50860 Jul 6 10:12 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:13:08 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:13:08 new file mode 100644 index 00000000..2b09e08b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-07-06-10:13:08 @@ -0,0 +1,3 @@ +total 108 +-rwx------ 1 nico users 54956 Jul 6 10:13 cinit +-rwx------ 1 nico users 50860 Jul 6 10:13 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-08-08-01:00:08 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-08-08-01:00:08 new file mode 100644 index 00000000..9c0c4908 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-08-08-01:00:08 @@ -0,0 +1,3 @@ +total 840 +-rwx------ 1 root root 429764 Aug 8 01:00 cinit +-rwx------ 1 root root 426052 Aug 8 01:00 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-08-29-21:21:34 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-08-29-21:21:34 new file mode 100644 index 00000000..e651a8ed --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-08-29-21:21:34 @@ -0,0 +1,3 @@ +insgesamt 868 +-rwx------ 1 root root 444508 2005-08-29 21:21 cinit +-rwx------ 1 root root 440412 2005-08-29 21:21 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-08-29-21:48:00 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-08-29-21:48:00 new file mode 100644 index 00000000..caa24bde --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-08-29-21:48:00 @@ -0,0 +1,3 @@ +insgesamt 856 +-rwx------ 1 root root 437404 2005-08-29 21:47 cinit +-rwx------ 1 root root 436316 2005-08-29 21:48 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-08-29-23:50:55 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-08-29-23:50:55 new file mode 100644 index 00000000..a279aee3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-08-29-23:50:55 @@ -0,0 +1,3 @@ +insgesamt 856 +-rwx------ 1 nico nico 437564 2005-08-29 23:50 cinit +-rwx------ 1 nico nico 436316 2005-08-29 23:50 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-03:36:59 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-03:36:59 new file mode 100644 index 00000000..01e555f6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-03:36:59 @@ -0,0 +1,3 @@ +insgesamt 868 +-rwx------ 1 nico nico 444508 2005-09-03 03:36 cinit +-rwx------ 1 nico nico 440412 2005-09-03 03:36 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-04:34:35 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-04:34:35 new file mode 100644 index 00000000..1832930a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-04:34:35 @@ -0,0 +1,3 @@ +total 868 +-rwx------ 1 nico nico 444508 Sep 3 04:34 cinit +-rwx------ 1 nico nico 440412 Sep 3 04:34 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:51:17 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:51:17 new file mode 100644 index 00000000..4e465d06 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:51:17 @@ -0,0 +1,3 @@ +total 868 +-rwx------ 1 nico nico 444508 Sep 3 05:51 cinit +-rwx------ 1 nico nico 440412 Sep 3 05:51 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:54:20 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:54:20 new file mode 100644 index 00000000..9c040d29 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:54:20 @@ -0,0 +1,4 @@ +total 1300 +-rwx------ 1 nico nico 440412 Sep 3 05:54 ccontrol +-rwx------ 1 nico nico 444508 Sep 3 05:54 cinit +-rwx------ 1 nico nico 440412 Sep 3 05:54 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:57:00 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:57:00 new file mode 100644 index 00000000..ba396d14 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:57:00 @@ -0,0 +1,4 @@ +total 1300 +-rwx------ 1 nico nico 440412 Sep 3 05:57 ccontrol +-rwx------ 1 nico nico 444508 Sep 3 05:56 cinit +-rwx------ 1 nico nico 440412 Sep 3 05:56 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:58:07 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:58:07 new file mode 100644 index 00000000..65f0cc50 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-05:58:07 @@ -0,0 +1,4 @@ +insgesamt 1300 +-rwx------ 1 root root 440412 2005-09-03 05:58 ccontrol +-rwx------ 1 root root 444508 2005-09-03 05:58 cinit +-rwx------ 1 root root 440412 2005-09-03 05:58 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-09:01:59 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-09:01:59 new file mode 100644 index 00000000..880422a4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-03-09:01:59 @@ -0,0 +1,4 @@ +total 1300 +-rwxr-xr-x 1 root root 440412 Sep 3 09:01 ccontrol +-rwxr-xr-x 1 root root 444508 Sep 3 09:01 cinit +-rwxr-xr-x 1 root root 440412 Sep 3 09:01 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-05-19:41:12 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-05-19:41:12 new file mode 100644 index 00000000..0f07d86e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-05-19:41:12 @@ -0,0 +1,4 @@ +insgesamt 1300 +-rwx------ 1 root root 440412 2005-09-05 19:41 ccontrol +-rwx------ 1 root root 444508 2005-09-05 19:41 cinit +-rwx------ 1 root root 440412 2005-09-05 19:41 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-05-19:50:35 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-05-19:50:35 new file mode 100644 index 00000000..32ff19fb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-05-19:50:35 @@ -0,0 +1,4 @@ +total 1300 +-rwxr-xr-x 1 root root 440412 Sep 5 19:50 ccontrol +-rwxr-xr-x 1 root root 444508 Sep 5 19:50 cinit +-rwxr-xr-x 1 root root 440412 Sep 5 19:50 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-24-01:42:38 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-24-01:42:38 new file mode 100644 index 00000000..0da6126e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-24-01:42:38 @@ -0,0 +1,4 @@ +insgesamt 1288 +-rwx------ 1 nico nico 436316 2005-09-24 01:42 ccontrol +-rwx------ 1 nico nico 437628 2005-09-24 01:42 cinit +-rwx------ 1 nico nico 436316 2005-09-24 01:42 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-30-22:50:50 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-30-22:50:50 new file mode 100644 index 00000000..0d510174 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-30-22:50:50 @@ -0,0 +1,4 @@ +insgesamt 1284 +-rwx------ 1 nico nico 436316 2005-09-30 22:50 ccontrol +-rwx------ 1 nico nico 437340 2005-09-30 22:50 cinit +-rwx------ 1 nico nico 436316 2005-09-30 22:50 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-30-23:06:39 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-30-23:06:39 new file mode 100644 index 00000000..23450914 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-09-30-23:06:39 @@ -0,0 +1,4 @@ +insgesamt 1284 +-rwx------ 1 nico nico 436316 2005-09-30 23:06 ccontrol +-rwx------ 1 nico nico 437340 2005-09-30 23:06 cinit +-rwx------ 1 nico nico 436316 2005-09-30 23:06 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-01-22:09:13 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-01-22:09:13 new file mode 100644 index 00000000..a62b9eb2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-01-22:09:13 @@ -0,0 +1,4 @@ +insgesamt 1288 +-rwx------ 1 nico nico 436316 2005-10-01 22:09 ccontrol +-rwx------ 1 nico nico 437308 2005-10-01 22:09 cinit +-rwx------ 1 nico nico 436316 2005-10-01 22:09 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-01-22:17:39 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-01-22:17:39 new file mode 100644 index 00000000..b1d8b11b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-01-22:17:39 @@ -0,0 +1,4 @@ +insgesamt 1284 +-rwx------ 1 nico nico 436316 2005-10-01 22:17 ccontrol +-rwx------ 1 nico nico 437532 2005-10-01 22:17 cinit +-rwx------ 1 nico nico 436316 2005-10-01 22:17 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-11:12:29 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-11:12:29 new file mode 100644 index 00000000..e5f7b13d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-11:12:29 @@ -0,0 +1,4 @@ +insgesamt 1300 +-rwx------ 1 nico nico 440412 2005-10-02 11:12 ccontrol +-rwx------ 1 nico nico 444508 2005-10-02 11:12 cinit +-rwx------ 1 nico nico 440412 2005-10-02 11:12 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-11:13:35 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-11:13:35 new file mode 100644 index 00000000..d7c14471 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-11:13:35 @@ -0,0 +1,4 @@ +insgesamt 1300 +-rwx------ 1 nico nico 440412 2005-10-02 11:12 ccontrol +-rwx------ 1 nico nico 444508 2005-10-02 11:13 cinit +-rwx------ 1 nico nico 440412 2005-10-02 11:13 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-11:13:43 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-11:13:43 new file mode 100644 index 00000000..1711d01a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-11:13:43 @@ -0,0 +1,4 @@ +insgesamt 1284 +-rwx------ 1 nico nico 436316 2005-10-02 11:13 ccontrol +-rwx------ 1 nico nico 437884 2005-10-02 11:13 cinit +-rwx------ 1 nico nico 436316 2005-10-02 11:13 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-16:00:24 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-16:00:24 new file mode 100644 index 00000000..ab23228c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-16:00:24 @@ -0,0 +1,4 @@ +total 1284 +-rwx------ 1 nico nico 436316 Oct 2 16:00 ccontrol +-rwx------ 1 nico nico 437884 Oct 2 16:00 cinit +-rwx------ 1 nico nico 436316 Oct 2 16:00 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-23:17:11 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-23:17:11 new file mode 100644 index 00000000..92041cd9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-02-23:17:11 @@ -0,0 +1,4 @@ +insgesamt 1284 +-rwx------ 1 nico nico 436316 2005-10-02 23:17 ccontrol +-rwx------ 1 nico nico 437884 2005-10-02 23:17 cinit +-rwx------ 1 nico nico 436316 2005-10-02 23:17 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-03-00:54:39 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-03-00:54:39 new file mode 100644 index 00000000..df47a057 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-03-00:54:39 @@ -0,0 +1,4 @@ +insgesamt 1284 +-rwx------ 1 nico nico 436316 2005-10-03 00:54 ccontrol +-rwx------ 1 nico nico 437884 2005-10-03 00:54 cinit +-rwx------ 1 nico nico 436316 2005-10-03 00:54 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-03-00:56:29 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-03-00:56:29 new file mode 100644 index 00000000..08db7fec --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-03-00:56:29 @@ -0,0 +1,4 @@ +insgesamt 1284 +-rwx------ 1 nico nico 436316 2005-10-03 00:56 ccontrol +-rwx------ 1 nico nico 437884 2005-10-03 00:56 cinit +-rwx------ 1 nico nico 436316 2005-10-03 00:56 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:43:02 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:43:02 new file mode 100644 index 00000000..027a5b67 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:43:02 @@ -0,0 +1,4 @@ +insgesamt 1292 +-rwxr-xr-x 1 pp pp 433912 Okt 13 09:43 ccontrol +-rwxr-xr-x 1 pp pp 436664 Okt 13 09:43 cinit +-rwxr-xr-x 1 pp pp 434360 Okt 13 09:43 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:51:08 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:51:08 new file mode 100644 index 00000000..a0fdf121 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:51:08 @@ -0,0 +1,4 @@ +insgesamt 1292 +-rwxr-xr-x 1 pp pp 433912 Okt 13 09:43 ccontrol +-rwxr-xr-x 1 pp pp 436664 Okt 13 09:51 cinit +-rwxr-xr-x 1 pp pp 434360 Okt 13 09:43 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:55:52 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:55:52 new file mode 100644 index 00000000..d54a7ff4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:55:52 @@ -0,0 +1,4 @@ +insgesamt 1292 +-rwxr-xr-x 1 pp pp 433912 Okt 13 09:55 ccontrol +-rwxr-xr-x 1 pp pp 436664 Okt 13 09:55 cinit +-rwxr-xr-x 1 pp pp 434360 Okt 13 09:55 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:57:11 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:57:11 new file mode 100644 index 00000000..3b1af9ec --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:57:11 @@ -0,0 +1,4 @@ +insgesamt 1292 +-rwxr-xr-x 1 pp pp 433912 Okt 13 09:57 ccontrol +-rwxr-xr-x 1 pp pp 436664 Okt 13 09:57 cinit +-rwxr-xr-x 1 pp pp 434360 Okt 13 09:57 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:58:04 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:58:04 new file mode 100644 index 00000000..5c6da786 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-09:58:04 @@ -0,0 +1,4 @@ +insgesamt 1292 +-rwxr-xr-x 1 pp pp 433912 Okt 13 09:58 ccontrol +-rwxr-xr-x 1 pp pp 436664 Okt 13 09:58 cinit +-rwxr-xr-x 1 pp pp 434360 Okt 13 09:58 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-10:07:28 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-10:07:28 new file mode 100644 index 00000000..58d25315 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-13-10:07:28 @@ -0,0 +1,4 @@ +insgesamt 1292 +-rwxr-xr-x 1 pp pp 433912 Okt 13 10:07 ccontrol +-rwxr-xr-x 1 pp pp 436664 Okt 13 10:07 cinit +-rwxr-xr-x 1 pp pp 434360 Okt 13 10:07 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-15-15:26:52 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-15-15:26:52 new file mode 100644 index 00000000..a88291e2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-15-15:26:52 @@ -0,0 +1,4 @@ +insgesamt 1284 +-rwx------ 1 root root 436316 2005-10-15 15:26 ccontrol +-rwx------ 1 root root 437916 2005-10-15 15:26 cinit +-rwx------ 1 root root 436316 2005-10-15 15:26 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-15-21:23:56 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-15-21:23:56 new file mode 100644 index 00000000..43a4504d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-10-15-21:23:56 @@ -0,0 +1,4 @@ +total 36 +-rwx------ 1 nico nico 9148 Oct 15 21:23 ccontrol +-rwx------ 1 nico nico 11872 Oct 15 21:23 cinit +-rwx------ 1 nico nico 9768 Oct 15 21:23 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2005-11-17-17:03:53 b/software/cinit/browse_source/cinit-0.3pre18/size/2005-11-17-17:03:53 new file mode 100644 index 00000000..78543f15 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2005-11-17-17:03:53 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2005-11-17 17:03 ccontrol +-rwx------ 1 nico nico 11872 2005-11-17 17:03 cinit +-rwx------ 1 nico nico 9768 2005-11-17 17:03 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-11-23:45:54 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-11-23:45:54 new file mode 100644 index 00000000..f4852c81 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-11-23:45:54 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9132 2006-02-11 23:45 ccontrol +-rwx------ 1 nico nico 11476 2006-02-11 23:45 cinit +-rwx------ 1 nico nico 9768 2006-02-11 23:45 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:06:11 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:06:11 new file mode 100644 index 00000000..2fe41351 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:06:11 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9132 2006-02-11 23:45 ccontrol +-rwx------ 1 nico nico 11476 2006-02-12 00:06 cinit +-rwx------ 1 nico nico 9768 2006-02-12 00:06 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:06:42 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:06:42 new file mode 100644 index 00000000..bf2ddc36 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:06:42 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-12 00:06 ccontrol +-rwx------ 1 nico nico 11560 2006-02-12 00:06 cinit +-rwx------ 1 nico nico 9768 2006-02-12 00:06 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:08:24 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:08:24 new file mode 100644 index 00000000..e25a49ac --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:08:24 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-12 00:08 ccontrol +-rwx------ 1 nico nico 11556 2006-02-12 00:08 cinit +-rwx------ 1 nico nico 9768 2006-02-12 00:08 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:09:33 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:09:33 new file mode 100644 index 00000000..0b64fa00 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:09:33 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-12 00:09 ccontrol +-rwx------ 1 nico nico 11556 2006-02-12 00:09 cinit +-rwx------ 1 nico nico 9768 2006-02-12 00:09 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:13:32 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:13:32 new file mode 100644 index 00000000..b6c5c38e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-12-00:13:32 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-12 00:13 ccontrol +-rwx------ 1 nico nico 11500 2006-02-12 00:13 cinit +-rwx------ 1 nico nico 9768 2006-02-12 00:13 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-16-23:57:29 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-16-23:57:29 new file mode 100644 index 00000000..86b9fda9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-16-23:57:29 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-16 23:57 ccontrol +-rwx------ 1 nico nico 11620 2006-02-16 23:57 cinit +-rwx------ 1 nico nico 9768 2006-02-16 23:57 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-17-00:16:18 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-17-00:16:18 new file mode 100644 index 00000000..28c853a5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-17-00:16:18 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-16 23:57 ccontrol +-rwx------ 1 nico nico 11636 2006-02-17 00:16 cinit +-rwx------ 1 nico nico 9768 2006-02-17 00:16 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-17-00:31:08 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-17-00:31:08 new file mode 100644 index 00000000..b95123d3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-17-00:31:08 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-17 00:31 ccontrol +-rwx------ 1 nico nico 11636 2006-02-17 00:31 cinit +-rwx------ 1 nico nico 9768 2006-02-17 00:31 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-17-22:48:35 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-17-22:48:35 new file mode 100644 index 00000000..5935acfe --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-17-22:48:35 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-17 22:48 ccontrol +-rwx------ 1 nico nico 11636 2006-02-17 22:48 cinit +-rwx------ 1 nico nico 9768 2006-02-17 22:48 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:03:54 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:03:54 new file mode 100644 index 00000000..9222f0b1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:03:54 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-20 20:03 ccontrol +-rwx------ 1 nico nico 11680 2006-02-20 20:03 cinit +-rwx------ 1 nico nico 9768 2006-02-20 19:43 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:04:33 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:04:33 new file mode 100644 index 00000000..c5797edc --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:04:33 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-20 20:03 ccontrol +-rwx------ 1 nico nico 11680 2006-02-20 20:04 cinit +-rwx------ 1 nico nico 9768 2006-02-20 20:04 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:04:36 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:04:36 new file mode 100644 index 00000000..fbcf9fa5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:04:36 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-20 20:04 ccontrol +-rwx------ 1 nico nico 11680 2006-02-20 20:04 cinit +-rwx------ 1 nico nico 9768 2006-02-20 20:04 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:07:47 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:07:47 new file mode 100644 index 00000000..7e1fe18f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:07:47 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-20 20:04 ccontrol +-rwx------ 1 nico nico 11680 2006-02-20 20:07 cinit +-rwx------ 1 nico nico 9768 2006-02-20 20:07 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:08:04 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:08:04 new file mode 100644 index 00000000..df9d08a8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:08:04 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-20 20:08 ccontrol +-rwx------ 1 nico nico 11680 2006-02-20 20:08 cinit +-rwx------ 1 nico nico 9768 2006-02-20 20:08 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:12:33 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:12:33 new file mode 100644 index 00000000..2b4fda40 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:12:33 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-20 20:12 ccontrol +-rwx------ 1 nico nico 11676 2006-02-20 20:12 cinit +-rwx------ 1 nico nico 9768 2006-02-20 20:12 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:14:56 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:14:56 new file mode 100644 index 00000000..bccb5d65 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-02-20-20:14:56 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9148 2006-02-20 20:14 ccontrol +-rwx------ 1 nico nico 11676 2006-02-20 20:14 cinit +-rwx------ 1 nico nico 9768 2006-02-20 20:14 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-01-23:32:43 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-01-23:32:43 new file mode 100644 index 00000000..fcbaf372 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-01-23:32:43 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9164 2006-06-01 23:32 ccontrol +-rwx------ 1 nico nico 11640 2006-06-01 23:32 cinit +-rwx------ 1 nico nico 9768 2006-06-01 23:32 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-01:08:28 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-01:08:28 new file mode 100644 index 00000000..7683546c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-01:08:28 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9164 2006-06-02 01:08 ccontrol +-rwx------ 1 nico nico 11688 2006-06-02 01:08 cinit +-rwx------ 1 nico nico 9768 2006-06-02 01:08 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-01:29:13 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-01:29:13 new file mode 100644 index 00000000..adbc6846 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-01:29:13 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9164 2006-06-02 01:29 ccontrol +-rwx------ 1 nico nico 11604 2006-06-02 01:29 cinit +-rwx------ 1 nico nico 9768 2006-06-02 01:29 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-11:13:39 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-11:13:39 new file mode 100644 index 00000000..46eaef4f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-11:13:39 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9164 2006-06-02 11:13 ccontrol +-rwx------ 1 nico nico 11604 2006-06-02 11:13 cinit +-rwx------ 1 nico nico 9768 2006-06-02 11:13 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-11:36:37 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-11:36:37 new file mode 100644 index 00000000..306402f6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-11:36:37 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9164 2006-06-02 11:36 ccontrol +-rwx------ 1 nico nico 11604 2006-06-02 11:36 cinit +-rwx------ 1 nico nico 9768 2006-06-02 11:36 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-11:46:07 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-11:46:07 new file mode 100644 index 00000000..7b96d3d4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-11:46:07 @@ -0,0 +1,4 @@ +insgesamt 36 +-rwx------ 1 nico nico 9164 2006-06-02 11:46 ccontrol +-rwx------ 1 nico nico 11604 2006-06-02 11:46 cinit +-rwx------ 1 nico nico 9768 2006-06-02 11:46 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-15:17:17 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-15:17:17 new file mode 100644 index 00000000..7bb59095 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-15:17:17 @@ -0,0 +1,4 @@ +insgesamt 48 +-rwx------ 1 nico nico 12316 2006-06-02 15:17 ccontrol +-rwx------ 1 nico nico 16268 2006-06-02 15:17 cinit +-rwx------ 1 nico nico 13432 2006-06-02 15:17 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-15:19:05 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-15:19:05 new file mode 100644 index 00000000..ce65256f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-15:19:05 @@ -0,0 +1,4 @@ +insgesamt 48 +-rwx------ 1 nico nico 12316 2006-06-02 15:19 ccontrol +-rwx------ 1 nico nico 16268 2006-06-02 15:19 cinit +-rwx------ 1 nico nico 13432 2006-06-02 15:19 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-15:19:52 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-15:19:52 new file mode 100644 index 00000000..ce65256f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-06-02-15:19:52 @@ -0,0 +1,4 @@ +insgesamt 48 +-rwx------ 1 nico nico 12316 2006-06-02 15:19 ccontrol +-rwx------ 1 nico nico 16268 2006-06-02 15:19 cinit +-rwx------ 1 nico nico 13432 2006-06-02 15:19 cservice diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-11-29-235707 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-11-29-235707 new file mode 100644 index 00000000..c2c83117 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-11-29-235707 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 73645 2006-11-29 23:57 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-11-29-235834 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-11-29-235834 new file mode 100644 index 00000000..c2c83117 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-11-29-235834 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 73645 2006-11-29 23:57 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-02-172536 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-02-172536 new file mode 100644 index 00000000..4079d5db --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-02-172536 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 73617 2006-12-02 17:25 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-02-174429 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-02-174429 new file mode 100644 index 00000000..5506928d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-02-174429 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 73497 2006-12-02 17:44 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-02-182536 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-02-182536 new file mode 100644 index 00000000..14526d13 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-02-182536 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 72092 2006-12-02 18:25 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-173231 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-173231 new file mode 100644 index 00000000..aca9d380 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-173231 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 71944 2006-12-03 17:32 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-174544 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-174544 new file mode 100644 index 00000000..3c1cfea2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-174544 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 71952 2006-12-03 17:45 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-185602 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-185602 new file mode 100644 index 00000000..d90770a2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-185602 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 71836 2006-12-03 18:56 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-185901 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-185901 new file mode 100644 index 00000000..61cc9bf8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-185901 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 71768 2006-12-03 18:59 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-191215 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-191215 new file mode 100644 index 00000000..4f2a2fa1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-03-191215 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 71736 2006-12-03 19:12 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-06-084947 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-06-084947 new file mode 100644 index 00000000..487af844 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-06-084947 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 71736 2006-12-06 08:49 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-06-180205 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-06-180205 new file mode 100644 index 00000000..a1665a41 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-06-180205 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 73466 2006-12-06 18:02 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213559 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213559 new file mode 100644 index 00000000..a1665a41 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213559 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 73466 2006-12-06 18:02 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213702 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213702 new file mode 100644 index 00000000..a1665a41 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213702 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 73466 2006-12-06 18:02 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213717 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213717 new file mode 100644 index 00000000..a1665a41 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213717 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 73466 2006-12-06 18:02 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213739 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213739 new file mode 100644 index 00000000..a1665a41 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-213739 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 73466 2006-12-06 18:02 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-215315 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-215315 new file mode 100644 index 00000000..3e144e5d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-215315 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 73466 2006-12-14 21:53 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-215334 b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-215334 new file mode 100644 index 00000000..3e144e5d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2006-12-14-215334 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 73466 2006-12-14 21:53 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2007-02-17-210059 b/software/cinit/browse_source/cinit-0.3pre18/size/2007-02-17-210059 new file mode 100644 index 00000000..69179604 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2007-02-17-210059 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 75783 2007-02-17 20:59 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2007-02-23-202443 b/software/cinit/browse_source/cinit-0.3pre18/size/2007-02-23-202443 new file mode 100644 index 00000000..19cb71b8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2007-02-23-202443 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 69439 2007-02-23 20:15 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2007-02-23-202720 b/software/cinit/browse_source/cinit-0.3pre18/size/2007-02-23-202720 new file mode 100644 index 00000000..19cb71b8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2007-02-23-202720 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 69439 2007-02-23 20:15 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2007-03-07-231936 b/software/cinit/browse_source/cinit-0.3pre18/size/2007-03-07-231936 new file mode 100644 index 00000000..c2ef3d0b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2007-03-07-231936 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 71213 2007-03-07 23:18 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2007-04-06-011811 b/software/cinit/browse_source/cinit-0.3pre18/size/2007-04-06-011811 new file mode 100644 index 00000000..73de8724 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2007-04-06-011811 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 71281 2007-04-06 01:17 src/cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/size/2009-09-29-075620 b/software/cinit/browse_source/cinit-0.3pre18/size/2009-09-29-075620 new file mode 100644 index 00000000..7719cb7d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/size/2009-09-29-075620 @@ -0,0 +1 @@ +-rwx------ 1 nico nico 101258 2009-09-29 07:39 cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/Makefile b/software/cinit/browse_source/cinit-0.3pre18/src/Makefile new file mode 100644 index 00000000..a3a5a4eb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/Makefile @@ -0,0 +1,185 @@ +# +# 2008 Nico Schottelius (nico-cinit at schottelius.org) +# +# This file is part of cinit. + +# cinit is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# cinit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with cinit. If not, see . + +# +# Don't edit Makefiles, use conf/* for configuration. +# + +################################################################################ +# +# Build tools / locations +# + +CC=../tmpbin/cc +CFLAGS= +LD=../tmpbin/ld +LDFLAGS= +STRIP=../tmpbin/strip +SBIN=../sbin +DESTDIR= +#DESTDIR=/home/user/nico/emu/dst + +################################################################################ +# +# All objects / binaries +# depend on headers. More or less. FIXME: use gcc -M +# +BIN=cinit.halt cinit.poweroff cinit.reboot cmd +CINIT=cinit +ALLBIN=${BIN} ${CINIT} + +# headers +CONFIG_H=include/config.h +CINIT_HEADERS=${shell cat include/listing} + +# objects +CINIT_OBJ=${shell cat object_lists/cinit} +HALTKILL_OBJ=${shell cat object_lists/halt.kill} +POWEROFFKILL_OBJ=${shell cat object_lists/poweroff.kill} +REBOOTKILL_OBJ=${shell cat object_lists/reboot.kill} +CMD_OBJ=${shell cat object_lists/cmd} + +# +# All objects +# +OBJ=${CINIT_OBJ} ${HALTKILL_OBJ} ${POWEROFFKILL_OBJ} ${REBOOTKILL_OBJ} + +################################################################################ +# +# End user target +# +#all: cinit cservice ccontrol sizecheck docs +all: ${ALLBIN} + + +################################################################################ +# +# Generic +# +${OBJ}: ${CINIT_HEADERS} + +%.o: %.c + ${CC} -c -o $@ $< + +################################################################################ +# +# First do configuration, so we include the right variables +# +Makefile: .configured + +.configured: ../conf/* + @../scripts/build/cinit.configure.os + @../scripts/build/cinit.configure.tools + @../scripts/build/cinit.configure.ipc + @../scripts/build/cinit.configure.mark + +${CINIT_OBJ}: ${CONFIG_H} + +${CONFIG_H}: ../conf/* + ../scripts/cinit.mkheader > ${CONFIG_H} + +################################################################################ +# +# Install targets +# + +#install: install-dir cinit cservice ccontrol +install: install-cinit install-utilities + +install-sbin: + install -d ${DESTDIR}/sbin + +install-utilities: install-sbin ${BIN} + @echo '*** Installing utilities ***' + install ${BIN} ${DESTDIR}/sbin + +install-cinit: install-sbin cinit + @echo '*** Installing cinit ***' + @echo "Need to delete cinit before reinstalling it {text file busy problem}" + rm -f ${DESTDIR}/sbin/cinit + install cinit ${DESTDIR}/sbin + +# FIXME: target broken +install-miniconf: + ./bin/cinit.install.miniconf + +# FIXME: target broken +install-dir: + ./bin/cinit.install.dir + + +################################################################################ +# +# Build targets +# + +cinit: ${CINIT_OBJ} + ${LD} $^ -o $@ + +cinit.halt: ${HALTKILL_OBJ} + ${LD} $^ -o $@ + +cinit.poweroff: ${POWEROFFKILL_OBJ} + ${LD} $^ -o $@ + +cinit.reboot: ${REBOOTKILL_OBJ} + ${LD} $^ -o $@ + +cmd: ${CMD_OBJ} + ${LD} $^ -o $@ + +################################################################################ +# +# Internal test targets +# + +uml: cinit cmd + ../../vm/uml/uml-mount.sh + cp cinit cmd ../../vm/uml/root/sbin/ + ../../vm/uml/uml-umount.sh + +umlstart: uml + ../../vm/uml/uml-start.sh + +SDIR=../size +SNOW=$(shell date +%Y-%m-%d-%H%M%S) +sizecheck: cinit + ls -l cinit > $(SDIR)/$(SNOW) + cat $(SDIR)/$(SNOW) + git add $(SDIR)/$(SNOW) + git commit -m "Size: $$(awk '{ print $$5 }' $(SDIR)/$(SNOW))" + + +################################################################################ +# +# Clenaup targets +# + +.PHONY: clean +.PHONY: dist +.PHONY: distclean + +dist: distclean + +distclean: clean + rm -f os/current ipc/current .configured + +clean: + rm -f ../tmpbin/*.configured + rm -f ${BIN} ${CINIT_OBJ} ${CINIT} + find . -name \*.o -exec rm {} \; diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/Makefile.tests b/software/cinit/browse_source/cinit-0.3pre18/src/Makefile.tests new file mode 100644 index 00000000..0f4b4626 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/Makefile.tests @@ -0,0 +1,27 @@ +# +# Makefile for cinit tests +# +# Nico Schottelius +# +# Don't edit Makefiles, use conf/* for configuration. +# + +TEST_BUILD_ARGV=test/test_build_argv.o core/build_argv.o + +PROGS=test_build_argv test_build_argv_link + +tests: $(PROGS) + +test_build_argv: test/test_build_argv.o core/build_argv.o +test_build_argv_link: test/test_build_argv+link.o core/build_argv.o + +test_gen_svc_tree: test/test_gen_svc_tree.o svc/list_display_all.o \ + svc/list_display_all.o \ + svc/list_display_all.o \ + svc/list_display_all.o \ + svc/list_display_all.o \ + svc/gen_svc_tree.o \ + generic/mini_printf.o \ + svc/list_display_all.o + +test_openreadclose: test/test_openreadclose.o generic/openreadclose.o diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/README b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/README new file mode 100644 index 00000000..f66e0ddb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/README @@ -0,0 +1,4 @@ +-- OBSOLETED -- + -> This code is not in use in cinit-0.3 anymore! +util/ + External programs, which work with cinit diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/STOPPED b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/STOPPED new file mode 100644 index 00000000..a0013ca6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/STOPPED @@ -0,0 +1,12 @@ +0. Definition Nachrichten +0.1 Definition returncodes und co... + + +1. execute_sth: finish, so we can use it for panic + +2. MSGQ: + beidseitig implemenntieren + ipc header integrieren + Dokumentieren + + conf/* von msgq saeubern diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/ccontrol.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/ccontrol.c new file mode 100644 index 00000000..95bc5212 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/ccontrol.c @@ -0,0 +1,94 @@ +/* + * (c) 2005 Nico Schottelius (nico-linux at schottelius.org) + * ccontrol: control cinit + * part of cLinux/cinit + */ + +/* *stat() */ +#include +#include + +/* open */ +#include + +/* signal */ +#include + +/* PATH_MAX */ +#include + +/* str* */ +#include + +/* sockets */ +#include +#include +#include + +#include +#include +#include + +#include "cinit.h" + +/* global variable */ +struct listitem *list; +int sock; +pid_t cpid; + +/*********************************************************************** + * cservice - control cinit + */ + +#define USAGE_TEXT "ccontrol - control cinit\n\n" \ + "Usage:\n\nccontrol -[phurs]\n" \ + "\t-p\t- (power off) Power off the system\n" \ + "\t-h\t- (halt) Halt the system \n" \ + "\t-u\t- (update) Reboot (warm) and update cinit\n" \ + "\t-r\t- (reboot) Reboot the system\n" \ + "\t-s\t- (single user/rescue) Rescue mode\n\n" \ + +#define C_USAGE(error) usage(USAGE_TEXT,error) + +/*********************************************************************** + * ccontrol: control cinit + */ +int main(int argc, char **argv) +{ + /* argv */ + if(argc != 2) C_USAGE(MSG_ERR_LESS_ARGS); + if(argv[1][0] != '-') C_USAGE(MSG_ERR_BAD_ARGS); + + switch(argv[1][1]) { + case 'p': /* power off */ + LOG(MSG_POWER_OFF); + msg_reboot(CMD_POWEROFF); + break; + + case 'h': /* halt */ + LOG(MSG_HALT); + msg_reboot(CMD_HALT); + break; + + case 'r': /* reboot */ + LOG(MSG_REBOOT); + msg_reboot(CMD_REBOOT); + break; + + case 's': /* rescue */ + LOG(MSG_RESCUE); + msg_reboot(CMD_RESCUE); + break; + + case 'u': /* update */ + LOG(MSG_UPDATE); + msg_reboot(CMD_UPDATE); + break; + + default: + C_USAGE(MSG_ERR_BAD_ARGS); + break; + } + return 0; +} +/* cinit-0.2 return codes implemented - nothing changed*/ diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/charp_to_flag.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/charp_to_flag.c new file mode 100644 index 00000000..ae4321a2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/charp_to_flag.c @@ -0,0 +1,43 @@ + +/******************************************************************************* + * + * 2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Convert char pointer to uint32_t flag + * + */ + +#include /* strchr */ +#include /* NULL */ + +#include "cinit.h" /* cinit */ + +uint32_t charp_to_flag(char *str) +{ + uint32_t ret = 0; + + if(str != NULL) { + if(strchr(str, CINIT_CMD_SVC_WANTS) != NULL) + ret |= CINIT_QSN_SVC_WANTS; + if(strchr(str, CINIT_CMD_SVC_NEEDS) != NULL) + ret |= CINIT_QSN_SVC_NEEDS; + } + + return ret; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/cinit_get_svc_status.c01 b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/cinit_get_svc_status.c01 new file mode 100644 index 00000000..cdc9d8c2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/cinit_get_svc_status.c01 @@ -0,0 +1,54 @@ +/*********************************************************************** + * + * 2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * Retrieves status of a service + */ + + +#include /* malloc */ +#include /* str* */ +#include /* integers */ + +#include "cinit.h" /* header for clients */ + +/* returns either the status (>0) + * or -1 on memory error + */ +int32_t cinit_get_svc_status(char *name) +{ + /* fixme: s32 int! */ + int tmp; + int32_t res; + char *p, *answer; + int offset = 0, len = strlen(name); + + p = malloc(len + 2 * sizeof(tmp)); + if(!p) return -1; + + /* code */ + tmp = CINIT_MSG_GET_STATUS; + strncpy(p,(char *) &tmp, sizeof(tmp)); + offset += sizeof(tmp); + + /* length */ + strncpy(&p[offset],(char *) &len, sizeof(len)); + offset += sizeof(len); + + /* data */ + strncpy(p, (char *) name, len); + + answer = cinit_send_to(p,len); + + if(answer) { + strncpy((char *) &res, answer, sizeof(res)); + free(answer); + } else { + res = -1; + } + + free(name); + return res; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/comm.h b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/comm.h new file mode 100644 index 00000000..4fbe8c50 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/comm.h @@ -0,0 +1,81 @@ +/*********************************************************************** + * + * 2006-2007 Nico Schottelius (nico-cinit (at) schottelius.org) + * + * part of cLinux/cinit + * + * Communication defines + */ + +#ifndef CINIT_COMM_HEADER +#define CINIT_COMM_HEADER + +#include /* PATH_MAX */ +#include /* pid_t */ + +/*********************************************************************** + * Commands the clients may issue to us + * maximum number of commands: 2^8 = 256 + */ +enum commands { + CMD_MIN='A', /* minimum command number */ + CMD_SVC_START, /* the client wants US to start a service */ + CMD_SVC_START_ONLY, /* start this service without dependencies */ + CMD_SVC_START_NEEDS, /* start this service, needs, but no wants */ + CMD_SVC_STOP, /* stop svc and all svcs that need it */ + CMD_SVC_STOP_ONLY, /* we should stop _only_ this service */ + CMD_SVC_STOP_WANTS, /* stop svc, all svcs that need or want it */ + CMD_CHG_STAT, /* the client reports a status change */ /* FIXME: NEEDED? */ + CMD_RESCUE, /* we should start the rescue mode */ /* UNIMPLEMENTED */ + CMD_HALT, /* halt the system */ + CMD_REBOOT, /* reboot the system */ + CMD_POWEROFF, /* poweroff the system */ + CMD_WBOOT, /* shutdown and restart everything */ /* UNIMPLEMENTED */ + CMD_INFO, /* send information about that service */ /* UNIMPLEMENTED */ + CMD_MAX , /* maximum command number */ +}; + +/* old + RT_ERR_COMM, * communication failed * + RT_ERR, * service starting failed * + RT_UNSPEC, * some kind of error, unspecified * + RT_SUCCESS, * successfully started: respawning or once * + RT_SVC_FAILED, * tried earlier, service failed, won't retry * + +*/ + +/*********************************************************************** + * client issues a command: start_command + */ +struct s_cmd { + char cmd; + pid_t pid; +}; + +/*********************************************************************** + * messages from the client + * Prefix: qst_ (question) + */ +struct msg_client { + pid_t pid; /* pid of the telling client */ + char cmd; /* which cmd is issued to us */ + char status; /* status of the service */ + char svc[PATH_MAX]; /* name of the service */ + char svc_orig[PATH_MAX]; /* the service, which wants to start us */ +}; + +/*********************************************************************** + * messages from the server + * Prefix: asw_ (answer) + */ + +/*********************************************************************** + * return short status + */ +struct asw_sstatus { + long mtype; + char status; + char msg[PATH_MAX]; +}; + +#endif diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/cservice.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/cservice.c new file mode 100644 index 00000000..66be6563 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/cservice.c @@ -0,0 +1,164 @@ +/* + * (c) 2005 Nico Schottelius (nico-linux-cinit at schottelius.org) + * cservice: control cinit services + * part of cLinux/cinit + */ + +/* *stat() */ +#include +#include + +/* open */ +#include + +/* signal */ +#include + +/* PATH_MAX */ +#include + +/* str* */ +#include + +/* sockets */ +#include +#include +#include + +#include +#include +#include + +#include "cinit.h" + +/* global variable */ +struct listitem *list; +int sock; +pid_t cpid; + +/*********************************************************************** + * cservice - control cinit services + */ + +#define USAGE_TEXT "cservice - start and stop cinit services\n\n" \ + "cservice -[ear] \n" \ + "\t-e\t- (ein,on ) start a service (respawn if respawning is set)\n" \ + "\t-a\t- (aus,off) stop a respawing service\n" \ + "\t-r\t- (restart) stop and start a service\n" + +/*********************************************************************** + * fuzzy_path: allow other kinds of path specification .. + */ +char *fuzzy_path(char *rpath) +{ + char pathtmp[PATH_MAX]; + char *re = NULL; + + /* change to rpath */ + if(chdir(rpath) == -1) { + perror(rpath); + return NULL; + } + + /* get absolute name of rpath */ + if(! (int) getcwd(pathtmp,PATH_MAX)) { + perror(rpath); + return NULL; + } + + re = malloc( strlen(pathtmp) + 1); + + if(re != NULL) { + strcpy(re,pathtmp); + } + + return re; +} + +#define C_USAGE(error) usage(USAGE_TEXT,error) + +/*********************************************************************** + * cservice: the main part for controlling cinit from outside + */ +int main(int argc, char **argv) +{ + char *real_name = NULL; + + /* argv */ + if(argc != 3) C_USAGE(MSG_ERR_LESS_ARGS); + if(argv[1][0] != '-') C_USAGE(MSG_ERR_BAD_ARGS); + if(strlen(argv[1]) != 2) C_USAGE(MSG_ERR_ARGS_LEN); + + real_name = fuzzy_path(argv[2]); + + /* fuzzy path failed, exit! */ + if(real_name == NULL) { + return 1; + } + switch(argv[1][1]) { + case 'a': /* aus */ + case 'r': /* restart */ + switch( msg_svc_on_off(real_name,CMD_STOP_SVC) ) { + case ST_FAIL: + SERVICE_LOG(real_name,LOG_SVC_FAIL); + break; + case ST_OFF: + SERVICE_LOG(real_name,LOG_SVC_STOPED); + break; + case RT_ERR_COMM: + SERVICE_LOG(real_name,MSG_ERR_COMM); + break; + /* FIX THIS AFTER cinit-0.2 */ + case RT_TMPNOW: + case RT_ERR: + case RT_SVC_FAILED: + case RT_UNSPEC: + case RT_SUCCESS: + case ST_NEED_FAIL: + case ST_TMP: + case ST_ONCE: + case RT_NOTEXIST: + case ST_RESPAWN: +// SERVICE_LOG(real_name,"Ein bekanntest ding"); + break; +/* default: + SERVICE_LOG(real_name,MSG_SHOULD_NOT_HAPPEN); + break; */ + } + if( argv[1][1] == 'a') break; /* only continue if restarting */ + + case 'e': /* ein */ + switch (run_svc(real_name)) { /* run_svc fuzzys itself */ + case RT_NOTEXIST: + SERVICE_LOG(real_name,LOG_SVC_NOTEXIST); + break; + case RT_SVC_FAILED: + SERVICE_LOG(real_name,LOG_SVC_FAILED); + break; + case ST_FAIL: + SERVICE_LOG(real_name,LOG_SVC_FAIL); + break; + case ST_ONCE: + SERVICE_LOG(real_name,LOG_SVC_ONCE); + break; + case RT_ERR_COMM: + SERVICE_LOG(real_name,MSG_ERR_COMM); + break; + case ST_RESPAWN: + SERVICE_LOG(real_name,LOG_SVC_RESPAWN); + break; + case ST_NEED_FAIL: + SERVICE_LOG(real_name,LOG_NEED_FAIL); + break; + default: + SERVICE_LOG(real_name,MSG_SHOULD_NOT_HAPPEN); + break; + } + break; + default: + C_USAGE(MSG_ERR_BAD_ARGS); + break; + } + return 0; +} +/* uses cinit-0.2 return code style */ diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_change_status.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_change_status.c new file mode 100644 index 00000000..58c0bbf0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_change_status.c @@ -0,0 +1,72 @@ + +/* + * (c) 2005 Nico Schottelius (nico-linux at schottelius.org) + * change status of a service + * part of cinit + */ + +#include +#include +#include +#include + +#include "cinit.h" + +/* client: + * svc = service name + * status = status + * pid = pid + * sock2 = sock + * action = ACT_WRITE + * return: error code + * + * server: + * svc = buffer + * status = where to save status + * svc = bufferTH_MAX + * pid = where to save pid + * sock2 = nsock + * action = ACT_READ + * return: read service lenght + */ + +int do_change_status(char *svc, char *status, pid_t * pid, int sock2, + int action) +{ + int tmp; + + ssize_t(*fpoint) (int, void *, size_t); + + if(action == ACT_SERV) { + fpoint = read; + } else { + fpoint = (ssize_t(*)(int, void *, size_t)) write; + tmp = strlen(svc); + } + + if(fpoint(sock2, &tmp, sizeof(tmp)) == -1) { /* length */ + perror(MSG_ERR_IO); + return 0; + } + + if(tmp > PATH_MAX) { + return 0; + } + + if(fpoint(sock2, svc, tmp) == -1) { /* write service name */ + perror(MSG_ERR_IO); + return 0; + } + + if(fpoint(sock2, status, sizeof(*status)) == -1) { /* status */ + perror(MSG_ERR_IO); + return 0; + } + + if(fpoint(sock2, pid, sizeof(*pid)) == -1) { /* PID */ + perror(MSG_ERR_IO); + return 0; + } + + return tmp; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_reboot.c.orig b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_reboot.c.orig new file mode 100644 index 00000000..9c4c8331 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_reboot.c.orig @@ -0,0 +1,144 @@ +/*********************************************************************** + * + * 2006 Nico Schottelius (nico-linux-cinit //@\\ schottelius.org) + * + * part of cLinux/cinit + * + * Communication defines + */ + +#include +#include +#include +#include +#include +#include +#include + +#include "cinit.h" +#include "os.h" + +/*********************************************************************** + * sig_reboot + * Shutdown the system + */ + +void do_reboot(int signal) +{ + struct listitem *tmp; + struct timespec ts; + char **cmd; + int i; + + /* Let's disappear, we don't care about clients anymore */ + close(sock); + /********* first SIGTERM the respawning processes **********/ + tmp = list->before; + do { + /* kill service watcher, which will kill processes itself */ + if( tmp->status == ST_RESPAWN) { + kill(tmp->pid,SIGTERM); + } + tmp = tmp->before; + } while( tmp != list ); + + /********* now wait for the respawn watchers to return *****/ + tmp = list->before; + do { + if( tmp->status == ST_RESPAWN) { + /* wait until the respawn watcher terminated */ + waitpid(tmp->pid,&i,0); + } + + /* execute shutdown service FIXME: parallelize that?*/ + exec_svc(tmp->abs_path,CMD_STOP_SVC); + tmp = tmp->before; + } while( tmp != list ); + + /* now: all services are down, let's kill all other processes */ + if( kill(-1,SIGTERM) == -1) { + perror(MSG_TERMKILL); + } + + ts.tv_sec = SLEEP_KILL; /* defined in conf/sleep_kill */ + nanosleep(&ts,NULL); + + if( kill(-1,SIGKILL) == -1) { + perror(MSG_KILLBILL); + } + D_PRINTF("SIGKILL GESENDET"); + +/* THIS IS FUCKING UNCLEAN AND SHOULD BE CLEANED UP VERY MUCH!!! */ +#define CMD_CNT 4 + +#define UMOUNT_CMD "/bin/umount" +#define UMOUNT_ARG1 "-arfd" + +#define MOUNT_CMD "/bin/mount" +#define MOUNT_ARG1 "-o" +#define MOUNT_ARG2 "remount,ro" +#define MOUNT_ARG3 "/" + +#define RESCUE_CMD "/bin/sh" + + /* now: we are completley alone. umount everything, go to bed */ + cmd = (char **) malloc( (CMD_CNT+1) * ( sizeof (char*) ) ); + if(cmd) { + /* /bin/umount -a */ + cmd[0] = UMOUNT_CMD; + cmd[1] = UMOUNT_ARG1; + cmd[2] = NULL; + + i = fork(); + if(i == 0) { + execv(cmd[0],cmd); + _exit(1); /* if exec fails in child */ + } + + /* /bin/mount -o remount,ro / */ + cmd[0] = MOUNT_CMD; + cmd[1] = MOUNT_ARG1; + cmd[2] = MOUNT_ARG2; + cmd[3] = MOUNT_ARG3; + cmd[4] = NULL; + + i = fork(); + if(i == 0) { + execv(cmd[0],cmd); + _exit(1); /* if exec fails in child */ + } + } else { + _exit(1); + } + + switch(signal) { + case SIGTERM: /* power off */ + LOG(MSG_POWER_OFF); + cinit_poweroff(); + break; + case SIGHUP: /* reboot */ + LOG(MSG_REBOOT); + cinit_reboot(); + break; + case SIGUSR1: /* halt */ + LOG(MSG_HALT); + cinit_halt(); + break; + case SIGUSR2: /* rescue - destroy ourself */ + LOG(MSG_RESCUE); + cmd[0] = RESCUE_CMD; + cmd[1] = NULL; + execv(cmd[0],cmd); + panic(); + break; + case SIGCONT: /* update */ + LOG(MSG_UPDATE); + cmd[0] = CINIT_BIN; + cmd[1] = NULL; + execv(cmd[0],cmd); + panic(); + break; + } + + /* do not exit, Linux does that for us */ +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_result.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_result.c new file mode 100644 index 00000000..d302e4df --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_result.c @@ -0,0 +1,35 @@ + +/* + * (c) 2005 Nico Schottelius (nico-linux at schottelius.org) + * write result of action + * part of cinit + */ + +#include +#include +#include + +#include "cinit.h" + +/* one handler for read and write! */ +char do_result(int nsock, char *value) +{ + ssize_t(*fpoint) (int, void *, size_t); + char buf; + + if(value == NULL) { /* client */ + value = &buf; + fpoint = read; + } else { + fpoint = (ssize_t(*)(int, void *, size_t)) write; + } + + if(fpoint(nsock, value, 1) == -1) { /* result */ + perror(MSG_ERR_IO); + return RT_ERR_COMM; + } + + return *value; +} + +/* returns cinit-0.2-style return codes */ diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_svc_name.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_svc_name.c new file mode 100644 index 00000000..b56523d3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/do_svc_name.c @@ -0,0 +1,59 @@ + +/* + * (c) 2005 Nico Schottelius (nico-linux at schottelius.org) + * try to start a service + * part of cinit + */ + +#include +#include +#include +#include +#include "cinit.h" + +/* serv: + * get buf + * return length + * + * client: + * print svc + * return errorcode + */ +int do_svc_name(int sock2, char *svc, int action) +{ + int tmp; + + ssize_t(*fpoint) (int, void *, size_t); + + /* + * set pointers + */ + if(action == ACT_CLIENT) { + fpoint = (ssize_t(*)(int, void *, size_t)) write; + tmp = strlen(svc); + } else { + fpoint = read; + } + + /* + * read / write lenght + */ + if(fpoint(sock2, &tmp, sizeof(tmp)) == -1) { + perror(MSG_ERR_IO); + return 0; + } + + if(tmp > PATH_MAX) { + return 0; + } + + /* + * write/read service name + */ + if(fpoint(sock2, svc, tmp) == -1) { + perror(MSG_ERR_IO); + return 0; + } + + return tmp; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/exec_svc.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/exec_svc.c new file mode 100644 index 00000000..35e71ba4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/exec_svc.c @@ -0,0 +1,298 @@ + +/* + * (c) 2005 Nico Schottelius (nico-linux at schottelius.org) + * run_svc + * part of cinit + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "cinit.h" + +/*********************************************************************** + * exec_svc: exec service abspath C_ON or C_OFF + */ + +inline pid_t exec_svc(char *abspath, int action) +{ + int tmp; + char *p, pathtmp[PATH_MAX]; + char *sbuf = NULL, **nargv = NULL, **nenv = NULL; + int fd, argc; + struct stat buf; + + cpid = fork(); + if(cpid == -1) { + perror(MSG_ERR_FORK); + return 0; + } + + /***** PARENT ******/ + if(cpid > 0) { + waitpid(cpid, &tmp, 0); + if(WIFEXITED(tmp)) { + if(!WEXITSTATUS(tmp)) { + return cpid; + } + } + SERVICE_LOG(abspath, LOG_SVC_FAIL); + return 0; + } + + /*********** CHILD EXECUTION ***********/ + strcpy(pathtmp, abspath); + strcat(pathtmp, SLASH); + + if(action == CMD_START_SVC) { + strcat(pathtmp, C_ON); + } else { + strcat(pathtmp, C_OFF); + } + + /* + * readlink retrieves real name, if it is a symlink + */ + if((tmp = readlink(pathtmp, pathtmp, PATH_MAX)) == -1) { + + /* + * nothing there? fine, exit + */ + if(errno == ENOENT) { + _exit(0); + } else if(errno != EINVAL) { + perror(MSG_READLINK); + _exit(1); + } + + /* + * restore original name, file is not a link + */ + strcpy(pathtmp, abspath); + strcat(pathtmp, SLASH); + + if(action == CMD_START_SVC) { + strcat(pathtmp, C_ON); + } else { + strcat(pathtmp, C_OFF); + } + tmp = strlen(pathtmp); + } else { + /* + * add '\0', readlink forgets it + */ + pathtmp[tmp] = '\0'; + } + ++tmp; /* the byte to add to memory for \0; neither + * readlink nor strlen count the \0 */ + + /********** build argv0 ********/ + nargv = (char **) malloc(sizeof(char *)); + if(nargv == NULL) + _exit(1); + + *nargv = (char *) malloc(tmp); + if(*nargv == NULL) + _exit(1); + + strcpy(*nargv, pathtmp); + + /********************** read params *********************/ + strcpy(pathtmp, abspath); + strcat(pathtmp, SLASH); + + if(action == CMD_START_SVC) { + strcat(pathtmp, C_ONARG); + } else { + strcat(pathtmp, C_OFFARG); + } + + /* + * open params file + */ + if(!stat(pathtmp, &buf)) { + fd = open(pathtmp, O_RDONLY); + + if(fd == -1) { + perror(MSG_ERR_OPEN); + _exit(1); + } + + argc = 0; + + /* + * fill sbuf with content + */ + while((tmp = read(fd, pathtmp, PATH_MAX)) != 0) { + if(tmp == -1) { + perror(MSG_ERR_READ); + _exit(1); + } + + sbuf = realloc(sbuf, argc + tmp + 1); + strncpy(&sbuf[argc], pathtmp, tmp); + argc += tmp; + } + close(fd); + + if(argc) { + sbuf[argc] = '\0'; /* terminate string */ + } + } else { + sbuf = NULL; + } + + /************** build string **************/ + /* + * The idea is to reuse the allocated memory. We'll simply * replace the \n + * with \0 and set a char* to it. * We'll lose the last byte (the initial + * \0), but we * don't care, as we die some seconds later with execv() * oh, + * we'll only lose it, if the file is terminated by \n + */ + + argc = 1; /* argv0 */ + while(sbuf != NULL) { + p = strchr(sbuf, '\n'); + nargv = realloc(nargv, sizeof(char *) * (argc + 1)); + + if(nargv == NULL) { + LOG(MSG_ERR_ALLOC); + _exit(1); + } + + /* + * set to the beginning + */ + nargv[argc] = sbuf; + + /* + * if we found \n + */ + if(p != NULL) { + *p = '\0'; + } else { + /* + * set to the end of sbuf, not to the \0, but one before + */ + p = sbuf + (strlen(sbuf) - 1); + } + + /* + * if next byte is 0, the end of string is found + */ + if(*(p + 1) == '\0') { + sbuf = NULL; + } else { + sbuf = p + 1; + } + ++argc; + } + + /************ close argv list **************/ + nargv = realloc(nargv, sizeof(char *) * (argc + 1)); /* 1: NULL-pointer */ + if(nargv == NULL) { + LOG(MSG_ERR_ALLOC); + _exit(1); + } + nargv[argc] = NULL; /* terminate argv list */ + + /********************** read environment *********************/ + strcpy(pathtmp, abspath); + strcat(pathtmp, SLASH); + if(action == CMD_START_SVC) { + strcat(pathtmp, C_ONENV); + } else { + strcat(pathtmp, C_OFFENV); + } + + argc = 0; + sbuf = NULL; + if(!stat(pathtmp, &buf)) { + fd = open(pathtmp, O_RDONLY); + + /* + * file exists, failing to open it is an error + */ + if(fd == -1) { + perror(MSG_ERR_OPEN); + _exit(1); + } + + while((tmp = read(fd, pathtmp, PATH_MAX)) != 0) { + if(tmp == -1) { + perror(MSG_ERR_READ); + _exit(1); + } + + sbuf = realloc(sbuf, argc + tmp + 1); + strncpy(&sbuf[argc], pathtmp, tmp); + argc += tmp; + } + close(fd); + if(argc) + sbuf[argc] = '\0'; /* terminate string */ + } + + /************** build environment string **************/ + argc = 0; + while(sbuf != NULL) { + p = strchr(sbuf, '\n'); + + nenv = realloc(nenv, sizeof(char *) * (argc + 1)); + if(nenv == NULL) { + LOG(MSG_ERR_ALLOC); + _exit(1); + } + nenv[argc] = sbuf; + + /* + * if we found \n + */ + if(p != NULL) { + *p = '\0'; + } else { + /* + * set to the end of sbuf, not to the \0, but one before + */ + p = sbuf + (strlen(sbuf) - 1); + } + + if(*(p + 1) == '\0') { + sbuf = NULL; + } else { + sbuf = p + 1; + } + ++argc; + } + + /************ close env list **************/ + nenv = realloc(nenv, sizeof(char *) * (argc + 1)); + if(nenv == NULL) { + LOG(MSG_ERR_ALLOC); + _exit(1); + } + nenv[argc] = NULL; + + /****************** EXECUTE ********************/ + + execve(nargv[0], nargv, nenv); + + /* + * we should never reach this block + */ + P_EXEC_FAILED(nargv[0]); + perror(MSG_ERR_EXECVE); + /* + * FIXME: remove debug, remove double printing without loosing info + */ + sleep(3); /* debug */ + _exit(1); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/main.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/main.c new file mode 100644 index 00000000..9016eac1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/main.c @@ -0,0 +1,106 @@ + +/* + * (c) 2006 Nico Schottelius (nico-linux-cinit at schottelius.org) + * main.c + * main part of cinit + */ + +#include /* ftok */ +#include /* msgget */ +#include /* perror */ +#include /* exit */ + +#include "cinit.h" + +/* global variables */ +struct listitem *list; +pid_t cpid; + +/*********************************************************************** + * the main procedure + */ + +int main(int argc, char **argv) +{ + char *initdir; + key_t msg_key; + int msq_id; + + initdir = CINIT_INIT; /* default init dir */ + list = NULL; /* list of services is empty currently */ + cpid = getpid(); /* no comment */ + + if(cpid != 1) { + usage(CINIT_VERSION, MSG_USAGE); + } + + /* + * set signal handlers + */ + set_signals(ACT_SERV); + + /* + * read arguments, profile support + */ + while(argc > 1) { + if(!strncmp(PROFILE, argv[argc - 1], strlen(PROFILE))) { + initdir = (char *) malloc(strlen(CINIT_DIR) + + strlen(&argv[argc - 1][strlen(PROFILE)]) + + 2); + if(initdir == NULL) { + panic(); + } + strcpy(initdir, CINIT_DIR); + strcat(initdir, SLASH); + strcat(initdir, &argv[argc - 1][strlen(PROFILE)]); + break; + } + argc--; + } + + /* + * tell the world we are there FIXME: do we really need three calls? + */ + mini_printf(MSG_BOOTING, 1); + mini_printf(initdir, 1); + mini_printf("\n", 1); + + if(chdir(CINIT_INIT) == -1) { + perror(MSG_CHDIR); + panic(); + } + + /* + * create message queues + */ + + /* + * start init or profile + */ + run_init_svc(initdir); + + /* + * free, if we malloc()ed before + */ + if(initdir != CINIT_INIT) { + free(initdir); + } + + /* + * wait until we recieved the signal to create the socket + */ + + /* + * our life is polling a socket + */ + plist.fd = sock; + plist.events = POLLIN | POLLPRI; + while(1) { + if(poll(&plist, 1, -1) != -1) { + if((plist.revents & POLLIN) == POLLIN || + (plist.revents & POLLPRI) == POLLPRI) { + sigio(sock); + } + } + } +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/msg_change_status.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/msg_change_status.c new file mode 100644 index 00000000..40a46946 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/msg_change_status.c @@ -0,0 +1,30 @@ + +/* + * (c) 2005 Nico Schottelius (nico-linux at schottelius.org) + * tell cinit that I want change the status of a service + * part of cinit + */ + +#include +#include +#include +#include + +#include "cinit.h" + +/* FIXME: change return code validation */ + +int msg_change_status(char *svc, char status, pid_t pid) +{ + if(!begin_msg(CMD_CHG_STATUS)) { + return RT_ERR_COMM; + } + if(!do_change_status(svc, &status, &pid, sock, ACT_CLIENT)) { + return 0; + } + if(!do_result(sock, NULL)) { + return 0; + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/msg_reboot.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/msg_reboot.c new file mode 100644 index 00000000..efe78ec6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/msg_reboot.c @@ -0,0 +1,21 @@ +/* + * (c) 2005 Nico Schottelius (nico-linux at schottelius.org) + * reboot/halt/poweroff/rescue + * part of cinit + */ + +#include +#include +#include +#include + +#include "cinit.h" + +/* we trust the caller */ +int msg_reboot(char cmd) +{ + if(!begin_msg(cmd)) return 0; + close(sock); + return 1; +} +/* clean for cinit-0.2 */ diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/msg_svc_on_off.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/msg_svc_on_off.c new file mode 100644 index 00000000..350d41fe --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/msg_svc_on_off.c @@ -0,0 +1,26 @@ + +/* + * (c) 2005 Nico Schottelius (nico-linux at schottelius.org) + * tell cinit that I want to start a service + * part of cinit + */ + +#include +#include +#include + +#include "cinit.h" + +/* ********************************************************************** + * action: 1=on, 0=off + */ +int msg_svc_on_off(char *svc, char action) +{ + if(!begin_msg(action)) + return RT_ERR_COMM; + if(!do_svc_name(sock, svc, ACT_CLIENT)) + return RT_ERR_COMM; + return (int) do_result(sock, NULL); +} + +/* returns cinit-0.2-style return codes */ diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/pipes b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/pipes new file mode 100644 index 00000000..581b1274 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/pipes @@ -0,0 +1,17 @@ + /* create pipes */ + if(pipe(pfd) == -1) { + perror(MSG_ERR_PIPE); + panic(); + } + /* our life is polling a socket */ + plist.fd = sock; + plist.events = POLLIN | POLLPRI; + while(1) { + if(poll(&plist, 1, -1) != -1) { + if( (plist.revents & POLLIN) == POLLIN || + (plist.revents & POLLPRI) == POLLPRI) { + sigio(sock); + } + } + } + diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/respawn_svc.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/respawn_svc.c new file mode 100644 index 00000000..d52984be --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/respawn_svc.c @@ -0,0 +1,114 @@ + +/* + * (c) 2005,2006 Nico Schottelius (nico-linux at schottelius.org) + * respawn_svc + * part of cinit + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "cinit.h" + +/* run a service, gets (relative or absolute) path */ +pid_t respawn_svc(char *abspath) +{ + pid_t pid; + int tmp; + int pipefd[2]; + struct sigaction sa; + char delay[PATH_MAX + 1]; + + D_PRINTF(abspath); + + if(pipe(pipefd) == -1) { + perror(MSG_ERR_PIPE); + return 0; + } + + pid = fork(); + if(pid == -1) { + perror(MSG_ERR_FORK); + return 0; + } + + /******************** PARENT ********************/ + if(pid > 0) { + /* + * if we read anything, our child succeded + */ + if(read(pipefd[0], &tmp, sizeof(tmp)) == -1) { + perror(MSG_ERR_IO); + return 0; + } + return pid; /* return watchers pid */ + } + + /****************** CHILD: Service watcher ********************/ + sa.sa_handler = sig_terminate; + sigaction(SIGTERM, &sa, NULL); /* term = kill respawing process */ + /* + * sigterm handler should kill first our watching pid, reset the pid to 0 + * and then we'll kill ourselves + */ + + tmp = 1; + if(write(pipefd[1], &tmp, sizeof(tmp)) == -1) { + perror(MSG_ERR_IO); + _exit(1); + } + + /* + * try to read delay into sock + */ + strcpy(delay, abspath); + strcat(delay, SLASH); + strcat(delay, C_DELAY); + + /* + * reuse sock to specify delay + */ + sock = -1; + tmp = open(delay, O_RDONLY); + if(tmp != -1) { + pipefd[0] = read(tmp, &delay[0], PATH_MAX); + if(pipefd[0] > 0 && pipefd[0] <= PATH_MAX) { + delay[pipefd[0]] = 0; + sock = atoi(delay); + } + close(tmp); + } + + do { + /* + * exec_svc will set cpid accordingly + */ + if(!exec_svc(abspath, CMD_START_SVC)) { + if(cpid != 0) { + D_PRINTF("sloefen"); + sleep(SLEEP_SVC); + D_PRINTF("Zuende geschlafen"); + } + } + } while(cpid); /* cpid is reset by sig_terminate() */ + + /* + * FIXME: put most code of sig_terminate here, look for no_kill + */ + + /* + * start off task + */ + exec_svc(abspath, CMD_STOP_SVC); + + D_PRINTF("jetzt weg"); + _exit(0); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_init_svc.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_init_svc.c new file mode 100644 index 00000000..2cc30262 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_init_svc.c @@ -0,0 +1,57 @@ + +/*********************************************************************** + * + * 2005-2006 Nico Schottelius (nico-linux-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * run initial service(s) + */ + +#include +#include +#include +#include +#include + +#include "cinit.h" + +#include + +/*********************************************************************** + * start the first service + */ + +int run_init_svc(char *cinit_svc) +{ + pid_t pid; + + /* + * leave cinit alone + */ + pid = fork(); + + if(pid == -1) { /* err */ + print_errno(MSG_ERR_FORK); + return 0; + } else if(pid == 0) { /* child */ + cinit_ipc_sclose(); + set_signals(ACT_CLIENT); + + /* + * FIXME: open stderr, stdin, stdout to files / syslog / logable ? + * IMPLEMENT PER SERVICE! + */ + + run_svc(cinit_svc); + + _exit(0); /* nobody cares about us, so exit successfully + * anyway */ + } + /* + * parent exits, we don't care about our children + */ + return 1; +} + +/* ready for cinit-0.2 */ diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_init_svc2.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_init_svc2.c new file mode 100644 index 00000000..338b1a11 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_init_svc2.c @@ -0,0 +1,58 @@ + +/*********************************************************************** + * + * 2005-2006 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * run initial service(s) + */ + +#include /* _exit, fork */ + +#include "cinit.h" +#include "messages.h" +#include "ipc.h" + +int run_svc(char *rpath) +{ + rpath = "test"; + return 0; +} /* a hack to compile cinit for now */ + +int run_init_svc(char *cinit_svc) +{ + pid_t pid; + + /* + * leave cinit alone + */ + pid = fork(); + + if(pid == -1) { /* err */ + print_errno(MSG_ERR_FORK); + return 0; + } else if(pid == 0) { /* child */ + cinit_ipc_sclose(); + set_signals(ACT_CLIENT); + + if(!cinit_ipc_logon()) + _exit(1); + + /* + * FIXME: open stderr, stdin, stdout to files / syslog / logable ? + * IMPLEMENT PER SERVICE! + */ + + run_svc(cinit_svc); + + _exit(0); /* nobody cares about us, so exit successfully + * anyway */ + } + /* + * parent exits, we don't care about our children + */ + return 1; +} + +/* ready for cinit-0.2 */ diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_run_svcs.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_run_svcs.c new file mode 100644 index 00000000..b12cbb54 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_run_svcs.c @@ -0,0 +1,95 @@ + +/* + * cinit + * (c) 2005 Nico Schottelius (nico-linux at schottelius.org) + * run services parallel + */ +#include +#include +#include +#include +#include +#include +#include + +#include "cinit.h" + +/*********************************************************************** + * parallel run forked() run_svc() + */ + +int run_run_svcs(char *abspath) +{ + DIR *d_tmp = NULL; + struct dirent *tdirent; + char pathbuf[PATH_MAX + 1]; + pid_t pids[MAX_DEPS]; + int status, i, ret = 1; + + D_PRINTF(abspath); + + d_tmp = opendir(abspath); + + /* + * if there is no such dir, we are finished + */ + if(d_tmp == NULL) { + return 1; + } + + i = 0; + while((tdirent = readdir(d_tmp)) != NULL) { + /* + * ignore . and .. and everything with a . at the beginning + */ + if(*(tdirent->d_name) == '.') + continue; + + if(i < MAX_DEPS) { + pids[i] = fork(); + } else { + LOG(MSG_ERR_DEPS); + break; + } + + if(pids[i] == -1) { /* err */ + perror(MSG_ERR_FORK); + return 0; + } + + if(pids[i] == 0) { /* child */ + strcpy(pathbuf, abspath); + strcat(pathbuf, SLASH); + strcat(pathbuf, tdirent->d_name); + if(run_svc(pathbuf)) + _exit(0); + else + _exit(1); + } else { /* parent */ + ++i; + } + } + + closedir(d_tmp); + + /* + * wait for pids + */ + --i; /* the index is one too much since last i++ */ + while(i >= 0) { + waitpid(pids[i], &status, 0); + + /* + * if anything failed, we failed + */ + if(!WIFEXITED(status)) { + ret = 0; + } else { + if(WEXITSTATUS(status)) { + ret = 0; + } + } + --i; + } + return ret; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_svc.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_svc.c new file mode 100644 index 00000000..194c981f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/run_svc.c @@ -0,0 +1,144 @@ + +/* + * (c) 2005 Nico Schottelius (nico-cinit at schottelius.org) + * run_svc + * part of cinit + */ + +/* headers are clean */ +#include +#include +#include +#include +#include +#include +#include + +#include "cinit.h" + +#error "needs to be cleaned up" + +/*********************************************************************** + * run_svc: run a service and before all dependencies + */ +int run_svc(char *rpath) +{ + int tmp; + pid_t pid; + char abspath[PATH_MAX], pathtmp[PATH_MAX]; /* pathtmp will be misused */ + struct stat buf; + struct timespec ts; + + /******************* absolute PATH ***************/ + /* + * save current working dir + */ + if(!(int) getcwd(pathtmp, PATH_MAX)) { + print_errno(pathtmp); + return RT_UNSPEC; + } + + /* + * change to rpath + */ + if(chdir(rpath) == -1) { + print_errno(rpath); + return RT_NOTEXIST; + } + + /* + * get absolute name of rpath + */ + if(!(int) getcwd(abspath, PATH_MAX)) { + perror(abspath); + return RT_UNSPEC; + } + + /* + * change back + */ + if(chdir(pathtmp) == -1) { + perror(pathtmp); + return RT_UNSPEC; + } + D_PRINTF(abspath); + + /******************* REGISTER SERVICE ***************/ + do { + tmp = msg_svc_on_off(abspath, CMD_START_SVC); /* check status */ + + switch (tmp) { + case ST_FAIL: /* somebody failed before, we won't retry */ + return RT_SVC_FAILED; + break; + case ST_TMP: /* someone is working on it */ + ts.tv_sec = SLEEP_RERUN; + nanosleep(&ts, NULL); + break; + case ST_ONCE: /* somebody did our work */ + case RT_ERR_COMM: /* communication failed */ + case ST_RESPAWN: /* somebody does our work */ + case ST_NEED_FAIL: /* the needs failed before */ + return tmp; + break; + case RT_TMPNOW: /* do not go to default: */ + break; + default: + mini_printf(MSG_SHOULD_NOT_HAPPEN, 1); + return RT_UNSPEC; + break; + } + } while(tmp != RT_TMPNOW); + + /******************* BEGIN DEPENDENCIES ***************/ + strcpy(pathtmp, abspath); + strcat(pathtmp, SLASH); + strcat(pathtmp, C_NEEDS); + + /* + * check for needs + */ + if(stat(pathtmp, &buf) == 0) { + if(!run_run_svcs(pathtmp)) { + SERVICE_LOG(abspath, LOG_NEED_FAIL); + msg_change_status(abspath, ST_NEED_FAIL, 0); + return ST_NEED_FAIL; + } + } + + /********** WANTS ************/ + strcpy(pathtmp, abspath); + strcat(pathtmp, SLASH); + strcat(pathtmp, C_WANTS); + + if(stat(pathtmp, &buf) == 0) { + run_run_svcs(pathtmp); /* don't care about what happens with the want + * svc */ + } + + /******************* execute services ***************/ + strcpy(pathtmp, abspath); + strcat(pathtmp, SLASH); + strcat(pathtmp, C_RESPAWN); + + if(stat(pathtmp, &buf) == 0) { + pid = respawn_svc(abspath); + tmp = ST_RESPAWN; + } else { + pid = exec_svc(abspath, CMD_START_SVC); + tmp = ST_ONCE; + } + + if(!pid) { + msg_change_status(abspath, ST_FAIL, pid); + return ST_FAIL; + } + + if(!msg_change_status(abspath, tmp, pid)) { + return RT_ERR_COMM; + } + + return tmp; /* ST_ONCE || ST_RESPAWN */ +} + +/* cinit-0.2 return codes implemented */ diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/set_signals.c01 b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/set_signals.c01 new file mode 100644 index 00000000..ff35a78a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/set_signals.c01 @@ -0,0 +1,40 @@ +/* + * (c) 2005 Nico Schottelius (nico-linux at schottelius.org) + * cinit.c + * part of cLinux/cinit + */ + +#include +#include +#include "cinit.h" + +void set_signals(int action) +{ + struct sigaction sa; + + D_PRINTF("Signale setzen"); + + if(action == ACT_SERV) { + sa.sa_handler=SIG_IGN; + } else { + sa.sa_handler=SIG_DFL; + } + sigaction(SIGINT,&sa,NULL); /* ignore ctr+c and ctr+alt+del */ + + /* what todo when a child exited, cleaning dead processes */ + if(action == ACT_SERV) { + sa.sa_handler=sig_child; +// SA_NOCLDSTOP + } + sigaction(SIGCHLD,&sa,NULL); + + /* signal handlers to do special things with: reboot */ + if(action == ACT_SERV) { + sa.sa_handler=sig_reboot; + } + sigaction(SIGUSR1,&sa,NULL); /* halt */ + sigaction(SIGUSR2,&sa,NULL); /* rescue */ + sigaction(SIGTERM,&sa,NULL); /* poweroff */ + sigaction(SIGHUP,&sa,NULL); /* reboot */ + +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/sig_terminate.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/sig_terminate.c new file mode 100644 index 00000000..bc7171fb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/sig_terminate.c @@ -0,0 +1,73 @@ + +/* + * (c) 2005 Nico Schottelius (nico-linux at schottelius.org) + * terminate: terminate our watching pid + * part of cinit + */ + +#include +#include +#include +#include +#include +#include +#include +#include "cinit.h" + +/* ********************************************************************** + * terminate the watching service + */ +void sig_terminate(int signal) +{ + struct timespec ts; + int status; + + /* + * FIXME: only send SIGTERM, if not_kill does not exist + */ + if(kill(cpid, SIGTERM) == -1) { + if(errno != ESRCH) { + perror(MSG_TERMKILL); + } + } + + /* + * variabel delay + */ + if(sock > 0) { + ts.tv_sec = sock; + } else { + ts.tv_sec = SLEEP_KILL_SVC; /* defined in conf/sleep_kill_svc */ + } + + /* + * if it still exists... + */ + if(kill(cpid, 0) != -1) { + /* + * kill if there is a delay + */ + if(sock != 0) { + nanosleep(&ts, NULL); + status = kill(cpid, SIGKILL); + if(status == -1) { + if(errno != ESRCH) { + perror(MSG_TERMKILL); + } + } + } + } + + /* + * remove zombie if killed, if delay is zero wait for it + */ + waitpid(cpid, &status, 0); + + /* + * reset the watching pid to zero (NOT THE WATCHER's!) + */ + cpid = 0; + + D_PRINTF("muesste weg sein"); + return; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/test-signal.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/test-signal.c new file mode 100644 index 00000000..a081fb76 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/test-signal.c @@ -0,0 +1,56 @@ + +/* test case for glibc */ + +#include +#include /* sigaction, sigemtpyset */ +#include +#include +#include +#include +#include + +void sig_child(int tmp) +{ + struct timeval tv; + pid_t pid; + + while((pid = waitpid(-1, &tmp, WNOHANG)) > 0) { + gettimeofday(&tv, NULL); + printf("sighandler: %d\n", tv.tv_sec); + } +} + +int main() +{ + struct sigaction sa; + struct timeval tv; + struct timespec ts; + pid_t pid; + + sigemptyset(&sa.sa_mask); + sa.sa_flags = 0; + + sa.sa_handler = sig_child; + sa.sa_flags = SA_NOCLDSTOP; + + sigaction(SIGCHLD, &sa, NULL); + + while(1) { + pid = fork(); + + /* + * child + */ + if(!pid) { + ts.tv_sec = 2; + nanosleep(&ts, NULL); + gettimeofday(&tv, NULL); + + printf("child: %d\n", tv.tv_sec); + return 0; + } + + ts.tv_nsec = 100000; + nanosleep(&ts, NULL); + } +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ancient/unused-coded/cinit_read_from.c b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/unused-coded/cinit_read_from.c new file mode 100644 index 00000000..54499be3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ancient/unused-coded/cinit_read_from.c @@ -0,0 +1,23 @@ +/*********************************************************************** + * + * 2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * read data from cinit to the client + */ + + +#include "ipc.h" /* IPC */ + +/* gets a bunch of bytes and returns the answer from cinit */ +int cinit_read_from(char **dest, int len) +{ + if(!cinit_ipc_logon()) return NULL; + if(!cinit_ipc_connect()) return NULL; + + /* FIXME: add length to ipc function? */ + if(!cinit_ipc_csend(data)) return NULL; + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/client/cmd.c b/software/cinit/browse_source/cinit-0.3pre18/src/client/cmd.c new file mode 100644 index 00000000..d85e417c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/client/cmd.c @@ -0,0 +1,259 @@ +/******************************************************************************* + * + * 2007-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * cmd - the cinit client program - sends commands to cinit + * + */ + +#include /* getopt */ +#include /* signals */ +#include /* printf() */ +#include /* free() */ +#include /* strncmp */ + +#include /* integers */ +#include /* PATH_MAX */ + +#include "cmd.h" /* own header */ +#include "signals.h" /* which signal */ +#include "svc.h" /* service related */ +#include "intern.h" /* print_errno() */ + +#include "cinit.h" /* cinit external */ + +#define C_USAGE(error) usage(USAGE_TEXT,error) +#define MSG_IPC_ERROR "An IPC error occured while connecting to cinit. " \ + "Is cinit running?\n" +#define MSG_UNKNOWN_SVC "Unknown service: %s\n" +#define MSG_UNKNOWN_RET "Unknown return code: %d\n" + +enum { + NOTHING, + ENABLE, + DISABLE, + PID, + STATUS +} whattodo; + +/*********************************************************************** + * cmd: main + */ +int main(int argc, char **argv) +{ + char buf[CINIT_DATA_LEN]; + char *flag = NULL; + int opt; + int what = NOTHING; + uint32_t ret; + uint32_t (*fp)(char *, uint32_t); /* to select enable or disable */ + + + union { + uint32_t status; + pid_t pid; + } u; + + /* + * -d w(ants) excluded) + * -e n(eeds excluded) + * -d i(nclude everything) + */ + + /* check for + * d|e: + * check for flags + * p|s: + * continue with service + * h|v|V: print and exit + */ + while((opt = getopt(argc, argv, CMD_OPTIONS)) != -1) { + switch (opt) { + + /******************************************** + * Non-continuing parameters + */ + + /******************************************** + * help + */ + case 'h': + printf(CMD_USAGE); + return 0; + break; + + /********************************************/ + case 'v': /* get version of cinit */ + ret = cinit_get_version(buf); + switch (ret) { + case CINIT_ASW_OK: + printf("Version of cinit: %s\n", buf); + return 0; + break; + case CINIT_ASW_IPC_ERROR: + fprintf(stderr, MSG_IPC_ERROR); + what = 2; + break; + + default: /* should not happen */ + printf(MSG_UNKNOWN_RET, ret); + what = 3; + break; + } + return what; + break; + + /********************************************/ + case 'V': /* version */ + printf("Version of cmd: %s\n", CMD_VERSION); + return 0; + break; + + /********************************************/ + /* + * Continuing parameters + */ + + /********************************************/ + case 'e': /* enable service */ + what = ENABLE; + flag = optarg; + break; + + case 'd': /* disable service */ + what = DISABLE; + flag = optarg; + break; + + /********************************************/ + case 'p': /* get pid */ + what = PID; + break; + + /********************************************/ + case 's': /* get status */ + what = STATUS; + break; + + /********************************************/ + + default: + fprintf(stderr, + "Sorry, I did not understand what you want. Try -h, please.\n"); + return 1; + break; + } + } + + if(what == NOTHING) { + fprintf(stderr, + "That is not much you request from me. Try -h for help.\n"); + return 1; + } + + if(!path_absolute(argv[optind], buf, CINIT_DATA_LEN)) + return 1; + + fp = NULL; + switch (what) { + case ENABLE: + fp = cinit_svc_enable; + case DISABLE: + if(!fp) fp = cinit_svc_disable; + + u.status |= cinit_flag_to_uint32_t(flag); + + ret = fp(buf, u.status); + + switch (ret) { + case CINIT_ASW_OK: + printf("Set status of %s.\n", buf); + what = 0; + break; + + case CINIT_ASW_SVC_UNKNOWN: + printf(MSG_UNKNOWN_SVC, buf); + what = 1; + break; + + case CINIT_ASW_IPC_ERROR: + fprintf(stderr, MSG_IPC_ERROR); + what = 2; + break; + + default: /* should not happen */ + printf(MSG_UNKNOWN_RET, ret); + what = 3; + break; + } + break; + + case PID: + ret = cinit_svc_get_pid(buf, &(u.pid)); + switch (ret) { + case CINIT_ASW_OK: + printf("PID of %s: %d\n", buf, u.pid); + what = 0; + break; + + case CINIT_ASW_SVC_UNKNOWN: + printf(MSG_UNKNOWN_SVC, buf); + what = 1; + break; + + case CINIT_ASW_IPC_ERROR: + fprintf(stderr, MSG_IPC_ERROR); + what = 2; + break; + + default: /* should not happen */ + printf(MSG_UNKNOWN_RET, ret); + what = 3; + break; + } + break; + + case STATUS: + ret = cinit_svc_get_status(buf, &(u.status)); + switch (ret) { + case CINIT_ASW_OK: + printf("Status of %s is: %d\n", buf, u.status); + what = 0; + break; + + case CINIT_ASW_SVC_UNKNOWN: + printf("Unknown service: %s\n", buf); + what = 1; + break; + + case CINIT_ASW_IPC_ERROR: + fprintf(stderr, MSG_IPC_ERROR); + what = 2; + break; + + default: /* should not happen */ + printf(MSG_UNKNOWN_RET, ret); + what = 3; + break; + } + break; + } + + return what; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/client/halt.kill.c b/software/cinit/browse_source/cinit-0.3pre18/src/client/halt.kill.c new file mode 100644 index 00000000..eeb4c53a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/client/halt.kill.c @@ -0,0 +1,25 @@ + +/*********************************************************************** + * + * 2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * Halt the system through a kill call + */ + +#include /* kill() */ + +#include "messages.h" /* MSG_* */ +#include "intern.h" /* print_errno() */ +#include "signals.h" /* signals mapping */ + +int main() +{ + if(kill(1, SIG_CINIT_HALT) == -1) { + print_errno(MSG_HALT_KILL); + return 1; + } + + return 0; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/client/poweroff.kill.c b/software/cinit/browse_source/cinit-0.3pre18/src/client/poweroff.kill.c new file mode 100644 index 00000000..7066fedc --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/client/poweroff.kill.c @@ -0,0 +1,25 @@ + +/*********************************************************************** + * + * 2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * Reboot the system through a kill call + */ + +#include /* kill() */ + +#include "messages.h" /* MSG_* */ +#include "intern.h" /* print_errno() */ +#include "signals.h" /* signals mapping */ + +int main() +{ + if(kill(1, SIG_CINIT_POWEROFF) == -1) { + print_errno(MSG_POWEROFF_KILL); + return 1; + } + + return 0; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/client/reboot.kill.c b/software/cinit/browse_source/cinit-0.3pre18/src/client/reboot.kill.c new file mode 100644 index 00000000..4592b379 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/client/reboot.kill.c @@ -0,0 +1,25 @@ + +/*********************************************************************** + * + * 2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * Reboot the system through a kill call + */ + +#include /* kill() */ + +#include "messages.h" /* MSG_* */ +#include "intern.h" /* print_errno() */ +#include "signals.h" /* signals mapping */ + +int main() +{ + if(kill(1, SIG_CINIT_REBOOT) == -1) { + print_errno(MSG_REBOOT_KILL); + return 1; + } + + return 0; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/comm/README b/software/cinit/browse_source/cinit-0.3pre18/src/comm/README new file mode 100644 index 00000000..b43969f2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/comm/README @@ -0,0 +1,22 @@ +This directory contains the server (aka cinit) part of the communication process. + +All the communication functions do not depend on the underlying +inter process communication mechanism. Use the following functions: + + - send_command(): client function: sends a command to cinit + - send_service(): client function: send the service name to operate on + + - read_command(): server function: reads beginning of a command + * Extracts the command + * reads client identification (=pid) + * calls other functions, depending on the command send => switch() + - read_service(): server function: reads service + + - write_answer(): server function: answer? + * sends answers to clients => senseful? + + + TODO: + - define information function, that returns various information about + a service + diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_disable.c b/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_disable.c new file mode 100644 index 00000000..94258487 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_disable.c @@ -0,0 +1,45 @@ +/******************************************************************************* + * + * 2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * disables a service + * + */ + +#include "svc-intern.h" /* list_search */ +#include "cinit.h" /* structure: cinit_answer */ + + +/** + * Returns the answer to the disable request to the client. + */ +int answer_svc_disable(char *svc, struct cinit_answer *asr) +{ + struct listitem *tmp; + + tmp = list_search(svc); + if(!tmp) { + asr->ret = CINIT_ASW_SVC_UNKNOWN; + } else { + asr->ret = svc_disable(tmp); + asr->opt = 0; + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_pid.c b/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_pid.c new file mode 100644 index 00000000..2fdf11c5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_pid.c @@ -0,0 +1,42 @@ + +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * return pid of service + * + */ + +#include "svc-intern.h" /* VERSION */ +#include "cinit.h" /* structure: cinit_answer */ + +int answer_svc_pid(char *svc, struct cinit_answer *asr) +{ + struct listitem *tmp; + + tmp = list_search(svc); + if(!tmp) { + asr->ret = CINIT_ASW_SVC_UNKNOWN; + } else { + asr->ret = CINIT_ASW_OK; + asr->opt = tmp->pid; + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_status.c b/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_status.c new file mode 100644 index 00000000..99d0adf9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_status.c @@ -0,0 +1,43 @@ + +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * returns status of service + * + */ + +#include /* strncpy */ +#include "svc-intern.h" /* VERSION */ +#include "cinit.h" /* structure: cinit_answer */ + +int answer_svc_status(char *svc, struct cinit_answer *asr) +{ + struct listitem *tmp; + + tmp = list_search(svc); + if(!tmp) { + asr->ret = CINIT_ASW_SVC_UNKNOWN; + } else { + asr->ret = CINIT_ASW_OK; + asr->opt = tmp->status; + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_stop.c b/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_stop.c new file mode 100644 index 00000000..73d32f8d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_svc_stop.c @@ -0,0 +1,43 @@ +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Disable a service (with or without dependencies) + * + */ + +#include "cinit.h" /* structure: cinit_answer */ + +int answer_svc_stop(char *svc, struct cinit_answer *asr) +{ + struct listitem *tmp; + + tmp = list_search(svc); + if(!tmp) { + asr->ret = CINIT_ASW_SVC_UNKNOWN; + } else { + if(tmp->status & (CINIT_ST_RESPAWNING | CINIT_ST_ONCE_RUN)) { + asr->ret = svc_disable(tmp); + } else { /* not running, nothing todo */ + asr->ret = CINIT_ASW_OK; + } + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_version.c b/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_version.c new file mode 100644 index 00000000..e57cf552 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/comm/answer_version.c @@ -0,0 +1,35 @@ + +/******************************************************************************* + * + * 2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * return version of cinit + * + */ + +#include "config.h" /* VERSION */ +#include "cinit.h" /* structure: cinit_answer */ + +int answer_version(struct cinit_answer *asr) +{ + asr->ret = CINIT_ASW_OK; + cinit_cp_data(asr->data, VERSION); + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/comm/cinit_append_data.c b/software/cinit/browse_source/cinit-0.3pre18/src/comm/cinit_append_data.c new file mode 100644 index 00000000..46c8a3e9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/comm/cinit_append_data.c @@ -0,0 +1,32 @@ + +/******************************************************************************* + * + * 2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Append data to the existing field + * + */ + +#include /* strncpy */ +#include "cinit.h" /* CINIT_DATA_LEN */ + +void cinit_append_data(char data[], char *src) +{ + strncat(data, src, CINIT_DATA_LEN); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/comm/cinit_cp_data.c b/software/cinit/browse_source/cinit-0.3pre18/src/comm/cinit_cp_data.c new file mode 100644 index 00000000..dd107ea8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/comm/cinit_cp_data.c @@ -0,0 +1,32 @@ + +/******************************************************************************* + * + * 2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * fill the data field of qsn and asn + * + */ + +#include /* strncpy */ +#include "cinit.h" /* CINIT_DATA_LEN */ + +void cinit_cp_data(char data[], char *src) +{ + strncpy(data, src, CINIT_DATA_LEN); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/comm/read_command.c b/software/cinit/browse_source/cinit-0.3pre18/src/comm/read_command.c new file mode 100644 index 00000000..3cc17300 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/comm/read_command.c @@ -0,0 +1,66 @@ + +/******************************************************************************* + * + * 2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * cinit reads a command sent by a client, called by ipc listener + * + */ + +#include "cinit.h" /* structures */ +#include "intern.h" /* answer_svc_status() */ + +int read_command(struct cinit_question qsn, struct cinit_answer *asr) +{ + switch (qsn.cmd) { + case CINIT_QSN_GET_VERSION: + if(!answer_version(asr)) + return 0; + break; + + case CINIT_QSN_GET_STATUS: + if(!answer_svc_status(qsn.data, asr)) + return 0; + break; + + case CINIT_QSN_GET_PID: + if(!answer_svc_pid(qsn.data, asr)) + return 0; + break; + + case CINIT_QSN_SVC_DISABLE: + if(!answer_svc_disable(qsn.data, asr)) + return 0; + break; + + /* + * FIXME: stopped here case CINIT_MSG_SVC_ENABLE: + * if(!answer_svc_enable(qsn.data, asr)) return 0; break; + */ + + /* + * Unknown command: should not happen :-) + */ + default: + return 0; + break; + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/core/build_argv.c b/software/cinit/browse_source/cinit-0.3pre18/src/core/build_argv.c new file mode 100644 index 00000000..89d50626 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/core/build_argv.c @@ -0,0 +1,193 @@ + +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * Build **argv for execution in cinit way: + * 1. check whether cmd is a valid executable + * 2. try to read cmd.params and write parameters + * 3. try to read cmd.env and setup environment + * + * Returns: + * BA_OK: Everything went well, you can use the struct + * BA_NOTFOUND: Binary executable is not available + * BA_PARAMS: Reading the parameters failed (ignoring non-existence!) + * BA_ENV: Reading the environment failed (same as above) + * BA_OTHER: Other error + */ + +#include /* open() */ +#include /* *alloc() */ +#include /* readlink */ +#include /* errno */ +#include /* PATH_MAX */ +#include /* NULL */ +#include /* strchr */ +#include /* stat() */ + +#include "intern.h" +#include "build_argv.h" + + /* + * char *basename: something we should execute + * (*basename) + ".params" will be added as parameters + * (*basename) + ".env" will be added as environment + */ + +int cinit_build_argv(char *basename, struct ba_argv *bav) +{ + int tmp; + int argc; + char pathtmp[PATH_MAX + 1]; + char *sbuf = NULL; + char *p; + + /* + * sane values + */ + bav->argv = NULL; + bav->envp = NULL; + + /*********************************************************************** + * Try to get realname (for links) + */ + if((tmp = readlink(basename, pathtmp, PATH_MAX)) == -1) { + /* + * nothing there? + */ + if(errno == ENOENT) { + return BA_E_NOTFOUND; + } + if(errno != EINVAL) { + return BA_E_OTHER; + } + tmp = strlen(basename); + strncpy(pathtmp, basename, tmp); + } + pathtmp[tmp] = '\0'; + ++tmp; /* the byte to add to memory for \0; neither + * readlink nor strlen count the \0 */ + + /*********************************************************************** + * prepare argv0 + */ + bav->argv = malloc(sizeof(char *)); + if(bav->argv == NULL) + return BA_E_MEM; + + *bav->argv = malloc(tmp); + if(*(bav->argv) == NULL) + return BA_E_MEM; + + strncpy(*(bav->argv), pathtmp, tmp); + + /********************** read params *********************/ + /* + * FIXME check bounds! + */ + strcpy(pathtmp, basename); + strcat(pathtmp, C_PARAMS); + /* + * ORC_ERR_NONEXISTENT: Ok, have sbuf set to NULL ORC_OK: Ok, have a filled + * buffer (perhaps NULL, too) other: Error, print errno + */ + tmp = openreadclose(pathtmp, &sbuf); + + if(tmp != ORC_ERR_NONEXISTENT && tmp != ORC_OK) { + print_errno(pathtmp); + return BA_E_PARAMS; + } + + sbuf = strip_final_newline(sbuf); + + /*********************************************************************** + * Now split the string, converting \n to \0 + */ + argc = 1; /* argv0 */ + while(sbuf != NULL) { + p = strchr(sbuf, '\n'); + bav->argv = realloc(bav->argv, sizeof(char *) * (argc + 1)); + + if(bav->argv == NULL) + return BA_E_MEM; + bav->argv[argc] = sbuf; /* here begins the current argument */ + + if(p != NULL) { /* found another \n */ + *p = '\0'; + sbuf = p + 1; + } else { /* end of string */ + sbuf = NULL; + } + + ++argc; + } + + /************ close argv list **************/ + bav->argv = realloc(bav->argv, sizeof(char *) * (argc + 1)); + if(bav->argv == NULL) + return BA_E_MEM; + bav->argv[argc] = NULL; /* terminate argv list */ + + /********************** read environment *********************/ + strcpy(pathtmp, basename); + strcat(pathtmp, C_ENV); + + tmp = argc = 0; + sbuf = NULL; + + tmp = openreadclose(pathtmp, &sbuf); + + if(tmp != ORC_ERR_NONEXISTENT && tmp != ORC_OK) { + print_errno(pathtmp); + return BA_E_PARAMS; + } + + sbuf = strip_final_newline(sbuf); + + /************** build environment string **************/ + argc = 0; + while(sbuf != NULL) { + p = strchr(sbuf, '\n'); + + bav->envp = realloc(bav->envp, sizeof(char *) * (argc + 1)); + if(bav->envp == NULL) + return BA_E_MEM; + + bav->envp[argc] = sbuf; + + /* + * if we found \n + */ + if(p != NULL) { + *p = '\0'; + sbuf = p + 1; + } else { + sbuf = NULL; + } + ++argc; + } + + /************ close env list **************/ + bav->envp = realloc(bav->envp, sizeof(char *) * (argc + 1)); + if(bav->envp == NULL) { + return BA_E_MEM; + } + bav->envp[argc] = NULL; + + return BA_OK; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/core/cinit.c b/software/cinit/browse_source/cinit-0.3pre18/src/core/cinit.c new file mode 100644 index 00000000..eb214502 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/core/cinit.c @@ -0,0 +1,127 @@ +/******************************************************************************* + * + * 2005-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * The main file + * + */ + +#include /* getpid,chdir */ +#include /* str(ncmp,len,cpy,cat) */ +#include /* perror */ +#include /* malloc */ +#include /* struct sigaction */ + +#include "intern.h" /* general things */ +#include "messages.h" /* messages */ +#include "ipc.h" /* general ipc methods */ +#include "svc-intern.h" /* gen_svc_tree */ +#include "signals.h" /* signals used by cinit */ + +struct listitem *svc_list = NULL; /* services in a dependency tree */ +struct dep *deps_pending = NULL; /* the first services to be started */ +int svc_exited; /* did some service exit? */ + +struct sigaction sigstages[SIGSTAGE_END][SIGCINIT_END]; +int cinit_global_signals[SIGCINIT_END]; + +int main(int argc, char **argv) +{ + char *initdir = CINIT_INIT; /* default init dir */ + + /* + * Is this really needed? pid_t cpid; + * + * if(cpid != 1) { mini_printf(CINIT_VERSION,2); mini_printf(MSG_USAGE,2); + * return 0; } + */ + + /* Bootup "logo" */ + mini_printf(MSG_BOOTING, 1); mini_printf(initdir, 1); mini_printf("\n", 1); + + /* Should we start a profile? */ + while(argc > 1) { + if(!strncmp(PROFILE, argv[argc - 1], strlen(PROFILE))) { + initdir = malloc(strlen(CINIT_SVCDIR) + + strlen(&argv[argc - 1][strlen(PROFILE)]) + 2); + if(initdir == NULL) { + panic(); + } + strcpy(initdir, CINIT_SVCDIR); + strcat(initdir, SLASH); + strcat(initdir, &argv[argc - 1][strlen(PROFILE)]); + break; + } + --argc; + } + + /* no configuration? - panic! */ + if(chdir(initdir) == -1) { + print_errno(initdir); + panic(); + } + + /* initialize communication (IPC) */ + if(!cinit_ipc_init()) panic(); + + /* Init signal handler */ + signal_init_map(sigstages, cinit_global_signals); + set_signals(SIGSTAGE_DAEMON); + + /* build service dependency tree */ + if(!gen_svc_tree(initdir)) panic(); + + /* unused now, free if allocated */ + if(strcmp(initdir, CINIT_INIT)) free(initdir); + + /* FIXME: what todo? + * change to /, so applications have that as cwd, too Is that really + * seneful? Does that help any application? If not, just for looking nice, + * that's not a reason to enable it. if(chdir(SLASH) == -1) { + * print_errno(SLASH); panic(); } + */ + + /* the main startup routine */ + if(!tree_exec(deps_pending)) panic(); + + /* listen to commands after startup */ + while(1) { + /* react on service changes (=process exited) */ + if(svc_exited) svc_status_changed(deps_pending); + + /* handle the changes */ + if(deps_pending) svc_handle_pending(deps_pending); + + /* listen until we get a message or get interrupted */ + cinit_ipc_listen(); + + /* + * check dependency list: perhaps we need to restart something + */ + /* + * implement in cinit-0.3pre14/5 + */ + + // tree_exec(deps_pending); + // reuse tree_exec()? + // if(dep) { svc_start() .. ? + } + + return 0; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/core/do_reboot.c b/software/cinit/browse_source/cinit-0.3pre18/src/core/do_reboot.c new file mode 100644 index 00000000..b9a3b8a0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/core/do_reboot.c @@ -0,0 +1,93 @@ + +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Reboot: includes shutdown, reboot and poweroff + */ + +#include /* kill() */ +#include /* exit */ + +#include "signals.h" /* signal handling */ +#include "reboot.h" /* cinit_poweroff&co */ +#include "messages.h" /* messages */ +#include "svc-intern.h" /* shutdown_services */ +#include "intern.h" /* many functions */ +#include "ipc.h" /* disable ipc */ + +void do_reboot(int signal) +{ + /* + * do not listen to client requests anymore + * and tell the user what happens + */ + LOG(MSG_SHUTDOWN_START); + cinit_ipc_destroy(); + set_signals(SIGSTAGE_REBOOT); + + /* + * shutdown all services: take care about the dependency tree + */ + LOG(MSG_SHUTDOWN_SVC); + shutdown_services(svc_list); + + /* + * now: all services are down, let's kill all other processes + */ + LOG(MSG_SHUTDOWN_TERM); + if(kill(-1, SIGTERM) == -1) { + print_errno(MSG_TERMKILL); + } + + sleep_before_kill(); + + LOG(MSG_SHUTDOWN_KILL); + if(kill(-1, SIGKILL) == -1) { + print_errno(MSG_KILLBILL); + } + + /* + * Execute the last command + */ + LOG(MSG_SHUTDOWN_LAST); + execute_and_wait(CINIT_LAST); + + /* + * do what we really wanted to do + */ + switch (signal) { + case SIGTERM: /* power off */ + LOG(MSG_POWER_OFF); + cinit_poweroff(); + break; + case SIGHUP: /* reboot */ + LOG(MSG_REBOOT); + cinit_reboot(); + break; + case SIGUSR1: /* halt */ + LOG(MSG_HALT); + cinit_halt(); + break; + } + /* + * FIXME: should we exit? + */ + _exit(0); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/core/panic.c b/software/cinit/browse_source/cinit-0.3pre18/src/core/panic.c new file mode 100644 index 00000000..16d6ed11 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/core/panic.c @@ -0,0 +1,50 @@ + +/******************************************************************************* + * + * 2005-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Execute something + */ + +#include /* execv */ + +#include "intern.h" +#include "messages.h" + +void panic(void) +{ + char *nargv[2]; + + if(execute_and_wait(CINIT_PANIC)) + _exit(0); + + /*********************************************************************** + * In case nothing helps, try to execute something that is always there. + * (conf/c_desaster) + */ + nargv[0] = C_DESASTER; + nargv[1] = NULL; + + if(execv(nargv[0], nargv) == -1) { + print_errno(MSG_FATAL_PANIC); + } + + /* We tried everything possible, die now. */ + _exit(1); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/core/set_signals.c b/software/cinit/browse_source/cinit-0.3pre18/src/core/set_signals.c new file mode 100644 index 00000000..41ccfc8c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/core/set_signals.c @@ -0,0 +1,65 @@ + +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Set signal handlers + */ + +#include /* sigaction, sigemtpyset */ +#include /* NULL */ + +//#include "intern.h" /* defines */ +//#include "reboot.h" /* reboot related */ +#include "signals.h" /* reboot related */ + +void set_signals(int stage) +{ + int i; + + for(i = 0; i < SIGCINIT_END; i++) { + sigaction(cinit_global_signals[i], &sigstages[stage][i], NULL); /* what + * todo + * when + * a + * child + * exited + */ + } + +// struct sigaction sa; + // sigemptyset(&sa.sa_mask); /* no other signals should be blocked */ + // sa.sa_flags = 0; +// if(action == ACT_SERV) { +// sa.sa_handler = sig_child; +// sa.sa_flags = SA_NOCLDSTOP; +// } else { +// sa.sa_handler = SIG_DFL; +// } + +// sigaction(SIGCHLD,&sa,NULL); /* what todo when a child exited */ + +// sa.sa_flags = 0; /* reset flags */ +// if(action == ACT_SERV) { +// sa.sa_handler = do_reboot; +// } +// sigaction(SIG_CINIT_HALT, &sa, NULL); /* halt */ +// sigaction(SIG_CINIT_POWEROFF, &sa, NULL); /* poweroff */ +// sigaction(SIG_CINIT_REBOOT, &sa, NULL); /* reboot */ +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/core/sig_child.c b/software/cinit/browse_source/cinit-0.3pre18/src/core/sig_child.c new file mode 100644 index 00000000..08f15c02 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/core/sig_child.c @@ -0,0 +1,34 @@ +/******************************************************************************* + * + * 2005-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * The child handler (may *not* exec other functions!) + * + */ + +#include "svc-intern.h" /* marking */ + +/*********************************************************************** + * sig_child: (c)collect the children + */ +void sig_child(int tmp) +{ + tmp = 2; /* FIXME: how to tell stupid gcc that tmp is a must? */ + svc_exited = 1; /* FIXME: catch possible race conditions in svc_status_changed() */ +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/core/signal_init_map.c b/software/cinit/browse_source/cinit-0.3pre18/src/core/signal_init_map.c new file mode 100644 index 00000000..a07395f6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/core/signal_init_map.c @@ -0,0 +1,66 @@ + +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Define signal handlers / actions for the different internal stages + */ + +#include +#include "signals.h" +#include "reboot.h" +#include "intern.h" + +void signal_init_map(struct sigaction sigstages[SIGSTAGE_END][SIGCINIT_END], + int cinit_signals[SIGCINIT_END]) +{ + /* + * First map signals to index + */ + cinit_signals[SIGCINIT_HALT] = SIGUSR1; + cinit_signals[SIGCINIT_POWEROFF] = SIGTERM; + cinit_signals[SIGCINIT_REBOOT] = SIGHUP; + cinit_signals[SIGCINIT_CHILD] = SIGCHLD; + + /* + * Then add the actions for daemon + */ + sigstages[SIGSTAGE_DAEMON][SIGCINIT_HALT].sa_handler = do_reboot; + sigstages[SIGSTAGE_DAEMON][SIGCINIT_POWEROFF].sa_handler = do_reboot; + sigstages[SIGSTAGE_DAEMON][SIGCINIT_REBOOT].sa_handler = do_reboot; + + sigstages[SIGSTAGE_DAEMON][SIGCINIT_CHILD].sa_handler = sig_child; + sigstages[SIGSTAGE_DAEMON][SIGCINIT_CHILD].sa_flags = SA_NOCLDSTOP; + + /* + * Then add the actions for client (=fork> + */ + sigstages[SIGSTAGE_CLIENT][SIGCINIT_HALT].sa_handler = SIG_DFL; + sigstages[SIGSTAGE_CLIENT][SIGCINIT_POWEROFF].sa_handler = SIG_DFL; + sigstages[SIGSTAGE_CLIENT][SIGCINIT_REBOOT].sa_handler = SIG_DFL; + sigstages[SIGSTAGE_CLIENT][SIGCINIT_CHILD].sa_handler = SIG_DFL; + + /* + * Then add the actions for shutdown + */ + sigstages[SIGSTAGE_REBOOT][SIGCINIT_HALT].sa_handler = SIG_IGN; + sigstages[SIGSTAGE_REBOOT][SIGCINIT_POWEROFF].sa_handler = SIG_IGN; + sigstages[SIGSTAGE_REBOOT][SIGCINIT_REBOOT].sa_handler = SIG_IGN; + sigstages[SIGSTAGE_REBOOT][SIGCINIT_CHILD].sa_handler = SIG_IGN; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/generic/execute_and_wait.c b/software/cinit/browse_source/cinit-0.3pre18/src/generic/execute_and_wait.c new file mode 100644 index 00000000..3816e5c5 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/generic/execute_and_wait.c @@ -0,0 +1,52 @@ + +/*********************************************************************** + * + * 2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * Execute something, but fork() before + * + */ + +#include /* pid_t */ +#include /* waitpid */ +#include /* fork */ + +#include "messages.h" /* MSG_* */ +#include "intern.h" /* print_errno, execute_sth */ + +int execute_and_wait(char *svc) +{ + pid_t pid; + int status; + + /* + * fork + */ + pid = fork(); + + if(pid == -1) { + print_errno(MSG_ERR_FORK); + return 0; + } + + /* + * exec / child + */ + if(pid == 0) { + execute_sth(svc); /* exits itself */ + } + + /* + * wait / parent + */ + waitpid(pid, &status, 0); + + if(WIFEXITED(status)) { + if(WEXITSTATUS(status) == 0) { + return 1; + } + } + return 0; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/generic/execute_sth.c b/software/cinit/browse_source/cinit-0.3pre18/src/generic/execute_sth.c new file mode 100644 index 00000000..79197769 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/generic/execute_sth.c @@ -0,0 +1,41 @@ + +/*********************************************************************** + * + * 2006-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * Executes something: replaces us + */ + +#include /* _exit */ + +#include "intern.h" +#include "build_argv.h" +#include "messages.h" /* D_PRINTF */ + +void execute_sth(char *basename) +{ + int tmp; + struct ba_argv bav; + + tmp = cinit_build_argv(basename, &bav); + if((tmp = cinit_build_argv(basename, &bav)) != BA_OK) { + if(tmp != BA_E_MEM) { /* do not print something on memory errors */ + print_errno(basename); + } + _exit(1); + } + + /* + * tell the user what we execute + */ + mini_printf(MSG_INTRO_EXEC, 1); + mini_printf((bav.argv)[0], 1); + mini_printf("\n", 1); + + execve((bav.argv)[0], bav.argv, bav.envp); + print_errno(basename); + _exit(1); /* simply exit non-zero. That's enough for + * cinit to recognize it as faulty */ +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/generic/file_exists.c b/software/cinit/browse_source/cinit-0.3pre18/src/generic/file_exists.c new file mode 100644 index 00000000..72294eba --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/generic/file_exists.c @@ -0,0 +1,66 @@ + +/*********************************************************************** + * + * 2006-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * check whether file exists and is a file + */ + +#include /* errno */ +#include /* stat */ +#include /* NULL */ + +#include "intern.h" /* print_errno() */ +#include "svc-intern.h" /* svc_report_status() */ +#include "messages.h" /* messages.. */ + +int file_exists(char *filename) +{ + struct stat buf; + + /* + * check: - is it a link? if so, is it broken? report! - is it non existent? + * -> return non-existent - is it existent, but not a regular file? report! + */ + if(lstat(filename, &buf) == -1) { /* lstat fails? */ + if(errno == ENOENT) { + /* + * FIXME: remove later + */ + printf("%s is not existing! => ok, most likely\n", filename); + return FE_NOT; + } else { + mini_printf("anderer fehler.\n", 1); + print_errno(filename); + return FE_ERR; + } + } else { + if(S_ISLNK(buf.st_mode)) { /* is a link */ + /* + * check link destination + */ + if(stat(filename, &buf) == -1) { /* do real stat(): */ + if(errno == ENOENT) { + svc_report_status(filename, MSG_BROKENLINK, NULL); + return FE_NOLINK; + } else { + /* + * FIXME: MSG_*, ?? + */ + mini_printf("anderer fehler.\n", 1); + print_errno(filename); + return FE_ERR; + } + } + } + } /* caught all stat() errors */ + + if(!S_ISREG(buf.st_mode)) { + svc_report_status(filename, MSG_NONREGULAR, NULL); + return FE_OTHER; + } + + return FE_FILE; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/generic/mini_printf.c b/software/cinit/browse_source/cinit-0.3pre18/src/generic/mini_printf.c new file mode 100644 index 00000000..752a2187 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/generic/mini_printf.c @@ -0,0 +1,37 @@ +/******************************************************************************* + * + * 2005-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Print the world! + * + */ + +#include + +void mini_printf(char *str, int fd) +{ + char *p; + + if(str == NULL) return; + + p = str; + while(*p) p++; + + write(fd, str, (size_t) (p - str)); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/generic/openreadclose.c b/software/cinit/browse_source/cinit-0.3pre18/src/generic/openreadclose.c new file mode 100644 index 00000000..e9d65961 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/generic/openreadclose.c @@ -0,0 +1,77 @@ + +/*********************************************************************** + * + * 2006 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * read a file + * + */ + +#include /* open, read, close */ +#include /* strncpy */ +#include /* realloc */ +#include /* errno */ +#include /* NULL */ +#include /* open */ +#include "intern.h" /* ORC_* */ + +int openreadclose(char *filename, char **where) +{ + + int tmp; + int cnt; + int fd; + char buf[512]; + + *where = NULL; + + /* + * what a wonderful loop + */ + while((fd = open(filename, O_RDONLY)) == -1) { + if(errno == ENOENT) + return ORC_ERR_NONEXISTENT; + if(errno != EINTR) + return ORC_ERR_OPEN; + } + + cnt = 0; + while(1) { + tmp = read(fd, buf, 512); + + if(tmp == -1) { + if(errno == EINTR) + continue; + else + return ORC_ERR_READ; + } else if(tmp == 0) { + break; + } + + cnt += tmp; + *where = realloc(*where, cnt + 1); + if(*where == NULL) + return ORC_ERR_MEM; + + /* + * FIXME check correctness of copied buffer... and get some sleep..soon, + * very soon! + */ + strncpy(&(*where)[cnt - tmp], buf, tmp); + } + + while((fd = close(fd)) == -1) { + if(errno == EINTR) + continue; + return ORC_ERR_CLOSE; + } + + /* + * terminate string! + */ + (*where)[cnt] = '\0'; + + return ORC_OK; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/generic/path_absolute.c b/software/cinit/browse_source/cinit-0.3pre18/src/generic/path_absolute.c new file mode 100644 index 00000000..9bafdc7d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/generic/path_absolute.c @@ -0,0 +1,56 @@ + +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * create an absulte path + * + */ + +#include /* chdir(),getcwd */ +#include /* PATH_MAX */ +#include "intern.h" /* print_errno */ +#include "messages.h" /* messages */ + +int path_absolute(char *relpath, char *newpath, size_t size) +{ + char oldpath[PATH_MAX + 1]; + + if(!getcwd(oldpath, PATH_MAX + 1)) { + print_errno(MSG_GETCWD); + return 0; + } + + if(chdir(relpath) == -1) { + print_errno(relpath); + return 0; + } + + if(!getcwd(newpath, size)) { + print_errno(relpath); + return 0; + } + + if(chdir(oldpath) == -1) { + print_errno(oldpath); + return 0; + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/generic/path_append.c b/software/cinit/browse_source/cinit-0.3pre18/src/generic/path_append.c new file mode 100644 index 00000000..084cc4c1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/generic/path_append.c @@ -0,0 +1,31 @@ + +/*********************************************************************** + * + * 2006 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * create path to needs + */ + +#include /* strlen */ +#include /* PATH_MAX */ + +#include "intern.h" /* mini_printf, PD_ERR */ + +int path_append(char *path, char *append) +{ + size_t end = strlen(path); + + if(strcmp(&path[end - 1], SLASH)) { + if((end + strlen(SLASH) + strlen(append)) > PATH_MAX) + return 0; + strcat(path, SLASH); + } else { + if((end + strlen(append)) > PATH_MAX) + return 0; + } + strcat(path, append); + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/generic/print_errno.c b/software/cinit/browse_source/cinit-0.3pre18/src/generic/print_errno.c new file mode 100644 index 00000000..9aeab78f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/generic/print_errno.c @@ -0,0 +1,25 @@ + +/*********************************************************************** + * + * stolen from tcpserver_blocker + * + * Author: Nico Schottelius + * Date: 2006-08-24 + * + * Print the error found in errno + */ + +#include /* strerror */ +#include /* errno */ + +#include "intern.h" /* mini_printf, PD_ERR */ + +void print_errno(char *msg) +{ + if(msg) { + mini_printf(msg, FD_ERR); + mini_printf(": ", FD_ERR); + } + mini_printf(strerror(errno), FD_ERR); + mini_printf("\n", FD_ERR); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/generic/sleep_before_kill.c b/software/cinit/browse_source/cinit-0.3pre18/src/generic/sleep_before_kill.c new file mode 100644 index 00000000..d32ca274 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/generic/sleep_before_kill.c @@ -0,0 +1,56 @@ + +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Let's sleep a little bit + * + */ + +#include /* nanosleep */ +#include /* strtol() */ +#include /* errno */ + +#include "intern.h" /* print_errno */ +#include "messages.h" /* messages */ + +void sleep_before_kill() +{ + char *content; + int tmp; + struct timespec ts; + + if(openreadclose(CINIT_SLEEPFILE, &content) == ORC_OK) { + errno = 0; + tmp = strtol(content, NULL, 10); + if(errno != 0) + tmp = SLEEP_KILL; + free(content); + } else { + mini_printf(MSG_BUILTIN_SLEEP, 1); + tmp = SLEEP_KILL; + } + + ts.tv_sec = tmp; + ts.tv_nsec = 0; + + if(nanosleep(&ts, NULL) == -1) { + print_errno(MSG_ERR_SLEEP); + } +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/generic/strip_final_newline.c b/software/cinit/browse_source/cinit-0.3pre18/src/generic/strip_final_newline.c new file mode 100644 index 00000000..924a23b6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/generic/strip_final_newline.c @@ -0,0 +1,36 @@ + +/*********************************************************************** + * + * 2006 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * If the last character is \n, shrink the memory and remove it + * + */ + +#include /* NULL */ +#include /* strchr */ +#include /* alloc */ + +char *strip_final_newline(char *str) +{ + char *p; + + /* + * don't get fooled by bad pointers + */ + if(str == NULL) { + return NULL; + } + + p = strrchr(str, '\n'); + if(p) { + if(*(p + 1) == '\0') { + *p = '\0'; /* DO NOT FORGET TO TERMINATE STRING */ + str = realloc(str, (p - str)); + } + } + + return str; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/generic/usage.c b/software/cinit/browse_source/cinit-0.3pre18/src/generic/usage.c new file mode 100644 index 00000000..5b4a26d7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/generic/usage.c @@ -0,0 +1,24 @@ + +/*********************************************************************** + * + * 2005-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * usage: tell the world what we want - seriously no capitalism + * usage: tell the user what's wrong and a help text + * + */ + +#include /* _exit() */ +#include "intern.h" /* mini_printf */ + +void usage(char *banner, char *text) +{ + /* + * print banner + error message + */ + mini_printf(banner, 1); + mini_printf(text, 1); + _exit(1); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/include/build_argv.h b/software/cinit/browse_source/cinit-0.3pre18/src/include/build_argv.h new file mode 100644 index 00000000..18b7bf5b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/include/build_argv.h @@ -0,0 +1,52 @@ +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * build **argv + */ + +#ifndef CINIT_BA_HEADER +#define CINIT_BA_HEADER + +/***************************************************************************** + * Defines: return values + */ +enum { + BA_OK, + BA_E_NOTFOUND, + BA_E_PARAMS, + BA_E_ENV, + BA_E_MEM, + BA_E_OTHER +}; + +/***************************************************************************** + * Structures + */ +struct ba_argv { + char **argv; + char **envp; +}; + +/***************************************************************************** + * Functions + */ +int cinit_build_argv(char *basename, struct ba_argv *bav); + +#endif diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/include/cinit.h b/software/cinit/browse_source/cinit-0.3pre18/src/include/cinit.h new file mode 100644 index 00000000..2f7421b6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/include/cinit.h @@ -0,0 +1,112 @@ +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Header file for external programs (in theory) + */ + +#ifndef __CINIT_EXTERNAL_HEADER +#define __CINIT_EXTERNAL_HEADER + +/* includes */ +#include /* required for functions */ +#include /* PATH_MAX */ +#include /* pid_t */ + +/* limits */ +#define CINIT_DATA_LEN (PATH_MAX+1) + +/* + * structures: independent of the ipc code! + */ + +/* messages from the client */ +struct cinit_question { + uint32_t cmd; + uint32_t opt; + char data[CINIT_DATA_LEN]; +}; + +/* messages from cinit */ +struct cinit_answer { + uint32_t ret; + uint32_t opt; + char data[CINIT_DATA_LEN]; +}; + +/*********************************************************************** + * codes for messages + */ +enum { /* questions */ + CINIT_QSN_GET_STATUS = 0x01, /* status of a service */ + CINIT_QSN_GET_PID = 0x02, /* get pid of a service */ + CINIT_QSN_GET_VERSION = 0x04, /* version of cinit */ + CINIT_QSN_SVC_DISABLE = 0x08, /* service: stop */ + CINIT_QSN_SVC_ENABLE = 0x10, /* service: start */ + CINIT_QSN_SVC_NEEDS = 0x20, /* in/exclude needs */ + CINIT_QSN_SVC_WANTS = 0x40, /* in/exclude wants */ + CINIT_QSN_SVC_LIST = 0x80, /* list services */ + + CINIT_QSN_QUESTION_END = 0xffff /* last message */ +}; + +enum { /* answers */ + CINIT_ASW_IPC_ERROR = 0x00, /* bad error */ + CINIT_ASW_OK = 0x01, /* general ok value */ + CINIT_ASW_SVC_UNKNOWN = 0x04, /* Services is not known */ + CINIT_ASW_SVC_DISABLED = 0x08, /* service: stop */ + CINIT_ASW_SVC_ENABLED = 0x10, /* service: start */ + CINIT_ASW_SVC_ERR = 0x20, /* in/excluded needs */ + CINIT_ASW_SVC_WANTS = 0x40, /* in/excluded wants */ + CINIT_ASW_SVC_NEEDS = 0x80, /* in/excluded needs */ + CINIT_ASW_ERR_INTERN = 0x100, /* cinit internal error */ + + CINIT_ASW_ANSWER_END = 0xffff /* last message */ +}; + +enum cinit_svc_flags { + CINIT_CMD_SVC_WANTS = 'w', + CINIT_CMD_SVC_NEEDS = 'n' +}; + +struct cinit_msg_msg { + int code; + char *msg; +}; + +//struct cinit_msg_msg cinit_codes2messages[] = { + +//} + +/* functions */ +int cinit_send_to(struct cinit_question *, struct cinit_answer *); +void cinit_cp_data(char data[], char *src); + +void cinit_prepare_comm(struct cinit_question *qsn, + struct cinit_answer *asr, + uint32_t cmd); + +uint32_t cinit_flag_to_uint32_t(char *); +uint32_t cinit_get_version(char *); +uint32_t cinit_svc_disable(char *svc, uint32_t flag); +uint32_t cinit_svc_enable(char *svc, uint32_t flag); +uint32_t cinit_svc_get_pid(char *, pid_t *status); +uint32_t cinit_svc_get_status(char *, uint32_t *); + +#endif diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/include/cmd.h b/software/cinit/browse_source/cinit-0.3pre18/src/include/cmd.h new file mode 100644 index 00000000..eb29be93 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/include/cmd.h @@ -0,0 +1,53 @@ +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Header file for the cmd (cinit management) + */ + +#ifndef CINIT_CMD_HEADER +#define CINIT_CMD_HEADER + +#define CMD_USAGE "cmd - cinit management\n\n" \ + "cmd -[de [nw]] -[ps] [service] -[hvV]\n\n" \ + " -d: disable service\n" \ + " n: without needs\n" \ + " Skip needs when en/disabling\n\n"\ + " w: without wants\n" \ + " Skip wants when en/disabling\n" \ + " -e: enable service\n" \ + " see above\n" \ + " -h: get help\n" \ + " this messages" \ + " -p: get process id (pid)\n" \ + " of specified service\n" \ + " -s: get status\n" \ + " of specified service\n" \ + " -v: get version\n" \ + " of cinit\n" \ + " -V: get version\n" \ + " of cmd\n" \ + "" + +#define CMD_OPTIONS "e::d::hpsvV" + +#define MSG_KILL "kill()" +#define CMD_VERSION "0.2" + +#endif diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/include/intern.h b/software/cinit/browse_source/cinit-0.3pre18/src/include/intern.h new file mode 100644 index 00000000..b214c9cc --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/include/intern.h @@ -0,0 +1,125 @@ +/******************************************************************************* + * + * 2005-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * internal stuff only :-) + * + */ + + +#ifndef _CINIT_INTERN_H +#define _CINIT_INTERN_H + +/* includes */ +#include /* pid_t */ +#include "config.h" /* paths, socket options, etc. */ +#include "cinit.h" /* structures: answer / question */ + +/*********************************************************************** + * Defines + */ +#define SLASH "/" +#define CINIT_CONFDIR CINIT_DIR SLASH C_CONFDIR +#define CINIT_PANIC CINIT_CONFDIR SLASH C_PANIC + +enum { /* FIXME: there are some default defines somewhere for that */ + FD_IN=0, + FD_OUT=1, + FD_ERR=2 +}; + +enum { /* returns of openreadclose */ + ORC_OK, /* everything went fine */ + ORC_ERR_NONEXISTENT, /* file does not exist */ + ORC_ERR_OPEN, /* error opening the file */ + ORC_ERR_READ, + ORC_ERR_CLOSE, + ORC_ERR_MEM +}; + +/* values for execute_sth: + * STRICT: print and error, if .../on does not exist + * NOSTRICT: no .../on is fine + */ +enum { + EXEC_STRICT, + EXEC_NOSTRICT +}; + +enum { + FE_FILE, /* file exists and is a file */ + FE_OTHER, /* file exists, but is no file */ + FE_NOT, /* file does not exist */ + FE_NOLINK, /* file is a broken symbolic link*/ + FE_ERR /* some error occured */ +}; + +/*********************************************************************** + * Paths + */ +#define CINIT_SVCDIR CINIT_DIR SLASH SVCDIR +#define CINIT_INIT CINIT_SVCDIR SLASH C_INIT +#define CINIT_TMNT CINIT_DIR SLASH C_TMP +#define CINIT_SOCK CINIT_TMNT SLASH C_SOCK +#define CINIT_BIN PREFIX SLASH "sbin" SLASH "cinit" + +#define CINIT_CONFDIR CINIT_DIR SLASH C_CONFDIR +#define CINIT_PANIC CINIT_CONFDIR SLASH C_PANIC +#define CINIT_LAST CINIT_CONFDIR SLASH C_LAST +#define CINIT_SLEEPFILE CINIT_CONFDIR SLASH SLEEP_BEFORE_KILL + +/* functions (used by server and client) */ +void mini_printf(char *str, int fd); +//void usage(char *banner, char *stext); + +/* core functions */ +void panic(void); +void sig_child(int signal); + +/* client / message functions */ +//int msg_svc_on_off(char *svc, char action); +//int msg_change_status(char *svc, char status, pid_t pid); +//int begin_msg(char cmd); + +/* client functions */ +pid_t respawn_svc(char *abspath); +char **read_file(char *file); +void sig_terminate(int signal); + +/* communication */ +int read_command(struct cinit_question, struct cinit_answer *); +int answer_svc_status(char *, struct cinit_answer *); +int answer_svc_pid(char *, struct cinit_answer *); +int answer_version(struct cinit_answer *); +int answer_svc_disable(char *, struct cinit_answer *); + +/* generic */ +void execute_sth(char *basename); +int execute_and_wait(char *svc); +int path_append(char *path, char *append); +int path_absolute(char *relpath, char *buf, size_t size); +int openreadclose(char *filename, char **where); +char *strip_final_newline(char *str); +int file_exists(char *filename); +void sleep_before_kill(); + +/* util */ +void print_errno(char *text); + +#endif /* INTERN */ diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/include/ipc.h b/software/cinit/browse_source/cinit-0.3pre18/src/include/ipc.h new file mode 100644 index 00000000..e06bd734 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/include/ipc.h @@ -0,0 +1,55 @@ +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Prototypes for ipc handler + */ + +#ifndef CINIT_IPC_HEADER +#define CINIT_IPC_HEADER + +/* FIXME: change to cinit/types.h later */ +#include "cinit.h" + +/***************************************************************************** + * Functions: in server + */ +int cinit_ipc_init(void); /* init in init */ +int cinit_ipc_listen(void); /* listen in init */ +int cinit_ipc_sclose(void); /* fork of cinit come from outside! */ +int cinit_ipc_ssend(void *data); /* send to a client from the server */ +void cinit_ipc_destroy(void); /* destroy ipc handler in cinit */ + +/***************************************************************************** + * Functions: in clients + */ +int cinit_ipc_logon(void); /* logon to init */ + +int cinit_ipc_connect(void); /* connect to init */ + +int cinit_ipc_csend(struct cinit_question *); /* ask the server */ +int cinit_ipc_cread(struct cinit_answer *); /* read answer */ + +int cinit_ipc_logoff(void); /* logoff */ + +/***************************************************************************** + * Functions: shared + */ + +#endif diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/include/listing b/software/cinit/browse_source/cinit-0.3pre18/src/include/listing new file mode 100644 index 00000000..bccdad37 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/include/listing @@ -0,0 +1,8 @@ +include/intern.h +include/config.h +include/ipc.h +include/messages.h +include/os.h +include/reboot.h +include/signals.h +include/svc.h diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/include/messages.h b/software/cinit/browse_source/cinit-0.3pre18/src/include/messages.h new file mode 100644 index 00000000..53bf64bf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/include/messages.h @@ -0,0 +1,169 @@ +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * All messages + */ + +#ifndef _CINIT_MSG_H +#define _CINIT_MSG_H + +/* version */ +#define CINIT_VERSION "cinit-" VERSION +#define MSG_BOOTING CINIT_VERSION ": Booting from " + +#define MSG_DP ": " + +#define MSG_USAGE_1 ": fast executing, small and simple init " +#define MSG_USAGE_2 "with support for profiles\n" +#define MSG_USAGE_3 "\nError: cinit must be started as PID 1.\n" +#define MSG_USAGE MSG_USAGE_1 MSG_USAGE_2 MSG_USAGE_3 +#define MSG_ERR_FORK "fork" +#define MSG_ERR_IO "i/o" +#define MSG_ERR_OPEN "open" +#define MSG_ERR_PIPE "pipe" +#define MSG_ERR_READ "read" +#define MSG_ERR_EXECVE "execve" +#define MSG_ERR_ALLOC "memory allocation" +#define MSG_ERR_UMOUNT "umount" +#define MSG_ERR_MOUNT "mount" +#define MSG_NOT_DIR "not a directory" +#define MSG_CHDIR "chdir" +#define MSG_READLINK "readlink" +#define MSG_ERR_ADD_SVC "Adding service failed" +#define MSG_CMD_UNKNOWN "Unknown command" + +//#define MSG_ERR_DEPS "Too many dependencies" +//#define MSG_ERR_ACCEPT "accept" +//#define MSG_ERR_WAITPID "waitpid" +//#define MSG_ERR_POLL "poll" +//#define MSG_ERR_MODIFY "modify list failed" +//#define MSG_ERR_COMM "Communication failed" + +//#define MSG_ERR_LESS_ARGS "Too less arguments!" +//#define MSG_ERR_BAD_ARGS "Wrong arguments / parameter" +//#define MSG_ERR_ARGS_LEN "Wrong parameter length" + +#define LOG_SVC_STOPED "Service stoped" +#define LOG_SVC_ONCE "Started once" +#define LOG_SVC_RESPAWN "Respawns now" +//#define LOG_NEED_FAIL "One or more need failed" +//#define LOG_SVC_FAILED "Service already failed, not starting." +#define LOG_SVC_NOTEXIST "Service does not exist" + +#define MSG_EXEC_FAILED "Failed to execute " + +#define MSG_RESCUE "Switching to rescue mode ..." +#define MSG_UPDATE "Updating cinit ..." +#define MSG_HOT_REBOOT "Hot reboot in progress ..." + +#define MSG_SHOULD_NOT_HAPPEN "This should not happen, I do not know what todo!" + +/* DEBUG */ +#ifdef DEBUG +# include +# define D_PRINTF(x) ( printf("[%s:%d]: %s\n",__FILE__,__LINE__,x) ) +#else +# define D_PRINTF(x) if(0) {} +#endif + +/* macros */ +#define SERVICE_LOG(svc,message) { \ + mini_printf(svc,1); \ + mini_printf(MSG_DP,1); \ + mini_printf(message,1); \ + mini_printf("\n",1); \ +} +#define LOG(s) { \ + mini_printf(s,1); \ + mini_printf("\n",1); \ +} +#define P_START_SERVICE(name) { mini_printf(MSG_START_SVC,1); mini_printf(name,1); mini_printf("\n",1); } +#define P_EXEC_FAILED(name) { mini_printf(MSG_EXEC_FAILED,1); mini_printf(name,1); mini_printf("\n",1); } + +/* NEW (clean) Service status: Messages to the outside */ + +/* services: how they should be printed + * /etc/cinit/svc/long/name: started once + * /etc/cinit/svc/long/name: is respawning + * /etc/cinit/svc/long/name: FAILED (why it happened) + */ + +#define MSG_INTRO_CINIT "cinit:" +#define MSG_INTRO_SPACE MSG_INTRO_CINIT " " +#define MSG_INTRO_SVC MSG_INTRO_CINIT +#define MSG_INTRO_STOP MSG_INTRO_CINIT "stop: " +#define MSG_INTRO_EXEC MSG_INTRO_CINIT "exec: " + +/* FIXME: remove/append, but no intro! */ +#define MSG_INTRO_FAIL "FAILED " +#define MSG_INTRO_RESPAWN MSG_INTRO_CINIT "respawn: " +#define MSG_INTRO_OK MSG_INTRO_CINIT "ok: " + +#define MSG_SVC_FORK "fork() failed" +#define MSG_SVC_NEED_FAIL MSG_INTRO_FAIL "Needs failed for service" +#define MSG_SVC_FAIL MSG_INTRO_FAIL "Service failed!" + + +#define MSG_BUILTIN_SLEEP MSG_INTRO_STOP "Using built-in sleep" + +#define MSG_TREE_EXEC MSG_INTRO_SPACE "Execution of reverse service tree\n" + +/* general errors */ +#define MSG_GETCWD "Getcwd failed! Your system is most likely broken!" +#define MSG_FATAL_PANIC MSG_INTRO_SPACE "I tried everything, but even panic() failed: " +#define MSG_ERR_SLEEP MSG_INTRO_SPACE "Sleep did not succeed" +#define MSG_GETTIMEOFDAY MSG_INTRO_SPACE "gettimeofday() failed!" + +/* execution */ +//#define MSG_EXECUTING MSG_INTRO_EXEC + +/* stat() errors */ +#define MSG_NONREGULAR "Is not a regular file." +#define MSG_BROKENLINK "Is a broken link." + +/* Service messages */ +#define MSG_SVC_START "Starting... " +#define MSG_SVC_STOP "Stoping... " +#define MSG_SVC_RESTART "Restarted." +#define MSG_SVC_SLEEP "Sleeping before restart" +#define MSG_SVC_OK_ONCE "Started once." +#define MSG_SVC_OK_RESPAWN "Is respawning." + +/* Status messages */ +#define MSG_SHUTDOWN_START MSG_INTRO_STOP "\nBeginning the shutdown process..." +#define MSG_SHUTDOWN_SVC MSG_INTRO_STOP "Shutting down services now..." +#define MSG_SHUTDOWN_TERM MSG_INTRO_STOP "Terminating remaining processes..." +#define MSG_SHUTDOWN_KILL MSG_INTRO_STOP "Killing remaining processes..." +#define MSG_SHUTDOWN_LAST MSG_INTRO_STOP "Executing final service..." +#define MSG_POWER_OFF MSG_INTRO_STOP "Powering off..." +#define MSG_HALT MSG_INTRO_STOP "Halting system ..." +#define MSG_REBOOT MSG_INTRO_STOP "Rebooting ..." + +/* client messages */ +#define MSG_HALT_KILL "halt.kill" +#define MSG_REBOOT_KILL "reboot.kill" +#define MSG_POWEROFF_KILL "poweroff.kill" + + +/* reboot */ +#define MSG_TERMKILL MSG_INTRO_FAIL "SIGTERM" +#define MSG_KILLBILL MSG_INTRO_FAIL "SIGKILL" + +#endif /* _CINIT_MSG_H */ diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/include/os.h b/software/cinit/browse_source/cinit-0.3pre18/src/include/os.h new file mode 100644 index 00000000..d6173a83 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/include/os.h @@ -0,0 +1,34 @@ +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * os specific functions + */ + +#ifndef CINIT_OS_HEADER +#define CINIT_OS_HEADER + +/***************************************************************************** + * Functions + */ +void cinit_halt(void); +void cinit_poweroff(void); +void cinit_reboot(void); + +#endif diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/include/reboot.h b/software/cinit/browse_source/cinit-0.3pre18/src/include/reboot.h new file mode 100644 index 00000000..4e490bd7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/include/reboot.h @@ -0,0 +1,49 @@ +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * reboot specific functions + * + */ + +#ifndef CINIT_REBOOT_HEADER +#define CINIT_REBOOT_HEADER + +/***************************************************************************** + * the main reboot function + */ +void do_reboot(int signal); + + +/***************************************************************************** + * os specific functions + */ +void cinit_reboot(void); +void cinit_halt(void); +void cinit_poweroff(void); + + +/***************************************************************************** + * Functions: abstract do_reboot + */ +#define cinit_do_reboot() do_reboot(SIGHUP) +#define cinit_do_halt() do_reboot(SIGUSR1) +#define cinit_do_poweroff() do_reboot(SIGTERM) + +#endif diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/include/signals.h b/software/cinit/browse_source/cinit-0.3pre18/src/include/signals.h new file mode 100644 index 00000000..7c5e2e92 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/include/signals.h @@ -0,0 +1,61 @@ +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Define signals to use: needs signal.h to be included before. + */ + +#ifndef CINIT_SIGNALS_HEADER +#define CINIT_SIGNALS_HEADER + +#define SIG_CINIT_HALT SIGUSR1 +#define SIG_CINIT_POWEROFF SIGTERM +#define SIG_CINIT_REBOOT SIGHUP +#define SIG_CINIT_CHILD SIGCHLD + +enum { + SIGSTAGE_REBOOT, + SIGSTAGE_DAEMON, + SIGSTAGE_CLIENT, + SIGSTAGE_END +}; + +enum { + SIGCINIT_HALT, + SIGCINIT_POWEROFF, + SIGCINIT_REBOOT, + SIGCINIT_CHILD, + SIGCINIT_END +}; + +#include +struct cinit_signal_map { + int signal; + struct sigaction sigstages; +}; + + +void signal_init_map(struct sigaction sigstages[SIGSTAGE_END][SIGCINIT_END], int cinit_signals[SIGCINIT_END]); +void set_signals(int stage); + +/* global vars */ +extern int cinit_global_signals[SIGCINIT_END]; /* maps signal codes to index */ +extern struct sigaction sigstages[SIGSTAGE_END][SIGCINIT_END]; + +#endif diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/include/svc-intern.h b/software/cinit/browse_source/cinit-0.3pre18/src/include/svc-intern.h new file mode 100644 index 00000000..38d3bad0 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/include/svc-intern.h @@ -0,0 +1,108 @@ +/******************************************************************************* + * + * 2006-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Internal service specifics + * + */ + +#ifndef __CINIT_SVC_INTERN_H +#define __CINIT_SVC_INTERN_H + +/* includes */ +#include /* pid_t */ +#include /* int types */ +#include "config.h" /* paths, socket options, etc. */ +#include "cinit.h" /* LEN */ + +/* service tree item */ +struct listitem { + struct listitem *prev; /* previous item */ + struct listitem *next; /* next item */ + + char abs_path[CINIT_DATA_LEN]; /* name of service */ + uint32_t status; /* current status */ + int waitpid; /* result of last waitpid call */ + pid_t pid; /* pid of service / respawn watcher */ + time_t start; /* time the process was started last time */ + time_t exited; /* time the process exited */ + + + struct dep *wanted_by; /* list of services that want this service */ + struct dep *needed_by; /* list of services that need this service */ + + struct dep *wants; /* list of services that this service wants */ + struct dep *needs; /* list of services that this service needs */ + + struct listitem *changed; /* list of changed services */ +}; + +/* list of dependencies */ +struct dep { + struct dep *prev; + struct dep *next; + struct listitem *svc; +}; + +/* variables */ +extern struct dep *deps_pending; /* the services to handle */ +extern struct listitem *svc_list; /* the list of services */ +extern int svc_exited; /* mark change */ + +/* list functions */ +struct listitem *list_insert(char *path, uint32_t status); +int list_delete_byname(char *path); +int list_delete_bypointer(struct listitem *); +int list_modify(char *path, int new_status, pid_t new_pid); +struct listitem *list_search(char *path); +struct listitem *list_search_pid(pid_t pid); + +/* service */ +struct listitem *svc_create(char *svc); +struct listitem *gen_svc_tree(char *svc); +int check_add_deps(struct listitem *svc, int type); +void dep_entry_add(struct dep **list, struct dep *new); +struct dep *dep_entry_del(struct dep *del); +int tree_exec(struct dep *start); +uint32_t svc_set_status(struct listitem *li, uint32_t status); +int svc_should_respawn(struct listitem *li); +int svc_needs_status(struct listitem *li); +int dep_needs_wants_add(struct dep **list, struct listitem *svc, int type); +struct dep *dep_create(struct listitem *svc); +void svc_success(struct listitem *li); +void svc_fail(struct listitem *li); +void svc_report_status(char *svc, char *msg, char *err); +void shutdown_services(struct listitem *start); + +void svc_start(struct listitem *); +void svc_stop_deps(struct listitem *, int); +uint32_t svc_disable(struct listitem *); +int svc_status_changed(); +int svc_handle_pending(struct dep *pending); + + +/*********************************************************************** + * to decide whether to operate on needs or wants + */ +enum dep_types { + DEP_WANTS, + DEP_NEEDS +}; + +#endif /* _CINIT_SVC_INTERN_H */ diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/include/svc-messages.h b/software/cinit/browse_source/cinit-0.3pre18/src/include/svc-messages.h new file mode 100644 index 00000000..14873228 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/include/svc-messages.h @@ -0,0 +1,48 @@ +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Service status messages + */ + + +#ifndef __CINIT_SVC_MESSAGES_H +#define __CINIT_SVC_MESSAGES_H + +#include "svc.h" + +struct cinit_svc_msg { + int code; + char *msg; +}; + +struct cinit_svc_msg cinit_svc_msg_codes[] = { + { CINIT_ST_SH_ONCE, "Service should be started once" }, + { CINIT_ST_SH_RESPAWN, "Service should respawn" }, + { CINIT_ST_ONCE_OK, "Service successfully started once" }, + { CINIT_ST_ONCE_FAIL, "Service failed to start once" }, + { CINIT_ST_RESPAWNING, "Service is respawning" }, + { CINIT_ST_NEED_FAILD, "One ore more needs failed" }, + { CINIT_ST_IN_LIST, "Service is in starter list" }, + { CINIT_ST_BAD_ERR, "Some strange error happened" }, + { CINIT_ST_ONCE_RUN, "Service is currently running once" }, + { CINIT_ST_NOT_EXIST, "This service does not exist" } +}; + +#endif /* _CINIT_SVC_H */ diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/include/svc.h b/software/cinit/browse_source/cinit-0.3pre18/src/include/svc.h new file mode 100644 index 00000000..ac8bc552 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/include/svc.h @@ -0,0 +1,66 @@ +/******************************************************************************* + * + * 2006-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Service status (also exposed to the outside) + */ + + +#ifndef __CINIT_SVC_H +#define __CINIT_SVC_H + +/*********************************************************************** + * The real status types a service may have (ignore above) + * We have 32 Bits, we should use them ;-) + */ +enum cinit_svc_status { + /* first define basics */ + CINIT_ST_SH_ONCE = 0x1, /* service SHould be started once yx*/ + CINIT_ST_SH_RESPAWN = 0x2, /* service SHould respawn yx*/ + CINIT_ST_ONCE_OK = 0x4, /* service was successfully started once */ + CINIT_ST_ONCE_FAIL = 0x8, /* service failed to start */ + CINIT_ST_RESPAWNING = 0x10, /* service is respawning */ + CINIT_ST_NEED_FAILD = 0x20, /* this service is not started, need failed x*/ + CINIT_ST_IN_LIST = 0x40, /* this service is being started (= in list) */ + CINIT_ST_BAD_ERR = 0x80, /* some kind of error that SHOULD NOT happen */ + CINIT_ST_ONCE_RUN = 0x100, /* the once process is currently running yx*/ + CINIT_ST_NOT_EXIST = 0x200, /* there's no such service in our database */ + CINIT_ST_SH_STOP = 0x400, /* service was running, is being stopped x*/ + CINIT_ST_STOPPED = 0x800, /* service is stopped x*/ + CINIT_ST_STOP_FAIL = 0x1000 /* service failed to stop..strange situation */ +}; + +/*********************************************************************** + * Possibilities the needs of a service may have + */ +enum cinit_svc_needs_status { + CINIT_SNS_NEEDS_STARTED = 1, /* all needs are started. We may start, too */ + CINIT_SNS_NEEDS_FAILED, /* one ore more needs failed */ + CINIT_SNS_NEEDS_UNFINISHED /* one ore more needs are not yet started */ +}; +/*********************************************************************** + * How to start/stop a service + */ +enum cinit_svc_start_stop_options { + CINIT_SSSO_COMPLETE = 0x0, /* with all dependencies */ + CINIT_SSSO_WO_NEEDS = 0x1, /* without needs */ + CINIT_SSSO_WO_WANTS = 0x2, /* without wants */ + CINIT_SSSO_WO_BOTH = 0x4 /* without both */ +}; +#endif /* _CINIT_SVC_H */ diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/README b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/README new file mode 100644 index 00000000..cc1a1b7e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/README @@ -0,0 +1,2 @@ +This implementation uses the new realtime inferface of +posix instead of the old one functions. diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/cinit_ipc_init.c b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/cinit_ipc_init.c new file mode 100644 index 00000000..ef22b6d1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/cinit_ipc_init.c @@ -0,0 +1,21 @@ +/*********************************************************************** + * + * 2007 Nico Schottelius (nico-cinit schottelius.org) + * + * part of cLinux/cinit + * + * Create new queues: One for recieving, one for sending + * + */ + +#include + +#include "cinit.h" +#include "config.h" +#include "msgq-rt.h" + +int cinit_ipc_init(void) +{ + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/mq_open.c b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/mq_open.c new file mode 100644 index 00000000..445e7dc6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/mq_open.c @@ -0,0 +1,20 @@ +#include +#include + +int main() +{ + mqd_t readq = mq_open("/test",O_RDWR|O_CREAT|O_EXCL); + //mqd_t readq = mq_open("/bin/ls",O_RDWR|O_CREAT|O_EXCL); + + if(readq == -1) { + perror("oh nein"); + return 1; + } + mqd_t writeq = mq_open("/bin/cp",O_WRONLY|O_CREAT|O_EXCL); + if(readq == -1) { + perror("oh oh nein"); + return 1; + } +} + + diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/msgq-rt.h b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/msgq-rt.h new file mode 100644 index 00000000..d09a2808 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq-rt/msgq-rt.h @@ -0,0 +1,39 @@ +/*********************************************************************** + * + * 2007 Nico Schottelius (nico-cinit schottelius.org) + * + * part of cLinux/cinit + * + * Create new queues: One for recieving, one for sending + * + */ + +#ifndef CINIT_IPC_HEADER +#define CINIT_IPC_HEADER + +#define MSGQ_PATHNAME "/cinit" /* identifier */ + +/*********************************************************************** + * structures + */ + +/* messages _from_ the client _to_ the server */ +struct msgq_client { + long mtype; + pid_t pid; + struct msg_client msg; +}; + +/* messages _from_ the server _to_ the client */ +struct msgq_server_short { + long mtype; + struct asw_sstatus answer; +}; + +/*********************************************************************** + * Messages + */ + +#define MSG_MSGQ_DESTROY "msgq-destroy" + +#endif diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/README.text b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/README.text new file mode 100644 index 00000000..c9a1acf2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/README.text @@ -0,0 +1,20 @@ +cinit/src/ipc/msgq: About this msqg implementation +=================================================== +Nico Schottelius +0.1, Initial Version from 2006-08-04 +:Author Initials: NS + +Intro here + +Introduction +------------ + +cinit opens a + +Files +----- +- README.text: This file +- cinit_init_ipc.c: Init +msgq.h +objects + diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_cread.c b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_cread.c new file mode 100644 index 00000000..ef811fec --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_cread.c @@ -0,0 +1,28 @@ +/*********************************************************************** + * + * 2007 Nico Schottelius (nico-cinit schottelius.org) + * + * part of cLinux/cinit + * + * Client reads messages from cinit + * + */ + +#include /* msg* */ +#include /* memcpy() */ +#include /* getpid() */ +#include "intern.h" /* print_errno */ +#include "msgq.h" /* msq specific */ + +int cinit_ipc_cread(struct cinit_answer *buf) +{ + struct cinit_msgq_server asr; + + if(msgrcv(__cinit_mq_in, &asr, sizeof(asr.asr), getpid(), 0) == -1) { + print_errno(__CINIT_MSG_MSGQ_MSGRCV); + return 0; + } + memcpy(buf, &(asr.asr), sizeof(*buf)); + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_csend.c b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_csend.c new file mode 100644 index 00000000..04683ab1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_csend.c @@ -0,0 +1,31 @@ +/*********************************************************************** + * + * 2007 Nico Schottelius (nico-cinit schottelius.org) + * + * part of cLinux/cinit + * + * Client sends messages to cinit + * + */ + +#include /* msgget */ +#include /* memcpy() */ +#include "intern.h" /* print_errno */ +#include "msgq.h" /* structure */ + +int cinit_ipc_csend(struct cinit_question *qsn) +{ + struct cinit_msgq_client msg; + + msg.mtype = 1; /* cinit = 1 */ + + /* copy question structure into the msgq-structure */ + memcpy(&(msg.qsn), qsn, sizeof(msg.qsn)); + + if(msgsnd(__cinit_mq_out, &msg, sizeof(msg.qsn), 0) == -1) { + print_errno(__CINIT_MSG_MSGQ_MSGSEND); + return 0; + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_destroy.c b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_destroy.c new file mode 100644 index 00000000..8186cba9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_destroy.c @@ -0,0 +1,24 @@ +/*********************************************************************** + * + * 2006-2007 Nico Schottelius (nico-cinit schottelius.org) + * + * part of cLinux/cinit + * + * Destory ipc mechanism, cinit is gonna die soon. + * + */ + +#include /* msgget */ +#include /* NULL */ +#include "msgq.h" /* mq_in, mq_out */ +#include "intern.h" /* print_errno */ + +void cinit_ipc_destroy(void) +{ + if(msgctl(__cinit_mq_in, IPC_RMID, NULL) == -1) { + print_errno(__CINIT_MSG_MSGQ_DESTROY); /* print warning, continue */ + } + if(msgctl(__cinit_mq_out, IPC_RMID, NULL) == -1) { + print_errno(__CINIT_MSG_MSGQ_DESTROY); /* print warning, continue */ + } +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_init.c b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_init.c new file mode 100644 index 00000000..d5102f13 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_init.c @@ -0,0 +1,44 @@ +/*********************************************************************** + * + * 2006-2007 Nico Schottelius (nico-cinit schottelius.org) + * + * part of cLinux/cinit + * + * Create new queues: One for recieving, one for sending + * + */ + +#include /* ftok */ +#include /* msgget */ +#include "intern.h" /* print_errno */ +#include "msgq.h" /* message queue */ + +int cinit_ipc_init(void) +{ + key_t k_tmp; + + /* to_server */ + k_tmp = ftok(__CINIT_MSGQ_PATHNAME, __CINIT_MSGQ_TO_SERVER); + if(k_tmp == -1) { + print_errno(__CINIT_MSG_MSGQ_FTOK); + return 0; + } + __cinit_mq_in = msgget(k_tmp, __CINIT_MSGQ_PERMS | IPC_CREAT); + if(__cinit_mq_in == -1) { + print_errno(__CINIT_MSG_MSGQ_MSGGET); + return 0; + } + + k_tmp = ftok(__CINIT_MSGQ_PATHNAME, __CINIT_MSGQ_TO_CLIENT); + if(k_tmp == -1) { + print_errno(__CINIT_MSG_MSGQ_FTOK); + return 0; + } + __cinit_mq_out = msgget(k_tmp, __CINIT_MSGQ_PERMS | IPC_CREAT); + if(__cinit_mq_out == -1) { + print_errno(__CINIT_MSG_MSGQ_MSGGET); + return 0; + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_listen.c b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_listen.c new file mode 100644 index 00000000..fb4aac52 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_listen.c @@ -0,0 +1,69 @@ +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * Listen to messages + * + */ + +#include /* printf() */ + +#include /* msg* */ +#include /* errno */ + +#include "intern.h" /* print_errno */ +#include "msgq.h" /* structs */ + +int cinit_ipc_listen(void) +{ + int tmp; + struct cinit_msgq_client qsn; + struct cinit_msgq_server asr; + struct msqid_ds msq; + + tmp = msgrcv(__cinit_mq_in, &qsn, sizeof (qsn.qsn), 0, 0); + + /* message system problem */ + if(tmp == -1) { + if(errno != EINTR) { + print_errno(__CINIT_MSG_MSGQ_MSGRCV); + } + return -1; + } + + /* retrieve pid */ + if(msgctl(__cinit_mq_in, IPC_STAT, &msq) == -1) { + print_errno(__CINIT_MSG_MSGQ_MSGCTL); + return -1; + } + + if(!read_command(qsn.qsn, &(asr.asr))) { + /* FIXME: mini_print */ + printf("read command failed\n"); + + asr.asr.ret = CINIT_ASW_ERR_INTERN; + } + + asr.mtype = msq.msg_lspid; + if(msgsnd(__cinit_mq_out, &asr, sizeof(asr.asr), 0) == -1) { + /* FIXME: do different things on differen errnos ... */ + print_errno("msgsend/answer"); + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_logoff.c b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_logoff.c new file mode 100644 index 00000000..ac8306d9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_logoff.c @@ -0,0 +1,14 @@ +/*********************************************************************** + * + * 2007 Nico Schottelius (nico-cinit schottelius.org) + * + * part of cLinux/cinit + * + * Disconnect from cinit + * + */ + +int cinit_ipc_logoff(void) +{ + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_logon.c b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_logon.c new file mode 100644 index 00000000..e15b12f7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/cinit_ipc_logon.c @@ -0,0 +1,44 @@ +/*********************************************************************** + * + * 2006-2007 Nico Schottelius (nico-cinit schottelius.org) + * + * part of cLinux/cinit + * + * Listen to messages + * + */ + +#include /* ftok */ +#include /* msgget */ +#include "intern.h" /* print_errno */ +#include "msgq.h" /* msgq constants */ + +int cinit_ipc_logon(void) +{ + key_t k_tmp; + + /* generiere nen schluessel: andersrum als im Server */ + k_tmp = ftok(__CINIT_MSGQ_PATHNAME, __CINIT_MSGQ_TO_CLIENT); + if(k_tmp == -1) { + print_errno(__CINIT_MSG_MSGQ_FTOK); + return 0; + } + __cinit_mq_in = msgget(k_tmp, 0); + if(__cinit_mq_in == -1) { + print_errno(__CINIT_MSG_MSGQ_MSGGET); + return 0; + } + + k_tmp = ftok(__CINIT_MSGQ_PATHNAME, __CINIT_MSGQ_TO_SERVER); + if(k_tmp == -1) { + print_errno(__CINIT_MSG_MSGQ_FTOK); + return 0; + } + __cinit_mq_out = msgget(k_tmp, 0); + if(__cinit_mq_out == -1) { + print_errno(__CINIT_MSG_MSGQ_MSGGET); + return 0; + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/msgq.h b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/msgq.h new file mode 100644 index 00000000..68398764 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/msgq.h @@ -0,0 +1,58 @@ +/*********************************************************************** + * + * 2006-2007 Nico Schottelius (nico-cinit //@\\ schottelius.org) + * + * part of cLinux/cinit + * + * header of message queuing interface + * + */ + +#ifndef __CINIT_IPC_HEADER +#define __CINIT_IPC_HEADER + +#include /* structures */ + +/*********************************************************************** + * configuration + */ + +#define __CINIT_MSGQ_PATHNAME "/bin/sh" /* should be on every *nix */ +#define __CINIT_MSGQ_TO_SERVER 'i' /* also for ftok */ +#define __CINIT_MSGQ_TO_CLIENT 'o' /* also for ftok */ +#define __CINIT_MSGQ_PERMS 0660 /* queue permissions */ + +/*********************************************************************** + * global variables: FIXME: rename, we're in client namespace! + */ +int __cinit_mq_in; /* input */ +int __cinit_mq_out; /* output */ + +/*********************************************************************** + * structures + */ + +/* messages _from_ the client _to_ the server */ +struct cinit_msgq_client { + long mtype; + struct cinit_question qsn; +}; + +/* messages _from_ the server _to_ the client */ +struct cinit_msgq_server { + long mtype; + struct cinit_answer asr; +}; + +/*********************************************************************** + * Messages + */ + +#define __CINIT_MSG_MSGQ_FTOK "ftok" +#define __CINIT_MSG_MSGQ_MSGGET "msgget" +#define __CINIT_MSG_MSGQ_MSGCTL "msgctl" +#define __CINIT_MSG_MSGQ_MSGSEND "msgsend" +#define __CINIT_MSG_MSGQ_MSGRCV "msgrcv" +#define __CINIT_MSG_MSGQ_DESTROY "msgq-destroy" + +#endif diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/objects b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/objects new file mode 100644 index 00000000..7c99d09f --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/msgq/objects @@ -0,0 +1,5 @@ +ipc/current/cinit_ipc_init.o +ipc/current/cinit_ipc_listen.o +ipc/current/cinit_ipc_sclose.o +ipc/current/cinit_ipc_destroy.o +ipc/current/cinit_ipc_logon.o diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/begin_msg.c b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/begin_msg.c new file mode 100644 index 00000000..8c9ce5ea --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/begin_msg.c @@ -0,0 +1,24 @@ +/* + * (c) 2005 Nico Schottelius (nico-linux at schottelius.org) + * tell cinit that I want to start a service + * part of cinit + */ + +#include +#include +#include "cinit.h" + +int begin_msg(char cmd) +{ + sock = connect_sock(sock); + if( sock == -1 ) { + return 0; + } + + if(write(sock,&cmd,sizeof(cmd)) == -1) { + perror(MSG_ERR_IO); + return 0; + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/cinit_ipc_init.c b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/cinit_ipc_init.c new file mode 100644 index 00000000..88c310f4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/cinit_ipc_init.c @@ -0,0 +1,125 @@ +/* + * (c) 2005, 2006 Nico Schottelius (nico-linux at schottelius.org) + * cinit.c + * part of cLinux/cinit + */ + +/* *stat() */ +#include +#include + +/* open */ +#include + +/* siggnal */ +#include + +/* PATH_MAX */ +#include + +/* str* */ +#include + +/* sockets */ +#include +#include +#include + +#include +#include + +#include "cinit.h" + +/*********************************************************************** + * create a socket, when we recieved a signal + */ +int main(int argc, char **argv) +{ + struct sockaddr_un addr; + struct pollfd plist; + char *initdir; + + list = NULL; /* list of services is empty currently */ + initdir = CINIT_INIT; /* default init dir */ + + cpid = getpid(); + if(cpid != 1) { + usage(MSG_USAGE,MSG_NOT_ONE); + } + + set_signals(ACT_SERV); /* set signal handlers */ + + /* read args, profile support */ + while(argc > 1) { + if( !strncmp(PROFILE, argv[argc-1], strlen(PROFILE)) ) { + initdir = (char *) malloc( + strlen(CINIT_DIR) + + strlen(&argv[argc-1][strlen(PROFILE)]) + 2 + ); + if(initdir == NULL) { + panic(); + } + strcpy(initdir,CINIT_DIR); + strcat(initdir,SLASH); + strcat(initdir,&argv[argc-1][strlen(PROFILE)]); + break; + } + argc--; + } + + /* tell the world we are there FIXME: do we really need three calls? */ + mini_printf(MSG_CINIT,1); mini_printf(initdir,1); mini_printf("\n",1); + + if( chdir(CINIT_INIT) == -1) { + perror(MSG_CHDIR); + panic(); + } + + /******************** TMPDIR **********************/ + if( mount(C_TMPMOUNT,CINIT_TMNT,C_TMPFS,0,NULL) == -1 ) { + perror(MSG_ERR_MOUNT); + panic(); + } + + /******************** begin socket **********************/ + sock = socket(AF_UNIX,SOCK_STREAM,0); /* create socket */ + if( sock == -1 ) { + perror(MSG_SOCKET); + panic(); + } + + memset(&addr, 0, sizeof(addr) ); /* clear addr */ + strcpy(addr.sun_path, CINIT_SOCK); + addr.sun_family = AF_UNIX; + + if(bind(sock,(struct sockaddr *)&addr,sizeof(addr)) == -1) { + perror(MSG_BIND); + panic(); + } + + /* start listening */ + if(listen(sock,SOCK_QUEUE) == -1) { + perror(MSG_LISTEN); + panic(); + } + + /* start init or profile */ + run_init_svc(initdir); + + /* free, if we malloc()ed before */ + if(initdir != CINIT_INIT) { + free(initdir); + } + + /* our life is polling a socket */ + plist.fd = sock; + plist.events = POLLIN | POLLPRI; + while(1) { + if(poll(&plist, 1, -1) != -1) { + if( (plist.revents & POLLIN) == POLLIN || + (plist.revents & POLLPRI) == POLLPRI) { + sigio(sock); + } + } + } +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/cinit_ipc_listen.c b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/cinit_ipc_listen.c new file mode 100644 index 00000000..a174d78d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/cinit_ipc_listen.c @@ -0,0 +1,141 @@ +/* + * cinit + * (c) 2005 Nico Schottelius (nico-linux at schottelius.org) + * handle client requests + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "cinit.h" + +/*********************************************************************** + * sigio: client handling + */ + +/* we are called, if one or _more_ connections are waiting */ +void sigio(int socket) +{ + int tmp, nsock; + char buf[PATH_MAX+1], status; + struct listitem *list_tmp; + pid_t pid; + + while ( (nsock = accept(socket,(struct sockaddr *) NULL, + (socklen_t *) NULL)) != -1) { + + if( read(nsock,&buf[0],1) == -1) { + perror(MSG_ERR_READ); + close(nsock); + continue; + } + + switch(buf[0]) { + + /********************** START SERVICE *******************/ + case CMD_START_SVC: + tmp = do_svc_name(nsock,buf,ACT_SERV); + if(!tmp) break; + + buf[tmp] = 0; + list_tmp = list_search(buf); + + if(list_tmp != NULL) { /* service already exists, return status */ + status = list_tmp->status; + do_result(nsock,&status); + break; + } + + tmp = list_insert(buf,ST_TMP); /* add service */ + if(!tmp) { /* failed */ + LOG(MSG_ERR_ADD_SVC); + status = ST_FAIL; + } else { + status = RT_TMPNOW; + } + do_result(nsock,&status); + break; + + /********************** STOP (RESPAWNING) *******************/ + case CMD_STOP_SVC: + tmp = do_svc_name(nsock,buf,ACT_SERV); + if(!tmp) break; + buf[tmp] = 0; + list_tmp = list_search(buf); + + /* FIXME: + - handle off + - handle switching off once services + - perhaps remove old cinit code, which has respawing childs + */ + + if(list_tmp != NULL) { /* service exists */ + if(list_tmp->status == ST_RESPAWN) { + /* kill cinit watcher, which kills the real process */ + kill(list_tmp->pid,SIGTERM); + + /* wait for watcher to terminate */ + waitpid(list_tmp->pid,&tmp,0); + } + + status = ST_OFF; + if(!list_modify(buf,status,list_tmp->pid)) { + status = ST_FAIL; + } else { /* return status */ + status = list_tmp->status; + } + } else { /* no service there */ + status = RT_NOTEXIST; + } + do_result(nsock,&status); + break; + + /********************** CHANGE SERVICE STATUS *******************/ + case CMD_CHG_STATUS: + tmp = do_change_status(buf,&status,&pid,nsock,ACT_SERV); + if(!tmp) break; + buf[tmp] = 0; /* terminate buf */ + + if(!list_modify(buf,status,pid)) { + SERVICE_LOG(buf,MSG_ERR_MODIFY); + status = 0; + } + do_result(nsock,&status); + break; + + /********************** SPECIAL ACTIONS *******************/ + case CMD_REBOOT: + sig_reboot(SIGHUP); + break; + case CMD_POWEROFF: + sig_reboot(SIGTERM); + break; + case CMD_HALT: + sig_reboot(SIGUSR1); + break; + case CMD_RESCUE: + sig_reboot(SIGUSR2); + break; + case CMD_UPDATE: + sig_reboot(SIGCONT); + break; + default: + LOG(MSG_CMD_UNKNOWN); + break; + } + close(nsock); + } + + /* hier kommt man haeufiger herein, interrupted system call */ + if( errno != EAGAIN && errno != EINTR) { /* report, but don't panic */ + perror(MSG_ERR_ACCEPT); + } +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/connect_sock.c b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/connect_sock.c new file mode 100644 index 00000000..2c2d45de --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/ipc/socket+linux-tmpfs/connect_sock.c @@ -0,0 +1,38 @@ +/* + * (c) 2005 Nico Schottelius (nico-linux at schottelius.org) + * run_svc + * part of cinit + */ + +#include +#include +#include +#include +#include /* memset, strcpy */ + +#include "cinit.h" + +/* open socket connection to cinit-serv and close original socket */ +int connect_sock(int socke) +{ + int nsock; + struct sockaddr_un addr; + + close(socke); + + nsock = socket(PF_UNIX,SOCK_STREAM,0); + if( nsock == -1 ) { + perror(MSG_SOCKET); + return -1; + } + socke = sizeof(addr); + memset(&addr,0,socke); + strcpy(addr.sun_path, CINIT_SOCK); + addr.sun_family = AF_UNIX; + + if(connect(nsock,(struct sockaddr *)&addr,socke) == -1) { + return -1; + } + + return nsock; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/README b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/README new file mode 100644 index 00000000..096cc779 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/README @@ -0,0 +1,22 @@ +Build a small library that can be used by different applications, that provides: + + Constants / Macros: + for cinit_halt: + CINIT_HALT + CINIT_REBOOT + CINIT_POWEROFF + + for cinit_svc_start/stop: + CINIT_SVC_NORMAL + CINIT_SVC_NEEDS + CINIT_SVC_ONLY + CINIT_SVC_WANTS + + Functions: + void cinit_halt(int how); + int cinit_svc_start(char *svc, int how); + int cinit_svc_stop(char *svc, int how); + int cinit_svc_stop(char *svc, int how); + +This lib must then include: + - choosen ipc functions diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_flag_to_uint32_t.c b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_flag_to_uint32_t.c new file mode 100644 index 00000000..89949c8c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_flag_to_uint32_t.c @@ -0,0 +1,46 @@ + +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Converts cher * to uint32_t for svc operations + * + */ + +#include /* NULL */ +#include /* strchr */ +#include /* integers */ + +#include "cinit.h" /* constants */ + +uint32_t cinit_flag_to_uint32_t(char *flag) +{ + uint32_t ret = 0; /* no flags */ + + if(flag != NULL) { + if(strchr(flag, CINIT_CMD_SVC_NEEDS)) { + ret |= CINIT_QSN_SVC_NEEDS; + } + if(strchr(flag, CINIT_CMD_SVC_WANTS)) { + ret |= CINIT_QSN_SVC_WANTS; + } + } + + return ret; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_get_version.c b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_get_version.c new file mode 100644 index 00000000..794e25bc --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_get_version.c @@ -0,0 +1,38 @@ + +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Retrieves version of cinit + */ + +#include "cinit.h" /* header for clients */ + +uint32_t cinit_get_version(char *buf) +{ + struct cinit_question qsn; + struct cinit_answer asr; + + cinit_prepare_comm(&qsn, &asr, CINIT_QSN_GET_VERSION); + if(!cinit_send_to(&qsn, &asr)) + return CINIT_ASW_IPC_ERROR; + cinit_cp_data(buf, asr.data); + + return asr.ret; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_halt.c b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_halt.c new file mode 100644 index 00000000..f5e9c96a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_halt.c @@ -0,0 +1,39 @@ + +/******************************************************************************* + * + * 2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * purpose_of_this_file_is_also_there_behind_the_big_header + * + */ + +#include "" /* include global header */ +int cinit_halt(int how) +{ + switch (how) { + case 'p': /* power off */ + break; + + default: + break; + } +} + +return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_prepare_comm.c b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_prepare_comm.c new file mode 100644 index 00000000..8badc744 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_prepare_comm.c @@ -0,0 +1,37 @@ + +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Prepares the communication + */ + +#include /* str*, memset */ +#include /* uint32_t */ + +#include "cinit.h" /* header for clients */ + +void cinit_prepare_comm(struct cinit_question *qsn, struct cinit_answer *asr, + uint32_t cmd) +{ + memset(qsn, '\0', sizeof(struct cinit_question)); + memset(asr, '\0', sizeof(struct cinit_answer)); + + qsn->cmd = cmd; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_send_to.c b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_send_to.c new file mode 100644 index 00000000..cfd3a35c --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_send_to.c @@ -0,0 +1,41 @@ + +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * sends data from the client to cinit + * + */ + +#include "ipc.h" /* IPC */ +#include "cinit.h" /* struct cinit_message */ + +int cinit_send_to(struct cinit_question *data, struct cinit_answer *res) +{ + if(!cinit_ipc_logon()) + return 0; + if(!cinit_ipc_csend(data)) + return 0; + if(!cinit_ipc_cread(res)) + return 0; + if(!cinit_ipc_logoff()) + return 0; + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_disable.c b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_disable.c new file mode 100644 index 00000000..6c25c330 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_disable.c @@ -0,0 +1,68 @@ + +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Disables a service + * + */ + +#include /* integers */ + +#include "cinit.h" /* header for clients */ + +/* + * to cinit: + * disable + flags + * from cinit: + * status + * unknown service + * disabled the service + * + * disabled the service and needs + * disabled the service and wants + * disabled the service and needs and wants + * + * if it is one of the last three it follows + * uint32_t num: how many services stopped + * num times + * + * uint32_t len (excluding \0) + * char name[] + */ + +uint32_t cinit_svc_disable(char *svc, uint32_t flag) +{ + struct cinit_question qsn; + struct cinit_answer asr; + + cinit_prepare_comm(&qsn, &asr, CINIT_QSN_SVC_DISABLE); + cinit_cp_data((qsn.data), svc); + + qsn.opt = flag; + + if(!cinit_send_to(&qsn, &asr)) + return CINIT_ASW_IPC_ERROR; + + /* + * FIXME: 0.3pre15: add retrieval of services + */ + + return asr.ret; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_enable.c b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_enable.c new file mode 100644 index 00000000..701a2b89 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_enable.c @@ -0,0 +1,48 @@ + +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Retrieves pid of a service + * + */ + +#include /* integers */ +#include "cinit.h" /* header for clients */ + +uint32_t cinit_svc_enable(char *svc, uint32_t flag) +{ + struct cinit_question qsn; + struct cinit_answer asr; + + cinit_prepare_comm(&qsn, &asr, CINIT_QSN_SVC_ENABLE); + cinit_cp_data((qsn.data), svc); + + qsn.opt = flag; + + if(!cinit_send_to(&qsn, &asr)) + return CINIT_ASW_IPC_ERROR; + + /* + * add logic to display started services here or: add logic to start + * dependend services in here: want to start a -> cinit returns needs b + */ + + return CINIT_ASW_IPC_ERROR; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_get_pid.c b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_get_pid.c new file mode 100644 index 00000000..715fe953 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_get_pid.c @@ -0,0 +1,44 @@ + +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Retrieves pid of a service + * + */ + +#include /* pid_t */ +#include /* integers */ +#include "cinit.h" /* header for clients */ + +uint32_t cinit_svc_get_pid(char *name, pid_t * status) +{ + struct cinit_question qsn; + struct cinit_answer asr; + + cinit_prepare_comm(&qsn, &asr, CINIT_QSN_GET_PID); + cinit_cp_data((qsn.data), name); + + if(!cinit_send_to(&qsn, &asr)) + return CINIT_ASW_IPC_ERROR; + + *status = asr.opt; + + return asr.ret; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_get_status.c b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_get_status.c new file mode 100644 index 00000000..be8a1a4e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/libcinit/cinit_svc_get_status.c @@ -0,0 +1,43 @@ + +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Retrieves status of a service + * + */ + +#include /* integers */ +#include "cinit.h" /* header for clients */ + +uint32_t cinit_svc_get_status(char *name, uint32_t * status) +{ + struct cinit_question qsn; + struct cinit_answer asr; + + cinit_prepare_comm(&qsn, &asr, CINIT_QSN_GET_STATUS); + cinit_cp_data((qsn.data), name); + + if(!cinit_send_to(&qsn, &asr)) + return CINIT_ASW_IPC_ERROR; + + *status = asr.opt; + + return asr.ret; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/cinit b/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/cinit new file mode 100644 index 00000000..577bcf6b --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/cinit @@ -0,0 +1,62 @@ +core/build_argv.o +core/cinit.o +core/panic.o +core/set_signals.o +core/signal_init_map.o +core/do_reboot.o +core/sig_child.o +generic/execute_sth.o +generic/file_exists.o +generic/mini_printf.o +generic/path_absolute.o +generic/path_append.o +generic/print_errno.o +generic/openreadclose.o +generic/strip_final_newline.o +generic/sleep_before_kill.o +generic/execute_and_wait.o +ipc/current/cinit_ipc_init.o +ipc/current/cinit_ipc_listen.o +ipc/current/cinit_ipc_destroy.o +ipc/current/cinit_ipc_logon.o +os/current/halt.o +os/current/poweroff.o +os/current/reboot.o +os/current/halt.o +os/current/poweroff.o +os/current/reboot.o +os/current/halt.o +os/current/poweroff.o +os/current/reboot.o +svc/gen_svc_tree.o +svc/gen_halt_tree.o +svc/list_delete_byname.o +svc/list_delete_bypointer.o +svc/list_insert.o +svc/list_search.o +svc/list_search_pid.o +svc/svc_create.o +svc/svc_handle_pending.o +svc/svc_status_changed.o +svc/svc_disable.o +svc/check_add_deps.o +svc/dep_entry_add.o +svc/dep_entry_del.o +svc/shutdown_services.o +svc/tree_exec.o +svc/svc_set_status.o +svc/svc_should_respawn.o +svc/svc_needs_status.o +svc/dep_needs_wants_add.o +svc/dep_create.o +svc/svc_success.o +svc/svc_report_status.o +svc/svc_fail.o +svc/svc_start.o +svc/svc_stop_deps.o +comm/read_command.o +comm/answer_svc_status.o +comm/answer_svc_pid.o +comm/answer_version.o +comm/cinit_cp_data.o +comm/answer_svc_disable.o diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/cmd b/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/cmd new file mode 100644 index 00000000..a32be1f4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/cmd @@ -0,0 +1,17 @@ +client/cmd.o +comm/cinit_cp_data.o +generic/print_errno.o +generic/path_absolute.o +generic/mini_printf.o +ipc/current/cinit_ipc_logon.o +ipc/current/cinit_ipc_csend.o +ipc/current/cinit_ipc_cread.o +ipc/current/cinit_ipc_logoff.o +libcinit/cinit_get_version.o +libcinit/cinit_send_to.o +libcinit/cinit_svc_get_pid.o +libcinit/cinit_svc_get_status.o +libcinit/cinit_prepare_comm.o +libcinit/cinit_svc_enable.o +libcinit/cinit_svc_disable.o +libcinit/cinit_flag_to_uint32_t.o diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/halt.kill b/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/halt.kill new file mode 100644 index 00000000..e5b12a36 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/halt.kill @@ -0,0 +1,3 @@ +client/halt.kill.o +generic/print_errno.o +generic/mini_printf.o diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/poweroff.kill b/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/poweroff.kill new file mode 100644 index 00000000..306fc0bf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/poweroff.kill @@ -0,0 +1,3 @@ +client/poweroff.kill.o +generic/print_errno.o +generic/mini_printf.o diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/reboot.kill b/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/reboot.kill new file mode 100644 index 00000000..f851badf --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/object_lists/reboot.kill @@ -0,0 +1,3 @@ +client/reboot.kill.o +generic/print_errno.o +generic/mini_printf.o diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/halt.c b/software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/halt.c new file mode 100644 index 00000000..37064cc2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/halt.c @@ -0,0 +1,17 @@ +/*********************************************************************** + * + * 2005-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * halt the system + * + */ + +#include +#include + +void cinit_halt(void) +{ + reboot(RB_HALT); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/objects b/software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/objects new file mode 100644 index 00000000..020f1efb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/objects @@ -0,0 +1,3 @@ +os/current/halt.o +os/current/poweroff.o +os/current/reboot.o diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/poweroff.c b/software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/poweroff.c new file mode 100644 index 00000000..c73dd079 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/poweroff.c @@ -0,0 +1,17 @@ +/*********************************************************************** + * + * 2005-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * poweroff + * + */ + +#include +#include + +void cinit_poweroff(void) +{ + reboot(RB_POWEROFF); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/reboot.c b/software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/reboot.c new file mode 100644 index 00000000..03dc660a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/freebsd/reboot.c @@ -0,0 +1,17 @@ +/*********************************************************************** + * + * 2005-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * reboot the system + * + */ + +#include +#include + +void cinit_reboot(void) +{ + reboot(RB_AUTOBOOT); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/linux/halt.c b/software/cinit/browse_source/cinit-0.3pre18/src/os/linux/halt.c new file mode 100644 index 00000000..5ee3eb53 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/linux/halt.c @@ -0,0 +1,16 @@ +/*********************************************************************** + * + * 2005-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * How to halt the system + */ + +#include +#include + +void cinit_halt(void) +{ + reboot(RB_HALT_SYSTEM); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/linux/objects b/software/cinit/browse_source/cinit-0.3pre18/src/os/linux/objects new file mode 100644 index 00000000..020f1efb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/linux/objects @@ -0,0 +1,3 @@ +os/current/halt.o +os/current/poweroff.o +os/current/reboot.o diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/linux/poweroff.c b/software/cinit/browse_source/cinit-0.3pre18/src/os/linux/poweroff.c new file mode 100644 index 00000000..c7d2b1c1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/linux/poweroff.c @@ -0,0 +1,17 @@ +/*********************************************************************** + * + * 2005-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * poweroff the system + * + */ + +#include +#include + +void cinit_poweroff(void) +{ + reboot(RB_POWER_OFF); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/linux/reboot.c b/software/cinit/browse_source/cinit-0.3pre18/src/os/linux/reboot.c new file mode 100644 index 00000000..03dc660a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/linux/reboot.c @@ -0,0 +1,17 @@ +/*********************************************************************** + * + * 2005-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * reboot the system + * + */ + +#include +#include + +void cinit_reboot(void) +{ + reboot(RB_AUTOBOOT); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/halt.c b/software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/halt.c new file mode 100644 index 00000000..972aecf9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/halt.c @@ -0,0 +1,19 @@ +/*********************************************************************** + * + * 2005-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * poweroff + * + */ + +#define _NETBSD_SOURCE 1 +#include /* reboot */ +#include /* reboot */ +#include /* NULL */ + +void cinit_halt(void) +{ + reboot(RB_HALT,NULL); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/objects b/software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/objects new file mode 100644 index 00000000..020f1efb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/objects @@ -0,0 +1,3 @@ +os/current/halt.o +os/current/poweroff.o +os/current/reboot.o diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/poweroff.c b/software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/poweroff.c new file mode 100644 index 00000000..17d7b259 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/poweroff.c @@ -0,0 +1,19 @@ +/*********************************************************************** + * + * 2005-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * poweroff + * + */ + +#define _NETBSD_SOURCE 1 +#include /* reboot */ +#include /* reboot */ +#include /* NULL */ + +void cinit_poweroff(void) +{ + reboot(RB_HALT|RB_POWERDOWN,NULL); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/reboot.c b/software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/reboot.c new file mode 100644 index 00000000..14313e17 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/netbsd/reboot.c @@ -0,0 +1,19 @@ +/*********************************************************************** + * + * 2005-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * poweroff + * + */ + +#define _NETBSD_SOURCE 1 +#include /* reboot */ +#include /* reboot */ +#include /* NULL */ + +void cinit_reboot(void) +{ + reboot(RB_AUTOBOOT,NULL); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/halt.c b/software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/halt.c new file mode 100644 index 00000000..37064cc2 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/halt.c @@ -0,0 +1,17 @@ +/*********************************************************************** + * + * 2005-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * halt the system + * + */ + +#include +#include + +void cinit_halt(void) +{ + reboot(RB_HALT); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/objects b/software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/objects new file mode 100644 index 00000000..020f1efb --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/objects @@ -0,0 +1,3 @@ +os/current/halt.o +os/current/poweroff.o +os/current/reboot.o diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/poweroff.c b/software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/poweroff.c new file mode 100644 index 00000000..bf4120e1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/poweroff.c @@ -0,0 +1,17 @@ +/*********************************************************************** + * + * 2005-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * poweroff + * + */ + +#include +#include + +void cinit_poweroff(void) +{ + reboot(RB_HALT | RB_POWERDOWN); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/reboot.c b/software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/reboot.c new file mode 100644 index 00000000..03dc660a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/os/openbsd/reboot.c @@ -0,0 +1,17 @@ +/*********************************************************************** + * + * 2005-2007 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * reboot the system + * + */ + +#include +#include + +void cinit_reboot(void) +{ + reboot(RB_AUTOBOOT); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/check_add_deps.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/check_add_deps.c new file mode 100644 index 00000000..b3fcd691 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/check_add_deps.c @@ -0,0 +1,128 @@ +/******************************************************************************* + * + * 2005-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Add dependencies to a service + */ + +#include /* getcwd */ + +#include /* DIR */ +#include /* errno */ + +#include /* PATH_MAX */ +#include /* malloc */ +#include /* strcpy */ + +#include "intern.h" /* mini_printf */ +#include "messages.h" /* MSG_* */ +#include "svc-intern.h" /* DEP_* */ + +int check_add_deps(struct listitem *svc, int type) +{ + char buf[PATH_MAX + 1]; + char oldpath[PATH_MAX + 1]; + struct dirent *tdirent; + struct dep *deps = NULL; + struct listitem *new_svc; + DIR *d_tmp; + + /* remember where we started */ + if(!getcwd(oldpath, PATH_MAX + 1)) { + print_errno(MSG_GETCWD); + return 0; + } + + /* Create path */ + strncpy(buf, svc->abs_path, PATH_MAX+1); + if(type == DEP_NEEDS) { + if(!path_append(buf, C_NEEDS)) return 0; + } else { + if(!path_append(buf, C_WANTS)) return 0; + } + + d_tmp = opendir(buf); + if(d_tmp == NULL) { + if(errno != ENOENT) { + print_errno(buf); + return 0; + } + return 1; /* it's fine when there's no dependencies */ + } + + if(chdir(buf) == -1) { /* change to needs or wants */ + print_errno(buf); + return 0; + } + + while((tdirent = readdir(d_tmp)) != NULL) { + if(*(tdirent->d_name) == '.') continue; /* ignore .* */ + + /* + * skip non-working directories / broken links path_absolute reports + * errors on failure + */ + if(!path_absolute(tdirent->d_name, buf, PATH_MAX + 1)) continue; + + /* 1. create the service we depend on 2. initialize its dependencies */ + if(!(new_svc = gen_svc_tree(buf))) return 0; + + /* + * We need ALL dependencies, as we are called only once per service; no + * need to test that first! And the other service CANNOT know anything + * about us yet, so we always add us to its list. + */ + + /* + * Dependencies: - a.needs b; add b to the list of dependencies. - + * a.needs b; add a to the list of needed by b. 1. check whether the + * dependency already exists 2. otherwise add it 3. do it once for needs, + * once for needed_by + */ + + /* create a dependency entry containing us */ + deps = dep_create(svc); + if(!deps) return 0; + + if(type == DEP_NEEDS) { + /* add us to the other service */ + dep_entry_add(&(new_svc->needed_by), deps); + + /* add other service to us */ + deps = dep_create(new_svc); + if(!deps) return 0; + dep_entry_add(&(svc->needs), deps); + } else { + /* add us to the other service */ + dep_entry_add(&(new_svc->wanted_by), deps); + + /* add other service to us */ + deps = dep_create(new_svc); + if(!deps) return 0; + dep_entry_add(&(svc->wants), deps); + } + } + if(chdir(oldpath) == -1) { + print_errno(buf); + return 0; + } + closedir(d_tmp); + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_create.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_create.c new file mode 100644 index 00000000..1bf513ee --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_create.c @@ -0,0 +1,38 @@ +/******************************************************************************* + * + * 2006-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Create dependency + */ + +#include /* NULL */ +#include /* malloc() */ +#include "svc-intern.h" /* structs */ + +/* search for an entry by path, reverse: from end to the beginning */ +struct dep *dep_create(struct listitem *svc) +{ + struct dep *entry; + + entry = malloc(sizeof(struct dep)); + if(!entry) return NULL; + entry->svc = svc; + + return entry; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_entry_add.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_entry_add.c new file mode 100644 index 00000000..41b67d8d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_entry_add.c @@ -0,0 +1,44 @@ +/******************************************************************************* + * + * 2006-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * List handling: Add a new item to a (non-)empty list + */ + +#include "svc-intern.h" /* types */ + +/* + * list: pointer to the list + * new: pointer to data to insert (already filled up) + * + * We add the new element BEFORE the existing element! + */ +void dep_entry_add(struct dep **deplist, struct dep *new) +{ + if(!(*deplist)) { /* new list */ + *deplist = new; + (*deplist)->prev = *deplist; + (*deplist)->next = *deplist; + } else { /* already existing */ + new->next = *deplist; /* new-> first */ + new->prev = (*deplist)->prev; /* last <- new */ + (*deplist)->prev->next = new; /* last -> new */ + (*deplist)->prev = new; /* new <- first */ + } +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_entry_del.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_entry_del.c new file mode 100644 index 00000000..460b37ce --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_entry_del.c @@ -0,0 +1,55 @@ + +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * List handling: Add a new item to a (non-)empty list + */ + +#include /* NULL */ +#include /* free() */ +#include "svc-intern.h" /* struct *dep */ + +/* + * tmp: pointer to data to remove (must not be NULL) + * + * Returns either the next object or NULL if there's no next object + */ +struct dep *dep_entry_del(struct dep *del) +{ + struct dep *tmp; + + /* + * last service in the list + */ + if(del->next == del && del->prev == del) { + tmp = NULL; + } else { + /* + * remove from list + */ + del->prev->next = del->next; + del->next->prev = del->prev; + tmp = del->next; + } + + free(del); + + return tmp; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_needs_wants_add.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_needs_wants_add.c new file mode 100644 index 00000000..cfb7b242 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/dep_needs_wants_add.c @@ -0,0 +1,81 @@ +/******************************************************************************* + * + * 2006-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Add all wants or needs from a specific service to dep list + * -> this builds the needs and needed_by and + * -> or this builds the wants and wanted_by and + * + * This function is used to fillup the starting list with dependencies + * after a service has sucessfully been executed. + */ + +#include /* NULL */ +#include "svc-intern.h" /* struct *dep */ +#include "svc.h" /* struct *dep */ + +/* + * list: pointer to the list + * svc: pointer to data to the service + */ + +int dep_needs_wants_add(struct dep **list, struct listitem *svc, int type) +{ + struct dep *tmp, *new, *end; + + if(type == DEP_NEEDS) { + end = svc->needed_by; + } else { + end = svc->wanted_by; + } + + /* + * Place to the first dependency of this service + */ + tmp = end; + if(tmp != NULL) { + do { + /* + * Add service to the starter list, which - should be started once - + * should be respawned (both VIRGIN services!) - and which are not + * already in the list! + */ + if(((tmp->svc->status & CINIT_ST_SH_ONCE) || + (tmp->svc->status & CINIT_ST_SH_RESPAWN)) && + !(tmp->svc->status & CINIT_ST_IN_LIST)) { + new = dep_create(tmp->svc); + if(!new) return 0; + tmp->svc->status |= CINIT_ST_IN_LIST; + dep_entry_add(list, new); + } + + /* + * FIXME: Clearify if we should go forward or backwards? this decision + * will influence starting order and may thereby add a minimal mount + * of speed enhancement As far as I can see it is not predictable, + * which way is better, because it heavily depends on the other + * services. If you know better, provide me with a patch ;-) + */ + + tmp = tmp->next; + } while(tmp != end); + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/gen_halt_tree.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/gen_halt_tree.c new file mode 100644 index 00000000..fee84d11 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/gen_halt_tree.c @@ -0,0 +1,64 @@ + +/******************************************************************************* + * + * 2007-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * This function reads the full service tree and generates + * a list of services to begin shutdown (those that are not + * wanted or needed by any other service). + */ + +#include /* NULL */ + +#include "svc-intern.h" /* structs */ +#include "intern.h" /* structs */ + +struct dep *gen_halt_list(struct listitem *svc_tree) +{ + struct dep *list = NULL, *new = NULL; + struct listitem *tmp; + + /* + * no tree? nothing to shutdown. + */ + if(!svc_tree) { + return NULL; + } + + /* + * find all services that do not depend on other services: - empty wants? + * (currently ignore them) - empty needs! + */ + tmp = svc_tree; + do { + if(tmp->needs == NULL) { + /* + * create new dependency + */ + new = dep_create(tmp); + if(!new) + return NULL; + + dep_entry_add(&list, new); + } + tmp = tmp->next; + } while(tmp != svc_tree); + + return list; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/gen_svc_tree.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/gen_svc_tree.c new file mode 100644 index 00000000..ceb4acf8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/gen_svc_tree.c @@ -0,0 +1,59 @@ +/******************************************************************************* + * + * 2006-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Pre calculate the service tree (recursive calling) + */ + +#include + +#include "intern.h" /* functions */ +#include "svc.h" /* constants */ +#include "svc-intern.h" /* functions */ + +struct listitem *gen_svc_tree(char *svc) +{ + struct listitem *li; + struct dep *deps; + + /* only do something if the service is not already known */ + if((li = list_search(svc))) return li; + + /* create a template, so other instances won't try to recreate us */ + if(!(li = svc_create(svc))) return NULL; + + /* add dependencies */ + if(!check_add_deps(li, DEP_NEEDS)) return NULL; + if(!check_add_deps(li, DEP_WANTS)) return NULL; + + /* If it has no dependencies, then the service is a start service. */ + if(!li->wants && !li->needs) { + deps = dep_create(li); + if(!deps) return NULL; + dep_entry_add(&deps_pending, deps); + + /* + * Mark it as being in the startup list, so it does not get added again + * in a dep_needs_wants_add call + */ + li->status |= CINIT_ST_IN_LIST; + } + + return li; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_delete_byname.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_delete_byname.c new file mode 100644 index 00000000..5bceb289 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_delete_byname.c @@ -0,0 +1,47 @@ + +/******************************************************************************* + * + * 2005 Marcus Przyklink (downhill-clinux (at) burningchaos.org) + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * List handling + */ + +#include /* free */ +#include "intern.h" /* list_search */ +#include "svc-intern.h" /* listitem */ + +/* ... */ +int list_delete_byname(char *path) +{ + struct listitem *tmp; + + tmp = list_search(path); + + if(tmp == NULL) { + return 0; + } + + tmp->next->prev = tmp->prev; + tmp->prev->next = tmp->next; + + free(tmp); + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_delete_bypointer.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_delete_bypointer.c new file mode 100644 index 00000000..d50b51b4 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_delete_bypointer.c @@ -0,0 +1,42 @@ + +/******************************************************************************* + * + * 2005 Marcus Przyklink (downhill-clinux (at) burningchaos.org) + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * List handling + */ + +#include /* free */ +#include "svc-intern.h" /* listitem */ + +int list_delete_bypointer(struct listitem *li) +{ + /* FIXME: add warning? this case should not happen */ + if(li == NULL) { + return 0; + } + + li->next->prev = li->prev; + li->prev->next = li->next; + + free(li); + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_display_all.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_display_all.c new file mode 100644 index 00000000..b94758f3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_display_all.c @@ -0,0 +1,49 @@ + +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Show all list elements - mainly for debugging + */ + +#include /* NULL */ + +#include "messages.h" /* D_PRINTF */ +#include "svc.h" + +int list_display_all() +{ + struct listitem *tmp; + + if(svc_list == NULL) { + return 0; + } else { + tmp = svc_list; + } + + do { + D_PRINTF("Service: "); + D_PRINTF(tmp->abs_path); + D_PRINTF("\n"); + + tmp = tmp->prev; + } while(tmp != svc_list); + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_insert.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_insert.c new file mode 100644 index 00000000..9f87be69 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_insert.c @@ -0,0 +1,57 @@ +/******************************************************************************* + * + * 2005 Marcus Przyklink (downhill-clinux (at) burningchaos.org) + * 2006-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Insert service into service list + * + */ + +#include /* uint32_t */ +#include /* malloc */ +#include /* bzero / memset */ +#include "svc-intern.h" /* the list pointer */ + +struct listitem *list_insert(char *path, uint32_t status) +{ + struct listitem *tmp; + + tmp = malloc(sizeof(struct listitem)); + if(tmp == NULL) return NULL; + memset(tmp, '\0', sizeof(struct listitem)); + + if(svc_list == NULL) { /* list is empty, we have to init it */ + svc_list = tmp; + svc_list->next = svc_list; + svc_list->prev = svc_list; + } else { /* list has members,add this one */ + tmp->next = svc_list; /* begin after the new element */ + tmp->prev = svc_list->prev; /* change to the ex-last */ + svc_list->prev->next = tmp; /* change last element */ + svc_list->prev = tmp; /* first refers to previous now */ + } + + cinit_cp_data(tmp->abs_path, path); + + tmp->status = status; + tmp->pid = 0; + tmp->changed = NULL; + + return tmp; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_modify.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_modify.c new file mode 100644 index 00000000..f527d98d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_modify.c @@ -0,0 +1,57 @@ + +/******************************************************************************* + * + * 2005 Marcus Przyklink (downhill-clinux (at) burningchaos.org) + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * OBSOLETED. Not in use anymore. + * + * List handling + */ + +#error "NOT IN USE" + +#include +#include +#include "cinit.h" +#include "comm.h" /* for ST_OFF */ +#include "svc.h" /* for ST_OFF */ + +/* change pid and status of a process */ +int list_modify(char *path, int new_status, pid_t new_pid) +{ + struct listitem *tmp; + + tmp = list_search(path); + if(tmp == NULL) { + return 0; + } + + /* + * delete objects, which are killed + */ + if(new_status == ST_OFF) { + return list_delete(path); + } else { + tmp->status = new_status; + tmp->pid = new_pid; + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_search.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_search.c new file mode 100644 index 00000000..ff4578c8 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_search.c @@ -0,0 +1,46 @@ +/******************************************************************************* + * + * 2005 Marcus Przyklink (downhill-clinux (at) burningchaos.org) + * 2006-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * List handling + */ + +#include /* NULL */ +#include /* strcmp */ +#include "svc-intern.h" /* struct listitem */ + +/* search for an entry by path, reverse: from end to the beginning */ +struct listitem *list_search(char *path) +{ + struct listitem *tmp; + + if(svc_list == NULL) return NULL; + + tmp = svc_list; + + do { + if(!strcmp(path, tmp->abs_path)) { + return tmp; + } + tmp = tmp->prev; + } while(tmp != svc_list); + + return NULL; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_search_pid.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_search_pid.c new file mode 100644 index 00000000..0633d95e --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/list_search_pid.c @@ -0,0 +1,45 @@ +/******************************************************************************* + * + * 2005 Marcus Przyklink (downhill-clinux (at) burningchaos.org) + * 2006-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * List handling: Search by pid + * + */ + +#include /* NULL */ +#include /* pid_t */ +#include "svc-intern.h" /* struct listitem */ + +inline struct listitem *list_search_pid(pid_t pid) +{ + struct listitem *tmp; + + if(svc_list == NULL) return NULL; + + tmp = svc_list; + + do { + if(pid == tmp->pid) return tmp; /* found service */ + + tmp = tmp->prev; + } while(tmp != svc_list); + + return NULL; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/shutdown_services.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/shutdown_services.c new file mode 100644 index 00000000..e17dea04 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/shutdown_services.c @@ -0,0 +1,48 @@ + +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Shutdown all services: This is more or less the negative + * version of 'tree_exec()' + */ + +#include "svc-intern.h" /* struct */ +#include "svc.h" /* defines */ + +void shutdown_services(struct listitem *svc) +{ + /* + * The shutdown procedure: + * + * - take the list of running services + * - begin at the first (could be any) service and + * - shutdown all services that depend on that service + * --> recursive + * - take the next service (if there is still one ;-) + */ + + while(svc) { + svc_stop_deps(svc, CINIT_SSSO_COMPLETE); + svc = svc->next; + list_delete_bypointer(svc->prev); + } + + return; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_add_needs.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_add_needs.c new file mode 100644 index 00000000..be6c6312 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_add_needs.c @@ -0,0 +1,92 @@ + +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * OBSOLETED! + * + * List handling + */ + +#error "NOT IN USE" + +#include "cinit.h" +#include "messages.h" + +int svc_add_needs(char *needs, char *is_needed) +{ + struct listitem *svc_needs, *svc_is_needed; + + /* + * retrieve service entries in global service list + */ + svc_needs = svc_is_needed = NULL; + svc_needs = list_search(needs); + svc_is_needed = list_search(is_needed); + + /* + * and exit if one is missing + */ + if(!svc_needs || !svc_is_needed) { + return 0; + } + + /* + * first add needs + */ + + /* + * now add needed_by + */ + + malloc... /* for adding */ + if(svc->needs == NULL) { + svc->needs = neu; + } else { + svc->next = neu; + } + + /* + * write generic function for dependencies or even all lists + */ + dep_entry_add(list_pointer, new_entry); + + if(list == NULL) { /* list is empty, we have to init it */ + list = tmp; + list->after = list; + list->before = list; + } else { /* list has members,add this one */ + tmp->after = list; /* begin after the new element */ + tmp->before = list->before; /* change to the ex-last */ + list->before->after = tmp; /* change last element */ + list->before = tmp; /* first refers to previous now */ + } + + tmp->abs_path = malloc(strlen(path) + 1); + if(tmp->abs_path == NULL) { + LOG(MSG_ERR_ALLOC); + return 0; + } + + strcpy(tmp->abs_path, path); + tmp->status = status; + tmp->pid = 0; + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_create.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_create.c new file mode 100644 index 00000000..081a1b78 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_create.c @@ -0,0 +1,56 @@ +/******************************************************************************* + * + * 2005-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Create a service, checking for existence is done before. + */ + +#include /* NULL */ +#include /* stat */ +#include /* errno */ + +#include "svc.h" /* constants */ +#include "svc-intern.h" /* listitem */ +#include "intern.h" /* path_append */ +#include "cinit.h" /* CINIT_DATA_LEN */ + +struct listitem *svc_create(char *svc) +{ + char buf[CINIT_DATA_LEN]; + struct stat statbuf; + struct listitem *li; + + li = list_insert(svc, -1); + if(!li) return NULL; + + cinit_cp_data(buf, svc); + if(!path_append(buf, C_RESPAWN)) return NULL; + + if(stat(buf, &statbuf) == -1) { + if(errno == ENOENT) { + svc_set_status(li, CINIT_ST_SH_ONCE); + } else { + return NULL; + } + } else { + svc_set_status(li, CINIT_ST_SH_RESPAWN); + } + + return li; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_disable.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_disable.c new file mode 100644 index 00000000..e0704bfc --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_disable.c @@ -0,0 +1,107 @@ +/******************************************************************************* + * + * 2007-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Stop a service + * + * Status: Written, looks finished, but untested. + * + * respawn: + * - disable respawning: set status to ST_RESPAWN_STOP + * - send term signal? no => can be done in "off" + * => set environment CINIT_SVC_PID + * once and respawn: + * - look for 'off' binary, execute if present + * - mark service as off or delete it? + */ + +#include /* NULL */ +#include /* fork */ +#include /* strerror */ +#include /* errno */ +#include /* PATH_MAX */ +#include /* waitpid */ + +#include "svc.h" /* struct * */ +#include "svc-intern.h" /* struct * */ +#include "messages.h" /* MSG_* */ +#include "intern.h" /* execute_sth */ +#include "cinit.h" /* CINIT_DATA_LEN */ +#include "signals.h" /* signal handling */ + +uint32_t svc_disable(struct listitem *li) +{ + char buf[CINIT_DATA_LEN]; + + svc_set_status(li, CINIT_ST_SH_STOP); + + li->pid = fork(); + + /********************** Error ************************/ + if(li->pid < 0) { + svc_report_status(li->abs_path, MSG_SVC_FORK, strerror(errno)); + svc_set_status(li, CINIT_ST_BAD_ERR); + return CINIT_ASW_ERR_INTERN; + } + + /********************** Parent / fork() ************************/ + if(li->pid > 0) { + /* FIXME: why duplicate? */ + svc_set_status(li, CINIT_ST_SH_STOP); + return CINIT_ASW_OK; + } + + /********************** Client / fork() ************************/ + svc_report_status(li->abs_path, MSG_SVC_STOP, NULL); + + cinit_cp_data(buf, li->abs_path); + if(!path_append(buf, C_OFF)) _exit(1); + + /* + * Check for existence + */ + li->status = file_exists(buf); + + if(li->status == FE_NOT) { + _exit(0); + } + + if(li->status == FE_FILE) { + /* + * FIXME: reset signals: Is this necessary? Or does fork clean it anyway? + */ + set_signals(SIGSTAGE_CLIENT); + + /* + * and now, fire it up + */ + execute_sth(buf); + } else { + /* + * FIXME: report? + */ + /* + * either no file or an error + */ + _exit(1); + } + + /* FIXME: we will never return ... */ + return CINIT_ASW_OK; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_fail.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_fail.c new file mode 100644 index 00000000..63ed7ff9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_fail.c @@ -0,0 +1,38 @@ + +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Mark the service as being failed + */ + +#include "svc.h" +#include "svc-intern.h" + +void svc_fail(struct listitem *li) +{ + if(li->status & CINIT_ST_ONCE_RUN) + li->status = CINIT_ST_ONCE_FAIL; + else { + /* + * FIXME: do something senseful, record time of dead? + */ + li->status = CINIT_ST_RESPAWNING; + } +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_handle_pending.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_handle_pending.c new file mode 100644 index 00000000..c8ae2f68 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_handle_pending.c @@ -0,0 +1,110 @@ +/******************************************************************************* + * + * 2006-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Handle pending services + * + */ + +#include /* NULL */ + +#include /* NULL */ +#include "intern.h" /* mini_printf */ +#include "messages.h" /* messages */ +#include "svc.h" /* svc_init */ +#include "svc-intern.h" /* svc_init */ + +/*********************************************************************** + * go through the pending list and exit at the end. + * we will be called again after something changed: + * svc_status_changed() is triggered by the death of one or more children + * and sets up changes + */ +int svc_handle_pending(struct dep *pending) +{ + struct dep *tmp = pending; + struct dep *hack; + struct timespec ts; + + mini_printf(MSG_TREE_EXEC, 1); + + /* apply changes to changed services */ + while(tmp != NULL) { + /* to be started */ + if(tmp->svc->status & (CINIT_ST_SH_ONCE | CINIT_ST_SH_RESPAWN)) { + svc_start(tmp->svc); + tmp = dep_entry_del(tmp); + } + + switch(svc_needs_status(tmp->svc)) { + case CINIT_SNS_NEEDS_STARTED: + /* + * FIXME: MSG_* + */ + svc_report_status(tmp->svc->abs_path, "Finished needs.", NULL); + + /* execute service, add dependencies, remove from list */ + svc_start(tmp->svc); + if(!dep_needs_wants_add(&tmp, tmp->svc, DEP_NEEDS)) return 0; + if(!dep_needs_wants_add(&tmp, tmp->svc, DEP_WANTS)) return 0; + tmp = dep_entry_del(tmp); + break; + + case CINIT_SNS_NEEDS_FAILED: + /* + * mark service as NEED_FAILD and delete from list + */ + /* FIXME: reporting moved to svc_needs_status.c */ + //svc_report_status(tmp->svc->abs_path, MSG_SVC_NEED_FAIL, NULL); + svc_set_status(tmp->svc, CINIT_ST_NEED_FAILD); + tmp = dep_entry_del(tmp); + break; + + case CINIT_SNS_NEEDS_UNFINISHED: + /* + * FIXME: continue here! + */ + + hack = tmp->svc->needs; + do { + // get needs +// printf("%s waits for %s",tmp->svc->abs_path,hack->svc->abs_path); + // display status of needs + // printf("%s: %ld\n",hack->svc->abs_path,hack->svc->status); + hack = hack->next; + } while(hack != tmp->svc->needs); + + tmp = tmp->next; /* continue with the next item */ + ts.tv_sec = 2; + ts.tv_nsec = 0; + nanosleep(&ts, NULL); + break; + } + /* + * This case happens, if it's the last service waiting for something + */ + /* + * if(tmp == tmp->next) { + * + * nanosleep()? printf("BUUUUUUUUUUUUUG, exit\n"); break; } + */ + } + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_needs_status.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_needs_status.c new file mode 100644 index 00000000..9b9e0243 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_needs_status.c @@ -0,0 +1,62 @@ +/******************************************************************************* + * + * 2005-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Return status of the needs of this service + * + */ + +#include /* NULL */ +#include "svc.h" /* service information */ +#include "svc-intern.h" /* service information */ + +int svc_needs_status(struct listitem *svc) +{ + int retval = CINIT_SNS_NEEDS_STARTED; + struct dep *deps = svc->needs; + + if(deps == NULL) + return CINIT_SNS_NEEDS_STARTED; /* no needs, everything fine */ + + do { + /* + * worst case: need failed + */ + if((deps->svc->status & CINIT_ST_NEED_FAILD) || + (deps->svc->status & CINIT_ST_ONCE_FAIL) || + (deps->svc->status & CINIT_ST_BAD_ERR)) { + printf("%s not started, because %s failed.\n", svc->abs_path, deps->svc->abs_path); + retval = CINIT_SNS_NEEDS_FAILED; + break; + } + /* + * services are being started + */ + if((deps->svc->status & CINIT_ST_SH_ONCE) || + (deps->svc->status & CINIT_ST_SH_RESPAWN) || + (deps->svc->status & CINIT_ST_ONCE_RUN)) { + // printf("%s (%ld) waits for %s (%ld)\n",svc->abs_path, svc->status, + // deps->svc->abs_path, deps->svc->status); + retval = CINIT_SNS_NEEDS_UNFINISHED; + } + deps = deps->next; + } while(deps != svc->needs); + + return retval; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_report_status.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_report_status.c new file mode 100644 index 00000000..9a1c1bab --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_report_status.c @@ -0,0 +1,39 @@ +/******************************************************************************* + * + * 2006-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Tell the world what happened to the service + */ + +#include "intern.h" /* mini_printf */ +#include "messages.h" /* MSG_INTRO_SVC */ + +void svc_report_status(char *svc, char *msg, char *err) +{ + mini_printf(MSG_INTRO_SVC, 1); + mini_printf(svc, 1); + mini_printf(": ", 1); + mini_printf(msg, 1); + if(err) { + mini_printf(" (", 1); + mini_printf(err, 1); + mini_printf(")", 1); + } + mini_printf("\n", 1); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_respawn_check.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_respawn_check.c new file mode 100644 index 00000000..86fe71ae --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_respawn_check.c @@ -0,0 +1,40 @@ + +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * OBSOLETED? not in use. + * + * Check whether service is existent + */ + +#error "NOT IN USE" + +#include /* NULL */ +#include /* PATH_MAX */ +#include "svc.h" + +/* checking for existence is done before! */ +int svc_respawn_check(struct listitem *svc) +{ + char buf[PATH_MAX + 1]; + + strcpy(buf, svc->abs_path); + if(!path_append(buf, C_RESPAWN)) + return 0} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_set_status.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_set_status.c new file mode 100644 index 00000000..647ea20a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_set_status.c @@ -0,0 +1,37 @@ + +/******************************************************************************* + * + * 2005-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Set the status of a service + */ + +#include + +#include "svc-intern.h" + +/* checking for existence is done before! */ +uint32_t svc_set_status(struct listitem *li, uint32_t status) +{ + /* + * FIXME: also set time? + */ + + return (li->status = status); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_should_respawn.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_should_respawn.c new file mode 100644 index 00000000..a217261a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_should_respawn.c @@ -0,0 +1,32 @@ + +/******************************************************************************* + * + * 2006-2008 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Return whether should respawn or not + */ + +#include "svc-intern.h" +#include "svc.h" + +/* checking for existence is done before! */ +int svc_should_respawn(struct listitem *li) +{ + return (li->status & CINIT_ST_SH_RESPAWN); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_start.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_start.c new file mode 100644 index 00000000..0715697a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_start.c @@ -0,0 +1,142 @@ +/******************************************************************************* + * + * 2005-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Start a service + */ + +#include /* NULL */ +#include /* fork */ +#include /* strerror */ +#include /* errno */ +#include /* PATH_MAX */ +#include /* nanosleep() */ + +#include "svc.h" /* struct * */ +#include "svc-intern.h" /* struct * */ +#include "messages.h" /* MSG_* */ +#include "intern.h" /* execute_sth */ +#include "cinit.h" /* CINIT_DATA_LEN */ +#include "signals.h" /* signal handling */ + +//void svc_start(struct listitem *li, int strict) +void svc_start(struct listitem *li) +{ + char buf[CINIT_DATA_LEN]; + struct timespec ts; + int delay = 0; /* FIXME: to be calculated by waitpid status, if respawing */ + + /* first update status before forking ! */ + if(li->status & CINIT_ST_SH_ONCE) li->status = CINIT_ST_ONCE_RUN; + else li->status = CINIT_ST_RESPAWNING; + + /* set start time */ + li->start = time(NULL); + + /* + * FIXME: All cleanup must go here close(fds); reset signals reset env? + * FIXME: Add logging possibility to here open (0,1,2) to other processes, + * if specified + */ + + /* + * BUG: the following child may return _before_ the fork returns in the + * parent. Thus this pid may not be registered. And that's the reason why + * we need the global svc_lock! + */ + li->pid = fork(); + + /********************** parent ************************/ + if(li->pid > 0) { + printf("%s is at %d\n", li->abs_path, li->pid); + return; + } + + /********************** Error ************************/ + if(li->pid < 0) { + svc_report_status(li->abs_path, MSG_SVC_FORK, strerror(errno)); + svc_set_status(li, CINIT_ST_BAD_ERR); + return; + } + + /********************** Client / fork() ************************/ + /* + * sleep, if necesseray + */ + if(delay) { + ts.tv_sec = delay; + ts.tv_nsec = 0; + + /* + * FIXME: also report value; int2char + */ + printf("Delay: %d\n", delay); + svc_report_status(li->abs_path, MSG_SVC_SLEEP, NULL); + + /* + * do not need to check for errors, because we can continue anyway + */ + /* + * WRONG: FIXME: look whether to sleep again + */ + nanosleep(&ts, NULL); + } + svc_report_status(li->abs_path, MSG_SVC_START, NULL); + + cinit_cp_data(buf, li->abs_path); + if(!path_append(buf, C_ON)) + return; + + /* + * Check for existence + */ + li->status = file_exists(buf); + + if(li->status == FE_NOT) { + /* + * FIXME: remove later + */ + printf("********************\n"); + printf("WO/EXE: %s\n", li->abs_path); + printf("********************\n"); + /* + * probably a problem: we exit too fast, cinit does not yet have us in + * the process list. is that possible? => catch with sleep + */ + // sleep(2); + _exit(0); /* nothing there? fine! */ + } + + if(li->status == FE_FILE) { + set_signals(SIGSTAGE_CLIENT); + + /* + * and now, fire it up + */ + execute_sth(buf); + } else { + /* + * FIXME: report? + */ + /* + * either no file or an error + */ + _exit(1); + } +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_status_changed.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_status_changed.c new file mode 100644 index 00000000..eeff8af7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_status_changed.c @@ -0,0 +1,73 @@ +/******************************************************************************* + * + * 2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Handle changed services + * + */ + +#include /* Macros for waitpid */ +#include /* NULL */ +//#include /* gettimeofday() */ /* FIXME: CHECK POSIX */ +#include /* time() */ + +#include "svc-intern.h" /* listem */ +#include "svc.h" /* service status */ +#include "intern.h" /* mini_printf */ +//#include "messages.h" /* messages/D_PRINTF */ + + +/*********************************************************************** + * register changes from our children + */ +int svc_status_changed() +{ + int success; + int tmp = 0; + struct listitem *svc; + pid_t pid; + + while((pid = waitpid(-1, &tmp, WNOHANG)) > 0) { + svc = list_search_pid(pid); + + if(!svc) continue; /* ignore stuff from our lazy children */ + + success = (WIFEXITED(svc->waitpid) && !WEXITSTATUS(svc->waitpid)) ? 1 : 0; + svc->exited = time(NULL); + + /************************************************************************ + * Update status using a "status translation table" + */ + + /* once running service exited */ + if(svc->status & CINIT_ST_ONCE_RUN) { + if(success) { + svc->status = CINIT_ST_ONCE_OK; + } else { + svc->status = CINIT_ST_ONCE_FAIL; + } + } + /* respawing service died */ + else if(svc->status & CINIT_ST_RESPAWNING) { + svc->status = CINIT_ST_SH_RESPAWN; + } + } + + return tmp; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_stop_deps.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_stop_deps.c new file mode 100644 index 00000000..02d6d6ed --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_stop_deps.c @@ -0,0 +1,66 @@ +/******************************************************************************* + * + * 2007-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + FIXME: not needed anymore! -> change to svc_status_changed() + * Stop a service, taking care about its dependencies + */ + +#include "svc.h" /* enums */ +#include "svc-intern.h" /* struct listitem */ + +/* + * how == CINIT_SSSO_COMPLETE => stop needs/wants before + * how & CINIT_SSSO_WO_NEEDS => omit needs + * how & CINIT_SSSO_WO_WANTS => omit wants + */ + +void svc_stop_deps(struct listitem *li, int how) +{ + struct dep *tmp; + + /* + * don't continue if already being stopped + */ + if(li->status & CINIT_ST_SH_STOP) return; + + /* + * shutdown depending services first: needed_by + */ + tmp = li->needed_by; + do { + if(how & CINIT_SSSO_WO_NEEDS) + break; + svc_stop_deps(tmp->svc, how); + tmp = tmp->next; + } while(tmp != li->needed_by); + + /* + * shutdown depending services first: wanted_by + */ + tmp = li->wanted_by; + do { + if(how & CINIT_SSSO_WO_WANTS) + break; + svc_stop_deps(tmp->svc, how); + tmp = tmp->next; + } while(tmp != li->wanted_by); + + svc_disable(li); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_success.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_success.c new file mode 100644 index 00000000..cef5b280 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/svc_success.c @@ -0,0 +1,39 @@ +/******************************************************************************* + * + * 2006-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Set the status of a service + */ + +#include /* NULL */ + +#include "svc.h" /* listitem, svc_report_status */ +#include "svc-intern.h" /* listitem, svc_report_status */ +#include "messages.h" /* messages */ + +void svc_success(struct listitem *li) +{ + if(li->status & CINIT_ST_ONCE_RUN) { + svc_report_status(li->abs_path, MSG_SVC_OK_ONCE, NULL); + li->status = CINIT_ST_ONCE_OK; + } else { + svc_report_status(li->abs_path, MSG_SVC_OK_RESPAWN, NULL); + li->status = CINIT_ST_RESPAWNING; + } +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/svc/tree_exec.c b/software/cinit/browse_source/cinit-0.3pre18/src/svc/tree_exec.c new file mode 100644 index 00000000..5e58572d --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/svc/tree_exec.c @@ -0,0 +1,115 @@ +/******************************************************************************* + * + * 2006-2009 Nico Schottelius (nico-cinit at schottelius.org) + * + * This file is part of cinit. + + * cinit is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * cinit is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with cinit. If not, see . + + * + * Start the service tree we created + */ + +#include /* NULL */ + +#include /* NULL */ +#include "intern.h" /* mini_printf */ +#include "messages.h" /* messages */ +#include "svc.h" /* svc_init */ +#include "svc-intern.h" /* svc_init */ + +/* some thoughts... + * + * - we already generated the tree, now we need to start it from + * the endings + * + * - after starting the first service we have to care about SIG_CHILD + * to record changes + * + * - we execute all services in parallel without problems, because of + * SIG_CHILD notification + * + * - After successfully starting the service we start the services that + * need or want that service + */ +int tree_exec(struct dep *start) +{ + struct dep *tmp = start; + struct dep *hack; + struct timespec ts; + + mini_printf(MSG_TREE_EXEC, 1); + + /* + * the main starting loop: All services in this list should be started, but + * it is possible that dependent services are in the list. In this case + * simply skip the current service + */ + do { + switch (svc_needs_status(tmp->svc)) { + case CINIT_SNS_NEEDS_STARTED: + /* + * FIXME: MSG_* + */ + svc_report_status(tmp->svc->abs_path, "Finished needs.", NULL); + + /* execute service, add dependencies, remove from list */ + svc_start(tmp->svc); + if(!dep_needs_wants_add(&tmp, tmp->svc, DEP_NEEDS)) return 0; + if(!dep_needs_wants_add(&tmp, tmp->svc, DEP_WANTS)) return 0; + tmp = dep_entry_del(tmp); + break; + + case CINIT_SNS_NEEDS_FAILED: + /* + * mark service as NEED_FAILD and delete from list + */ + /* FIXME: reporting moved to svc_needs_status.c */ + //svc_report_status(tmp->svc->abs_path, MSG_SVC_NEED_FAIL, NULL); + svc_set_status(tmp->svc, CINIT_ST_NEED_FAILD); + tmp = dep_entry_del(tmp); + break; + + case CINIT_SNS_NEEDS_UNFINISHED: + /* + * FIXME: continue here! + */ + + hack = tmp->svc->needs; + do { + // get needs +// printf("%s waits for %s",tmp->svc->abs_path,hack->svc->abs_path); + // display status of needs + // printf("%s: %ld\n",hack->svc->abs_path,hack->svc->status); + hack = hack->next; + } while(hack != tmp->svc->needs); + + tmp = tmp->next; /* continue with the next item */ + ts.tv_sec = 2; + ts.tv_nsec = 0; + nanosleep(&ts, NULL); + break; + } + /* + * This case happens, if it's the last service waiting for something + */ + /* + * if(tmp == tmp->next) { + * + * nanosleep()? printf("BUUUUUUUUUUUUUG, exit\n"); break; } + */ + } while(tmp != NULL); + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/data1.c b/software/cinit/browse_source/cinit-0.3pre18/src/test/data1.c new file mode 100644 index 00000000..5be9b26a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/data1.c @@ -0,0 +1,53 @@ +#include +#include +#include + +int main() +{ + int a, b, e; + char *c = "/etc/cinit/svc/...", *data; + + int a2, b2; + char *c2; + + a2 = b2 = 0; + + a = 1001; + b = strlen(c); + c2 = malloc(b + 1); + if(!c2) + return 40; + + e = sizeof(a) + sizeof(b) + b; + + printf("e=%d (b=%d)\n", e, b); + + data = malloc(e); + if(!data) + return 20; + + /* + * in + */ + strcpy(data, (char *) &a); + e = sizeof(a); + strcpy(&data[e], (char *) &b); + e += sizeof(b); + strcpy(&data[e], c); + + /* + * out + */ + strncpy((char *) &a2, data, sizeof(a2)); + printf("a2=%d\n", a2); + e = sizeof(a2); + + strncpy((char *) &b2, &data[e], sizeof(b2)); + printf("b2=%d\n", b2); + e += sizeof(b2); + + strncpy(c2, &data[e], b2); + printf("c2=%s\n", c2); + + return 0; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c new file mode 100644 index 00000000..77cc731a --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c @@ -0,0 +1,147 @@ +/************* + * + * A very small program to show that the child() of a fork() + * proceess can / CANNOT exit before fork() returns in the parent + * + * Nico Schottelius, Copying: GPLv3, 20070925 + * + * I run it this way: + + * % ./fork-latency | grep "Unknown child exited" | sort | uniq | wc -l + * => Number of children that exited before we recorded them! (should be 0) + * + * % ./fork-latency | grep "found" | sort | uniq | wc -l + * => children, which exited after fork() returned. + * + * % ./fork-latency | grep "found" | wc -l + * => should equal MAX (see sourcecode) + * + * % ./fork-latency | wc -l + * => should also equal MAX (see sourcecode) + * + * Some interesting facts: + * + * - With MAX=5000 I get: + * + * [20:02] ikn:test% ./fork-latency | grep "found" | wc -l + * 731705 + * [20:03] ikn:test% ./fork-latency | wc -l + * 734683 + * + * [20:04] ikn:test% ./fork-latency | sort | head -n 4 + * 1339) found + * 1339) found + * 1339) found + * 1339) found + * + * + * I'm wondering, why even with WNOHANG I get to check pids twice, + * also because I'm clearing the pid, after I found it (list[o] = 0). + * + +This code is weired (using return intead of exit, see below): + +[20:38] ikn:test% ./fork-latency > D +[20:38] ikn:test% cat D +MAX=2 +MAX=2 +[1] Forked 12264 +MAX=2 +[1] Forked 12264 +[0] Forked 12265 +(12264) found +(12265) found +[20:38] ikn:test% + + +With _exit: + +[21:17] ikn:test% ./fork-latency > E +[21:17] ikn:test% cat E +MAX=2 +[1] Forked 15388 +[0] Forked 15389 +(15388) found +(15389) found + + + */ + +#include /* fork() */ +#include /* sigaction, sigemtpyset */ +#include /* waitpid */ +#include /* printf, NULL */ + +#define MAX 20000 /* number of forks */ + +pid_t list[MAX]; +int i; +int got_sig; + +void sig_child(int sig) +{ + got_sig = 1; +} + +void reap_child() +{ + int o; + int found; + int status; + pid_t pid; + + got_sig = 0; + + /* WNOHANG is evil: it makes us call the loop MORE THAN ONCE + * PER DEAD CHILD! -> registering a dead child via signal + * handler makes WNOHANG obsolete + */ + //while((pid = waitpid(-1, &status, WNOHANG)) > 0) { + while((pid = waitpid(-1, &status, 0)) > 0) { + found = 0; + // no need to search the whole list, use o = i instead + // for(o = 0; o < MAX; o++) { + for(o = i; o < MAX; o++) { + if(list[o] == pid) { + list[o] = 0; /* empty */ + found = 1; + break; + } + } + if(found) { + printf("(%d) found\n", pid); + } else { + printf("(%d) Unknown child exited\n", pid); + } + } +} + +int main() +{ + struct sigaction sa; + + /* listen to SIGCHLD */ + sigemptyset(&sa.sa_mask); + sa.sa_flags = 0; + sa.sa_handler = sig_child; + sa.sa_flags = SA_NOCLDSTOP; + sigaction(SIGCHLD, &sa, NULL); + + i = MAX; + + printf("MAX=%d\n", i); + + for(i = MAX - 1; i >= 0; i--) { + list[i] = fork(); + /* child exists immediately */ + if(list[i] == 0) _exit(0); + + /* this causes a different behaviour */ + /* if(list[i] == 0) return 0; */ + + printf("[%d] Forked %d\n", i, list[i]); + + /* parent code */ + if(got_sig) reap_child(); + } +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.A b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.A new file mode 100644 index 00000000..bd0df9f7 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.A @@ -0,0 +1,8 @@ +Forking 1 +Forking 1 +(11456) found +Forking 0 +Forking 1 +(11456) found +Forking 0 +(11457) found diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.B b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.B new file mode 100644 index 00000000..95f042c1 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.B @@ -0,0 +1,7 @@ +Forking 1 (0) +Forking 1 (11799) +Forking 0 (0) +Forking 1 (11799) +Forking 0 (11800) +(11799) found +(11800) found diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.C b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.C new file mode 100644 index 00000000..9c1b6922 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.C @@ -0,0 +1,5 @@ +[1] Forked 11905 +[1] Forked 11905 +[0] Forked 11906 +(11905) found +(11906) found diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.D b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.D new file mode 100644 index 00000000..4adfec55 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.D @@ -0,0 +1,8 @@ +MAX=2 +MAX=2 +[1] Forked 12264 +MAX=2 +[1] Forked 12264 +[0] Forked 12265 +(12264) found +(12265) found diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.E b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.E new file mode 100644 index 00000000..4a4190a6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.E @@ -0,0 +1,5 @@ +MAX=2 +[1] Forked 15388 +[0] Forked 15389 +(15388) found +(15389) found diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.F b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.F new file mode 100644 index 00000000..a7ebfe81 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.F @@ -0,0 +1,40001 @@ +MAX=20000 +[19999] Forked 17761 +[19998] Forked 17762 +(17761) found +(17762) found +[19997] Forked 17763 +[19996] Forked 17764 +(17763) found +(17764) found +[19995] Forked 17765 +(17765) found +[19994] Forked 17766 +(17766) found +[19993] Forked 17767 +(17767) found +[19992] Forked 17768 +(17768) found +[19991] Forked 17769 +(17769) found +[19990] Forked 17770 +(17770) found +[19989] Forked 17771 +(17771) found +[19988] Forked 17772 +(17772) found +[19987] Forked 17773 +(17773) found +[19986] Forked 17774 +(17774) found +[19985] Forked 17775 +(17775) found +[19984] Forked 17776 +(17776) found +[19983] Forked 17777 +(17777) found +[19982] Forked 17778 +(17778) found +[19981] Forked 17779 +(17779) found +[19980] Forked 17780 +(17780) found +[19979] Forked 17781 +(17781) found +[19978] Forked 17782 +(17782) found +[19977] Forked 17783 +(17783) found +[19976] Forked 17784 +(17784) found +[19975] Forked 17785 +(17785) found +[19974] Forked 17786 +(17786) found +[19973] Forked 17787 +(17787) found +[19972] Forked 17788 +(17788) found +[19971] Forked 17789 +(17789) found +[19970] Forked 17790 +(17790) found +[19969] Forked 17791 +(17791) found +[19968] Forked 17792 +(17792) found +[19967] Forked 17793 +[19966] Forked 17794 +(17793) found +(17794) found +[19965] Forked 17795 +[19964] Forked 17796 +(17795) found +(17796) found +[19963] Forked 17797 +[19962] Forked 17798 +(17797) found +(17798) found +[19961] Forked 17799 +[19960] Forked 17800 +(17799) found +(17800) found +[19959] Forked 17801 +[19958] Forked 17802 +(17801) found +(17802) found +[19957] Forked 17803 +[19956] Forked 17804 +(17803) found +(17804) found +[19955] Forked 17805 +[19954] Forked 17806 +(17805) found +(17806) found +[19953] Forked 17807 +[19952] Forked 17808 +(17807) found +(17808) found +[19951] Forked 17809 +[19950] Forked 17810 +(17809) found +(17810) found +[19949] Forked 17811 +[19948] Forked 17812 +(17811) found +(17812) found +[19947] Forked 17813 +[19946] Forked 17814 +(17813) found +(17814) found +[19945] Forked 17815 +[19944] Forked 17816 +(17815) found +(17816) found +[19943] Forked 17817 +[19942] Forked 17818 +(17817) found +(17818) found +[19941] Forked 17819 +[19940] Forked 17820 +(17819) found +(17820) found +[19939] Forked 17821 +[19938] Forked 17822 +(17821) found +(17822) found +[19937] Forked 17823 +[19936] Forked 17824 +(17823) found +(17824) found +[19935] Forked 17825 +[19934] Forked 17826 +(17825) found +(17826) found +[19933] Forked 17827 +[19932] Forked 17828 +(17827) found +(17828) found +[19931] Forked 17829 +[19930] Forked 17830 +(17829) found +(17830) found +[19929] Forked 17831 +[19928] Forked 17832 +(17831) found +(17832) found +[19927] Forked 17833 +[19926] Forked 17834 +(17833) found +(17834) found +[19925] Forked 17835 +[19924] Forked 17836 +(17835) found +(17836) found +[19923] Forked 17837 +[19922] Forked 17838 +(17837) found +(17838) found +[19921] Forked 17839 +[19920] Forked 17840 +(17839) found +(17840) found +[19919] Forked 17841 +[19918] Forked 17842 +(17841) found +(17842) found +[19917] Forked 17843 +[19916] Forked 17844 +(17843) found +(17844) found +[19915] Forked 17845 +[19914] Forked 17846 +(17845) found +(17846) found +[19913] Forked 17847 +[19912] Forked 17848 +(17847) found +(17848) found +[19911] Forked 17849 +[19910] Forked 17850 +(17849) found +(17850) found +[19909] Forked 17851 +[19908] Forked 17852 +(17851) found +(17852) found +[19907] Forked 17853 +[19906] Forked 17854 +(17853) found +(17854) found +[19905] Forked 17855 +[19904] Forked 17856 +(17855) found +(17856) found +[19903] Forked 17857 +[19902] Forked 17858 +(17857) found +(17858) found +[19901] Forked 17859 +[19900] Forked 17860 +(17859) found +(17860) found +[19899] Forked 17861 +[19898] Forked 17862 +(17861) found +(17862) found +[19897] Forked 17863 +[19896] Forked 17864 +(17863) found +(17864) found +[19895] Forked 17865 +[19894] Forked 17866 +(17865) found +(17866) found +[19893] Forked 17867 +[19892] Forked 17868 +(17867) found +(17868) found +[19891] Forked 17869 +[19890] Forked 17870 +(17869) found +(17870) found +[19889] Forked 17871 +[19888] Forked 17872 +(17871) found +(17872) found +[19887] Forked 17873 +[19886] Forked 17874 +(17873) found +(17874) found +[19885] Forked 17875 +[19884] Forked 17876 +(17875) found +(17876) found +[19883] Forked 17877 +[19882] Forked 17878 +(17877) found +(17878) found +[19881] Forked 17879 +[19880] Forked 17880 +(17879) found +(17880) found +[19879] Forked 17881 +[19878] Forked 17882 +(17881) found +(17882) found +[19877] Forked 17883 +[19876] Forked 17884 +(17883) found +(17884) found +[19875] Forked 17885 +[19874] Forked 17886 +(17885) found +(17886) found +[19873] Forked 17887 +[19872] Forked 17888 +(17887) found +(17888) found +[19871] Forked 17889 +[19870] Forked 17890 +(17889) found +(17890) found +[19869] Forked 17891 +[19868] Forked 17892 +(17891) found +(17892) found +[19867] Forked 17893 +[19866] Forked 17894 +(17893) found +(17894) found +[19865] Forked 17895 +[19864] Forked 17896 +(17895) found +(17896) found +[19863] Forked 17897 +[19862] Forked 17898 +(17897) found +(17898) found +[19861] Forked 17899 +[19860] Forked 17900 +(17899) found +(17900) found +[19859] Forked 17901 +[19858] Forked 17902 +(17901) found +(17902) found +[19857] Forked 17903 +[19856] Forked 17904 +(17903) found +(17904) found +[19855] Forked 17905 +[19854] Forked 17906 +(17905) found +(17906) found +[19853] Forked 17907 +[19852] Forked 17908 +(17907) found +(17908) found +[19851] Forked 17909 +[19850] Forked 17910 +(17909) found +(17910) found +[19849] Forked 17911 +[19848] Forked 17912 +(17911) found +(17912) found +[19847] Forked 17913 +[19846] Forked 17914 +(17913) found +(17914) found +[19845] Forked 17915 +[19844] Forked 17916 +(17915) found +(17916) found +[19843] Forked 17917 +[19842] Forked 17918 +(17917) found +(17918) found +[19841] Forked 17919 +[19840] Forked 17920 +(17919) found +(17920) found +[19839] Forked 17921 +[19838] Forked 17922 +(17921) found +(17922) found +[19837] Forked 17923 +[19836] Forked 17924 +(17923) found +(17924) found +[19835] Forked 17925 +(17925) found +[19834] Forked 17926 +(17926) found +[19833] Forked 17927 +(17927) found +[19832] Forked 17928 +(17928) found +[19831] Forked 17929 +(17929) found +[19830] Forked 17930 +(17930) found +[19829] Forked 17931 +(17931) found +[19828] Forked 17932 +[19827] Forked 17933 +(17932) found +(17933) found +[19826] Forked 17934 +(17934) found +[19825] Forked 17935 +(17935) found +[19824] Forked 17936 +(17936) found +[19823] Forked 17937 +(17937) found +[19822] Forked 17938 +(17938) found +[19821] Forked 17939 +(17939) found +[19820] Forked 17940 +(17940) found +[19819] Forked 17941 +(17941) found +[19818] Forked 17942 +(17942) found +[19817] Forked 17943 +(17943) found +[19816] Forked 17944 +(17944) found +[19815] Forked 17945 +(17945) found +[19814] Forked 17946 +(17946) found +[19813] Forked 17947 +(17947) found +[19812] Forked 17948 +(17948) found +[19811] Forked 17949 +(17949) found +[19810] Forked 17950 +(17950) found +[19809] Forked 17951 +(17951) found +[19808] Forked 17952 +(17952) found +[19807] Forked 17953 +(17953) found +[19806] Forked 17954 +(17954) found +[19805] Forked 17955 +(17955) found +[19804] Forked 17956 +(17956) found +[19803] Forked 17957 +(17957) found +[19802] Forked 17958 +(17958) found +[19801] Forked 17959 +(17959) found +[19800] Forked 17960 +(17960) found +[19799] Forked 17961 +(17961) found +[19798] Forked 17962 +(17962) found +[19797] Forked 17963 +(17963) found +[19796] Forked 17964 +(17964) found +[19795] Forked 17965 +(17965) found +[19794] Forked 17966 +(17966) found +[19793] Forked 17967 +(17967) found +[19792] Forked 17968 +(17968) found +[19791] Forked 17969 +(17969) found +[19790] Forked 17970 +[19789] Forked 17971 +(17970) found +(17971) found +[19788] Forked 17972 +[19787] Forked 17973 +(17972) found +(17973) found +[19786] Forked 17974 +[19785] Forked 17975 +(17974) found +(17975) found +[19784] Forked 17976 +[19783] Forked 17977 +(17976) found +(17977) found +[19782] Forked 17978 +[19781] Forked 17979 +(17978) found +(17979) found +[19780] Forked 17980 +[19779] Forked 17981 +(17981) found +(17980) found +[19778] Forked 17982 +(17982) found +[19777] Forked 17983 +(17983) found +[19776] Forked 17984 +(17984) found +[19775] Forked 17985 +(17985) found +[19774] Forked 17986 +(17986) found +[19773] Forked 17987 +(17987) found +[19772] Forked 17988 +(17988) found +[19771] Forked 17989 +(17989) found +[19770] Forked 17990 +(17990) found +[19769] Forked 17991 +(17991) found +[19768] Forked 17992 +(17992) found +[19767] Forked 17993 +(17993) found +[19766] Forked 17994 +(17994) found +[19765] Forked 17995 +(17995) found +[19764] Forked 17996 +(17996) found +[19763] Forked 17997 +(17997) found +[19762] Forked 17998 +(17998) found +[19761] Forked 17999 +(17999) found +[19760] Forked 18000 +(18000) found +[19759] Forked 18001 +(18001) found +[19758] Forked 18002 +(18002) found +[19757] Forked 18003 +(18003) found +[19756] Forked 18004 +(18004) found +[19755] Forked 18005 +(18005) found +[19754] Forked 18006 +(18006) found +[19753] Forked 18007 +(18007) found +[19752] Forked 18008 +(18008) found +[19751] Forked 18009 +(18009) found +[19750] Forked 18010 +(18010) found +[19749] Forked 18011 +(18011) found +[19748] Forked 18012 +(18012) found +[19747] Forked 18013 +(18013) found +[19746] Forked 18014 +(18014) found +[19745] Forked 18015 +(18015) found +[19744] Forked 18016 +(18016) found +[19743] Forked 18017 +(18017) found +[19742] Forked 18018 +(18018) found +[19741] Forked 18019 +(18019) found +[19740] Forked 18020 +(18020) found +[19739] Forked 18021 +(18021) found +[19738] Forked 18022 +(18022) found +[19737] Forked 18023 +(18023) found +[19736] Forked 18024 +(18024) found +[19735] Forked 18025 +(18025) found +[19734] Forked 18026 +(18026) found +[19733] Forked 18027 +(18027) found +[19732] Forked 18028 +(18028) found +[19731] Forked 18029 +(18029) found +[19730] Forked 18030 +(18030) found +[19729] Forked 18031 +(18031) found +[19728] Forked 18032 +(18032) found +[19727] Forked 18033 +(18033) found +[19726] Forked 18034 +(18034) found +[19725] Forked 18035 +(18035) found +[19724] Forked 18036 +(18036) found +[19723] Forked 18037 +(18037) found +[19722] Forked 18038 +(18038) found +[19721] Forked 18039 +(18039) found +[19720] Forked 18040 +(18040) found +[19719] Forked 18041 +(18041) found +[19718] Forked 18042 +[19717] Forked 18043 +(18042) found +(18043) found +[19716] Forked 18044 +[19715] Forked 18045 +(18044) found +(18045) found +[19714] Forked 18046 +[19713] Forked 18047 +(18046) found +(18047) found +[19712] Forked 18048 +[19711] Forked 18049 +(18049) found +(18048) found +[19710] Forked 18050 +(18050) found +[19709] Forked 18051 +(18051) found +[19708] Forked 18052 +(18052) found +[19707] Forked 18053 +(18053) found +[19706] Forked 18055 +(18055) found +[19705] Forked 18056 +(18056) found +[19704] Forked 18057 +(18057) found +[19703] Forked 18058 +(18058) found +[19702] Forked 18059 +(18059) found +[19701] Forked 18060 +(18060) found +[19700] Forked 18061 +(18061) found +[19699] Forked 18062 +(18062) found +[19698] Forked 18063 +(18063) found +[19697] Forked 18064 +(18064) found +[19696] Forked 18065 +(18065) found +[19695] Forked 18066 +(18066) found +[19694] Forked 18067 +(18067) found +[19693] Forked 18068 +(18068) found +[19692] Forked 18069 +(18069) found +[19691] Forked 18070 +(18070) found +[19690] Forked 18071 +(18071) found +[19689] Forked 18072 +(18072) found +[19688] Forked 18073 +(18073) found +[19687] Forked 18074 +(18074) found +[19686] Forked 18075 +(18075) found +[19685] Forked 18076 +(18076) found +[19684] Forked 18077 +(18077) found +[19683] Forked 18078 +(18078) found +[19682] Forked 18079 +(18079) found +[19681] Forked 18080 +(18080) found +[19680] Forked 18081 +(18081) found +[19679] Forked 18082 +(18082) found +[19678] Forked 18083 +(18083) found +[19677] Forked 18084 +(18084) found +[19676] Forked 18085 +(18085) found +[19675] Forked 18086 +(18086) found +[19674] Forked 18087 +(18087) found +[19673] Forked 18088 +(18088) found +[19672] Forked 18089 +(18089) found +[19671] Forked 18090 +(18090) found +[19670] Forked 18091 +(18091) found +[19669] Forked 18092 +(18092) found +[19668] Forked 18093 +(18093) found +[19667] Forked 18094 +(18094) found +[19666] Forked 18095 +(18095) found +[19665] Forked 18096 +(18096) found +[19664] Forked 18097 +(18097) found +[19663] Forked 18098 +(18098) found +[19662] Forked 18099 +(18099) found +[19661] Forked 18100 +(18100) found +[19660] Forked 18101 +(18101) found +[19659] Forked 18102 +(18102) found +[19658] Forked 18103 +(18103) found +[19657] Forked 18104 +(18104) found +[19656] Forked 18105 +(18105) found +[19655] Forked 18106 +(18106) found +[19654] Forked 18107 +(18107) found +[19653] Forked 18108 +(18108) found +[19652] Forked 18109 +(18109) found +[19651] Forked 18110 +(18110) found +[19650] Forked 18111 +(18111) found +[19649] Forked 18112 +(18112) found +[19648] Forked 18113 +[19647] Forked 18114 +(18113) found +(18114) found +[19646] Forked 18115 +[19645] Forked 18116 +(18115) found +(18116) found +[19644] Forked 18117 +[19643] Forked 18118 +(18117) found +(18118) found +[19642] Forked 18119 +[19641] Forked 18120 +(18119) found +(18120) found +[19640] Forked 18121 +[19639] Forked 18122 +(18121) found +(18122) found +[19638] Forked 18123 +[19637] Forked 18124 +(18123) found +(18124) found +[19636] Forked 18125 +[19635] Forked 18126 +(18125) found +(18126) found +[19634] Forked 18127 +[19633] Forked 18128 +(18127) found +(18128) found +[19632] Forked 18129 +[19631] Forked 18130 +(18129) found +(18130) found +[19630] Forked 18131 +[19629] Forked 18132 +(18131) found +(18132) found +[19628] Forked 18133 +[19627] Forked 18134 +(18133) found +(18134) found +[19626] Forked 18135 +[19625] Forked 18136 +(18135) found +(18136) found +[19624] Forked 18137 +[19623] Forked 18138 +(18137) found +(18138) found +[19622] Forked 18139 +[19621] Forked 18140 +(18139) found +(18140) found +[19620] Forked 18141 +[19619] Forked 18142 +(18141) found +(18142) found +[19618] Forked 18143 +[19617] Forked 18144 +(18143) found +(18144) found +[19616] Forked 18145 +[19615] Forked 18146 +(18145) found +(18146) found +[19614] Forked 18147 +[19613] Forked 18148 +(18147) found +(18148) found +[19612] Forked 18149 +[19611] Forked 18150 +(18149) found +(18150) found +[19610] Forked 18151 +[19609] Forked 18152 +(18151) found +(18152) found +[19608] Forked 18153 +[19607] Forked 18154 +(18153) found +(18154) found +[19606] Forked 18155 +[19605] Forked 18156 +(18155) found +(18156) found +[19604] Forked 18157 +[19603] Forked 18158 +(18157) found +(18158) found +[19602] Forked 18159 +[19601] Forked 18160 +(18159) found +(18160) found +[19600] Forked 18161 +(18161) found +[19599] Forked 18162 +(18162) found +[19598] Forked 18163 +(18163) found +[19597] Forked 18164 +(18164) found +[19596] Forked 18165 +(18165) found +[19595] Forked 18166 +(18166) found +[19594] Forked 18167 +(18167) found +[19593] Forked 18168 +(18168) found +[19592] Forked 18169 +(18169) found +[19591] Forked 18170 +(18170) found +[19590] Forked 18171 +(18171) found +[19589] Forked 18172 +(18172) found +[19588] Forked 18173 +(18173) found +[19587] Forked 18174 +(18174) found +[19586] Forked 18175 +(18175) found +[19585] Forked 18176 +(18176) found +[19584] Forked 18177 +(18177) found +[19583] Forked 18178 +(18178) found +[19582] Forked 18179 +(18179) found +[19581] Forked 18180 +(18180) found +[19580] Forked 18181 +(18181) found +[19579] Forked 18182 +(18182) found +[19578] Forked 18183 +(18183) found +[19577] Forked 18184 +(18184) found +[19576] Forked 18185 +(18185) found +[19575] Forked 18186 +(18186) found +[19574] Forked 18187 +(18187) found +[19573] Forked 18188 +(18188) found +[19572] Forked 18189 +(18189) found +[19571] Forked 18190 +(18190) found +[19570] Forked 18191 +(18191) found +[19569] Forked 18192 +(18192) found +[19568] Forked 18193 +(18193) found +[19567] Forked 18194 +(18194) found +[19566] Forked 18195 +(18195) found +[19565] Forked 18196 +(18196) found +[19564] Forked 18197 +[19563] Forked 18198 +(18197) found +(18198) found +[19562] Forked 18199 +[19561] Forked 18200 +(18199) found +(18200) found +[19560] Forked 18201 +[19559] Forked 18202 +(18201) found +(18202) found +[19558] Forked 18203 +[19557] Forked 18204 +(18203) found +(18204) found +[19556] Forked 18205 +[19555] Forked 18206 +(18205) found +(18206) found +[19554] Forked 18207 +[19553] Forked 18208 +(18207) found +(18208) found +[19552] Forked 18209 +[19551] Forked 18210 +(18209) found +(18210) found +[19550] Forked 18211 +[19549] Forked 18212 +(18211) found +(18212) found +[19548] Forked 18213 +[19547] Forked 18214 +(18213) found +(18214) found +[19546] Forked 18215 +[19545] Forked 18216 +(18215) found +(18216) found +[19544] Forked 18217 +[19543] Forked 18218 +(18217) found +(18218) found +[19542] Forked 18219 +[19541] Forked 18220 +(18219) found +(18220) found +[19540] Forked 18221 +[19539] Forked 18222 +(18221) found +(18222) found +[19538] Forked 18223 +[19537] Forked 18224 +(18223) found +(18224) found +[19536] Forked 18225 +[19535] Forked 18226 +(18225) found +(18226) found +[19534] Forked 18227 +[19533] Forked 18228 +(18227) found +(18228) found +[19532] Forked 18229 +[19531] Forked 18230 +(18229) found +(18230) found +[19530] Forked 18231 +[19529] Forked 18232 +(18231) found +(18232) found +[19528] Forked 18233 +[19527] Forked 18234 +(18233) found +(18234) found +[19526] Forked 18235 +[19525] Forked 18236 +(18235) found +(18236) found +[19524] Forked 18237 +[19523] Forked 18238 +(18237) found +(18238) found +[19522] Forked 18239 +[19521] Forked 18240 +(18239) found +(18240) found +[19520] Forked 18241 +[19519] Forked 18242 +(18241) found +(18242) found +[19518] Forked 18243 +[19517] Forked 18244 +(18243) found +(18244) found +[19516] Forked 18245 +[19515] Forked 18246 +(18245) found +(18246) found +[19514] Forked 18247 +[19513] Forked 18248 +(18247) found +(18248) found +[19512] Forked 18249 +[19511] Forked 18250 +(18249) found +(18250) found +[19510] Forked 18251 +[19509] Forked 18252 +(18251) found +(18252) found +[19508] Forked 18253 +[19507] Forked 18254 +(18253) found +(18254) found +[19506] Forked 18255 +[19505] Forked 18256 +(18255) found +(18256) found +[19504] Forked 18257 +[19503] Forked 18258 +(18257) found +(18258) found +[19502] Forked 18259 +[19501] Forked 18260 +(18259) found +(18260) found +[19500] Forked 18261 +[19499] Forked 18262 +(18261) found +(18262) found +[19498] Forked 18263 +[19497] Forked 18264 +(18263) found +(18264) found +[19496] Forked 18265 +[19495] Forked 18266 +(18265) found +(18266) found +[19494] Forked 18267 +[19493] Forked 18268 +(18267) found +(18268) found +[19492] Forked 18269 +[19491] Forked 18270 +(18269) found +(18270) found +[19490] Forked 18271 +[19489] Forked 18272 +(18271) found +(18272) found +[19488] Forked 18273 +[19487] Forked 18274 +(18273) found +(18274) found +[19486] Forked 18275 +[19485] Forked 18276 +(18275) found +(18276) found +[19484] Forked 18277 +[19483] Forked 18278 +(18277) found +(18278) found +[19482] Forked 18279 +[19481] Forked 18280 +(18279) found +(18280) found +[19480] Forked 18281 +[19479] Forked 18282 +(18281) found +(18282) found +[19478] Forked 18283 +[19477] Forked 18284 +(18283) found +(18284) found +[19476] Forked 18285 +[19475] Forked 18286 +(18285) found +(18286) found +[19474] Forked 18287 +[19473] Forked 18288 +(18287) found +(18288) found +[19472] Forked 18289 +[19471] Forked 18290 +(18289) found +(18290) found +[19470] Forked 18291 +[19469] Forked 18292 +(18291) found +(18292) found +[19468] Forked 18293 +[19467] Forked 18294 +(18293) found +(18294) found +[19466] Forked 18295 +[19465] Forked 18296 +(18295) found +(18296) found +[19464] Forked 18297 +[19463] Forked 18298 +(18297) found +(18298) found +[19462] Forked 18299 +[19461] Forked 18300 +(18299) found +(18300) found +[19460] Forked 18301 +[19459] Forked 18302 +(18301) found +(18302) found +[19458] Forked 18303 +[19457] Forked 18304 +(18303) found +(18304) found +[19456] Forked 18305 +[19455] Forked 18306 +(18305) found +(18306) found +[19454] Forked 18307 +[19453] Forked 18308 +(18307) found +(18308) found +[19452] Forked 18309 +[19451] Forked 18310 +(18309) found +(18310) found +[19450] Forked 18311 +[19449] Forked 18312 +(18311) found +(18312) found +[19448] Forked 18313 +[19447] Forked 18314 +(18313) found +(18314) found +[19446] Forked 18315 +[19445] Forked 18316 +(18315) found +(18316) found +[19444] Forked 18317 +[19443] Forked 18318 +(18317) found +(18318) found +[19442] Forked 18319 +[19441] Forked 18320 +(18319) found +(18320) found +[19440] Forked 18321 +[19439] Forked 18322 +(18321) found +(18322) found +[19438] Forked 18323 +[19437] Forked 18324 +(18323) found +(18324) found +[19436] Forked 18325 +[19435] Forked 18326 +(18325) found +(18326) found +[19434] Forked 18327 +[19433] Forked 18328 +(18327) found +(18328) found +[19432] Forked 18329 +[19431] Forked 18330 +(18329) found +(18330) found +[19430] Forked 18331 +[19429] Forked 18332 +(18331) found +(18332) found +[19428] Forked 18333 +[19427] Forked 18334 +(18333) found +(18334) found +[19426] Forked 18335 +[19425] Forked 18336 +(18335) found +(18336) found +[19424] Forked 18337 +(18337) found +[19423] Forked 18338 +[19422] Forked 18339 +(18338) found +(18339) found +[19421] Forked 18340 +[19420] Forked 18341 +(18340) found +(18341) found +[19419] Forked 18342 +[19418] Forked 18343 +(18342) found +(18343) found +[19417] Forked 18344 +[19416] Forked 18345 +(18344) found +(18345) found +[19415] Forked 18346 +[19414] Forked 18347 +(18346) found +(18347) found +[19413] Forked 18348 +[19412] Forked 18349 +(18348) found +(18349) found +[19411] Forked 18350 +[19410] Forked 18351 +(18350) found +(18351) found +[19409] Forked 18352 +[19408] Forked 18353 +(18352) found +(18353) found +[19407] Forked 18354 +[19406] Forked 18355 +(18354) found +(18355) found +[19405] Forked 18356 +[19404] Forked 18357 +(18356) found +(18357) found +[19403] Forked 18358 +[19402] Forked 18359 +(18358) found +(18359) found +[19401] Forked 18360 +[19400] Forked 18361 +(18360) found +(18361) found +[19399] Forked 18362 +[19398] Forked 18363 +(18362) found +(18363) found +[19397] Forked 18364 +[19396] Forked 18365 +(18364) found +(18365) found +[19395] Forked 18366 +[19394] Forked 18367 +(18366) found +(18367) found +[19393] Forked 18368 +[19392] Forked 18369 +(18368) found +(18369) found +[19391] Forked 18370 +[19390] Forked 18371 +(18370) found +(18371) found +[19389] Forked 18372 +[19388] Forked 18373 +(18372) found +(18373) found +[19387] Forked 18374 +[19386] Forked 18375 +(18374) found +(18375) found +[19385] Forked 18376 +[19384] Forked 18377 +(18376) found +(18377) found +[19383] Forked 18378 +[19382] Forked 18379 +(18378) found +(18379) found +[19381] Forked 18380 +(18380) found +[19380] Forked 18381 +(18381) found +[19379] Forked 18382 +(18382) found +[19378] Forked 18383 +(18383) found +[19377] Forked 18384 +(18384) found +[19376] Forked 18385 +(18385) found +[19375] Forked 18386 +(18386) found +[19374] Forked 18387 +(18387) found +[19373] Forked 18388 +(18388) found +[19372] Forked 18389 +(18389) found +[19371] Forked 18390 +(18390) found +[19370] Forked 18391 +(18391) found +[19369] Forked 18392 +(18392) found +[19368] Forked 18393 +(18393) found +[19367] Forked 18394 +(18394) found +[19366] Forked 18395 +(18395) found +[19365] Forked 18396 +(18396) found +[19364] Forked 18397 +(18397) found +[19363] Forked 18398 +(18398) found +[19362] Forked 18399 +(18399) found +[19361] Forked 18400 +(18400) found +[19360] Forked 18401 +(18401) found +[19359] Forked 18402 +(18402) found +[19358] Forked 18403 +(18403) found +[19357] Forked 18404 +(18404) found +[19356] Forked 18405 +(18405) found +[19355] Forked 18406 +(18406) found +[19354] Forked 18407 +(18407) found +[19353] Forked 18408 +(18408) found +[19352] Forked 18409 +(18409) found +[19351] Forked 18410 +(18410) found +[19350] Forked 18411 +(18411) found +[19349] Forked 18412 +(18412) found +[19348] Forked 18413 +(18413) found +[19347] Forked 18414 +(18414) found +[19346] Forked 18415 +(18415) found +[19345] Forked 18416 +(18416) found +[19344] Forked 18417 +(18417) found +[19343] Forked 18418 +(18418) found +[19342] Forked 18419 +[19341] Forked 18420 +(18419) found +(18420) found +[19340] Forked 18421 +[19339] Forked 18422 +(18421) found +(18422) found +[19338] Forked 18423 +[19337] Forked 18424 +(18423) found +(18424) found +[19336] Forked 18425 +[19335] Forked 18426 +(18425) found +(18426) found +[19334] Forked 18427 +[19333] Forked 18428 +(18427) found +(18428) found +[19332] Forked 18429 +[19331] Forked 18430 +(18429) found +(18430) found +[19330] Forked 18431 +[19329] Forked 18432 +(18431) found +(18432) found +[19328] Forked 18433 +[19327] Forked 18434 +(18433) found +(18434) found +[19326] Forked 18435 +[19325] Forked 18436 +(18435) found +(18436) found +[19324] Forked 18437 +[19323] Forked 18438 +(18437) found +(18438) found +[19322] Forked 18439 +[19321] Forked 18440 +(18439) found +(18440) found +[19320] Forked 18441 +[19319] Forked 18442 +(18441) found +(18442) found +[19318] Forked 18443 +[19317] Forked 18444 +(18443) found +(18444) found +[19316] Forked 18445 +[19315] Forked 18446 +(18445) found +(18446) found +[19314] Forked 18447 +[19313] Forked 18448 +(18447) found +(18448) found +[19312] Forked 18449 +[19311] Forked 18450 +(18449) found +(18450) found +[19310] Forked 18451 +[19309] Forked 18452 +(18451) found +(18452) found +[19308] Forked 18453 +[19307] Forked 18454 +(18453) found +(18454) found +[19306] Forked 18455 +[19305] Forked 18456 +(18455) found +(18456) found +[19304] Forked 18457 +[19303] Forked 18458 +(18457) found +(18458) found +[19302] Forked 18459 +[19301] Forked 18460 +(18459) found +(18460) found +[19300] Forked 18461 +[19299] Forked 18462 +(18461) found +(18462) found +[19298] Forked 18463 +(18463) found +[19297] Forked 18464 +(18464) found +[19296] Forked 18466 +(18466) found +[19295] Forked 18467 +(18467) found +[19294] Forked 18468 +(18468) found +[19293] Forked 18469 +(18469) found +[19292] Forked 18470 +(18470) found +[19291] Forked 18471 +(18471) found +[19290] Forked 18472 +(18472) found +[19289] Forked 18473 +(18473) found +[19288] Forked 18474 +(18474) found +[19287] Forked 18475 +(18475) found +[19286] Forked 18476 +(18476) found +[19285] Forked 18477 +(18477) found +[19284] Forked 18478 +(18478) found +[19283] Forked 18479 +(18479) found +[19282] Forked 18480 +(18480) found +[19281] Forked 18481 +(18481) found +[19280] Forked 18482 +(18482) found +[19279] Forked 18483 +(18483) found +[19278] Forked 18484 +(18484) found +[19277] Forked 18485 +(18485) found +[19276] Forked 18486 +(18486) found +[19275] Forked 18487 +(18487) found +[19274] Forked 18488 +(18488) found +[19273] Forked 18489 +(18489) found +[19272] Forked 18490 +(18490) found +[19271] Forked 18491 +(18491) found +[19270] Forked 18492 +(18492) found +[19269] Forked 18493 +(18493) found +[19268] Forked 18494 +(18494) found +[19267] Forked 18495 +(18495) found +[19266] Forked 18496 +(18496) found +[19265] Forked 18497 +(18497) found +[19264] Forked 18498 +(18498) found +[19263] Forked 18499 +(18499) found +[19262] Forked 18500 +(18500) found +[19261] Forked 18501 +(18501) found +[19260] Forked 18502 +(18502) found +[19259] Forked 18503 +[19258] Forked 18504 +(18503) found +(18504) found +[19257] Forked 18505 +[19256] Forked 18506 +(18505) found +(18506) found +[19255] Forked 18507 +[19254] Forked 18508 +(18507) found +(18508) found +[19253] Forked 18509 +[19252] Forked 18510 +(18509) found +(18510) found +[19251] Forked 18511 +[19250] Forked 18512 +(18511) found +(18512) found +[19249] Forked 18513 +[19248] Forked 18514 +(18513) found +(18514) found +[19247] Forked 18515 +[19246] Forked 18516 +(18515) found +(18516) found +[19245] Forked 18517 +[19244] Forked 18518 +(18518) found +(18517) found +[19243] Forked 18519 +(18519) found +[19242] Forked 18520 +(18520) found +[19241] Forked 18521 +(18521) found +[19240] Forked 18522 +(18522) found +[19239] Forked 18523 +(18523) found +[19238] Forked 18524 +(18524) found +[19237] Forked 18525 +(18525) found +[19236] Forked 18526 +(18526) found +[19235] Forked 18527 +(18527) found +[19234] Forked 18528 +(18528) found +[19233] Forked 18529 +(18529) found +[19232] Forked 18530 +(18530) found +[19231] Forked 18531 +(18531) found +[19230] Forked 18532 +(18532) found +[19229] Forked 18533 +(18533) found +[19228] Forked 18534 +(18534) found +[19227] Forked 18535 +(18535) found +[19226] Forked 18536 +(18536) found +[19225] Forked 18537 +(18537) found +[19224] Forked 18538 +(18538) found +[19223] Forked 18539 +(18539) found +[19222] Forked 18540 +(18540) found +[19221] Forked 18541 +(18541) found +[19220] Forked 18542 +(18542) found +[19219] Forked 18543 +(18543) found +[19218] Forked 18544 +(18544) found +[19217] Forked 18545 +(18545) found +[19216] Forked 18546 +(18546) found +[19215] Forked 18547 +(18547) found +[19214] Forked 18548 +(18548) found +[19213] Forked 18549 +(18549) found +[19212] Forked 18550 +(18550) found +[19211] Forked 18551 +(18551) found +[19210] Forked 18552 +(18552) found +[19209] Forked 18553 +(18553) found +[19208] Forked 18554 +(18554) found +[19207] Forked 18555 +(18555) found +[19206] Forked 18556 +(18556) found +[19205] Forked 18557 +(18557) found +[19204] Forked 18558 +(18558) found +[19203] Forked 18559 +(18559) found +[19202] Forked 18560 +(18560) found +[19201] Forked 18561 +(18561) found +[19200] Forked 18562 +(18562) found +[19199] Forked 18563 +(18563) found +[19198] Forked 18564 +(18564) found +[19197] Forked 18565 +(18565) found +[19196] Forked 18566 +(18566) found +[19195] Forked 18567 +(18567) found +[19194] Forked 18568 +(18568) found +[19193] Forked 18569 +(18569) found +[19192] Forked 18570 +(18570) found +[19191] Forked 18571 +(18571) found +[19190] Forked 18572 +(18572) found +[19189] Forked 18573 +(18573) found +[19188] Forked 18574 +(18574) found +[19187] Forked 18575 +[19186] Forked 18576 +(18575) found +(18576) found +[19185] Forked 18577 +[19184] Forked 18578 +(18577) found +(18578) found +[19183] Forked 18579 +[19182] Forked 18580 +(18579) found +(18580) found +[19181] Forked 18581 +[19180] Forked 18582 +(18581) found +(18582) found +[19179] Forked 18583 +[19178] Forked 18584 +(18583) found +(18584) found +[19177] Forked 18585 +[19176] Forked 18586 +(18585) found +(18586) found +[19175] Forked 18587 +[19174] Forked 18588 +(18587) found +(18588) found +[19173] Forked 18589 +[19172] Forked 18590 +(18589) found +(18590) found +[19171] Forked 18591 +[19170] Forked 18592 +(18591) found +(18592) found +[19169] Forked 18593 +[19168] Forked 18594 +(18593) found +(18594) found +[19167] Forked 18595 +[19166] Forked 18596 +(18595) found +(18596) found +[19165] Forked 18597 +[19164] Forked 18598 +(18597) found +(18598) found +[19163] Forked 18599 +[19162] Forked 18600 +(18599) found +(18600) found +[19161] Forked 18601 +[19160] Forked 18602 +(18601) found +(18602) found +[19159] Forked 18603 +[19158] Forked 18604 +(18603) found +(18604) found +[19157] Forked 18605 +[19156] Forked 18606 +(18605) found +(18606) found +[19155] Forked 18607 +[19154] Forked 18608 +(18607) found +(18608) found +[19153] Forked 18609 +[19152] Forked 18610 +(18609) found +(18610) found +[19151] Forked 18612 +[19150] Forked 18613 +(18612) found +(18613) found +[19149] Forked 18614 +[19148] Forked 18615 +(18614) found +(18615) found +[19147] Forked 18616 +[19146] Forked 18617 +(18616) found +(18617) found +[19145] Forked 18618 +[19144] Forked 18619 +(18618) found +(18619) found +[19143] Forked 18620 +(18620) found +[19142] Forked 18621 +(18621) found +[19141] Forked 18622 +(18622) found +[19140] Forked 18623 +(18623) found +[19139] Forked 18624 +(18624) found +[19138] Forked 18625 +(18625) found +[19137] Forked 18626 +(18626) found +[19136] Forked 18627 +(18627) found +[19135] Forked 18628 +(18628) found +[19134] Forked 18629 +(18629) found +[19133] Forked 18630 +(18630) found +[19132] Forked 18631 +(18631) found +[19131] Forked 18632 +(18632) found +[19130] Forked 18633 +(18633) found +[19129] Forked 18634 +(18634) found +[19128] Forked 18635 +(18635) found +[19127] Forked 18636 +(18636) found +[19126] Forked 18637 +(18637) found +[19125] Forked 18638 +(18638) found +[19124] Forked 18639 +(18639) found +[19123] Forked 18640 +(18640) found +[19122] Forked 18641 +(18641) found +[19121] Forked 18642 +(18642) found +[19120] Forked 18643 +(18643) found +[19119] Forked 18644 +(18644) found +[19118] Forked 18645 +(18645) found +[19117] Forked 18646 +(18646) found +[19116] Forked 18647 +(18647) found +[19115] Forked 18648 +(18648) found +[19114] Forked 18649 +(18649) found +[19113] Forked 18650 +(18650) found +[19112] Forked 18651 +(18651) found +[19111] Forked 18652 +(18652) found +[19110] Forked 18653 +(18653) found +[19109] Forked 18654 +(18654) found +[19108] Forked 18655 +(18655) found +[19107] Forked 18656 +(18656) found +[19106] Forked 18657 +[19105] Forked 18658 +(18657) found +(18658) found +[19104] Forked 18659 +[19103] Forked 18660 +(18659) found +(18660) found +[19102] Forked 18661 +[19101] Forked 18662 +(18661) found +(18662) found +[19100] Forked 18663 +[19099] Forked 18664 +(18663) found +(18664) found +[19098] Forked 18665 +[19097] Forked 18666 +(18665) found +(18666) found +[19096] Forked 18667 +[19095] Forked 18668 +(18667) found +(18668) found +[19094] Forked 18669 +[19093] Forked 18670 +(18669) found +(18670) found +[19092] Forked 18671 +[19091] Forked 18672 +(18671) found +(18672) found +[19090] Forked 18673 +[19089] Forked 18674 +(18673) found +(18674) found +[19088] Forked 18675 +[19087] Forked 18676 +(18675) found +(18676) found +[19086] Forked 18677 +[19085] Forked 18678 +(18677) found +(18678) found +[19084] Forked 18679 +[19083] Forked 18680 +(18679) found +(18680) found +[19082] Forked 18681 +[19081] Forked 18682 +(18681) found +(18682) found +[19080] Forked 18683 +[19079] Forked 18684 +(18683) found +(18684) found +[19078] Forked 18685 +[19077] Forked 18686 +(18685) found +(18686) found +[19076] Forked 18687 +[19075] Forked 18688 +(18687) found +(18688) found +[19074] Forked 18689 +[19073] Forked 18690 +(18689) found +(18690) found +[19072] Forked 18691 +[19071] Forked 18692 +(18691) found +(18692) found +[19070] Forked 18693 +[19069] Forked 18694 +(18693) found +(18694) found +[19068] Forked 18695 +[19067] Forked 18696 +(18695) found +(18696) found +[19066] Forked 18697 +[19065] Forked 18698 +(18697) found +(18698) found +[19064] Forked 18699 +[19063] Forked 18700 +(18699) found +(18700) found +[19062] Forked 18701 +[19061] Forked 18702 +(18701) found +(18702) found +[19060] Forked 18703 +[19059] Forked 18704 +(18703) found +(18704) found +[19058] Forked 18705 +[19057] Forked 18706 +(18705) found +(18706) found +[19056] Forked 18707 +[19055] Forked 18708 +(18707) found +(18708) found +[19054] Forked 18709 +[19053] Forked 18710 +(18709) found +(18710) found +[19052] Forked 18711 +[19051] Forked 18712 +(18711) found +(18712) found +[19050] Forked 18713 +[19049] Forked 18714 +(18713) found +(18714) found +[19048] Forked 18715 +[19047] Forked 18716 +(18715) found +(18716) found +[19046] Forked 18717 +[19045] Forked 18718 +(18717) found +(18718) found +[19044] Forked 18719 +[19043] Forked 18720 +(18719) found +(18720) found +[19042] Forked 18721 +[19041] Forked 18722 +(18721) found +(18722) found +[19040] Forked 18723 +[19039] Forked 18724 +(18723) found +(18724) found +[19038] Forked 18725 +[19037] Forked 18726 +(18725) found +(18726) found +[19036] Forked 18727 +[19035] Forked 18728 +(18727) found +(18728) found +[19034] Forked 18729 +[19033] Forked 18730 +(18729) found +(18730) found +[19032] Forked 18731 +[19031] Forked 18732 +(18731) found +(18732) found +[19030] Forked 18733 +[19029] Forked 18734 +(18733) found +(18734) found +[19028] Forked 18735 +[19027] Forked 18736 +(18735) found +(18736) found +[19026] Forked 18737 +(18737) found +[19025] Forked 18738 +[19024] Forked 18739 +(18738) found +(18739) found +[19023] Forked 18740 +[19022] Forked 18741 +(18740) found +(18741) found +[19021] Forked 18742 +[19020] Forked 18743 +(18742) found +(18743) found +[19019] Forked 18744 +[19018] Forked 18745 +(18744) found +(18745) found +[19017] Forked 18746 +[19016] Forked 18747 +(18746) found +(18747) found +[19015] Forked 18748 +[19014] Forked 18749 +(18748) found +(18749) found +[19013] Forked 18750 +[19012] Forked 18751 +(18750) found +(18751) found +[19011] Forked 18752 +[19010] Forked 18753 +(18752) found +(18753) found +[19009] Forked 18754 +[19008] Forked 18755 +(18754) found +(18755) found +[19007] Forked 18756 +[19006] Forked 18757 +(18756) found +(18757) found +[19005] Forked 18758 +[19004] Forked 18759 +(18758) found +(18759) found +[19003] Forked 18760 +[19002] Forked 18761 +(18760) found +(18761) found +[19001] Forked 18762 +[19000] Forked 18763 +(18762) found +(18763) found +[18999] Forked 18764 +[18998] Forked 18765 +(18764) found +(18765) found +[18997] Forked 18766 +[18996] Forked 18767 +(18766) found +(18767) found +[18995] Forked 18768 +[18994] Forked 18769 +(18768) found +(18769) found +[18993] Forked 18770 +[18992] Forked 18771 +(18770) found +(18771) found +[18991] Forked 18772 +[18990] Forked 18773 +(18772) found +(18773) found +[18989] Forked 18774 +[18988] Forked 18775 +(18774) found +(18775) found +[18987] Forked 18776 +[18986] Forked 18777 +(18776) found +(18777) found +[18985] Forked 18778 +[18984] Forked 18779 +(18778) found +(18779) found +[18983] Forked 18780 +[18982] Forked 18781 +(18780) found +(18781) found +[18981] Forked 18782 +[18980] Forked 18783 +(18782) found +(18783) found +[18979] Forked 18784 +[18978] Forked 18785 +(18784) found +(18785) found +[18977] Forked 18786 +[18976] Forked 18787 +(18786) found +(18787) found +[18975] Forked 18788 +[18974] Forked 18789 +(18788) found +(18789) found +[18973] Forked 18790 +[18972] Forked 18791 +(18790) found +(18791) found +[18971] Forked 18792 +(18792) found +[18970] Forked 18793 +(18793) found +[18969] Forked 18794 +(18794) found +[18968] Forked 18795 +(18795) found +[18967] Forked 18796 +(18796) found +[18966] Forked 18797 +(18797) found +[18965] Forked 18798 +(18798) found +[18964] Forked 18799 +(18799) found +[18963] Forked 18800 +(18800) found +[18962] Forked 18801 +(18801) found +[18961] Forked 18802 +(18802) found +[18960] Forked 18803 +(18803) found +[18959] Forked 18804 +(18804) found +[18958] Forked 18805 +(18805) found +[18957] Forked 18806 +(18806) found +[18956] Forked 18807 +(18807) found +[18955] Forked 18808 +(18808) found +[18954] Forked 18809 +(18809) found +[18953] Forked 18810 +(18810) found +[18952] Forked 18811 +(18811) found +[18951] Forked 18812 +(18812) found +[18950] Forked 18813 +(18813) found +[18949] Forked 18814 +(18814) found +[18948] Forked 18815 +(18815) found +[18947] Forked 18816 +(18816) found +[18946] Forked 18817 +(18817) found +[18945] Forked 18818 +(18818) found +[18944] Forked 18819 +(18819) found +[18943] Forked 18820 +(18820) found +[18942] Forked 18821 +(18821) found +[18941] Forked 18822 +(18822) found +[18940] Forked 18823 +(18823) found +[18939] Forked 18824 +(18824) found +[18938] Forked 18825 +(18825) found +[18937] Forked 18826 +(18826) found +[18936] Forked 18827 +(18827) found +[18935] Forked 18828 +(18828) found +[18934] Forked 18829 +[18933] Forked 18830 +(18829) found +(18830) found +[18932] Forked 18831 +[18931] Forked 18832 +(18831) found +(18832) found +[18930] Forked 18833 +[18929] Forked 18834 +(18833) found +(18834) found +[18928] Forked 18835 +[18927] Forked 18836 +(18835) found +(18836) found +[18926] Forked 18837 +[18925] Forked 18838 +(18837) found +(18838) found +[18924] Forked 18839 +[18923] Forked 18840 +(18839) found +(18840) found +[18922] Forked 18841 +[18921] Forked 18842 +(18841) found +(18842) found +[18920] Forked 18843 +[18919] Forked 18844 +(18843) found +(18844) found +[18918] Forked 18845 +[18917] Forked 18846 +(18845) found +(18846) found +[18916] Forked 18847 +[18915] Forked 18848 +(18847) found +(18848) found +[18914] Forked 18849 +[18913] Forked 18850 +(18849) found +(18850) found +[18912] Forked 18851 +[18911] Forked 18852 +(18851) found +(18852) found +[18910] Forked 18853 +[18909] Forked 18854 +(18853) found +(18854) found +[18908] Forked 18855 +[18907] Forked 18856 +(18855) found +(18856) found +[18906] Forked 18857 +[18905] Forked 18858 +(18857) found +(18858) found +[18904] Forked 18859 +[18903] Forked 18860 +(18859) found +(18860) found +[18902] Forked 18861 +[18901] Forked 18862 +(18861) found +(18862) found +[18900] Forked 18863 +[18899] Forked 18864 +(18863) found +(18864) found +[18898] Forked 18865 +[18897] Forked 18866 +(18865) found +(18866) found +[18896] Forked 18867 +(18867) found +[18895] Forked 18868 +[18894] Forked 18869 +(18868) found +(18869) found +[18893] Forked 18870 +[18892] Forked 18871 +(18870) found +(18871) found +[18891] Forked 18872 +(18872) found +[18890] Forked 18873 +(18873) found +[18889] Forked 18874 +(18874) found +[18888] Forked 18875 +(18875) found +[18887] Forked 18876 +(18876) found +[18886] Forked 18877 +(18877) found +[18885] Forked 18878 +(18878) found +[18884] Forked 18879 +(18879) found +[18883] Forked 18880 +(18880) found +[18882] Forked 18881 +(18881) found +[18881] Forked 18882 +(18882) found +[18880] Forked 18883 +(18883) found +[18879] Forked 18884 +(18884) found +[18878] Forked 18885 +(18885) found +[18877] Forked 18886 +(18886) found +[18876] Forked 18887 +(18887) found +[18875] Forked 18888 +(18888) found +[18874] Forked 18889 +(18889) found +[18873] Forked 18890 +(18890) found +[18872] Forked 18891 +(18891) found +[18871] Forked 18892 +(18892) found +[18870] Forked 18895 +(18895) found +[18869] Forked 18896 +(18896) found +[18868] Forked 18897 +(18897) found +[18867] Forked 18898 +(18898) found +[18866] Forked 18899 +(18899) found +[18865] Forked 18900 +(18900) found +[18864] Forked 18901 +(18901) found +[18863] Forked 18902 +(18902) found +[18862] Forked 18903 +(18903) found +[18861] Forked 18904 +(18904) found +[18860] Forked 18905 +(18905) found +[18859] Forked 18906 +(18906) found +[18858] Forked 18907 +(18907) found +[18857] Forked 18908 +(18908) found +[18856] Forked 18909 +(18909) found +[18855] Forked 18910 +(18910) found +[18854] Forked 18911 +(18911) found +[18853] Forked 18912 +(18912) found +[18852] Forked 18913 +[18851] Forked 18914 +(18913) found +(18914) found +[18850] Forked 18915 +[18849] Forked 18916 +(18915) found +(18916) found +[18848] Forked 18917 +[18847] Forked 18918 +(18917) found +(18918) found +[18846] Forked 18919 +[18845] Forked 18920 +(18920) found +(18919) found +[18844] Forked 18921 +(18921) found +[18843] Forked 18922 +(18922) found +[18842] Forked 18923 +(18923) found +[18841] Forked 18925 +(18925) found +[18840] Forked 18926 +(18926) found +[18839] Forked 18927 +(18927) found +[18838] Forked 18928 +(18928) found +[18837] Forked 18929 +(18929) found +[18836] Forked 18930 +(18930) found +[18835] Forked 18931 +(18931) found +[18834] Forked 18932 +(18932) found +[18833] Forked 18933 +(18933) found +[18832] Forked 18934 +(18934) found +[18831] Forked 18935 +(18935) found +[18830] Forked 18936 +(18936) found +[18829] Forked 18937 +(18937) found +[18828] Forked 18938 +(18938) found +[18827] Forked 18939 +(18939) found +[18826] Forked 18940 +(18940) found +[18825] Forked 18941 +(18941) found +[18824] Forked 18942 +(18942) found +[18823] Forked 18943 +(18943) found +[18822] Forked 18944 +(18944) found +[18821] Forked 18945 +(18945) found +[18820] Forked 18946 +[18819] Forked 18947 +(18946) found +(18947) found +[18818] Forked 18948 +[18817] Forked 18949 +(18948) found +(18949) found +[18816] Forked 18950 +[18815] Forked 18951 +(18950) found +(18951) found +[18814] Forked 18952 +[18813] Forked 18953 +(18952) found +(18953) found +[18812] Forked 18954 +[18811] Forked 18955 +(18954) found +(18955) found +[18810] Forked 18956 +[18809] Forked 18957 +(18956) found +(18957) found +[18808] Forked 18958 +[18807] Forked 18959 +(18958) found +(18959) found +[18806] Forked 18960 +[18805] Forked 18961 +(18960) found +(18961) found +[18804] Forked 18962 +[18803] Forked 18963 +(18962) found +(18963) found +[18802] Forked 18964 +[18801] Forked 18965 +(18964) found +(18965) found +[18800] Forked 18966 +[18799] Forked 18967 +(18966) found +(18967) found +[18798] Forked 18968 +(18968) found +[18797] Forked 18969 +(18969) found +[18796] Forked 18970 +[18795] Forked 18971 +(18970) found +(18971) found +[18794] Forked 18972 +[18793] Forked 18973 +(18972) found +(18973) found +[18792] Forked 18974 +[18791] Forked 18975 +(18974) found +(18975) found +[18790] Forked 18976 +[18789] Forked 18977 +(18976) found +(18977) found +[18788] Forked 18978 +[18787] Forked 18979 +(18978) found +(18979) found +[18786] Forked 18980 +[18785] Forked 18981 +(18980) found +(18981) found +[18784] Forked 18982 +[18783] Forked 18983 +(18982) found +(18983) found +[18782] Forked 18984 +[18781] Forked 18985 +(18984) found +(18985) found +[18780] Forked 18986 +[18779] Forked 18987 +(18986) found +(18987) found +[18778] Forked 18988 +[18777] Forked 18990 +(18988) found +(18990) found +[18776] Forked 18991 +(18991) found +[18775] Forked 18992 +(18992) found +[18774] Forked 18993 +(18993) found +[18773] Forked 18994 +(18994) found +[18772] Forked 18995 +(18995) found +[18771] Forked 18996 +(18996) found +[18770] Forked 18997 +(18997) found +[18769] Forked 18998 +(18998) found +[18768] Forked 18999 +(18999) found +[18767] Forked 19000 +(19000) found +[18766] Forked 19001 +(19001) found +[18765] Forked 19002 +(19002) found +[18764] Forked 19003 +(19003) found +[18763] Forked 19004 +(19004) found +[18762] Forked 19005 +(19005) found +[18761] Forked 19006 +(19006) found +[18760] Forked 19007 +(19007) found +[18759] Forked 19008 +(19008) found +[18758] Forked 19009 +(19009) found +[18757] Forked 19010 +(19010) found +[18756] Forked 19011 +(19011) found +[18755] Forked 19012 +(19012) found +[18754] Forked 19013 +(19013) found +[18753] Forked 19014 +(19014) found +[18752] Forked 19015 +(19015) found +[18751] Forked 19017 +(19017) found +[18750] Forked 19018 +(19018) found +[18749] Forked 19019 +(19019) found +[18748] Forked 19020 +(19020) found +[18747] Forked 19021 +(19021) found +[18746] Forked 19022 +(19022) found +[18745] Forked 19023 +(19023) found +[18744] Forked 19024 +(19024) found +[18743] Forked 19025 +(19025) found +[18742] Forked 19026 +(19026) found +[18741] Forked 19027 +(19027) found +[18740] Forked 19028 +(19028) found +[18739] Forked 19029 +(19029) found +[18738] Forked 19030 +(19030) found +[18737] Forked 19031 +[18736] Forked 19032 +(19031) found +(19032) found +[18735] Forked 19033 +[18734] Forked 19034 +(19033) found +(19034) found +[18733] Forked 19035 +[18732] Forked 19036 +(19035) found +(19036) found +[18731] Forked 19037 +[18730] Forked 19038 +(19037) found +(19038) found +[18729] Forked 19039 +[18728] Forked 19040 +(19039) found +(19040) found +[18727] Forked 19041 +[18726] Forked 19042 +(19041) found +(19042) found +[18725] Forked 19043 +[18724] Forked 19044 +(19043) found +(19044) found +[18723] Forked 19045 +[18722] Forked 19046 +(19045) found +(19046) found +[18721] Forked 19047 +[18720] Forked 19048 +(19047) found +(19048) found +[18719] Forked 19049 +[18718] Forked 19050 +(19049) found +(19050) found +[18717] Forked 19051 +[18716] Forked 19052 +(19051) found +(19052) found +[18715] Forked 19053 +[18714] Forked 19054 +(19053) found +(19054) found +[18713] Forked 19055 +[18712] Forked 19056 +(19055) found +(19056) found +[18711] Forked 19057 +[18710] Forked 19058 +(19057) found +(19058) found +[18709] Forked 19059 +[18708] Forked 19060 +(19059) found +(19060) found +[18707] Forked 19061 +[18706] Forked 19062 +(19061) found +(19062) found +[18705] Forked 19063 +[18704] Forked 19064 +(19063) found +(19064) found +[18703] Forked 19065 +[18702] Forked 19066 +(19065) found +(19066) found +[18701] Forked 19067 +[18700] Forked 19068 +(19067) found +(19068) found +[18699] Forked 19069 +[18698] Forked 19070 +(19069) found +(19070) found +[18697] Forked 19071 +[18696] Forked 19072 +(19071) found +(19072) found +[18695] Forked 19073 +[18694] Forked 19074 +(19073) found +(19074) found +[18693] Forked 19075 +[18692] Forked 19076 +(19075) found +(19076) found +[18691] Forked 19077 +[18690] Forked 19078 +(19077) found +(19078) found +[18689] Forked 19079 +(19079) found +[18688] Forked 19080 +[18687] Forked 19081 +(19080) found +(19081) found +[18686] Forked 19082 +[18685] Forked 19083 +(19082) found +(19083) found +[18684] Forked 19084 +[18683] Forked 19085 +(19084) found +(19085) found +[18682] Forked 19086 +[18681] Forked 19087 +(19086) found +(19087) found +[18680] Forked 19088 +[18679] Forked 19089 +(19088) found +(19089) found +[18678] Forked 19090 +[18677] Forked 19091 +(19090) found +(19091) found +[18676] Forked 19092 +[18675] Forked 19093 +(19092) found +(19093) found +[18674] Forked 19094 +[18673] Forked 19095 +(19094) found +(19095) found +[18672] Forked 19096 +[18671] Forked 19097 +(19096) found +(19097) found +[18670] Forked 19098 +[18669] Forked 19099 +(19098) found +(19099) found +[18668] Forked 19100 +[18667] Forked 19101 +(19100) found +(19101) found +[18666] Forked 19102 +[18665] Forked 19104 +(19102) found +(19104) found +[18664] Forked 19105 +[18663] Forked 19106 +(19105) found +(19106) found +[18662] Forked 19107 +[18661] Forked 19108 +(19107) found +(19108) found +[18660] Forked 19109 +[18659] Forked 19110 +(19109) found +(19110) found +[18658] Forked 19111 +[18657] Forked 19112 +(19111) found +(19112) found +[18656] Forked 19113 +[18655] Forked 19114 +(19113) found +(19114) found +[18654] Forked 19115 +[18653] Forked 19116 +(19115) found +(19116) found +[18652] Forked 19117 +[18651] Forked 19118 +(19117) found +(19118) found +[18650] Forked 19119 +[18649] Forked 19120 +(19119) found +(19120) found +[18648] Forked 19121 +[18647] Forked 19122 +(19121) found +(19122) found +[18646] Forked 19123 +[18645] Forked 19124 +(19123) found +(19124) found +[18644] Forked 19125 +[18643] Forked 19126 +(19125) found +(19126) found +[18642] Forked 19127 +[18641] Forked 19128 +(19127) found +(19128) found +[18640] Forked 19129 +[18639] Forked 19130 +(19129) found +(19130) found +[18638] Forked 19131 +[18637] Forked 19132 +(19131) found +(19132) found +[18636] Forked 19133 +[18635] Forked 19134 +(19133) found +(19134) found +[18634] Forked 19135 +[18633] Forked 19136 +(19135) found +(19136) found +[18632] Forked 19137 +[18631] Forked 19138 +(19137) found +(19138) found +[18630] Forked 19139 +[18629] Forked 19140 +(19139) found +(19140) found +[18628] Forked 19141 +[18627] Forked 19142 +(19141) found +(19142) found +[18626] Forked 19143 +[18625] Forked 19144 +(19143) found +(19144) found +[18624] Forked 19145 +[18623] Forked 19146 +(19145) found +(19146) found +[18622] Forked 19147 +[18621] Forked 19148 +(19147) found +(19148) found +[18620] Forked 19149 +[18619] Forked 19150 +(19149) found +(19150) found +[18618] Forked 19151 +[18617] Forked 19152 +(19151) found +(19152) found +[18616] Forked 19153 +[18615] Forked 19154 +(19153) found +(19154) found +[18614] Forked 19155 +[18613] Forked 19156 +(19155) found +(19156) found +[18612] Forked 19157 +[18611] Forked 19158 +(19157) found +(19158) found +[18610] Forked 19159 +[18609] Forked 19160 +(19159) found +(19160) found +[18608] Forked 19161 +[18607] Forked 19162 +(19161) found +(19162) found +[18606] Forked 19163 +[18605] Forked 19164 +(19163) found +(19164) found +[18604] Forked 19165 +[18603] Forked 19166 +(19165) found +(19166) found +[18602] Forked 19167 +[18601] Forked 19168 +(19167) found +(19168) found +[18600] Forked 19169 +[18599] Forked 19170 +(19169) found +(19170) found +[18598] Forked 19171 +(19171) found +[18597] Forked 19172 +(19172) found +[18596] Forked 19173 +(19173) found +[18595] Forked 19174 +(19174) found +[18594] Forked 19175 +(19175) found +[18593] Forked 19176 +(19176) found +[18592] Forked 19177 +(19177) found +[18591] Forked 19178 +(19178) found +[18590] Forked 19179 +(19179) found +[18589] Forked 19180 +(19180) found +[18588] Forked 19181 +(19181) found +[18587] Forked 19182 +(19182) found +[18586] Forked 19183 +(19183) found +[18585] Forked 19184 +(19184) found +[18584] Forked 19185 +(19185) found +[18583] Forked 19186 +(19186) found +[18582] Forked 19187 +(19187) found +[18581] Forked 19188 +(19188) found +[18580] Forked 19189 +(19189) found +[18579] Forked 19191 +(19191) found +[18578] Forked 19192 +(19192) found +[18577] Forked 19193 +(19193) found +[18576] Forked 19194 +(19194) found +[18575] Forked 19195 +(19195) found +[18574] Forked 19196 +(19196) found +[18573] Forked 19197 +(19197) found +[18572] Forked 19198 +(19198) found +[18571] Forked 19199 +(19199) found +[18570] Forked 19200 +(19200) found +[18569] Forked 19201 +(19201) found +[18568] Forked 19202 +(19202) found +[18567] Forked 19203 +(19203) found +[18566] Forked 19204 +(19204) found +[18565] Forked 19205 +(19205) found +[18564] Forked 19206 +(19206) found +[18563] Forked 19207 +[18562] Forked 19208 +(19207) found +(19208) found +[18561] Forked 19209 +[18560] Forked 19210 +(19209) found +(19210) found +[18559] Forked 19211 +[18558] Forked 19212 +(19211) found +(19212) found +[18557] Forked 19213 +[18556] Forked 19214 +(19213) found +(19214) found +[18555] Forked 19215 +[18554] Forked 19216 +(19215) found +(19216) found +[18553] Forked 19217 +[18552] Forked 19218 +(19217) found +(19218) found +[18551] Forked 19219 +[18550] Forked 19220 +(19219) found +(19220) found +[18549] Forked 19221 +[18548] Forked 19222 +(19221) found +(19222) found +[18547] Forked 19223 +[18546] Forked 19224 +(19223) found +(19224) found +[18545] Forked 19225 +[18544] Forked 19226 +(19225) found +(19226) found +[18543] Forked 19227 +[18542] Forked 19228 +(19227) found +(19228) found +[18541] Forked 19229 +[18540] Forked 19230 +(19229) found +(19230) found +[18539] Forked 19231 +[18538] Forked 19232 +(19231) found +(19232) found +[18537] Forked 19233 +[18536] Forked 19234 +(19233) found +(19234) found +[18535] Forked 19235 +[18534] Forked 19236 +(19235) found +(19236) found +[18533] Forked 19237 +[18532] Forked 19238 +(19237) found +(19238) found +[18531] Forked 19239 +[18530] Forked 19240 +(19239) found +(19240) found +[18529] Forked 19241 +[18528] Forked 19242 +(19241) found +(19242) found +[18527] Forked 19243 +[18526] Forked 19244 +(19243) found +(19244) found +[18525] Forked 19245 +[18524] Forked 19246 +(19245) found +(19246) found +[18523] Forked 19247 +[18522] Forked 19248 +(19247) found +(19248) found +[18521] Forked 19249 +[18520] Forked 19250 +(19249) found +(19250) found +[18519] Forked 19251 +[18518] Forked 19252 +(19251) found +(19252) found +[18517] Forked 19253 +(19253) found +[18516] Forked 19254 +[18515] Forked 19255 +(19254) found +(19255) found +[18514] Forked 19256 +[18513] Forked 19257 +(19256) found +(19257) found +[18512] Forked 19258 +[18511] Forked 19259 +(19258) found +(19259) found +[18510] Forked 19260 +[18509] Forked 19261 +(19260) found +(19261) found +[18508] Forked 19262 +[18507] Forked 19263 +(19262) found +(19263) found +[18506] Forked 19264 +[18505] Forked 19265 +(19264) found +(19265) found +[18504] Forked 19266 +[18503] Forked 19267 +(19266) found +(19267) found +[18502] Forked 19268 +[18501] Forked 19269 +(19268) found +(19269) found +[18500] Forked 19270 +[18499] Forked 19271 +(19270) found +(19271) found +[18498] Forked 19272 +[18497] Forked 19273 +(19272) found +(19273) found +[18496] Forked 19274 +[18495] Forked 19275 +(19274) found +(19275) found +[18494] Forked 19276 +[18493] Forked 19277 +(19276) found +(19277) found +[18492] Forked 19278 +[18491] Forked 19279 +(19278) found +(19279) found +[18490] Forked 19280 +[18489] Forked 19281 +(19280) found +(19281) found +[18488] Forked 19282 +[18487] Forked 19283 +(19282) found +(19283) found +[18486] Forked 19284 +[18485] Forked 19285 +(19284) found +(19285) found +[18484] Forked 19286 +[18483] Forked 19287 +(19286) found +(19287) found +[18482] Forked 19288 +[18481] Forked 19289 +(19288) found +(19289) found +[18480] Forked 19290 +[18479] Forked 19291 +(19290) found +(19291) found +[18478] Forked 19292 +[18477] Forked 19293 +(19292) found +(19293) found +[18476] Forked 19294 +[18475] Forked 19295 +(19294) found +(19295) found +[18474] Forked 19296 +[18473] Forked 19297 +(19296) found +(19297) found +[18472] Forked 19298 +(19298) found +[18471] Forked 19299 +(19299) found +[18470] Forked 19300 +(19300) found +[18469] Forked 19301 +(19301) found +[18468] Forked 19302 +(19302) found +[18467] Forked 19303 +(19303) found +[18466] Forked 19304 +(19304) found +[18465] Forked 19305 +(19305) found +[18464] Forked 19306 +(19306) found +[18463] Forked 19307 +(19307) found +[18462] Forked 19308 +(19308) found +[18461] Forked 19309 +(19309) found +[18460] Forked 19310 +(19310) found +[18459] Forked 19311 +(19311) found +[18458] Forked 19312 +(19312) found +[18457] Forked 19313 +(19313) found +[18456] Forked 19314 +(19314) found +[18455] Forked 19315 +(19315) found +[18454] Forked 19316 +(19316) found +[18453] Forked 19317 +(19317) found +[18452] Forked 19318 +(19318) found +[18451] Forked 19319 +(19319) found +[18450] Forked 19320 +(19320) found +[18449] Forked 19321 +(19321) found +[18448] Forked 19322 +(19322) found +[18447] Forked 19323 +(19323) found +[18446] Forked 19324 +(19324) found +[18445] Forked 19325 +(19325) found +[18444] Forked 19326 +(19326) found +[18443] Forked 19327 +(19327) found +[18442] Forked 19328 +(19328) found +[18441] Forked 19329 +(19329) found +[18440] Forked 19330 +(19330) found +[18439] Forked 19331 +(19331) found +[18438] Forked 19332 +(19332) found +[18437] Forked 19333 +(19333) found +[18436] Forked 19334 +(19334) found +[18435] Forked 19335 +(19335) found +[18434] Forked 19336 +(19336) found +[18433] Forked 19337 +(19337) found +[18432] Forked 19338 +[18431] Forked 19339 +(19338) found +(19339) found +[18430] Forked 19340 +[18429] Forked 19341 +(19340) found +(19341) found +[18428] Forked 19342 +[18427] Forked 19343 +(19342) found +(19343) found +[18426] Forked 19344 +[18425] Forked 19345 +(19344) found +(19345) found +[18424] Forked 19346 +(19346) found +[18423] Forked 19347 +(19347) found +[18422] Forked 19348 +[18421] Forked 19349 +(19348) found +(19349) found +[18420] Forked 19350 +[18419] Forked 19351 +(19350) found +(19351) found +[18418] Forked 19352 +[18417] Forked 19353 +(19352) found +(19353) found +[18416] Forked 19354 +[18415] Forked 19355 +(19354) found +(19355) found +[18414] Forked 19356 +[18413] Forked 19357 +(19356) found +(19357) found +[18412] Forked 19358 +[18411] Forked 19359 +(19358) found +(19359) found +[18410] Forked 19360 +[18409] Forked 19361 +(19360) found +(19361) found +[18408] Forked 19362 +[18407] Forked 19363 +(19362) found +(19363) found +[18406] Forked 19364 +[18405] Forked 19365 +(19364) found +(19365) found +[18404] Forked 19366 +[18403] Forked 19367 +(19366) found +(19367) found +[18402] Forked 19368 +[18401] Forked 19369 +(19368) found +(19369) found +[18400] Forked 19370 +[18399] Forked 19371 +(19370) found +(19371) found +[18398] Forked 19372 +[18397] Forked 19373 +(19372) found +(19373) found +[18396] Forked 19374 +[18395] Forked 19375 +(19374) found +(19375) found +[18394] Forked 19376 +[18393] Forked 19378 +(19376) found +(19378) found +[18392] Forked 19379 +(19379) found +[18391] Forked 19380 +(19380) found +[18390] Forked 19381 +(19381) found +[18389] Forked 19382 +(19382) found +[18388] Forked 19383 +(19383) found +[18387] Forked 19384 +(19384) found +[18386] Forked 19385 +(19385) found +[18385] Forked 19386 +(19386) found +[18384] Forked 19387 +(19387) found +[18383] Forked 19388 +(19388) found +[18382] Forked 19389 +(19389) found +[18381] Forked 19390 +(19390) found +[18380] Forked 19391 +(19391) found +[18379] Forked 19392 +(19392) found +[18378] Forked 19393 +(19393) found +[18377] Forked 19394 +(19394) found +[18376] Forked 19395 +(19395) found +[18375] Forked 19396 +(19396) found +[18374] Forked 19397 +(19397) found +[18373] Forked 19398 +(19398) found +[18372] Forked 19399 +(19399) found +[18371] Forked 19400 +(19400) found +[18370] Forked 19401 +(19401) found +[18369] Forked 19402 +(19402) found +[18368] Forked 19403 +(19403) found +[18367] Forked 19404 +(19404) found +[18366] Forked 19405 +(19405) found +[18365] Forked 19406 +(19406) found +[18364] Forked 19407 +(19407) found +[18363] Forked 19408 +(19408) found +[18362] Forked 19409 +(19409) found +[18361] Forked 19410 +(19410) found +[18360] Forked 19411 +(19411) found +[18359] Forked 19412 +(19412) found +[18358] Forked 19413 +(19413) found +[18357] Forked 19414 +(19414) found +[18356] Forked 19415 +(19415) found +[18355] Forked 19416 +(19416) found +[18354] Forked 19417 +(19417) found +[18353] Forked 19418 +(19418) found +[18352] Forked 19419 +(19419) found +[18351] Forked 19420 +(19420) found +[18350] Forked 19421 +(19421) found +[18349] Forked 19422 +(19422) found +[18348] Forked 19423 +(19423) found +[18347] Forked 19424 +(19424) found +[18346] Forked 19425 +(19425) found +[18345] Forked 19426 +(19426) found +[18344] Forked 19427 +(19427) found +[18343] Forked 19428 +(19428) found +[18342] Forked 19429 +(19429) found +[18341] Forked 19430 +(19430) found +[18340] Forked 19431 +(19431) found +[18339] Forked 19432 +(19432) found +[18338] Forked 19433 +(19433) found +[18337] Forked 19434 +(19434) found +[18336] Forked 19435 +(19435) found +[18335] Forked 19436 +(19436) found +[18334] Forked 19437 +(19437) found +[18333] Forked 19438 +(19438) found +[18332] Forked 19439 +(19439) found +[18331] Forked 19440 +(19440) found +[18330] Forked 19441 +(19441) found +[18329] Forked 19442 +(19442) found +[18328] Forked 19443 +(19443) found +[18327] Forked 19444 +(19444) found +[18326] Forked 19445 +(19445) found +[18325] Forked 19446 +(19446) found +[18324] Forked 19447 +(19447) found +[18323] Forked 19448 +(19448) found +[18322] Forked 19449 +(19449) found +[18321] Forked 19450 +(19450) found +[18320] Forked 19451 +(19451) found +[18319] Forked 19452 +(19452) found +[18318] Forked 19453 +(19453) found +[18317] Forked 19454 +[18316] Forked 19455 +(19454) found +(19455) found +[18315] Forked 19456 +[18314] Forked 19457 +(19456) found +(19457) found +[18313] Forked 19458 +[18312] Forked 19459 +(19458) found +(19459) found +[18311] Forked 19460 +[18310] Forked 19461 +(19460) found +(19461) found +[18309] Forked 19462 +[18308] Forked 19463 +(19462) found +(19463) found +[18307] Forked 19464 +[18306] Forked 19465 +(19464) found +(19465) found +[18305] Forked 19466 +[18304] Forked 19467 +(19466) found +(19467) found +[18303] Forked 19468 +[18302] Forked 19469 +(19468) found +(19469) found +[18301] Forked 19470 +[18300] Forked 19471 +(19470) found +(19471) found +[18299] Forked 19472 +[18298] Forked 19473 +(19472) found +(19473) found +[18297] Forked 19474 +[18296] Forked 19475 +(19474) found +(19475) found +[18295] Forked 19476 +[18294] Forked 19477 +(19476) found +(19477) found +[18293] Forked 19478 +[18292] Forked 19479 +(19478) found +(19479) found +[18291] Forked 19480 +[18290] Forked 19481 +(19480) found +(19481) found +[18289] Forked 19482 +[18288] Forked 19483 +(19482) found +(19483) found +[18287] Forked 19484 +[18286] Forked 19485 +(19484) found +(19485) found +[18285] Forked 19486 +[18284] Forked 19487 +(19486) found +(19487) found +[18283] Forked 19488 +[18282] Forked 19489 +(19488) found +(19489) found +[18281] Forked 19490 +[18280] Forked 19491 +(19490) found +(19491) found +[18279] Forked 19492 +[18278] Forked 19493 +(19492) found +(19493) found +[18277] Forked 19494 +[18276] Forked 19495 +(19494) found +(19495) found +[18275] Forked 19496 +[18274] Forked 19497 +(19496) found +(19497) found +[18273] Forked 19498 +[18272] Forked 19499 +(19498) found +(19499) found +[18271] Forked 19500 +(19500) found +[18270] Forked 19501 +(19501) found +[18269] Forked 19502 +(19502) found +[18268] Forked 19503 +(19503) found +[18267] Forked 19504 +(19504) found +[18266] Forked 19505 +(19505) found +[18265] Forked 19506 +(19506) found +[18264] Forked 19507 +(19507) found +[18263] Forked 19508 +(19508) found +[18262] Forked 19509 +(19509) found +[18261] Forked 19510 +(19510) found +[18260] Forked 19511 +(19511) found +[18259] Forked 19512 +(19512) found +[18258] Forked 19513 +(19513) found +[18257] Forked 19514 +(19514) found +[18256] Forked 19515 +(19515) found +[18255] Forked 19516 +(19516) found +[18254] Forked 19517 +(19517) found +[18253] Forked 19518 +(19518) found +[18252] Forked 19519 +(19519) found +[18251] Forked 19520 +(19520) found +[18250] Forked 19521 +(19521) found +[18249] Forked 19522 +(19522) found +[18248] Forked 19523 +(19523) found +[18247] Forked 19524 +(19524) found +[18246] Forked 19525 +(19525) found +[18245] Forked 19526 +(19526) found +[18244] Forked 19527 +(19527) found +[18243] Forked 19528 +(19528) found +[18242] Forked 19529 +(19529) found +[18241] Forked 19530 +(19530) found +[18240] Forked 19531 +(19531) found +[18239] Forked 19532 +(19532) found +[18238] Forked 19533 +(19533) found +[18237] Forked 19534 +(19534) found +[18236] Forked 19535 +[18235] Forked 19536 +(19535) found +(19536) found +[18234] Forked 19537 +[18233] Forked 19538 +(19537) found +(19538) found +[18232] Forked 19539 +[18231] Forked 19540 +(19539) found +(19540) found +[18230] Forked 19541 +[18229] Forked 19542 +(19541) found +(19542) found +[18228] Forked 19543 +[18227] Forked 19544 +(19543) found +(19544) found +[18226] Forked 19545 +[18225] Forked 19546 +(19545) found +(19546) found +[18224] Forked 19547 +[18223] Forked 19548 +(19547) found +(19548) found +[18222] Forked 19549 +[18221] Forked 19550 +(19549) found +(19550) found +[18220] Forked 19551 +[18219] Forked 19552 +(19551) found +(19552) found +[18218] Forked 19553 +[18217] Forked 19554 +(19553) found +(19554) found +[18216] Forked 19555 +[18215] Forked 19556 +(19555) found +(19556) found +[18214] Forked 19557 +[18213] Forked 19558 +(19557) found +(19558) found +[18212] Forked 19559 +[18211] Forked 19560 +(19559) found +(19560) found +[18210] Forked 19561 +[18209] Forked 19562 +(19561) found +(19562) found +[18208] Forked 19563 +[18207] Forked 19564 +(19563) found +(19564) found +[18206] Forked 19565 +[18205] Forked 19566 +(19565) found +(19566) found +[18204] Forked 19567 +[18203] Forked 19568 +(19567) found +(19568) found +[18202] Forked 19569 +[18201] Forked 19570 +(19569) found +(19570) found +[18200] Forked 19571 +[18199] Forked 19572 +(19571) found +(19572) found +[18198] Forked 19573 +[18197] Forked 19574 +(19573) found +(19574) found +[18196] Forked 19575 +[18195] Forked 19576 +(19575) found +(19576) found +[18194] Forked 19577 +[18193] Forked 19578 +(19577) found +(19578) found +[18192] Forked 19579 +[18191] Forked 19580 +(19579) found +(19580) found +[18190] Forked 19581 +[18189] Forked 19582 +(19581) found +(19582) found +[18188] Forked 19583 +[18187] Forked 19584 +(19583) found +(19584) found +[18186] Forked 19585 +[18185] Forked 19586 +(19585) found +(19586) found +[18184] Forked 19587 +[18183] Forked 19588 +(19587) found +(19588) found +[18182] Forked 19589 +[18181] Forked 19590 +(19589) found +(19590) found +[18180] Forked 19591 +[18179] Forked 19592 +(19591) found +(19592) found +[18178] Forked 19593 +[18177] Forked 19594 +(19593) found +(19594) found +[18176] Forked 19595 +[18175] Forked 19596 +(19595) found +(19596) found +[18174] Forked 19597 +[18173] Forked 19598 +(19597) found +(19598) found +[18172] Forked 19599 +[18171] Forked 19600 +(19599) found +(19600) found +[18170] Forked 19601 +[18169] Forked 19602 +(19601) found +(19602) found +[18168] Forked 19603 +[18167] Forked 19604 +(19603) found +(19604) found +[18166] Forked 19605 +[18165] Forked 19606 +(19605) found +(19606) found +[18164] Forked 19607 +[18163] Forked 19608 +(19607) found +(19608) found +[18162] Forked 19609 +[18161] Forked 19610 +(19609) found +(19610) found +[18160] Forked 19611 +[18159] Forked 19612 +(19611) found +(19612) found +[18158] Forked 19613 +[18157] Forked 19614 +(19613) found +(19614) found +[18156] Forked 19615 +[18155] Forked 19616 +(19615) found +(19616) found +[18154] Forked 19617 +[18153] Forked 19618 +(19617) found +(19618) found +[18152] Forked 19619 +[18151] Forked 19620 +(19619) found +(19620) found +[18150] Forked 19621 +[18149] Forked 19622 +(19621) found +(19622) found +[18148] Forked 19623 +[18147] Forked 19624 +(19623) found +(19624) found +[18146] Forked 19625 +[18145] Forked 19626 +(19625) found +(19626) found +[18144] Forked 19627 +(19627) found +[18143] Forked 19628 +(19628) found +[18142] Forked 19629 +(19629) found +[18141] Forked 19630 +(19630) found +[18140] Forked 19631 +(19631) found +[18139] Forked 19632 +(19632) found +[18138] Forked 19633 +(19633) found +[18137] Forked 19634 +(19634) found +[18136] Forked 19635 +(19635) found +[18135] Forked 19636 +(19636) found +[18134] Forked 19637 +(19637) found +[18133] Forked 19638 +(19638) found +[18132] Forked 19639 +(19639) found +[18131] Forked 19640 +(19640) found +[18130] Forked 19641 +(19641) found +[18129] Forked 19642 +(19642) found +[18128] Forked 19643 +(19643) found +[18127] Forked 19644 +(19644) found +[18126] Forked 19645 +(19645) found +[18125] Forked 19646 +(19646) found +[18124] Forked 19647 +(19647) found +[18123] Forked 19648 +(19648) found +[18122] Forked 19649 +(19649) found +[18121] Forked 19650 +(19650) found +[18120] Forked 19651 +(19651) found +[18119] Forked 19652 +(19652) found +[18118] Forked 19653 +(19653) found +[18117] Forked 19654 +(19654) found +[18116] Forked 19655 +(19655) found +[18115] Forked 19656 +(19656) found +[18114] Forked 19657 +(19657) found +[18113] Forked 19658 +(19658) found +[18112] Forked 19659 +(19659) found +[18111] Forked 19660 +(19660) found +[18110] Forked 19661 +(19661) found +[18109] Forked 19662 +(19662) found +[18108] Forked 19663 +(19663) found +[18107] Forked 19664 +(19664) found +[18106] Forked 19665 +[18105] Forked 19666 +(19665) found +(19666) found +[18104] Forked 19667 +[18103] Forked 19668 +(19667) found +(19668) found +[18102] Forked 19669 +[18101] Forked 19670 +(19669) found +(19670) found +[18100] Forked 19671 +[18099] Forked 19672 +(19671) found +(19672) found +[18098] Forked 19673 +[18097] Forked 19674 +(19673) found +(19674) found +[18096] Forked 19675 +[18095] Forked 19676 +(19675) found +(19676) found +[18094] Forked 19677 +[18093] Forked 19678 +(19677) found +(19678) found +[18092] Forked 19679 +[18091] Forked 19680 +(19679) found +(19680) found +[18090] Forked 19681 +[18089] Forked 19682 +(19681) found +(19682) found +[18088] Forked 19683 +[18087] Forked 19684 +(19683) found +(19684) found +[18086] Forked 19685 +[18085] Forked 19686 +(19685) found +(19686) found +[18084] Forked 19687 +[18083] Forked 19688 +(19687) found +(19688) found +[18082] Forked 19689 +[18081] Forked 19690 +(19689) found +(19690) found +[18080] Forked 19691 +[18079] Forked 19692 +(19691) found +(19692) found +[18078] Forked 19693 +[18077] Forked 19694 +(19693) found +(19694) found +[18076] Forked 19695 +[18075] Forked 19696 +(19695) found +(19696) found +[18074] Forked 19697 +[18073] Forked 19698 +(19697) found +(19698) found +[18072] Forked 19699 +[18071] Forked 19700 +(19699) found +(19700) found +[18070] Forked 19701 +[18069] Forked 19702 +(19701) found +(19702) found +[18068] Forked 19703 +[18067] Forked 19704 +(19703) found +(19704) found +[18066] Forked 19705 +[18065] Forked 19706 +(19705) found +(19706) found +[18064] Forked 19707 +[18063] Forked 19708 +(19707) found +(19708) found +[18062] Forked 19709 +(19709) found +[18061] Forked 19710 +(19710) found +[18060] Forked 19711 +(19711) found +[18059] Forked 19712 +(19712) found +[18058] Forked 19713 +(19713) found +[18057] Forked 19714 +(19714) found +[18056] Forked 19715 +(19715) found +[18055] Forked 19716 +(19716) found +[18054] Forked 19717 +(19717) found +[18053] Forked 19718 +(19718) found +[18052] Forked 19719 +(19719) found +[18051] Forked 19720 +(19720) found +[18050] Forked 19721 +(19721) found +[18049] Forked 19722 +(19722) found +[18048] Forked 19723 +(19723) found +[18047] Forked 19724 +(19724) found +[18046] Forked 19725 +(19725) found +[18045] Forked 19726 +(19726) found +[18044] Forked 19727 +(19727) found +[18043] Forked 19728 +(19728) found +[18042] Forked 19729 +(19729) found +[18041] Forked 19730 +(19730) found +[18040] Forked 19731 +(19731) found +[18039] Forked 19732 +(19732) found +[18038] Forked 19733 +(19733) found +[18037] Forked 19734 +(19734) found +[18036] Forked 19735 +(19735) found +[18035] Forked 19736 +(19736) found +[18034] Forked 19737 +(19737) found +[18033] Forked 19738 +(19738) found +[18032] Forked 19739 +(19739) found +[18031] Forked 19740 +(19740) found +[18030] Forked 19741 +(19741) found +[18029] Forked 19742 +(19742) found +[18028] Forked 19743 +(19743) found +[18027] Forked 19744 +(19744) found +[18026] Forked 19745 +(19745) found +[18025] Forked 19746 +(19746) found +[18024] Forked 19747 +(19747) found +[18023] Forked 19748 +(19748) found +[18022] Forked 19749 +[18021] Forked 19750 +(19749) found +(19750) found +[18020] Forked 19751 +[18019] Forked 19752 +(19751) found +(19752) found +[18018] Forked 19753 +[18017] Forked 19754 +(19753) found +(19754) found +[18016] Forked 19755 +[18015] Forked 19756 +(19755) found +(19756) found +[18014] Forked 19757 +[18013] Forked 19758 +(19757) found +(19758) found +[18012] Forked 19759 +[18011] Forked 19760 +(19759) found +(19760) found +[18010] Forked 19761 +[18009] Forked 19762 +(19761) found +(19762) found +[18008] Forked 19763 +[18007] Forked 19764 +(19763) found +(19764) found +[18006] Forked 19765 +[18005] Forked 19766 +(19765) found +(19766) found +[18004] Forked 19767 +[18003] Forked 19768 +(19767) found +(19768) found +[18002] Forked 19769 +[18001] Forked 19770 +(19769) found +(19770) found +[18000] Forked 19771 +[17999] Forked 19772 +(19771) found +(19772) found +[17998] Forked 19773 +[17997] Forked 19774 +(19773) found +(19774) found +[17996] Forked 19775 +[17995] Forked 19776 +(19776) found +(19775) found +[17994] Forked 19777 +(19777) found +[17993] Forked 19778 +(19778) found +[17992] Forked 19779 +(19779) found +[17991] Forked 19780 +(19780) found +[17990] Forked 19781 +(19781) found +[17989] Forked 19782 +(19782) found +[17988] Forked 19783 +(19783) found +[17987] Forked 19784 +(19784) found +[17986] Forked 19785 +(19785) found +[17985] Forked 19786 +(19786) found +[17984] Forked 19787 +(19787) found +[17983] Forked 19788 +(19788) found +[17982] Forked 19789 +(19789) found +[17981] Forked 19790 +(19790) found +[17980] Forked 19791 +(19791) found +[17979] Forked 19792 +(19792) found +[17978] Forked 19793 +(19793) found +[17977] Forked 19794 +(19794) found +[17976] Forked 19795 +(19795) found +[17975] Forked 19796 +(19796) found +[17974] Forked 19797 +(19797) found +[17973] Forked 19798 +(19798) found +[17972] Forked 19799 +(19799) found +[17971] Forked 19800 +(19800) found +[17970] Forked 19801 +(19801) found +[17969] Forked 19802 +(19802) found +[17968] Forked 19803 +(19803) found +[17967] Forked 19804 +(19804) found +[17966] Forked 19805 +(19805) found +[17965] Forked 19806 +(19806) found +[17964] Forked 19807 +(19807) found +[17963] Forked 19808 +(19808) found +[17962] Forked 19809 +(19809) found +[17961] Forked 19810 +(19810) found +[17960] Forked 19811 +(19811) found +[17959] Forked 19812 +(19812) found +[17958] Forked 19813 +(19813) found +[17957] Forked 19814 +(19814) found +[17956] Forked 19815 +(19815) found +[17955] Forked 19816 +(19816) found +[17954] Forked 19817 +(19817) found +[17953] Forked 19818 +(19818) found +[17952] Forked 19819 +(19819) found +[17951] Forked 19820 +(19820) found +[17950] Forked 19821 +(19821) found +[17949] Forked 19822 +(19822) found +[17948] Forked 19823 +(19823) found +[17947] Forked 19824 +(19824) found +[17946] Forked 19825 +(19825) found +[17945] Forked 19826 +[17944] Forked 19827 +(19826) found +(19827) found +[17943] Forked 19828 +[17942] Forked 19829 +(19828) found +(19829) found +[17941] Forked 19830 +[17940] Forked 19831 +(19830) found +(19831) found +[17939] Forked 19832 +[17938] Forked 19833 +(19832) found +(19833) found +[17937] Forked 19834 +[17936] Forked 19835 +(19834) found +(19835) found +[17935] Forked 19836 +[17934] Forked 19837 +(19836) found +(19837) found +[17933] Forked 19838 +[17932] Forked 19839 +(19838) found +(19839) found +[17931] Forked 19840 +[17930] Forked 19841 +(19840) found +(19841) found +[17929] Forked 19842 +[17928] Forked 19843 +(19842) found +(19843) found +[17927] Forked 19844 +[17926] Forked 19845 +(19844) found +(19845) found +[17925] Forked 19846 +[17924] Forked 19847 +(19846) found +(19847) found +[17923] Forked 19848 +[17922] Forked 19849 +(19848) found +(19849) found +[17921] Forked 19850 +[17920] Forked 19851 +(19850) found +(19851) found +[17919] Forked 19852 +[17918] Forked 19853 +(19852) found +(19853) found +[17917] Forked 19854 +[17916] Forked 19855 +(19854) found +(19855) found +[17915] Forked 19856 +[17914] Forked 19857 +(19856) found +(19857) found +[17913] Forked 19858 +[17912] Forked 19859 +(19858) found +(19859) found +[17911] Forked 19860 +[17910] Forked 19861 +(19860) found +(19861) found +[17909] Forked 19862 +[17908] Forked 19863 +(19862) found +(19863) found +[17907] Forked 19864 +[17906] Forked 19865 +(19864) found +(19865) found +[17905] Forked 19866 +[17904] Forked 19867 +(19866) found +(19867) found +[17903] Forked 19868 +[17902] Forked 19869 +(19869) found +(19868) found +[17901] Forked 19870 +(19870) found +[17900] Forked 19871 +(19871) found +[17899] Forked 19872 +(19872) found +[17898] Forked 19873 +(19873) found +[17897] Forked 19874 +(19874) found +[17896] Forked 19875 +(19875) found +[17895] Forked 19876 +(19876) found +[17894] Forked 19877 +(19877) found +[17893] Forked 19878 +(19878) found +[17892] Forked 19879 +(19879) found +[17891] Forked 19880 +(19880) found +[17890] Forked 19881 +(19881) found +[17889] Forked 19882 +(19882) found +[17888] Forked 19883 +(19883) found +[17887] Forked 19884 +(19884) found +[17886] Forked 19885 +(19885) found +[17885] Forked 19886 +(19886) found +[17884] Forked 19887 +(19887) found +[17883] Forked 19888 +(19888) found +[17882] Forked 19889 +(19889) found +[17881] Forked 19890 +(19890) found +[17880] Forked 19891 +(19891) found +[17879] Forked 19892 +(19892) found +[17878] Forked 19893 +(19893) found +[17877] Forked 19894 +(19894) found +[17876] Forked 19895 +(19895) found +[17875] Forked 19896 +(19896) found +[17874] Forked 19897 +(19897) found +[17873] Forked 19898 +(19898) found +[17872] Forked 19899 +(19899) found +[17871] Forked 19900 +(19900) found +[17870] Forked 19901 +(19901) found +[17869] Forked 19902 +(19902) found +[17868] Forked 19903 +(19903) found +[17867] Forked 19904 +(19904) found +[17866] Forked 19905 +(19905) found +[17865] Forked 19906 +[17864] Forked 19907 +(19906) found +(19907) found +[17863] Forked 19908 +[17862] Forked 19909 +(19908) found +(19909) found +[17861] Forked 19910 +[17860] Forked 19911 +(19910) found +(19911) found +[17859] Forked 19912 +[17858] Forked 19913 +(19912) found +(19913) found +[17857] Forked 19914 +[17856] Forked 19915 +(19914) found +(19915) found +[17855] Forked 19916 +[17854] Forked 19917 +(19916) found +(19917) found +[17853] Forked 19918 +[17852] Forked 19919 +(19918) found +(19919) found +[17851] Forked 19920 +[17850] Forked 19921 +(19920) found +(19921) found +[17849] Forked 19922 +[17848] Forked 19923 +(19922) found +(19923) found +[17847] Forked 19924 +[17846] Forked 19925 +(19924) found +(19925) found +[17845] Forked 19926 +[17844] Forked 19927 +(19926) found +(19927) found +[17843] Forked 19928 +[17842] Forked 19929 +(19928) found +(19929) found +[17841] Forked 19930 +[17840] Forked 19931 +(19930) found +(19931) found +[17839] Forked 19932 +[17838] Forked 19933 +(19932) found +(19933) found +[17837] Forked 19934 +[17836] Forked 19935 +(19934) found +(19935) found +[17835] Forked 19936 +[17834] Forked 19937 +(19936) found +(19937) found +[17833] Forked 19938 +[17832] Forked 19939 +(19938) found +(19939) found +[17831] Forked 19940 +[17830] Forked 19941 +(19940) found +(19941) found +[17829] Forked 19942 +[17828] Forked 19943 +(19942) found +(19943) found +[17827] Forked 19944 +[17826] Forked 19945 +(19944) found +(19945) found +[17825] Forked 19946 +[17824] Forked 19947 +(19946) found +(19947) found +[17823] Forked 19948 +[17822] Forked 19949 +(19948) found +(19949) found +[17821] Forked 19950 +(19950) found +[17820] Forked 19951 +(19951) found +[17819] Forked 19952 +(19952) found +[17818] Forked 19953 +(19953) found +[17817] Forked 19954 +(19954) found +[17816] Forked 19955 +(19955) found +[17815] Forked 19956 +(19956) found +[17814] Forked 19957 +(19957) found +[17813] Forked 19958 +(19958) found +[17812] Forked 19959 +(19959) found +[17811] Forked 19960 +(19960) found +[17810] Forked 19961 +(19961) found +[17809] Forked 19962 +(19962) found +[17808] Forked 19963 +(19963) found +[17807] Forked 19964 +(19964) found +[17806] Forked 19965 +(19965) found +[17805] Forked 19966 +(19966) found +[17804] Forked 19967 +(19967) found +[17803] Forked 19968 +(19968) found +[17802] Forked 19969 +(19969) found +[17801] Forked 19970 +(19970) found +[17800] Forked 19971 +(19971) found +[17799] Forked 19972 +(19972) found +[17798] Forked 19973 +(19973) found +[17797] Forked 19974 +(19974) found +[17796] Forked 19975 +(19975) found +[17795] Forked 19976 +(19976) found +[17794] Forked 19977 +(19977) found +[17793] Forked 19978 +(19978) found +[17792] Forked 19979 +(19979) found +[17791] Forked 19980 +(19980) found +[17790] Forked 19981 +(19981) found +[17789] Forked 19982 +(19982) found +[17788] Forked 19983 +(19983) found +[17787] Forked 19984 +(19984) found +[17786] Forked 19985 +(19985) found +[17785] Forked 19986 +(19986) found +[17784] Forked 19987 +(19987) found +[17783] Forked 19988 +(19988) found +[17782] Forked 19989 +[17781] Forked 19990 +(19989) found +(19990) found +[17780] Forked 19991 +[17779] Forked 19992 +(19991) found +(19992) found +[17778] Forked 19993 +[17777] Forked 19994 +(19993) found +(19994) found +[17776] Forked 19995 +[17775] Forked 19996 +(19995) found +(19996) found +[17774] Forked 19997 +[17773] Forked 19998 +(19997) found +(19998) found +[17772] Forked 19999 +[17771] Forked 20000 +(19999) found +(20000) found +[17770] Forked 20001 +[17769] Forked 20002 +(20001) found +(20002) found +[17768] Forked 20003 +[17767] Forked 20004 +(20003) found +(20004) found +[17766] Forked 20005 +[17765] Forked 20006 +(20005) found +(20006) found +[17764] Forked 20007 +[17763] Forked 20008 +(20007) found +(20008) found +[17762] Forked 20009 +[17761] Forked 20010 +(20009) found +(20010) found +[17760] Forked 20011 +[17759] Forked 20012 +(20011) found +(20012) found +[17758] Forked 20013 +[17757] Forked 20014 +(20013) found +(20014) found +[17756] Forked 20015 +[17755] Forked 20016 +(20015) found +(20016) found +[17754] Forked 20017 +[17753] Forked 20018 +(20017) found +(20018) found +[17752] Forked 20019 +[17751] Forked 20020 +(20019) found +(20020) found +[17750] Forked 20021 +[17749] Forked 20022 +(20021) found +(20022) found +[17748] Forked 20023 +[17747] Forked 20024 +(20023) found +(20024) found +[17746] Forked 20025 +[17745] Forked 20026 +(20025) found +(20026) found +[17744] Forked 20027 +[17743] Forked 20029 +(20027) found +(20029) found +[17742] Forked 20030 +(20030) found +[17741] Forked 20031 +(20031) found +[17740] Forked 20032 +(20032) found +[17739] Forked 20033 +(20033) found +[17738] Forked 20034 +(20034) found +[17737] Forked 20035 +(20035) found +[17736] Forked 20036 +(20036) found +[17735] Forked 20037 +(20037) found +[17734] Forked 20038 +(20038) found +[17733] Forked 20039 +(20039) found +[17732] Forked 20040 +(20040) found +[17731] Forked 20041 +(20041) found +[17730] Forked 20042 +(20042) found +[17729] Forked 20043 +(20043) found +[17728] Forked 20044 +(20044) found +[17727] Forked 20045 +(20045) found +[17726] Forked 20046 +(20046) found +[17725] Forked 20047 +(20047) found +[17724] Forked 20048 +(20048) found +[17723] Forked 20049 +(20049) found +[17722] Forked 20050 +(20050) found +[17721] Forked 20051 +(20051) found +[17720] Forked 20052 +(20052) found +[17719] Forked 20053 +(20053) found +[17718] Forked 20054 +(20054) found +[17717] Forked 20055 +(20055) found +[17716] Forked 20056 +(20056) found +[17715] Forked 20057 +(20057) found +[17714] Forked 20058 +(20058) found +[17713] Forked 20059 +(20059) found +[17712] Forked 20060 +(20060) found +[17711] Forked 20061 +(20061) found +[17710] Forked 20062 +(20062) found +[17709] Forked 20063 +(20063) found +[17708] Forked 20064 +(20064) found +[17707] Forked 20065 +(20065) found +[17706] Forked 20066 +(20066) found +[17705] Forked 20067 +(20067) found +[17704] Forked 20068 +(20068) found +[17703] Forked 20069 +(20069) found +[17702] Forked 20070 +(20070) found +[17701] Forked 20071 +(20071) found +[17700] Forked 20072 +(20072) found +[17699] Forked 20073 +(20073) found +[17698] Forked 20074 +(20074) found +[17697] Forked 20075 +(20075) found +[17696] Forked 20076 +(20076) found +[17695] Forked 20077 +(20077) found +[17694] Forked 20078 +(20078) found +[17693] Forked 20079 +(20079) found +[17692] Forked 20080 +(20080) found +[17691] Forked 20081 +(20081) found +[17690] Forked 20082 +(20082) found +[17689] Forked 20083 +(20083) found +[17688] Forked 20084 +(20084) found +[17687] Forked 20085 +(20085) found +[17686] Forked 20086 +(20086) found +[17685] Forked 20087 +(20087) found +[17684] Forked 20088 +(20088) found +[17683] Forked 20089 +(20089) found +[17682] Forked 20090 +(20090) found +[17681] Forked 20091 +(20091) found +[17680] Forked 20092 +(20092) found +[17679] Forked 20093 +(20093) found +[17678] Forked 20094 +(20094) found +[17677] Forked 20095 +(20095) found +[17676] Forked 20096 +(20096) found +[17675] Forked 20097 +(20097) found +[17674] Forked 20098 +(20098) found +[17673] Forked 20099 +(20099) found +[17672] Forked 20100 +(20100) found +[17671] Forked 20101 +(20101) found +[17670] Forked 20102 +(20102) found +[17669] Forked 20103 +[17668] Forked 20104 +(20103) found +(20104) found +[17667] Forked 20105 +[17666] Forked 20106 +(20105) found +(20106) found +[17665] Forked 20107 +[17664] Forked 20108 +(20107) found +(20108) found +[17663] Forked 20109 +[17662] Forked 20110 +(20109) found +(20110) found +[17661] Forked 20111 +[17660] Forked 20112 +(20111) found +(20112) found +[17659] Forked 20113 +[17658] Forked 20114 +(20113) found +(20114) found +[17657] Forked 20115 +[17656] Forked 20116 +(20115) found +(20116) found +[17655] Forked 20117 +[17654] Forked 20118 +(20117) found +(20118) found +[17653] Forked 20119 +[17652] Forked 20120 +(20119) found +(20120) found +[17651] Forked 20121 +[17650] Forked 20122 +(20121) found +(20122) found +[17649] Forked 20123 +[17648] Forked 20124 +(20123) found +(20124) found +[17647] Forked 20125 +[17646] Forked 20126 +(20125) found +(20126) found +[17645] Forked 20127 +[17644] Forked 20128 +(20127) found +(20128) found +[17643] Forked 20129 +[17642] Forked 20130 +(20129) found +(20130) found +[17641] Forked 20131 +[17640] Forked 20132 +(20131) found +(20132) found +[17639] Forked 20133 +[17638] Forked 20134 +(20133) found +(20134) found +[17637] Forked 20135 +[17636] Forked 20136 +(20135) found +(20136) found +[17635] Forked 20137 +[17634] Forked 20138 +(20137) found +(20138) found +[17633] Forked 20139 +[17632] Forked 20140 +(20139) found +(20140) found +[17631] Forked 20141 +[17630] Forked 20142 +(20141) found +(20142) found +[17629] Forked 20143 +[17628] Forked 20144 +(20143) found +(20144) found +[17627] Forked 20145 +[17626] Forked 20146 +(20145) found +(20146) found +[17625] Forked 20147 +[17624] Forked 20148 +(20147) found +(20148) found +[17623] Forked 20149 +[17622] Forked 20150 +(20150) found +(20149) found +[17621] Forked 20151 +(20151) found +[17620] Forked 20152 +(20152) found +[17619] Forked 20153 +(20153) found +[17618] Forked 20154 +(20154) found +[17617] Forked 20155 +(20155) found +[17616] Forked 20156 +(20156) found +[17615] Forked 20157 +(20157) found +[17614] Forked 20158 +(20158) found +[17613] Forked 20159 +(20159) found +[17612] Forked 20160 +(20160) found +[17611] Forked 20161 +(20161) found +[17610] Forked 20162 +(20162) found +[17609] Forked 20163 +(20163) found +[17608] Forked 20164 +(20164) found +[17607] Forked 20165 +(20165) found +[17606] Forked 20166 +(20166) found +[17605] Forked 20167 +(20167) found +[17604] Forked 20168 +(20168) found +[17603] Forked 20169 +(20169) found +[17602] Forked 20170 +(20170) found +[17601] Forked 20171 +(20171) found +[17600] Forked 20172 +(20172) found +[17599] Forked 20173 +(20173) found +[17598] Forked 20174 +(20174) found +[17597] Forked 20175 +(20175) found +[17596] Forked 20176 +(20176) found +[17595] Forked 20177 +(20177) found +[17594] Forked 20178 +(20178) found +[17593] Forked 20179 +(20179) found +[17592] Forked 20180 +(20180) found +[17591] Forked 20181 +(20181) found +[17590] Forked 20182 +(20182) found +[17589] Forked 20183 +(20183) found +[17588] Forked 20184 +(20184) found +[17587] Forked 20185 +(20185) found +[17586] Forked 20186 +(20186) found +[17585] Forked 20187 +(20187) found +[17584] Forked 20188 +(20188) found +[17583] Forked 20189 +(20189) found +[17582] Forked 20190 +(20190) found +[17581] Forked 20191 +(20191) found +[17580] Forked 20192 +(20192) found +[17579] Forked 20193 +(20193) found +[17578] Forked 20194 +(20194) found +[17577] Forked 20195 +(20195) found +[17576] Forked 20196 +(20196) found +[17575] Forked 20197 +(20197) found +[17574] Forked 20198 +(20198) found +[17573] Forked 20199 +(20199) found +[17572] Forked 20200 +(20200) found +[17571] Forked 20201 +[17570] Forked 20202 +(20201) found +(20202) found +[17569] Forked 20203 +[17568] Forked 20204 +(20203) found +(20204) found +[17567] Forked 20205 +[17566] Forked 20206 +(20205) found +(20206) found +[17565] Forked 20207 +(20207) found +[17564] Forked 20208 +(20208) found +[17563] Forked 20209 +(20209) found +[17562] Forked 20210 +(20210) found +[17561] Forked 20211 +(20211) found +[17560] Forked 20212 +(20212) found +[17559] Forked 20213 +(20213) found +[17558] Forked 20214 +(20214) found +[17557] Forked 20215 +(20215) found +[17556] Forked 20216 +(20216) found +[17555] Forked 20217 +(20217) found +[17554] Forked 20218 +(20218) found +[17553] Forked 20219 +(20219) found +[17552] Forked 20220 +(20220) found +[17551] Forked 20221 +(20221) found +[17550] Forked 20222 +(20222) found +[17549] Forked 20223 +(20223) found +[17548] Forked 20224 +(20224) found +[17547] Forked 20225 +(20225) found +[17546] Forked 20226 +(20226) found +[17545] Forked 20227 +(20227) found +[17544] Forked 20228 +(20228) found +[17543] Forked 20229 +(20229) found +[17542] Forked 20230 +(20230) found +[17541] Forked 20231 +(20231) found +[17540] Forked 20232 +(20232) found +[17539] Forked 20233 +(20233) found +[17538] Forked 20234 +(20234) found +[17537] Forked 20235 +(20235) found +[17536] Forked 20236 +(20236) found +[17535] Forked 20237 +(20237) found +[17534] Forked 20238 +(20238) found +[17533] Forked 20239 +(20239) found +[17532] Forked 20240 +(20240) found +[17531] Forked 20241 +(20241) found +[17530] Forked 20242 +[17529] Forked 20243 +(20242) found +(20243) found +[17528] Forked 20244 +[17527] Forked 20245 +(20244) found +(20245) found +[17526] Forked 20246 +[17525] Forked 20247 +(20246) found +(20247) found +[17524] Forked 20248 +[17523] Forked 20249 +(20248) found +(20249) found +[17522] Forked 20250 +[17521] Forked 20251 +(20250) found +(20251) found +[17520] Forked 20252 +[17519] Forked 20253 +(20252) found +(20253) found +[17518] Forked 20254 +[17517] Forked 20255 +(20254) found +(20255) found +[17516] Forked 20256 +[17515] Forked 20257 +(20256) found +(20257) found +[17514] Forked 20258 +[17513] Forked 20259 +(20258) found +(20259) found +[17512] Forked 20260 +[17511] Forked 20261 +(20260) found +(20261) found +[17510] Forked 20262 +[17509] Forked 20263 +(20262) found +(20263) found +[17508] Forked 20264 +[17507] Forked 20265 +(20264) found +(20265) found +[17506] Forked 20266 +[17505] Forked 20267 +(20266) found +(20267) found +[17504] Forked 20268 +[17503] Forked 20269 +(20268) found +(20269) found +[17502] Forked 20270 +[17501] Forked 20271 +(20270) found +(20271) found +[17500] Forked 20272 +[17499] Forked 20273 +(20272) found +(20273) found +[17498] Forked 20274 +[17497] Forked 20275 +(20274) found +(20275) found +[17496] Forked 20276 +[17495] Forked 20277 +(20276) found +(20277) found +[17494] Forked 20278 +[17493] Forked 20279 +(20278) found +(20279) found +[17492] Forked 20280 +[17491] Forked 20281 +(20280) found +(20281) found +[17490] Forked 20282 +[17489] Forked 20283 +(20282) found +(20283) found +[17488] Forked 20284 +[17487] Forked 20285 +(20284) found +(20285) found +[17486] Forked 20286 +[17485] Forked 20287 +(20286) found +(20287) found +[17484] Forked 20288 +[17483] Forked 20289 +(20288) found +(20289) found +[17482] Forked 20290 +[17481] Forked 20291 +(20290) found +(20291) found +[17480] Forked 20292 +[17479] Forked 20293 +(20292) found +(20293) found +[17478] Forked 20294 +[17477] Forked 20295 +(20294) found +(20295) found +[17476] Forked 20296 +[17475] Forked 20297 +(20296) found +(20297) found +[17474] Forked 20298 +[17473] Forked 20299 +(20298) found +(20299) found +[17472] Forked 20300 +[17471] Forked 20301 +(20300) found +(20301) found +[17470] Forked 20302 +[17469] Forked 20303 +(20302) found +(20303) found +[17468] Forked 20304 +[17467] Forked 20305 +(20304) found +(20305) found +[17466] Forked 20306 +[17465] Forked 20307 +(20306) found +(20307) found +[17464] Forked 20308 +[17463] Forked 20309 +(20308) found +(20309) found +[17462] Forked 20310 +[17461] Forked 20311 +(20310) found +(20311) found +[17460] Forked 20312 +[17459] Forked 20313 +(20312) found +(20313) found +[17458] Forked 20314 +[17457] Forked 20315 +(20314) found +(20315) found +[17456] Forked 20316 +[17455] Forked 20317 +(20316) found +(20317) found +[17454] Forked 20318 +[17453] Forked 20319 +(20318) found +(20319) found +[17452] Forked 20320 +[17451] Forked 20321 +(20320) found +(20321) found +[17450] Forked 20322 +[17449] Forked 20323 +(20322) found +(20323) found +[17448] Forked 20324 +[17447] Forked 20325 +(20324) found +(20325) found +[17446] Forked 20326 +[17445] Forked 20327 +(20326) found +(20327) found +[17444] Forked 20328 +[17443] Forked 20329 +(20328) found +(20329) found +[17442] Forked 20330 +[17441] Forked 20331 +(20330) found +(20331) found +[17440] Forked 20332 +[17439] Forked 20333 +(20332) found +(20333) found +[17438] Forked 20334 +(20334) found +[17437] Forked 20335 +(20335) found +[17436] Forked 20336 +(20336) found +[17435] Forked 20337 +(20337) found +[17434] Forked 20338 +(20338) found +[17433] Forked 20339 +(20339) found +[17432] Forked 20340 +(20340) found +[17431] Forked 20341 +(20341) found +[17430] Forked 20342 +(20342) found +[17429] Forked 20343 +(20343) found +[17428] Forked 20344 +(20344) found +[17427] Forked 20345 +(20345) found +[17426] Forked 20346 +(20346) found +[17425] Forked 20347 +(20347) found +[17424] Forked 20348 +(20348) found +[17423] Forked 20349 +(20349) found +[17422] Forked 20350 +(20350) found +[17421] Forked 20351 +(20351) found +[17420] Forked 20352 +(20352) found +[17419] Forked 20353 +(20353) found +[17418] Forked 20354 +(20354) found +[17417] Forked 20355 +(20355) found +[17416] Forked 20356 +(20356) found +[17415] Forked 20357 +(20357) found +[17414] Forked 20358 +(20358) found +[17413] Forked 20359 +(20359) found +[17412] Forked 20360 +(20360) found +[17411] Forked 20361 +(20361) found +[17410] Forked 20362 +(20362) found +[17409] Forked 20363 +(20363) found +[17408] Forked 20364 +(20364) found +[17407] Forked 20365 +(20365) found +[17406] Forked 20366 +(20366) found +[17405] Forked 20367 +(20367) found +[17404] Forked 20368 +(20368) found +[17403] Forked 20369 +(20369) found +[17402] Forked 20370 +(20370) found +[17401] Forked 20371 +(20371) found +[17400] Forked 20372 +(20372) found +[17399] Forked 20373 +[17398] Forked 20374 +(20373) found +(20374) found +[17397] Forked 20375 +[17396] Forked 20376 +(20375) found +(20376) found +[17395] Forked 20377 +[17394] Forked 20378 +(20377) found +(20378) found +[17393] Forked 20379 +[17392] Forked 20380 +(20379) found +(20380) found +[17391] Forked 20381 +[17390] Forked 20382 +(20381) found +(20382) found +[17389] Forked 20383 +[17388] Forked 20384 +(20383) found +(20384) found +[17387] Forked 20385 +[17386] Forked 20386 +(20385) found +(20386) found +[17385] Forked 20387 +[17384] Forked 20388 +(20387) found +(20388) found +[17383] Forked 20389 +[17382] Forked 20390 +(20389) found +(20390) found +[17381] Forked 20391 +[17380] Forked 20392 +(20391) found +(20392) found +[17379] Forked 20393 +[17378] Forked 20394 +(20393) found +(20394) found +[17377] Forked 20395 +[17376] Forked 20396 +(20395) found +(20396) found +[17375] Forked 20397 +[17374] Forked 20398 +(20397) found +(20398) found +[17373] Forked 20399 +[17372] Forked 20400 +(20399) found +(20400) found +[17371] Forked 20401 +[17370] Forked 20402 +(20401) found +(20402) found +[17369] Forked 20403 +[17368] Forked 20404 +(20403) found +(20404) found +[17367] Forked 20405 +[17366] Forked 20406 +(20405) found +(20406) found +[17365] Forked 20407 +[17364] Forked 20408 +(20407) found +(20408) found +[17363] Forked 20409 +[17362] Forked 20410 +(20409) found +(20410) found +[17361] Forked 20411 +[17360] Forked 20412 +(20411) found +(20412) found +[17359] Forked 20413 +[17358] Forked 20414 +(20413) found +(20414) found +[17357] Forked 20415 +[17356] Forked 20416 +(20415) found +(20416) found +[17355] Forked 20417 +(20417) found +[17354] Forked 20418 +(20418) found +[17353] Forked 20419 +(20419) found +[17352] Forked 20420 +(20420) found +[17351] Forked 20421 +(20421) found +[17350] Forked 20422 +(20422) found +[17349] Forked 20423 +(20423) found +[17348] Forked 20424 +(20424) found +[17347] Forked 20425 +(20425) found +[17346] Forked 20426 +(20426) found +[17345] Forked 20427 +(20427) found +[17344] Forked 20428 +(20428) found +[17343] Forked 20429 +(20429) found +[17342] Forked 20430 +(20430) found +[17341] Forked 20431 +(20431) found +[17340] Forked 20432 +(20432) found +[17339] Forked 20433 +(20433) found +[17338] Forked 20434 +(20434) found +[17337] Forked 20435 +(20435) found +[17336] Forked 20436 +(20436) found +[17335] Forked 20437 +(20437) found +[17334] Forked 20438 +(20438) found +[17333] Forked 20439 +(20439) found +[17332] Forked 20440 +(20440) found +[17331] Forked 20441 +(20441) found +[17330] Forked 20442 +(20442) found +[17329] Forked 20443 +(20443) found +[17328] Forked 20444 +(20444) found +[17327] Forked 20445 +(20445) found +[17326] Forked 20446 +(20446) found +[17325] Forked 20447 +(20447) found +[17324] Forked 20448 +(20448) found +[17323] Forked 20449 +(20449) found +[17322] Forked 20450 +(20450) found +[17321] Forked 20451 +(20451) found +[17320] Forked 20452 +(20452) found +[17319] Forked 20453 +(20453) found +[17318] Forked 20454 +(20454) found +[17317] Forked 20455 +(20455) found +[17316] Forked 20456 +[17315] Forked 20457 +(20456) found +(20457) found +[17314] Forked 20458 +[17313] Forked 20459 +(20458) found +(20459) found +[17312] Forked 20460 +[17311] Forked 20461 +(20460) found +(20461) found +[17310] Forked 20462 +[17309] Forked 20463 +(20462) found +(20463) found +[17308] Forked 20464 +[17307] Forked 20465 +(20464) found +(20465) found +[17306] Forked 20466 +[17305] Forked 20467 +(20466) found +(20467) found +[17304] Forked 20468 +[17303] Forked 20469 +(20468) found +(20469) found +[17302] Forked 20470 +[17301] Forked 20471 +(20470) found +(20471) found +[17300] Forked 20472 +[17299] Forked 20473 +(20472) found +(20473) found +[17298] Forked 20474 +[17297] Forked 20475 +(20474) found +(20475) found +[17296] Forked 20476 +[17295] Forked 20477 +(20476) found +(20477) found +[17294] Forked 20478 +[17293] Forked 20479 +(20478) found +(20479) found +[17292] Forked 20480 +[17291] Forked 20481 +(20480) found +(20481) found +[17290] Forked 20482 +[17289] Forked 20483 +(20482) found +(20483) found +[17288] Forked 20484 +[17287] Forked 20485 +(20484) found +(20485) found +[17286] Forked 20486 +[17285] Forked 20487 +(20486) found +(20487) found +[17284] Forked 20488 +[17283] Forked 20489 +(20488) found +(20489) found +[17282] Forked 20490 +[17281] Forked 20491 +(20490) found +(20491) found +[17280] Forked 20492 +[17279] Forked 20493 +(20492) found +(20493) found +[17278] Forked 20494 +(20494) found +[17277] Forked 20495 +[17276] Forked 20496 +(20495) found +(20496) found +[17275] Forked 20497 +[17274] Forked 20498 +(20497) found +(20498) found +[17273] Forked 20499 +(20499) found +[17272] Forked 20500 +(20500) found +[17271] Forked 20501 +(20501) found +[17270] Forked 20502 +(20502) found +[17269] Forked 20503 +(20503) found +[17268] Forked 20504 +(20504) found +[17267] Forked 20505 +(20505) found +[17266] Forked 20506 +(20506) found +[17265] Forked 20507 +(20507) found +[17264] Forked 20508 +(20508) found +[17263] Forked 20509 +(20509) found +[17262] Forked 20510 +(20510) found +[17261] Forked 20511 +(20511) found +[17260] Forked 20512 +(20512) found +[17259] Forked 20513 +(20513) found +[17258] Forked 20514 +(20514) found +[17257] Forked 20515 +(20515) found +[17256] Forked 20516 +(20516) found +[17255] Forked 20517 +(20517) found +[17254] Forked 20518 +(20518) found +[17253] Forked 20519 +(20519) found +[17252] Forked 20520 +(20520) found +[17251] Forked 20521 +(20521) found +[17250] Forked 20522 +(20522) found +[17249] Forked 20523 +(20523) found +[17248] Forked 20524 +(20524) found +[17247] Forked 20525 +(20525) found +[17246] Forked 20526 +(20526) found +[17245] Forked 20527 +(20527) found +[17244] Forked 20528 +(20528) found +[17243] Forked 20529 +(20529) found +[17242] Forked 20530 +(20530) found +[17241] Forked 20531 +(20531) found +[17240] Forked 20532 +(20532) found +[17239] Forked 20533 +(20533) found +[17238] Forked 20534 +(20534) found +[17237] Forked 20535 +(20535) found +[17236] Forked 20536 +(20536) found +[17235] Forked 20537 +(20537) found +[17234] Forked 20538 +[17233] Forked 20539 +(20538) found +(20539) found +[17232] Forked 20540 +[17231] Forked 20541 +(20540) found +(20541) found +[17230] Forked 20542 +[17229] Forked 20543 +(20542) found +(20543) found +[17228] Forked 20544 +[17227] Forked 20545 +(20544) found +(20545) found +[17226] Forked 20546 +[17225] Forked 20547 +(20546) found +(20547) found +[17224] Forked 20548 +[17223] Forked 20549 +(20548) found +(20549) found +[17222] Forked 20550 +[17221] Forked 20551 +(20550) found +(20551) found +[17220] Forked 20552 +[17219] Forked 20553 +(20552) found +(20553) found +[17218] Forked 20554 +[17217] Forked 20555 +(20554) found +(20555) found +[17216] Forked 20556 +[17215] Forked 20557 +(20556) found +(20557) found +[17214] Forked 20558 +[17213] Forked 20559 +(20558) found +(20559) found +[17212] Forked 20560 +[17211] Forked 20561 +(20560) found +(20561) found +[17210] Forked 20562 +[17209] Forked 20563 +(20562) found +(20563) found +[17208] Forked 20564 +[17207] Forked 20565 +(20564) found +(20565) found +[17206] Forked 20566 +[17205] Forked 20567 +(20566) found +(20567) found +[17204] Forked 20568 +[17203] Forked 20569 +(20568) found +(20569) found +[17202] Forked 20570 +[17201] Forked 20571 +(20570) found +(20571) found +[17200] Forked 20572 +[17199] Forked 20573 +(20572) found +(20573) found +[17198] Forked 20574 +[17197] Forked 20575 +(20574) found +(20575) found +[17196] Forked 20576 +[17195] Forked 20577 +(20576) found +(20577) found +[17194] Forked 20578 +[17193] Forked 20579 +(20578) found +(20579) found +[17192] Forked 20580 +[17191] Forked 20581 +(20580) found +(20581) found +[17190] Forked 20582 +[17189] Forked 20583 +(20582) found +(20583) found +[17188] Forked 20584 +[17187] Forked 20585 +(20584) found +(20585) found +[17186] Forked 20586 +[17185] Forked 20587 +(20586) found +(20587) found +[17184] Forked 20588 +[17183] Forked 20589 +(20588) found +(20589) found +[17182] Forked 20590 +[17181] Forked 20591 +(20590) found +(20591) found +[17180] Forked 20592 +[17179] Forked 20593 +(20592) found +(20593) found +[17178] Forked 20594 +[17177] Forked 20595 +(20594) found +(20595) found +[17176] Forked 20596 +[17175] Forked 20597 +(20596) found +(20597) found +[17174] Forked 20598 +[17173] Forked 20599 +(20598) found +(20599) found +[17172] Forked 20600 +[17171] Forked 20601 +(20600) found +(20601) found +[17170] Forked 20602 +[17169] Forked 20603 +(20602) found +(20603) found +[17168] Forked 20604 +[17167] Forked 20605 +(20604) found +(20605) found +[17166] Forked 20606 +[17165] Forked 20607 +(20606) found +(20607) found +[17164] Forked 20608 +[17163] Forked 20609 +(20608) found +(20609) found +[17162] Forked 20610 +[17161] Forked 20611 +(20610) found +(20611) found +[17160] Forked 20612 +[17159] Forked 20613 +(20612) found +(20613) found +[17158] Forked 20614 +[17157] Forked 20615 +(20614) found +(20615) found +[17156] Forked 20616 +[17155] Forked 20617 +(20616) found +(20617) found +[17154] Forked 20618 +[17153] Forked 20619 +(20618) found +(20619) found +[17152] Forked 20620 +[17151] Forked 20621 +(20620) found +(20621) found +[17150] Forked 20622 +[17149] Forked 20623 +(20622) found +(20623) found +[17148] Forked 20624 +[17147] Forked 20625 +(20624) found +(20625) found +[17146] Forked 20626 +[17145] Forked 20627 +(20626) found +(20627) found +[17144] Forked 20628 +[17143] Forked 20629 +(20628) found +(20629) found +[17142] Forked 20630 +(20630) found +[17141] Forked 20631 +(20631) found +[17140] Forked 20632 +(20632) found +[17139] Forked 20633 +(20633) found +[17138] Forked 20634 +(20634) found +[17137] Forked 20635 +(20635) found +[17136] Forked 20636 +(20636) found +[17135] Forked 20637 +(20637) found +[17134] Forked 20638 +(20638) found +[17133] Forked 20639 +(20639) found +[17132] Forked 20640 +(20640) found +[17131] Forked 20641 +(20641) found +[17130] Forked 20642 +(20642) found +[17129] Forked 20643 +(20643) found +[17128] Forked 20644 +(20644) found +[17127] Forked 20645 +(20645) found +[17126] Forked 20646 +(20646) found +[17125] Forked 20647 +(20647) found +[17124] Forked 20648 +(20648) found +[17123] Forked 20649 +(20649) found +[17122] Forked 20650 +(20650) found +[17121] Forked 20651 +(20651) found +[17120] Forked 20652 +(20652) found +[17119] Forked 20653 +(20653) found +[17118] Forked 20654 +(20654) found +[17117] Forked 20655 +(20655) found +[17116] Forked 20656 +(20656) found +[17115] Forked 20657 +(20657) found +[17114] Forked 20658 +(20658) found +[17113] Forked 20659 +(20659) found +[17112] Forked 20660 +(20660) found +[17111] Forked 20661 +(20661) found +[17110] Forked 20662 +(20662) found +[17109] Forked 20663 +(20663) found +[17108] Forked 20664 +[17107] Forked 20665 +(20664) found +(20665) found +[17106] Forked 20666 +[17105] Forked 20667 +(20666) found +(20667) found +[17104] Forked 20668 +[17103] Forked 20669 +(20668) found +(20669) found +[17102] Forked 20670 +[17101] Forked 20671 +(20670) found +(20671) found +[17100] Forked 20672 +[17099] Forked 20673 +(20672) found +(20673) found +[17098] Forked 20674 +[17097] Forked 20675 +(20674) found +(20675) found +[17096] Forked 20676 +[17095] Forked 20677 +(20676) found +(20677) found +[17094] Forked 20678 +[17093] Forked 20679 +(20678) found +(20679) found +[17092] Forked 20680 +[17091] Forked 20681 +(20680) found +(20681) found +[17090] Forked 20682 +[17089] Forked 20683 +(20682) found +(20683) found +[17088] Forked 20684 +[17087] Forked 20685 +(20684) found +(20685) found +[17086] Forked 20686 +[17085] Forked 20687 +(20686) found +(20687) found +[17084] Forked 20688 +[17083] Forked 20689 +(20688) found +(20689) found +[17082] Forked 20690 +[17081] Forked 20691 +(20690) found +(20691) found +[17080] Forked 20692 +[17079] Forked 20693 +(20692) found +(20693) found +[17078] Forked 20694 +[17077] Forked 20695 +(20694) found +(20695) found +[17076] Forked 20696 +[17075] Forked 20697 +(20696) found +(20697) found +[17074] Forked 20698 +[17073] Forked 20699 +(20698) found +(20699) found +[17072] Forked 20700 +[17071] Forked 20701 +(20700) found +(20701) found +[17070] Forked 20702 +[17069] Forked 20703 +(20702) found +(20703) found +[17068] Forked 20704 +[17067] Forked 20706 +(20704) found +(20706) found +[17066] Forked 20707 +(20707) found +[17065] Forked 20708 +(20708) found +[17064] Forked 20709 +(20709) found +[17063] Forked 20710 +(20710) found +[17062] Forked 20711 +(20711) found +[17061] Forked 20712 +(20712) found +[17060] Forked 20713 +(20713) found +[17059] Forked 20714 +(20714) found +[17058] Forked 20715 +(20715) found +[17057] Forked 20716 +(20716) found +[17056] Forked 20717 +(20717) found +[17055] Forked 20718 +(20718) found +[17054] Forked 20719 +(20719) found +[17053] Forked 20720 +(20720) found +[17052] Forked 20721 +(20721) found +[17051] Forked 20722 +(20722) found +[17050] Forked 20723 +(20723) found +[17049] Forked 20724 +(20724) found +[17048] Forked 20725 +(20725) found +[17047] Forked 20726 +(20726) found +[17046] Forked 20727 +(20727) found +[17045] Forked 20728 +(20728) found +[17044] Forked 20729 +(20729) found +[17043] Forked 20730 +(20730) found +[17042] Forked 20731 +(20731) found +[17041] Forked 20732 +(20732) found +[17040] Forked 20733 +(20733) found +[17039] Forked 20734 +(20734) found +[17038] Forked 20735 +(20735) found +[17037] Forked 20736 +(20736) found +[17036] Forked 20737 +(20737) found +[17035] Forked 20738 +(20738) found +[17034] Forked 20739 +(20739) found +[17033] Forked 20740 +(20740) found +[17032] Forked 20741 +(20741) found +[17031] Forked 20742 +(20742) found +[17030] Forked 20743 +(20743) found +[17029] Forked 20744 +(20744) found +[17028] Forked 20745 +(20745) found +[17027] Forked 20746 +(20746) found +[17026] Forked 20747 +(20747) found +[17025] Forked 20748 +(20748) found +[17024] Forked 20749 +(20749) found +[17023] Forked 20750 +(20750) found +[17022] Forked 20751 +(20751) found +[17021] Forked 20752 +(20752) found +[17020] Forked 20753 +(20753) found +[17019] Forked 20754 +(20754) found +[17018] Forked 20755 +(20755) found +[17017] Forked 20756 +(20756) found +[17016] Forked 20757 +(20757) found +[17015] Forked 20758 +(20758) found +[17014] Forked 20759 +(20759) found +[17013] Forked 20760 +(20760) found +[17012] Forked 20761 +(20761) found +[17011] Forked 20762 +(20762) found +[17010] Forked 20763 +(20763) found +[17009] Forked 20764 +(20764) found +[17008] Forked 20765 +(20765) found +[17007] Forked 20766 +(20766) found +[17006] Forked 20767 +(20767) found +[17005] Forked 20768 +(20768) found +[17004] Forked 20769 +(20769) found +[17003] Forked 20770 +(20770) found +[17002] Forked 20771 +(20771) found +[17001] Forked 20772 +(20772) found +[17000] Forked 20773 +(20773) found +[16999] Forked 20774 +(20774) found +[16998] Forked 20775 +(20775) found +[16997] Forked 20776 +(20776) found +[16996] Forked 20777 +(20777) found +[16995] Forked 20778 +(20778) found +[16994] Forked 20779 +(20779) found +[16993] Forked 20780 +(20780) found +[16992] Forked 20781 +(20781) found +[16991] Forked 20782 +[16990] Forked 20783 +(20782) found +(20783) found +[16989] Forked 20784 +[16988] Forked 20785 +(20784) found +(20785) found +[16987] Forked 20786 +[16986] Forked 20787 +(20786) found +(20787) found +[16985] Forked 20788 +[16984] Forked 20789 +(20788) found +(20789) found +[16983] Forked 20790 +[16982] Forked 20791 +(20790) found +(20791) found +[16981] Forked 20792 +[16980] Forked 20793 +(20792) found +(20793) found +[16979] Forked 20794 +[16978] Forked 20795 +(20794) found +(20795) found +[16977] Forked 20796 +[16976] Forked 20797 +(20796) found +(20797) found +[16975] Forked 20798 +[16974] Forked 20799 +(20798) found +(20799) found +[16973] Forked 20800 +[16972] Forked 20801 +(20800) found +(20801) found +[16971] Forked 20802 +[16970] Forked 20803 +(20802) found +(20803) found +[16969] Forked 20804 +[16968] Forked 20805 +(20804) found +(20805) found +[16967] Forked 20806 +[16966] Forked 20807 +(20806) found +(20807) found +[16965] Forked 20808 +[16964] Forked 20809 +(20808) found +(20809) found +[16963] Forked 20810 +[16962] Forked 20811 +(20810) found +(20811) found +[16961] Forked 20812 +[16960] Forked 20813 +(20812) found +(20813) found +[16959] Forked 20814 +[16958] Forked 20815 +(20814) found +(20815) found +[16957] Forked 20816 +[16956] Forked 20817 +(20816) found +(20817) found +[16955] Forked 20818 +[16954] Forked 20819 +(20818) found +(20819) found +[16953] Forked 20820 +[16952] Forked 20821 +(20820) found +(20821) found +[16951] Forked 20822 +[16950] Forked 20823 +(20822) found +(20823) found +[16949] Forked 20824 +(20824) found +[16948] Forked 20825 +(20825) found +[16947] Forked 20826 +(20826) found +[16946] Forked 20827 +(20827) found +[16945] Forked 20828 +(20828) found +[16944] Forked 20829 +(20829) found +[16943] Forked 20830 +(20830) found +[16942] Forked 20831 +(20831) found +[16941] Forked 20832 +(20832) found +[16940] Forked 20833 +(20833) found +[16939] Forked 20834 +(20834) found +[16938] Forked 20835 +(20835) found +[16937] Forked 20836 +(20836) found +[16936] Forked 20837 +(20837) found +[16935] Forked 20838 +(20838) found +[16934] Forked 20839 +(20839) found +[16933] Forked 20840 +(20840) found +[16932] Forked 20841 +(20841) found +[16931] Forked 20842 +(20842) found +[16930] Forked 20843 +(20843) found +[16929] Forked 20844 +(20844) found +[16928] Forked 20845 +(20845) found +[16927] Forked 20846 +(20846) found +[16926] Forked 20847 +(20847) found +[16925] Forked 20848 +(20848) found +[16924] Forked 20849 +(20849) found +[16923] Forked 20850 +(20850) found +[16922] Forked 20851 +(20851) found +[16921] Forked 20852 +(20852) found +[16920] Forked 20853 +(20853) found +[16919] Forked 20854 +(20854) found +[16918] Forked 20855 +(20855) found +[16917] Forked 20856 +(20856) found +[16916] Forked 20857 +(20857) found +[16915] Forked 20858 +(20858) found +[16914] Forked 20859 +(20859) found +[16913] Forked 20860 +[16912] Forked 20861 +(20860) found +(20861) found +[16911] Forked 20862 +[16910] Forked 20863 +(20862) found +(20863) found +[16909] Forked 20864 +[16908] Forked 20865 +(20865) found +(20864) found +[16907] Forked 20866 +(20866) found +[16906] Forked 20867 +(20867) found +[16905] Forked 20868 +(20868) found +[16904] Forked 20869 +(20869) found +[16903] Forked 20870 +(20870) found +[16902] Forked 20871 +(20871) found +[16901] Forked 20872 +(20872) found +[16900] Forked 20873 +(20873) found +[16899] Forked 20874 +(20874) found +[16898] Forked 20875 +(20875) found +[16897] Forked 20876 +(20876) found +[16896] Forked 20877 +(20877) found +[16895] Forked 20878 +(20878) found +[16894] Forked 20879 +(20879) found +[16893] Forked 20880 +(20880) found +[16892] Forked 20881 +(20881) found +[16891] Forked 20882 +(20882) found +[16890] Forked 20883 +(20883) found +[16889] Forked 20884 +(20884) found +[16888] Forked 20885 +(20885) found +[16887] Forked 20886 +(20886) found +[16886] Forked 20887 +(20887) found +[16885] Forked 20888 +(20888) found +[16884] Forked 20889 +(20889) found +[16883] Forked 20890 +(20890) found +[16882] Forked 20891 +(20891) found +[16881] Forked 20892 +(20892) found +[16880] Forked 20893 +(20893) found +[16879] Forked 20894 +(20894) found +[16878] Forked 20895 +(20895) found +[16877] Forked 20896 +(20896) found +[16876] Forked 20897 +(20897) found +[16875] Forked 20898 +(20898) found +[16874] Forked 20899 +(20899) found +[16873] Forked 20900 +(20900) found +[16872] Forked 20901 +(20901) found +[16871] Forked 20902 +(20902) found +[16870] Forked 20903 +(20903) found +[16869] Forked 20904 +(20904) found +[16868] Forked 20905 +(20905) found +[16867] Forked 20906 +(20906) found +[16866] Forked 20907 +(20907) found +[16865] Forked 20908 +(20908) found +[16864] Forked 20909 +(20909) found +[16863] Forked 20910 +(20910) found +[16862] Forked 20911 +(20911) found +[16861] Forked 20912 +(20912) found +[16860] Forked 20913 +(20913) found +[16859] Forked 20914 +(20914) found +[16858] Forked 20915 +(20915) found +[16857] Forked 20916 +(20916) found +[16856] Forked 20917 +(20917) found +[16855] Forked 20918 +(20918) found +[16854] Forked 20919 +(20919) found +[16853] Forked 20920 +(20920) found +[16852] Forked 20921 +(20921) found +[16851] Forked 20922 +(20922) found +[16850] Forked 20923 +(20923) found +[16849] Forked 20924 +(20924) found +[16848] Forked 20925 +(20925) found +[16847] Forked 20926 +(20926) found +[16846] Forked 20927 +(20927) found +[16845] Forked 20928 +(20928) found +[16844] Forked 20929 +(20929) found +[16843] Forked 20930 +[16842] Forked 20931 +(20930) found +(20931) found +[16841] Forked 20932 +[16840] Forked 20933 +(20932) found +(20933) found +[16839] Forked 20934 +[16838] Forked 20935 +(20934) found +(20935) found +[16837] Forked 20936 +[16836] Forked 20937 +(20936) found +(20937) found +[16835] Forked 20938 +[16834] Forked 20939 +(20938) found +(20939) found +[16833] Forked 20940 +[16832] Forked 20941 +(20940) found +(20941) found +[16831] Forked 20942 +[16830] Forked 20943 +(20942) found +(20943) found +[16829] Forked 20944 +[16828] Forked 20945 +(20944) found +(20945) found +[16827] Forked 20946 +[16826] Forked 20947 +(20946) found +(20947) found +[16825] Forked 20948 +(20948) found +[16824] Forked 20949 +(20949) found +[16823] Forked 20950 +[16822] Forked 20951 +(20950) found +(20951) found +[16821] Forked 20952 +[16820] Forked 20953 +(20952) found +(20953) found +[16819] Forked 20954 +[16818] Forked 20955 +(20954) found +(20955) found +[16817] Forked 20956 +[16816] Forked 20957 +(20956) found +(20957) found +[16815] Forked 20958 +[16814] Forked 20959 +(20958) found +(20959) found +[16813] Forked 20960 +[16812] Forked 20961 +(20960) found +(20961) found +[16811] Forked 20962 +[16810] Forked 20963 +(20962) found +(20963) found +[16809] Forked 20964 +[16808] Forked 20965 +(20964) found +(20965) found +[16807] Forked 20966 +[16806] Forked 20967 +(20966) found +(20967) found +[16805] Forked 20968 +[16804] Forked 20969 +(20968) found +(20969) found +[16803] Forked 20970 +[16802] Forked 20971 +(20970) found +(20971) found +[16801] Forked 20972 +[16800] Forked 20973 +(20972) found +(20973) found +[16799] Forked 20974 +(20974) found +[16798] Forked 20975 +(20975) found +[16797] Forked 20976 +(20976) found +[16796] Forked 20977 +(20977) found +[16795] Forked 20978 +(20978) found +[16794] Forked 20979 +(20979) found +[16793] Forked 20980 +(20980) found +[16792] Forked 20981 +(20981) found +[16791] Forked 20982 +(20982) found +[16790] Forked 20983 +(20983) found +[16789] Forked 20984 +(20984) found +[16788] Forked 20985 +(20985) found +[16787] Forked 20986 +(20986) found +[16786] Forked 20987 +(20987) found +[16785] Forked 20988 +(20988) found +[16784] Forked 20989 +(20989) found +[16783] Forked 20990 +(20990) found +[16782] Forked 20991 +(20991) found +[16781] Forked 20992 +(20992) found +[16780] Forked 20993 +(20993) found +[16779] Forked 20994 +(20994) found +[16778] Forked 20995 +(20995) found +[16777] Forked 20996 +(20996) found +[16776] Forked 20997 +(20997) found +[16775] Forked 20998 +(20998) found +[16774] Forked 20999 +(20999) found +[16773] Forked 21000 +(21000) found +[16772] Forked 21001 +(21001) found +[16771] Forked 21002 +(21002) found +[16770] Forked 21003 +(21003) found +[16769] Forked 21004 +(21004) found +[16768] Forked 21005 +(21005) found +[16767] Forked 21006 +(21006) found +[16766] Forked 21007 +(21007) found +[16765] Forked 21008 +(21008) found +[16764] Forked 21009 +(21009) found +[16763] Forked 21010 +(21010) found +[16762] Forked 21011 +[16761] Forked 21012 +(21011) found +(21012) found +[16760] Forked 21013 +[16759] Forked 21014 +(21013) found +(21014) found +[16758] Forked 21015 +[16757] Forked 21016 +(21015) found +(21016) found +[16756] Forked 21017 +[16755] Forked 21018 +(21017) found +(21018) found +[16754] Forked 21019 +[16753] Forked 21020 +(21019) found +(21020) found +[16752] Forked 21021 +[16751] Forked 21022 +(21021) found +(21022) found +[16750] Forked 21023 +[16749] Forked 21024 +(21023) found +(21024) found +[16748] Forked 21025 +[16747] Forked 21026 +(21025) found +(21026) found +[16746] Forked 21027 +[16745] Forked 21028 +(21027) found +(21028) found +[16744] Forked 21029 +[16743] Forked 21030 +(21029) found +(21030) found +[16742] Forked 21031 +[16741] Forked 21032 +(21031) found +(21032) found +[16740] Forked 21033 +[16739] Forked 21034 +(21033) found +(21034) found +[16738] Forked 21035 +[16737] Forked 21036 +(21035) found +(21036) found +[16736] Forked 21037 +[16735] Forked 21038 +(21037) found +(21038) found +[16734] Forked 21039 +[16733] Forked 21040 +(21039) found +(21040) found +[16732] Forked 21041 +[16731] Forked 21042 +(21041) found +(21042) found +[16730] Forked 21043 +[16729] Forked 21044 +(21043) found +(21044) found +[16728] Forked 21045 +[16727] Forked 21046 +(21045) found +(21046) found +[16726] Forked 21047 +[16725] Forked 21048 +(21047) found +(21048) found +[16724] Forked 21049 +[16723] Forked 21050 +(21049) found +(21050) found +[16722] Forked 21051 +[16721] Forked 21052 +(21051) found +(21052) found +[16720] Forked 21053 +[16719] Forked 21054 +(21053) found +(21054) found +[16718] Forked 21055 +[16717] Forked 21056 +(21055) found +(21056) found +[16716] Forked 21057 +[16715] Forked 21058 +(21057) found +(21058) found +[16714] Forked 21059 +[16713] Forked 21060 +(21059) found +(21060) found +[16712] Forked 21061 +[16711] Forked 21062 +(21061) found +(21062) found +[16710] Forked 21063 +[16709] Forked 21064 +(21063) found +(21064) found +[16708] Forked 21065 +[16707] Forked 21066 +(21065) found +(21066) found +[16706] Forked 21067 +[16705] Forked 21068 +(21067) found +(21068) found +[16704] Forked 21069 +[16703] Forked 21070 +(21069) found +(21070) found +[16702] Forked 21071 +[16701] Forked 21072 +(21071) found +(21072) found +[16700] Forked 21073 +[16699] Forked 21074 +(21073) found +(21074) found +[16698] Forked 21075 +[16697] Forked 21076 +(21075) found +(21076) found +[16696] Forked 21077 +[16695] Forked 21078 +(21077) found +(21078) found +[16694] Forked 21079 +[16693] Forked 21080 +(21079) found +(21080) found +[16692] Forked 21081 +(21081) found +[16691] Forked 21082 +[16690] Forked 21083 +(21082) found +(21083) found +[16689] Forked 21084 +[16688] Forked 21085 +(21084) found +(21085) found +[16687] Forked 21086 +[16686] Forked 21087 +(21086) found +(21087) found +[16685] Forked 21088 +[16684] Forked 21089 +(21088) found +(21089) found +[16683] Forked 21090 +[16682] Forked 21091 +(21090) found +(21091) found +[16681] Forked 21092 +[16680] Forked 21093 +(21093) found +(21092) found +[16679] Forked 21094 +(21094) found +[16678] Forked 21095 +(21095) found +[16677] Forked 21096 +(21096) found +[16676] Forked 21097 +(21097) found +[16675] Forked 21098 +(21098) found +[16674] Forked 21099 +(21099) found +[16673] Forked 21100 +(21100) found +[16672] Forked 21101 +(21101) found +[16671] Forked 21102 +(21102) found +[16670] Forked 21103 +(21103) found +[16669] Forked 21104 +(21104) found +[16668] Forked 21105 +(21105) found +[16667] Forked 21106 +(21106) found +[16666] Forked 21107 +(21107) found +[16665] Forked 21108 +(21108) found +[16664] Forked 21109 +(21109) found +[16663] Forked 21110 +(21110) found +[16662] Forked 21111 +(21111) found +[16661] Forked 21112 +(21112) found +[16660] Forked 21113 +(21113) found +[16659] Forked 21114 +(21114) found +[16658] Forked 21115 +(21115) found +[16657] Forked 21116 +(21116) found +[16656] Forked 21117 +(21117) found +[16655] Forked 21118 +(21118) found +[16654] Forked 21119 +(21119) found +[16653] Forked 21120 +(21120) found +[16652] Forked 21121 +(21121) found +[16651] Forked 21122 +(21122) found +[16650] Forked 21123 +(21123) found +[16649] Forked 21124 +(21124) found +[16648] Forked 21125 +(21125) found +[16647] Forked 21126 +(21126) found +[16646] Forked 21127 +(21127) found +[16645] Forked 21128 +(21128) found +[16644] Forked 21129 +(21129) found +[16643] Forked 21130 +(21130) found +[16642] Forked 21131 +(21131) found +[16641] Forked 21132 +(21132) found +[16640] Forked 21133 +(21133) found +[16639] Forked 21134 +(21134) found +[16638] Forked 21135 +[16637] Forked 21136 +(21135) found +(21136) found +[16636] Forked 21137 +[16635] Forked 21138 +(21137) found +(21138) found +[16634] Forked 21139 +[16633] Forked 21140 +(21139) found +(21140) found +[16632] Forked 21141 +[16631] Forked 21142 +(21141) found +(21142) found +[16630] Forked 21143 +[16629] Forked 21144 +(21143) found +(21144) found +[16628] Forked 21145 +[16627] Forked 21146 +(21145) found +(21146) found +[16626] Forked 21147 +[16625] Forked 21148 +(21147) found +(21148) found +[16624] Forked 21149 +[16623] Forked 21150 +(21149) found +(21150) found +[16622] Forked 21151 +[16621] Forked 21152 +(21151) found +(21152) found +[16620] Forked 21153 +[16619] Forked 21154 +(21153) found +(21154) found +[16618] Forked 21155 +[16617] Forked 21156 +(21155) found +(21156) found +[16616] Forked 21157 +[16615] Forked 21158 +(21157) found +(21158) found +[16614] Forked 21159 +[16613] Forked 21160 +(21159) found +(21160) found +[16612] Forked 21161 +[16611] Forked 21162 +(21161) found +(21162) found +[16610] Forked 21163 +[16609] Forked 21164 +(21163) found +(21164) found +[16608] Forked 21165 +[16607] Forked 21166 +(21165) found +(21166) found +[16606] Forked 21167 +[16605] Forked 21168 +(21167) found +(21168) found +[16604] Forked 21169 +[16603] Forked 21170 +(21169) found +(21170) found +[16602] Forked 21171 +[16601] Forked 21172 +(21171) found +(21172) found +[16600] Forked 21173 +[16599] Forked 21175 +(21173) found +(21175) found +[16598] Forked 21176 +(21176) found +[16597] Forked 21177 +(21177) found +[16596] Forked 21178 +(21178) found +[16595] Forked 21179 +(21179) found +[16594] Forked 21180 +(21180) found +[16593] Forked 21181 +(21181) found +[16592] Forked 21182 +(21182) found +[16591] Forked 21183 +(21183) found +[16590] Forked 21184 +(21184) found +[16589] Forked 21185 +(21185) found +[16588] Forked 21186 +(21186) found +[16587] Forked 21187 +(21187) found +[16586] Forked 21188 +(21188) found +[16585] Forked 21189 +(21189) found +[16584] Forked 21190 +(21190) found +[16583] Forked 21191 +(21191) found +[16582] Forked 21192 +(21192) found +[16581] Forked 21193 +(21193) found +[16580] Forked 21194 +(21194) found +[16579] Forked 21195 +(21195) found +[16578] Forked 21196 +(21196) found +[16577] Forked 21197 +(21197) found +[16576] Forked 21198 +(21198) found +[16575] Forked 21199 +(21199) found +[16574] Forked 21200 +(21200) found +[16573] Forked 21201 +(21201) found +[16572] Forked 21202 +(21202) found +[16571] Forked 21203 +(21203) found +[16570] Forked 21204 +(21204) found +[16569] Forked 21205 +(21205) found +[16568] Forked 21206 +(21206) found +[16567] Forked 21207 +(21207) found +[16566] Forked 21208 +(21208) found +[16565] Forked 21209 +(21209) found +[16564] Forked 21210 +(21210) found +[16563] Forked 21211 +(21211) found +[16562] Forked 21212 +(21212) found +[16561] Forked 21213 +(21213) found +[16560] Forked 21214 +(21214) found +[16559] Forked 21215 +(21215) found +[16558] Forked 21216 +[16557] Forked 21217 +(21216) found +(21217) found +[16556] Forked 21218 +[16555] Forked 21219 +(21218) found +(21219) found +[16554] Forked 21220 +[16553] Forked 21221 +(21220) found +(21221) found +[16552] Forked 21222 +[16551] Forked 21223 +(21222) found +(21223) found +[16550] Forked 21224 +[16549] Forked 21225 +(21224) found +(21225) found +[16548] Forked 21226 +[16547] Forked 21227 +(21226) found +(21227) found +[16546] Forked 21228 +[16545] Forked 21229 +(21228) found +(21229) found +[16544] Forked 21230 +[16543] Forked 21231 +(21230) found +(21231) found +[16542] Forked 21232 +[16541] Forked 21233 +(21232) found +(21233) found +[16540] Forked 21234 +[16539] Forked 21235 +(21234) found +(21235) found +[16538] Forked 21236 +[16537] Forked 21237 +(21236) found +(21237) found +[16536] Forked 21238 +[16535] Forked 21239 +(21238) found +(21239) found +[16534] Forked 21240 +[16533] Forked 21241 +(21240) found +(21241) found +[16532] Forked 21242 +[16531] Forked 21243 +(21242) found +(21243) found +[16530] Forked 21244 +[16529] Forked 21245 +(21244) found +(21245) found +[16528] Forked 21246 +[16527] Forked 21247 +(21246) found +(21247) found +[16526] Forked 21248 +[16525] Forked 21249 +(21248) found +(21249) found +[16524] Forked 21250 +[16523] Forked 21251 +(21250) found +(21251) found +[16522] Forked 21252 +[16521] Forked 21253 +(21252) found +(21253) found +[16520] Forked 21254 +[16519] Forked 21255 +(21254) found +(21255) found +[16518] Forked 21256 +[16517] Forked 21257 +(21256) found +(21257) found +[16516] Forked 21258 +[16515] Forked 21259 +(21258) found +(21259) found +[16514] Forked 21260 +[16513] Forked 21261 +(21260) found +(21261) found +[16512] Forked 21262 +(21262) found +[16511] Forked 21263 +(21263) found +[16510] Forked 21264 +(21264) found +[16509] Forked 21265 +(21265) found +[16508] Forked 21266 +(21266) found +[16507] Forked 21267 +(21267) found +[16506] Forked 21268 +(21268) found +[16505] Forked 21269 +(21269) found +[16504] Forked 21270 +(21270) found +[16503] Forked 21271 +(21271) found +[16502] Forked 21272 +(21272) found +[16501] Forked 21273 +(21273) found +[16500] Forked 21274 +(21274) found +[16499] Forked 21275 +(21275) found +[16498] Forked 21276 +(21276) found +[16497] Forked 21277 +(21277) found +[16496] Forked 21278 +(21278) found +[16495] Forked 21279 +(21279) found +[16494] Forked 21280 +(21280) found +[16493] Forked 21281 +(21281) found +[16492] Forked 21282 +(21282) found +[16491] Forked 21283 +(21283) found +[16490] Forked 21284 +(21284) found +[16489] Forked 21285 +(21285) found +[16488] Forked 21286 +(21286) found +[16487] Forked 21287 +(21287) found +[16486] Forked 21288 +(21288) found +[16485] Forked 21289 +(21289) found +[16484] Forked 21290 +(21290) found +[16483] Forked 21291 +(21291) found +[16482] Forked 21292 +(21292) found +[16481] Forked 21293 +(21293) found +[16480] Forked 21294 +(21294) found +[16479] Forked 21295 +(21295) found +[16478] Forked 21296 +(21296) found +[16477] Forked 21297 +[16476] Forked 21298 +(21297) found +(21298) found +[16475] Forked 21299 +[16474] Forked 21300 +(21299) found +(21300) found +[16473] Forked 21301 +[16472] Forked 21302 +(21301) found +(21302) found +[16471] Forked 21303 +[16470] Forked 21304 +(21303) found +(21304) found +[16469] Forked 21305 +[16468] Forked 21306 +(21305) found +(21306) found +[16467] Forked 21307 +[16466] Forked 21308 +(21307) found +(21308) found +[16465] Forked 21309 +[16464] Forked 21310 +(21309) found +(21310) found +[16463] Forked 21311 +[16462] Forked 21312 +(21311) found +(21312) found +[16461] Forked 21313 +[16460] Forked 21314 +(21313) found +(21314) found +[16459] Forked 21315 +[16458] Forked 21316 +(21315) found +(21316) found +[16457] Forked 21317 +[16456] Forked 21318 +(21317) found +(21318) found +[16455] Forked 21319 +[16454] Forked 21320 +(21319) found +(21320) found +[16453] Forked 21321 +[16452] Forked 21322 +(21321) found +(21322) found +[16451] Forked 21323 +[16450] Forked 21324 +(21323) found +(21324) found +[16449] Forked 21325 +[16448] Forked 21326 +(21325) found +(21326) found +[16447] Forked 21327 +[16446] Forked 21328 +(21327) found +(21328) found +[16445] Forked 21329 +[16444] Forked 21330 +(21329) found +(21330) found +[16443] Forked 21331 +[16442] Forked 21332 +(21331) found +(21332) found +[16441] Forked 21333 +[16440] Forked 21334 +(21333) found +(21334) found +[16439] Forked 21335 +[16438] Forked 21336 +(21335) found +(21336) found +[16437] Forked 21337 +[16436] Forked 21338 +(21337) found +(21338) found +[16435] Forked 21339 +[16434] Forked 21340 +(21339) found +(21340) found +[16433] Forked 21341 +[16432] Forked 21342 +(21341) found +(21342) found +[16431] Forked 21343 +[16430] Forked 21344 +(21343) found +(21344) found +[16429] Forked 21345 +[16428] Forked 21346 +(21345) found +(21346) found +[16427] Forked 21347 +[16426] Forked 21348 +(21347) found +(21348) found +[16425] Forked 21349 +[16424] Forked 21350 +(21349) found +(21350) found +[16423] Forked 21351 +[16422] Forked 21352 +(21351) found +(21352) found +[16421] Forked 21353 +[16420] Forked 21354 +(21353) found +(21354) found +[16419] Forked 21355 +[16418] Forked 21356 +(21355) found +(21356) found +[16417] Forked 21357 +[16416] Forked 21358 +(21357) found +(21358) found +[16415] Forked 21359 +[16414] Forked 21360 +(21359) found +(21360) found +[16413] Forked 21361 +[16412] Forked 21362 +(21361) found +(21362) found +[16411] Forked 21363 +[16410] Forked 21364 +(21363) found +(21364) found +[16409] Forked 21365 +[16408] Forked 21366 +(21365) found +(21366) found +[16407] Forked 21367 +[16406] Forked 21368 +(21367) found +(21368) found +[16405] Forked 21369 +[16404] Forked 21370 +(21369) found +(21370) found +[16403] Forked 21371 +[16402] Forked 21372 +(21371) found +(21372) found +[16401] Forked 21373 +[16400] Forked 21374 +(21373) found +(21374) found +[16399] Forked 21375 +[16398] Forked 21376 +(21375) found +(21376) found +[16397] Forked 21377 +[16396] Forked 21378 +(21377) found +(21378) found +[16395] Forked 21379 +[16394] Forked 21380 +(21379) found +(21380) found +[16393] Forked 21381 +[16392] Forked 21382 +(21381) found +(21382) found +[16391] Forked 21383 +[16390] Forked 21384 +(21383) found +(21384) found +[16389] Forked 21385 +[16388] Forked 21386 +(21385) found +(21386) found +[16387] Forked 21387 +[16386] Forked 21388 +(21387) found +(21388) found +[16385] Forked 21389 +(21389) found +[16384] Forked 21390 +(21390) found +[16383] Forked 21391 +(21391) found +[16382] Forked 21392 +(21392) found +[16381] Forked 21393 +(21393) found +[16380] Forked 21394 +(21394) found +[16379] Forked 21395 +(21395) found +[16378] Forked 21396 +(21396) found +[16377] Forked 21397 +(21397) found +[16376] Forked 21398 +(21398) found +[16375] Forked 21399 +(21399) found +[16374] Forked 21400 +(21400) found +[16373] Forked 21401 +(21401) found +[16372] Forked 21402 +(21402) found +[16371] Forked 21403 +(21403) found +[16370] Forked 21404 +(21404) found +[16369] Forked 21405 +(21405) found +[16368] Forked 21406 +(21406) found +[16367] Forked 21407 +(21407) found +[16366] Forked 21408 +(21408) found +[16365] Forked 21409 +(21409) found +[16364] Forked 21410 +(21410) found +[16363] Forked 21411 +(21411) found +[16362] Forked 21412 +(21412) found +[16361] Forked 21413 +(21413) found +[16360] Forked 21414 +(21414) found +[16359] Forked 21415 +(21415) found +[16358] Forked 21416 +(21416) found +[16357] Forked 21417 +(21417) found +[16356] Forked 21418 +(21418) found +[16355] Forked 21419 +(21419) found +[16354] Forked 21420 +(21420) found +[16353] Forked 21421 +(21421) found +[16352] Forked 21422 +(21422) found +[16351] Forked 21423 +(21423) found +[16350] Forked 21424 +(21424) found +[16349] Forked 21425 +(21425) found +[16348] Forked 21426 +(21426) found +[16347] Forked 21427 +(21427) found +[16346] Forked 21428 +[16345] Forked 21429 +(21428) found +(21429) found +[16344] Forked 21430 +[16343] Forked 21431 +(21430) found +(21431) found +[16342] Forked 21432 +(21432) found +[16341] Forked 21433 +[16340] Forked 21434 +(21433) found +(21434) found +[16339] Forked 21435 +[16338] Forked 21436 +(21435) found +(21436) found +[16337] Forked 21437 +[16336] Forked 21438 +(21437) found +(21438) found +[16335] Forked 21439 +[16334] Forked 21440 +(21439) found +(21440) found +[16333] Forked 21441 +[16332] Forked 21442 +(21441) found +(21442) found +[16331] Forked 21443 +[16330] Forked 21444 +(21443) found +(21444) found +[16329] Forked 21445 +[16328] Forked 21446 +(21445) found +(21446) found +[16327] Forked 21447 +[16326] Forked 21448 +(21447) found +(21448) found +[16325] Forked 21449 +[16324] Forked 21450 +(21449) found +(21450) found +[16323] Forked 21451 +[16322] Forked 21452 +(21451) found +(21452) found +[16321] Forked 21453 +[16320] Forked 21454 +(21453) found +(21454) found +[16319] Forked 21455 +[16318] Forked 21456 +(21455) found +(21456) found +[16317] Forked 21457 +[16316] Forked 21458 +(21457) found +(21458) found +[16315] Forked 21459 +[16314] Forked 21460 +(21459) found +(21460) found +[16313] Forked 21461 +[16312] Forked 21462 +(21461) found +(21462) found +[16311] Forked 21463 +[16310] Forked 21464 +(21463) found +(21464) found +[16309] Forked 21465 +[16308] Forked 21466 +(21465) found +(21466) found +[16307] Forked 21467 +[16306] Forked 21468 +(21468) found +(21467) found +[16305] Forked 21469 +(21469) found +[16304] Forked 21470 +(21470) found +[16303] Forked 21471 +(21471) found +[16302] Forked 21472 +(21472) found +[16301] Forked 21473 +(21473) found +[16300] Forked 21474 +(21474) found +[16299] Forked 21475 +(21475) found +[16298] Forked 21476 +(21476) found +[16297] Forked 21477 +(21477) found +[16296] Forked 21478 +(21478) found +[16295] Forked 21479 +(21479) found +[16294] Forked 21480 +(21480) found +[16293] Forked 21481 +(21481) found +[16292] Forked 21482 +(21482) found +[16291] Forked 21483 +(21483) found +[16290] Forked 21484 +(21484) found +[16289] Forked 21485 +(21485) found +[16288] Forked 21486 +(21486) found +[16287] Forked 21487 +(21487) found +[16286] Forked 21488 +(21488) found +[16285] Forked 21489 +(21489) found +[16284] Forked 21490 +(21490) found +[16283] Forked 21491 +(21491) found +[16282] Forked 21492 +(21492) found +[16281] Forked 21493 +(21493) found +[16280] Forked 21494 +(21494) found +[16279] Forked 21495 +(21495) found +[16278] Forked 21496 +(21496) found +[16277] Forked 21497 +(21497) found +[16276] Forked 21498 +(21498) found +[16275] Forked 21499 +(21499) found +[16274] Forked 21500 +(21500) found +[16273] Forked 21501 +(21501) found +[16272] Forked 21502 +(21502) found +[16271] Forked 21503 +[16270] Forked 21504 +(21503) found +(21504) found +[16269] Forked 21505 +[16268] Forked 21506 +(21505) found +(21506) found +[16267] Forked 21507 +[16266] Forked 21508 +(21507) found +(21508) found +[16265] Forked 21509 +[16264] Forked 21510 +(21509) found +(21510) found +[16263] Forked 21511 +[16262] Forked 21512 +(21511) found +(21512) found +[16261] Forked 21513 +[16260] Forked 21514 +(21513) found +(21514) found +[16259] Forked 21515 +[16258] Forked 21516 +(21515) found +(21516) found +[16257] Forked 21517 +[16256] Forked 21518 +(21517) found +(21518) found +[16255] Forked 21519 +[16254] Forked 21520 +(21519) found +(21520) found +[16253] Forked 21521 +[16252] Forked 21522 +(21521) found +(21522) found +[16251] Forked 21523 +[16250] Forked 21524 +(21523) found +(21524) found +[16249] Forked 21525 +[16248] Forked 21526 +(21525) found +(21526) found +[16247] Forked 21527 +[16246] Forked 21528 +(21527) found +(21528) found +[16245] Forked 21529 +[16244] Forked 21530 +(21529) found +(21530) found +[16243] Forked 21531 +[16242] Forked 21532 +(21531) found +(21532) found +[16241] Forked 21533 +[16240] Forked 21534 +(21533) found +(21534) found +[16239] Forked 21535 +[16238] Forked 21536 +(21535) found +(21536) found +[16237] Forked 21537 +[16236] Forked 21538 +(21537) found +(21538) found +[16235] Forked 21539 +[16234] Forked 21540 +(21539) found +(21540) found +[16233] Forked 21541 +[16232] Forked 21542 +(21541) found +(21542) found +[16231] Forked 21543 +[16230] Forked 21544 +(21543) found +(21544) found +[16229] Forked 21545 +(21545) found +[16228] Forked 21546 +(21546) found +[16227] Forked 21547 +(21547) found +[16226] Forked 21548 +(21548) found +[16225] Forked 21549 +(21549) found +[16224] Forked 21550 +(21550) found +[16223] Forked 21551 +(21551) found +[16222] Forked 21552 +(21552) found +[16221] Forked 21553 +(21553) found +[16220] Forked 21554 +(21554) found +[16219] Forked 21555 +(21555) found +[16218] Forked 21556 +(21556) found +[16217] Forked 21557 +(21557) found +[16216] Forked 21558 +(21558) found +[16215] Forked 21559 +(21559) found +[16214] Forked 21560 +(21560) found +[16213] Forked 21561 +(21561) found +[16212] Forked 21562 +(21562) found +[16211] Forked 21563 +(21563) found +[16210] Forked 21564 +(21564) found +[16209] Forked 21565 +(21565) found +[16208] Forked 21566 +(21566) found +[16207] Forked 21567 +(21567) found +[16206] Forked 21568 +(21568) found +[16205] Forked 21569 +(21569) found +[16204] Forked 21570 +(21570) found +[16203] Forked 21571 +(21571) found +[16202] Forked 21572 +(21572) found +[16201] Forked 21573 +(21573) found +[16200] Forked 21574 +(21574) found +[16199] Forked 21575 +(21575) found +[16198] Forked 21576 +(21576) found +[16197] Forked 21577 +(21577) found +[16196] Forked 21578 +(21578) found +[16195] Forked 21579 +(21579) found +[16194] Forked 21580 +(21580) found +[16193] Forked 21581 +(21581) found +[16192] Forked 21582 +(21582) found +[16191] Forked 21583 +(21583) found +[16190] Forked 21584 +[16189] Forked 21585 +(21584) found +(21585) found +[16188] Forked 21586 +[16187] Forked 21587 +(21586) found +(21587) found +[16186] Forked 21588 +[16185] Forked 21589 +(21588) found +(21589) found +[16184] Forked 21590 +[16183] Forked 21591 +(21590) found +(21591) found +[16182] Forked 21592 +[16181] Forked 21593 +(21592) found +(21593) found +[16180] Forked 21594 +[16179] Forked 21595 +(21594) found +(21595) found +[16178] Forked 21596 +[16177] Forked 21597 +(21596) found +(21597) found +[16176] Forked 21598 +[16175] Forked 21599 +(21598) found +(21599) found +[16174] Forked 21600 +[16173] Forked 21601 +(21600) found +(21601) found +[16172] Forked 21602 +[16171] Forked 21603 +(21602) found +(21603) found +[16170] Forked 21604 +[16169] Forked 21605 +(21604) found +(21605) found +[16168] Forked 21606 +[16167] Forked 21607 +(21606) found +(21607) found +[16166] Forked 21608 +[16165] Forked 21609 +(21608) found +(21609) found +[16164] Forked 21610 +[16163] Forked 21611 +(21610) found +(21611) found +[16162] Forked 21612 +[16161] Forked 21613 +(21612) found +(21613) found +[16160] Forked 21614 +[16159] Forked 21615 +(21614) found +(21615) found +[16158] Forked 21616 +[16157] Forked 21617 +(21616) found +(21617) found +[16156] Forked 21618 +[16155] Forked 21619 +(21618) found +(21619) found +[16154] Forked 21620 +[16153] Forked 21621 +(21620) found +(21621) found +[16152] Forked 21622 +[16151] Forked 21623 +(21622) found +(21623) found +[16150] Forked 21624 +[16149] Forked 21625 +(21624) found +(21625) found +[16148] Forked 21626 +[16147] Forked 21627 +(21626) found +(21627) found +[16146] Forked 21628 +(21628) found +[16145] Forked 21630 +(21630) found +[16144] Forked 21631 +(21631) found +[16143] Forked 21632 +(21632) found +[16142] Forked 21633 +(21633) found +[16141] Forked 21634 +(21634) found +[16140] Forked 21635 +(21635) found +[16139] Forked 21636 +(21636) found +[16138] Forked 21637 +(21637) found +[16137] Forked 21638 +(21638) found +[16136] Forked 21639 +(21639) found +[16135] Forked 21640 +(21640) found +[16134] Forked 21641 +(21641) found +[16133] Forked 21642 +(21642) found +[16132] Forked 21643 +(21643) found +[16131] Forked 21644 +(21644) found +[16130] Forked 21645 +(21645) found +[16129] Forked 21646 +(21646) found +[16128] Forked 21647 +(21647) found +[16127] Forked 21648 +(21648) found +[16126] Forked 21649 +(21649) found +[16125] Forked 21650 +(21650) found +[16124] Forked 21651 +(21651) found +[16123] Forked 21652 +(21652) found +[16122] Forked 21653 +(21653) found +[16121] Forked 21654 +(21654) found +[16120] Forked 21655 +(21655) found +[16119] Forked 21656 +(21656) found +[16118] Forked 21657 +(21657) found +[16117] Forked 21658 +(21658) found +[16116] Forked 21659 +(21659) found +[16115] Forked 21660 +(21660) found +[16114] Forked 21661 +(21661) found +[16113] Forked 21662 +(21662) found +[16112] Forked 21663 +(21663) found +[16111] Forked 21664 +(21664) found +[16110] Forked 21665 +(21665) found +[16109] Forked 21666 +(21666) found +[16108] Forked 21667 +(21667) found +[16107] Forked 21668 +[16106] Forked 21669 +(21668) found +(21669) found +[16105] Forked 21670 +[16104] Forked 21671 +(21670) found +(21671) found +[16103] Forked 21672 +[16102] Forked 21673 +(21672) found +(21673) found +[16101] Forked 21674 +[16100] Forked 21675 +(21674) found +(21675) found +[16099] Forked 21676 +[16098] Forked 21677 +(21676) found +(21677) found +[16097] Forked 21678 +[16096] Forked 21679 +(21678) found +(21679) found +[16095] Forked 21680 +[16094] Forked 21681 +(21680) found +(21681) found +[16093] Forked 21682 +[16092] Forked 21683 +(21682) found +(21683) found +[16091] Forked 21684 +[16090] Forked 21685 +(21684) found +(21685) found +[16089] Forked 21686 +[16088] Forked 21687 +(21686) found +(21687) found +[16087] Forked 21688 +[16086] Forked 21689 +(21688) found +(21689) found +[16085] Forked 21690 +[16084] Forked 21691 +(21690) found +(21691) found +[16083] Forked 21692 +[16082] Forked 21693 +(21692) found +(21693) found +[16081] Forked 21694 +[16080] Forked 21695 +(21694) found +(21695) found +[16079] Forked 21696 +(21696) found +[16078] Forked 21697 +(21697) found +[16077] Forked 21698 +(21698) found +[16076] Forked 21699 +(21699) found +[16075] Forked 21700 +(21700) found +[16074] Forked 21701 +(21701) found +[16073] Forked 21702 +(21702) found +[16072] Forked 21703 +(21703) found +[16071] Forked 21704 +(21704) found +[16070] Forked 21705 +(21705) found +[16069] Forked 21706 +(21706) found +[16068] Forked 21707 +(21707) found +[16067] Forked 21708 +(21708) found +[16066] Forked 21709 +(21709) found +[16065] Forked 21710 +(21710) found +[16064] Forked 21711 +(21711) found +[16063] Forked 21712 +(21712) found +[16062] Forked 21713 +(21713) found +[16061] Forked 21714 +(21714) found +[16060] Forked 21715 +(21715) found +[16059] Forked 21716 +(21716) found +[16058] Forked 21717 +(21717) found +[16057] Forked 21718 +(21718) found +[16056] Forked 21719 +(21719) found +[16055] Forked 21720 +(21720) found +[16054] Forked 21721 +(21721) found +[16053] Forked 21722 +(21722) found +[16052] Forked 21723 +(21723) found +[16051] Forked 21724 +(21724) found +[16050] Forked 21725 +(21725) found +[16049] Forked 21726 +(21726) found +[16048] Forked 21727 +(21727) found +[16047] Forked 21728 +(21728) found +[16046] Forked 21729 +(21729) found +[16045] Forked 21730 +(21730) found +[16044] Forked 21731 +(21731) found +[16043] Forked 21732 +(21732) found +[16042] Forked 21733 +(21733) found +[16041] Forked 21734 +(21734) found +[16040] Forked 21735 +(21735) found +[16039] Forked 21736 +(21736) found +[16038] Forked 21737 +(21737) found +[16037] Forked 21738 +(21738) found +[16036] Forked 21739 +(21739) found +[16035] Forked 21740 +(21740) found +[16034] Forked 21741 +(21741) found +[16033] Forked 21742 +(21742) found +[16032] Forked 21743 +(21743) found +[16031] Forked 21744 +(21744) found +[16030] Forked 21745 +(21745) found +[16029] Forked 21746 +[16028] Forked 21747 +(21746) found +(21747) found +[16027] Forked 21748 +[16026] Forked 21749 +(21748) found +(21749) found +[16025] Forked 21750 +[16024] Forked 21751 +(21750) found +(21751) found +[16023] Forked 21752 +(21752) found +[16022] Forked 21753 +[16021] Forked 21754 +(21753) found +(21754) found +[16020] Forked 21755 +(21755) found +[16019] Forked 21756 +(21756) found +[16018] Forked 21757 +[16017] Forked 21758 +(21757) found +(21758) found +[16016] Forked 21759 +[16015] Forked 21760 +(21759) found +(21760) found +[16014] Forked 21761 +[16013] Forked 21762 +(21761) found +(21762) found +[16012] Forked 21763 +[16011] Forked 21764 +(21763) found +(21764) found +[16010] Forked 21765 +[16009] Forked 21766 +(21765) found +(21766) found +[16008] Forked 21767 +[16007] Forked 21768 +(21767) found +(21768) found +[16006] Forked 21769 +[16005] Forked 21770 +(21769) found +(21770) found +[16004] Forked 21771 +[16003] Forked 21772 +(21771) found +(21772) found +[16002] Forked 21773 +[16001] Forked 21774 +(21773) found +(21774) found +[16000] Forked 21775 +[15999] Forked 21776 +(21775) found +(21776) found +[15998] Forked 21777 +[15997] Forked 21778 +(21777) found +(21778) found +[15996] Forked 21779 +[15995] Forked 21780 +(21779) found +(21780) found +[15994] Forked 21781 +[15993] Forked 21782 +(21781) found +(21782) found +[15992] Forked 21783 +[15991] Forked 21785 +(21783) found +(21785) found +[15990] Forked 21786 +(21786) found +[15989] Forked 21787 +(21787) found +[15988] Forked 21788 +(21788) found +[15987] Forked 21789 +(21789) found +[15986] Forked 21790 +(21790) found +[15985] Forked 21791 +(21791) found +[15984] Forked 21792 +(21792) found +[15983] Forked 21793 +(21793) found +[15982] Forked 21794 +(21794) found +[15981] Forked 21795 +(21795) found +[15980] Forked 21796 +(21796) found +[15979] Forked 21797 +(21797) found +[15978] Forked 21798 +(21798) found +[15977] Forked 21799 +(21799) found +[15976] Forked 21800 +(21800) found +[15975] Forked 21801 +(21801) found +[15974] Forked 21802 +(21802) found +[15973] Forked 21803 +(21803) found +[15972] Forked 21804 +(21804) found +[15971] Forked 21805 +(21805) found +[15970] Forked 21806 +(21806) found +[15969] Forked 21807 +(21807) found +[15968] Forked 21808 +(21808) found +[15967] Forked 21809 +(21809) found +[15966] Forked 21810 +(21810) found +[15965] Forked 21811 +(21811) found +[15964] Forked 21812 +(21812) found +[15963] Forked 21813 +(21813) found +[15962] Forked 21814 +(21814) found +[15961] Forked 21815 +(21815) found +[15960] Forked 21816 +(21816) found +[15959] Forked 21817 +(21817) found +[15958] Forked 21818 +(21818) found +[15957] Forked 21819 +(21819) found +[15956] Forked 21820 +(21820) found +[15955] Forked 21821 +(21821) found +[15954] Forked 21822 +(21822) found +[15953] Forked 21823 +(21823) found +[15952] Forked 21824 +(21824) found +[15951] Forked 21825 +(21825) found +[15950] Forked 21826 +(21826) found +[15949] Forked 21827 +(21827) found +[15948] Forked 21828 +(21828) found +[15947] Forked 21829 +(21829) found +[15946] Forked 21830 +(21830) found +[15945] Forked 21831 +(21831) found +[15944] Forked 21832 +(21832) found +[15943] Forked 21833 +(21833) found +[15942] Forked 21834 +(21834) found +[15941] Forked 21835 +(21835) found +[15940] Forked 21836 +(21836) found +[15939] Forked 21837 +(21837) found +[15938] Forked 21838 +(21838) found +[15937] Forked 21839 +(21839) found +[15936] Forked 21840 +(21840) found +[15935] Forked 21841 +(21841) found +[15934] Forked 21842 +(21842) found +[15933] Forked 21843 +(21843) found +[15932] Forked 21844 +(21844) found +[15931] Forked 21845 +(21845) found +[15930] Forked 21846 +(21846) found +[15929] Forked 21847 +(21847) found +[15928] Forked 21848 +(21848) found +[15927] Forked 21849 +(21849) found +[15926] Forked 21850 +(21850) found +[15925] Forked 21851 +(21851) found +[15924] Forked 21852 +(21852) found +[15923] Forked 21853 +(21853) found +[15922] Forked 21854 +(21854) found +[15921] Forked 21855 +(21855) found +[15920] Forked 21856 +(21856) found +[15919] Forked 21857 +(21857) found +[15918] Forked 21858 +(21858) found +[15917] Forked 21859 +(21859) found +[15916] Forked 21860 +(21860) found +[15915] Forked 21861 +(21861) found +[15914] Forked 21862 +(21862) found +[15913] Forked 21863 +(21863) found +[15912] Forked 21864 +(21864) found +[15911] Forked 21865 +(21865) found +[15910] Forked 21866 +(21866) found +[15909] Forked 21867 +(21867) found +[15908] Forked 21868 +(21868) found +[15907] Forked 21869 +(21869) found +[15906] Forked 21870 +(21870) found +[15905] Forked 21871 +(21871) found +[15904] Forked 21872 +(21872) found +[15903] Forked 21873 +(21873) found +[15902] Forked 21874 +(21874) found +[15901] Forked 21875 +(21875) found +[15900] Forked 21876 +(21876) found +[15899] Forked 21877 +(21877) found +[15898] Forked 21878 +(21878) found +[15897] Forked 21879 +(21879) found +[15896] Forked 21880 +(21880) found +[15895] Forked 21881 +(21881) found +[15894] Forked 21882 +(21882) found +[15893] Forked 21883 +(21883) found +[15892] Forked 21884 +(21884) found +[15891] Forked 21885 +(21885) found +[15890] Forked 21886 +(21886) found +[15889] Forked 21887 +(21887) found +[15888] Forked 21888 +(21888) found +[15887] Forked 21889 +(21889) found +[15886] Forked 21890 +(21890) found +[15885] Forked 21891 +(21891) found +[15884] Forked 21892 +(21892) found +[15883] Forked 21893 +(21893) found +[15882] Forked 21894 +(21894) found +[15881] Forked 21895 +(21895) found +[15880] Forked 21896 +[15879] Forked 21897 +(21896) found +(21897) found +[15878] Forked 21898 +[15877] Forked 21899 +(21898) found +(21899) found +[15876] Forked 21900 +[15875] Forked 21901 +(21900) found +(21901) found +[15874] Forked 21902 +[15873] Forked 21903 +(21902) found +(21903) found +[15872] Forked 21904 +[15871] Forked 21905 +(21904) found +(21905) found +[15870] Forked 21906 +[15869] Forked 21907 +(21906) found +(21907) found +[15868] Forked 21908 +[15867] Forked 21909 +(21908) found +(21909) found +[15866] Forked 21910 +[15865] Forked 21911 +(21910) found +(21911) found +[15864] Forked 21912 +[15863] Forked 21913 +(21912) found +(21913) found +[15862] Forked 21914 +[15861] Forked 21915 +(21914) found +(21915) found +[15860] Forked 21916 +[15859] Forked 21917 +(21916) found +(21917) found +[15858] Forked 21918 +[15857] Forked 21919 +(21918) found +(21919) found +[15856] Forked 21920 +[15855] Forked 21921 +(21920) found +(21921) found +[15854] Forked 21922 +[15853] Forked 21923 +(21922) found +(21923) found +[15852] Forked 21924 +[15851] Forked 21925 +(21924) found +(21925) found +[15850] Forked 21926 +[15849] Forked 21927 +(21926) found +(21927) found +[15848] Forked 21928 +[15847] Forked 21929 +(21928) found +(21929) found +[15846] Forked 21930 +[15845] Forked 21931 +(21930) found +(21931) found +[15844] Forked 21932 +[15843] Forked 21933 +(21932) found +(21933) found +[15842] Forked 21934 +[15841] Forked 21935 +(21934) found +(21935) found +[15840] Forked 21936 +[15839] Forked 21937 +(21936) found +(21937) found +[15838] Forked 21938 +[15837] Forked 21939 +(21938) found +(21939) found +[15836] Forked 21940 +[15835] Forked 21941 +(21940) found +(21941) found +[15834] Forked 21942 +[15833] Forked 21943 +(21942) found +(21943) found +[15832] Forked 21944 +[15831] Forked 21945 +(21944) found +(21945) found +[15830] Forked 21946 +[15829] Forked 21947 +(21946) found +(21947) found +[15828] Forked 21948 +[15827] Forked 21949 +(21948) found +(21949) found +[15826] Forked 21950 +[15825] Forked 21951 +(21950) found +(21951) found +[15824] Forked 21952 +[15823] Forked 21953 +(21952) found +(21953) found +[15822] Forked 21954 +[15821] Forked 21955 +(21954) found +(21955) found +[15820] Forked 21956 +[15819] Forked 21957 +(21956) found +(21957) found +[15818] Forked 21958 +[15817] Forked 21959 +(21958) found +(21959) found +[15816] Forked 21960 +[15815] Forked 21961 +(21960) found +(21961) found +[15814] Forked 21962 +[15813] Forked 21963 +(21962) found +(21963) found +[15812] Forked 21964 +[15811] Forked 21965 +(21964) found +(21965) found +[15810] Forked 21966 +[15809] Forked 21967 +(21966) found +(21967) found +[15808] Forked 21968 +[15807] Forked 21969 +(21968) found +(21969) found +[15806] Forked 21970 +[15805] Forked 21971 +(21970) found +(21971) found +[15804] Forked 21972 +[15803] Forked 21973 +(21972) found +(21973) found +[15802] Forked 21974 +[15801] Forked 21975 +(21974) found +(21975) found +[15800] Forked 21976 +[15799] Forked 21977 +(21976) found +(21977) found +[15798] Forked 21978 +[15797] Forked 21979 +(21978) found +(21979) found +[15796] Forked 21980 +[15795] Forked 21981 +(21980) found +(21981) found +[15794] Forked 21982 +[15793] Forked 21983 +(21982) found +(21983) found +[15792] Forked 21984 +[15791] Forked 21985 +(21984) found +(21985) found +[15790] Forked 21986 +[15789] Forked 21987 +(21986) found +(21987) found +[15788] Forked 21988 +[15787] Forked 21989 +(21988) found +(21989) found +[15786] Forked 21990 +[15785] Forked 21991 +(21990) found +(21991) found +[15784] Forked 21992 +[15783] Forked 21993 +(21992) found +(21993) found +[15782] Forked 21994 +[15781] Forked 21995 +(21994) found +(21995) found +[15780] Forked 21996 +[15779] Forked 21997 +(21996) found +(21997) found +[15778] Forked 21998 +[15777] Forked 21999 +(21998) found +(21999) found +[15776] Forked 22000 +[15775] Forked 22001 +(22000) found +(22001) found +[15774] Forked 22002 +[15773] Forked 22004 +(22002) found +(22004) found +[15772] Forked 22005 +(22005) found +[15771] Forked 22006 +(22006) found +[15770] Forked 22007 +(22007) found +[15769] Forked 22008 +(22008) found +[15768] Forked 22009 +(22009) found +[15767] Forked 22010 +(22010) found +[15766] Forked 22011 +(22011) found +[15765] Forked 22012 +(22012) found +[15764] Forked 22013 +(22013) found +[15763] Forked 22014 +(22014) found +[15762] Forked 22015 +(22015) found +[15761] Forked 22016 +(22016) found +[15760] Forked 22017 +(22017) found +[15759] Forked 22018 +(22018) found +[15758] Forked 22019 +(22019) found +[15757] Forked 22020 +(22020) found +[15756] Forked 22021 +(22021) found +[15755] Forked 22022 +(22022) found +[15754] Forked 22023 +(22023) found +[15753] Forked 22024 +(22024) found +[15752] Forked 22025 +(22025) found +[15751] Forked 22026 +(22026) found +[15750] Forked 22027 +(22027) found +[15749] Forked 22028 +(22028) found +[15748] Forked 22029 +(22029) found +[15747] Forked 22030 +(22030) found +[15746] Forked 22031 +(22031) found +[15745] Forked 22032 +(22032) found +[15744] Forked 22033 +(22033) found +[15743] Forked 22034 +(22034) found +[15742] Forked 22035 +(22035) found +[15741] Forked 22036 +(22036) found +[15740] Forked 22037 +(22037) found +[15739] Forked 22038 +(22038) found +[15738] Forked 22039 +(22039) found +[15737] Forked 22040 +(22040) found +[15736] Forked 22041 +(22041) found +[15735] Forked 22042 +(22042) found +[15734] Forked 22043 +(22043) found +[15733] Forked 22044 +(22044) found +[15732] Forked 22045 +(22045) found +[15731] Forked 22046 +(22046) found +[15730] Forked 22047 +(22047) found +[15729] Forked 22048 +(22048) found +[15728] Forked 22049 +(22049) found +[15727] Forked 22050 +(22050) found +[15726] Forked 22051 +(22051) found +[15725] Forked 22052 +(22052) found +[15724] Forked 22053 +(22053) found +[15723] Forked 22054 +(22054) found +[15722] Forked 22055 +(22055) found +[15721] Forked 22056 +(22056) found +[15720] Forked 22057 +(22057) found +[15719] Forked 22058 +(22058) found +[15718] Forked 22059 +(22059) found +[15717] Forked 22060 +(22060) found +[15716] Forked 22061 +(22061) found +[15715] Forked 22062 +(22062) found +[15714] Forked 22063 +(22063) found +[15713] Forked 22064 +(22064) found +[15712] Forked 22065 +(22065) found +[15711] Forked 22066 +[15710] Forked 22067 +(22066) found +(22067) found +[15709] Forked 22068 +[15708] Forked 22069 +(22068) found +(22069) found +[15707] Forked 22070 +[15706] Forked 22071 +(22070) found +(22071) found +[15705] Forked 22072 +[15704] Forked 22073 +(22072) found +(22073) found +[15703] Forked 22074 +[15702] Forked 22075 +(22074) found +(22075) found +[15701] Forked 22076 +[15700] Forked 22077 +(22076) found +(22077) found +[15699] Forked 22078 +[15698] Forked 22079 +(22078) found +(22079) found +[15697] Forked 22080 +[15696] Forked 22081 +(22080) found +(22081) found +[15695] Forked 22082 +[15694] Forked 22083 +(22082) found +(22083) found +[15693] Forked 22084 +(22084) found +[15692] Forked 22085 +[15691] Forked 22086 +(22085) found +(22086) found +[15690] Forked 22087 +[15689] Forked 22088 +(22087) found +(22088) found +[15688] Forked 22089 +[15687] Forked 22090 +(22089) found +(22090) found +[15686] Forked 22091 +[15685] Forked 22092 +(22091) found +(22092) found +[15684] Forked 22093 +[15683] Forked 22094 +(22093) found +(22094) found +[15682] Forked 22095 +[15681] Forked 22096 +(22095) found +(22096) found +[15680] Forked 22097 +[15679] Forked 22098 +(22097) found +(22098) found +[15678] Forked 22099 +[15677] Forked 22100 +(22099) found +(22100) found +[15676] Forked 22101 +[15675] Forked 22102 +(22101) found +(22102) found +[15674] Forked 22103 +[15673] Forked 22104 +(22103) found +(22104) found +[15672] Forked 22105 +[15671] Forked 22106 +(22105) found +(22106) found +[15670] Forked 22107 +[15669] Forked 22108 +(22107) found +(22108) found +[15668] Forked 22109 +(22109) found +[15667] Forked 22110 +(22110) found +[15666] Forked 22111 +(22111) found +[15665] Forked 22112 +(22112) found +[15664] Forked 22113 +(22113) found +[15663] Forked 22114 +(22114) found +[15662] Forked 22115 +(22115) found +[15661] Forked 22116 +(22116) found +[15660] Forked 22117 +(22117) found +[15659] Forked 22118 +(22118) found +[15658] Forked 22119 +(22119) found +[15657] Forked 22120 +(22120) found +[15656] Forked 22121 +(22121) found +[15655] Forked 22122 +(22122) found +[15654] Forked 22123 +(22123) found +[15653] Forked 22124 +(22124) found +[15652] Forked 22125 +(22125) found +[15651] Forked 22126 +(22126) found +[15650] Forked 22127 +(22127) found +[15649] Forked 22128 +(22128) found +[15648] Forked 22129 +(22129) found +[15647] Forked 22130 +(22130) found +[15646] Forked 22131 +(22131) found +[15645] Forked 22132 +(22132) found +[15644] Forked 22133 +(22133) found +[15643] Forked 22134 +(22134) found +[15642] Forked 22135 +(22135) found +[15641] Forked 22136 +(22136) found +[15640] Forked 22137 +(22137) found +[15639] Forked 22138 +(22138) found +[15638] Forked 22139 +(22139) found +[15637] Forked 22140 +(22140) found +[15636] Forked 22141 +(22141) found +[15635] Forked 22142 +(22142) found +[15634] Forked 22143 +(22143) found +[15633] Forked 22144 +(22144) found +[15632] Forked 22145 +(22145) found +[15631] Forked 22146 +(22146) found +[15630] Forked 22147 +(22147) found +[15629] Forked 22148 +[15628] Forked 22149 +(22148) found +(22149) found +[15627] Forked 22150 +[15626] Forked 22151 +(22150) found +(22151) found +[15625] Forked 22152 +[15624] Forked 22153 +(22152) found +(22153) found +[15623] Forked 22154 +[15622] Forked 22155 +(22154) found +(22155) found +[15621] Forked 22156 +[15620] Forked 22157 +(22156) found +(22157) found +[15619] Forked 22158 +[15618] Forked 22159 +(22158) found +(22159) found +[15617] Forked 22160 +[15616] Forked 22161 +(22160) found +(22161) found +[15615] Forked 22162 +[15614] Forked 22163 +(22162) found +(22163) found +[15613] Forked 22164 +[15612] Forked 22165 +(22164) found +(22165) found +[15611] Forked 22166 +[15610] Forked 22167 +(22167) found +(22166) found +[15609] Forked 22168 +(22168) found +[15608] Forked 22169 +(22169) found +[15607] Forked 22170 +(22170) found +[15606] Forked 22171 +(22171) found +[15605] Forked 22172 +(22172) found +[15604] Forked 22173 +(22173) found +[15603] Forked 22174 +(22174) found +[15602] Forked 22175 +(22175) found +[15601] Forked 22176 +(22176) found +[15600] Forked 22177 +(22177) found +[15599] Forked 22178 +(22178) found +[15598] Forked 22179 +(22179) found +[15597] Forked 22180 +(22180) found +[15596] Forked 22181 +(22181) found +[15595] Forked 22182 +(22182) found +[15594] Forked 22183 +[15593] Forked 22184 +(22183) found +(22184) found +[15592] Forked 22185 +[15591] Forked 22186 +(22185) found +(22186) found +[15590] Forked 22187 +[15589] Forked 22188 +(22187) found +(22188) found +[15588] Forked 22189 +[15587] Forked 22190 +(22189) found +(22190) found +[15586] Forked 22191 +[15585] Forked 22192 +(22191) found +(22192) found +[15584] Forked 22193 +[15583] Forked 22194 +(22193) found +(22194) found +[15582] Forked 22195 +[15581] Forked 22196 +(22195) found +(22196) found +[15580] Forked 22197 +[15579] Forked 22198 +(22197) found +(22198) found +[15578] Forked 22199 +[15577] Forked 22200 +(22199) found +(22200) found +[15576] Forked 22201 +[15575] Forked 22202 +(22201) found +(22202) found +[15574] Forked 22203 +[15573] Forked 22204 +(22203) found +(22204) found +[15572] Forked 22205 +[15571] Forked 22206 +(22205) found +(22206) found +[15570] Forked 22207 +[15569] Forked 22209 +(22207) found +(22209) found +[15568] Forked 22210 +(22210) found +[15567] Forked 22211 +(22211) found +[15566] Forked 22212 +(22212) found +[15565] Forked 22213 +(22213) found +[15564] Forked 22214 +(22214) found +[15563] Forked 22215 +(22215) found +[15562] Forked 22216 +(22216) found +[15561] Forked 22217 +(22217) found +[15560] Forked 22218 +(22218) found +[15559] Forked 22219 +(22219) found +[15558] Forked 22220 +(22220) found +[15557] Forked 22221 +(22221) found +[15556] Forked 22222 +(22222) found +[15555] Forked 22223 +(22223) found +[15554] Forked 22224 +(22224) found +[15553] Forked 22225 +(22225) found +[15552] Forked 22226 +(22226) found +[15551] Forked 22227 +(22227) found +[15550] Forked 22228 +(22228) found +[15549] Forked 22229 +(22229) found +[15548] Forked 22230 +(22230) found +[15547] Forked 22231 +(22231) found +[15546] Forked 22232 +(22232) found +[15545] Forked 22233 +(22233) found +[15544] Forked 22234 +(22234) found +[15543] Forked 22235 +(22235) found +[15542] Forked 22236 +(22236) found +[15541] Forked 22237 +(22237) found +[15540] Forked 22238 +(22238) found +[15539] Forked 22239 +(22239) found +[15538] Forked 22240 +(22240) found +[15537] Forked 22241 +(22241) found +[15536] Forked 22242 +(22242) found +[15535] Forked 22243 +(22243) found +[15534] Forked 22244 +(22244) found +[15533] Forked 22245 +(22245) found +[15532] Forked 22246 +(22246) found +[15531] Forked 22247 +(22247) found +[15530] Forked 22248 +(22248) found +[15529] Forked 22249 +(22249) found +[15528] Forked 22250 +(22250) found +[15527] Forked 22251 +(22251) found +[15526] Forked 22252 +(22252) found +[15525] Forked 22253 +(22253) found +[15524] Forked 22254 +(22254) found +[15523] Forked 22255 +(22255) found +[15522] Forked 22256 +(22256) found +[15521] Forked 22257 +(22257) found +[15520] Forked 22258 +(22258) found +[15519] Forked 22259 +(22259) found +[15518] Forked 22260 +(22260) found +[15517] Forked 22261 +[15516] Forked 22262 +(22261) found +(22262) found +[15515] Forked 22263 +[15514] Forked 22264 +(22263) found +(22264) found +[15513] Forked 22265 +(22265) found +[15512] Forked 22266 +(22266) found +[15511] Forked 22267 +(22267) found +[15510] Forked 22268 +(22268) found +[15509] Forked 22269 +(22269) found +[15508] Forked 22270 +(22270) found +[15507] Forked 22271 +(22271) found +[15506] Forked 22272 +(22272) found +[15505] Forked 22273 +(22273) found +[15504] Forked 22274 +(22274) found +[15503] Forked 22275 +(22275) found +[15502] Forked 22276 +(22276) found +[15501] Forked 22277 +(22277) found +[15500] Forked 22278 +(22278) found +[15499] Forked 22279 +(22279) found +[15498] Forked 22280 +(22280) found +[15497] Forked 22281 +(22281) found +[15496] Forked 22282 +(22282) found +[15495] Forked 22283 +(22283) found +[15494] Forked 22284 +(22284) found +[15493] Forked 22285 +(22285) found +[15492] Forked 22286 +(22286) found +[15491] Forked 22287 +(22287) found +[15490] Forked 22288 +(22288) found +[15489] Forked 22289 +(22289) found +[15488] Forked 22290 +(22290) found +[15487] Forked 22291 +(22291) found +[15486] Forked 22292 +(22292) found +[15485] Forked 22293 +(22293) found +[15484] Forked 22294 +(22294) found +[15483] Forked 22295 +(22295) found +[15482] Forked 22296 +(22296) found +[15481] Forked 22297 +(22297) found +[15480] Forked 22298 +(22298) found +[15479] Forked 22299 +(22299) found +[15478] Forked 22300 +(22300) found +[15477] Forked 22301 +(22301) found +[15476] Forked 22302 +(22302) found +[15475] Forked 22303 +(22303) found +[15474] Forked 22304 +[15473] Forked 22305 +(22304) found +(22305) found +[15472] Forked 22306 +[15471] Forked 22307 +(22306) found +(22307) found +[15470] Forked 22308 +[15469] Forked 22309 +(22308) found +(22309) found +[15468] Forked 22310 +[15467] Forked 22311 +(22310) found +(22311) found +[15466] Forked 22312 +[15465] Forked 22313 +(22312) found +(22313) found +[15464] Forked 22314 +[15463] Forked 22315 +(22314) found +(22315) found +[15462] Forked 22316 +[15461] Forked 22317 +(22316) found +(22317) found +[15460] Forked 22318 +[15459] Forked 22319 +(22318) found +(22319) found +[15458] Forked 22320 +[15457] Forked 22321 +(22320) found +(22321) found +[15456] Forked 22322 +[15455] Forked 22323 +(22322) found +(22323) found +[15454] Forked 22324 +[15453] Forked 22325 +(22324) found +(22325) found +[15452] Forked 22326 +[15451] Forked 22327 +(22326) found +(22327) found +[15450] Forked 22328 +[15449] Forked 22329 +(22328) found +(22329) found +[15448] Forked 22330 +[15447] Forked 22331 +(22330) found +(22331) found +[15446] Forked 22332 +[15445] Forked 22333 +(22332) found +(22333) found +[15444] Forked 22334 +[15443] Forked 22335 +(22334) found +(22335) found +[15442] Forked 22336 +[15441] Forked 22337 +(22336) found +(22337) found +[15440] Forked 22338 +[15439] Forked 22339 +(22338) found +(22339) found +[15438] Forked 22340 +[15437] Forked 22341 +(22340) found +(22341) found +[15436] Forked 22342 +[15435] Forked 22343 +(22342) found +(22343) found +[15434] Forked 22344 +[15433] Forked 22345 +(22344) found +(22345) found +[15432] Forked 22346 +[15431] Forked 22347 +(22346) found +(22347) found +[15430] Forked 22348 +(22348) found +[15429] Forked 22349 +(22349) found +[15428] Forked 22350 +(22350) found +[15427] Forked 22351 +(22351) found +[15426] Forked 22352 +(22352) found +[15425] Forked 22353 +(22353) found +[15424] Forked 22354 +(22354) found +[15423] Forked 22355 +(22355) found +[15422] Forked 22356 +(22356) found +[15421] Forked 22357 +(22357) found +[15420] Forked 22358 +(22358) found +[15419] Forked 22359 +(22359) found +[15418] Forked 22360 +(22360) found +[15417] Forked 22361 +(22361) found +[15416] Forked 22362 +(22362) found +[15415] Forked 22363 +(22363) found +[15414] Forked 22364 +(22364) found +[15413] Forked 22365 +(22365) found +[15412] Forked 22366 +(22366) found +[15411] Forked 22367 +(22367) found +[15410] Forked 22368 +(22368) found +[15409] Forked 22369 +(22369) found +[15408] Forked 22370 +(22370) found +[15407] Forked 22371 +(22371) found +[15406] Forked 22372 +(22372) found +[15405] Forked 22373 +(22373) found +[15404] Forked 22374 +(22374) found +[15403] Forked 22375 +(22375) found +[15402] Forked 22376 +(22376) found +[15401] Forked 22377 +(22377) found +[15400] Forked 22378 +(22378) found +[15399] Forked 22379 +(22379) found +[15398] Forked 22380 +(22380) found +[15397] Forked 22381 +(22381) found +[15396] Forked 22382 +(22382) found +[15395] Forked 22383 +(22383) found +[15394] Forked 22384 +(22384) found +[15393] Forked 22385 +(22385) found +[15392] Forked 22386 +(22386) found +[15391] Forked 22387 +[15390] Forked 22388 +(22387) found +(22388) found +[15389] Forked 22389 +[15388] Forked 22390 +(22389) found +(22390) found +[15387] Forked 22391 +[15386] Forked 22392 +(22391) found +(22392) found +[15385] Forked 22393 +[15384] Forked 22394 +(22393) found +(22394) found +[15383] Forked 22395 +[15382] Forked 22396 +(22395) found +(22396) found +[15381] Forked 22397 +[15380] Forked 22398 +(22397) found +(22398) found +[15379] Forked 22399 +[15378] Forked 22400 +(22399) found +(22400) found +[15377] Forked 22401 +[15376] Forked 22402 +(22401) found +(22402) found +[15375] Forked 22403 +[15374] Forked 22404 +(22403) found +(22404) found +[15373] Forked 22405 +[15372] Forked 22406 +(22405) found +(22406) found +[15371] Forked 22407 +[15370] Forked 22408 +(22407) found +(22408) found +[15369] Forked 22409 +[15368] Forked 22410 +(22409) found +(22410) found +[15367] Forked 22411 +[15366] Forked 22412 +(22411) found +(22412) found +[15365] Forked 22413 +[15364] Forked 22414 +(22413) found +(22414) found +[15363] Forked 22415 +[15362] Forked 22416 +(22415) found +(22416) found +[15361] Forked 22417 +[15360] Forked 22418 +(22417) found +(22418) found +[15359] Forked 22419 +[15358] Forked 22420 +(22420) found +(22419) found +[15357] Forked 22421 +(22421) found +[15356] Forked 22422 +(22422) found +[15355] Forked 22423 +(22423) found +[15354] Forked 22424 +(22424) found +[15353] Forked 22425 +(22425) found +[15352] Forked 22426 +(22426) found +[15351] Forked 22427 +(22427) found +[15350] Forked 22428 +(22428) found +[15349] Forked 22429 +(22429) found +[15348] Forked 22430 +(22430) found +[15347] Forked 22431 +(22431) found +[15346] Forked 22432 +(22432) found +[15345] Forked 22433 +(22433) found +[15344] Forked 22434 +(22434) found +[15343] Forked 22435 +(22435) found +[15342] Forked 22436 +(22436) found +[15341] Forked 22437 +(22437) found +[15340] Forked 22438 +(22438) found +[15339] Forked 22439 +(22439) found +[15338] Forked 22440 +(22440) found +[15337] Forked 22441 +(22441) found +[15336] Forked 22442 +(22442) found +[15335] Forked 22443 +(22443) found +[15334] Forked 22444 +(22444) found +[15333] Forked 22445 +(22445) found +[15332] Forked 22446 +(22446) found +[15331] Forked 22447 +(22447) found +[15330] Forked 22448 +(22448) found +[15329] Forked 22449 +(22449) found +[15328] Forked 22450 +(22450) found +[15327] Forked 22451 +(22451) found +[15326] Forked 22452 +(22452) found +[15325] Forked 22453 +(22453) found +[15324] Forked 22454 +(22454) found +[15323] Forked 22455 +(22455) found +[15322] Forked 22456 +(22456) found +[15321] Forked 22457 +(22457) found +[15320] Forked 22458 +(22458) found +[15319] Forked 22459 +(22459) found +[15318] Forked 22460 +(22460) found +[15317] Forked 22461 +(22461) found +[15316] Forked 22462 +(22462) found +[15315] Forked 22463 +(22463) found +[15314] Forked 22464 +(22464) found +[15313] Forked 22465 +(22465) found +[15312] Forked 22466 +(22466) found +[15311] Forked 22467 +(22467) found +[15310] Forked 22468 +(22468) found +[15309] Forked 22469 +(22469) found +[15308] Forked 22470 +[15307] Forked 22471 +(22470) found +(22471) found +[15306] Forked 22472 +[15305] Forked 22473 +(22472) found +(22473) found +[15304] Forked 22474 +[15303] Forked 22475 +(22474) found +(22475) found +[15302] Forked 22476 +[15301] Forked 22477 +(22476) found +(22477) found +[15300] Forked 22478 +[15299] Forked 22479 +(22478) found +(22479) found +[15298] Forked 22480 +[15297] Forked 22481 +(22480) found +(22481) found +[15296] Forked 22482 +[15295] Forked 22483 +(22482) found +(22483) found +[15294] Forked 22484 +[15293] Forked 22485 +(22484) found +(22485) found +[15292] Forked 22486 +[15291] Forked 22487 +(22486) found +(22487) found +[15290] Forked 22488 +[15289] Forked 22489 +(22488) found +(22489) found +[15288] Forked 22490 +[15287] Forked 22491 +(22490) found +(22491) found +[15286] Forked 22492 +[15285] Forked 22493 +(22492) found +(22493) found +[15284] Forked 22494 +[15283] Forked 22495 +(22494) found +(22495) found +[15282] Forked 22496 +[15281] Forked 22497 +(22496) found +(22497) found +[15280] Forked 22498 +[15279] Forked 22499 +(22498) found +(22499) found +[15278] Forked 22500 +[15277] Forked 22501 +(22500) found +(22501) found +[15276] Forked 22502 +[15275] Forked 22503 +(22502) found +(22503) found +[15274] Forked 22504 +[15273] Forked 22505 +(22504) found +(22505) found +[15272] Forked 22506 +(22506) found +[15271] Forked 22507 +[15270] Forked 22508 +(22507) found +(22508) found +[15269] Forked 22509 +[15268] Forked 22510 +(22509) found +(22510) found +[15267] Forked 22511 +(22511) found +[15266] Forked 22512 +(22512) found +[15265] Forked 22513 +(22513) found +[15264] Forked 22514 +(22514) found +[15263] Forked 22515 +(22515) found +[15262] Forked 22516 +(22516) found +[15261] Forked 22517 +(22517) found +[15260] Forked 22518 +(22518) found +[15259] Forked 22519 +(22519) found +[15258] Forked 22520 +(22520) found +[15257] Forked 22521 +(22521) found +[15256] Forked 22522 +(22522) found +[15255] Forked 22523 +(22523) found +[15254] Forked 22524 +(22524) found +[15253] Forked 22525 +(22525) found +[15252] Forked 22526 +(22526) found +[15251] Forked 22527 +(22527) found +[15250] Forked 22528 +(22528) found +[15249] Forked 22529 +(22529) found +[15248] Forked 22530 +(22530) found +[15247] Forked 22531 +(22531) found +[15246] Forked 22532 +(22532) found +[15245] Forked 22533 +(22533) found +[15244] Forked 22534 +(22534) found +[15243] Forked 22535 +(22535) found +[15242] Forked 22536 +(22536) found +[15241] Forked 22537 +(22537) found +[15240] Forked 22538 +(22538) found +[15239] Forked 22539 +(22539) found +[15238] Forked 22540 +(22540) found +[15237] Forked 22541 +(22541) found +[15236] Forked 22542 +(22542) found +[15235] Forked 22543 +(22543) found +[15234] Forked 22544 +(22544) found +[15233] Forked 22545 +(22545) found +[15232] Forked 22546 +(22546) found +[15231] Forked 22547 +(22547) found +[15230] Forked 22548 +(22548) found +[15229] Forked 22549 +(22549) found +[15228] Forked 22550 +[15227] Forked 22551 +(22550) found +(22551) found +[15226] Forked 22552 +[15225] Forked 22553 +(22552) found +(22553) found +[15224] Forked 22554 +[15223] Forked 22555 +(22554) found +(22555) found +[15222] Forked 22556 +[15221] Forked 22557 +(22556) found +(22557) found +[15220] Forked 22558 +[15219] Forked 22559 +(22558) found +(22559) found +[15218] Forked 22560 +[15217] Forked 22561 +(22560) found +(22561) found +[15216] Forked 22562 +[15215] Forked 22563 +(22563) found +(22562) found +[15214] Forked 22564 +(22564) found +[15213] Forked 22565 +(22565) found +[15212] Forked 22566 +(22566) found +[15211] Forked 22567 +(22567) found +[15210] Forked 22568 +(22568) found +[15209] Forked 22569 +(22569) found +[15208] Forked 22570 +(22570) found +[15207] Forked 22571 +(22571) found +[15206] Forked 22572 +(22572) found +[15205] Forked 22573 +(22573) found +[15204] Forked 22574 +(22574) found +[15203] Forked 22575 +(22575) found +[15202] Forked 22576 +(22576) found +[15201] Forked 22577 +(22577) found +[15200] Forked 22578 +(22578) found +[15199] Forked 22579 +(22579) found +[15198] Forked 22580 +(22580) found +[15197] Forked 22581 +(22581) found +[15196] Forked 22582 +(22582) found +[15195] Forked 22583 +(22583) found +[15194] Forked 22584 +(22584) found +[15193] Forked 22585 +[15192] Forked 22586 +(22585) found +(22586) found +[15191] Forked 22587 +[15190] Forked 22588 +(22587) found +(22588) found +[15189] Forked 22589 +[15188] Forked 22590 +(22589) found +(22590) found +[15187] Forked 22591 +[15186] Forked 22592 +(22591) found +(22592) found +[15185] Forked 22593 +[15184] Forked 22594 +(22593) found +(22594) found +[15183] Forked 22595 +[15182] Forked 22596 +(22595) found +(22596) found +[15181] Forked 22597 +[15180] Forked 22598 +(22597) found +(22598) found +[15179] Forked 22599 +[15178] Forked 22600 +(22599) found +(22600) found +[15177] Forked 22601 +[15176] Forked 22602 +(22601) found +(22602) found +[15175] Forked 22603 +[15174] Forked 22604 +(22603) found +(22604) found +[15173] Forked 22605 +[15172] Forked 22606 +(22605) found +(22606) found +[15171] Forked 22607 +[15170] Forked 22608 +(22607) found +(22608) found +[15169] Forked 22609 +[15168] Forked 22610 +(22609) found +(22610) found +[15167] Forked 22611 +[15166] Forked 22612 +(22611) found +(22612) found +[15165] Forked 22613 +[15164] Forked 22614 +(22613) found +(22614) found +[15163] Forked 22615 +[15162] Forked 22616 +(22615) found +(22616) found +[15161] Forked 22617 +[15160] Forked 22618 +(22617) found +(22618) found +[15159] Forked 22619 +[15158] Forked 22620 +(22619) found +(22620) found +[15157] Forked 22621 +[15156] Forked 22622 +(22621) found +(22622) found +[15155] Forked 22623 +[15154] Forked 22624 +(22623) found +(22624) found +[15153] Forked 22625 +[15152] Forked 22627 +(22625) found +(22627) found +[15151] Forked 22628 +(22628) found +[15150] Forked 22629 +(22629) found +[15149] Forked 22630 +(22630) found +[15148] Forked 22631 +(22631) found +[15147] Forked 22632 +(22632) found +[15146] Forked 22633 +(22633) found +[15145] Forked 22634 +(22634) found +[15144] Forked 22635 +(22635) found +[15143] Forked 22636 +(22636) found +[15142] Forked 22637 +(22637) found +[15141] Forked 22638 +(22638) found +[15140] Forked 22639 +(22639) found +[15139] Forked 22640 +(22640) found +[15138] Forked 22641 +(22641) found +[15137] Forked 22642 +(22642) found +[15136] Forked 22644 +(22644) found +[15135] Forked 22645 +(22645) found +[15134] Forked 22646 +(22646) found +[15133] Forked 22647 +(22647) found +[15132] Forked 22648 +(22648) found +[15131] Forked 22649 +(22649) found +[15130] Forked 22650 +(22650) found +[15129] Forked 22651 +(22651) found +[15128] Forked 22652 +(22652) found +[15127] Forked 22653 +(22653) found +[15126] Forked 22654 +(22654) found +[15125] Forked 22655 +(22655) found +[15124] Forked 22656 +(22656) found +[15123] Forked 22657 +(22657) found +[15122] Forked 22658 +(22658) found +[15121] Forked 22659 +(22659) found +[15120] Forked 22660 +(22660) found +[15119] Forked 22661 +(22661) found +[15118] Forked 22662 +(22662) found +[15117] Forked 22663 +(22663) found +[15116] Forked 22664 +(22664) found +[15115] Forked 22665 +(22665) found +[15114] Forked 22666 +(22666) found +[15113] Forked 22667 +(22667) found +[15112] Forked 22668 +(22668) found +[15111] Forked 22669 +(22669) found +[15110] Forked 22670 +(22670) found +[15109] Forked 22671 +(22671) found +[15108] Forked 22672 +(22672) found +[15107] Forked 22673 +(22673) found +[15106] Forked 22674 +(22674) found +[15105] Forked 22675 +(22675) found +[15104] Forked 22676 +(22676) found +[15103] Forked 22677 +(22677) found +[15102] Forked 22678 +(22678) found +[15101] Forked 22679 +(22679) found +[15100] Forked 22680 +(22680) found +[15099] Forked 22681 +(22681) found +[15098] Forked 22682 +(22682) found +[15097] Forked 22683 +(22683) found +[15096] Forked 22684 +(22684) found +[15095] Forked 22685 +(22685) found +[15094] Forked 22686 +(22686) found +[15093] Forked 22687 +(22687) found +[15092] Forked 22688 +(22688) found +[15091] Forked 22689 +(22689) found +[15090] Forked 22690 +(22690) found +[15089] Forked 22691 +(22691) found +[15088] Forked 22692 +(22692) found +[15087] Forked 22693 +(22693) found +[15086] Forked 22694 +(22694) found +[15085] Forked 22695 +(22695) found +[15084] Forked 22696 +(22696) found +[15083] Forked 22697 +(22697) found +[15082] Forked 22698 +(22698) found +[15081] Forked 22699 +(22699) found +[15080] Forked 22700 +(22700) found +[15079] Forked 22701 +(22701) found +[15078] Forked 22702 +(22702) found +[15077] Forked 22703 +(22703) found +[15076] Forked 22704 +[15075] Forked 22705 +(22704) found +(22705) found +[15074] Forked 22706 +[15073] Forked 22707 +(22706) found +(22707) found +[15072] Forked 22708 +[15071] Forked 22709 +(22708) found +(22709) found +[15070] Forked 22710 +[15069] Forked 22711 +(22710) found +(22711) found +[15068] Forked 22712 +[15067] Forked 22713 +(22712) found +(22713) found +[15066] Forked 22714 +[15065] Forked 22715 +(22714) found +(22715) found +[15064] Forked 22716 +[15063] Forked 22717 +(22716) found +(22717) found +[15062] Forked 22718 +[15061] Forked 22719 +(22718) found +(22719) found +[15060] Forked 22720 +[15059] Forked 22721 +(22720) found +(22721) found +[15058] Forked 22722 +[15057] Forked 22723 +(22722) found +(22723) found +[15056] Forked 22724 +[15055] Forked 22725 +(22724) found +(22725) found +[15054] Forked 22726 +[15053] Forked 22727 +(22726) found +(22727) found +[15052] Forked 22728 +[15051] Forked 22729 +(22728) found +(22729) found +[15050] Forked 22730 +[15049] Forked 22731 +(22730) found +(22731) found +[15048] Forked 22732 +[15047] Forked 22733 +(22732) found +(22733) found +[15046] Forked 22734 +[15045] Forked 22735 +(22734) found +(22735) found +[15044] Forked 22736 +[15043] Forked 22737 +(22736) found +(22737) found +[15042] Forked 22738 +[15041] Forked 22739 +(22738) found +(22739) found +[15040] Forked 22740 +[15039] Forked 22741 +(22740) found +(22741) found +[15038] Forked 22742 +[15037] Forked 22743 +(22742) found +(22743) found +[15036] Forked 22744 +[15035] Forked 22745 +(22744) found +(22745) found +[15034] Forked 22746 +[15033] Forked 22747 +(22746) found +(22747) found +[15032] Forked 22748 +(22748) found +[15031] Forked 22749 +(22749) found +[15030] Forked 22750 +(22750) found +[15029] Forked 22751 +(22751) found +[15028] Forked 22752 +(22752) found +[15027] Forked 22753 +(22753) found +[15026] Forked 22754 +(22754) found +[15025] Forked 22755 +(22755) found +[15024] Forked 22756 +(22756) found +[15023] Forked 22757 +(22757) found +[15022] Forked 22758 +(22758) found +[15021] Forked 22759 +(22759) found +[15020] Forked 22760 +(22760) found +[15019] Forked 22761 +(22761) found +[15018] Forked 22762 +(22762) found +[15017] Forked 22763 +(22763) found +[15016] Forked 22764 +(22764) found +[15015] Forked 22765 +(22765) found +[15014] Forked 22766 +(22766) found +[15013] Forked 22767 +(22767) found +[15012] Forked 22768 +(22768) found +[15011] Forked 22769 +(22769) found +[15010] Forked 22770 +(22770) found +[15009] Forked 22771 +(22771) found +[15008] Forked 22772 +(22772) found +[15007] Forked 22773 +(22773) found +[15006] Forked 22774 +(22774) found +[15005] Forked 22775 +(22775) found +[15004] Forked 22776 +(22776) found +[15003] Forked 22777 +(22777) found +[15002] Forked 22778 +(22778) found +[15001] Forked 22779 +(22779) found +[15000] Forked 22780 +(22780) found +[14999] Forked 22781 +(22781) found +[14998] Forked 22782 +(22782) found +[14997] Forked 22783 +(22783) found +[14996] Forked 22784 +[14995] Forked 22785 +(22784) found +(22785) found +[14994] Forked 22786 +[14993] Forked 22787 +(22786) found +(22787) found +[14992] Forked 22788 +[14991] Forked 22789 +(22788) found +(22789) found +[14990] Forked 22790 +[14989] Forked 22791 +(22790) found +(22791) found +[14988] Forked 22792 +[14987] Forked 22793 +(22792) found +(22793) found +[14986] Forked 22794 +[14985] Forked 22795 +(22794) found +(22795) found +[14984] Forked 22796 +[14983] Forked 22797 +(22796) found +(22797) found +[14982] Forked 22798 +[14981] Forked 22799 +(22798) found +(22799) found +[14980] Forked 22800 +[14979] Forked 22801 +(22800) found +(22801) found +[14978] Forked 22802 +[14977] Forked 22803 +(22802) found +(22803) found +[14976] Forked 22804 +[14975] Forked 22805 +(22804) found +(22805) found +[14974] Forked 22806 +[14973] Forked 22807 +(22806) found +(22807) found +[14972] Forked 22808 +[14971] Forked 22809 +(22808) found +(22809) found +[14970] Forked 22810 +[14969] Forked 22811 +(22810) found +(22811) found +[14968] Forked 22812 +[14967] Forked 22813 +(22812) found +(22813) found +[14966] Forked 22814 +[14965] Forked 22815 +(22814) found +(22815) found +[14964] Forked 22816 +[14963] Forked 22817 +(22816) found +(22817) found +[14962] Forked 22818 +[14961] Forked 22819 +(22818) found +(22819) found +[14960] Forked 22820 +[14959] Forked 22821 +(22820) found +(22821) found +[14958] Forked 22822 +[14957] Forked 22824 +(22822) found +(22824) found +[14956] Forked 22825 +(22825) found +[14955] Forked 22826 +(22826) found +[14954] Forked 22827 +(22827) found +[14953] Forked 22828 +(22828) found +[14952] Forked 22829 +(22829) found +[14951] Forked 22830 +(22830) found +[14950] Forked 22831 +(22831) found +[14949] Forked 22832 +(22832) found +[14948] Forked 22833 +(22833) found +[14947] Forked 22834 +(22834) found +[14946] Forked 22835 +(22835) found +[14945] Forked 22836 +(22836) found +[14944] Forked 22837 +(22837) found +[14943] Forked 22838 +(22838) found +[14942] Forked 22839 +(22839) found +[14941] Forked 22840 +(22840) found +[14940] Forked 22841 +(22841) found +[14939] Forked 22842 +(22842) found +[14938] Forked 22843 +(22843) found +[14937] Forked 22844 +(22844) found +[14936] Forked 22845 +(22845) found +[14935] Forked 22846 +(22846) found +[14934] Forked 22847 +(22847) found +[14933] Forked 22848 +(22848) found +[14932] Forked 22849 +(22849) found +[14931] Forked 22850 +(22850) found +[14930] Forked 22851 +(22851) found +[14929] Forked 22852 +(22852) found +[14928] Forked 22853 +(22853) found +[14927] Forked 22854 +(22854) found +[14926] Forked 22855 +(22855) found +[14925] Forked 22856 +(22856) found +[14924] Forked 22857 +(22857) found +[14923] Forked 22858 +(22858) found +[14922] Forked 22859 +(22859) found +[14921] Forked 22860 +(22860) found +[14920] Forked 22861 +(22861) found +[14919] Forked 22862 +(22862) found +[14918] Forked 22863 +[14917] Forked 22864 +(22863) found +(22864) found +[14916] Forked 22865 +[14915] Forked 22866 +(22865) found +(22866) found +[14914] Forked 22867 +[14913] Forked 22868 +(22867) found +(22868) found +[14912] Forked 22869 +[14911] Forked 22870 +(22869) found +(22870) found +[14910] Forked 22871 +[14909] Forked 22872 +(22871) found +(22872) found +[14908] Forked 22873 +[14907] Forked 22874 +(22873) found +(22874) found +[14906] Forked 22875 +[14905] Forked 22876 +(22875) found +(22876) found +[14904] Forked 22877 +[14903] Forked 22878 +(22877) found +(22878) found +[14902] Forked 22879 +[14901] Forked 22880 +(22879) found +(22880) found +[14900] Forked 22881 +[14899] Forked 22882 +(22881) found +(22882) found +[14898] Forked 22883 +[14897] Forked 22884 +(22883) found +(22884) found +[14896] Forked 22885 +[14895] Forked 22886 +(22885) found +(22886) found +[14894] Forked 22887 +[14893] Forked 22888 +(22887) found +(22888) found +[14892] Forked 22889 +[14891] Forked 22890 +(22889) found +(22890) found +[14890] Forked 22891 +[14889] Forked 22892 +(22891) found +(22892) found +[14888] Forked 22893 +[14887] Forked 22894 +(22893) found +(22894) found +[14886] Forked 22895 +[14885] Forked 22896 +(22895) found +(22896) found +[14884] Forked 22897 +[14883] Forked 22898 +(22897) found +(22898) found +[14882] Forked 22899 +[14881] Forked 22900 +(22899) found +(22900) found +[14880] Forked 22901 +[14879] Forked 22902 +(22901) found +(22902) found +[14878] Forked 22903 +[14877] Forked 22904 +(22903) found +(22904) found +[14876] Forked 22905 +[14875] Forked 22906 +(22905) found +(22906) found +[14874] Forked 22907 +(22907) found +[14873] Forked 22908 +(22908) found +[14872] Forked 22909 +(22909) found +[14871] Forked 22910 +(22910) found +[14870] Forked 22911 +(22911) found +[14869] Forked 22912 +(22912) found +[14868] Forked 22913 +(22913) found +[14867] Forked 22914 +(22914) found +[14866] Forked 22915 +(22915) found +[14865] Forked 22916 +(22916) found +[14864] Forked 22917 +(22917) found +[14863] Forked 22918 +(22918) found +[14862] Forked 22919 +(22919) found +[14861] Forked 22920 +(22920) found +[14860] Forked 22921 +(22921) found +[14859] Forked 22922 +(22922) found +[14858] Forked 22923 +(22923) found +[14857] Forked 22924 +(22924) found +[14856] Forked 22925 +(22925) found +[14855] Forked 22926 +(22926) found +[14854] Forked 22927 +(22927) found +[14853] Forked 22928 +(22928) found +[14852] Forked 22929 +(22929) found +[14851] Forked 22930 +(22930) found +[14850] Forked 22931 +(22931) found +[14849] Forked 22932 +(22932) found +[14848] Forked 22933 +(22933) found +[14847] Forked 22934 +(22934) found +[14846] Forked 22935 +(22935) found +[14845] Forked 22936 +(22936) found +[14844] Forked 22937 +(22937) found +[14843] Forked 22938 +(22938) found +[14842] Forked 22939 +(22939) found +[14841] Forked 22940 +(22940) found +[14840] Forked 22941 +(22941) found +[14839] Forked 22942 +(22942) found +[14838] Forked 22943 +(22943) found +[14837] Forked 22944 +(22944) found +[14836] Forked 22945 +(22945) found +[14835] Forked 22946 +[14834] Forked 22947 +(22946) found +(22947) found +[14833] Forked 22948 +[14832] Forked 22949 +(22948) found +(22949) found +[14831] Forked 22950 +[14830] Forked 22951 +(22950) found +(22951) found +[14829] Forked 22952 +[14828] Forked 22953 +(22952) found +(22953) found +[14827] Forked 22954 +[14826] Forked 22955 +(22954) found +(22955) found +[14825] Forked 22956 +[14824] Forked 22957 +(22956) found +(22957) found +[14823] Forked 22958 +[14822] Forked 22959 +(22958) found +(22959) found +[14821] Forked 22960 +[14820] Forked 22961 +(22960) found +(22961) found +[14819] Forked 22962 +[14818] Forked 22963 +(22962) found +(22963) found +[14817] Forked 22964 +[14816] Forked 22965 +(22964) found +(22965) found +[14815] Forked 22966 +[14814] Forked 22967 +(22966) found +(22967) found +[14813] Forked 22968 +[14812] Forked 22969 +(22968) found +(22969) found +[14811] Forked 22970 +[14810] Forked 22971 +(22970) found +(22971) found +[14809] Forked 22972 +[14808] Forked 22973 +(22972) found +(22973) found +[14807] Forked 22974 +[14806] Forked 22975 +(22974) found +(22975) found +[14805] Forked 22976 +[14804] Forked 22977 +(22976) found +(22977) found +[14803] Forked 22978 +[14802] Forked 22979 +(22978) found +(22979) found +[14801] Forked 22980 +[14800] Forked 22981 +(22980) found +(22981) found +[14799] Forked 22982 +[14798] Forked 22983 +(22982) found +(22983) found +[14797] Forked 22984 +[14796] Forked 22985 +(22984) found +(22985) found +[14795] Forked 22986 +[14794] Forked 22987 +(22986) found +(22987) found +[14793] Forked 22988 +[14792] Forked 22989 +(22988) found +(22989) found +[14791] Forked 22990 +(22990) found +[14790] Forked 22991 +(22991) found +[14789] Forked 22992 +(22992) found +[14788] Forked 22993 +(22993) found +[14787] Forked 22994 +(22994) found +[14786] Forked 22995 +(22995) found +[14785] Forked 22996 +(22996) found +[14784] Forked 22997 +(22997) found +[14783] Forked 22998 +(22998) found +[14782] Forked 22999 +(22999) found +[14781] Forked 23000 +(23000) found +[14780] Forked 23001 +(23001) found +[14779] Forked 23002 +(23002) found +[14778] Forked 23003 +(23003) found +[14777] Forked 23004 +(23004) found +[14776] Forked 23005 +(23005) found +[14775] Forked 23006 +(23006) found +[14774] Forked 23007 +(23007) found +[14773] Forked 23008 +(23008) found +[14772] Forked 23009 +(23009) found +[14771] Forked 23010 +(23010) found +[14770] Forked 23011 +(23011) found +[14769] Forked 23012 +(23012) found +[14768] Forked 23013 +(23013) found +[14767] Forked 23014 +(23014) found +[14766] Forked 23015 +(23015) found +[14765] Forked 23016 +(23016) found +[14764] Forked 23017 +(23017) found +[14763] Forked 23018 +(23018) found +[14762] Forked 23019 +(23019) found +[14761] Forked 23020 +(23020) found +[14760] Forked 23021 +(23021) found +[14759] Forked 23022 +(23022) found +[14758] Forked 23023 +(23023) found +[14757] Forked 23024 +(23024) found +[14756] Forked 23025 +(23025) found +[14755] Forked 23026 +(23026) found +[14754] Forked 23027 +(23027) found +[14753] Forked 23028 +(23028) found +[14752] Forked 23029 +[14751] Forked 23030 +(23029) found +(23030) found +[14750] Forked 23031 +[14749] Forked 23032 +(23031) found +(23032) found +[14748] Forked 23033 +[14747] Forked 23034 +(23033) found +(23034) found +[14746] Forked 23035 +[14745] Forked 23036 +(23035) found +(23036) found +[14744] Forked 23037 +[14743] Forked 23038 +(23037) found +(23038) found +[14742] Forked 23039 +[14741] Forked 23040 +(23039) found +(23040) found +[14740] Forked 23041 +[14739] Forked 23042 +(23041) found +(23042) found +[14738] Forked 23043 +[14737] Forked 23044 +(23043) found +(23044) found +[14736] Forked 23045 +[14735] Forked 23046 +(23045) found +(23046) found +[14734] Forked 23047 +[14733] Forked 23048 +(23047) found +(23048) found +[14732] Forked 23049 +[14731] Forked 23050 +(23049) found +(23050) found +[14730] Forked 23051 +[14729] Forked 23052 +(23051) found +(23052) found +[14728] Forked 23053 +[14727] Forked 23054 +(23053) found +(23054) found +[14726] Forked 23055 +[14725] Forked 23056 +(23055) found +(23056) found +[14724] Forked 23057 +[14723] Forked 23058 +(23057) found +(23058) found +[14722] Forked 23059 +[14721] Forked 23060 +(23059) found +(23060) found +[14720] Forked 23061 +[14719] Forked 23062 +(23061) found +(23062) found +[14718] Forked 23063 +[14717] Forked 23064 +(23063) found +(23064) found +[14716] Forked 23065 +[14715] Forked 23066 +(23065) found +(23066) found +[14714] Forked 23067 +[14713] Forked 23069 +(23067) found +(23069) found +[14712] Forked 23070 +(23070) found +[14711] Forked 23071 +(23071) found +[14710] Forked 23072 +(23072) found +[14709] Forked 23073 +(23073) found +[14708] Forked 23074 +(23074) found +[14707] Forked 23075 +(23075) found +[14706] Forked 23076 +(23076) found +[14705] Forked 23077 +(23077) found +[14704] Forked 23078 +(23078) found +[14703] Forked 23079 +(23079) found +[14702] Forked 23080 +(23080) found +[14701] Forked 23081 +(23081) found +[14700] Forked 23082 +(23082) found +[14699] Forked 23083 +(23083) found +[14698] Forked 23084 +(23084) found +[14697] Forked 23085 +(23085) found +[14696] Forked 23086 +(23086) found +[14695] Forked 23087 +(23087) found +[14694] Forked 23088 +(23088) found +[14693] Forked 23089 +(23089) found +[14692] Forked 23090 +(23090) found +[14691] Forked 23091 +(23091) found +[14690] Forked 23092 +(23092) found +[14689] Forked 23093 +(23093) found +[14688] Forked 23094 +(23094) found +[14687] Forked 23095 +(23095) found +[14686] Forked 23096 +(23096) found +[14685] Forked 23097 +(23097) found +[14684] Forked 23098 +(23098) found +[14683] Forked 23099 +(23099) found +[14682] Forked 23100 +(23100) found +[14681] Forked 23101 +(23101) found +[14680] Forked 23102 +(23102) found +[14679] Forked 23103 +(23103) found +[14678] Forked 23104 +(23104) found +[14677] Forked 23105 +(23105) found +[14676] Forked 23106 +(23106) found +[14675] Forked 23107 +(23107) found +[14674] Forked 23108 +(23108) found +[14673] Forked 23109 +(23109) found +[14672] Forked 23110 +(23110) found +[14671] Forked 23111 +(23111) found +[14670] Forked 23112 +(23112) found +[14669] Forked 23113 +(23113) found +[14668] Forked 23114 +(23114) found +[14667] Forked 23115 +(23115) found +[14666] Forked 23116 +(23116) found +[14665] Forked 23117 +(23117) found +[14664] Forked 23118 +(23118) found +[14663] Forked 23119 +(23119) found +[14662] Forked 23120 +(23120) found +[14661] Forked 23121 +(23121) found +[14660] Forked 23122 +(23122) found +[14659] Forked 23123 +(23123) found +[14658] Forked 23124 +(23124) found +[14657] Forked 23125 +(23125) found +[14656] Forked 23126 +(23126) found +[14655] Forked 23127 +(23127) found +[14654] Forked 23128 +(23128) found +[14653] Forked 23129 +(23129) found +[14652] Forked 23130 +(23130) found +[14651] Forked 23131 +(23131) found +[14650] Forked 23132 +(23132) found +[14649] Forked 23133 +(23133) found +[14648] Forked 23134 +(23134) found +[14647] Forked 23135 +(23135) found +[14646] Forked 23136 +(23136) found +[14645] Forked 23137 +(23137) found +[14644] Forked 23138 +(23138) found +[14643] Forked 23139 +(23139) found +[14642] Forked 23140 +(23140) found +[14641] Forked 23141 +(23141) found +[14640] Forked 23142 +[14639] Forked 23143 +(23142) found +(23143) found +[14638] Forked 23144 +[14637] Forked 23145 +(23144) found +(23145) found +[14636] Forked 23146 +[14635] Forked 23147 +(23146) found +(23147) found +[14634] Forked 23148 +[14633] Forked 23149 +(23148) found +(23149) found +[14632] Forked 23150 +[14631] Forked 23151 +(23150) found +(23151) found +[14630] Forked 23152 +[14629] Forked 23153 +(23152) found +(23153) found +[14628] Forked 23154 +[14627] Forked 23155 +(23154) found +(23155) found +[14626] Forked 23156 +[14625] Forked 23157 +(23156) found +(23157) found +[14624] Forked 23158 +[14623] Forked 23159 +(23158) found +(23159) found +[14622] Forked 23160 +[14621] Forked 23161 +(23160) found +(23161) found +[14620] Forked 23162 +[14619] Forked 23163 +(23162) found +(23163) found +[14618] Forked 23164 +[14617] Forked 23165 +(23164) found +(23165) found +[14616] Forked 23166 +[14615] Forked 23167 +(23166) found +(23167) found +[14614] Forked 23168 +[14613] Forked 23169 +(23169) found +(23168) found +[14612] Forked 23170 +(23170) found +[14611] Forked 23171 +(23171) found +[14610] Forked 23172 +(23172) found +[14609] Forked 23173 +(23173) found +[14608] Forked 23174 +(23174) found +[14607] Forked 23175 +(23175) found +[14606] Forked 23176 +(23176) found +[14605] Forked 23177 +(23177) found +[14604] Forked 23178 +(23178) found +[14603] Forked 23179 +(23179) found +[14602] Forked 23180 +(23180) found +[14601] Forked 23181 +(23181) found +[14600] Forked 23182 +(23182) found +[14599] Forked 23183 +(23183) found +[14598] Forked 23184 +(23184) found +[14597] Forked 23185 +(23185) found +[14596] Forked 23186 +(23186) found +[14595] Forked 23187 +(23187) found +[14594] Forked 23188 +(23188) found +[14593] Forked 23189 +(23189) found +[14592] Forked 23190 +(23190) found +[14591] Forked 23191 +(23191) found +[14590] Forked 23192 +(23192) found +[14589] Forked 23193 +(23193) found +[14588] Forked 23194 +(23194) found +[14587] Forked 23195 +(23195) found +[14586] Forked 23196 +(23196) found +[14585] Forked 23197 +(23197) found +[14584] Forked 23198 +(23198) found +[14583] Forked 23199 +(23199) found +[14582] Forked 23200 +(23200) found +[14581] Forked 23201 +(23201) found +[14580] Forked 23202 +(23202) found +[14579] Forked 23203 +(23203) found +[14578] Forked 23204 +(23204) found +[14577] Forked 23205 +(23205) found +[14576] Forked 23206 +(23206) found +[14575] Forked 23207 +(23207) found +[14574] Forked 23208 +(23208) found +[14573] Forked 23209 +(23209) found +[14572] Forked 23210 +(23210) found +[14571] Forked 23211 +(23211) found +[14570] Forked 23212 +(23212) found +[14569] Forked 23213 +(23213) found +[14568] Forked 23214 +(23214) found +[14567] Forked 23215 +(23215) found +[14566] Forked 23216 +(23216) found +[14565] Forked 23217 +(23217) found +[14564] Forked 23218 +(23218) found +[14563] Forked 23219 +(23219) found +[14562] Forked 23220 +[14561] Forked 23221 +(23220) found +(23221) found +[14560] Forked 23222 +[14559] Forked 23223 +(23222) found +(23223) found +[14558] Forked 23224 +[14557] Forked 23225 +(23224) found +(23225) found +[14556] Forked 23226 +[14555] Forked 23227 +(23226) found +(23227) found +[14554] Forked 23228 +[14553] Forked 23229 +(23228) found +(23229) found +[14552] Forked 23230 +[14551] Forked 23231 +(23230) found +(23231) found +[14550] Forked 23232 +[14549] Forked 23233 +(23232) found +(23233) found +[14548] Forked 23234 +[14547] Forked 23235 +(23234) found +(23235) found +[14546] Forked 23236 +[14545] Forked 23237 +(23236) found +(23237) found +[14544] Forked 23238 +[14543] Forked 23239 +(23238) found +(23239) found +[14542] Forked 23240 +[14541] Forked 23241 +(23240) found +(23241) found +[14540] Forked 23242 +[14539] Forked 23243 +(23242) found +(23243) found +[14538] Forked 23244 +[14537] Forked 23245 +(23244) found +(23245) found +[14536] Forked 23246 +[14535] Forked 23247 +(23246) found +(23247) found +[14534] Forked 23248 +[14533] Forked 23249 +(23248) found +(23249) found +[14532] Forked 23250 +[14531] Forked 23251 +(23250) found +(23251) found +[14530] Forked 23252 +[14529] Forked 23253 +(23252) found +(23253) found +[14528] Forked 23254 +[14527] Forked 23255 +(23254) found +(23255) found +[14526] Forked 23256 +[14525] Forked 23257 +(23256) found +(23257) found +[14524] Forked 23258 +[14523] Forked 23259 +(23258) found +(23259) found +[14522] Forked 23260 +[14521] Forked 23261 +(23260) found +(23261) found +[14520] Forked 23262 +[14519] Forked 23263 +(23262) found +(23263) found +[14518] Forked 23264 +[14517] Forked 23265 +(23264) found +(23265) found +[14516] Forked 23266 +[14515] Forked 23267 +(23266) found +(23267) found +[14514] Forked 23268 +[14513] Forked 23269 +(23268) found +(23269) found +[14512] Forked 23270 +[14511] Forked 23271 +(23270) found +(23271) found +[14510] Forked 23272 +[14509] Forked 23273 +(23272) found +(23273) found +[14508] Forked 23274 +[14507] Forked 23275 +(23274) found +(23275) found +[14506] Forked 23276 +[14505] Forked 23277 +(23276) found +(23277) found +[14504] Forked 23278 +[14503] Forked 23279 +(23278) found +(23279) found +[14502] Forked 23280 +[14501] Forked 23281 +(23280) found +(23281) found +[14500] Forked 23282 +[14499] Forked 23283 +(23282) found +(23283) found +[14498] Forked 23284 +[14497] Forked 23285 +(23284) found +(23285) found +[14496] Forked 23286 +[14495] Forked 23287 +(23286) found +(23287) found +[14494] Forked 23288 +[14493] Forked 23289 +(23288) found +(23289) found +[14492] Forked 23290 +[14491] Forked 23291 +(23290) found +(23291) found +[14490] Forked 23292 +[14489] Forked 23293 +(23292) found +(23293) found +[14488] Forked 23294 +[14487] Forked 23295 +(23294) found +(23295) found +[14486] Forked 23296 +[14485] Forked 23297 +(23296) found +(23297) found +[14484] Forked 23298 +[14483] Forked 23299 +(23298) found +(23299) found +[14482] Forked 23300 +[14481] Forked 23301 +(23300) found +(23301) found +[14480] Forked 23302 +[14479] Forked 23303 +(23302) found +(23303) found +[14478] Forked 23304 +[14477] Forked 23305 +(23304) found +(23305) found +[14476] Forked 23306 +[14475] Forked 23307 +(23306) found +(23307) found +[14474] Forked 23308 +[14473] Forked 23309 +(23308) found +(23309) found +[14472] Forked 23310 +[14471] Forked 23311 +(23310) found +(23311) found +[14470] Forked 23312 +(23312) found +[14469] Forked 23313 +(23313) found +[14468] Forked 23314 +(23314) found +[14467] Forked 23315 +(23315) found +[14466] Forked 23316 +(23316) found +[14465] Forked 23317 +(23317) found +[14464] Forked 23318 +(23318) found +[14463] Forked 23319 +(23319) found +[14462] Forked 23320 +(23320) found +[14461] Forked 23321 +(23321) found +[14460] Forked 23322 +(23322) found +[14459] Forked 23323 +(23323) found +[14458] Forked 23324 +(23324) found +[14457] Forked 23325 +(23325) found +[14456] Forked 23326 +(23326) found +[14455] Forked 23327 +(23327) found +[14454] Forked 23328 +(23328) found +[14453] Forked 23329 +(23329) found +[14452] Forked 23330 +(23330) found +[14451] Forked 23331 +(23331) found +[14450] Forked 23332 +(23332) found +[14449] Forked 23333 +(23333) found +[14448] Forked 23334 +(23334) found +[14447] Forked 23335 +(23335) found +[14446] Forked 23336 +(23336) found +[14445] Forked 23337 +(23337) found +[14444] Forked 23338 +(23338) found +[14443] Forked 23339 +(23339) found +[14442] Forked 23340 +(23340) found +[14441] Forked 23341 +(23341) found +[14440] Forked 23342 +(23342) found +[14439] Forked 23343 +(23343) found +[14438] Forked 23344 +(23344) found +[14437] Forked 23345 +(23345) found +[14436] Forked 23346 +(23346) found +[14435] Forked 23347 +(23347) found +[14434] Forked 23348 +(23348) found +[14433] Forked 23349 +(23349) found +[14432] Forked 23350 +[14431] Forked 23351 +(23350) found +(23351) found +[14430] Forked 23352 +[14429] Forked 23353 +(23352) found +(23353) found +[14428] Forked 23354 +[14427] Forked 23355 +(23354) found +(23355) found +[14426] Forked 23356 +[14425] Forked 23357 +(23356) found +(23357) found +[14424] Forked 23358 +[14423] Forked 23359 +(23358) found +(23359) found +[14422] Forked 23360 +[14421] Forked 23361 +(23360) found +(23361) found +[14420] Forked 23362 +[14419] Forked 23363 +(23362) found +(23363) found +[14418] Forked 23364 +[14417] Forked 23365 +(23364) found +(23365) found +[14416] Forked 23366 +(23366) found +[14415] Forked 23367 +(23367) found +[14414] Forked 23368 +[14413] Forked 23369 +(23368) found +(23369) found +[14412] Forked 23370 +[14411] Forked 23371 +(23370) found +(23371) found +[14410] Forked 23372 +[14409] Forked 23373 +(23372) found +(23373) found +[14408] Forked 23374 +[14407] Forked 23375 +(23374) found +(23375) found +[14406] Forked 23376 +[14405] Forked 23377 +(23376) found +(23377) found +[14404] Forked 23378 +[14403] Forked 23379 +(23378) found +(23379) found +[14402] Forked 23380 +[14401] Forked 23381 +(23380) found +(23381) found +[14400] Forked 23382 +[14399] Forked 23383 +(23382) found +(23383) found +[14398] Forked 23384 +[14397] Forked 23385 +(23384) found +(23385) found +[14396] Forked 23386 +[14395] Forked 23387 +(23386) found +(23387) found +[14394] Forked 23388 +[14393] Forked 23389 +(23388) found +(23389) found +[14392] Forked 23390 +[14391] Forked 23391 +(23390) found +(23391) found +[14390] Forked 23392 +[14389] Forked 23393 +(23392) found +(23393) found +[14388] Forked 23394 +[14387] Forked 23395 +(23394) found +(23395) found +[14386] Forked 23396 +[14385] Forked 23397 +(23396) found +(23397) found +[14384] Forked 23398 +[14383] Forked 23399 +(23398) found +(23399) found +[14382] Forked 23400 +[14381] Forked 23401 +(23400) found +(23401) found +[14380] Forked 23402 +[14379] Forked 23403 +(23402) found +(23403) found +[14378] Forked 23404 +[14377] Forked 23405 +(23404) found +(23405) found +[14376] Forked 23406 +[14375] Forked 23407 +(23406) found +(23407) found +[14374] Forked 23408 +[14373] Forked 23409 +(23408) found +(23409) found +[14372] Forked 23410 +[14371] Forked 23411 +(23410) found +(23411) found +[14370] Forked 23412 +[14369] Forked 23413 +(23412) found +(23413) found +[14368] Forked 23414 +[14367] Forked 23415 +(23414) found +(23415) found +[14366] Forked 23416 +[14365] Forked 23417 +(23416) found +(23417) found +[14364] Forked 23418 +[14363] Forked 23419 +(23419) found +(23418) found +[14362] Forked 23420 +(23420) found +[14361] Forked 23421 +(23421) found +[14360] Forked 23422 +(23422) found +[14359] Forked 23423 +(23423) found +[14358] Forked 23424 +(23424) found +[14357] Forked 23425 +(23425) found +[14356] Forked 23426 +(23426) found +[14355] Forked 23427 +(23427) found +[14354] Forked 23428 +(23428) found +[14353] Forked 23429 +(23429) found +[14352] Forked 23430 +(23430) found +[14351] Forked 23431 +(23431) found +[14350] Forked 23432 +(23432) found +[14349] Forked 23433 +(23433) found +[14348] Forked 23434 +(23434) found +[14347] Forked 23435 +(23435) found +[14346] Forked 23436 +(23436) found +[14345] Forked 23437 +(23437) found +[14344] Forked 23438 +(23438) found +[14343] Forked 23439 +(23439) found +[14342] Forked 23440 +(23440) found +[14341] Forked 23441 +(23441) found +[14340] Forked 23442 +(23442) found +[14339] Forked 23443 +(23443) found +[14338] Forked 23444 +(23444) found +[14337] Forked 23445 +(23445) found +[14336] Forked 23446 +(23446) found +[14335] Forked 23447 +(23447) found +[14334] Forked 23448 +(23448) found +[14333] Forked 23449 +(23449) found +[14332] Forked 23450 +(23450) found +[14331] Forked 23451 +(23451) found +[14330] Forked 23452 +(23452) found +[14329] Forked 23453 +(23453) found +[14328] Forked 23454 +(23454) found +[14327] Forked 23455 +(23455) found +[14326] Forked 23456 +(23456) found +[14325] Forked 23457 +(23457) found +[14324] Forked 23458 +(23458) found +[14323] Forked 23459 +(23459) found +[14322] Forked 23460 +(23460) found +[14321] Forked 23461 +(23461) found +[14320] Forked 23462 +(23462) found +[14319] Forked 23463 +(23463) found +[14318] Forked 23464 +(23464) found +[14317] Forked 23465 +(23465) found +[14316] Forked 23466 +(23466) found +[14315] Forked 23467 +(23467) found +[14314] Forked 23468 +(23468) found +[14313] Forked 23469 +[14312] Forked 23470 +(23469) found +(23470) found +[14311] Forked 23471 +[14310] Forked 23472 +(23471) found +(23472) found +[14309] Forked 23473 +[14308] Forked 23474 +(23473) found +(23474) found +[14307] Forked 23475 +[14306] Forked 23476 +(23475) found +(23476) found +[14305] Forked 23477 +[14304] Forked 23478 +(23477) found +(23478) found +[14303] Forked 23479 +[14302] Forked 23480 +(23479) found +(23480) found +[14301] Forked 23481 +[14300] Forked 23482 +(23481) found +(23482) found +[14299] Forked 23483 +[14298] Forked 23484 +(23483) found +(23484) found +[14297] Forked 23485 +[14296] Forked 23486 +(23485) found +(23486) found +[14295] Forked 23487 +[14294] Forked 23488 +(23487) found +(23488) found +[14293] Forked 23489 +[14292] Forked 23490 +(23489) found +(23490) found +[14291] Forked 23491 +[14290] Forked 23492 +(23491) found +(23492) found +[14289] Forked 23493 +[14288] Forked 23494 +(23493) found +(23494) found +[14287] Forked 23495 +[14286] Forked 23496 +(23495) found +(23496) found +[14285] Forked 23497 +[14284] Forked 23498 +(23497) found +(23498) found +[14283] Forked 23499 +[14282] Forked 23500 +(23499) found +(23500) found +[14281] Forked 23501 +[14280] Forked 23502 +(23501) found +(23502) found +[14279] Forked 23503 +[14278] Forked 23504 +(23503) found +(23504) found +[14277] Forked 23505 +[14276] Forked 23506 +(23505) found +(23506) found +[14275] Forked 23507 +[14274] Forked 23508 +(23507) found +(23508) found +[14273] Forked 23509 +[14272] Forked 23510 +(23509) found +(23510) found +[14271] Forked 23511 +[14270] Forked 23512 +(23511) found +(23512) found +[14269] Forked 23513 +[14268] Forked 23514 +(23513) found +(23514) found +[14267] Forked 23515 +[14266] Forked 23516 +(23516) found +(23515) found +[14265] Forked 23517 +(23517) found +[14264] Forked 23518 +(23518) found +[14263] Forked 23519 +(23519) found +[14262] Forked 23520 +(23520) found +[14261] Forked 23521 +(23521) found +[14260] Forked 23522 +(23522) found +[14259] Forked 23523 +(23523) found +[14258] Forked 23524 +(23524) found +[14257] Forked 23525 +(23525) found +[14256] Forked 23526 +(23526) found +[14255] Forked 23527 +(23527) found +[14254] Forked 23528 +(23528) found +[14253] Forked 23529 +(23529) found +[14252] Forked 23530 +(23530) found +[14251] Forked 23531 +(23531) found +[14250] Forked 23532 +(23532) found +[14249] Forked 23533 +(23533) found +[14248] Forked 23534 +(23534) found +[14247] Forked 23535 +(23535) found +[14246] Forked 23536 +(23536) found +[14245] Forked 23537 +(23537) found +[14244] Forked 23538 +(23538) found +[14243] Forked 23539 +(23539) found +[14242] Forked 23540 +(23540) found +[14241] Forked 23541 +(23541) found +[14240] Forked 23542 +(23542) found +[14239] Forked 23543 +(23543) found +[14238] Forked 23544 +(23544) found +[14237] Forked 23545 +(23545) found +[14236] Forked 23546 +(23546) found +[14235] Forked 23547 +(23547) found +[14234] Forked 23548 +(23548) found +[14233] Forked 23549 +(23549) found +[14232] Forked 23550 +(23550) found +[14231] Forked 23551 +(23551) found +[14230] Forked 23552 +(23552) found +[14229] Forked 23553 +(23553) found +[14228] Forked 23554 +(23554) found +[14227] Forked 23555 +(23555) found +[14226] Forked 23556 +(23556) found +[14225] Forked 23557 +(23557) found +[14224] Forked 23558 +(23558) found +[14223] Forked 23559 +(23559) found +[14222] Forked 23560 +(23560) found +[14221] Forked 23561 +(23561) found +[14220] Forked 23562 +(23562) found +[14219] Forked 23563 +(23563) found +[14218] Forked 23564 +(23564) found +[14217] Forked 23565 +(23565) found +[14216] Forked 23566 +(23566) found +[14215] Forked 23567 +(23567) found +[14214] Forked 23568 +(23568) found +[14213] Forked 23569 +(23569) found +[14212] Forked 23570 +(23570) found +[14211] Forked 23571 +(23571) found +[14210] Forked 23572 +(23572) found +[14209] Forked 23573 +(23573) found +[14208] Forked 23574 +(23574) found +[14207] Forked 23575 +(23575) found +[14206] Forked 23576 +(23576) found +[14205] Forked 23577 +(23577) found +[14204] Forked 23578 +(23578) found +[14203] Forked 23579 +(23579) found +[14202] Forked 23580 +(23580) found +[14201] Forked 23581 +(23581) found +[14200] Forked 23582 +(23582) found +[14199] Forked 23583 +(23583) found +[14198] Forked 23584 +(23584) found +[14197] Forked 23585 +[14196] Forked 23586 +(23585) found +(23586) found +[14195] Forked 23587 +[14194] Forked 23588 +(23587) found +(23588) found +[14193] Forked 23589 +[14192] Forked 23590 +(23589) found +(23590) found +[14191] Forked 23591 +[14190] Forked 23592 +(23591) found +(23592) found +[14189] Forked 23593 +[14188] Forked 23594 +(23593) found +(23594) found +[14187] Forked 23595 +[14186] Forked 23596 +(23595) found +(23596) found +[14185] Forked 23597 +[14184] Forked 23598 +(23597) found +(23598) found +[14183] Forked 23599 +[14182] Forked 23600 +(23599) found +(23600) found +[14181] Forked 23601 +[14180] Forked 23602 +(23601) found +(23602) found +[14179] Forked 23603 +[14178] Forked 23604 +(23603) found +(23604) found +[14177] Forked 23605 +[14176] Forked 23606 +(23605) found +(23606) found +[14175] Forked 23607 +[14174] Forked 23608 +(23607) found +(23608) found +[14173] Forked 23609 +[14172] Forked 23610 +(23609) found +(23610) found +[14171] Forked 23611 +[14170] Forked 23612 +(23611) found +(23612) found +[14169] Forked 23613 +[14168] Forked 23614 +(23613) found +(23614) found +[14167] Forked 23615 +[14166] Forked 23616 +(23615) found +(23616) found +[14165] Forked 23617 +[14164] Forked 23618 +(23617) found +(23618) found +[14163] Forked 23619 +[14162] Forked 23620 +(23619) found +(23620) found +[14161] Forked 23621 +[14160] Forked 23622 +(23621) found +(23622) found +[14159] Forked 23623 +[14158] Forked 23624 +(23623) found +(23624) found +[14157] Forked 23625 +[14156] Forked 23626 +(23625) found +(23626) found +[14155] Forked 23627 +[14154] Forked 23628 +(23627) found +(23628) found +[14153] Forked 23629 +[14152] Forked 23630 +(23629) found +(23630) found +[14151] Forked 23631 +[14150] Forked 23632 +(23631) found +(23632) found +[14149] Forked 23633 +[14148] Forked 23634 +(23633) found +(23634) found +[14147] Forked 23635 +[14146] Forked 23636 +(23635) found +(23636) found +[14145] Forked 23637 +[14144] Forked 23638 +(23637) found +(23638) found +[14143] Forked 23639 +[14142] Forked 23640 +(23639) found +(23640) found +[14141] Forked 23641 +[14140] Forked 23642 +(23641) found +(23642) found +[14139] Forked 23643 +[14138] Forked 23644 +(23643) found +(23644) found +[14137] Forked 23645 +[14136] Forked 23646 +(23645) found +(23646) found +[14135] Forked 23647 +[14134] Forked 23648 +(23647) found +(23648) found +[14133] Forked 23649 +[14132] Forked 23650 +(23649) found +(23650) found +[14131] Forked 23651 +[14130] Forked 23652 +(23651) found +(23652) found +[14129] Forked 23653 +[14128] Forked 23654 +(23653) found +(23654) found +[14127] Forked 23655 +[14126] Forked 23656 +(23655) found +(23656) found +[14125] Forked 23657 +[14124] Forked 23658 +(23657) found +(23658) found +[14123] Forked 23659 +[14122] Forked 23660 +(23659) found +(23660) found +[14121] Forked 23661 +[14120] Forked 23662 +(23661) found +(23662) found +[14119] Forked 23663 +[14118] Forked 23664 +(23663) found +(23664) found +[14117] Forked 23665 +[14116] Forked 23666 +(23665) found +(23666) found +[14115] Forked 23667 +[14114] Forked 23668 +(23667) found +(23668) found +[14113] Forked 23669 +[14112] Forked 23670 +(23669) found +(23670) found +[14111] Forked 23671 +[14110] Forked 23672 +(23671) found +(23672) found +[14109] Forked 23673 +[14108] Forked 23674 +(23673) found +(23674) found +[14107] Forked 23675 +[14106] Forked 23676 +(23675) found +(23676) found +[14105] Forked 23677 +[14104] Forked 23678 +(23677) found +(23678) found +[14103] Forked 23679 +[14102] Forked 23680 +(23679) found +(23680) found +[14101] Forked 23681 +[14100] Forked 23682 +(23681) found +(23682) found +[14099] Forked 23683 +[14098] Forked 23684 +(23683) found +(23684) found +[14097] Forked 23685 +[14096] Forked 23686 +(23685) found +(23686) found +[14095] Forked 23687 +[14094] Forked 23688 +(23687) found +(23688) found +[14093] Forked 23689 +[14092] Forked 23690 +(23689) found +(23690) found +[14091] Forked 23691 +[14090] Forked 23692 +(23691) found +(23692) found +[14089] Forked 23693 +[14088] Forked 23694 +(23693) found +(23694) found +[14087] Forked 23695 +[14086] Forked 23696 +(23695) found +(23696) found +[14085] Forked 23697 +[14084] Forked 23698 +(23697) found +(23698) found +[14083] Forked 23699 +[14082] Forked 23700 +(23699) found +(23700) found +[14081] Forked 23701 +[14080] Forked 23702 +(23701) found +(23702) found +[14079] Forked 23703 +[14078] Forked 23704 +(23703) found +(23704) found +[14077] Forked 23705 +[14076] Forked 23706 +(23705) found +(23706) found +[14075] Forked 23707 +[14074] Forked 23708 +(23707) found +(23708) found +[14073] Forked 23709 +[14072] Forked 23710 +(23709) found +(23710) found +[14071] Forked 23711 +[14070] Forked 23712 +(23711) found +(23712) found +[14069] Forked 23713 +[14068] Forked 23714 +(23713) found +(23714) found +[14067] Forked 23715 +[14066] Forked 23716 +(23715) found +(23716) found +[14065] Forked 23717 +[14064] Forked 23718 +(23717) found +(23718) found +[14063] Forked 23719 +(23719) found +[14062] Forked 23720 +(23720) found +[14061] Forked 23721 +(23721) found +[14060] Forked 23722 +(23722) found +[14059] Forked 23723 +(23723) found +[14058] Forked 23724 +(23724) found +[14057] Forked 23725 +(23725) found +[14056] Forked 23726 +(23726) found +[14055] Forked 23727 +(23727) found +[14054] Forked 23728 +(23728) found +[14053] Forked 23729 +(23729) found +[14052] Forked 23730 +(23730) found +[14051] Forked 23731 +(23731) found +[14050] Forked 23732 +(23732) found +[14049] Forked 23733 +(23733) found +[14048] Forked 23734 +(23734) found +[14047] Forked 23735 +(23735) found +[14046] Forked 23736 +(23736) found +[14045] Forked 23737 +(23737) found +[14044] Forked 23738 +(23738) found +[14043] Forked 23739 +(23739) found +[14042] Forked 23740 +(23740) found +[14041] Forked 23741 +(23741) found +[14040] Forked 23742 +(23742) found +[14039] Forked 23743 +(23743) found +[14038] Forked 23744 +(23744) found +[14037] Forked 23745 +(23745) found +[14036] Forked 23746 +(23746) found +[14035] Forked 23747 +(23747) found +[14034] Forked 23748 +(23748) found +[14033] Forked 23749 +(23749) found +[14032] Forked 23750 +(23750) found +[14031] Forked 23751 +(23751) found +[14030] Forked 23752 +(23752) found +[14029] Forked 23753 +(23753) found +[14028] Forked 23754 +(23754) found +[14027] Forked 23755 +(23755) found +[14026] Forked 23756 +(23756) found +[14025] Forked 23757 +[14024] Forked 23758 +(23757) found +(23758) found +[14023] Forked 23759 +[14022] Forked 23760 +(23759) found +(23760) found +[14021] Forked 23761 +[14020] Forked 23762 +(23761) found +(23762) found +[14019] Forked 23763 +[14018] Forked 23764 +(23763) found +(23764) found +[14017] Forked 23765 +[14016] Forked 23766 +(23765) found +(23766) found +[14015] Forked 23767 +[14014] Forked 23768 +(23767) found +(23768) found +[14013] Forked 23769 +[14012] Forked 23770 +(23769) found +(23770) found +[14011] Forked 23771 +[14010] Forked 23772 +(23771) found +(23772) found +[14009] Forked 23773 +[14008] Forked 23774 +(23773) found +(23774) found +[14007] Forked 23775 +[14006] Forked 23776 +(23775) found +(23776) found +[14005] Forked 23777 +[14004] Forked 23778 +(23777) found +(23778) found +[14003] Forked 23779 +[14002] Forked 23780 +(23779) found +(23780) found +[14001] Forked 23781 +[14000] Forked 23782 +(23781) found +(23782) found +[13999] Forked 23783 +[13998] Forked 23784 +(23783) found +(23784) found +[13997] Forked 23785 +[13996] Forked 23786 +(23785) found +(23786) found +[13995] Forked 23787 +[13994] Forked 23788 +(23787) found +(23788) found +[13993] Forked 23789 +[13992] Forked 23790 +(23789) found +(23790) found +[13991] Forked 23791 +[13990] Forked 23792 +(23791) found +(23792) found +[13989] Forked 23793 +[13988] Forked 23794 +(23793) found +(23794) found +[13987] Forked 23795 +[13986] Forked 23796 +(23795) found +(23796) found +[13985] Forked 23797 +[13984] Forked 23798 +(23797) found +(23798) found +[13983] Forked 23799 +[13982] Forked 23800 +(23799) found +(23800) found +[13981] Forked 23801 +[13980] Forked 23802 +(23801) found +(23802) found +[13979] Forked 23803 +[13978] Forked 23804 +(23803) found +(23804) found +[13977] Forked 23805 +[13976] Forked 23806 +(23805) found +(23806) found +[13975] Forked 23807 +[13974] Forked 23808 +(23807) found +(23808) found +[13973] Forked 23809 +[13972] Forked 23810 +(23809) found +(23810) found +[13971] Forked 23811 +[13970] Forked 23812 +(23811) found +(23812) found +[13969] Forked 23813 +[13968] Forked 23814 +(23813) found +(23814) found +[13967] Forked 23815 +[13966] Forked 23816 +(23815) found +(23816) found +[13965] Forked 23817 +[13964] Forked 23818 +(23817) found +(23818) found +[13963] Forked 23819 +[13962] Forked 23820 +(23819) found +(23820) found +[13961] Forked 23821 +[13960] Forked 23822 +(23821) found +(23822) found +[13959] Forked 23823 +[13958] Forked 23824 +(23823) found +(23824) found +[13957] Forked 23825 +[13956] Forked 23826 +(23825) found +(23826) found +[13955] Forked 23827 +[13954] Forked 23828 +(23827) found +(23828) found +[13953] Forked 23829 +[13952] Forked 23830 +(23829) found +(23830) found +[13951] Forked 23831 +[13950] Forked 23832 +(23831) found +(23832) found +[13949] Forked 23833 +[13948] Forked 23834 +(23833) found +(23834) found +[13947] Forked 23835 +[13946] Forked 23836 +(23835) found +(23836) found +[13945] Forked 23837 +[13944] Forked 23838 +(23837) found +(23838) found +[13943] Forked 23839 +[13942] Forked 23840 +(23839) found +(23840) found +[13941] Forked 23841 +[13940] Forked 23842 +(23841) found +(23842) found +[13939] Forked 23843 +[13938] Forked 23844 +(23843) found +(23844) found +[13937] Forked 23845 +[13936] Forked 23847 +(23845) found +(23847) found +[13935] Forked 23848 +(23848) found +[13934] Forked 23849 +(23849) found +[13933] Forked 23850 +(23850) found +[13932] Forked 23851 +(23851) found +[13931] Forked 23852 +(23852) found +[13930] Forked 23853 +(23853) found +[13929] Forked 23854 +(23854) found +[13928] Forked 23855 +(23855) found +[13927] Forked 23856 +(23856) found +[13926] Forked 23857 +(23857) found +[13925] Forked 23858 +(23858) found +[13924] Forked 23859 +(23859) found +[13923] Forked 23860 +(23860) found +[13922] Forked 23861 +(23861) found +[13921] Forked 23862 +(23862) found +[13920] Forked 23863 +(23863) found +[13919] Forked 23864 +(23864) found +[13918] Forked 23865 +(23865) found +[13917] Forked 23866 +(23866) found +[13916] Forked 23867 +(23867) found +[13915] Forked 23868 +(23868) found +[13914] Forked 23869 +(23869) found +[13913] Forked 23870 +(23870) found +[13912] Forked 23871 +(23871) found +[13911] Forked 23872 +(23872) found +[13910] Forked 23873 +(23873) found +[13909] Forked 23874 +(23874) found +[13908] Forked 23875 +(23875) found +[13907] Forked 23876 +(23876) found +[13906] Forked 23877 +(23877) found +[13905] Forked 23878 +(23878) found +[13904] Forked 23879 +(23879) found +[13903] Forked 23880 +(23880) found +[13902] Forked 23881 +(23881) found +[13901] Forked 23882 +(23882) found +[13900] Forked 23883 +(23883) found +[13899] Forked 23884 +(23884) found +[13898] Forked 23885 +(23885) found +[13897] Forked 23886 +(23886) found +[13896] Forked 23887 +(23887) found +[13895] Forked 23888 +(23888) found +[13894] Forked 23889 +(23889) found +[13893] Forked 23890 +(23890) found +[13892] Forked 23891 +(23891) found +[13891] Forked 23892 +(23892) found +[13890] Forked 23893 +(23893) found +[13889] Forked 23894 +(23894) found +[13888] Forked 23895 +(23895) found +[13887] Forked 23896 +(23896) found +[13886] Forked 23897 +(23897) found +[13885] Forked 23898 +(23898) found +[13884] Forked 23899 +(23899) found +[13883] Forked 23900 +(23900) found +[13882] Forked 23901 +(23901) found +[13881] Forked 23902 +(23902) found +[13880] Forked 23903 +(23903) found +[13879] Forked 23904 +(23904) found +[13878] Forked 23905 +(23905) found +[13877] Forked 23906 +(23906) found +[13876] Forked 23907 +(23907) found +[13875] Forked 23908 +(23908) found +[13874] Forked 23909 +(23909) found +[13873] Forked 23910 +(23910) found +[13872] Forked 23911 +(23911) found +[13871] Forked 23912 +(23912) found +[13870] Forked 23913 +(23913) found +[13869] Forked 23914 +(23914) found +[13868] Forked 23915 +(23915) found +[13867] Forked 23916 +(23916) found +[13866] Forked 23917 +(23917) found +[13865] Forked 23918 +[13864] Forked 23919 +(23918) found +(23919) found +[13863] Forked 23920 +[13862] Forked 23921 +(23920) found +(23921) found +[13861] Forked 23922 +[13860] Forked 23923 +(23922) found +(23923) found +[13859] Forked 23924 +(23924) found +[13858] Forked 23925 +[13857] Forked 23926 +(23926) found +(23925) found +[13856] Forked 23927 +(23927) found +[13855] Forked 23928 +(23928) found +[13854] Forked 23929 +(23929) found +[13853] Forked 23930 +(23930) found +[13852] Forked 23931 +(23931) found +[13851] Forked 23932 +(23932) found +[13850] Forked 23933 +(23933) found +[13849] Forked 23934 +(23934) found +[13848] Forked 23935 +(23935) found +[13847] Forked 23936 +(23936) found +[13846] Forked 23937 +(23937) found +[13845] Forked 23938 +(23938) found +[13844] Forked 23939 +(23939) found +[13843] Forked 23940 +(23940) found +[13842] Forked 23941 +(23941) found +[13841] Forked 23942 +(23942) found +[13840] Forked 23943 +[13839] Forked 23944 +(23943) found +(23944) found +[13838] Forked 23945 +[13837] Forked 23946 +(23946) found +(23945) found +[13836] Forked 23947 +(23947) found +[13835] Forked 23948 +(23948) found +[13834] Forked 23949 +(23949) found +[13833] Forked 23950 +(23950) found +[13832] Forked 23951 +(23951) found +[13831] Forked 23952 +(23952) found +[13830] Forked 23953 +(23953) found +[13829] Forked 23954 +(23954) found +[13828] Forked 23955 +(23955) found +[13827] Forked 23956 +(23956) found +[13826] Forked 23957 +(23957) found +[13825] Forked 23958 +(23958) found +[13824] Forked 23959 +(23959) found +[13823] Forked 23960 +(23960) found +[13822] Forked 23961 +(23961) found +[13821] Forked 23962 +(23962) found +[13820] Forked 23963 +(23963) found +[13819] Forked 23964 +(23964) found +[13818] Forked 23965 +(23965) found +[13817] Forked 23966 +(23966) found +[13816] Forked 23967 +(23967) found +[13815] Forked 23968 +(23968) found +[13814] Forked 23969 +(23969) found +[13813] Forked 23970 +(23970) found +[13812] Forked 23971 +(23971) found +[13811] Forked 23972 +(23972) found +[13810] Forked 23973 +(23973) found +[13809] Forked 23974 +(23974) found +[13808] Forked 23975 +(23975) found +[13807] Forked 23976 +(23976) found +[13806] Forked 23977 +(23977) found +[13805] Forked 23978 +(23978) found +[13804] Forked 23979 +(23979) found +[13803] Forked 23980 +(23980) found +[13802] Forked 23981 +(23981) found +[13801] Forked 23982 +(23982) found +[13800] Forked 23983 +(23983) found +[13799] Forked 23984 +(23984) found +[13798] Forked 23985 +[13797] Forked 23986 +(23985) found +(23986) found +[13796] Forked 23987 +[13795] Forked 23988 +(23987) found +(23988) found +[13794] Forked 23989 +[13793] Forked 23990 +(23989) found +(23990) found +[13792] Forked 23991 +[13791] Forked 23992 +(23991) found +(23992) found +[13790] Forked 23993 +[13789] Forked 23994 +(23993) found +(23994) found +[13788] Forked 23995 +[13787] Forked 23996 +(23995) found +(23996) found +[13786] Forked 23997 +[13785] Forked 23998 +(23997) found +(23998) found +[13784] Forked 23999 +[13783] Forked 24000 +(23999) found +(24000) found +[13782] Forked 24001 +[13781] Forked 24002 +(24001) found +(24002) found +[13780] Forked 24003 +[13779] Forked 24004 +(24004) found +(24003) found +[13778] Forked 24005 +(24005) found +[13777] Forked 24006 +(24006) found +[13776] Forked 24007 +(24007) found +[13775] Forked 24008 +(24008) found +[13774] Forked 24009 +(24009) found +[13773] Forked 24010 +(24010) found +[13772] Forked 24011 +(24011) found +[13771] Forked 24012 +(24012) found +[13770] Forked 24013 +(24013) found +[13769] Forked 24014 +(24014) found +[13768] Forked 24015 +(24015) found +[13767] Forked 24016 +(24016) found +[13766] Forked 24017 +(24017) found +[13765] Forked 24018 +(24018) found +[13764] Forked 24019 +[13763] Forked 24020 +(24019) found +(24020) found +[13762] Forked 24021 +[13761] Forked 24022 +(24021) found +(24022) found +[13760] Forked 24023 +[13759] Forked 24024 +(24023) found +(24024) found +[13758] Forked 24025 +[13757] Forked 24026 +(24025) found +(24026) found +[13756] Forked 24027 +[13755] Forked 24028 +(24027) found +(24028) found +[13754] Forked 24029 +[13753] Forked 24030 +(24029) found +(24030) found +[13752] Forked 24031 +[13751] Forked 24032 +(24031) found +(24032) found +[13750] Forked 24033 +[13749] Forked 24034 +(24033) found +(24034) found +[13748] Forked 24035 +[13747] Forked 24036 +(24035) found +(24036) found +[13746] Forked 24037 +[13745] Forked 24038 +(24037) found +(24038) found +[13744] Forked 24039 +[13743] Forked 24040 +(24039) found +(24040) found +[13742] Forked 24041 +[13741] Forked 24042 +(24041) found +(24042) found +[13740] Forked 24043 +[13739] Forked 24044 +(24043) found +(24044) found +[13738] Forked 24045 +(24045) found +[13737] Forked 24046 +[13736] Forked 24048 +(24046) found +(24048) found +[13735] Forked 24049 +(24049) found +[13734] Forked 24050 +(24050) found +[13733] Forked 24051 +(24051) found +[13732] Forked 24052 +(24052) found +[13731] Forked 24053 +(24053) found +[13730] Forked 24054 +(24054) found +[13729] Forked 24055 +(24055) found +[13728] Forked 24056 +(24056) found +[13727] Forked 24057 +(24057) found +[13726] Forked 24058 +(24058) found +[13725] Forked 24059 +(24059) found +[13724] Forked 24060 +(24060) found +[13723] Forked 24061 +(24061) found +[13722] Forked 24062 +(24062) found +[13721] Forked 24063 +(24063) found +[13720] Forked 24064 +(24064) found +[13719] Forked 24065 +(24065) found +[13718] Forked 24066 +(24066) found +[13717] Forked 24067 +(24067) found +[13716] Forked 24068 +(24068) found +[13715] Forked 24069 +(24069) found +[13714] Forked 24070 +(24070) found +[13713] Forked 24071 +(24071) found +[13712] Forked 24072 +(24072) found +[13711] Forked 24073 +(24073) found +[13710] Forked 24074 +(24074) found +[13709] Forked 24075 +(24075) found +[13708] Forked 24076 +(24076) found +[13707] Forked 24077 +(24077) found +[13706] Forked 24078 +(24078) found +[13705] Forked 24079 +(24079) found +[13704] Forked 24080 +(24080) found +[13703] Forked 24081 +(24081) found +[13702] Forked 24082 +(24082) found +[13701] Forked 24083 +(24083) found +[13700] Forked 24084 +(24084) found +[13699] Forked 24085 +(24085) found +[13698] Forked 24086 +(24086) found +[13697] Forked 24087 +(24087) found +[13696] Forked 24088 +(24088) found +[13695] Forked 24089 +(24089) found +[13694] Forked 24090 +(24090) found +[13693] Forked 24091 +(24091) found +[13692] Forked 24092 +(24092) found +[13691] Forked 24093 +(24093) found +[13690] Forked 24094 +(24094) found +[13689] Forked 24095 +(24095) found +[13688] Forked 24096 +(24096) found +[13687] Forked 24097 +(24097) found +[13686] Forked 24098 +(24098) found +[13685] Forked 24099 +(24099) found +[13684] Forked 24100 +(24100) found +[13683] Forked 24101 +(24101) found +[13682] Forked 24102 +(24102) found +[13681] Forked 24103 +(24103) found +[13680] Forked 24104 +(24104) found +[13679] Forked 24105 +(24105) found +[13678] Forked 24106 +(24106) found +[13677] Forked 24107 +(24107) found +[13676] Forked 24108 +(24108) found +[13675] Forked 24109 +(24109) found +[13674] Forked 24110 +(24110) found +[13673] Forked 24111 +(24111) found +[13672] Forked 24112 +(24112) found +[13671] Forked 24113 +(24113) found +[13670] Forked 24114 +(24114) found +[13669] Forked 24115 +(24115) found +[13668] Forked 24116 +(24116) found +[13667] Forked 24117 +(24117) found +[13666] Forked 24118 +(24118) found +[13665] Forked 24119 +(24119) found +[13664] Forked 24120 +(24120) found +[13663] Forked 24121 +(24121) found +[13662] Forked 24122 +(24122) found +[13661] Forked 24123 +(24123) found +[13660] Forked 24124 +(24124) found +[13659] Forked 24125 +(24125) found +[13658] Forked 24126 +[13657] Forked 24127 +(24126) found +(24127) found +[13656] Forked 24128 +[13655] Forked 24129 +(24128) found +(24129) found +[13654] Forked 24130 +[13653] Forked 24131 +(24130) found +(24131) found +[13652] Forked 24132 +[13651] Forked 24133 +(24132) found +(24133) found +[13650] Forked 24134 +[13649] Forked 24135 +(24135) found +(24134) found +[13648] Forked 24136 +(24136) found +[13647] Forked 24137 +(24137) found +[13646] Forked 24139 +(24139) found +[13645] Forked 24140 +(24140) found +[13644] Forked 24141 +(24141) found +[13643] Forked 24142 +(24142) found +[13642] Forked 24143 +(24143) found +[13641] Forked 24144 +(24144) found +[13640] Forked 24145 +(24145) found +[13639] Forked 24146 +(24146) found +[13638] Forked 24147 +(24147) found +[13637] Forked 24148 +(24148) found +[13636] Forked 24149 +(24149) found +[13635] Forked 24150 +(24150) found +[13634] Forked 24151 +(24151) found +[13633] Forked 24152 +(24152) found +[13632] Forked 24153 +(24153) found +[13631] Forked 24154 +[13630] Forked 24155 +(24154) found +(24155) found +[13629] Forked 24156 +[13628] Forked 24157 +(24156) found +(24157) found +[13627] Forked 24158 +[13626] Forked 24159 +(24158) found +(24159) found +[13625] Forked 24160 +[13624] Forked 24161 +(24160) found +(24161) found +[13623] Forked 24162 +[13622] Forked 24163 +(24162) found +(24163) found +[13621] Forked 24164 +(24164) found +[13620] Forked 24165 +(24165) found +[13619] Forked 24166 +(24166) found +[13618] Forked 24167 +(24167) found +[13617] Forked 24168 +(24168) found +[13616] Forked 24169 +(24169) found +[13615] Forked 24170 +(24170) found +[13614] Forked 24171 +(24171) found +[13613] Forked 24172 +(24172) found +[13612] Forked 24173 +(24173) found +[13611] Forked 24174 +(24174) found +[13610] Forked 24175 +(24175) found +[13609] Forked 24176 +(24176) found +[13608] Forked 24177 +(24177) found +[13607] Forked 24178 +(24178) found +[13606] Forked 24179 +(24179) found +[13605] Forked 24180 +(24180) found +[13604] Forked 24181 +(24181) found +[13603] Forked 24182 +(24182) found +[13602] Forked 24183 +(24183) found +[13601] Forked 24184 +(24184) found +[13600] Forked 24185 +(24185) found +[13599] Forked 24186 +(24186) found +[13598] Forked 24187 +(24187) found +[13597] Forked 24188 +(24188) found +[13596] Forked 24189 +(24189) found +[13595] Forked 24190 +(24190) found +[13594] Forked 24191 +(24191) found +[13593] Forked 24192 +(24192) found +[13592] Forked 24193 +(24193) found +[13591] Forked 24194 +(24194) found +[13590] Forked 24195 +(24195) found +[13589] Forked 24196 +(24196) found +[13588] Forked 24197 +(24197) found +[13587] Forked 24198 +(24198) found +[13586] Forked 24199 +(24199) found +[13585] Forked 24200 +[13584] Forked 24201 +(24200) found +(24201) found +[13583] Forked 24202 +[13582] Forked 24203 +(24202) found +(24203) found +[13581] Forked 24204 +[13580] Forked 24205 +(24204) found +(24205) found +[13579] Forked 24206 +[13578] Forked 24207 +(24206) found +(24207) found +[13577] Forked 24208 +[13576] Forked 24209 +(24208) found +(24209) found +[13575] Forked 24210 +[13574] Forked 24211 +(24210) found +(24211) found +[13573] Forked 24212 +[13572] Forked 24213 +(24212) found +(24213) found +[13571] Forked 24214 +[13570] Forked 24215 +(24214) found +(24215) found +[13569] Forked 24216 +[13568] Forked 24217 +(24216) found +(24217) found +[13567] Forked 24218 +[13566] Forked 24219 +(24218) found +(24219) found +[13565] Forked 24220 +[13564] Forked 24221 +(24220) found +(24221) found +[13563] Forked 24222 +[13562] Forked 24224 +(24222) found +(24224) found +[13561] Forked 24225 +(24225) found +[13560] Forked 24226 +(24226) found +[13559] Forked 24227 +(24227) found +[13558] Forked 24228 +(24228) found +[13557] Forked 24229 +(24229) found +[13556] Forked 24230 +(24230) found +[13555] Forked 24231 +(24231) found +[13554] Forked 24232 +(24232) found +[13553] Forked 24233 +(24233) found +[13552] Forked 24234 +(24234) found +[13551] Forked 24235 +(24235) found +[13550] Forked 24236 +(24236) found +[13549] Forked 24237 +(24237) found +[13548] Forked 24238 +(24238) found +[13547] Forked 24239 +(24239) found +[13546] Forked 24240 +(24240) found +[13545] Forked 24241 +(24241) found +[13544] Forked 24242 +(24242) found +[13543] Forked 24243 +(24243) found +[13542] Forked 24244 +(24244) found +[13541] Forked 24245 +(24245) found +[13540] Forked 24246 +(24246) found +[13539] Forked 24247 +(24247) found +[13538] Forked 24248 +(24248) found +[13537] Forked 24249 +(24249) found +[13536] Forked 24250 +(24250) found +[13535] Forked 24251 +(24251) found +[13534] Forked 24252 +(24252) found +[13533] Forked 24253 +(24253) found +[13532] Forked 24254 +(24254) found +[13531] Forked 24255 +(24255) found +[13530] Forked 24256 +(24256) found +[13529] Forked 24257 +(24257) found +[13528] Forked 24258 +(24258) found +[13527] Forked 24259 +(24259) found +[13526] Forked 24260 +(24260) found +[13525] Forked 24261 +(24261) found +[13524] Forked 24262 +(24262) found +[13523] Forked 24263 +(24263) found +[13522] Forked 24264 +(24264) found +[13521] Forked 24265 +(24265) found +[13520] Forked 24266 +(24266) found +[13519] Forked 24267 +(24267) found +[13518] Forked 24268 +(24268) found +[13517] Forked 24269 +(24269) found +[13516] Forked 24270 +(24270) found +[13515] Forked 24271 +(24271) found +[13514] Forked 24272 +(24272) found +[13513] Forked 24273 +(24273) found +[13512] Forked 24274 +(24274) found +[13511] Forked 24275 +(24275) found +[13510] Forked 24276 +[13509] Forked 24277 +(24276) found +(24277) found +[13508] Forked 24278 +[13507] Forked 24279 +(24278) found +(24279) found +[13506] Forked 24280 +[13505] Forked 24281 +(24280) found +(24281) found +[13504] Forked 24282 +[13503] Forked 24283 +(24282) found +(24283) found +[13502] Forked 24284 +[13501] Forked 24285 +(24284) found +(24285) found +[13500] Forked 24286 +[13499] Forked 24287 +(24286) found +(24287) found +[13498] Forked 24288 +[13497] Forked 24289 +(24288) found +(24289) found +[13496] Forked 24290 +[13495] Forked 24291 +(24290) found +(24291) found +[13494] Forked 24292 +[13493] Forked 24293 +(24292) found +(24293) found +[13492] Forked 24294 +[13491] Forked 24295 +(24294) found +(24295) found +[13490] Forked 24296 +[13489] Forked 24297 +(24296) found +(24297) found +[13488] Forked 24298 +[13487] Forked 24299 +(24298) found +(24299) found +[13486] Forked 24300 +[13485] Forked 24301 +(24300) found +(24301) found +[13484] Forked 24302 +[13483] Forked 24303 +(24302) found +(24303) found +[13482] Forked 24304 +[13481] Forked 24305 +(24304) found +(24305) found +[13480] Forked 24306 +[13479] Forked 24307 +(24306) found +(24307) found +[13478] Forked 24308 +[13477] Forked 24309 +(24308) found +(24309) found +[13476] Forked 24310 +[13475] Forked 24311 +(24310) found +(24311) found +[13474] Forked 24312 +[13473] Forked 24313 +(24312) found +(24313) found +[13472] Forked 24314 +[13471] Forked 24315 +(24314) found +(24315) found +[13470] Forked 24316 +[13469] Forked 24317 +(24316) found +(24317) found +[13468] Forked 24319 +[13467] Forked 24320 +(24319) found +(24320) found +[13466] Forked 24321 +(24321) found +[13465] Forked 24322 +(24322) found +[13464] Forked 24323 +(24323) found +[13463] Forked 24324 +(24324) found +[13462] Forked 24325 +(24325) found +[13461] Forked 24326 +(24326) found +[13460] Forked 24327 +(24327) found +[13459] Forked 24328 +(24328) found +[13458] Forked 24329 +(24329) found +[13457] Forked 24330 +(24330) found +[13456] Forked 24331 +(24331) found +[13455] Forked 24332 +(24332) found +[13454] Forked 24333 +(24333) found +[13453] Forked 24334 +(24334) found +[13452] Forked 24335 +(24335) found +[13451] Forked 24336 +(24336) found +[13450] Forked 24337 +(24337) found +[13449] Forked 24338 +(24338) found +[13448] Forked 24339 +(24339) found +[13447] Forked 24340 +(24340) found +[13446] Forked 24341 +(24341) found +[13445] Forked 24342 +(24342) found +[13444] Forked 24343 +(24343) found +[13443] Forked 24344 +(24344) found +[13442] Forked 24345 +(24345) found +[13441] Forked 24346 +(24346) found +[13440] Forked 24347 +(24347) found +[13439] Forked 24348 +(24348) found +[13438] Forked 24349 +(24349) found +[13437] Forked 24350 +(24350) found +[13436] Forked 24351 +(24351) found +[13435] Forked 24352 +(24352) found +[13434] Forked 24353 +(24353) found +[13433] Forked 24354 +(24354) found +[13432] Forked 24355 +(24355) found +[13431] Forked 24356 +(24356) found +[13430] Forked 24357 +[13429] Forked 24358 +(24357) found +(24358) found +[13428] Forked 24359 +[13427] Forked 24360 +(24359) found +(24360) found +[13426] Forked 24361 +[13425] Forked 24362 +(24361) found +(24362) found +[13424] Forked 24363 +[13423] Forked 24364 +(24363) found +(24364) found +[13422] Forked 24365 +[13421] Forked 24366 +(24365) found +(24366) found +[13420] Forked 24367 +[13419] Forked 24368 +(24367) found +(24368) found +[13418] Forked 24369 +[13417] Forked 24370 +(24369) found +(24370) found +[13416] Forked 24371 +[13415] Forked 24372 +(24371) found +(24372) found +[13414] Forked 24373 +[13413] Forked 24374 +(24373) found +(24374) found +[13412] Forked 24375 +[13411] Forked 24376 +(24375) found +(24376) found +[13410] Forked 24377 +[13409] Forked 24378 +(24377) found +(24378) found +[13408] Forked 24379 +(24379) found +[13407] Forked 24380 +[13406] Forked 24381 +(24380) found +(24381) found +[13405] Forked 24382 +[13404] Forked 24383 +(24382) found +(24383) found +[13403] Forked 24384 +[13402] Forked 24385 +(24384) found +(24385) found +[13401] Forked 24386 +[13400] Forked 24387 +(24386) found +(24387) found +[13399] Forked 24388 +[13398] Forked 24389 +(24388) found +(24389) found +[13397] Forked 24390 +[13396] Forked 24391 +(24390) found +(24391) found +[13395] Forked 24392 +[13394] Forked 24393 +(24392) found +(24393) found +[13393] Forked 24394 +[13392] Forked 24395 +(24394) found +(24395) found +[13391] Forked 24396 +[13390] Forked 24397 +(24396) found +(24397) found +[13389] Forked 24398 +[13388] Forked 24399 +(24398) found +(24399) found +[13387] Forked 24400 +[13386] Forked 24401 +(24400) found +(24401) found +[13385] Forked 24402 +(24402) found +[13384] Forked 24403 +(24403) found +[13383] Forked 24404 +(24404) found +[13382] Forked 24405 +(24405) found +[13381] Forked 24406 +(24406) found +[13380] Forked 24407 +(24407) found +[13379] Forked 24408 +(24408) found +[13378] Forked 24409 +(24409) found +[13377] Forked 24410 +(24410) found +[13376] Forked 24411 +(24411) found +[13375] Forked 24412 +(24412) found +[13374] Forked 24413 +(24413) found +[13373] Forked 24414 +(24414) found +[13372] Forked 24415 +(24415) found +[13371] Forked 24416 +(24416) found +[13370] Forked 24417 +(24417) found +[13369] Forked 24418 +(24418) found +[13368] Forked 24419 +(24419) found +[13367] Forked 24420 +(24420) found +[13366] Forked 24421 +(24421) found +[13365] Forked 24422 +(24422) found +[13364] Forked 24423 +(24423) found +[13363] Forked 24424 +(24424) found +[13362] Forked 24425 +(24425) found +[13361] Forked 24426 +(24426) found +[13360] Forked 24427 +(24427) found +[13359] Forked 24428 +(24428) found +[13358] Forked 24429 +(24429) found +[13357] Forked 24430 +(24430) found +[13356] Forked 24431 +(24431) found +[13355] Forked 24432 +(24432) found +[13354] Forked 24433 +(24433) found +[13353] Forked 24434 +(24434) found +[13352] Forked 24435 +(24435) found +[13351] Forked 24436 +(24436) found +[13350] Forked 24437 +(24437) found +[13349] Forked 24438 +(24438) found +[13348] Forked 24439 +(24439) found +[13347] Forked 24440 +(24440) found +[13346] Forked 24441 +(24441) found +[13345] Forked 24442 +[13344] Forked 24443 +(24442) found +(24443) found +[13343] Forked 24444 +[13342] Forked 24445 +(24444) found +(24445) found +[13341] Forked 24446 +[13340] Forked 24447 +(24446) found +(24447) found +[13339] Forked 24448 +[13338] Forked 24449 +(24448) found +(24449) found +[13337] Forked 24450 +[13336] Forked 24451 +(24450) found +(24451) found +[13335] Forked 24452 +[13334] Forked 24453 +(24452) found +(24453) found +[13333] Forked 24454 +[13332] Forked 24455 +(24454) found +(24455) found +[13331] Forked 24456 +[13330] Forked 24457 +(24456) found +(24457) found +[13329] Forked 24458 +[13328] Forked 24459 +(24458) found +(24459) found +[13327] Forked 24460 +[13326] Forked 24461 +(24460) found +(24461) found +[13325] Forked 24462 +[13324] Forked 24463 +(24462) found +(24463) found +[13323] Forked 24464 +[13322] Forked 24465 +(24464) found +(24465) found +[13321] Forked 24466 +[13320] Forked 24467 +(24466) found +(24467) found +[13319] Forked 24468 +[13318] Forked 24469 +(24468) found +(24469) found +[13317] Forked 24470 +[13316] Forked 24473 +(24470) found +(24473) found +[13315] Forked 24474 +[13314] Forked 24475 +(24474) found +(24475) found +[13313] Forked 24476 +[13312] Forked 24477 +(24476) found +(24477) found +[13311] Forked 24478 +[13310] Forked 24479 +(24478) found +(24479) found +[13309] Forked 24480 +[13308] Forked 24481 +(24480) found +(24481) found +[13307] Forked 24482 +[13306] Forked 24483 +(24482) found +(24483) found +[13305] Forked 24484 +[13304] Forked 24485 +(24484) found +(24485) found +[13303] Forked 24486 +(24486) found +[13302] Forked 24487 +(24487) found +[13301] Forked 24488 +(24488) found +[13300] Forked 24489 +(24489) found +[13299] Forked 24490 +(24490) found +[13298] Forked 24491 +(24491) found +[13297] Forked 24492 +(24492) found +[13296] Forked 24493 +(24493) found +[13295] Forked 24494 +(24494) found +[13294] Forked 24495 +(24495) found +[13293] Forked 24496 +(24496) found +[13292] Forked 24497 +(24497) found +[13291] Forked 24498 +(24498) found +[13290] Forked 24499 +(24499) found +[13289] Forked 24500 +(24500) found +[13288] Forked 24501 +(24501) found +[13287] Forked 24502 +(24502) found +[13286] Forked 24503 +(24503) found +[13285] Forked 24504 +(24504) found +[13284] Forked 24505 +(24505) found +[13283] Forked 24506 +(24506) found +[13282] Forked 24507 +(24507) found +[13281] Forked 24508 +(24508) found +[13280] Forked 24509 +(24509) found +[13279] Forked 24510 +(24510) found +[13278] Forked 24511 +(24511) found +[13277] Forked 24512 +(24512) found +[13276] Forked 24513 +(24513) found +[13275] Forked 24514 +(24514) found +[13274] Forked 24515 +(24515) found +[13273] Forked 24516 +(24516) found +[13272] Forked 24517 +(24517) found +[13271] Forked 24518 +(24518) found +[13270] Forked 24519 +(24519) found +[13269] Forked 24520 +(24520) found +[13268] Forked 24521 +(24521) found +[13267] Forked 24522 +(24522) found +[13266] Forked 24523 +(24523) found +[13265] Forked 24524 +(24524) found +[13264] Forked 24525 +[13263] Forked 24526 +(24525) found +(24526) found +[13262] Forked 24527 +[13261] Forked 24528 +(24527) found +(24528) found +[13260] Forked 24529 +[13259] Forked 24530 +(24529) found +(24530) found +[13258] Forked 24531 +[13257] Forked 24532 +(24531) found +(24532) found +[13256] Forked 24533 +[13255] Forked 24534 +(24533) found +(24534) found +[13254] Forked 24535 +[13253] Forked 24536 +(24535) found +(24536) found +[13252] Forked 24537 +[13251] Forked 24538 +(24537) found +(24538) found +[13250] Forked 24539 +[13249] Forked 24540 +(24539) found +(24540) found +[13248] Forked 24541 +[13247] Forked 24542 +(24541) found +(24542) found +[13246] Forked 24543 +[13245] Forked 24544 +(24543) found +(24544) found +[13244] Forked 24545 +[13243] Forked 24546 +(24545) found +(24546) found +[13242] Forked 24547 +[13241] Forked 24548 +(24547) found +(24548) found +[13240] Forked 24549 +[13239] Forked 24550 +(24549) found +(24550) found +[13238] Forked 24551 +[13237] Forked 24552 +(24551) found +(24552) found +[13236] Forked 24553 +[13235] Forked 24554 +(24553) found +(24554) found +[13234] Forked 24555 +[13233] Forked 24556 +(24555) found +(24556) found +[13232] Forked 24557 +[13231] Forked 24558 +(24558) found +(24557) found +[13230] Forked 24559 +(24559) found +[13229] Forked 24560 +(24560) found +[13228] Forked 24561 +(24561) found +[13227] Forked 24562 +(24562) found +[13226] Forked 24563 +[13225] Forked 24564 +(24563) found +(24564) found +[13224] Forked 24565 +[13223] Forked 24566 +(24565) found +(24566) found +[13222] Forked 24567 +(24567) found +[13221] Forked 24568 +(24568) found +[13220] Forked 24569 +(24569) found +[13219] Forked 24570 +(24570) found +[13218] Forked 24571 +(24571) found +[13217] Forked 24572 +(24572) found +[13216] Forked 24573 +(24573) found +[13215] Forked 24574 +(24574) found +[13214] Forked 24575 +(24575) found +[13213] Forked 24576 +(24576) found +[13212] Forked 24577 +(24577) found +[13211] Forked 24578 +(24578) found +[13210] Forked 24579 +(24579) found +[13209] Forked 24580 +(24580) found +[13208] Forked 24581 +(24581) found +[13207] Forked 24582 +(24582) found +[13206] Forked 24583 +(24583) found +[13205] Forked 24584 +(24584) found +[13204] Forked 24585 +(24585) found +[13203] Forked 24586 +(24586) found +[13202] Forked 24587 +(24587) found +[13201] Forked 24588 +(24588) found +[13200] Forked 24589 +(24589) found +[13199] Forked 24590 +(24590) found +[13198] Forked 24591 +(24591) found +[13197] Forked 24592 +(24592) found +[13196] Forked 24593 +(24593) found +[13195] Forked 24594 +(24594) found +[13194] Forked 24595 +(24595) found +[13193] Forked 24596 +(24596) found +[13192] Forked 24597 +(24597) found +[13191] Forked 24598 +(24598) found +[13190] Forked 24599 +(24599) found +[13189] Forked 24600 +(24600) found +[13188] Forked 24601 +(24601) found +[13187] Forked 24602 +(24602) found +[13186] Forked 24603 +(24603) found +[13185] Forked 24604 +(24604) found +[13184] Forked 24605 +(24605) found +[13183] Forked 24606 +[13182] Forked 24607 +(24606) found +(24607) found +[13181] Forked 24608 +[13180] Forked 24609 +(24608) found +(24609) found +[13179] Forked 24610 +[13178] Forked 24611 +(24610) found +(24611) found +[13177] Forked 24612 +[13176] Forked 24613 +(24612) found +(24613) found +[13175] Forked 24614 +[13174] Forked 24615 +(24614) found +(24615) found +[13173] Forked 24616 +[13172] Forked 24617 +(24616) found +(24617) found +[13171] Forked 24618 +[13170] Forked 24619 +(24618) found +(24619) found +[13169] Forked 24620 +[13168] Forked 24621 +(24620) found +(24621) found +[13167] Forked 24622 +[13166] Forked 24623 +(24622) found +(24623) found +[13165] Forked 24624 +[13164] Forked 24625 +(24624) found +(24625) found +[13163] Forked 24626 +[13162] Forked 24627 +(24626) found +(24627) found +[13161] Forked 24628 +[13160] Forked 24629 +(24628) found +(24629) found +[13159] Forked 24630 +[13158] Forked 24631 +(24630) found +(24631) found +[13157] Forked 24632 +[13156] Forked 24633 +(24632) found +(24633) found +[13155] Forked 24634 +[13154] Forked 24635 +(24634) found +(24635) found +[13153] Forked 24636 +[13152] Forked 24637 +(24636) found +(24637) found +[13151] Forked 24638 +[13150] Forked 24639 +(24638) found +(24639) found +[13149] Forked 24640 +[13148] Forked 24641 +(24640) found +(24641) found +[13147] Forked 24642 +[13146] Forked 24643 +(24642) found +(24643) found +[13145] Forked 24644 +[13144] Forked 24645 +(24644) found +(24645) found +[13143] Forked 24646 +[13142] Forked 24647 +(24646) found +(24647) found +[13141] Forked 24648 +[13140] Forked 24649 +(24648) found +(24649) found +[13139] Forked 24650 +(24650) found +[13138] Forked 24651 +(24651) found +[13137] Forked 24652 +(24652) found +[13136] Forked 24653 +(24653) found +[13135] Forked 24654 +(24654) found +[13134] Forked 24655 +(24655) found +[13133] Forked 24656 +(24656) found +[13132] Forked 24657 +(24657) found +[13131] Forked 24658 +(24658) found +[13130] Forked 24659 +(24659) found +[13129] Forked 24660 +(24660) found +[13128] Forked 24661 +(24661) found +[13127] Forked 24662 +(24662) found +[13126] Forked 24663 +(24663) found +[13125] Forked 24664 +(24664) found +[13124] Forked 24665 +(24665) found +[13123] Forked 24666 +(24666) found +[13122] Forked 24667 +(24667) found +[13121] Forked 24668 +(24668) found +[13120] Forked 24669 +(24669) found +[13119] Forked 24670 +(24670) found +[13118] Forked 24671 +(24671) found +[13117] Forked 24672 +(24672) found +[13116] Forked 24673 +(24673) found +[13115] Forked 24674 +(24674) found +[13114] Forked 24675 +(24675) found +[13113] Forked 24676 +(24676) found +[13112] Forked 24677 +(24677) found +[13111] Forked 24678 +(24678) found +[13110] Forked 24679 +(24679) found +[13109] Forked 24680 +(24680) found +[13108] Forked 24681 +(24681) found +[13107] Forked 24682 +(24682) found +[13106] Forked 24683 +(24683) found +[13105] Forked 24684 +(24684) found +[13104] Forked 24685 +(24685) found +[13103] Forked 24686 +(24686) found +[13102] Forked 24687 +(24687) found +[13101] Forked 24688 +[13100] Forked 24689 +(24688) found +(24689) found +[13099] Forked 24690 +[13098] Forked 24691 +(24690) found +(24691) found +[13097] Forked 24692 +[13096] Forked 24693 +(24692) found +(24693) found +[13095] Forked 24694 +[13094] Forked 24695 +(24694) found +(24695) found +[13093] Forked 24696 +[13092] Forked 24697 +(24696) found +(24697) found +[13091] Forked 24698 +[13090] Forked 24699 +(24698) found +(24699) found +[13089] Forked 24700 +[13088] Forked 24701 +(24700) found +(24701) found +[13087] Forked 24702 +[13086] Forked 24703 +(24702) found +(24703) found +[13085] Forked 24704 +[13084] Forked 24705 +(24704) found +(24705) found +[13083] Forked 24706 +[13082] Forked 24707 +(24706) found +(24707) found +[13081] Forked 24708 +[13080] Forked 24709 +(24708) found +(24709) found +[13079] Forked 24710 +[13078] Forked 24711 +(24710) found +(24711) found +[13077] Forked 24712 +[13076] Forked 24713 +(24712) found +(24713) found +[13075] Forked 24714 +[13074] Forked 24715 +(24714) found +(24715) found +[13073] Forked 24716 +[13072] Forked 24717 +(24716) found +(24717) found +[13071] Forked 24718 +[13070] Forked 24719 +(24718) found +(24719) found +[13069] Forked 24720 +[13068] Forked 24721 +(24721) found +(24720) found +[13067] Forked 24722 +(24722) found +[13066] Forked 24723 +(24723) found +[13065] Forked 24724 +(24724) found +[13064] Forked 24725 +(24725) found +[13063] Forked 24726 +[13062] Forked 24727 +(24726) found +(24727) found +[13061] Forked 24728 +[13060] Forked 24729 +(24728) found +(24729) found +[13059] Forked 24730 +[13058] Forked 24731 +(24730) found +(24731) found +[13057] Forked 24732 +[13056] Forked 24733 +(24732) found +(24733) found +[13055] Forked 24734 +[13054] Forked 24735 +(24734) found +(24735) found +[13053] Forked 24736 +[13052] Forked 24737 +(24736) found +(24737) found +[13051] Forked 24738 +[13050] Forked 24739 +(24738) found +(24739) found +[13049] Forked 24740 +[13048] Forked 24741 +(24740) found +(24741) found +[13047] Forked 24742 +[13046] Forked 24743 +(24742) found +(24743) found +[13045] Forked 24744 +[13044] Forked 24745 +(24744) found +(24745) found +[13043] Forked 24746 +[13042] Forked 24747 +(24746) found +(24747) found +[13041] Forked 24748 +[13040] Forked 24749 +(24748) found +(24749) found +[13039] Forked 24750 +[13038] Forked 24751 +(24750) found +(24751) found +[13037] Forked 24752 +[13036] Forked 24753 +(24752) found +(24753) found +[13035] Forked 24754 +[13034] Forked 24755 +(24754) found +(24755) found +[13033] Forked 24756 +[13032] Forked 24757 +(24756) found +(24757) found +[13031] Forked 24758 +[13030] Forked 24759 +(24758) found +(24759) found +[13029] Forked 24760 +[13028] Forked 24761 +(24760) found +(24761) found +[13027] Forked 24762 +[13026] Forked 24763 +(24762) found +(24763) found +[13025] Forked 24764 +[13024] Forked 24765 +(24764) found +(24765) found +[13023] Forked 24766 +[13022] Forked 24767 +(24766) found +(24767) found +[13021] Forked 24768 +[13020] Forked 24769 +(24768) found +(24769) found +[13019] Forked 24770 +[13018] Forked 24771 +(24770) found +(24771) found +[13017] Forked 24772 +[13016] Forked 24773 +(24772) found +(24773) found +[13015] Forked 24774 +(24774) found +[13014] Forked 24775 +(24775) found +[13013] Forked 24776 +(24776) found +[13012] Forked 24777 +(24777) found +[13011] Forked 24778 +(24778) found +[13010] Forked 24779 +(24779) found +[13009] Forked 24780 +(24780) found +[13008] Forked 24781 +(24781) found +[13007] Forked 24782 +(24782) found +[13006] Forked 24783 +(24783) found +[13005] Forked 24784 +(24784) found +[13004] Forked 24785 +(24785) found +[13003] Forked 24786 +(24786) found +[13002] Forked 24787 +(24787) found +[13001] Forked 24788 +(24788) found +[13000] Forked 24789 +(24789) found +[12999] Forked 24790 +(24790) found +[12998] Forked 24791 +(24791) found +[12997] Forked 24792 +(24792) found +[12996] Forked 24793 +(24793) found +[12995] Forked 24794 +(24794) found +[12994] Forked 24795 +(24795) found +[12993] Forked 24796 +(24796) found +[12992] Forked 24797 +(24797) found +[12991] Forked 24798 +(24798) found +[12990] Forked 24799 +(24799) found +[12989] Forked 24800 +(24800) found +[12988] Forked 24801 +(24801) found +[12987] Forked 24802 +(24802) found +[12986] Forked 24803 +(24803) found +[12985] Forked 24804 +(24804) found +[12984] Forked 24805 +(24805) found +[12983] Forked 24806 +(24806) found +[12982] Forked 24807 +(24807) found +[12981] Forked 24808 +(24808) found +[12980] Forked 24809 +[12979] Forked 24810 +(24809) found +(24810) found +[12978] Forked 24811 +[12977] Forked 24812 +(24811) found +(24812) found +[12976] Forked 24813 +[12975] Forked 24814 +(24813) found +(24814) found +[12974] Forked 24815 +[12973] Forked 24816 +(24815) found +(24816) found +[12972] Forked 24817 +[12971] Forked 24818 +(24817) found +(24818) found +[12970] Forked 24819 +[12969] Forked 24820 +(24819) found +(24820) found +[12968] Forked 24821 +[12967] Forked 24822 +(24821) found +(24822) found +[12966] Forked 24823 +[12965] Forked 24824 +(24823) found +(24824) found +[12964] Forked 24825 +[12963] Forked 24826 +(24825) found +(24826) found +[12962] Forked 24827 +[12961] Forked 24828 +(24827) found +(24828) found +[12960] Forked 24829 +[12959] Forked 24830 +(24829) found +(24830) found +[12958] Forked 24831 +[12957] Forked 24832 +(24831) found +(24832) found +[12956] Forked 24833 +[12955] Forked 24834 +(24833) found +(24834) found +[12954] Forked 24835 +[12953] Forked 24836 +(24835) found +(24836) found +[12952] Forked 24837 +[12951] Forked 24838 +(24837) found +(24838) found +[12950] Forked 24839 +[12949] Forked 24840 +(24839) found +(24840) found +[12948] Forked 24841 +[12947] Forked 24842 +(24841) found +(24842) found +[12946] Forked 24843 +[12945] Forked 24844 +(24843) found +(24844) found +[12944] Forked 24845 +[12943] Forked 24846 +(24845) found +(24846) found +[12942] Forked 24847 +[12941] Forked 24848 +(24847) found +(24848) found +[12940] Forked 24849 +[12939] Forked 24850 +(24849) found +(24850) found +[12938] Forked 24851 +[12937] Forked 24852 +(24851) found +(24852) found +[12936] Forked 24853 +[12935] Forked 24854 +(24853) found +(24854) found +[12934] Forked 24855 +(24855) found +[12933] Forked 24856 +(24856) found +[12932] Forked 24857 +(24857) found +[12931] Forked 24858 +(24858) found +[12930] Forked 24859 +(24859) found +[12929] Forked 24860 +(24860) found +[12928] Forked 24861 +(24861) found +[12927] Forked 24862 +(24862) found +[12926] Forked 24863 +(24863) found +[12925] Forked 24864 +(24864) found +[12924] Forked 24865 +(24865) found +[12923] Forked 24866 +(24866) found +[12922] Forked 24867 +(24867) found +[12921] Forked 24868 +(24868) found +[12920] Forked 24869 +(24869) found +[12919] Forked 24870 +(24870) found +[12918] Forked 24871 +(24871) found +[12917] Forked 24872 +(24872) found +[12916] Forked 24873 +(24873) found +[12915] Forked 24874 +(24874) found +[12914] Forked 24875 +(24875) found +[12913] Forked 24876 +(24876) found +[12912] Forked 24877 +(24877) found +[12911] Forked 24878 +(24878) found +[12910] Forked 24879 +(24879) found +[12909] Forked 24880 +(24880) found +[12908] Forked 24881 +(24881) found +[12907] Forked 24882 +(24882) found +[12906] Forked 24883 +(24883) found +[12905] Forked 24884 +(24884) found +[12904] Forked 24885 +(24885) found +[12903] Forked 24886 +(24886) found +[12902] Forked 24887 +(24887) found +[12901] Forked 24888 +(24888) found +[12900] Forked 24889 +(24889) found +[12899] Forked 24890 +[12898] Forked 24891 +(24890) found +(24891) found +[12897] Forked 24892 +[12896] Forked 24893 +(24892) found +(24893) found +[12895] Forked 24894 +[12894] Forked 24895 +(24894) found +(24895) found +[12893] Forked 24896 +[12892] Forked 24897 +(24896) found +(24897) found +[12891] Forked 24898 +[12890] Forked 24899 +(24898) found +(24899) found +[12889] Forked 24900 +[12888] Forked 24901 +(24900) found +(24901) found +[12887] Forked 24902 +[12886] Forked 24903 +(24902) found +(24903) found +[12885] Forked 24904 +[12884] Forked 24905 +(24904) found +(24905) found +[12883] Forked 24906 +[12882] Forked 24907 +(24906) found +(24907) found +[12881] Forked 24908 +[12880] Forked 24909 +(24908) found +(24909) found +[12879] Forked 24910 +[12878] Forked 24911 +(24910) found +(24911) found +[12877] Forked 24912 +[12876] Forked 24913 +(24912) found +(24913) found +[12875] Forked 24914 +[12874] Forked 24915 +(24914) found +(24915) found +[12873] Forked 24916 +[12872] Forked 24917 +(24916) found +(24917) found +[12871] Forked 24918 +[12870] Forked 24919 +(24918) found +(24919) found +[12869] Forked 24920 +[12868] Forked 24921 +(24920) found +(24921) found +[12867] Forked 24922 +[12866] Forked 24923 +(24922) found +(24923) found +[12865] Forked 24924 +[12864] Forked 24925 +(24924) found +(24925) found +[12863] Forked 24926 +[12862] Forked 24927 +(24926) found +(24927) found +[12861] Forked 24928 +[12860] Forked 24929 +(24928) found +(24929) found +[12859] Forked 24930 +[12858] Forked 24931 +(24930) found +(24931) found +[12857] Forked 24932 +[12856] Forked 24933 +(24932) found +(24933) found +[12855] Forked 24934 +[12854] Forked 24935 +(24934) found +(24935) found +[12853] Forked 24936 +[12852] Forked 24937 +(24936) found +(24937) found +[12851] Forked 24938 +[12850] Forked 24939 +(24938) found +(24939) found +[12849] Forked 24940 +[12848] Forked 24941 +(24940) found +(24941) found +[12847] Forked 24942 +[12846] Forked 24943 +(24942) found +(24943) found +[12845] Forked 24944 +[12844] Forked 24945 +(24944) found +(24945) found +[12843] Forked 24946 +[12842] Forked 24947 +(24946) found +(24947) found +[12841] Forked 24948 +(24948) found +[12840] Forked 24949 +(24949) found +[12839] Forked 24950 +[12838] Forked 24951 +(24950) found +(24951) found +[12837] Forked 24952 +[12836] Forked 24953 +(24952) found +(24953) found +[12835] Forked 24954 +[12834] Forked 24955 +(24954) found +(24955) found +[12833] Forked 24956 +[12832] Forked 24957 +(24956) found +(24957) found +[12831] Forked 24958 +[12830] Forked 24959 +(24958) found +(24959) found +[12829] Forked 24960 +[12828] Forked 24961 +(24960) found +(24961) found +[12827] Forked 24962 +[12826] Forked 24963 +(24962) found +(24963) found +[12825] Forked 24964 +[12824] Forked 24965 +(24964) found +(24965) found +[12823] Forked 24966 +[12822] Forked 24967 +(24966) found +(24967) found +[12821] Forked 24968 +[12820] Forked 24969 +(24968) found +(24969) found +[12819] Forked 24970 +[12818] Forked 24971 +(24970) found +(24971) found +[12817] Forked 24972 +[12816] Forked 24973 +(24972) found +(24973) found +[12815] Forked 24974 +[12814] Forked 24975 +(24974) found +(24975) found +[12813] Forked 24976 +[12812] Forked 24977 +(24976) found +(24977) found +[12811] Forked 24978 +[12810] Forked 24979 +(24978) found +(24979) found +[12809] Forked 24980 +[12808] Forked 24981 +(24980) found +(24981) found +[12807] Forked 24982 +[12806] Forked 24983 +(24982) found +(24983) found +[12805] Forked 24984 +[12804] Forked 24985 +(24984) found +(24985) found +[12803] Forked 24986 +[12802] Forked 24987 +(24986) found +(24987) found +[12801] Forked 24988 +[12800] Forked 24989 +(24988) found +(24989) found +[12799] Forked 24990 +[12798] Forked 24991 +(24990) found +(24991) found +[12797] Forked 24992 +[12796] Forked 24993 +(24992) found +(24993) found +[12795] Forked 24994 +[12794] Forked 24996 +(24994) found +(24996) found +[12793] Forked 24997 +[12792] Forked 24998 +(24997) found +(24998) found +[12791] Forked 24999 +[12790] Forked 25000 +(24999) found +(25000) found +[12789] Forked 25001 +[12788] Forked 25002 +(25001) found +(25002) found +[12787] Forked 25003 +[12786] Forked 25004 +(25003) found +(25004) found +[12785] Forked 25005 +[12784] Forked 25006 +(25005) found +(25006) found +[12783] Forked 25007 +[12782] Forked 25008 +(25007) found +(25008) found +[12781] Forked 25009 +[12780] Forked 25010 +(25009) found +(25010) found +[12779] Forked 25011 +[12778] Forked 25012 +(25011) found +(25012) found +[12777] Forked 25013 +[12776] Forked 25014 +(25013) found +(25014) found +[12775] Forked 25015 +[12774] Forked 25016 +(25015) found +(25016) found +[12773] Forked 25017 +[12772] Forked 25018 +(25017) found +(25018) found +[12771] Forked 25019 +[12770] Forked 25020 +(25019) found +(25020) found +[12769] Forked 25021 +[12768] Forked 25023 +(25021) found +(25023) found +[12767] Forked 25024 +(25024) found +[12766] Forked 25025 +(25025) found +[12765] Forked 25026 +(25026) found +[12764] Forked 25027 +(25027) found +[12763] Forked 25028 +(25028) found +[12762] Forked 25029 +(25029) found +[12761] Forked 25030 +(25030) found +[12760] Forked 25031 +(25031) found +[12759] Forked 25032 +(25032) found +[12758] Forked 25033 +(25033) found +[12757] Forked 25034 +(25034) found +[12756] Forked 25035 +(25035) found +[12755] Forked 25036 +(25036) found +[12754] Forked 25037 +(25037) found +[12753] Forked 25038 +(25038) found +[12752] Forked 25039 +(25039) found +[12751] Forked 25040 +(25040) found +[12750] Forked 25041 +(25041) found +[12749] Forked 25042 +(25042) found +[12748] Forked 25043 +(25043) found +[12747] Forked 25044 +(25044) found +[12746] Forked 25045 +(25045) found +[12745] Forked 25046 +(25046) found +[12744] Forked 25047 +(25047) found +[12743] Forked 25048 +(25048) found +[12742] Forked 25049 +(25049) found +[12741] Forked 25050 +(25050) found +[12740] Forked 25051 +(25051) found +[12739] Forked 25052 +(25052) found +[12738] Forked 25053 +(25053) found +[12737] Forked 25054 +(25054) found +[12736] Forked 25055 +(25055) found +[12735] Forked 25056 +(25056) found +[12734] Forked 25057 +(25057) found +[12733] Forked 25058 +(25058) found +[12732] Forked 25059 +(25059) found +[12731] Forked 25060 +(25060) found +[12730] Forked 25061 +(25061) found +[12729] Forked 25062 +[12728] Forked 25063 +(25063) found +(25062) found +[12727] Forked 25064 +(25064) found +[12726] Forked 25065 +(25065) found +[12725] Forked 25066 +(25066) found +[12724] Forked 25067 +(25067) found +[12723] Forked 25068 +(25068) found +[12722] Forked 25069 +(25069) found +[12721] Forked 25070 +(25070) found +[12720] Forked 25071 +(25071) found +[12719] Forked 25072 +(25072) found +[12718] Forked 25073 +(25073) found +[12717] Forked 25074 +(25074) found +[12716] Forked 25075 +(25075) found +[12715] Forked 25076 +(25076) found +[12714] Forked 25077 +(25077) found +[12713] Forked 25078 +(25078) found +[12712] Forked 25079 +(25079) found +[12711] Forked 25080 +(25080) found +[12710] Forked 25081 +(25081) found +[12709] Forked 25082 +(25082) found +[12708] Forked 25083 +(25083) found +[12707] Forked 25084 +(25084) found +[12706] Forked 25085 +(25085) found +[12705] Forked 25086 +(25086) found +[12704] Forked 25087 +(25087) found +[12703] Forked 25088 +(25088) found +[12702] Forked 25089 +(25089) found +[12701] Forked 25090 +(25090) found +[12700] Forked 25091 +(25091) found +[12699] Forked 25092 +(25092) found +[12698] Forked 25093 +(25093) found +[12697] Forked 25094 +(25094) found +[12696] Forked 25095 +(25095) found +[12695] Forked 25096 +(25096) found +[12694] Forked 25097 +(25097) found +[12693] Forked 25098 +(25098) found +[12692] Forked 25099 +(25099) found +[12691] Forked 25100 +(25100) found +[12690] Forked 25101 +(25101) found +[12689] Forked 25102 +(25102) found +[12688] Forked 25103 +(25103) found +[12687] Forked 25104 +(25104) found +[12686] Forked 25105 +(25105) found +[12685] Forked 25106 +(25106) found +[12684] Forked 25107 +(25107) found +[12683] Forked 25108 +(25108) found +[12682] Forked 25109 +(25109) found +[12681] Forked 25110 +(25110) found +[12680] Forked 25111 +(25111) found +[12679] Forked 25112 +(25112) found +[12678] Forked 25113 +(25113) found +[12677] Forked 25114 +(25114) found +[12676] Forked 25115 +(25115) found +[12675] Forked 25116 +(25116) found +[12674] Forked 25117 +(25117) found +[12673] Forked 25118 +(25118) found +[12672] Forked 25119 +(25119) found +[12671] Forked 25120 +(25120) found +[12670] Forked 25121 +(25121) found +[12669] Forked 25122 +(25122) found +[12668] Forked 25123 +(25123) found +[12667] Forked 25124 +(25124) found +[12666] Forked 25125 +(25125) found +[12665] Forked 25126 +(25126) found +[12664] Forked 25127 +(25127) found +[12663] Forked 25128 +(25128) found +[12662] Forked 25129 +(25129) found +[12661] Forked 25130 +(25130) found +[12660] Forked 25131 +(25131) found +[12659] Forked 25132 +[12658] Forked 25133 +(25132) found +(25133) found +[12657] Forked 25134 +[12656] Forked 25135 +(25134) found +(25135) found +[12655] Forked 25136 +[12654] Forked 25137 +(25136) found +(25137) found +[12653] Forked 25138 +[12652] Forked 25139 +(25138) found +(25139) found +[12651] Forked 25140 +[12650] Forked 25141 +(25140) found +(25141) found +[12649] Forked 25142 +[12648] Forked 25143 +(25142) found +(25143) found +[12647] Forked 25144 +[12646] Forked 25145 +(25144) found +(25145) found +[12645] Forked 25146 +[12644] Forked 25147 +(25146) found +(25147) found +[12643] Forked 25148 +[12642] Forked 25149 +(25148) found +(25149) found +[12641] Forked 25150 +[12640] Forked 25151 +(25150) found +(25151) found +[12639] Forked 25152 +[12638] Forked 25153 +(25152) found +(25153) found +[12637] Forked 25154 +[12636] Forked 25155 +(25154) found +(25155) found +[12635] Forked 25156 +[12634] Forked 25157 +(25156) found +(25157) found +[12633] Forked 25158 +[12632] Forked 25159 +(25158) found +(25159) found +[12631] Forked 25160 +[12630] Forked 25161 +(25160) found +(25161) found +[12629] Forked 25162 +[12628] Forked 25163 +(25162) found +(25163) found +[12627] Forked 25164 +[12626] Forked 25165 +(25164) found +(25165) found +[12625] Forked 25166 +[12624] Forked 25167 +(25166) found +(25167) found +[12623] Forked 25168 +[12622] Forked 25169 +(25168) found +(25169) found +[12621] Forked 25170 +[12620] Forked 25171 +(25170) found +(25171) found +[12619] Forked 25172 +[12618] Forked 25173 +(25172) found +(25173) found +[12617] Forked 25174 +[12616] Forked 25175 +(25174) found +(25175) found +[12615] Forked 25176 +[12614] Forked 25177 +(25176) found +(25177) found +[12613] Forked 25178 +[12612] Forked 25179 +(25178) found +(25179) found +[12611] Forked 25180 +[12610] Forked 25181 +(25180) found +(25181) found +[12609] Forked 25182 +[12608] Forked 25183 +(25182) found +(25183) found +[12607] Forked 25184 +[12606] Forked 25185 +(25184) found +(25185) found +[12605] Forked 25186 +[12604] Forked 25187 +(25186) found +(25187) found +[12603] Forked 25188 +[12602] Forked 25189 +(25188) found +(25189) found +[12601] Forked 25190 +[12600] Forked 25191 +(25190) found +(25191) found +[12599] Forked 25192 +[12598] Forked 25193 +(25192) found +(25193) found +[12597] Forked 25194 +[12596] Forked 25195 +(25194) found +(25195) found +[12595] Forked 25196 +[12594] Forked 25197 +(25196) found +(25197) found +[12593] Forked 25198 +[12592] Forked 25199 +(25198) found +(25199) found +[12591] Forked 25200 +[12590] Forked 25201 +(25200) found +(25201) found +[12589] Forked 25202 +[12588] Forked 25203 +(25202) found +(25203) found +[12587] Forked 25204 +[12586] Forked 25205 +(25204) found +(25205) found +[12585] Forked 25206 +[12584] Forked 25207 +(25206) found +(25207) found +[12583] Forked 25208 +[12582] Forked 25209 +(25208) found +(25209) found +[12581] Forked 25210 +[12580] Forked 25211 +(25210) found +(25211) found +[12579] Forked 25212 +[12578] Forked 25213 +(25212) found +(25213) found +[12577] Forked 25214 +[12576] Forked 25215 +(25214) found +(25215) found +[12575] Forked 25216 +[12574] Forked 25217 +(25216) found +(25217) found +[12573] Forked 25218 +[12572] Forked 25219 +(25218) found +(25219) found +[12571] Forked 25220 +[12570] Forked 25221 +(25220) found +(25221) found +[12569] Forked 25222 +[12568] Forked 25223 +(25222) found +(25223) found +[12567] Forked 25224 +(25224) found +[12566] Forked 25225 +(25225) found +[12565] Forked 25226 +(25226) found +[12564] Forked 25227 +(25227) found +[12563] Forked 25228 +(25228) found +[12562] Forked 25229 +(25229) found +[12561] Forked 25230 +(25230) found +[12560] Forked 25231 +(25231) found +[12559] Forked 25232 +(25232) found +[12558] Forked 25233 +(25233) found +[12557] Forked 25234 +(25234) found +[12556] Forked 25235 +(25235) found +[12555] Forked 25236 +(25236) found +[12554] Forked 25237 +(25237) found +[12553] Forked 25238 +(25238) found +[12552] Forked 25239 +(25239) found +[12551] Forked 25240 +(25240) found +[12550] Forked 25241 +(25241) found +[12549] Forked 25242 +(25242) found +[12548] Forked 25243 +(25243) found +[12547] Forked 25244 +(25244) found +[12546] Forked 25245 +(25245) found +[12545] Forked 25246 +(25246) found +[12544] Forked 25247 +(25247) found +[12543] Forked 25248 +(25248) found +[12542] Forked 25249 +(25249) found +[12541] Forked 25250 +(25250) found +[12540] Forked 25251 +(25251) found +[12539] Forked 25252 +(25252) found +[12538] Forked 25253 +(25253) found +[12537] Forked 25254 +(25254) found +[12536] Forked 25255 +(25255) found +[12535] Forked 25256 +(25256) found +[12534] Forked 25257 +(25257) found +[12533] Forked 25258 +(25258) found +[12532] Forked 25259 +(25259) found +[12531] Forked 25260 +(25260) found +[12530] Forked 25261 +[12529] Forked 25262 +(25261) found +(25262) found +[12528] Forked 25263 +[12527] Forked 25264 +(25263) found +(25264) found +[12526] Forked 25265 +[12525] Forked 25266 +(25265) found +(25266) found +[12524] Forked 25267 +[12523] Forked 25268 +(25267) found +(25268) found +[12522] Forked 25269 +[12521] Forked 25270 +(25269) found +(25270) found +[12520] Forked 25271 +[12519] Forked 25273 +(25271) found +(25273) found +[12518] Forked 25274 +(25274) found +[12517] Forked 25275 +(25275) found +[12516] Forked 25276 +(25276) found +[12515] Forked 25277 +(25277) found +[12514] Forked 25278 +(25278) found +[12513] Forked 25279 +(25279) found +[12512] Forked 25280 +(25280) found +[12511] Forked 25281 +(25281) found +[12510] Forked 25282 +(25282) found +[12509] Forked 25283 +(25283) found +[12508] Forked 25284 +(25284) found +[12507] Forked 25285 +(25285) found +[12506] Forked 25286 +(25286) found +[12505] Forked 25287 +(25287) found +[12504] Forked 25288 +(25288) found +[12503] Forked 25289 +(25289) found +[12502] Forked 25290 +(25290) found +[12501] Forked 25291 +(25291) found +[12500] Forked 25292 +(25292) found +[12499] Forked 25293 +[12498] Forked 25294 +(25293) found +(25294) found +[12497] Forked 25295 +[12496] Forked 25296 +(25295) found +(25296) found +[12495] Forked 25297 +[12494] Forked 25298 +(25297) found +(25298) found +[12493] Forked 25299 +[12492] Forked 25300 +(25299) found +(25300) found +[12491] Forked 25301 +[12490] Forked 25302 +(25301) found +(25302) found +[12489] Forked 25303 +[12488] Forked 25304 +(25303) found +(25304) found +[12487] Forked 25305 +[12486] Forked 25306 +(25305) found +(25306) found +[12485] Forked 25307 +[12484] Forked 25308 +(25307) found +(25308) found +[12483] Forked 25309 +[12482] Forked 25310 +(25309) found +(25310) found +[12481] Forked 25311 +[12480] Forked 25312 +(25311) found +(25312) found +[12479] Forked 25313 +[12478] Forked 25314 +(25313) found +(25314) found +[12477] Forked 25315 +[12476] Forked 25316 +(25315) found +(25316) found +[12475] Forked 25317 +[12474] Forked 25318 +(25317) found +(25318) found +[12473] Forked 25319 +[12472] Forked 25320 +(25319) found +(25320) found +[12471] Forked 25321 +[12470] Forked 25322 +(25321) found +(25322) found +[12469] Forked 25323 +[12468] Forked 25324 +(25323) found +(25324) found +[12467] Forked 25325 +[12466] Forked 25326 +(25325) found +(25326) found +[12465] Forked 25327 +[12464] Forked 25328 +(25327) found +(25328) found +[12463] Forked 25329 +[12462] Forked 25330 +(25329) found +(25330) found +[12461] Forked 25331 +[12460] Forked 25332 +(25331) found +(25332) found +[12459] Forked 25333 +[12458] Forked 25334 +(25333) found +(25334) found +[12457] Forked 25335 +[12456] Forked 25336 +(25335) found +(25336) found +[12455] Forked 25337 +[12454] Forked 25338 +(25337) found +(25338) found +[12453] Forked 25339 +[12452] Forked 25340 +(25339) found +(25340) found +[12451] Forked 25341 +[12450] Forked 25342 +(25341) found +(25342) found +[12449] Forked 25343 +[12448] Forked 25344 +(25343) found +(25344) found +[12447] Forked 25345 +(25345) found +[12446] Forked 25346 +(25346) found +[12445] Forked 25347 +(25347) found +[12444] Forked 25348 +(25348) found +[12443] Forked 25349 +(25349) found +[12442] Forked 25350 +(25350) found +[12441] Forked 25351 +(25351) found +[12440] Forked 25352 +(25352) found +[12439] Forked 25353 +(25353) found +[12438] Forked 25354 +(25354) found +[12437] Forked 25355 +(25355) found +[12436] Forked 25356 +(25356) found +[12435] Forked 25357 +(25357) found +[12434] Forked 25358 +(25358) found +[12433] Forked 25359 +(25359) found +[12432] Forked 25360 +(25360) found +[12431] Forked 25361 +(25361) found +[12430] Forked 25362 +(25362) found +[12429] Forked 25363 +(25363) found +[12428] Forked 25364 +(25364) found +[12427] Forked 25365 +(25365) found +[12426] Forked 25366 +(25366) found +[12425] Forked 25367 +(25367) found +[12424] Forked 25368 +(25368) found +[12423] Forked 25369 +(25369) found +[12422] Forked 25370 +(25370) found +[12421] Forked 25371 +(25371) found +[12420] Forked 25372 +(25372) found +[12419] Forked 25373 +(25373) found +[12418] Forked 25374 +(25374) found +[12417] Forked 25375 +(25375) found +[12416] Forked 25376 +(25376) found +[12415] Forked 25377 +(25377) found +[12414] Forked 25378 +(25378) found +[12413] Forked 25379 +(25379) found +[12412] Forked 25380 +(25380) found +[12411] Forked 25381 +[12410] Forked 25382 +(25381) found +(25382) found +[12409] Forked 25383 +(25383) found +[12408] Forked 25384 +(25384) found +[12407] Forked 25385 +(25385) found +[12406] Forked 25386 +(25386) found +[12405] Forked 25387 +(25387) found +[12404] Forked 25388 +(25388) found +[12403] Forked 25389 +(25389) found +[12402] Forked 25390 +[12401] Forked 25391 +(25390) found +(25391) found +[12400] Forked 25392 +[12399] Forked 25393 +(25392) found +(25393) found +[12398] Forked 25394 +[12397] Forked 25395 +(25394) found +(25395) found +[12396] Forked 25396 +[12395] Forked 25397 +(25396) found +(25397) found +[12394] Forked 25398 +[12393] Forked 25399 +(25398) found +(25399) found +[12392] Forked 25400 +[12391] Forked 25401 +(25400) found +(25401) found +[12390] Forked 25402 +[12389] Forked 25403 +(25402) found +(25403) found +[12388] Forked 25404 +[12387] Forked 25405 +(25404) found +(25405) found +[12386] Forked 25406 +[12385] Forked 25407 +(25406) found +(25407) found +[12384] Forked 25408 +[12383] Forked 25409 +(25408) found +(25409) found +[12382] Forked 25410 +[12381] Forked 25411 +(25410) found +(25411) found +[12380] Forked 25412 +[12379] Forked 25413 +(25412) found +(25413) found +[12378] Forked 25414 +[12377] Forked 25416 +(25414) found +(25416) found +[12376] Forked 25417 +[12375] Forked 25418 +(25417) found +(25418) found +[12374] Forked 25419 +[12373] Forked 25420 +(25419) found +(25420) found +[12372] Forked 25421 +[12371] Forked 25422 +(25421) found +(25422) found +[12370] Forked 25423 +[12369] Forked 25424 +(25423) found +(25424) found +[12368] Forked 25426 +[12367] Forked 25428 +(25426) found +(25428) found +[12366] Forked 25430 +[12365] Forked 25431 +(25430) found +(25431) found +[12364] Forked 25432 +[12363] Forked 25433 +(25432) found +(25433) found +[12362] Forked 25434 +[12361] Forked 25435 +(25434) found +(25435) found +[12360] Forked 25436 +[12359] Forked 25437 +(25436) found +(25437) found +[12358] Forked 25438 +[12357] Forked 25439 +(25438) found +(25439) found +[12356] Forked 25440 +[12355] Forked 25441 +(25440) found +(25441) found +[12354] Forked 25442 +[12353] Forked 25443 +(25442) found +(25443) found +[12352] Forked 25444 +[12351] Forked 25449 +(25444) found +(25449) found +[12350] Forked 25450 +[12349] Forked 25451 +(25450) found +(25451) found +[12348] Forked 25452 +[12347] Forked 25453 +(25452) found +(25453) found +[12346] Forked 25454 +[12345] Forked 25455 +(25454) found +(25455) found +[12344] Forked 25456 +[12343] Forked 25457 +(25456) found +(25457) found +[12342] Forked 25458 +[12341] Forked 25459 +(25458) found +(25459) found +[12340] Forked 25460 +[12339] Forked 25461 +(25460) found +(25461) found +[12338] Forked 25462 +[12337] Forked 25463 +(25462) found +(25463) found +[12336] Forked 25464 +[12335] Forked 25465 +(25464) found +(25465) found +[12334] Forked 25466 +[12333] Forked 25467 +(25466) found +(25467) found +[12332] Forked 25468 +[12331] Forked 25469 +(25468) found +(25469) found +[12330] Forked 25470 +[12329] Forked 25471 +(25470) found +(25471) found +[12328] Forked 25472 +[12327] Forked 25474 +(25472) found +(25474) found +[12326] Forked 25475 +(25475) found +[12325] Forked 25476 +(25476) found +[12324] Forked 25477 +(25477) found +[12323] Forked 25478 +(25478) found +[12322] Forked 25479 +(25479) found +[12321] Forked 25480 +(25480) found +[12320] Forked 25481 +(25481) found +[12319] Forked 25482 +(25482) found +[12318] Forked 25483 +(25483) found +[12317] Forked 25484 +(25484) found +[12316] Forked 25485 +(25485) found +[12315] Forked 25486 +(25486) found +[12314] Forked 25487 +(25487) found +[12313] Forked 25488 +(25488) found +[12312] Forked 25489 +(25489) found +[12311] Forked 25490 +(25490) found +[12310] Forked 25491 +(25491) found +[12309] Forked 25492 +(25492) found +[12308] Forked 25493 +(25493) found +[12307] Forked 25494 +(25494) found +[12306] Forked 25495 +(25495) found +[12305] Forked 25496 +(25496) found +[12304] Forked 25497 +(25497) found +[12303] Forked 25498 +(25498) found +[12302] Forked 25499 +(25499) found +[12301] Forked 25500 +(25500) found +[12300] Forked 25501 +(25501) found +[12299] Forked 25502 +(25502) found +[12298] Forked 25503 +(25503) found +[12297] Forked 25504 +(25504) found +[12296] Forked 25505 +(25505) found +[12295] Forked 25506 +(25506) found +[12294] Forked 25507 +(25507) found +[12293] Forked 25508 +(25508) found +[12292] Forked 25509 +(25509) found +[12291] Forked 25510 +(25510) found +[12290] Forked 25511 +(25511) found +[12289] Forked 25512 +(25512) found +[12288] Forked 25513 +(25513) found +[12287] Forked 25514 +[12286] Forked 25515 +(25514) found +(25515) found +[12285] Forked 25516 +[12284] Forked 25517 +(25516) found +(25517) found +[12283] Forked 25518 +[12282] Forked 25519 +(25518) found +(25519) found +[12281] Forked 25520 +[12280] Forked 25521 +(25520) found +(25521) found +[12279] Forked 25522 +[12278] Forked 25523 +(25522) found +(25523) found +[12277] Forked 25524 +[12276] Forked 25525 +(25524) found +(25525) found +[12275] Forked 25526 +[12274] Forked 25527 +(25526) found +(25527) found +[12273] Forked 25528 +[12272] Forked 25529 +(25528) found +(25529) found +[12271] Forked 25530 +[12270] Forked 25531 +(25530) found +(25531) found +[12269] Forked 25532 +[12268] Forked 25533 +(25532) found +(25533) found +[12267] Forked 25534 +[12266] Forked 25535 +(25534) found +(25535) found +[12265] Forked 25536 +[12264] Forked 25537 +(25536) found +(25537) found +[12263] Forked 25538 +[12262] Forked 25539 +(25538) found +(25539) found +[12261] Forked 25540 +[12260] Forked 25541 +(25540) found +(25541) found +[12259] Forked 25542 +[12258] Forked 25543 +(25542) found +(25543) found +[12257] Forked 25544 +[12256] Forked 25545 +(25544) found +(25545) found +[12255] Forked 25546 +[12254] Forked 25547 +(25546) found +(25547) found +[12253] Forked 25548 +[12252] Forked 25549 +(25548) found +(25549) found +[12251] Forked 25550 +[12250] Forked 25551 +(25550) found +(25551) found +[12249] Forked 25552 +[12248] Forked 25553 +(25552) found +(25553) found +[12247] Forked 25554 +[12246] Forked 25555 +(25554) found +(25555) found +[12245] Forked 25556 +[12244] Forked 25557 +(25556) found +(25557) found +[12243] Forked 25558 +(25558) found +[12242] Forked 25559 +(25559) found +[12241] Forked 25560 +(25560) found +[12240] Forked 25561 +(25561) found +[12239] Forked 25562 +(25562) found +[12238] Forked 25563 +(25563) found +[12237] Forked 25564 +(25564) found +[12236] Forked 25565 +(25565) found +[12235] Forked 25566 +(25566) found +[12234] Forked 25567 +(25567) found +[12233] Forked 25568 +(25568) found +[12232] Forked 25569 +(25569) found +[12231] Forked 25570 +(25570) found +[12230] Forked 25571 +(25571) found +[12229] Forked 25572 +(25572) found +[12228] Forked 25573 +(25573) found +[12227] Forked 25574 +(25574) found +[12226] Forked 25575 +(25575) found +[12225] Forked 25576 +(25576) found +[12224] Forked 25577 +(25577) found +[12223] Forked 25578 +(25578) found +[12222] Forked 25579 +(25579) found +[12221] Forked 25580 +(25580) found +[12220] Forked 25581 +(25581) found +[12219] Forked 25582 +(25582) found +[12218] Forked 25583 +(25583) found +[12217] Forked 25584 +(25584) found +[12216] Forked 25585 +(25585) found +[12215] Forked 25586 +(25586) found +[12214] Forked 25587 +(25587) found +[12213] Forked 25588 +(25588) found +[12212] Forked 25589 +(25589) found +[12211] Forked 25590 +(25590) found +[12210] Forked 25591 +(25591) found +[12209] Forked 25592 +(25592) found +[12208] Forked 25593 +(25593) found +[12207] Forked 25595 +(25595) found +[12206] Forked 25596 +(25596) found +[12205] Forked 25597 +(25597) found +[12204] Forked 25598 +(25598) found +[12203] Forked 25599 +(25599) found +[12202] Forked 25600 +(25600) found +[12201] Forked 25601 +(25601) found +[12200] Forked 25602 +(25602) found +[12199] Forked 25603 +(25603) found +[12198] Forked 25604 +(25604) found +[12197] Forked 25605 +(25605) found +[12196] Forked 25606 +(25606) found +[12195] Forked 25607 +(25607) found +[12194] Forked 25608 +(25608) found +[12193] Forked 25609 +(25609) found +[12192] Forked 25610 +(25610) found +[12191] Forked 25611 +(25611) found +[12190] Forked 25612 +(25612) found +[12189] Forked 25613 +(25613) found +[12188] Forked 25614 +(25614) found +[12187] Forked 25615 +(25615) found +[12186] Forked 25616 +(25616) found +[12185] Forked 25617 +(25617) found +[12184] Forked 25618 +(25618) found +[12183] Forked 25619 +(25619) found +[12182] Forked 25620 +(25620) found +[12181] Forked 25621 +(25621) found +[12180] Forked 25622 +(25622) found +[12179] Forked 25623 +(25623) found +[12178] Forked 25624 +(25624) found +[12177] Forked 25625 +(25625) found +[12176] Forked 25626 +(25626) found +[12175] Forked 25627 +(25627) found +[12174] Forked 25628 +(25628) found +[12173] Forked 25629 +(25629) found +[12172] Forked 25630 +(25630) found +[12171] Forked 25631 +(25631) found +[12170] Forked 25632 +(25632) found +[12169] Forked 25633 +(25633) found +[12168] Forked 25634 +(25634) found +[12167] Forked 25635 +(25635) found +[12166] Forked 25636 +[12165] Forked 25637 +(25636) found +(25637) found +[12164] Forked 25638 +[12163] Forked 25639 +(25638) found +(25639) found +[12162] Forked 25640 +[12161] Forked 25641 +(25640) found +(25641) found +[12160] Forked 25642 +[12159] Forked 25643 +(25642) found +(25643) found +[12158] Forked 25644 +[12157] Forked 25645 +(25644) found +(25645) found +[12156] Forked 25646 +[12155] Forked 25647 +(25646) found +(25647) found +[12154] Forked 25648 +[12153] Forked 25649 +(25648) found +(25649) found +[12152] Forked 25650 +[12151] Forked 25651 +(25650) found +(25651) found +[12150] Forked 25652 +[12149] Forked 25653 +(25652) found +(25653) found +[12148] Forked 25654 +[12147] Forked 25655 +(25654) found +(25655) found +[12146] Forked 25656 +[12145] Forked 25657 +(25656) found +(25657) found +[12144] Forked 25658 +[12143] Forked 25659 +(25658) found +(25659) found +[12142] Forked 25660 +[12141] Forked 25661 +(25660) found +(25661) found +[12140] Forked 25662 +[12139] Forked 25663 +(25662) found +(25663) found +[12138] Forked 25664 +[12137] Forked 25665 +(25664) found +(25665) found +[12136] Forked 25666 +[12135] Forked 25667 +(25666) found +(25667) found +[12134] Forked 25668 +[12133] Forked 25669 +(25668) found +(25669) found +[12132] Forked 25670 +[12131] Forked 25671 +(25670) found +(25671) found +[12130] Forked 25672 +[12129] Forked 25673 +(25672) found +(25673) found +[12128] Forked 25674 +[12127] Forked 25675 +(25674) found +(25675) found +[12126] Forked 25676 +[12125] Forked 25677 +(25676) found +(25677) found +[12124] Forked 25678 +[12123] Forked 25679 +(25678) found +(25679) found +[12122] Forked 25680 +[12121] Forked 25681 +(25680) found +(25681) found +[12120] Forked 25682 +[12119] Forked 25683 +(25682) found +(25683) found +[12118] Forked 25684 +[12117] Forked 25685 +(25684) found +(25685) found +[12116] Forked 25686 +[12115] Forked 25687 +(25686) found +(25687) found +[12114] Forked 25688 +[12113] Forked 25689 +(25688) found +(25689) found +[12112] Forked 25690 +[12111] Forked 25691 +(25690) found +(25691) found +[12110] Forked 25692 +[12109] Forked 25693 +(25692) found +(25693) found +[12108] Forked 25694 +[12107] Forked 25695 +(25694) found +(25695) found +[12106] Forked 25696 +[12105] Forked 25697 +(25696) found +(25697) found +[12104] Forked 25698 +[12103] Forked 25699 +(25698) found +(25699) found +[12102] Forked 25700 +[12101] Forked 25701 +(25700) found +(25701) found +[12100] Forked 25702 +[12099] Forked 25703 +(25702) found +(25703) found +[12098] Forked 25704 +[12097] Forked 25705 +(25704) found +(25705) found +[12096] Forked 25706 +[12095] Forked 25707 +(25706) found +(25707) found +[12094] Forked 25708 +[12093] Forked 25709 +(25708) found +(25709) found +[12092] Forked 25710 +[12091] Forked 25711 +(25710) found +(25711) found +[12090] Forked 25712 +[12089] Forked 25713 +(25712) found +(25713) found +[12088] Forked 25714 +[12087] Forked 25715 +(25714) found +(25715) found +[12086] Forked 25716 +[12085] Forked 25717 +(25716) found +(25717) found +[12084] Forked 25718 +[12083] Forked 25719 +(25718) found +(25719) found +[12082] Forked 25720 +[12081] Forked 25721 +(25720) found +(25721) found +[12080] Forked 25722 +[12079] Forked 25723 +(25722) found +(25723) found +[12078] Forked 25724 +[12077] Forked 25725 +(25724) found +(25725) found +[12076] Forked 25726 +(25726) found +[12075] Forked 25727 +(25727) found +[12074] Forked 25728 +(25728) found +[12073] Forked 25729 +(25729) found +[12072] Forked 25730 +(25730) found +[12071] Forked 25731 +(25731) found +[12070] Forked 25732 +(25732) found +[12069] Forked 25733 +(25733) found +[12068] Forked 25734 +(25734) found +[12067] Forked 25735 +(25735) found +[12066] Forked 25736 +(25736) found +[12065] Forked 25737 +(25737) found +[12064] Forked 25738 +(25738) found +[12063] Forked 25739 +(25739) found +[12062] Forked 25740 +(25740) found +[12061] Forked 25741 +(25741) found +[12060] Forked 25742 +(25742) found +[12059] Forked 25743 +(25743) found +[12058] Forked 25744 +(25744) found +[12057] Forked 25745 +(25745) found +[12056] Forked 25746 +(25746) found +[12055] Forked 25747 +(25747) found +[12054] Forked 25748 +(25748) found +[12053] Forked 25749 +(25749) found +[12052] Forked 25750 +(25750) found +[12051] Forked 25751 +(25751) found +[12050] Forked 25752 +(25752) found +[12049] Forked 25753 +(25753) found +[12048] Forked 25754 +(25754) found +[12047] Forked 25755 +(25755) found +[12046] Forked 25756 +(25756) found +[12045] Forked 25757 +(25757) found +[12044] Forked 25758 +(25758) found +[12043] Forked 25759 +(25759) found +[12042] Forked 25760 +(25760) found +[12041] Forked 25761 +(25761) found +[12040] Forked 25762 +(25762) found +[12039] Forked 25763 +(25763) found +[12038] Forked 25764 +[12037] Forked 25765 +(25764) found +(25765) found +[12036] Forked 25766 +[12035] Forked 25767 +(25766) found +(25767) found +[12034] Forked 25768 +[12033] Forked 25769 +(25768) found +(25769) found +[12032] Forked 25770 +[12031] Forked 25771 +(25770) found +(25771) found +[12030] Forked 25772 +[12029] Forked 25774 +(25772) found +(25774) found +[12028] Forked 25775 +[12027] Forked 25776 +(25775) found +(25776) found +[12026] Forked 25777 +[12025] Forked 25778 +(25777) found +(25778) found +[12024] Forked 25779 +[12023] Forked 25780 +(25780) found +(25779) found +[12022] Forked 25781 +(25781) found +[12021] Forked 25782 +(25782) found +[12020] Forked 25783 +(25783) found +[12019] Forked 25784 +(25784) found +[12018] Forked 25785 +(25785) found +[12017] Forked 25786 +(25786) found +[12016] Forked 25787 +(25787) found +[12015] Forked 25788 +(25788) found +[12014] Forked 25789 +(25789) found +[12013] Forked 25790 +(25790) found +[12012] Forked 25791 +(25791) found +[12011] Forked 25792 +(25792) found +[12010] Forked 25793 +(25793) found +[12009] Forked 25794 +(25794) found +[12008] Forked 25795 +(25795) found +[12007] Forked 25796 +(25796) found +[12006] Forked 25797 +(25797) found +[12005] Forked 25798 +(25798) found +[12004] Forked 25799 +(25799) found +[12003] Forked 25800 +(25800) found +[12002] Forked 25801 +(25801) found +[12001] Forked 25802 +(25802) found +[12000] Forked 25803 +(25803) found +[11999] Forked 25804 +(25804) found +[11998] Forked 25805 +(25805) found +[11997] Forked 25806 +(25806) found +[11996] Forked 25807 +(25807) found +[11995] Forked 25808 +(25808) found +[11994] Forked 25809 +(25809) found +[11993] Forked 25810 +(25810) found +[11992] Forked 25811 +(25811) found +[11991] Forked 25812 +(25812) found +[11990] Forked 25813 +(25813) found +[11989] Forked 25814 +(25814) found +[11988] Forked 25815 +(25815) found +[11987] Forked 25816 +(25816) found +[11986] Forked 25817 +(25817) found +[11985] Forked 25818 +(25818) found +[11984] Forked 25819 +(25819) found +[11983] Forked 25820 +(25820) found +[11982] Forked 25821 +(25821) found +[11981] Forked 25822 +(25822) found +[11980] Forked 25823 +(25823) found +[11979] Forked 25824 +(25824) found +[11978] Forked 25825 +(25825) found +[11977] Forked 25826 +(25826) found +[11976] Forked 25827 +(25827) found +[11975] Forked 25828 +(25828) found +[11974] Forked 25829 +(25829) found +[11973] Forked 25830 +(25830) found +[11972] Forked 25831 +(25831) found +[11971] Forked 25832 +(25832) found +[11970] Forked 25833 +(25833) found +[11969] Forked 25834 +(25834) found +[11968] Forked 25835 +(25835) found +[11967] Forked 25836 +[11966] Forked 25837 +(25836) found +(25837) found +[11965] Forked 25838 +[11964] Forked 25839 +(25838) found +(25839) found +[11963] Forked 25840 +[11962] Forked 25841 +(25840) found +(25841) found +[11961] Forked 25842 +[11960] Forked 25843 +(25842) found +(25843) found +[11959] Forked 25844 +[11958] Forked 25845 +(25844) found +(25845) found +[11957] Forked 25846 +[11956] Forked 25847 +(25846) found +(25847) found +[11955] Forked 25848 +[11954] Forked 25849 +(25848) found +(25849) found +[11953] Forked 25850 +[11952] Forked 25851 +(25850) found +(25851) found +[11951] Forked 25852 +[11950] Forked 25853 +(25852) found +(25853) found +[11949] Forked 25854 +[11948] Forked 25855 +(25854) found +(25855) found +[11947] Forked 25856 +[11946] Forked 25857 +(25856) found +(25857) found +[11945] Forked 25858 +[11944] Forked 25859 +(25858) found +(25859) found +[11943] Forked 25860 +[11942] Forked 25861 +(25860) found +(25861) found +[11941] Forked 25862 +[11940] Forked 25863 +(25862) found +(25863) found +[11939] Forked 25864 +[11938] Forked 25865 +(25864) found +(25865) found +[11937] Forked 25866 +[11936] Forked 25867 +(25866) found +(25867) found +[11935] Forked 25868 +[11934] Forked 25869 +(25868) found +(25869) found +[11933] Forked 25870 +[11932] Forked 25871 +(25870) found +(25871) found +[11931] Forked 25872 +[11930] Forked 25873 +(25872) found +(25873) found +[11929] Forked 25874 +[11928] Forked 25875 +(25874) found +(25875) found +[11927] Forked 25876 +[11926] Forked 25877 +(25876) found +(25877) found +[11925] Forked 25878 +[11924] Forked 25879 +(25878) found +(25879) found +[11923] Forked 25880 +(25880) found +[11922] Forked 25881 +(25881) found +[11921] Forked 25882 +(25882) found +[11920] Forked 25883 +(25883) found +[11919] Forked 25884 +(25884) found +[11918] Forked 25885 +(25885) found +[11917] Forked 25886 +(25886) found +[11916] Forked 25887 +(25887) found +[11915] Forked 25888 +(25888) found +[11914] Forked 25889 +(25889) found +[11913] Forked 25890 +(25890) found +[11912] Forked 25891 +(25891) found +[11911] Forked 25892 +(25892) found +[11910] Forked 25893 +(25893) found +[11909] Forked 25894 +(25894) found +[11908] Forked 25895 +(25895) found +[11907] Forked 25896 +(25896) found +[11906] Forked 25897 +(25897) found +[11905] Forked 25898 +(25898) found +[11904] Forked 25899 +(25899) found +[11903] Forked 25900 +(25900) found +[11902] Forked 25901 +(25901) found +[11901] Forked 25902 +(25902) found +[11900] Forked 25903 +(25903) found +[11899] Forked 25904 +(25904) found +[11898] Forked 25905 +(25905) found +[11897] Forked 25906 +(25906) found +[11896] Forked 25907 +(25907) found +[11895] Forked 25908 +(25908) found +[11894] Forked 25909 +(25909) found +[11893] Forked 25910 +(25910) found +[11892] Forked 25911 +(25911) found +[11891] Forked 25912 +(25912) found +[11890] Forked 25913 +(25913) found +[11889] Forked 25914 +(25914) found +[11888] Forked 25915 +(25915) found +[11887] Forked 25916 +(25916) found +[11886] Forked 25917 +[11885] Forked 25918 +(25917) found +(25918) found +[11884] Forked 25919 +[11883] Forked 25920 +(25919) found +(25920) found +[11882] Forked 25921 +[11881] Forked 25922 +(25921) found +(25922) found +[11880] Forked 25923 +[11879] Forked 25924 +(25923) found +(25924) found +[11878] Forked 25925 +[11877] Forked 25926 +(25925) found +(25926) found +[11876] Forked 25927 +[11875] Forked 25928 +(25927) found +(25928) found +[11874] Forked 25929 +[11873] Forked 25930 +(25929) found +(25930) found +[11872] Forked 25931 +[11871] Forked 25932 +(25931) found +(25932) found +[11870] Forked 25933 +[11869] Forked 25934 +(25933) found +(25934) found +[11868] Forked 25935 +[11867] Forked 25936 +(25935) found +(25936) found +[11866] Forked 25937 +[11865] Forked 25938 +(25937) found +(25938) found +[11864] Forked 25939 +[11863] Forked 25940 +(25939) found +(25940) found +[11862] Forked 25941 +[11861] Forked 25942 +(25941) found +(25942) found +[11860] Forked 25943 +[11859] Forked 25944 +(25943) found +(25944) found +[11858] Forked 25945 +[11857] Forked 25946 +(25945) found +(25946) found +[11856] Forked 25947 +[11855] Forked 25948 +(25947) found +(25948) found +[11854] Forked 25949 +[11853] Forked 25950 +(25949) found +(25950) found +[11852] Forked 25951 +[11851] Forked 25952 +(25951) found +(25952) found +[11850] Forked 25953 +[11849] Forked 25954 +(25953) found +(25954) found +[11848] Forked 25955 +[11847] Forked 25956 +(25955) found +(25956) found +[11846] Forked 25957 +[11845] Forked 25958 +(25957) found +(25958) found +[11844] Forked 25959 +[11843] Forked 25960 +(25959) found +(25960) found +[11842] Forked 25961 +[11841] Forked 25962 +(25961) found +(25962) found +[11840] Forked 25963 +[11839] Forked 25964 +(25963) found +(25964) found +[11838] Forked 25965 +[11837] Forked 25966 +(25965) found +(25966) found +[11836] Forked 25967 +[11835] Forked 25968 +(25967) found +(25968) found +[11834] Forked 25969 +[11833] Forked 25970 +(25969) found +(25970) found +[11832] Forked 25971 +[11831] Forked 25972 +(25971) found +(25972) found +[11830] Forked 25973 +[11829] Forked 25974 +(25973) found +(25974) found +[11828] Forked 25975 +[11827] Forked 25976 +(25975) found +(25976) found +[11826] Forked 25977 +[11825] Forked 25978 +(25977) found +(25978) found +[11824] Forked 25979 +[11823] Forked 25980 +(25979) found +(25980) found +[11822] Forked 25981 +[11821] Forked 25982 +(25981) found +(25982) found +[11820] Forked 25983 +[11819] Forked 25984 +(25983) found +(25984) found +[11818] Forked 25985 +[11817] Forked 25986 +(25985) found +(25986) found +[11816] Forked 25987 +[11815] Forked 25988 +(25987) found +(25988) found +[11814] Forked 25989 +[11813] Forked 25990 +(25989) found +(25990) found +[11812] Forked 25991 +[11811] Forked 25992 +(25991) found +(25992) found +[11810] Forked 25993 +[11809] Forked 25994 +(25993) found +(25994) found +[11808] Forked 25995 +[11807] Forked 25996 +(25995) found +(25996) found +[11806] Forked 25997 +[11805] Forked 25998 +(25997) found +(25998) found +[11804] Forked 25999 +[11803] Forked 26000 +(25999) found +(26000) found +[11802] Forked 26001 +(26001) found +[11801] Forked 26002 +[11800] Forked 26003 +(26002) found +(26003) found +[11799] Forked 26004 +[11798] Forked 26005 +(26004) found +(26005) found +[11797] Forked 26006 +[11796] Forked 26007 +(26006) found +(26007) found +[11795] Forked 26008 +[11794] Forked 26009 +(26008) found +(26009) found +[11793] Forked 26010 +[11792] Forked 26011 +(26010) found +(26011) found +[11791] Forked 26012 +[11790] Forked 26013 +(26012) found +(26013) found +[11789] Forked 26014 +[11788] Forked 26015 +(26014) found +(26015) found +[11787] Forked 26016 +[11786] Forked 26017 +(26016) found +(26017) found +[11785] Forked 26018 +[11784] Forked 26019 +(26018) found +(26019) found +[11783] Forked 26020 +[11782] Forked 26021 +(26020) found +(26021) found +[11781] Forked 26022 +[11780] Forked 26023 +(26022) found +(26023) found +[11779] Forked 26024 +[11778] Forked 26025 +(26024) found +(26025) found +[11777] Forked 26026 +[11776] Forked 26027 +(26026) found +(26027) found +[11775] Forked 26028 +[11774] Forked 26029 +(26028) found +(26029) found +[11773] Forked 26030 +[11772] Forked 26031 +(26030) found +(26031) found +[11771] Forked 26032 +[11770] Forked 26033 +(26032) found +(26033) found +[11769] Forked 26034 +[11768] Forked 26035 +(26034) found +(26035) found +[11767] Forked 26036 +[11766] Forked 26037 +(26036) found +(26037) found +[11765] Forked 26038 +[11764] Forked 26039 +(26038) found +(26039) found +[11763] Forked 26040 +[11762] Forked 26041 +(26040) found +(26041) found +[11761] Forked 26042 +[11760] Forked 26043 +(26042) found +(26043) found +[11759] Forked 26044 +[11758] Forked 26045 +(26044) found +(26045) found +[11757] Forked 26046 +[11756] Forked 26047 +(26046) found +(26047) found +[11755] Forked 26048 +[11754] Forked 26050 +(26048) found +(26050) found +[11753] Forked 26051 +(26051) found +[11752] Forked 26052 +(26052) found +[11751] Forked 26053 +(26053) found +[11750] Forked 26054 +(26054) found +[11749] Forked 26055 +(26055) found +[11748] Forked 26056 +(26056) found +[11747] Forked 26057 +(26057) found +[11746] Forked 26058 +(26058) found +[11745] Forked 26059 +(26059) found +[11744] Forked 26060 +(26060) found +[11743] Forked 26061 +(26061) found +[11742] Forked 26062 +(26062) found +[11741] Forked 26063 +(26063) found +[11740] Forked 26064 +(26064) found +[11739] Forked 26065 +(26065) found +[11738] Forked 26066 +(26066) found +[11737] Forked 26067 +(26067) found +[11736] Forked 26068 +(26068) found +[11735] Forked 26069 +(26069) found +[11734] Forked 26070 +(26070) found +[11733] Forked 26071 +(26071) found +[11732] Forked 26072 +(26072) found +[11731] Forked 26073 +(26073) found +[11730] Forked 26074 +(26074) found +[11729] Forked 26075 +(26075) found +[11728] Forked 26076 +(26076) found +[11727] Forked 26077 +(26077) found +[11726] Forked 26078 +(26078) found +[11725] Forked 26079 +(26079) found +[11724] Forked 26080 +(26080) found +[11723] Forked 26081 +(26081) found +[11722] Forked 26082 +(26082) found +[11721] Forked 26083 +(26083) found +[11720] Forked 26084 +(26084) found +[11719] Forked 26085 +(26085) found +[11718] Forked 26086 +(26086) found +[11717] Forked 26087 +(26087) found +[11716] Forked 26088 +(26088) found +[11715] Forked 26089 +(26089) found +[11714] Forked 26090 +(26090) found +[11713] Forked 26091 +(26091) found +[11712] Forked 26092 +(26092) found +[11711] Forked 26093 +(26093) found +[11710] Forked 26094 +(26094) found +[11709] Forked 26095 +(26095) found +[11708] Forked 26096 +(26096) found +[11707] Forked 26097 +(26097) found +[11706] Forked 26098 +(26098) found +[11705] Forked 26099 +(26099) found +[11704] Forked 26100 +(26100) found +[11703] Forked 26101 +(26101) found +[11702] Forked 26102 +(26102) found +[11701] Forked 26103 +(26103) found +[11700] Forked 26104 +(26104) found +[11699] Forked 26105 +(26105) found +[11698] Forked 26106 +(26106) found +[11697] Forked 26107 +(26107) found +[11696] Forked 26108 +(26108) found +[11695] Forked 26109 +(26109) found +[11694] Forked 26110 +(26110) found +[11693] Forked 26111 +(26111) found +[11692] Forked 26112 +(26112) found +[11691] Forked 26113 +(26113) found +[11690] Forked 26114 +(26114) found +[11689] Forked 26115 +(26115) found +[11688] Forked 26116 +(26116) found +[11687] Forked 26117 +(26117) found +[11686] Forked 26118 +(26118) found +[11685] Forked 26119 +(26119) found +[11684] Forked 26120 +(26120) found +[11683] Forked 26121 +(26121) found +[11682] Forked 26122 +[11681] Forked 26123 +(26122) found +(26123) found +[11680] Forked 26124 +[11679] Forked 26125 +(26124) found +(26125) found +[11678] Forked 26126 +[11677] Forked 26127 +(26126) found +(26127) found +[11676] Forked 26128 +[11675] Forked 26129 +(26128) found +(26129) found +[11674] Forked 26130 +[11673] Forked 26131 +(26130) found +(26131) found +[11672] Forked 26132 +[11671] Forked 26133 +(26132) found +(26133) found +[11670] Forked 26134 +[11669] Forked 26135 +(26134) found +(26135) found +[11668] Forked 26136 +[11667] Forked 26137 +(26136) found +(26137) found +[11666] Forked 26138 +[11665] Forked 26139 +(26138) found +(26139) found +[11664] Forked 26140 +[11663] Forked 26141 +(26140) found +(26141) found +[11662] Forked 26142 +[11661] Forked 26143 +(26142) found +(26143) found +[11660] Forked 26144 +[11659] Forked 26145 +(26144) found +(26145) found +[11658] Forked 26146 +[11657] Forked 26147 +(26146) found +(26147) found +[11656] Forked 26148 +[11655] Forked 26149 +(26148) found +(26149) found +[11654] Forked 26150 +[11653] Forked 26151 +(26150) found +(26151) found +[11652] Forked 26152 +[11651] Forked 26153 +(26152) found +(26153) found +[11650] Forked 26154 +[11649] Forked 26155 +(26154) found +(26155) found +[11648] Forked 26156 +[11647] Forked 26157 +(26156) found +(26157) found +[11646] Forked 26158 +[11645] Forked 26159 +(26158) found +(26159) found +[11644] Forked 26160 +[11643] Forked 26161 +(26160) found +(26161) found +[11642] Forked 26162 +[11641] Forked 26163 +(26162) found +(26163) found +[11640] Forked 26164 +[11639] Forked 26165 +(26164) found +(26165) found +[11638] Forked 26166 +[11637] Forked 26168 +(26166) found +(26168) found +[11636] Forked 26169 +(26169) found +[11635] Forked 26170 +(26170) found +[11634] Forked 26171 +(26171) found +[11633] Forked 26172 +(26172) found +[11632] Forked 26173 +(26173) found +[11631] Forked 26174 +(26174) found +[11630] Forked 26175 +(26175) found +[11629] Forked 26176 +(26176) found +[11628] Forked 26177 +(26177) found +[11627] Forked 26178 +(26178) found +[11626] Forked 26179 +(26179) found +[11625] Forked 26180 +(26180) found +[11624] Forked 26181 +(26181) found +[11623] Forked 26182 +(26182) found +[11622] Forked 26183 +(26183) found +[11621] Forked 26184 +(26184) found +[11620] Forked 26185 +(26185) found +[11619] Forked 26186 +(26186) found +[11618] Forked 26187 +(26187) found +[11617] Forked 26188 +(26188) found +[11616] Forked 26189 +(26189) found +[11615] Forked 26190 +(26190) found +[11614] Forked 26191 +(26191) found +[11613] Forked 26192 +(26192) found +[11612] Forked 26193 +(26193) found +[11611] Forked 26194 +(26194) found +[11610] Forked 26195 +(26195) found +[11609] Forked 26196 +(26196) found +[11608] Forked 26197 +(26197) found +[11607] Forked 26198 +(26198) found +[11606] Forked 26199 +(26199) found +[11605] Forked 26200 +(26200) found +[11604] Forked 26201 +(26201) found +[11603] Forked 26202 +(26202) found +[11602] Forked 26203 +[11601] Forked 26204 +(26203) found +(26204) found +[11600] Forked 26205 +[11599] Forked 26206 +(26205) found +(26206) found +[11598] Forked 26207 +(26207) found +[11597] Forked 26208 +(26208) found +[11596] Forked 26209 +(26209) found +[11595] Forked 26210 +(26210) found +[11594] Forked 26211 +(26211) found +[11593] Forked 26212 +(26212) found +[11592] Forked 26213 +(26213) found +[11591] Forked 26214 +(26214) found +[11590] Forked 26215 +(26215) found +[11589] Forked 26216 +(26216) found +[11588] Forked 26217 +(26217) found +[11587] Forked 26218 +(26218) found +[11586] Forked 26219 +(26219) found +[11585] Forked 26220 +(26220) found +[11584] Forked 26221 +(26221) found +[11583] Forked 26222 +(26222) found +[11582] Forked 26223 +(26223) found +[11581] Forked 26224 +(26224) found +[11580] Forked 26225 +(26225) found +[11579] Forked 26226 +(26226) found +[11578] Forked 26227 +(26227) found +[11577] Forked 26228 +(26228) found +[11576] Forked 26229 +(26229) found +[11575] Forked 26230 +(26230) found +[11574] Forked 26231 +(26231) found +[11573] Forked 26232 +(26232) found +[11572] Forked 26233 +(26233) found +[11571] Forked 26234 +(26234) found +[11570] Forked 26235 +(26235) found +[11569] Forked 26236 +(26236) found +[11568] Forked 26237 +(26237) found +[11567] Forked 26238 +(26238) found +[11566] Forked 26239 +(26239) found +[11565] Forked 26240 +(26240) found +[11564] Forked 26241 +(26241) found +[11563] Forked 26242 +(26242) found +[11562] Forked 26243 +(26243) found +[11561] Forked 26244 +(26244) found +[11560] Forked 26245 +(26245) found +[11559] Forked 26246 +(26246) found +[11558] Forked 26247 +(26247) found +[11557] Forked 26248 +(26248) found +[11556] Forked 26249 +(26249) found +[11555] Forked 26250 +(26250) found +[11554] Forked 26251 +(26251) found +[11553] Forked 26252 +(26252) found +[11552] Forked 26253 +(26253) found +[11551] Forked 26254 +(26254) found +[11550] Forked 26255 +(26255) found +[11549] Forked 26256 +(26256) found +[11548] Forked 26257 +(26257) found +[11547] Forked 26258 +(26258) found +[11546] Forked 26259 +(26259) found +[11545] Forked 26260 +(26260) found +[11544] Forked 26261 +(26261) found +[11543] Forked 26262 +(26262) found +[11542] Forked 26263 +(26263) found +[11541] Forked 26264 +(26264) found +[11540] Forked 26265 +(26265) found +[11539] Forked 26266 +(26266) found +[11538] Forked 26267 +(26267) found +[11537] Forked 26268 +(26268) found +[11536] Forked 26269 +(26269) found +[11535] Forked 26270 +(26270) found +[11534] Forked 26271 +(26271) found +[11533] Forked 26272 +(26272) found +[11532] Forked 26273 +(26273) found +[11531] Forked 26274 +[11530] Forked 26275 +(26274) found +(26275) found +[11529] Forked 26276 +[11528] Forked 26277 +(26276) found +(26277) found +[11527] Forked 26278 +[11526] Forked 26279 +(26278) found +(26279) found +[11525] Forked 26280 +[11524] Forked 26281 +(26280) found +(26281) found +[11523] Forked 26282 +[11522] Forked 26283 +(26282) found +(26283) found +[11521] Forked 26284 +[11520] Forked 26285 +(26284) found +(26285) found +[11519] Forked 26286 +[11518] Forked 26287 +(26286) found +(26287) found +[11517] Forked 26288 +[11516] Forked 26289 +(26288) found +(26289) found +[11515] Forked 26290 +[11514] Forked 26291 +(26290) found +(26291) found +[11513] Forked 26292 +[11512] Forked 26293 +(26292) found +(26293) found +[11511] Forked 26294 +[11510] Forked 26295 +(26294) found +(26295) found +[11509] Forked 26296 +[11508] Forked 26297 +(26296) found +(26297) found +[11507] Forked 26298 +[11506] Forked 26299 +(26298) found +(26299) found +[11505] Forked 26300 +[11504] Forked 26301 +(26300) found +(26301) found +[11503] Forked 26302 +[11502] Forked 26303 +(26302) found +(26303) found +[11501] Forked 26304 +[11500] Forked 26305 +(26304) found +(26305) found +[11499] Forked 26306 +[11498] Forked 26307 +(26306) found +(26307) found +[11497] Forked 26308 +[11496] Forked 26309 +(26308) found +(26309) found +[11495] Forked 26310 +[11494] Forked 26311 +(26310) found +(26311) found +[11493] Forked 26312 +[11492] Forked 26314 +(26312) found +(26314) found +[11491] Forked 26315 +(26315) found +[11490] Forked 26316 +(26316) found +[11489] Forked 26317 +(26317) found +[11488] Forked 26318 +(26318) found +[11487] Forked 26319 +(26319) found +[11486] Forked 26320 +(26320) found +[11485] Forked 26321 +(26321) found +[11484] Forked 26322 +(26322) found +[11483] Forked 26323 +(26323) found +[11482] Forked 26324 +(26324) found +[11481] Forked 26325 +(26325) found +[11480] Forked 26326 +(26326) found +[11479] Forked 26327 +(26327) found +[11478] Forked 26328 +(26328) found +[11477] Forked 26329 +(26329) found +[11476] Forked 26330 +(26330) found +[11475] Forked 26331 +(26331) found +[11474] Forked 26332 +(26332) found +[11473] Forked 26333 +(26333) found +[11472] Forked 26334 +(26334) found +[11471] Forked 26335 +(26335) found +[11470] Forked 26336 +(26336) found +[11469] Forked 26337 +(26337) found +[11468] Forked 26338 +(26338) found +[11467] Forked 26339 +(26339) found +[11466] Forked 26340 +(26340) found +[11465] Forked 26341 +(26341) found +[11464] Forked 26342 +(26342) found +[11463] Forked 26343 +(26343) found +[11462] Forked 26344 +(26344) found +[11461] Forked 26345 +(26345) found +[11460] Forked 26346 +(26346) found +[11459] Forked 26347 +(26347) found +[11458] Forked 26348 +(26348) found +[11457] Forked 26349 +(26349) found +[11456] Forked 26350 +(26350) found +[11455] Forked 26351 +(26351) found +[11454] Forked 26352 +(26352) found +[11453] Forked 26353 +(26353) found +[11452] Forked 26354 +(26354) found +[11451] Forked 26355 +(26355) found +[11450] Forked 26356 +(26356) found +[11449] Forked 26357 +(26357) found +[11448] Forked 26358 +(26358) found +[11447] Forked 26359 +(26359) found +[11446] Forked 26360 +(26360) found +[11445] Forked 26361 +(26361) found +[11444] Forked 26362 +(26362) found +[11443] Forked 26363 +(26363) found +[11442] Forked 26364 +(26364) found +[11441] Forked 26365 +(26365) found +[11440] Forked 26366 +(26366) found +[11439] Forked 26367 +(26367) found +[11438] Forked 26368 +(26368) found +[11437] Forked 26369 +(26369) found +[11436] Forked 26370 +(26370) found +[11435] Forked 26371 +(26371) found +[11434] Forked 26372 +(26372) found +[11433] Forked 26373 +(26373) found +[11432] Forked 26374 +(26374) found +[11431] Forked 26375 +(26375) found +[11430] Forked 26376 +(26376) found +[11429] Forked 26377 +(26377) found +[11428] Forked 26378 +(26378) found +[11427] Forked 26379 +(26379) found +[11426] Forked 26380 +(26380) found +[11425] Forked 26381 +(26381) found +[11424] Forked 26382 +(26382) found +[11423] Forked 26383 +(26383) found +[11422] Forked 26384 +(26384) found +[11421] Forked 26385 +(26385) found +[11420] Forked 26386 +(26386) found +[11419] Forked 26387 +(26387) found +[11418] Forked 26388 +(26388) found +[11417] Forked 26389 +(26389) found +[11416] Forked 26390 +(26390) found +[11415] Forked 26391 +(26391) found +[11414] Forked 26392 +(26392) found +[11413] Forked 26393 +(26393) found +[11412] Forked 26394 +(26394) found +[11411] Forked 26395 +(26395) found +[11410] Forked 26396 +(26396) found +[11409] Forked 26397 +(26397) found +[11408] Forked 26398 +(26398) found +[11407] Forked 26399 +(26399) found +[11406] Forked 26400 +(26400) found +[11405] Forked 26401 +(26401) found +[11404] Forked 26402 +(26402) found +[11403] Forked 26403 +(26403) found +[11402] Forked 26404 +(26404) found +[11401] Forked 26405 +(26405) found +[11400] Forked 26406 +(26406) found +[11399] Forked 26407 +(26407) found +[11398] Forked 26408 +(26408) found +[11397] Forked 26409 +(26409) found +[11396] Forked 26410 +(26410) found +[11395] Forked 26411 +(26411) found +[11394] Forked 26412 +(26412) found +[11393] Forked 26413 +(26413) found +[11392] Forked 26414 +(26414) found +[11391] Forked 26415 +(26415) found +[11390] Forked 26416 +(26416) found +[11389] Forked 26417 +(26417) found +[11388] Forked 26418 +(26418) found +[11387] Forked 26419 +(26419) found +[11386] Forked 26420 +(26420) found +[11385] Forked 26421 +(26421) found +[11384] Forked 26422 +(26422) found +[11383] Forked 26423 +(26423) found +[11382] Forked 26424 +(26424) found +[11381] Forked 26425 +(26425) found +[11380] Forked 26426 +(26426) found +[11379] Forked 26427 +(26427) found +[11378] Forked 26428 +(26428) found +[11377] Forked 26429 +(26429) found +[11376] Forked 26430 +(26430) found +[11375] Forked 26431 +(26431) found +[11374] Forked 26432 +(26432) found +[11373] Forked 26433 +(26433) found +[11372] Forked 26434 +(26434) found +[11371] Forked 26435 +(26435) found +[11370] Forked 26436 +(26436) found +[11369] Forked 26437 +(26437) found +[11368] Forked 26438 +(26438) found +[11367] Forked 26439 +(26439) found +[11366] Forked 26440 +(26440) found +[11365] Forked 26441 +(26441) found +[11364] Forked 26442 +(26442) found +[11363] Forked 26443 +(26443) found +[11362] Forked 26444 +(26444) found +[11361] Forked 26445 +(26445) found +[11360] Forked 26446 +(26446) found +[11359] Forked 26447 +(26447) found +[11358] Forked 26448 +(26448) found +[11357] Forked 26449 +(26449) found +[11356] Forked 26450 +(26450) found +[11355] Forked 26451 +(26451) found +[11354] Forked 26452 +(26452) found +[11353] Forked 26453 +(26453) found +[11352] Forked 26454 +(26454) found +[11351] Forked 26455 +(26455) found +[11350] Forked 26456 +(26456) found +[11349] Forked 26457 +(26457) found +[11348] Forked 26458 +(26458) found +[11347] Forked 26459 +(26459) found +[11346] Forked 26460 +(26460) found +[11345] Forked 26461 +(26461) found +[11344] Forked 26462 +(26462) found +[11343] Forked 26463 +(26463) found +[11342] Forked 26464 +(26464) found +[11341] Forked 26465 +(26465) found +[11340] Forked 26466 +(26466) found +[11339] Forked 26467 +(26467) found +[11338] Forked 26468 +(26468) found +[11337] Forked 26469 +(26469) found +[11336] Forked 26470 +(26470) found +[11335] Forked 26471 +(26471) found +[11334] Forked 26472 +(26472) found +[11333] Forked 26473 +(26473) found +[11332] Forked 26474 +(26474) found +[11331] Forked 26475 +(26475) found +[11330] Forked 26476 +(26476) found +[11329] Forked 26477 +(26477) found +[11328] Forked 26478 +(26478) found +[11327] Forked 26479 +(26479) found +[11326] Forked 26480 +(26480) found +[11325] Forked 26481 +(26481) found +[11324] Forked 26482 +(26482) found +[11323] Forked 26483 +(26483) found +[11322] Forked 26484 +(26484) found +[11321] Forked 26485 +(26485) found +[11320] Forked 26486 +(26486) found +[11319] Forked 26487 +(26487) found +[11318] Forked 26488 +(26488) found +[11317] Forked 26489 +(26489) found +[11316] Forked 26490 +(26490) found +[11315] Forked 26491 +(26491) found +[11314] Forked 26492 +(26492) found +[11313] Forked 26493 +[11312] Forked 26494 +(26493) found +(26494) found +[11311] Forked 26495 +[11310] Forked 26496 +(26495) found +(26496) found +[11309] Forked 26497 +[11308] Forked 26498 +(26497) found +(26498) found +[11307] Forked 26499 +[11306] Forked 26500 +(26499) found +(26500) found +[11305] Forked 26501 +[11304] Forked 26502 +(26501) found +(26502) found +[11303] Forked 26503 +[11302] Forked 26504 +(26503) found +(26504) found +[11301] Forked 26505 +[11300] Forked 26506 +(26505) found +(26506) found +[11299] Forked 26507 +[11298] Forked 26508 +(26507) found +(26508) found +[11297] Forked 26509 +[11296] Forked 26510 +(26509) found +(26510) found +[11295] Forked 26511 +[11294] Forked 26512 +(26511) found +(26512) found +[11293] Forked 26513 +[11292] Forked 26514 +(26513) found +(26514) found +[11291] Forked 26515 +[11290] Forked 26516 +(26515) found +(26516) found +[11289] Forked 26517 +[11288] Forked 26518 +(26517) found +(26518) found +[11287] Forked 26519 +[11286] Forked 26520 +(26519) found +(26520) found +[11285] Forked 26521 +[11284] Forked 26522 +(26521) found +(26522) found +[11283] Forked 26523 +[11282] Forked 26524 +(26523) found +(26524) found +[11281] Forked 26525 +[11280] Forked 26526 +(26525) found +(26526) found +[11279] Forked 26527 +[11278] Forked 26528 +(26527) found +(26528) found +[11277] Forked 26529 +[11276] Forked 26530 +(26529) found +(26530) found +[11275] Forked 26531 +[11274] Forked 26532 +(26531) found +(26532) found +[11273] Forked 26533 +[11272] Forked 26534 +(26533) found +(26534) found +[11271] Forked 26535 +[11270] Forked 26536 +(26535) found +(26536) found +[11269] Forked 26537 +[11268] Forked 26538 +(26537) found +(26538) found +[11267] Forked 26539 +(26539) found +[11266] Forked 26540 +(26540) found +[11265] Forked 26541 +(26541) found +[11264] Forked 26542 +(26542) found +[11263] Forked 26543 +(26543) found +[11262] Forked 26544 +(26544) found +[11261] Forked 26545 +(26545) found +[11260] Forked 26546 +(26546) found +[11259] Forked 26547 +(26547) found +[11258] Forked 26548 +(26548) found +[11257] Forked 26549 +(26549) found +[11256] Forked 26550 +(26550) found +[11255] Forked 26551 +(26551) found +[11254] Forked 26552 +(26552) found +[11253] Forked 26553 +(26553) found +[11252] Forked 26554 +(26554) found +[11251] Forked 26555 +(26555) found +[11250] Forked 26556 +(26556) found +[11249] Forked 26557 +(26557) found +[11248] Forked 26558 +(26558) found +[11247] Forked 26559 +(26559) found +[11246] Forked 26560 +(26560) found +[11245] Forked 26561 +(26561) found +[11244] Forked 26562 +(26562) found +[11243] Forked 26563 +(26563) found +[11242] Forked 26564 +(26564) found +[11241] Forked 26565 +(26565) found +[11240] Forked 26566 +(26566) found +[11239] Forked 26567 +(26567) found +[11238] Forked 26568 +(26568) found +[11237] Forked 26569 +(26569) found +[11236] Forked 26570 +(26570) found +[11235] Forked 26571 +(26571) found +[11234] Forked 26572 +(26572) found +[11233] Forked 26573 +(26573) found +[11232] Forked 26574 +(26574) found +[11231] Forked 26575 +[11230] Forked 26576 +(26575) found +(26576) found +[11229] Forked 26577 +[11228] Forked 26578 +(26577) found +(26578) found +[11227] Forked 26579 +[11226] Forked 26580 +(26579) found +(26580) found +[11225] Forked 26581 +[11224] Forked 26582 +(26581) found +(26582) found +[11223] Forked 26583 +[11222] Forked 26584 +(26583) found +(26584) found +[11221] Forked 26585 +[11220] Forked 26586 +(26585) found +(26586) found +[11219] Forked 26587 +[11218] Forked 26588 +(26587) found +(26588) found +[11217] Forked 26589 +[11216] Forked 26590 +(26589) found +(26590) found +[11215] Forked 26591 +[11214] Forked 26592 +(26591) found +(26592) found +[11213] Forked 26593 +[11212] Forked 26594 +(26593) found +(26594) found +[11211] Forked 26595 +[11210] Forked 26596 +(26595) found +(26596) found +[11209] Forked 26597 +[11208] Forked 26598 +(26597) found +(26598) found +[11207] Forked 26599 +[11206] Forked 26600 +(26599) found +(26600) found +[11205] Forked 26601 +[11204] Forked 26602 +(26601) found +(26602) found +[11203] Forked 26603 +[11202] Forked 26604 +(26603) found +(26604) found +[11201] Forked 26605 +[11200] Forked 26606 +(26605) found +(26606) found +[11199] Forked 26607 +[11198] Forked 26608 +(26607) found +(26608) found +[11197] Forked 26609 +[11196] Forked 26610 +(26609) found +(26610) found +[11195] Forked 26611 +[11194] Forked 26612 +(26611) found +(26612) found +[11193] Forked 26613 +[11192] Forked 26614 +(26613) found +(26614) found +[11191] Forked 26615 +[11190] Forked 26616 +(26615) found +(26616) found +[11189] Forked 26617 +[11188] Forked 26618 +(26617) found +(26618) found +[11187] Forked 26619 +[11186] Forked 26620 +(26619) found +(26620) found +[11185] Forked 26621 +(26621) found +[11184] Forked 26622 +(26622) found +[11183] Forked 26623 +(26623) found +[11182] Forked 26624 +(26624) found +[11181] Forked 26625 +(26625) found +[11180] Forked 26626 +(26626) found +[11179] Forked 26627 +(26627) found +[11178] Forked 26628 +(26628) found +[11177] Forked 26629 +(26629) found +[11176] Forked 26630 +(26630) found +[11175] Forked 26631 +(26631) found +[11174] Forked 26632 +(26632) found +[11173] Forked 26633 +(26633) found +[11172] Forked 26634 +(26634) found +[11171] Forked 26635 +(26635) found +[11170] Forked 26636 +(26636) found +[11169] Forked 26637 +(26637) found +[11168] Forked 26638 +(26638) found +[11167] Forked 26639 +(26639) found +[11166] Forked 26640 +(26640) found +[11165] Forked 26641 +(26641) found +[11164] Forked 26642 +(26642) found +[11163] Forked 26643 +(26643) found +[11162] Forked 26644 +(26644) found +[11161] Forked 26645 +(26645) found +[11160] Forked 26646 +(26646) found +[11159] Forked 26647 +(26647) found +[11158] Forked 26648 +(26648) found +[11157] Forked 26649 +(26649) found +[11156] Forked 26650 +(26650) found +[11155] Forked 26651 +(26651) found +[11154] Forked 26652 +(26652) found +[11153] Forked 26653 +(26653) found +[11152] Forked 26654 +(26654) found +[11151] Forked 26655 +[11150] Forked 26656 +(26655) found +(26656) found +[11149] Forked 26657 +[11148] Forked 26658 +(26657) found +(26658) found +[11147] Forked 26659 +[11146] Forked 26660 +(26659) found +(26660) found +[11145] Forked 26661 +[11144] Forked 26662 +(26661) found +(26662) found +[11143] Forked 26663 +[11142] Forked 26664 +(26663) found +(26664) found +[11141] Forked 26665 +[11140] Forked 26666 +(26665) found +(26666) found +[11139] Forked 26667 +[11138] Forked 26668 +(26667) found +(26668) found +[11137] Forked 26669 +[11136] Forked 26670 +(26669) found +(26670) found +[11135] Forked 26671 +[11134] Forked 26672 +(26671) found +(26672) found +[11133] Forked 26673 +[11132] Forked 26674 +(26674) found +(26673) found +[11131] Forked 26675 +(26675) found +[11130] Forked 26676 +(26676) found +[11129] Forked 26677 +(26677) found +[11128] Forked 26678 +(26678) found +[11127] Forked 26679 +(26679) found +[11126] Forked 26680 +(26680) found +[11125] Forked 26681 +(26681) found +[11124] Forked 26682 +(26682) found +[11123] Forked 26683 +(26683) found +[11122] Forked 26684 +(26684) found +[11121] Forked 26685 +(26685) found +[11120] Forked 26686 +(26686) found +[11119] Forked 26687 +(26687) found +[11118] Forked 26688 +(26688) found +[11117] Forked 26689 +(26689) found +[11116] Forked 26690 +(26690) found +[11115] Forked 26691 +(26691) found +[11114] Forked 26692 +(26692) found +[11113] Forked 26693 +(26693) found +[11112] Forked 26694 +(26694) found +[11111] Forked 26695 +(26695) found +[11110] Forked 26696 +(26696) found +[11109] Forked 26697 +(26697) found +[11108] Forked 26698 +(26698) found +[11107] Forked 26699 +(26699) found +[11106] Forked 26700 +(26700) found +[11105] Forked 26701 +(26701) found +[11104] Forked 26702 +(26702) found +[11103] Forked 26703 +(26703) found +[11102] Forked 26704 +(26704) found +[11101] Forked 26705 +(26705) found +[11100] Forked 26706 +(26706) found +[11099] Forked 26707 +(26707) found +[11098] Forked 26708 +(26708) found +[11097] Forked 26709 +(26709) found +[11096] Forked 26710 +(26710) found +[11095] Forked 26711 +(26711) found +[11094] Forked 26712 +(26712) found +[11093] Forked 26713 +(26713) found +[11092] Forked 26714 +(26714) found +[11091] Forked 26715 +(26715) found +[11090] Forked 26716 +(26716) found +[11089] Forked 26717 +(26717) found +[11088] Forked 26718 +(26718) found +[11087] Forked 26719 +(26719) found +[11086] Forked 26720 +(26720) found +[11085] Forked 26721 +(26721) found +[11084] Forked 26722 +(26722) found +[11083] Forked 26723 +(26723) found +[11082] Forked 26724 +(26724) found +[11081] Forked 26725 +[11080] Forked 26726 +(26725) found +(26726) found +[11079] Forked 26727 +[11078] Forked 26728 +(26727) found +(26728) found +[11077] Forked 26729 +[11076] Forked 26730 +(26729) found +(26730) found +[11075] Forked 26731 +[11074] Forked 26732 +(26731) found +(26732) found +[11073] Forked 26733 +[11072] Forked 26734 +(26733) found +(26734) found +[11071] Forked 26735 +[11070] Forked 26736 +(26735) found +(26736) found +[11069] Forked 26737 +[11068] Forked 26738 +(26737) found +(26738) found +[11067] Forked 26739 +[11066] Forked 26740 +(26739) found +(26740) found +[11065] Forked 26741 +[11064] Forked 26742 +(26741) found +(26742) found +[11063] Forked 26743 +[11062] Forked 26744 +(26743) found +(26744) found +[11061] Forked 26745 +[11060] Forked 26746 +(26745) found +(26746) found +[11059] Forked 26747 +[11058] Forked 26748 +(26747) found +(26748) found +[11057] Forked 26749 +[11056] Forked 26750 +(26749) found +(26750) found +[11055] Forked 26751 +[11054] Forked 26752 +(26751) found +(26752) found +[11053] Forked 26753 +[11052] Forked 26754 +(26753) found +(26754) found +[11051] Forked 26755 +[11050] Forked 26756 +(26755) found +(26756) found +[11049] Forked 26757 +[11048] Forked 26758 +(26757) found +(26758) found +[11047] Forked 26759 +[11046] Forked 26760 +(26759) found +(26760) found +[11045] Forked 26761 +[11044] Forked 26762 +(26761) found +(26762) found +[11043] Forked 26763 +[11042] Forked 26764 +(26763) found +(26764) found +[11041] Forked 26765 +[11040] Forked 26766 +(26765) found +(26766) found +[11039] Forked 26767 +[11038] Forked 26768 +(26767) found +(26768) found +[11037] Forked 26769 +[11036] Forked 26770 +(26769) found +(26770) found +[11035] Forked 26771 +[11034] Forked 26772 +(26771) found +(26772) found +[11033] Forked 26773 +[11032] Forked 26774 +(26773) found +(26774) found +[11031] Forked 26775 +[11030] Forked 26776 +(26775) found +(26776) found +[11029] Forked 26777 +[11028] Forked 26778 +(26777) found +(26778) found +[11027] Forked 26779 +[11026] Forked 26780 +(26779) found +(26780) found +[11025] Forked 26781 +(26781) found +[11024] Forked 26782 +[11023] Forked 26783 +(26782) found +(26783) found +[11022] Forked 26784 +[11021] Forked 26785 +(26784) found +(26785) found +[11020] Forked 26786 +[11019] Forked 26787 +(26786) found +(26787) found +[11018] Forked 26788 +[11017] Forked 26789 +(26788) found +(26789) found +[11016] Forked 26790 +[11015] Forked 26791 +(26790) found +(26791) found +[11014] Forked 26792 +[11013] Forked 26793 +(26792) found +(26793) found +[11012] Forked 26794 +[11011] Forked 26795 +(26794) found +(26795) found +[11010] Forked 26796 +[11009] Forked 26797 +(26796) found +(26797) found +[11008] Forked 26798 +[11007] Forked 26799 +(26798) found +(26799) found +[11006] Forked 26800 +[11005] Forked 26801 +(26800) found +(26801) found +[11004] Forked 26802 +[11003] Forked 26803 +(26802) found +(26803) found +[11002] Forked 26804 +[11001] Forked 26805 +(26804) found +(26805) found +[11000] Forked 26806 +[10999] Forked 26807 +(26806) found +(26807) found +[10998] Forked 26808 +[10997] Forked 26809 +(26808) found +(26809) found +[10996] Forked 26810 +[10995] Forked 26811 +(26810) found +(26811) found +[10994] Forked 26812 +(26812) found +[10993] Forked 26813 +(26813) found +[10992] Forked 26814 +(26814) found +[10991] Forked 26815 +(26815) found +[10990] Forked 26816 +(26816) found +[10989] Forked 26817 +(26817) found +[10988] Forked 26818 +(26818) found +[10987] Forked 26819 +(26819) found +[10986] Forked 26820 +(26820) found +[10985] Forked 26822 +(26822) found +[10984] Forked 26823 +(26823) found +[10983] Forked 26824 +(26824) found +[10982] Forked 26825 +(26825) found +[10981] Forked 26826 +(26826) found +[10980] Forked 26827 +(26827) found +[10979] Forked 26828 +(26828) found +[10978] Forked 26829 +(26829) found +[10977] Forked 26830 +(26830) found +[10976] Forked 26831 +(26831) found +[10975] Forked 26832 +(26832) found +[10974] Forked 26833 +(26833) found +[10973] Forked 26834 +(26834) found +[10972] Forked 26835 +(26835) found +[10971] Forked 26836 +(26836) found +[10970] Forked 26837 +(26837) found +[10969] Forked 26838 +(26838) found +[10968] Forked 26839 +(26839) found +[10967] Forked 26840 +(26840) found +[10966] Forked 26841 +(26841) found +[10965] Forked 26842 +(26842) found +[10964] Forked 26843 +(26843) found +[10963] Forked 26844 +(26844) found +[10962] Forked 26845 +(26845) found +[10961] Forked 26846 +(26846) found +[10960] Forked 26847 +(26847) found +[10959] Forked 26848 +(26848) found +[10958] Forked 26849 +(26849) found +[10957] Forked 26850 +(26850) found +[10956] Forked 26851 +(26851) found +[10955] Forked 26852 +(26852) found +[10954] Forked 26853 +(26853) found +[10953] Forked 26854 +(26854) found +[10952] Forked 26855 +(26855) found +[10951] Forked 26856 +(26856) found +[10950] Forked 26857 +(26857) found +[10949] Forked 26858 +(26858) found +[10948] Forked 26859 +(26859) found +[10947] Forked 26860 +(26860) found +[10946] Forked 26861 +(26861) found +[10945] Forked 26862 +(26862) found +[10944] Forked 26863 +(26863) found +[10943] Forked 26864 +(26864) found +[10942] Forked 26865 +(26865) found +[10941] Forked 26866 +(26866) found +[10940] Forked 26867 +(26867) found +[10939] Forked 26868 +(26868) found +[10938] Forked 26869 +(26869) found +[10937] Forked 26870 +(26870) found +[10936] Forked 26871 +(26871) found +[10935] Forked 26872 +(26872) found +[10934] Forked 26873 +(26873) found +[10933] Forked 26874 +(26874) found +[10932] Forked 26875 +(26875) found +[10931] Forked 26876 +(26876) found +[10930] Forked 26877 +(26877) found +[10929] Forked 26878 +(26878) found +[10928] Forked 26879 +(26879) found +[10927] Forked 26880 +(26880) found +[10926] Forked 26881 +(26881) found +[10925] Forked 26882 +(26882) found +[10924] Forked 26883 +(26883) found +[10923] Forked 26884 +(26884) found +[10922] Forked 26885 +(26885) found +[10921] Forked 26886 +(26886) found +[10920] Forked 26887 +(26887) found +[10919] Forked 26888 +(26888) found +[10918] Forked 26889 +[10917] Forked 26890 +(26889) found +(26890) found +[10916] Forked 26891 +[10915] Forked 26892 +(26891) found +(26892) found +[10914] Forked 26893 +[10913] Forked 26894 +(26893) found +(26894) found +[10912] Forked 26895 +[10911] Forked 26896 +(26895) found +(26896) found +[10910] Forked 26897 +[10909] Forked 26898 +(26897) found +(26898) found +[10908] Forked 26899 +[10907] Forked 26900 +(26899) found +(26900) found +[10906] Forked 26901 +[10905] Forked 26902 +(26901) found +(26902) found +[10904] Forked 26903 +[10903] Forked 26904 +(26903) found +(26904) found +[10902] Forked 26905 +[10901] Forked 26906 +(26905) found +(26906) found +[10900] Forked 26907 +[10899] Forked 26908 +(26907) found +(26908) found +[10898] Forked 26909 +[10897] Forked 26910 +(26909) found +(26910) found +[10896] Forked 26911 +[10895] Forked 26912 +(26911) found +(26912) found +[10894] Forked 26913 +[10893] Forked 26914 +(26913) found +(26914) found +[10892] Forked 26915 +[10891] Forked 26916 +(26915) found +(26916) found +[10890] Forked 26917 +[10889] Forked 26918 +(26917) found +(26918) found +[10888] Forked 26919 +[10887] Forked 26920 +(26919) found +(26920) found +[10886] Forked 26921 +[10885] Forked 26922 +(26921) found +(26922) found +[10884] Forked 26923 +[10883] Forked 26924 +(26923) found +(26924) found +[10882] Forked 26925 +[10881] Forked 26926 +(26925) found +(26926) found +[10880] Forked 26927 +[10879] Forked 26928 +(26927) found +(26928) found +[10878] Forked 26929 +[10877] Forked 26930 +(26929) found +(26930) found +[10876] Forked 26931 +[10875] Forked 26932 +(26931) found +(26932) found +[10874] Forked 26933 +[10873] Forked 26934 +(26933) found +(26934) found +[10872] Forked 26935 +(26935) found +[10871] Forked 26936 +(26936) found +[10870] Forked 26937 +(26937) found +[10869] Forked 26938 +(26938) found +[10868] Forked 26939 +(26939) found +[10867] Forked 26940 +(26940) found +[10866] Forked 26941 +(26941) found +[10865] Forked 26942 +(26942) found +[10864] Forked 26943 +(26943) found +[10863] Forked 26944 +(26944) found +[10862] Forked 26945 +(26945) found +[10861] Forked 26946 +(26946) found +[10860] Forked 26947 +(26947) found +[10859] Forked 26948 +(26948) found +[10858] Forked 26949 +(26949) found +[10857] Forked 26950 +(26950) found +[10856] Forked 26951 +(26951) found +[10855] Forked 26952 +(26952) found +[10854] Forked 26953 +(26953) found +[10853] Forked 26954 +(26954) found +[10852] Forked 26955 +(26955) found +[10851] Forked 26956 +(26956) found +[10850] Forked 26957 +(26957) found +[10849] Forked 26958 +(26958) found +[10848] Forked 26959 +(26959) found +[10847] Forked 26960 +(26960) found +[10846] Forked 26961 +(26961) found +[10845] Forked 26962 +(26962) found +[10844] Forked 26963 +(26963) found +[10843] Forked 26964 +(26964) found +[10842] Forked 26965 +(26965) found +[10841] Forked 26966 +(26966) found +[10840] Forked 26967 +(26967) found +[10839] Forked 26968 +(26968) found +[10838] Forked 26969 +(26969) found +[10837] Forked 26970 +[10836] Forked 26971 +(26970) found +(26971) found +[10835] Forked 26972 +[10834] Forked 26973 +(26972) found +(26973) found +[10833] Forked 26974 +[10832] Forked 26975 +(26974) found +(26975) found +[10831] Forked 26976 +[10830] Forked 26977 +(26976) found +(26977) found +[10829] Forked 26978 +[10828] Forked 26979 +(26978) found +(26979) found +[10827] Forked 26980 +[10826] Forked 26981 +(26980) found +(26981) found +[10825] Forked 26982 +[10824] Forked 26983 +(26982) found +(26983) found +[10823] Forked 26984 +[10822] Forked 26985 +(26984) found +(26985) found +[10821] Forked 26986 +[10820] Forked 26987 +(26986) found +(26987) found +[10819] Forked 26988 +[10818] Forked 26989 +(26988) found +(26989) found +[10817] Forked 26990 +[10816] Forked 26991 +(26990) found +(26991) found +[10815] Forked 26992 +[10814] Forked 26993 +(26992) found +(26993) found +[10813] Forked 26994 +[10812] Forked 26995 +(26994) found +(26995) found +[10811] Forked 26996 +[10810] Forked 26997 +(26996) found +(26997) found +[10809] Forked 26998 +[10808] Forked 26999 +(26998) found +(26999) found +[10807] Forked 27000 +[10806] Forked 27001 +(27000) found +(27001) found +[10805] Forked 27002 +[10804] Forked 27003 +(27002) found +(27003) found +[10803] Forked 27004 +[10802] Forked 27005 +(27004) found +(27005) found +[10801] Forked 27006 +[10800] Forked 27007 +(27006) found +(27007) found +[10799] Forked 27008 +[10798] Forked 27009 +(27008) found +(27009) found +[10797] Forked 27010 +[10796] Forked 27011 +(27010) found +(27011) found +[10795] Forked 27012 +[10794] Forked 27013 +(27012) found +(27013) found +[10793] Forked 27014 +[10792] Forked 27015 +(27014) found +(27015) found +[10791] Forked 27016 +(27016) found +[10790] Forked 27017 +(27017) found +[10789] Forked 27018 +(27018) found +[10788] Forked 27019 +(27019) found +[10787] Forked 27020 +(27020) found +[10786] Forked 27021 +(27021) found +[10785] Forked 27022 +(27022) found +[10784] Forked 27023 +(27023) found +[10783] Forked 27024 +(27024) found +[10782] Forked 27025 +(27025) found +[10781] Forked 27026 +(27026) found +[10780] Forked 27027 +(27027) found +[10779] Forked 27028 +(27028) found +[10778] Forked 27029 +(27029) found +[10777] Forked 27030 +(27030) found +[10776] Forked 27031 +(27031) found +[10775] Forked 27032 +(27032) found +[10774] Forked 27033 +(27033) found +[10773] Forked 27034 +(27034) found +[10772] Forked 27035 +(27035) found +[10771] Forked 27036 +(27036) found +[10770] Forked 27037 +(27037) found +[10769] Forked 27038 +(27038) found +[10768] Forked 27039 +(27039) found +[10767] Forked 27040 +(27040) found +[10766] Forked 27041 +(27041) found +[10765] Forked 27042 +(27042) found +[10764] Forked 27043 +(27043) found +[10763] Forked 27044 +(27044) found +[10762] Forked 27045 +(27045) found +[10761] Forked 27046 +(27046) found +[10760] Forked 27047 +(27047) found +[10759] Forked 27048 +(27048) found +[10758] Forked 27049 +(27049) found +[10757] Forked 27050 +(27050) found +[10756] Forked 27051 +(27051) found +[10755] Forked 27052 +[10754] Forked 27053 +(27052) found +(27053) found +[10753] Forked 27054 +[10752] Forked 27055 +(27054) found +(27055) found +[10751] Forked 27056 +[10750] Forked 27057 +(27056) found +(27057) found +[10749] Forked 27058 +[10748] Forked 27059 +(27058) found +(27059) found +[10747] Forked 27060 +[10746] Forked 27061 +(27060) found +(27061) found +[10745] Forked 27062 +[10744] Forked 27063 +(27062) found +(27063) found +[10743] Forked 27064 +[10742] Forked 27065 +(27064) found +(27065) found +[10741] Forked 27066 +[10740] Forked 27067 +(27066) found +(27067) found +[10739] Forked 27068 +[10738] Forked 27069 +(27068) found +(27069) found +[10737] Forked 27070 +[10736] Forked 27071 +(27070) found +(27071) found +[10735] Forked 27072 +[10734] Forked 27073 +(27072) found +(27073) found +[10733] Forked 27074 +[10732] Forked 27075 +(27074) found +(27075) found +[10731] Forked 27076 +[10730] Forked 27077 +(27076) found +(27077) found +[10729] Forked 27078 +[10728] Forked 27079 +(27078) found +(27079) found +[10727] Forked 27080 +[10726] Forked 27081 +(27080) found +(27081) found +[10725] Forked 27082 +[10724] Forked 27083 +(27082) found +(27083) found +[10723] Forked 27084 +[10722] Forked 27085 +(27084) found +(27085) found +[10721] Forked 27086 +[10720] Forked 27087 +(27086) found +(27087) found +[10719] Forked 27088 +[10718] Forked 27089 +(27088) found +(27089) found +[10717] Forked 27090 +[10716] Forked 27091 +(27090) found +(27091) found +[10715] Forked 27092 +[10714] Forked 27093 +(27092) found +(27093) found +[10713] Forked 27094 +[10712] Forked 27095 +(27094) found +(27095) found +[10711] Forked 27096 +[10710] Forked 27097 +(27096) found +(27097) found +[10709] Forked 27098 +[10708] Forked 27099 +(27098) found +(27099) found +[10707] Forked 27100 +[10706] Forked 27101 +(27100) found +(27101) found +[10705] Forked 27102 +[10704] Forked 27103 +(27102) found +(27103) found +[10703] Forked 27104 +[10702] Forked 27105 +(27104) found +(27105) found +[10701] Forked 27106 +[10700] Forked 27107 +(27106) found +(27107) found +[10699] Forked 27108 +[10698] Forked 27109 +(27108) found +(27109) found +[10697] Forked 27110 +[10696] Forked 27111 +(27110) found +(27111) found +[10695] Forked 27112 +[10694] Forked 27113 +(27112) found +(27113) found +[10693] Forked 27114 +[10692] Forked 27115 +(27114) found +(27115) found +[10691] Forked 27116 +[10690] Forked 27117 +(27116) found +(27117) found +[10689] Forked 27118 +[10688] Forked 27119 +(27118) found +(27119) found +[10687] Forked 27120 +[10686] Forked 27121 +(27120) found +(27121) found +[10685] Forked 27122 +[10684] Forked 27123 +(27122) found +(27123) found +[10683] Forked 27124 +[10682] Forked 27125 +(27124) found +(27125) found +[10681] Forked 27126 +[10680] Forked 27127 +(27126) found +(27127) found +[10679] Forked 27128 +[10678] Forked 27129 +(27128) found +(27129) found +[10677] Forked 27130 +[10676] Forked 27131 +(27130) found +(27131) found +[10675] Forked 27132 +[10674] Forked 27133 +(27132) found +(27133) found +[10673] Forked 27134 +[10672] Forked 27135 +(27134) found +(27135) found +[10671] Forked 27136 +[10670] Forked 27138 +(27136) found +(27138) found +[10669] Forked 27139 +(27139) found +[10668] Forked 27140 +(27140) found +[10667] Forked 27141 +(27141) found +[10666] Forked 27142 +(27142) found +[10665] Forked 27143 +(27143) found +[10664] Forked 27144 +(27144) found +[10663] Forked 27145 +(27145) found +[10662] Forked 27146 +(27146) found +[10661] Forked 27147 +(27147) found +[10660] Forked 27148 +(27148) found +[10659] Forked 27149 +(27149) found +[10658] Forked 27150 +(27150) found +[10657] Forked 27151 +(27151) found +[10656] Forked 27152 +(27152) found +[10655] Forked 27153 +(27153) found +[10654] Forked 27154 +(27154) found +[10653] Forked 27155 +(27155) found +[10652] Forked 27156 +(27156) found +[10651] Forked 27157 +(27157) found +[10650] Forked 27158 +(27158) found +[10649] Forked 27159 +(27159) found +[10648] Forked 27160 +(27160) found +[10647] Forked 27161 +(27161) found +[10646] Forked 27162 +(27162) found +[10645] Forked 27163 +(27163) found +[10644] Forked 27164 +(27164) found +[10643] Forked 27165 +(27165) found +[10642] Forked 27166 +(27166) found +[10641] Forked 27167 +(27167) found +[10640] Forked 27168 +(27168) found +[10639] Forked 27169 +(27169) found +[10638] Forked 27170 +(27170) found +[10637] Forked 27171 +(27171) found +[10636] Forked 27172 +(27172) found +[10635] Forked 27173 +(27173) found +[10634] Forked 27174 +(27174) found +[10633] Forked 27175 +(27175) found +[10632] Forked 27176 +(27176) found +[10631] Forked 27177 +(27177) found +[10630] Forked 27178 +(27178) found +[10629] Forked 27179 +(27179) found +[10628] Forked 27180 +(27180) found +[10627] Forked 27181 +(27181) found +[10626] Forked 27182 +(27182) found +[10625] Forked 27183 +(27183) found +[10624] Forked 27184 +(27184) found +[10623] Forked 27185 +(27185) found +[10622] Forked 27186 +(27186) found +[10621] Forked 27187 +(27187) found +[10620] Forked 27188 +(27188) found +[10619] Forked 27189 +(27189) found +[10618] Forked 27190 +(27190) found +[10617] Forked 27191 +(27191) found +[10616] Forked 27192 +(27192) found +[10615] Forked 27193 +(27193) found +[10614] Forked 27194 +(27194) found +[10613] Forked 27195 +(27195) found +[10612] Forked 27196 +(27196) found +[10611] Forked 27197 +(27197) found +[10610] Forked 27198 +(27198) found +[10609] Forked 27199 +(27199) found +[10608] Forked 27200 +(27200) found +[10607] Forked 27201 +(27201) found +[10606] Forked 27202 +(27202) found +[10605] Forked 27203 +(27203) found +[10604] Forked 27204 +(27204) found +[10603] Forked 27205 +(27205) found +[10602] Forked 27206 +(27206) found +[10601] Forked 27207 +(27207) found +[10600] Forked 27208 +(27208) found +[10599] Forked 27209 +(27209) found +[10598] Forked 27210 +(27210) found +[10597] Forked 27211 +(27211) found +[10596] Forked 27212 +(27212) found +[10595] Forked 27213 +(27213) found +[10594] Forked 27214 +(27214) found +[10593] Forked 27215 +(27215) found +[10592] Forked 27216 +(27216) found +[10591] Forked 27217 +(27217) found +[10590] Forked 27218 +(27218) found +[10589] Forked 27219 +(27219) found +[10588] Forked 27220 +(27220) found +[10587] Forked 27221 +(27221) found +[10586] Forked 27222 +(27222) found +[10585] Forked 27223 +(27223) found +[10584] Forked 27224 +(27224) found +[10583] Forked 27225 +(27225) found +[10582] Forked 27226 +(27226) found +[10581] Forked 27227 +(27227) found +[10580] Forked 27228 +(27228) found +[10579] Forked 27229 +(27229) found +[10578] Forked 27230 +(27230) found +[10577] Forked 27231 +(27231) found +[10576] Forked 27232 +(27232) found +[10575] Forked 27233 +(27233) found +[10574] Forked 27234 +(27234) found +[10573] Forked 27235 +(27235) found +[10572] Forked 27236 +(27236) found +[10571] Forked 27237 +(27237) found +[10570] Forked 27238 +(27238) found +[10569] Forked 27239 +(27239) found +[10568] Forked 27240 +(27240) found +[10567] Forked 27241 +(27241) found +[10566] Forked 27242 +(27242) found +[10565] Forked 27243 +(27243) found +[10564] Forked 27244 +(27244) found +[10563] Forked 27245 +(27245) found +[10562] Forked 27246 +(27246) found +[10561] Forked 27247 +(27247) found +[10560] Forked 27248 +(27248) found +[10559] Forked 27249 +(27249) found +[10558] Forked 27250 +[10557] Forked 27251 +(27250) found +(27251) found +[10556] Forked 27252 +[10555] Forked 27253 +(27252) found +(27253) found +[10554] Forked 27254 +[10553] Forked 27255 +(27254) found +(27255) found +[10552] Forked 27256 +[10551] Forked 27257 +(27256) found +(27257) found +[10550] Forked 27258 +[10549] Forked 27259 +(27258) found +(27259) found +[10548] Forked 27260 +[10547] Forked 27261 +(27260) found +(27261) found +[10546] Forked 27262 +[10545] Forked 27263 +(27262) found +(27263) found +[10544] Forked 27264 +[10543] Forked 27265 +(27264) found +(27265) found +[10542] Forked 27266 +[10541] Forked 27267 +(27266) found +(27267) found +[10540] Forked 27268 +[10539] Forked 27269 +(27268) found +(27269) found +[10538] Forked 27270 +[10537] Forked 27271 +(27270) found +(27271) found +[10536] Forked 27272 +[10535] Forked 27273 +(27272) found +(27273) found +[10534] Forked 27274 +[10533] Forked 27275 +(27274) found +(27275) found +[10532] Forked 27276 +[10531] Forked 27277 +(27276) found +(27277) found +[10530] Forked 27278 +[10529] Forked 27279 +(27278) found +(27279) found +[10528] Forked 27280 +[10527] Forked 27281 +(27280) found +(27281) found +[10526] Forked 27282 +[10525] Forked 27283 +(27282) found +(27283) found +[10524] Forked 27284 +[10523] Forked 27285 +(27284) found +(27285) found +[10522] Forked 27286 +[10521] Forked 27287 +(27286) found +(27287) found +[10520] Forked 27288 +[10519] Forked 27289 +(27288) found +(27289) found +[10518] Forked 27290 +[10517] Forked 27291 +(27290) found +(27291) found +[10516] Forked 27292 +[10515] Forked 27293 +(27292) found +(27293) found +[10514] Forked 27294 +(27294) found +[10513] Forked 27295 +(27295) found +[10512] Forked 27296 +(27296) found +[10511] Forked 27297 +(27297) found +[10510] Forked 27298 +(27298) found +[10509] Forked 27299 +(27299) found +[10508] Forked 27300 +(27300) found +[10507] Forked 27301 +(27301) found +[10506] Forked 27302 +(27302) found +[10505] Forked 27303 +(27303) found +[10504] Forked 27304 +(27304) found +[10503] Forked 27305 +(27305) found +[10502] Forked 27306 +(27306) found +[10501] Forked 27307 +(27307) found +[10500] Forked 27308 +(27308) found +[10499] Forked 27309 +(27309) found +[10498] Forked 27310 +(27310) found +[10497] Forked 27311 +(27311) found +[10496] Forked 27312 +(27312) found +[10495] Forked 27313 +(27313) found +[10494] Forked 27314 +(27314) found +[10493] Forked 27315 +(27315) found +[10492] Forked 27316 +(27316) found +[10491] Forked 27317 +(27317) found +[10490] Forked 27318 +(27318) found +[10489] Forked 27319 +(27319) found +[10488] Forked 27320 +(27320) found +[10487] Forked 27321 +(27321) found +[10486] Forked 27322 +(27322) found +[10485] Forked 27323 +(27323) found +[10484] Forked 27324 +(27324) found +[10483] Forked 27325 +(27325) found +[10482] Forked 27326 +(27326) found +[10481] Forked 27327 +(27327) found +[10480] Forked 27328 +(27328) found +[10479] Forked 27329 +(27329) found +[10478] Forked 27330 +(27330) found +[10477] Forked 27331 +[10476] Forked 27332 +(27331) found +(27332) found +[10475] Forked 27333 +[10474] Forked 27334 +(27333) found +(27334) found +[10473] Forked 27335 +[10472] Forked 27336 +(27335) found +(27336) found +[10471] Forked 27337 +[10470] Forked 27338 +(27337) found +(27338) found +[10469] Forked 27339 +[10468] Forked 27340 +(27339) found +(27340) found +[10467] Forked 27341 +(27341) found +[10466] Forked 27342 +(27342) found +[10465] Forked 27343 +[10464] Forked 27344 +(27343) found +(27344) found +[10463] Forked 27345 +[10462] Forked 27346 +(27345) found +(27346) found +[10461] Forked 27347 +[10460] Forked 27348 +(27347) found +(27348) found +[10459] Forked 27349 +[10458] Forked 27350 +(27349) found +(27350) found +[10457] Forked 27351 +[10456] Forked 27352 +(27351) found +(27352) found +[10455] Forked 27353 +[10454] Forked 27354 +(27353) found +(27354) found +[10453] Forked 27355 +[10452] Forked 27356 +(27355) found +(27356) found +[10451] Forked 27357 +[10450] Forked 27358 +(27357) found +(27358) found +[10449] Forked 27359 +[10448] Forked 27360 +(27359) found +(27360) found +[10447] Forked 27361 +[10446] Forked 27362 +(27361) found +(27362) found +[10445] Forked 27363 +[10444] Forked 27364 +(27363) found +(27364) found +[10443] Forked 27365 +[10442] Forked 27366 +(27365) found +(27366) found +[10441] Forked 27367 +[10440] Forked 27368 +(27367) found +(27368) found +[10439] Forked 27369 +(27369) found +[10438] Forked 27370 +[10437] Forked 27371 +(27370) found +(27371) found +[10436] Forked 27372 +[10435] Forked 27373 +[10434] Forked 27374 +(27372) found +(27373) found +(27374) found +[10433] Forked 27375 +(27375) found +[10432] Forked 27376 +(27376) found +[10431] Forked 27377 +(27377) found +[10430] Forked 27378 +(27378) found +[10429] Forked 27379 +(27379) found +[10428] Forked 27380 +(27380) found +[10427] Forked 27381 +(27381) found +[10426] Forked 27382 +(27382) found +[10425] Forked 27383 +(27383) found +[10424] Forked 27384 +(27384) found +[10423] Forked 27385 +(27385) found +[10422] Forked 27386 +(27386) found +[10421] Forked 27387 +(27387) found +[10420] Forked 27388 +(27388) found +[10419] Forked 27389 +(27389) found +[10418] Forked 27390 +(27390) found +[10417] Forked 27391 +(27391) found +[10416] Forked 27392 +(27392) found +[10415] Forked 27393 +(27393) found +[10414] Forked 27394 +(27394) found +[10413] Forked 27395 +(27395) found +[10412] Forked 27396 +(27396) found +[10411] Forked 27397 +(27397) found +[10410] Forked 27398 +(27398) found +[10409] Forked 27399 +(27399) found +[10408] Forked 27400 +(27400) found +[10407] Forked 27401 +(27401) found +[10406] Forked 27402 +(27402) found +[10405] Forked 27403 +(27403) found +[10404] Forked 27404 +(27404) found +[10403] Forked 27405 +(27405) found +[10402] Forked 27406 +(27406) found +[10401] Forked 27407 +(27407) found +[10400] Forked 27408 +(27408) found +[10399] Forked 27409 +(27409) found +[10398] Forked 27410 +(27410) found +[10397] Forked 27411 +[10396] Forked 27412 +(27411) found +(27412) found +[10395] Forked 27413 +[10394] Forked 27414 +(27413) found +(27414) found +[10393] Forked 27415 +[10392] Forked 27416 +(27415) found +(27416) found +[10391] Forked 27417 +[10390] Forked 27418 +(27417) found +(27418) found +[10389] Forked 27419 +[10388] Forked 27420 +(27419) found +(27420) found +[10387] Forked 27421 +[10386] Forked 27422 +(27421) found +(27422) found +[10385] Forked 27423 +[10384] Forked 27424 +(27423) found +(27424) found +[10383] Forked 27425 +[10382] Forked 27426 +(27425) found +(27426) found +[10381] Forked 27427 +[10380] Forked 27428 +(27427) found +(27428) found +[10379] Forked 27429 +[10378] Forked 27430 +(27429) found +(27430) found +[10377] Forked 27431 +[10376] Forked 27432 +(27431) found +(27432) found +[10375] Forked 27433 +[10374] Forked 27434 +(27433) found +(27434) found +[10373] Forked 27435 +[10372] Forked 27436 +(27435) found +(27436) found +[10371] Forked 27437 +[10370] Forked 27438 +(27437) found +(27438) found +[10369] Forked 27439 +[10368] Forked 27440 +(27439) found +(27440) found +[10367] Forked 27441 +[10366] Forked 27442 +(27441) found +(27442) found +[10365] Forked 27443 +[10364] Forked 27444 +(27443) found +(27444) found +[10363] Forked 27445 +[10362] Forked 27446 +(27445) found +(27446) found +[10361] Forked 27447 +[10360] Forked 27448 +(27447) found +(27448) found +[10359] Forked 27449 +[10358] Forked 27450 +(27449) found +(27450) found +[10357] Forked 27451 +[10356] Forked 27452 +(27451) found +(27452) found +[10355] Forked 27453 +[10354] Forked 27454 +(27453) found +(27454) found +[10353] Forked 27455 +(27455) found +[10352] Forked 27456 +(27456) found +[10351] Forked 27457 +(27457) found +[10350] Forked 27458 +(27458) found +[10349] Forked 27459 +(27459) found +[10348] Forked 27460 +(27460) found +[10347] Forked 27461 +(27461) found +[10346] Forked 27462 +(27462) found +[10345] Forked 27463 +(27463) found +[10344] Forked 27464 +(27464) found +[10343] Forked 27465 +(27465) found +[10342] Forked 27466 +(27466) found +[10341] Forked 27467 +(27467) found +[10340] Forked 27468 +(27468) found +[10339] Forked 27469 +(27469) found +[10338] Forked 27470 +(27470) found +[10337] Forked 27471 +(27471) found +[10336] Forked 27472 +(27472) found +[10335] Forked 27473 +(27473) found +[10334] Forked 27474 +(27474) found +[10333] Forked 27475 +(27475) found +[10332] Forked 27476 +(27476) found +[10331] Forked 27477 +(27477) found +[10330] Forked 27478 +(27478) found +[10329] Forked 27479 +(27479) found +[10328] Forked 27480 +(27480) found +[10327] Forked 27481 +(27481) found +[10326] Forked 27482 +(27482) found +[10325] Forked 27483 +(27483) found +[10324] Forked 27484 +(27484) found +[10323] Forked 27485 +(27485) found +[10322] Forked 27486 +(27486) found +[10321] Forked 27487 +(27487) found +[10320] Forked 27488 +(27488) found +[10319] Forked 27489 +(27489) found +[10318] Forked 27490 +(27490) found +[10317] Forked 27491 +(27491) found +[10316] Forked 27492 +(27492) found +[10315] Forked 27493 +[10314] Forked 27494 +(27493) found +(27494) found +[10313] Forked 27495 +[10312] Forked 27496 +(27495) found +(27496) found +[10311] Forked 27497 +[10310] Forked 27498 +(27497) found +(27498) found +[10309] Forked 27499 +[10308] Forked 27500 +(27499) found +(27500) found +[10307] Forked 27501 +[10306] Forked 27502 +(27501) found +(27502) found +[10305] Forked 27503 +[10304] Forked 27504 +(27503) found +(27504) found +[10303] Forked 27505 +[10302] Forked 27506 +(27505) found +(27506) found +[10301] Forked 27507 +[10300] Forked 27508 +(27507) found +(27508) found +[10299] Forked 27509 +[10298] Forked 27510 +(27509) found +(27510) found +[10297] Forked 27511 +[10296] Forked 27512 +(27511) found +(27512) found +[10295] Forked 27513 +[10294] Forked 27514 +(27513) found +(27514) found +[10293] Forked 27515 +[10292] Forked 27516 +(27515) found +(27516) found +[10291] Forked 27517 +[10290] Forked 27518 +(27517) found +(27518) found +[10289] Forked 27519 +[10288] Forked 27520 +(27519) found +(27520) found +[10287] Forked 27521 +[10286] Forked 27522 +(27521) found +(27522) found +[10285] Forked 27523 +[10284] Forked 27524 +(27523) found +(27524) found +[10283] Forked 27525 +[10282] Forked 27526 +(27525) found +(27526) found +[10281] Forked 27527 +[10280] Forked 27528 +(27527) found +(27528) found +[10279] Forked 27529 +[10278] Forked 27530 +(27529) found +(27530) found +[10277] Forked 27531 +[10276] Forked 27532 +(27531) found +(27532) found +[10275] Forked 27533 +[10274] Forked 27534 +(27533) found +(27534) found +[10273] Forked 27535 +[10272] Forked 27536 +(27535) found +(27536) found +[10271] Forked 27537 +(27537) found +[10270] Forked 27538 +(27538) found +[10269] Forked 27539 +(27539) found +[10268] Forked 27540 +(27540) found +[10267] Forked 27541 +(27541) found +[10266] Forked 27542 +(27542) found +[10265] Forked 27543 +(27543) found +[10264] Forked 27544 +(27544) found +[10263] Forked 27545 +(27545) found +[10262] Forked 27546 +(27546) found +[10261] Forked 27547 +(27547) found +[10260] Forked 27548 +(27548) found +[10259] Forked 27549 +(27549) found +[10258] Forked 27550 +(27550) found +[10257] Forked 27551 +(27551) found +[10256] Forked 27552 +(27552) found +[10255] Forked 27553 +(27553) found +[10254] Forked 27554 +(27554) found +[10253] Forked 27555 +(27555) found +[10252] Forked 27556 +(27556) found +[10251] Forked 27557 +(27557) found +[10250] Forked 27558 +(27558) found +[10249] Forked 27559 +(27559) found +[10248] Forked 27560 +(27560) found +[10247] Forked 27561 +(27561) found +[10246] Forked 27562 +(27562) found +[10245] Forked 27563 +(27563) found +[10244] Forked 27564 +(27564) found +[10243] Forked 27565 +(27565) found +[10242] Forked 27566 +(27566) found +[10241] Forked 27567 +(27567) found +[10240] Forked 27568 +(27568) found +[10239] Forked 27569 +(27569) found +[10238] Forked 27570 +(27570) found +[10237] Forked 27571 +(27571) found +[10236] Forked 27572 +(27572) found +[10235] Forked 27573 +(27573) found +[10234] Forked 27574 +(27574) found +[10233] Forked 27575 +(27575) found +[10232] Forked 27576 +[10231] Forked 27577 +(27576) found +(27577) found +[10230] Forked 27578 +[10229] Forked 27579 +(27578) found +(27579) found +[10228] Forked 27580 +[10227] Forked 27581 +(27580) found +(27581) found +[10226] Forked 27582 +[10225] Forked 27583 +(27582) found +(27583) found +[10224] Forked 27584 +[10223] Forked 27585 +(27584) found +(27585) found +[10222] Forked 27586 +[10221] Forked 27587 +(27586) found +(27587) found +[10220] Forked 27588 +[10219] Forked 27589 +(27588) found +(27589) found +[10218] Forked 27590 +[10217] Forked 27591 +(27590) found +(27591) found +[10216] Forked 27592 +[10215] Forked 27593 +(27592) found +(27593) found +[10214] Forked 27594 +[10213] Forked 27595 +(27594) found +(27595) found +[10212] Forked 27596 +[10211] Forked 27597 +(27596) found +(27597) found +[10210] Forked 27598 +[10209] Forked 27599 +(27598) found +(27599) found +[10208] Forked 27600 +[10207] Forked 27601 +(27600) found +(27601) found +[10206] Forked 27602 +[10205] Forked 27603 +(27602) found +(27603) found +[10204] Forked 27604 +[10203] Forked 27605 +(27604) found +(27605) found +[10202] Forked 27606 +[10201] Forked 27607 +(27606) found +(27607) found +[10200] Forked 27608 +[10199] Forked 27609 +(27608) found +(27609) found +[10198] Forked 27610 +[10197] Forked 27611 +(27610) found +(27611) found +[10196] Forked 27612 +[10195] Forked 27613 +(27612) found +(27613) found +[10194] Forked 27614 +[10193] Forked 27615 +(27614) found +(27615) found +[10192] Forked 27616 +[10191] Forked 27617 +(27616) found +(27617) found +[10190] Forked 27618 +[10189] Forked 27619 +(27618) found +(27619) found +[10188] Forked 27620 +(27620) found +[10187] Forked 27621 +(27621) found +[10186] Forked 27622 +(27622) found +[10185] Forked 27623 +(27623) found +[10184] Forked 27624 +(27624) found +[10183] Forked 27625 +(27625) found +[10182] Forked 27626 +(27626) found +[10181] Forked 27627 +(27627) found +[10180] Forked 27628 +(27628) found +[10179] Forked 27629 +(27629) found +[10178] Forked 27630 +(27630) found +[10177] Forked 27631 +(27631) found +[10176] Forked 27632 +(27632) found +[10175] Forked 27633 +(27633) found +[10174] Forked 27634 +(27634) found +[10173] Forked 27635 +(27635) found +[10172] Forked 27636 +(27636) found +[10171] Forked 27637 +(27637) found +[10170] Forked 27638 +(27638) found +[10169] Forked 27639 +(27639) found +[10168] Forked 27640 +(27640) found +[10167] Forked 27641 +(27641) found +[10166] Forked 27642 +(27642) found +[10165] Forked 27643 +(27643) found +[10164] Forked 27644 +(27644) found +[10163] Forked 27645 +(27645) found +[10162] Forked 27646 +(27646) found +[10161] Forked 27647 +(27647) found +[10160] Forked 27648 +(27648) found +[10159] Forked 27649 +(27649) found +[10158] Forked 27650 +(27650) found +[10157] Forked 27651 +(27651) found +[10156] Forked 27652 +(27652) found +[10155] Forked 27653 +(27653) found +[10154] Forked 27654 +(27654) found +[10153] Forked 27655 +(27655) found +[10152] Forked 27656 +(27656) found +[10151] Forked 27657 +(27657) found +[10150] Forked 27658 +[10149] Forked 27659 +(27658) found +(27659) found +[10148] Forked 27660 +[10147] Forked 27661 +(27660) found +(27661) found +[10146] Forked 27662 +[10145] Forked 27663 +(27662) found +(27663) found +[10144] Forked 27664 +[10143] Forked 27665 +(27664) found +(27665) found +[10142] Forked 27666 +[10141] Forked 27667 +(27666) found +(27667) found +[10140] Forked 27668 +[10139] Forked 27669 +(27668) found +(27669) found +[10138] Forked 27670 +[10137] Forked 27671 +(27670) found +(27671) found +[10136] Forked 27672 +[10135] Forked 27673 +(27672) found +(27673) found +[10134] Forked 27674 +[10133] Forked 27675 +(27674) found +(27675) found +[10132] Forked 27676 +[10131] Forked 27677 +(27676) found +(27677) found +[10130] Forked 27678 +[10129] Forked 27679 +(27678) found +(27679) found +[10128] Forked 27680 +[10127] Forked 27681 +(27680) found +(27681) found +[10126] Forked 27682 +[10125] Forked 27683 +(27682) found +(27683) found +[10124] Forked 27684 +[10123] Forked 27685 +(27684) found +(27685) found +[10122] Forked 27686 +[10121] Forked 27687 +(27686) found +(27687) found +[10120] Forked 27688 +[10119] Forked 27689 +(27688) found +(27689) found +[10118] Forked 27691 +[10117] Forked 27692 +(27691) found +(27692) found +[10116] Forked 27693 +[10115] Forked 27694 +(27693) found +(27694) found +[10114] Forked 27695 +[10113] Forked 27696 +(27695) found +(27696) found +[10112] Forked 27697 +[10111] Forked 27698 +(27697) found +(27698) found +[10110] Forked 27699 +[10109] Forked 27700 +(27699) found +(27700) found +[10108] Forked 27701 +[10107] Forked 27702 +(27701) found +(27702) found +[10106] Forked 27703 +(27703) found +[10105] Forked 27704 +(27704) found +[10104] Forked 27705 +(27705) found +[10103] Forked 27706 +(27706) found +[10102] Forked 27707 +(27707) found +[10101] Forked 27708 +(27708) found +[10100] Forked 27709 +(27709) found +[10099] Forked 27710 +(27710) found +[10098] Forked 27711 +(27711) found +[10097] Forked 27712 +(27712) found +[10096] Forked 27713 +(27713) found +[10095] Forked 27714 +(27714) found +[10094] Forked 27715 +(27715) found +[10093] Forked 27716 +(27716) found +[10092] Forked 27717 +(27717) found +[10091] Forked 27718 +(27718) found +[10090] Forked 27719 +(27719) found +[10089] Forked 27720 +(27720) found +[10088] Forked 27721 +(27721) found +[10087] Forked 27722 +(27722) found +[10086] Forked 27723 +(27723) found +[10085] Forked 27724 +(27724) found +[10084] Forked 27725 +(27725) found +[10083] Forked 27726 +(27726) found +[10082] Forked 27727 +(27727) found +[10081] Forked 27728 +(27728) found +[10080] Forked 27729 +(27729) found +[10079] Forked 27730 +(27730) found +[10078] Forked 27731 +(27731) found +[10077] Forked 27732 +(27732) found +[10076] Forked 27733 +(27733) found +[10075] Forked 27734 +(27734) found +[10074] Forked 27735 +(27735) found +[10073] Forked 27736 +(27736) found +[10072] Forked 27737 +(27737) found +[10071] Forked 27738 +(27738) found +[10070] Forked 27739 +(27739) found +[10069] Forked 27740 +(27740) found +[10068] Forked 27741 +(27741) found +[10067] Forked 27742 +[10066] Forked 27743 +(27742) found +(27743) found +[10065] Forked 27744 +[10064] Forked 27745 +(27744) found +(27745) found +[10063] Forked 27746 +[10062] Forked 27747 +(27746) found +(27747) found +[10061] Forked 27748 +[10060] Forked 27749 +(27748) found +(27749) found +[10059] Forked 27750 +[10058] Forked 27751 +(27750) found +(27751) found +[10057] Forked 27752 +[10056] Forked 27753 +(27752) found +(27753) found +[10055] Forked 27754 +[10054] Forked 27756 +(27754) found +(27756) found +[10053] Forked 27757 +(27757) found +[10052] Forked 27758 +(27758) found +[10051] Forked 27759 +(27759) found +[10050] Forked 27760 +(27760) found +[10049] Forked 27761 +(27761) found +[10048] Forked 27762 +(27762) found +[10047] Forked 27763 +(27763) found +[10046] Forked 27764 +(27764) found +[10045] Forked 27765 +(27765) found +[10044] Forked 27766 +(27766) found +[10043] Forked 27767 +(27767) found +[10042] Forked 27768 +(27768) found +[10041] Forked 27769 +(27769) found +[10040] Forked 27770 +(27770) found +[10039] Forked 27771 +(27771) found +[10038] Forked 27772 +(27772) found +[10037] Forked 27773 +(27773) found +[10036] Forked 27774 +(27774) found +[10035] Forked 27775 +(27775) found +[10034] Forked 27776 +(27776) found +[10033] Forked 27777 +(27777) found +[10032] Forked 27778 +(27778) found +[10031] Forked 27779 +(27779) found +[10030] Forked 27780 +(27780) found +[10029] Forked 27781 +(27781) found +[10028] Forked 27782 +(27782) found +[10027] Forked 27783 +(27783) found +[10026] Forked 27784 +(27784) found +[10025] Forked 27785 +(27785) found +[10024] Forked 27786 +(27786) found +[10023] Forked 27787 +(27787) found +[10022] Forked 27788 +(27788) found +[10021] Forked 27789 +(27789) found +[10020] Forked 27790 +(27790) found +[10019] Forked 27791 +(27791) found +[10018] Forked 27792 +(27792) found +[10017] Forked 27793 +(27793) found +[10016] Forked 27794 +(27794) found +[10015] Forked 27795 +(27795) found +[10014] Forked 27796 +(27796) found +[10013] Forked 27797 +(27797) found +[10012] Forked 27798 +(27798) found +[10011] Forked 27799 +(27799) found +[10010] Forked 27800 +(27800) found +[10009] Forked 27801 +(27801) found +[10008] Forked 27802 +(27802) found +[10007] Forked 27803 +(27803) found +[10006] Forked 27804 +(27804) found +[10005] Forked 27805 +(27805) found +[10004] Forked 27806 +(27806) found +[10003] Forked 27807 +(27807) found +[10002] Forked 27808 +(27808) found +[10001] Forked 27809 +(27809) found +[10000] Forked 27810 +(27810) found +[9999] Forked 27811 +(27811) found +[9998] Forked 27812 +[9997] Forked 27813 +(27812) found +(27813) found +[9996] Forked 27814 +[9995] Forked 27815 +(27814) found +(27815) found +[9994] Forked 27816 +[9993] Forked 27817 +(27816) found +(27817) found +[9992] Forked 27818 +[9991] Forked 27819 +(27818) found +(27819) found +[9990] Forked 27820 +[9989] Forked 27821 +(27820) found +(27821) found +[9988] Forked 27822 +[9987] Forked 27823 +(27822) found +(27823) found +[9986] Forked 27824 +[9985] Forked 27825 +(27824) found +(27825) found +[9984] Forked 27826 +[9983] Forked 27827 +(27826) found +(27827) found +[9982] Forked 27828 +[9981] Forked 27829 +(27828) found +(27829) found +[9980] Forked 27831 +[9979] Forked 27832 +(27831) found +(27832) found +[9978] Forked 27833 +[9977] Forked 27834 +(27833) found +(27834) found +[9976] Forked 27835 +[9975] Forked 27836 +(27835) found +(27836) found +[9974] Forked 27837 +[9973] Forked 27838 +(27837) found +(27838) found +[9972] Forked 27839 +[9971] Forked 27840 +(27839) found +(27840) found +[9970] Forked 27841 +[9969] Forked 27842 +(27841) found +(27842) found +[9968] Forked 27843 +[9967] Forked 27844 +(27843) found +(27844) found +[9966] Forked 27845 +[9965] Forked 27846 +(27845) found +(27846) found +[9964] Forked 27847 +[9963] Forked 27848 +(27847) found +(27848) found +[9962] Forked 27849 +[9961] Forked 27850 +(27849) found +(27850) found +[9960] Forked 27851 +[9959] Forked 27852 +(27851) found +(27852) found +[9958] Forked 27853 +(27853) found +[9957] Forked 27854 +(27854) found +[9956] Forked 27855 +(27855) found +[9955] Forked 27856 +(27856) found +[9954] Forked 27857 +(27857) found +[9953] Forked 27858 +(27858) found +[9952] Forked 27859 +(27859) found +[9951] Forked 27860 +(27860) found +[9950] Forked 27861 +(27861) found +[9949] Forked 27862 +(27862) found +[9948] Forked 27863 +(27863) found +[9947] Forked 27864 +(27864) found +[9946] Forked 27865 +(27865) found +[9945] Forked 27866 +(27866) found +[9944] Forked 27867 +(27867) found +[9943] Forked 27868 +(27868) found +[9942] Forked 27869 +(27869) found +[9941] Forked 27870 +(27870) found +[9940] Forked 27871 +(27871) found +[9939] Forked 27872 +(27872) found +[9938] Forked 27873 +(27873) found +[9937] Forked 27874 +(27874) found +[9936] Forked 27875 +(27875) found +[9935] Forked 27876 +(27876) found +[9934] Forked 27877 +(27877) found +[9933] Forked 27878 +(27878) found +[9932] Forked 27879 +(27879) found +[9931] Forked 27880 +(27880) found +[9930] Forked 27881 +(27881) found +[9929] Forked 27882 +(27882) found +[9928] Forked 27883 +(27883) found +[9927] Forked 27884 +(27884) found +[9926] Forked 27885 +(27885) found +[9925] Forked 27886 +(27886) found +[9924] Forked 27887 +(27887) found +[9923] Forked 27888 +(27888) found +[9922] Forked 27889 +(27889) found +[9921] Forked 27890 +(27890) found +[9920] Forked 27891 +(27891) found +[9919] Forked 27892 +(27892) found +[9918] Forked 27893 +(27893) found +[9917] Forked 27894 +[9916] Forked 27895 +(27894) found +(27895) found +[9915] Forked 27896 +[9914] Forked 27897 +(27896) found +(27897) found +[9913] Forked 27898 +[9912] Forked 27899 +(27898) found +(27899) found +[9911] Forked 27900 +[9910] Forked 27901 +(27900) found +(27901) found +[9909] Forked 27902 +[9908] Forked 27903 +(27902) found +(27903) found +[9907] Forked 27904 +[9906] Forked 27905 +(27904) found +(27905) found +[9905] Forked 27906 +[9904] Forked 27907 +(27906) found +(27907) found +[9903] Forked 27908 +[9902] Forked 27909 +(27908) found +(27909) found +[9901] Forked 27910 +[9900] Forked 27911 +(27910) found +(27911) found +[9899] Forked 27912 +[9898] Forked 27913 +(27912) found +(27913) found +[9897] Forked 27914 +[9896] Forked 27915 +(27914) found +(27915) found +[9895] Forked 27916 +[9894] Forked 27917 +(27916) found +(27917) found +[9893] Forked 27918 +[9892] Forked 27919 +(27918) found +(27919) found +[9891] Forked 27920 +[9890] Forked 27921 +(27920) found +(27921) found +[9889] Forked 27922 +[9888] Forked 27923 +(27922) found +(27923) found +[9887] Forked 27924 +[9886] Forked 27925 +(27924) found +(27925) found +[9885] Forked 27926 +[9884] Forked 27927 +(27926) found +(27927) found +[9883] Forked 27928 +[9882] Forked 27929 +(27928) found +(27929) found +[9881] Forked 27930 +[9880] Forked 27931 +(27930) found +(27931) found +[9879] Forked 27932 +[9878] Forked 27933 +(27932) found +(27933) found +[9877] Forked 27934 +(27934) found +[9876] Forked 27935 +(27935) found +[9875] Forked 27936 +(27936) found +[9874] Forked 27937 +(27937) found +[9873] Forked 27938 +(27938) found +[9872] Forked 27939 +(27939) found +[9871] Forked 27940 +(27940) found +[9870] Forked 27941 +(27941) found +[9869] Forked 27942 +(27942) found +[9868] Forked 27943 +(27943) found +[9867] Forked 27944 +(27944) found +[9866] Forked 27945 +(27945) found +[9865] Forked 27946 +(27946) found +[9864] Forked 27947 +(27947) found +[9863] Forked 27948 +(27948) found +[9862] Forked 27949 +(27949) found +[9861] Forked 27950 +(27950) found +[9860] Forked 27951 +(27951) found +[9859] Forked 27952 +(27952) found +[9858] Forked 27953 +(27953) found +[9857] Forked 27954 +(27954) found +[9856] Forked 27955 +(27955) found +[9855] Forked 27956 +(27956) found +[9854] Forked 27957 +(27957) found +[9853] Forked 27958 +(27958) found +[9852] Forked 27959 +(27959) found +[9851] Forked 27960 +(27960) found +[9850] Forked 27961 +(27961) found +[9849] Forked 27962 +(27962) found +[9848] Forked 27963 +(27963) found +[9847] Forked 27964 +(27964) found +[9846] Forked 27965 +(27965) found +[9845] Forked 27966 +(27966) found +[9844] Forked 27967 +(27967) found +[9843] Forked 27968 +(27968) found +[9842] Forked 27969 +(27969) found +[9841] Forked 27970 +(27970) found +[9840] Forked 27971 +(27971) found +[9839] Forked 27972 +(27972) found +[9838] Forked 27973 +[9837] Forked 27974 +(27973) found +(27974) found +[9836] Forked 27975 +[9835] Forked 27976 +(27975) found +(27976) found +[9834] Forked 27977 +[9833] Forked 27978 +(27977) found +(27978) found +[9832] Forked 27979 +[9831] Forked 27980 +(27979) found +(27980) found +[9830] Forked 27981 +[9829] Forked 27982 +(27981) found +(27982) found +[9828] Forked 27983 +[9827] Forked 27984 +(27983) found +(27984) found +[9826] Forked 27985 +[9825] Forked 27986 +(27985) found +(27986) found +[9824] Forked 27988 +[9823] Forked 27989 +(27988) found +(27989) found +[9822] Forked 27990 +[9821] Forked 27991 +(27990) found +(27991) found +[9820] Forked 27992 +(27992) found +[9819] Forked 27993 +[9818] Forked 27994 +(27993) found +(27994) found +[9817] Forked 27995 +[9816] Forked 27996 +(27995) found +(27996) found +[9815] Forked 27997 +[9814] Forked 27998 +(27998) found +(27997) found +[9813] Forked 27999 +(27999) found +[9812] Forked 28000 +(28000) found +[9811] Forked 28001 +(28001) found +[9810] Forked 28002 +(28002) found +[9809] Forked 28003 +(28003) found +[9808] Forked 28004 +(28004) found +[9807] Forked 28005 +(28005) found +[9806] Forked 28006 +(28006) found +[9805] Forked 28007 +(28007) found +[9804] Forked 28008 +(28008) found +[9803] Forked 28009 +(28009) found +[9802] Forked 28010 +(28010) found +[9801] Forked 28011 +(28011) found +[9800] Forked 28012 +(28012) found +[9799] Forked 28013 +(28013) found +[9798] Forked 28014 +(28014) found +[9797] Forked 28015 +(28015) found +[9796] Forked 28016 +(28016) found +[9795] Forked 28017 +(28017) found +[9794] Forked 28018 +(28018) found +[9793] Forked 28019 +(28019) found +[9792] Forked 28020 +(28020) found +[9791] Forked 28021 +(28021) found +[9790] Forked 28022 +(28022) found +[9789] Forked 28023 +(28023) found +[9788] Forked 28024 +(28024) found +[9787] Forked 28025 +(28025) found +[9786] Forked 28026 +(28026) found +[9785] Forked 28027 +(28027) found +[9784] Forked 28028 +(28028) found +[9783] Forked 28029 +(28029) found +[9782] Forked 28030 +(28030) found +[9781] Forked 28031 +(28031) found +[9780] Forked 28032 +(28032) found +[9779] Forked 28033 +(28033) found +[9778] Forked 28034 +(28034) found +[9777] Forked 28035 +(28035) found +[9776] Forked 28036 +(28036) found +[9775] Forked 28037 +(28037) found +[9774] Forked 28038 +(28038) found +[9773] Forked 28039 +(28039) found +[9772] Forked 28040 +(28040) found +[9771] Forked 28041 +(28041) found +[9770] Forked 28042 +(28042) found +[9769] Forked 28043 +(28043) found +[9768] Forked 28044 +(28044) found +[9767] Forked 28045 +(28045) found +[9766] Forked 28047 +(28047) found +[9765] Forked 28048 +(28048) found +[9764] Forked 28049 +(28049) found +[9763] Forked 28050 +(28050) found +[9762] Forked 28051 +(28051) found +[9761] Forked 28052 +(28052) found +[9760] Forked 28053 +(28053) found +[9759] Forked 28054 +(28054) found +[9758] Forked 28055 +(28055) found +[9757] Forked 28056 +(28056) found +[9756] Forked 28057 +(28057) found +[9755] Forked 28058 +(28058) found +[9754] Forked 28059 +(28059) found +[9753] Forked 28060 +(28060) found +[9752] Forked 28061 +(28061) found +[9751] Forked 28062 +(28062) found +[9750] Forked 28063 +(28063) found +[9749] Forked 28064 +(28064) found +[9748] Forked 28065 +(28065) found +[9747] Forked 28066 +(28066) found +[9746] Forked 28067 +(28067) found +[9745] Forked 28068 +(28068) found +[9744] Forked 28069 +(28069) found +[9743] Forked 28070 +(28070) found +[9742] Forked 28071 +(28071) found +[9741] Forked 28072 +(28072) found +[9740] Forked 28073 +(28073) found +[9739] Forked 28074 +(28074) found +[9738] Forked 28075 +(28075) found +[9737] Forked 28076 +(28076) found +[9736] Forked 28077 +(28077) found +[9735] Forked 28078 +(28078) found +[9734] Forked 28079 +(28079) found +[9733] Forked 28080 +(28080) found +[9732] Forked 28081 +(28081) found +[9731] Forked 28082 +(28082) found +[9730] Forked 28083 +(28083) found +[9729] Forked 28084 +(28084) found +[9728] Forked 28085 +(28085) found +[9727] Forked 28086 +(28086) found +[9726] Forked 28087 +(28087) found +[9725] Forked 28088 +(28088) found +[9724] Forked 28089 +(28089) found +[9723] Forked 28090 +(28090) found +[9722] Forked 28091 +(28091) found +[9721] Forked 28092 +(28092) found +[9720] Forked 28093 +(28093) found +[9719] Forked 28094 +(28094) found +[9718] Forked 28095 +(28095) found +[9717] Forked 28096 +(28096) found +[9716] Forked 28097 +(28097) found +[9715] Forked 28098 +(28098) found +[9714] Forked 28099 +(28099) found +[9713] Forked 28100 +(28100) found +[9712] Forked 28101 +(28101) found +[9711] Forked 28102 +(28102) found +[9710] Forked 28103 +(28103) found +[9709] Forked 28104 +[9708] Forked 28105 +(28104) found +(28105) found +[9707] Forked 28106 +[9706] Forked 28107 +(28106) found +(28107) found +[9705] Forked 28108 +[9704] Forked 28109 +(28108) found +(28109) found +[9703] Forked 28110 +[9702] Forked 28111 +(28110) found +(28111) found +[9701] Forked 28112 +[9700] Forked 28113 +(28112) found +(28113) found +[9699] Forked 28114 +[9698] Forked 28115 +(28114) found +(28115) found +[9697] Forked 28116 +[9696] Forked 28117 +(28116) found +(28117) found +[9695] Forked 28118 +(28118) found +[9694] Forked 28119 +(28119) found +[9693] Forked 28120 +[9692] Forked 28121 +(28120) found +(28121) found +[9691] Forked 28122 +[9690] Forked 28123 +(28122) found +(28123) found +[9689] Forked 28124 +[9688] Forked 28125 +(28124) found +(28125) found +[9687] Forked 28126 +[9686] Forked 28127 +(28126) found +(28127) found +[9685] Forked 28128 +[9684] Forked 28129 +(28128) found +(28129) found +[9683] Forked 28130 +[9682] Forked 28131 +(28130) found +(28131) found +[9681] Forked 28132 +[9680] Forked 28133 +(28132) found +(28133) found +[9679] Forked 28134 +[9678] Forked 28135 +(28134) found +(28135) found +[9677] Forked 28136 +[9676] Forked 28137 +(28136) found +(28137) found +[9675] Forked 28138 +[9674] Forked 28139 +(28138) found +(28139) found +[9673] Forked 28140 +[9672] Forked 28141 +(28140) found +(28141) found +[9671] Forked 28142 +[9670] Forked 28143 +(28142) found +(28143) found +[9669] Forked 28144 +[9668] Forked 28145 +(28144) found +(28145) found +[9667] Forked 28146 +[9666] Forked 28147 +(28146) found +(28147) found +[9665] Forked 28148 +[9664] Forked 28149 +(28148) found +(28149) found +[9663] Forked 28150 +[9662] Forked 28151 +(28150) found +(28151) found +[9661] Forked 28152 +[9660] Forked 28153 +(28152) found +(28153) found +[9659] Forked 28154 +[9658] Forked 28155 +(28154) found +(28155) found +[9657] Forked 28156 +[9656] Forked 28157 +(28156) found +(28157) found +[9655] Forked 28158 +[9654] Forked 28159 +(28158) found +(28159) found +[9653] Forked 28160 +[9652] Forked 28161 +(28160) found +(28161) found +[9651] Forked 28162 +[9650] Forked 28163 +(28162) found +(28163) found +[9649] Forked 28164 +[9648] Forked 28165 +(28164) found +(28165) found +[9647] Forked 28166 +[9646] Forked 28167 +(28166) found +(28167) found +[9645] Forked 28168 +[9644] Forked 28169 +(28168) found +(28169) found +[9643] Forked 28170 +[9642] Forked 28171 +(28170) found +(28171) found +[9641] Forked 28172 +[9640] Forked 28173 +(28172) found +(28173) found +[9639] Forked 28174 +[9638] Forked 28175 +(28174) found +(28175) found +[9637] Forked 28176 +[9636] Forked 28177 +(28176) found +(28177) found +[9635] Forked 28178 +[9634] Forked 28179 +(28178) found +(28179) found +[9633] Forked 28180 +[9632] Forked 28181 +(28180) found +(28181) found +[9631] Forked 28182 +[9630] Forked 28183 +(28182) found +(28183) found +[9629] Forked 28184 +[9628] Forked 28185 +(28184) found +(28185) found +[9627] Forked 28186 +[9626] Forked 28187 +(28186) found +(28187) found +[9625] Forked 28188 +[9624] Forked 28189 +(28188) found +(28189) found +[9623] Forked 28190 +[9622] Forked 28191 +(28190) found +(28191) found +[9621] Forked 28192 +(28192) found +[9620] Forked 28193 +(28193) found +[9619] Forked 28194 +(28194) found +[9618] Forked 28195 +(28195) found +[9617] Forked 28196 +(28196) found +[9616] Forked 28197 +(28197) found +[9615] Forked 28198 +(28198) found +[9614] Forked 28199 +(28199) found +[9613] Forked 28200 +(28200) found +[9612] Forked 28201 +(28201) found +[9611] Forked 28202 +(28202) found +[9610] Forked 28203 +(28203) found +[9609] Forked 28204 +(28204) found +[9608] Forked 28205 +(28205) found +[9607] Forked 28206 +(28206) found +[9606] Forked 28207 +(28207) found +[9605] Forked 28208 +(28208) found +[9604] Forked 28209 +(28209) found +[9603] Forked 28210 +(28210) found +[9602] Forked 28211 +(28211) found +[9601] Forked 28212 +(28212) found +[9600] Forked 28213 +(28213) found +[9599] Forked 28214 +(28214) found +[9598] Forked 28215 +(28215) found +[9597] Forked 28216 +(28216) found +[9596] Forked 28217 +(28217) found +[9595] Forked 28218 +(28218) found +[9594] Forked 28219 +(28219) found +[9593] Forked 28220 +(28220) found +[9592] Forked 28221 +(28221) found +[9591] Forked 28222 +(28222) found +[9590] Forked 28223 +(28223) found +[9589] Forked 28224 +(28224) found +[9588] Forked 28225 +(28225) found +[9587] Forked 28226 +[9586] Forked 28227 +(28226) found +(28227) found +[9585] Forked 28228 +[9584] Forked 28229 +(28228) found +(28229) found +[9583] Forked 28230 +[9582] Forked 28231 +(28230) found +(28231) found +[9581] Forked 28232 +[9580] Forked 28233 +(28232) found +(28233) found +[9579] Forked 28234 +[9578] Forked 28235 +(28234) found +(28235) found +[9577] Forked 28236 +[9576] Forked 28237 +(28236) found +(28237) found +[9575] Forked 28238 +[9574] Forked 28239 +(28238) found +(28239) found +[9573] Forked 28240 +[9572] Forked 28241 +(28240) found +(28241) found +[9571] Forked 28242 +[9570] Forked 28243 +(28242) found +(28243) found +[9569] Forked 28244 +[9568] Forked 28245 +(28244) found +(28245) found +[9567] Forked 28246 +[9566] Forked 28247 +(28246) found +(28247) found +[9565] Forked 28248 +[9564] Forked 28249 +(28248) found +(28249) found +[9563] Forked 28250 +[9562] Forked 28251 +(28250) found +(28251) found +[9561] Forked 28252 +[9560] Forked 28253 +(28252) found +(28253) found +[9559] Forked 28254 +[9558] Forked 28255 +(28254) found +(28255) found +[9557] Forked 28256 +[9556] Forked 28257 +(28256) found +(28257) found +[9555] Forked 28258 +[9554] Forked 28259 +(28258) found +(28259) found +[9553] Forked 28260 +[9552] Forked 28261 +(28260) found +(28261) found +[9551] Forked 28262 +[9550] Forked 28263 +(28262) found +(28263) found +[9549] Forked 28264 +[9548] Forked 28265 +(28264) found +(28265) found +[9547] Forked 28266 +[9546] Forked 28267 +(28266) found +(28267) found +[9545] Forked 28268 +[9544] Forked 28269 +(28268) found +(28269) found +[9543] Forked 28270 +[9542] Forked 28271 +(28270) found +(28271) found +[9541] Forked 28272 +(28272) found +[9540] Forked 28273 +(28273) found +[9539] Forked 28274 +(28274) found +[9538] Forked 28275 +(28275) found +[9537] Forked 28276 +(28276) found +[9536] Forked 28277 +(28277) found +[9535] Forked 28278 +(28278) found +[9534] Forked 28279 +(28279) found +[9533] Forked 28280 +(28280) found +[9532] Forked 28281 +(28281) found +[9531] Forked 28282 +(28282) found +[9530] Forked 28283 +(28283) found +[9529] Forked 28284 +(28284) found +[9528] Forked 28285 +(28285) found +[9527] Forked 28286 +(28286) found +[9526] Forked 28287 +(28287) found +[9525] Forked 28288 +(28288) found +[9524] Forked 28289 +(28289) found +[9523] Forked 28290 +(28290) found +[9522] Forked 28291 +(28291) found +[9521] Forked 28292 +(28292) found +[9520] Forked 28293 +(28293) found +[9519] Forked 28294 +(28294) found +[9518] Forked 28295 +(28295) found +[9517] Forked 28296 +(28296) found +[9516] Forked 28297 +(28297) found +[9515] Forked 28298 +(28298) found +[9514] Forked 28299 +(28299) found +[9513] Forked 28300 +(28300) found +[9512] Forked 28301 +(28301) found +[9511] Forked 28302 +(28302) found +[9510] Forked 28303 +(28303) found +[9509] Forked 28304 +(28304) found +[9508] Forked 28305 +(28305) found +[9507] Forked 28306 +(28306) found +[9506] Forked 28307 +(28307) found +[9505] Forked 28308 +(28308) found +[9504] Forked 28309 +[9503] Forked 28310 +(28309) found +(28310) found +[9502] Forked 28311 +[9501] Forked 28312 +(28311) found +(28312) found +[9500] Forked 28313 +[9499] Forked 28314 +(28313) found +(28314) found +[9498] Forked 28315 +[9497] Forked 28316 +(28315) found +(28316) found +[9496] Forked 28317 +[9495] Forked 28318 +(28317) found +(28318) found +[9494] Forked 28319 +[9493] Forked 28320 +(28319) found +(28320) found +[9492] Forked 28321 +[9491] Forked 28322 +(28321) found +(28322) found +[9490] Forked 28323 +[9489] Forked 28324 +(28323) found +(28324) found +[9488] Forked 28325 +[9487] Forked 28326 +(28325) found +(28326) found +[9486] Forked 28327 +[9485] Forked 28328 +(28327) found +(28328) found +[9484] Forked 28329 +(28329) found +[9483] Forked 28330 +[9482] Forked 28331 +(28330) found +(28331) found +[9481] Forked 28332 +[9480] Forked 28333 +(28332) found +(28333) found +[9479] Forked 28334 +[9478] Forked 28335 +(28334) found +(28335) found +[9477] Forked 28336 +[9476] Forked 28337 +(28336) found +(28337) found +[9475] Forked 28338 +[9474] Forked 28339 +(28338) found +(28339) found +[9473] Forked 28340 +[9472] Forked 28341 +(28340) found +(28341) found +[9471] Forked 28342 +[9470] Forked 28343 +(28342) found +(28343) found +[9469] Forked 28344 +[9468] Forked 28345 +(28344) found +(28345) found +[9467] Forked 28346 +[9466] Forked 28347 +(28346) found +(28347) found +[9465] Forked 28348 +[9464] Forked 28349 +(28348) found +(28349) found +[9463] Forked 28350 +[9462] Forked 28351 +(28350) found +(28351) found +[9461] Forked 28352 +[9460] Forked 28353 +(28352) found +(28353) found +[9459] Forked 28354 +(28354) found +[9458] Forked 28355 +(28355) found +[9457] Forked 28356 +(28356) found +[9456] Forked 28357 +(28357) found +[9455] Forked 28358 +(28358) found +[9454] Forked 28359 +(28359) found +[9453] Forked 28360 +(28360) found +[9452] Forked 28361 +(28361) found +[9451] Forked 28362 +(28362) found +[9450] Forked 28363 +(28363) found +[9449] Forked 28364 +(28364) found +[9448] Forked 28365 +(28365) found +[9447] Forked 28366 +(28366) found +[9446] Forked 28367 +(28367) found +[9445] Forked 28368 +(28368) found +[9444] Forked 28369 +(28369) found +[9443] Forked 28370 +(28370) found +[9442] Forked 28371 +(28371) found +[9441] Forked 28372 +(28372) found +[9440] Forked 28373 +(28373) found +[9439] Forked 28374 +(28374) found +[9438] Forked 28375 +(28375) found +[9437] Forked 28376 +(28376) found +[9436] Forked 28377 +(28377) found +[9435] Forked 28378 +(28378) found +[9434] Forked 28379 +(28379) found +[9433] Forked 28380 +(28380) found +[9432] Forked 28381 +(28381) found +[9431] Forked 28382 +(28382) found +[9430] Forked 28383 +(28383) found +[9429] Forked 28384 +(28384) found +[9428] Forked 28385 +(28385) found +[9427] Forked 28386 +(28386) found +[9426] Forked 28387 +(28387) found +[9425] Forked 28388 +(28388) found +[9424] Forked 28389 +[9423] Forked 28390 +(28389) found +(28390) found +[9422] Forked 28391 +[9421] Forked 28392 +(28391) found +(28392) found +[9420] Forked 28393 +[9419] Forked 28394 +(28393) found +(28394) found +[9418] Forked 28395 +[9417] Forked 28396 +(28395) found +(28396) found +[9416] Forked 28397 +[9415] Forked 28398 +(28397) found +(28398) found +[9414] Forked 28399 +[9413] Forked 28400 +(28399) found +(28400) found +[9412] Forked 28401 +[9411] Forked 28402 +(28401) found +(28402) found +[9410] Forked 28403 +[9409] Forked 28404 +(28403) found +(28404) found +[9408] Forked 28405 +[9407] Forked 28406 +(28405) found +(28406) found +[9406] Forked 28407 +[9405] Forked 28408 +(28407) found +(28408) found +[9404] Forked 28409 +[9403] Forked 28410 +(28409) found +(28410) found +[9402] Forked 28411 +[9401] Forked 28412 +(28411) found +(28412) found +[9400] Forked 28413 +[9399] Forked 28414 +(28413) found +(28414) found +[9398] Forked 28415 +[9397] Forked 28416 +(28415) found +(28416) found +[9396] Forked 28417 +[9395] Forked 28418 +(28417) found +(28418) found +[9394] Forked 28419 +[9393] Forked 28420 +(28419) found +(28420) found +[9392] Forked 28421 +[9391] Forked 28422 +(28421) found +(28422) found +[9390] Forked 28423 +[9389] Forked 28424 +(28423) found +(28424) found +[9388] Forked 28425 +[9387] Forked 28426 +(28425) found +(28426) found +[9386] Forked 28427 +[9385] Forked 28428 +(28427) found +(28428) found +[9384] Forked 28429 +[9383] Forked 28430 +(28429) found +(28430) found +[9382] Forked 28431 +[9381] Forked 28432 +(28431) found +(28432) found +[9380] Forked 28433 +[9379] Forked 28434 +(28433) found +(28434) found +[9378] Forked 28435 +(28435) found +[9377] Forked 28436 +(28436) found +[9376] Forked 28437 +(28437) found +[9375] Forked 28438 +(28438) found +[9374] Forked 28439 +(28439) found +[9373] Forked 28440 +(28440) found +[9372] Forked 28441 +(28441) found +[9371] Forked 28442 +(28442) found +[9370] Forked 28443 +(28443) found +[9369] Forked 28444 +(28444) found +[9368] Forked 28445 +(28445) found +[9367] Forked 28446 +(28446) found +[9366] Forked 28447 +(28447) found +[9365] Forked 28448 +(28448) found +[9364] Forked 28449 +(28449) found +[9363] Forked 28450 +(28450) found +[9362] Forked 28451 +(28451) found +[9361] Forked 28452 +(28452) found +[9360] Forked 28453 +(28453) found +[9359] Forked 28454 +(28454) found +[9358] Forked 28455 +(28455) found +[9357] Forked 28456 +(28456) found +[9356] Forked 28457 +(28457) found +[9355] Forked 28458 +(28458) found +[9354] Forked 28459 +(28459) found +[9353] Forked 28460 +(28460) found +[9352] Forked 28461 +(28461) found +[9351] Forked 28462 +(28462) found +[9350] Forked 28463 +(28463) found +[9349] Forked 28464 +(28464) found +[9348] Forked 28465 +(28465) found +[9347] Forked 28466 +(28466) found +[9346] Forked 28467 +(28467) found +[9345] Forked 28468 +(28468) found +[9344] Forked 28469 +(28469) found +[9343] Forked 28470 +[9342] Forked 28471 +(28470) found +(28471) found +[9341] Forked 28472 +[9340] Forked 28473 +(28472) found +(28473) found +[9339] Forked 28474 +[9338] Forked 28475 +(28474) found +(28475) found +[9337] Forked 28476 +[9336] Forked 28477 +(28476) found +(28477) found +[9335] Forked 28478 +[9334] Forked 28479 +(28478) found +(28479) found +[9333] Forked 28480 +[9332] Forked 28481 +(28480) found +(28481) found +[9331] Forked 28482 +[9330] Forked 28483 +(28482) found +(28483) found +[9329] Forked 28484 +[9328] Forked 28485 +(28484) found +(28485) found +[9327] Forked 28486 +[9326] Forked 28487 +(28486) found +(28487) found +[9325] Forked 28488 +[9324] Forked 28489 +(28488) found +(28489) found +[9323] Forked 28490 +[9322] Forked 28491 +(28490) found +(28491) found +[9321] Forked 28492 +[9320] Forked 28493 +(28492) found +(28493) found +[9319] Forked 28494 +[9318] Forked 28495 +(28494) found +(28495) found +[9317] Forked 28496 +[9316] Forked 28497 +(28496) found +(28497) found +[9315] Forked 28498 +[9314] Forked 28499 +(28498) found +(28499) found +[9313] Forked 28500 +[9312] Forked 28501 +(28500) found +(28501) found +[9311] Forked 28502 +[9310] Forked 28503 +(28502) found +(28503) found +[9309] Forked 28504 +[9308] Forked 28505 +(28504) found +(28505) found +[9307] Forked 28506 +[9306] Forked 28507 +(28506) found +(28507) found +[9305] Forked 28508 +[9304] Forked 28509 +(28508) found +(28509) found +[9303] Forked 28510 +[9302] Forked 28511 +(28510) found +(28511) found +[9301] Forked 28512 +[9300] Forked 28513 +(28512) found +(28513) found +[9299] Forked 28514 +[9298] Forked 28515 +(28514) found +(28515) found +[9297] Forked 28516 +(28516) found +[9296] Forked 28517 +(28517) found +[9295] Forked 28518 +(28518) found +[9294] Forked 28519 +(28519) found +[9293] Forked 28520 +(28520) found +[9292] Forked 28521 +(28521) found +[9291] Forked 28522 +(28522) found +[9290] Forked 28523 +(28523) found +[9289] Forked 28524 +(28524) found +[9288] Forked 28525 +(28525) found +[9287] Forked 28526 +(28526) found +[9286] Forked 28527 +(28527) found +[9285] Forked 28528 +(28528) found +[9284] Forked 28529 +(28529) found +[9283] Forked 28530 +(28530) found +[9282] Forked 28531 +(28531) found +[9281] Forked 28532 +(28532) found +[9280] Forked 28533 +(28533) found +[9279] Forked 28534 +(28534) found +[9278] Forked 28535 +(28535) found +[9277] Forked 28536 +(28536) found +[9276] Forked 28537 +(28537) found +[9275] Forked 28538 +(28538) found +[9274] Forked 28539 +(28539) found +[9273] Forked 28540 +(28540) found +[9272] Forked 28541 +(28541) found +[9271] Forked 28542 +(28542) found +[9270] Forked 28543 +(28543) found +[9269] Forked 28544 +(28544) found +[9268] Forked 28545 +(28545) found +[9267] Forked 28546 +(28546) found +[9266] Forked 28547 +(28547) found +[9265] Forked 28548 +(28548) found +[9264] Forked 28549 +(28549) found +[9263] Forked 28550 +[9262] Forked 28551 +(28550) found +(28551) found +[9261] Forked 28552 +[9260] Forked 28553 +(28552) found +(28553) found +[9259] Forked 28554 +[9258] Forked 28555 +(28554) found +(28555) found +[9257] Forked 28556 +[9256] Forked 28557 +(28556) found +(28557) found +[9255] Forked 28558 +[9254] Forked 28559 +(28558) found +(28559) found +[9253] Forked 28560 +[9252] Forked 28561 +(28560) found +(28561) found +[9251] Forked 28562 +[9250] Forked 28563 +(28562) found +(28563) found +[9249] Forked 28564 +[9248] Forked 28565 +(28564) found +(28565) found +[9247] Forked 28566 +[9246] Forked 28567 +(28566) found +(28567) found +[9245] Forked 28568 +[9244] Forked 28569 +(28568) found +(28569) found +[9243] Forked 28570 +[9242] Forked 28571 +(28570) found +(28571) found +[9241] Forked 28572 +(28572) found +[9240] Forked 28573 +[9239] Forked 28574 +(28573) found +(28574) found +[9238] Forked 28575 +[9237] Forked 28576 +(28575) found +(28576) found +[9236] Forked 28577 +[9235] Forked 28578 +(28577) found +(28578) found +[9234] Forked 28579 +[9233] Forked 28580 +(28579) found +(28580) found +[9232] Forked 28581 +[9231] Forked 28582 +(28581) found +(28582) found +[9230] Forked 28583 +[9229] Forked 28584 +(28583) found +(28584) found +[9228] Forked 28585 +[9227] Forked 28586 +(28585) found +(28586) found +[9226] Forked 28587 +[9225] Forked 28588 +(28587) found +(28588) found +[9224] Forked 28589 +[9223] Forked 28590 +(28589) found +(28590) found +[9222] Forked 28591 +[9221] Forked 28592 +(28591) found +(28592) found +[9220] Forked 28593 +[9219] Forked 28594 +(28593) found +(28594) found +[9218] Forked 28595 +[9217] Forked 28596 +(28595) found +(28596) found +[9216] Forked 28597 +[9215] Forked 28598 +(28597) found +(28598) found +[9214] Forked 28599 +[9213] Forked 28600 +(28599) found +(28600) found +[9212] Forked 28601 +[9211] Forked 28602 +(28601) found +(28602) found +[9210] Forked 28603 +[9209] Forked 28604 +(28603) found +(28604) found +[9208] Forked 28605 +[9207] Forked 28606 +(28605) found +(28606) found +[9206] Forked 28607 +[9205] Forked 28608 +(28607) found +(28608) found +[9204] Forked 28609 +[9203] Forked 28610 +(28609) found +(28610) found +[9202] Forked 28611 +[9201] Forked 28612 +(28611) found +(28612) found +[9200] Forked 28613 +[9199] Forked 28614 +(28613) found +(28614) found +[9198] Forked 28615 +[9197] Forked 28616 +(28615) found +(28616) found +[9196] Forked 28617 +[9195] Forked 28618 +(28617) found +(28618) found +[9194] Forked 28619 +[9193] Forked 28620 +(28619) found +(28620) found +[9192] Forked 28621 +[9191] Forked 28622 +(28621) found +(28622) found +[9190] Forked 28623 +[9189] Forked 28624 +(28623) found +(28624) found +[9188] Forked 28625 +[9187] Forked 28626 +(28625) found +(28626) found +[9186] Forked 28627 +[9185] Forked 28628 +(28627) found +(28628) found +[9184] Forked 28629 +[9183] Forked 28630 +(28629) found +(28630) found +[9182] Forked 28631 +[9181] Forked 28632 +(28631) found +(28632) found +[9180] Forked 28633 +[9179] Forked 28634 +(28633) found +(28634) found +[9178] Forked 28635 +[9177] Forked 28636 +(28635) found +(28636) found +[9176] Forked 28637 +[9175] Forked 28638 +(28637) found +(28638) found +[9174] Forked 28639 +[9173] Forked 28640 +(28639) found +(28640) found +[9172] Forked 28641 +(28641) found +[9171] Forked 28642 +(28642) found +[9170] Forked 28643 +(28643) found +[9169] Forked 28644 +(28644) found +[9168] Forked 28645 +(28645) found +[9167] Forked 28646 +(28646) found +[9166] Forked 28647 +(28647) found +[9165] Forked 28648 +(28648) found +[9164] Forked 28649 +(28649) found +[9163] Forked 28650 +(28650) found +[9162] Forked 28651 +(28651) found +[9161] Forked 28652 +(28652) found +[9160] Forked 28653 +(28653) found +[9159] Forked 28654 +(28654) found +[9158] Forked 28655 +(28655) found +[9157] Forked 28656 +(28656) found +[9156] Forked 28657 +(28657) found +[9155] Forked 28658 +(28658) found +[9154] Forked 28659 +(28659) found +[9153] Forked 28660 +(28660) found +[9152] Forked 28661 +(28661) found +[9151] Forked 28662 +(28662) found +[9150] Forked 28663 +(28663) found +[9149] Forked 28664 +(28664) found +[9148] Forked 28665 +(28665) found +[9147] Forked 28666 +(28666) found +[9146] Forked 28667 +(28667) found +[9145] Forked 28668 +(28668) found +[9144] Forked 28669 +(28669) found +[9143] Forked 28670 +(28670) found +[9142] Forked 28671 +(28671) found +[9141] Forked 28672 +(28672) found +[9140] Forked 28673 +(28673) found +[9139] Forked 28674 +(28674) found +[9138] Forked 28675 +(28675) found +[9137] Forked 28676 +(28676) found +[9136] Forked 28677 +(28677) found +[9135] Forked 28679 +(28679) found +[9134] Forked 28680 +[9133] Forked 28681 +(28680) found +(28681) found +[9132] Forked 28682 +[9131] Forked 28683 +(28682) found +(28683) found +[9130] Forked 28684 +[9129] Forked 28685 +(28684) found +(28685) found +[9128] Forked 28686 +[9127] Forked 28687 +(28686) found +(28687) found +[9126] Forked 28688 +[9125] Forked 28689 +(28688) found +(28689) found +[9124] Forked 28690 +[9123] Forked 28691 +(28690) found +(28691) found +[9122] Forked 28692 +[9121] Forked 28693 +(28692) found +(28693) found +[9120] Forked 28694 +[9119] Forked 28696 +(28694) found +(28696) found +[9118] Forked 28697 +[9117] Forked 28698 +(28697) found +(28698) found +[9116] Forked 28699 +[9115] Forked 28700 +(28699) found +(28700) found +[9114] Forked 28701 +[9113] Forked 28702 +(28701) found +(28702) found +[9112] Forked 28703 +[9111] Forked 28704 +(28703) found +(28704) found +[9110] Forked 28705 +[9109] Forked 28706 +(28705) found +(28706) found +[9108] Forked 28707 +[9107] Forked 28708 +(28707) found +(28708) found +[9106] Forked 28709 +[9105] Forked 28710 +(28709) found +(28710) found +[9104] Forked 28711 +[9103] Forked 28712 +(28711) found +(28712) found +[9102] Forked 28713 +[9101] Forked 28714 +(28713) found +(28714) found +[9100] Forked 28715 +[9099] Forked 28716 +(28715) found +(28716) found +[9098] Forked 28717 +[9097] Forked 28718 +(28717) found +(28718) found +[9096] Forked 28719 +[9095] Forked 28720 +(28719) found +(28720) found +[9094] Forked 28721 +[9093] Forked 28722 +(28721) found +(28722) found +[9092] Forked 28723 +[9091] Forked 28724 +(28723) found +(28724) found +[9090] Forked 28725 +(28725) found +[9089] Forked 28726 +(28726) found +[9088] Forked 28727 +(28727) found +[9087] Forked 28728 +(28728) found +[9086] Forked 28729 +(28729) found +[9085] Forked 28730 +(28730) found +[9084] Forked 28731 +(28731) found +[9083] Forked 28732 +(28732) found +[9082] Forked 28733 +(28733) found +[9081] Forked 28734 +(28734) found +[9080] Forked 28735 +(28735) found +[9079] Forked 28736 +(28736) found +[9078] Forked 28737 +(28737) found +[9077] Forked 28738 +(28738) found +[9076] Forked 28739 +(28739) found +[9075] Forked 28740 +(28740) found +[9074] Forked 28741 +(28741) found +[9073] Forked 28742 +(28742) found +[9072] Forked 28743 +(28743) found +[9071] Forked 28744 +(28744) found +[9070] Forked 28745 +(28745) found +[9069] Forked 28746 +(28746) found +[9068] Forked 28747 +(28747) found +[9067] Forked 28748 +(28748) found +[9066] Forked 28749 +(28749) found +[9065] Forked 28750 +(28750) found +[9064] Forked 28751 +(28751) found +[9063] Forked 28752 +(28752) found +[9062] Forked 28753 +(28753) found +[9061] Forked 28754 +(28754) found +[9060] Forked 28755 +(28755) found +[9059] Forked 28756 +(28756) found +[9058] Forked 28757 +(28757) found +[9057] Forked 28758 +(28758) found +[9056] Forked 28759 +(28759) found +[9055] Forked 28760 +(28760) found +[9054] Forked 28761 +(28761) found +[9053] Forked 28762 +[9052] Forked 28763 +(28762) found +(28763) found +[9051] Forked 28764 +[9050] Forked 28765 +(28764) found +(28765) found +[9049] Forked 28766 +[9048] Forked 28767 +(28767) found +(28766) found +[9047] Forked 28768 +(28768) found +[9046] Forked 28769 +(28769) found +[9045] Forked 28770 +(28770) found +[9044] Forked 28771 +(28771) found +[9043] Forked 28772 +(28772) found +[9042] Forked 28773 +(28773) found +[9041] Forked 28774 +(28774) found +[9040] Forked 28775 +(28775) found +[9039] Forked 28776 +(28776) found +[9038] Forked 28777 +(28777) found +[9037] Forked 28778 +(28778) found +[9036] Forked 28779 +(28779) found +[9035] Forked 28780 +(28780) found +[9034] Forked 28781 +(28781) found +[9033] Forked 28782 +(28782) found +[9032] Forked 28783 +(28783) found +[9031] Forked 28784 +(28784) found +[9030] Forked 28785 +(28785) found +[9029] Forked 28786 +(28786) found +[9028] Forked 28787 +(28787) found +[9027] Forked 28788 +(28788) found +[9026] Forked 28789 +(28789) found +[9025] Forked 28790 +(28790) found +[9024] Forked 28791 +(28791) found +[9023] Forked 28792 +(28792) found +[9022] Forked 28793 +(28793) found +[9021] Forked 28794 +(28794) found +[9020] Forked 28795 +(28795) found +[9019] Forked 28796 +(28796) found +[9018] Forked 28797 +(28797) found +[9017] Forked 28798 +(28798) found +[9016] Forked 28799 +(28799) found +[9015] Forked 28800 +(28800) found +[9014] Forked 28801 +(28801) found +[9013] Forked 28802 +(28802) found +[9012] Forked 28803 +(28803) found +[9011] Forked 28804 +(28804) found +[9010] Forked 28805 +(28805) found +[9009] Forked 28806 +(28806) found +[9008] Forked 28807 +(28807) found +[9007] Forked 28808 +(28808) found +[9006] Forked 28809 +(28809) found +[9005] Forked 28810 +(28810) found +[9004] Forked 28811 +(28811) found +[9003] Forked 28812 +(28812) found +[9002] Forked 28813 +(28813) found +[9001] Forked 28814 +(28814) found +[9000] Forked 28815 +(28815) found +[8999] Forked 28816 +(28816) found +[8998] Forked 28817 +(28817) found +[8997] Forked 28818 +(28818) found +[8996] Forked 28819 +(28819) found +[8995] Forked 28820 +(28820) found +[8994] Forked 28821 +(28821) found +[8993] Forked 28822 +(28822) found +[8992] Forked 28823 +(28823) found +[8991] Forked 28824 +(28824) found +[8990] Forked 28825 +(28825) found +[8989] Forked 28826 +(28826) found +[8988] Forked 28827 +(28827) found +[8987] Forked 28828 +(28828) found +[8986] Forked 28829 +(28829) found +[8985] Forked 28830 +(28830) found +[8984] Forked 28831 +(28831) found +[8983] Forked 28832 +(28832) found +[8982] Forked 28833 +[8981] Forked 28834 +(28833) found +(28834) found +[8980] Forked 28835 +[8979] Forked 28836 +(28835) found +(28836) found +[8978] Forked 28837 +[8977] Forked 28838 +(28837) found +(28838) found +[8976] Forked 28839 +[8975] Forked 28840 +(28840) found +(28839) found +[8974] Forked 28841 +(28841) found +[8973] Forked 28842 +(28842) found +[8972] Forked 28843 +(28843) found +[8971] Forked 28844 +(28844) found +[8970] Forked 28845 +(28845) found +[8969] Forked 28846 +(28846) found +[8968] Forked 28847 +(28847) found +[8967] Forked 28848 +(28848) found +[8966] Forked 28849 +(28849) found +[8965] Forked 28850 +(28850) found +[8964] Forked 28851 +(28851) found +[8963] Forked 28852 +(28852) found +[8962] Forked 28853 +(28853) found +[8961] Forked 28854 +(28854) found +[8960] Forked 28855 +(28855) found +[8959] Forked 28856 +(28856) found +[8958] Forked 28857 +(28857) found +[8957] Forked 28858 +(28858) found +[8956] Forked 28859 +(28859) found +[8955] Forked 28860 +(28860) found +[8954] Forked 28861 +(28861) found +[8953] Forked 28862 +(28862) found +[8952] Forked 28863 +(28863) found +[8951] Forked 28864 +(28864) found +[8950] Forked 28865 +(28865) found +[8949] Forked 28866 +(28866) found +[8948] Forked 28867 +(28867) found +[8947] Forked 28868 +(28868) found +[8946] Forked 28869 +(28869) found +[8945] Forked 28870 +(28870) found +[8944] Forked 28871 +(28871) found +[8943] Forked 28872 +(28872) found +[8942] Forked 28873 +(28873) found +[8941] Forked 28874 +(28874) found +[8940] Forked 28875 +(28875) found +[8939] Forked 28876 +(28876) found +[8938] Forked 28877 +(28877) found +[8937] Forked 28878 +(28878) found +[8936] Forked 28879 +(28879) found +[8935] Forked 28880 +(28880) found +[8934] Forked 28881 +(28881) found +[8933] Forked 28882 +(28882) found +[8932] Forked 28883 +(28883) found +[8931] Forked 28884 +(28884) found +[8930] Forked 28885 +(28885) found +[8929] Forked 28886 +(28886) found +[8928] Forked 28887 +(28887) found +[8927] Forked 28888 +(28888) found +[8926] Forked 28889 +(28889) found +[8925] Forked 28890 +(28890) found +[8924] Forked 28891 +(28891) found +[8923] Forked 28892 +(28892) found +[8922] Forked 28893 +(28893) found +[8921] Forked 28894 +(28894) found +[8920] Forked 28895 +(28895) found +[8919] Forked 28896 +(28896) found +[8918] Forked 28897 +(28897) found +[8917] Forked 28898 +(28898) found +[8916] Forked 28899 +(28899) found +[8915] Forked 28900 +(28900) found +[8914] Forked 28901 +[8913] Forked 28902 +(28901) found +(28902) found +[8912] Forked 28903 +[8911] Forked 28904 +(28903) found +(28904) found +[8910] Forked 28905 +[8909] Forked 28906 +(28905) found +(28906) found +[8908] Forked 28907 +[8907] Forked 28908 +(28907) found +(28908) found +[8906] Forked 28909 +[8905] Forked 28910 +(28909) found +(28910) found +[8904] Forked 28911 +[8903] Forked 28912 +(28911) found +(28912) found +[8902] Forked 28913 +[8901] Forked 28914 +(28913) found +(28914) found +[8900] Forked 28915 +[8899] Forked 28916 +(28915) found +(28916) found +[8898] Forked 28917 +[8897] Forked 28918 +(28917) found +(28918) found +[8896] Forked 28919 +[8895] Forked 28920 +(28919) found +(28920) found +[8894] Forked 28921 +(28921) found +[8893] Forked 28922 +(28922) found +[8892] Forked 28923 +[8891] Forked 28924 +(28923) found +(28924) found +[8890] Forked 28925 +[8889] Forked 28926 +(28925) found +(28926) found +[8888] Forked 28927 +[8887] Forked 28928 +(28927) found +(28928) found +[8886] Forked 28929 +[8885] Forked 28930 +(28929) found +(28930) found +[8884] Forked 28931 +[8883] Forked 28932 +(28931) found +(28932) found +[8882] Forked 28933 +[8881] Forked 28934 +(28933) found +(28934) found +[8880] Forked 28935 +[8879] Forked 28936 +(28935) found +(28936) found +[8878] Forked 28937 +[8877] Forked 28938 +(28937) found +(28938) found +[8876] Forked 28939 +[8875] Forked 28940 +(28939) found +(28940) found +[8874] Forked 28941 +[8873] Forked 28942 +(28941) found +(28942) found +[8872] Forked 28943 +[8871] Forked 28944 +(28943) found +(28944) found +[8870] Forked 28945 +(28945) found +[8869] Forked 28946 +(28946) found +[8868] Forked 28947 +(28947) found +[8867] Forked 28948 +(28948) found +[8866] Forked 28949 +(28949) found +[8865] Forked 28950 +(28950) found +[8864] Forked 28951 +(28951) found +[8863] Forked 28952 +(28952) found +[8862] Forked 28953 +(28953) found +[8861] Forked 28954 +(28954) found +[8860] Forked 28955 +(28955) found +[8859] Forked 28956 +(28956) found +[8858] Forked 28957 +(28957) found +[8857] Forked 28958 +(28958) found +[8856] Forked 28959 +(28959) found +[8855] Forked 28960 +(28960) found +[8854] Forked 28961 +(28961) found +[8853] Forked 28962 +(28962) found +[8852] Forked 28963 +(28963) found +[8851] Forked 28964 +(28964) found +[8850] Forked 28965 +(28965) found +[8849] Forked 28966 +(28966) found +[8848] Forked 28967 +(28967) found +[8847] Forked 28968 +(28968) found +[8846] Forked 28969 +(28969) found +[8845] Forked 28970 +(28970) found +[8844] Forked 28971 +(28971) found +[8843] Forked 28972 +(28972) found +[8842] Forked 28973 +(28973) found +[8841] Forked 28974 +(28974) found +[8840] Forked 28975 +(28975) found +[8839] Forked 28976 +(28976) found +[8838] Forked 28977 +(28977) found +[8837] Forked 28978 +(28978) found +[8836] Forked 28979 +(28979) found +[8835] Forked 28980 +(28980) found +[8834] Forked 28981 +(28981) found +[8833] Forked 28982 +[8832] Forked 28983 +(28983) found +(28982) found +[8831] Forked 28984 +(28984) found +[8830] Forked 28985 +(28985) found +[8829] Forked 28986 +(28986) found +[8828] Forked 28987 +(28987) found +[8827] Forked 28988 +(28988) found +[8826] Forked 28989 +(28989) found +[8825] Forked 28990 +(28990) found +[8824] Forked 28991 +(28991) found +[8823] Forked 28992 +(28992) found +[8822] Forked 28993 +(28993) found +[8821] Forked 28994 +(28994) found +[8820] Forked 28995 +(28995) found +[8819] Forked 28996 +(28996) found +[8818] Forked 28997 +(28997) found +[8817] Forked 28998 +(28998) found +[8816] Forked 28999 +(28999) found +[8815] Forked 29000 +(29000) found +[8814] Forked 29001 +(29001) found +[8813] Forked 29002 +(29002) found +[8812] Forked 29003 +(29003) found +[8811] Forked 29004 +(29004) found +[8810] Forked 29005 +(29005) found +[8809] Forked 29006 +(29006) found +[8808] Forked 29007 +(29007) found +[8807] Forked 29008 +(29008) found +[8806] Forked 29009 +(29009) found +[8805] Forked 29010 +(29010) found +[8804] Forked 29011 +(29011) found +[8803] Forked 29012 +(29012) found +[8802] Forked 29013 +(29013) found +[8801] Forked 29014 +(29014) found +[8800] Forked 29015 +(29015) found +[8799] Forked 29016 +(29016) found +[8798] Forked 29017 +(29017) found +[8797] Forked 29018 +(29018) found +[8796] Forked 29019 +(29019) found +[8795] Forked 29020 +(29020) found +[8794] Forked 29021 +(29021) found +[8793] Forked 29022 +(29022) found +[8792] Forked 29023 +(29023) found +[8791] Forked 29024 +(29024) found +[8790] Forked 29025 +(29025) found +[8789] Forked 29026 +(29026) found +[8788] Forked 29027 +(29027) found +[8787] Forked 29028 +(29028) found +[8786] Forked 29029 +(29029) found +[8785] Forked 29030 +(29030) found +[8784] Forked 29031 +(29031) found +[8783] Forked 29032 +(29032) found +[8782] Forked 29033 +(29033) found +[8781] Forked 29034 +(29034) found +[8780] Forked 29035 +(29035) found +[8779] Forked 29036 +(29036) found +[8778] Forked 29037 +(29037) found +[8777] Forked 29038 +(29038) found +[8776] Forked 29039 +(29039) found +[8775] Forked 29040 +(29040) found +[8774] Forked 29041 +(29041) found +[8773] Forked 29042 +(29042) found +[8772] Forked 29043 +(29043) found +[8771] Forked 29044 +(29044) found +[8770] Forked 29045 +(29045) found +[8769] Forked 29046 +(29046) found +[8768] Forked 29047 +(29047) found +[8767] Forked 29048 +(29048) found +[8766] Forked 29049 +(29049) found +[8765] Forked 29050 +(29050) found +[8764] Forked 29051 +(29051) found +[8763] Forked 29052 +[8762] Forked 29053 +(29052) found +(29053) found +[8761] Forked 29054 +[8760] Forked 29055 +(29054) found +(29055) found +[8759] Forked 29056 +[8758] Forked 29057 +(29056) found +(29057) found +[8757] Forked 29058 +[8756] Forked 29059 +(29058) found +(29059) found +[8755] Forked 29060 +[8754] Forked 29061 +(29060) found +(29061) found +[8753] Forked 29062 +[8752] Forked 29063 +(29062) found +(29063) found +[8751] Forked 29064 +[8750] Forked 29065 +(29064) found +(29065) found +[8749] Forked 29066 +[8748] Forked 29067 +(29066) found +(29067) found +[8747] Forked 29068 +[8746] Forked 29069 +(29068) found +(29069) found +[8745] Forked 29070 +[8744] Forked 29071 +(29070) found +(29071) found +[8743] Forked 29072 +[8742] Forked 29073 +(29072) found +(29073) found +[8741] Forked 29074 +[8740] Forked 29075 +(29074) found +(29075) found +[8739] Forked 29076 +[8738] Forked 29077 +(29076) found +(29077) found +[8737] Forked 29078 +[8736] Forked 29079 +(29078) found +(29079) found +[8735] Forked 29080 +[8734] Forked 29081 +(29080) found +(29081) found +[8733] Forked 29082 +[8732] Forked 29083 +(29082) found +(29083) found +[8731] Forked 29084 +[8730] Forked 29085 +(29084) found +(29085) found +[8729] Forked 29086 +[8728] Forked 29087 +(29086) found +(29087) found +[8727] Forked 29088 +[8726] Forked 29089 +(29088) found +(29089) found +[8725] Forked 29090 +[8724] Forked 29091 +(29090) found +(29091) found +[8723] Forked 29092 +[8722] Forked 29093 +(29092) found +(29093) found +[8721] Forked 29094 +[8720] Forked 29095 +(29094) found +(29095) found +[8719] Forked 29096 +[8718] Forked 29097 +(29096) found +(29097) found +[8717] Forked 29098 +[8716] Forked 29099 +(29098) found +(29099) found +[8715] Forked 29100 +[8714] Forked 29101 +(29100) found +(29101) found +[8713] Forked 29102 +[8712] Forked 29103 +(29102) found +(29103) found +[8711] Forked 29104 +[8710] Forked 29105 +(29104) found +(29105) found +[8709] Forked 29106 +[8708] Forked 29107 +(29106) found +(29107) found +[8707] Forked 29108 +[8706] Forked 29109 +(29108) found +(29109) found +[8705] Forked 29110 +[8704] Forked 29111 +(29110) found +(29111) found +[8703] Forked 29112 +[8702] Forked 29113 +(29112) found +(29113) found +[8701] Forked 29114 +[8700] Forked 29115 +(29114) found +(29115) found +[8699] Forked 29116 +[8698] Forked 29117 +(29116) found +(29117) found +[8697] Forked 29118 +[8696] Forked 29119 +(29118) found +(29119) found +[8695] Forked 29120 +[8694] Forked 29122 +(29120) found +(29122) found +[8693] Forked 29123 +(29123) found +[8692] Forked 29124 +(29124) found +[8691] Forked 29125 +(29125) found +[8690] Forked 29126 +(29126) found +[8689] Forked 29127 +(29127) found +[8688] Forked 29128 +(29128) found +[8687] Forked 29129 +(29129) found +[8686] Forked 29130 +(29130) found +[8685] Forked 29131 +(29131) found +[8684] Forked 29132 +(29132) found +[8683] Forked 29133 +(29133) found +[8682] Forked 29134 +(29134) found +[8681] Forked 29135 +(29135) found +[8680] Forked 29136 +(29136) found +[8679] Forked 29137 +(29137) found +[8678] Forked 29138 +(29138) found +[8677] Forked 29139 +(29139) found +[8676] Forked 29140 +(29140) found +[8675] Forked 29141 +(29141) found +[8674] Forked 29142 +(29142) found +[8673] Forked 29143 +(29143) found +[8672] Forked 29144 +(29144) found +[8671] Forked 29145 +(29145) found +[8670] Forked 29146 +(29146) found +[8669] Forked 29147 +(29147) found +[8668] Forked 29148 +(29148) found +[8667] Forked 29149 +(29149) found +[8666] Forked 29150 +(29150) found +[8665] Forked 29151 +(29151) found +[8664] Forked 29152 +(29152) found +[8663] Forked 29153 +(29153) found +[8662] Forked 29154 +(29154) found +[8661] Forked 29155 +(29155) found +[8660] Forked 29156 +(29156) found +[8659] Forked 29157 +(29157) found +[8658] Forked 29158 +(29158) found +[8657] Forked 29159 +(29159) found +[8656] Forked 29160 +(29160) found +[8655] Forked 29161 +(29161) found +[8654] Forked 29162 +(29162) found +[8653] Forked 29163 +(29163) found +[8652] Forked 29164 +(29164) found +[8651] Forked 29165 +(29165) found +[8650] Forked 29166 +(29166) found +[8649] Forked 29167 +(29167) found +[8648] Forked 29168 +(29168) found +[8647] Forked 29169 +(29169) found +[8646] Forked 29170 +(29170) found +[8645] Forked 29171 +(29171) found +[8644] Forked 29172 +(29172) found +[8643] Forked 29173 +(29173) found +[8642] Forked 29174 +[8641] Forked 29175 +(29174) found +(29175) found +[8640] Forked 29176 +[8639] Forked 29177 +(29176) found +(29177) found +[8638] Forked 29178 +[8637] Forked 29179 +(29178) found +(29179) found +[8636] Forked 29180 +[8635] Forked 29181 +(29180) found +(29181) found +[8634] Forked 29182 +[8633] Forked 29183 +(29182) found +(29183) found +[8632] Forked 29184 +[8631] Forked 29185 +(29184) found +(29185) found +[8630] Forked 29186 +[8629] Forked 29187 +(29186) found +(29187) found +[8628] Forked 29188 +[8627] Forked 29189 +(29188) found +(29189) found +[8626] Forked 29190 +[8625] Forked 29191 +(29190) found +(29191) found +[8624] Forked 29192 +[8623] Forked 29193 +(29192) found +(29193) found +[8622] Forked 29194 +[8621] Forked 29195 +(29194) found +(29195) found +[8620] Forked 29196 +[8619] Forked 29197 +(29196) found +(29197) found +[8618] Forked 29198 +[8617] Forked 29199 +(29198) found +(29199) found +[8616] Forked 29200 +[8615] Forked 29201 +(29200) found +(29201) found +[8614] Forked 29202 +[8613] Forked 29203 +(29202) found +(29203) found +[8612] Forked 29204 +[8611] Forked 29205 +(29204) found +(29205) found +[8610] Forked 29206 +[8609] Forked 29207 +(29206) found +(29207) found +[8608] Forked 29208 +[8607] Forked 29209 +(29208) found +(29209) found +[8606] Forked 29210 +[8605] Forked 29211 +(29210) found +(29211) found +[8604] Forked 29212 +[8603] Forked 29213 +(29212) found +(29213) found +[8602] Forked 29214 +[8601] Forked 29215 +(29214) found +(29215) found +[8600] Forked 29216 +[8599] Forked 29217 +(29216) found +(29217) found +[8598] Forked 29218 +[8597] Forked 29219 +(29218) found +(29219) found +[8596] Forked 29220 +[8595] Forked 29221 +(29220) found +(29221) found +[8594] Forked 29222 +[8593] Forked 29223 +(29222) found +(29223) found +[8592] Forked 29224 +[8591] Forked 29225 +(29224) found +(29225) found +[8590] Forked 29226 +[8589] Forked 29227 +(29226) found +(29227) found +[8588] Forked 29228 +[8587] Forked 29229 +(29228) found +(29229) found +[8586] Forked 29230 +[8585] Forked 29231 +(29230) found +(29231) found +[8584] Forked 29232 +[8583] Forked 29233 +(29232) found +(29233) found +[8582] Forked 29234 +[8581] Forked 29235 +(29234) found +(29235) found +[8580] Forked 29236 +[8579] Forked 29237 +(29236) found +(29237) found +[8578] Forked 29238 +[8577] Forked 29239 +(29238) found +(29239) found +[8576] Forked 29240 +[8575] Forked 29241 +(29240) found +(29241) found +[8574] Forked 29242 +[8573] Forked 29243 +(29242) found +(29243) found +[8572] Forked 29244 +[8571] Forked 29245 +(29244) found +(29245) found +[8570] Forked 29246 +[8569] Forked 29247 +(29246) found +(29247) found +[8568] Forked 29248 +[8567] Forked 29249 +(29248) found +(29249) found +[8566] Forked 29250 +[8565] Forked 29251 +(29250) found +(29251) found +[8564] Forked 29252 +[8563] Forked 29253 +(29252) found +(29253) found +[8562] Forked 29254 +[8561] Forked 29255 +(29254) found +(29255) found +[8560] Forked 29256 +[8559] Forked 29257 +(29256) found +(29257) found +[8558] Forked 29258 +[8557] Forked 29259 +(29258) found +(29259) found +[8556] Forked 29260 +[8555] Forked 29261 +(29260) found +(29261) found +[8554] Forked 29262 +[8553] Forked 29263 +(29262) found +(29263) found +[8552] Forked 29264 +[8551] Forked 29265 +(29264) found +(29265) found +[8550] Forked 29266 +(29266) found +[8549] Forked 29267 +(29267) found +[8548] Forked 29268 +(29268) found +[8547] Forked 29269 +(29269) found +[8546] Forked 29270 +(29270) found +[8545] Forked 29271 +(29271) found +[8544] Forked 29272 +(29272) found +[8543] Forked 29273 +(29273) found +[8542] Forked 29274 +(29274) found +[8541] Forked 29275 +(29275) found +[8540] Forked 29276 +(29276) found +[8539] Forked 29277 +(29277) found +[8538] Forked 29278 +(29278) found +[8537] Forked 29279 +(29279) found +[8536] Forked 29280 +(29280) found +[8535] Forked 29281 +(29281) found +[8534] Forked 29282 +(29282) found +[8533] Forked 29283 +(29283) found +[8532] Forked 29284 +(29284) found +[8531] Forked 29285 +(29285) found +[8530] Forked 29286 +(29286) found +[8529] Forked 29287 +(29287) found +[8528] Forked 29288 +(29288) found +[8527] Forked 29289 +(29289) found +[8526] Forked 29290 +(29290) found +[8525] Forked 29291 +(29291) found +[8524] Forked 29292 +(29292) found +[8523] Forked 29293 +(29293) found +[8522] Forked 29294 +(29294) found +[8521] Forked 29295 +(29295) found +[8520] Forked 29296 +(29296) found +[8519] Forked 29297 +(29297) found +[8518] Forked 29298 +(29298) found +[8517] Forked 29299 +(29299) found +[8516] Forked 29300 +(29300) found +[8515] Forked 29301 +(29301) found +[8514] Forked 29302 +[8513] Forked 29303 +(29302) found +(29303) found +[8512] Forked 29304 +[8511] Forked 29305 +(29304) found +(29305) found +[8510] Forked 29306 +[8509] Forked 29307 +(29306) found +(29307) found +[8508] Forked 29308 +[8507] Forked 29309 +(29308) found +(29309) found +[8506] Forked 29310 +[8505] Forked 29311 +(29310) found +(29311) found +[8504] Forked 29312 +[8503] Forked 29313 +(29312) found +(29313) found +[8502] Forked 29314 +[8501] Forked 29315 +(29314) found +(29315) found +[8500] Forked 29316 +(29316) found +[8499] Forked 29317 +[8498] Forked 29318 +(29317) found +(29318) found +[8497] Forked 29319 +[8496] Forked 29320 +(29319) found +(29320) found +[8495] Forked 29321 +[8494] Forked 29322 +(29321) found +(29322) found +[8493] Forked 29323 +[8492] Forked 29324 +(29323) found +(29324) found +[8491] Forked 29325 +[8490] Forked 29326 +(29325) found +(29326) found +[8489] Forked 29327 +[8488] Forked 29328 +(29327) found +(29328) found +[8487] Forked 29329 +[8486] Forked 29330 +(29329) found +(29330) found +[8485] Forked 29331 +[8484] Forked 29332 +(29331) found +(29332) found +[8483] Forked 29333 +[8482] Forked 29334 +(29333) found +(29334) found +[8481] Forked 29335 +[8480] Forked 29336 +(29335) found +(29336) found +[8479] Forked 29337 +[8478] Forked 29338 +(29337) found +(29338) found +[8477] Forked 29339 +[8476] Forked 29340 +(29339) found +(29340) found +[8475] Forked 29341 +[8474] Forked 29342 +(29341) found +(29342) found +[8473] Forked 29343 +[8472] Forked 29344 +(29343) found +(29344) found +[8471] Forked 29345 +[8470] Forked 29346 +(29345) found +(29346) found +[8469] Forked 29347 +[8468] Forked 29348 +(29347) found +(29348) found +[8467] Forked 29349 +[8466] Forked 29350 +(29349) found +(29350) found +[8465] Forked 29351 +[8464] Forked 29352 +(29351) found +(29352) found +[8463] Forked 29353 +[8462] Forked 29354 +(29353) found +(29354) found +[8461] Forked 29355 +[8460] Forked 29356 +(29355) found +(29356) found +[8459] Forked 29357 +[8458] Forked 29358 +(29357) found +(29358) found +[8457] Forked 29359 +[8456] Forked 29360 +(29359) found +(29360) found +[8455] Forked 29361 +[8454] Forked 29362 +(29361) found +(29362) found +[8453] Forked 29363 +[8452] Forked 29364 +(29363) found +(29364) found +[8451] Forked 29365 +[8450] Forked 29366 +(29365) found +(29366) found +[8449] Forked 29367 +[8448] Forked 29368 +(29367) found +(29368) found +[8447] Forked 29369 +[8446] Forked 29370 +(29369) found +(29370) found +[8445] Forked 29371 +[8444] Forked 29372 +(29371) found +(29372) found +[8443] Forked 29373 +[8442] Forked 29374 +(29373) found +(29374) found +[8441] Forked 29375 +[8440] Forked 29376 +(29375) found +(29376) found +[8439] Forked 29377 +[8438] Forked 29378 +(29377) found +(29378) found +[8437] Forked 29379 +[8436] Forked 29380 +(29379) found +(29380) found +[8435] Forked 29381 +[8434] Forked 29382 +(29381) found +(29382) found +[8433] Forked 29383 +[8432] Forked 29384 +(29383) found +(29384) found +[8431] Forked 29385 +[8430] Forked 29386 +(29385) found +(29386) found +[8429] Forked 29387 +[8428] Forked 29388 +(29387) found +(29388) found +[8427] Forked 29389 +[8426] Forked 29390 +(29389) found +(29390) found +[8425] Forked 29391 +[8424] Forked 29392 +(29391) found +(29392) found +[8423] Forked 29393 +[8422] Forked 29394 +(29393) found +(29394) found +[8421] Forked 29395 +[8420] Forked 29396 +(29395) found +(29396) found +[8419] Forked 29397 +[8418] Forked 29398 +(29397) found +(29398) found +[8417] Forked 29399 +[8416] Forked 29400 +(29399) found +(29400) found +[8415] Forked 29401 +[8414] Forked 29402 +(29401) found +(29402) found +[8413] Forked 29403 +[8412] Forked 29404 +(29403) found +(29404) found +[8411] Forked 29405 +[8410] Forked 29406 +(29405) found +(29406) found +[8409] Forked 29407 +[8408] Forked 29408 +(29407) found +(29408) found +[8407] Forked 29409 +[8406] Forked 29410 +(29409) found +(29410) found +[8405] Forked 29411 +[8404] Forked 29412 +(29411) found +(29412) found +[8403] Forked 29413 +[8402] Forked 29414 +(29413) found +(29414) found +[8401] Forked 29415 +[8400] Forked 29416 +(29415) found +(29416) found +[8399] Forked 29417 +[8398] Forked 29418 +(29417) found +(29418) found +[8397] Forked 29419 +[8396] Forked 29420 +(29419) found +(29420) found +[8395] Forked 29421 +[8394] Forked 29422 +(29421) found +(29422) found +[8393] Forked 29423 +[8392] Forked 29424 +(29423) found +(29424) found +[8391] Forked 29425 +[8390] Forked 29426 +(29425) found +(29426) found +[8389] Forked 29427 +[8388] Forked 29428 +(29427) found +(29428) found +[8387] Forked 29429 +[8386] Forked 29430 +(29429) found +(29430) found +[8385] Forked 29431 +[8384] Forked 29432 +(29431) found +(29432) found +[8383] Forked 29433 +[8382] Forked 29434 +(29433) found +(29434) found +[8381] Forked 29435 +(29435) found +[8380] Forked 29436 +(29436) found +[8379] Forked 29437 +(29437) found +[8378] Forked 29438 +(29438) found +[8377] Forked 29439 +(29439) found +[8376] Forked 29440 +(29440) found +[8375] Forked 29441 +(29441) found +[8374] Forked 29442 +(29442) found +[8373] Forked 29443 +(29443) found +[8372] Forked 29444 +(29444) found +[8371] Forked 29445 +(29445) found +[8370] Forked 29446 +(29446) found +[8369] Forked 29447 +(29447) found +[8368] Forked 29448 +(29448) found +[8367] Forked 29449 +(29449) found +[8366] Forked 29450 +(29450) found +[8365] Forked 29451 +(29451) found +[8364] Forked 29452 +(29452) found +[8363] Forked 29453 +(29453) found +[8362] Forked 29454 +(29454) found +[8361] Forked 29455 +(29455) found +[8360] Forked 29456 +(29456) found +[8359] Forked 29457 +(29457) found +[8358] Forked 29458 +(29458) found +[8357] Forked 29459 +(29459) found +[8356] Forked 29460 +(29460) found +[8355] Forked 29461 +(29461) found +[8354] Forked 29462 +(29462) found +[8353] Forked 29463 +(29463) found +[8352] Forked 29464 +(29464) found +[8351] Forked 29465 +(29465) found +[8350] Forked 29466 +(29466) found +[8349] Forked 29467 +(29467) found +[8348] Forked 29468 +(29468) found +[8347] Forked 29469 +(29469) found +[8346] Forked 29470 +(29470) found +[8345] Forked 29471 +(29471) found +[8344] Forked 29472 +(29472) found +[8343] Forked 29473 +[8342] Forked 29474 +(29473) found +(29474) found +[8341] Forked 29475 +[8340] Forked 29476 +(29475) found +(29476) found +[8339] Forked 29477 +[8338] Forked 29478 +(29477) found +(29478) found +[8337] Forked 29479 +[8336] Forked 29480 +(29479) found +(29480) found +[8335] Forked 29481 +[8334] Forked 29482 +(29481) found +(29482) found +[8333] Forked 29483 +[8332] Forked 29484 +(29483) found +(29484) found +[8331] Forked 29485 +[8330] Forked 29486 +(29485) found +(29486) found +[8329] Forked 29487 +[8328] Forked 29488 +(29487) found +(29488) found +[8327] Forked 29489 +[8326] Forked 29490 +(29489) found +(29490) found +[8325] Forked 29491 +[8324] Forked 29492 +(29491) found +(29492) found +[8323] Forked 29493 +[8322] Forked 29494 +(29493) found +(29494) found +[8321] Forked 29495 +[8320] Forked 29496 +(29495) found +(29496) found +[8319] Forked 29497 +[8318] Forked 29498 +(29497) found +(29498) found +[8317] Forked 29499 +[8316] Forked 29500 +(29499) found +(29500) found +[8315] Forked 29501 +[8314] Forked 29502 +(29501) found +(29502) found +[8313] Forked 29503 +[8312] Forked 29504 +(29503) found +(29504) found +[8311] Forked 29505 +[8310] Forked 29506 +(29505) found +(29506) found +[8309] Forked 29507 +[8308] Forked 29508 +(29507) found +(29508) found +[8307] Forked 29509 +[8306] Forked 29510 +(29509) found +(29510) found +[8305] Forked 29511 +[8304] Forked 29512 +(29511) found +(29512) found +[8303] Forked 29513 +[8302] Forked 29514 +(29513) found +(29514) found +[8301] Forked 29515 +[8300] Forked 29516 +(29515) found +(29516) found +[8299] Forked 29517 +(29517) found +[8298] Forked 29518 +(29518) found +[8297] Forked 29519 +(29519) found +[8296] Forked 29520 +(29520) found +[8295] Forked 29521 +(29521) found +[8294] Forked 29522 +(29522) found +[8293] Forked 29523 +(29523) found +[8292] Forked 29524 +(29524) found +[8291] Forked 29525 +(29525) found +[8290] Forked 29526 +(29526) found +[8289] Forked 29527 +(29527) found +[8288] Forked 29528 +(29528) found +[8287] Forked 29529 +(29529) found +[8286] Forked 29530 +(29530) found +[8285] Forked 29531 +(29531) found +[8284] Forked 29532 +(29532) found +[8283] Forked 29533 +(29533) found +[8282] Forked 29534 +(29534) found +[8281] Forked 29535 +(29535) found +[8280] Forked 29536 +(29536) found +[8279] Forked 29537 +(29537) found +[8278] Forked 29538 +(29538) found +[8277] Forked 29539 +(29539) found +[8276] Forked 29540 +(29540) found +[8275] Forked 29541 +(29541) found +[8274] Forked 29542 +(29542) found +[8273] Forked 29543 +(29543) found +[8272] Forked 29544 +(29544) found +[8271] Forked 29545 +(29545) found +[8270] Forked 29546 +(29546) found +[8269] Forked 29547 +(29547) found +[8268] Forked 29548 +(29548) found +[8267] Forked 29549 +(29549) found +[8266] Forked 29550 +(29550) found +[8265] Forked 29551 +(29551) found +[8264] Forked 29552 +(29552) found +[8263] Forked 29553 +(29553) found +[8262] Forked 29554 +(29554) found +[8261] Forked 29555 +(29555) found +[8260] Forked 29556 +[8259] Forked 29557 +(29556) found +(29557) found +[8258] Forked 29558 +[8257] Forked 29559 +(29558) found +(29559) found +[8256] Forked 29560 +[8255] Forked 29561 +(29560) found +(29561) found +[8254] Forked 29562 +[8253] Forked 29563 +(29562) found +(29563) found +[8252] Forked 29564 +[8251] Forked 29565 +(29564) found +(29565) found +[8250] Forked 29566 +[8249] Forked 29567 +(29566) found +(29567) found +[8248] Forked 29568 +[8247] Forked 29569 +(29568) found +(29569) found +[8246] Forked 29570 +[8245] Forked 29571 +(29570) found +(29571) found +[8244] Forked 29572 +[8243] Forked 29573 +(29572) found +(29573) found +[8242] Forked 29574 +[8241] Forked 29575 +(29574) found +(29575) found +[8240] Forked 29576 +[8239] Forked 29577 +(29576) found +(29577) found +[8238] Forked 29578 +[8237] Forked 29579 +(29578) found +(29579) found +[8236] Forked 29580 +[8235] Forked 29581 +(29580) found +(29581) found +[8234] Forked 29582 +[8233] Forked 29583 +(29582) found +(29583) found +[8232] Forked 29584 +[8231] Forked 29585 +(29584) found +(29585) found +[8230] Forked 29586 +[8229] Forked 29587 +(29586) found +(29587) found +[8228] Forked 29588 +[8227] Forked 29589 +(29588) found +(29589) found +[8226] Forked 29590 +[8225] Forked 29591 +(29590) found +(29591) found +[8224] Forked 29592 +[8223] Forked 29593 +(29592) found +(29593) found +[8222] Forked 29594 +(29594) found +[8221] Forked 29595 +[8220] Forked 29596 +(29595) found +(29596) found +[8219] Forked 29597 +[8218] Forked 29598 +(29597) found +(29598) found +[8217] Forked 29599 +(29599) found +[8216] Forked 29600 +(29600) found +[8215] Forked 29601 +(29601) found +[8214] Forked 29602 +(29602) found +[8213] Forked 29603 +(29603) found +[8212] Forked 29604 +(29604) found +[8211] Forked 29605 +(29605) found +[8210] Forked 29606 +(29606) found +[8209] Forked 29607 +(29607) found +[8208] Forked 29608 +(29608) found +[8207] Forked 29609 +(29609) found +[8206] Forked 29610 +(29610) found +[8205] Forked 29611 +(29611) found +[8204] Forked 29612 +(29612) found +[8203] Forked 29613 +(29613) found +[8202] Forked 29614 +(29614) found +[8201] Forked 29615 +(29615) found +[8200] Forked 29616 +(29616) found +[8199] Forked 29617 +(29617) found +[8198] Forked 29618 +(29618) found +[8197] Forked 29619 +(29619) found +[8196] Forked 29620 +(29620) found +[8195] Forked 29621 +(29621) found +[8194] Forked 29622 +(29622) found +[8193] Forked 29623 +(29623) found +[8192] Forked 29624 +(29624) found +[8191] Forked 29625 +(29625) found +[8190] Forked 29626 +(29626) found +[8189] Forked 29627 +(29627) found +[8188] Forked 29628 +(29628) found +[8187] Forked 29629 +(29629) found +[8186] Forked 29630 +(29630) found +[8185] Forked 29631 +(29631) found +[8184] Forked 29632 +(29632) found +[8183] Forked 29633 +(29633) found +[8182] Forked 29634 +(29634) found +[8181] Forked 29635 +(29635) found +[8180] Forked 29636 +(29636) found +[8179] Forked 29637 +(29637) found +[8178] Forked 29638 +[8177] Forked 29639 +(29638) found +(29639) found +[8176] Forked 29640 +[8175] Forked 29641 +(29640) found +(29641) found +[8174] Forked 29642 +[8173] Forked 29643 +(29642) found +(29643) found +[8172] Forked 29644 +[8171] Forked 29645 +(29644) found +(29645) found +[8170] Forked 29646 +[8169] Forked 29647 +(29646) found +(29647) found +[8168] Forked 29648 +[8167] Forked 29649 +(29648) found +(29649) found +[8166] Forked 29650 +[8165] Forked 29651 +(29650) found +(29651) found +[8164] Forked 29652 +[8163] Forked 29653 +(29652) found +(29653) found +[8162] Forked 29654 +[8161] Forked 29655 +(29654) found +(29655) found +[8160] Forked 29656 +[8159] Forked 29657 +(29656) found +(29657) found +[8158] Forked 29658 +[8157] Forked 29659 +(29658) found +(29659) found +[8156] Forked 29660 +[8155] Forked 29661 +(29660) found +(29661) found +[8154] Forked 29662 +[8153] Forked 29663 +(29662) found +(29663) found +[8152] Forked 29664 +[8151] Forked 29665 +(29665) found +(29664) found +[8150] Forked 29666 +(29666) found +[8149] Forked 29667 +(29667) found +[8148] Forked 29668 +(29668) found +[8147] Forked 29669 +(29669) found +[8146] Forked 29670 +(29670) found +[8145] Forked 29671 +(29671) found +[8144] Forked 29672 +(29672) found +[8143] Forked 29673 +(29673) found +[8142] Forked 29674 +(29674) found +[8141] Forked 29675 +(29675) found +[8140] Forked 29676 +(29676) found +[8139] Forked 29677 +(29677) found +[8138] Forked 29678 +(29678) found +[8137] Forked 29679 +(29679) found +[8136] Forked 29680 +(29680) found +[8135] Forked 29681 +(29681) found +[8134] Forked 29682 +(29682) found +[8133] Forked 29683 +(29683) found +[8132] Forked 29684 +(29684) found +[8131] Forked 29685 +(29685) found +[8130] Forked 29686 +(29686) found +[8129] Forked 29687 +(29687) found +[8128] Forked 29688 +(29688) found +[8127] Forked 29689 +(29689) found +[8126] Forked 29690 +(29690) found +[8125] Forked 29691 +(29691) found +[8124] Forked 29692 +(29692) found +[8123] Forked 29693 +(29693) found +[8122] Forked 29694 +(29694) found +[8121] Forked 29695 +(29695) found +[8120] Forked 29696 +(29696) found +[8119] Forked 29697 +(29697) found +[8118] Forked 29698 +(29698) found +[8117] Forked 29699 +(29699) found +[8116] Forked 29700 +(29700) found +[8115] Forked 29701 +(29701) found +[8114] Forked 29702 +(29702) found +[8113] Forked 29703 +(29703) found +[8112] Forked 29704 +(29704) found +[8111] Forked 29705 +(29705) found +[8110] Forked 29706 +(29706) found +[8109] Forked 29707 +(29707) found +[8108] Forked 29708 +(29708) found +[8107] Forked 29709 +(29709) found +[8106] Forked 29710 +(29710) found +[8105] Forked 29711 +(29711) found +[8104] Forked 29712 +(29712) found +[8103] Forked 29713 +(29713) found +[8102] Forked 29714 +[8101] Forked 29715 +(29714) found +(29715) found +[8100] Forked 29716 +[8099] Forked 29717 +(29716) found +(29717) found +[8098] Forked 29718 +[8097] Forked 29719 +(29718) found +(29719) found +[8096] Forked 29720 +[8095] Forked 29721 +(29720) found +(29721) found +[8094] Forked 29722 +[8093] Forked 29723 +(29722) found +(29723) found +[8092] Forked 29724 +[8091] Forked 29725 +(29724) found +(29725) found +[8090] Forked 29726 +[8089] Forked 29727 +(29726) found +(29727) found +[8088] Forked 29728 +[8087] Forked 29729 +(29728) found +(29729) found +[8086] Forked 29730 +[8085] Forked 29731 +(29730) found +(29731) found +[8084] Forked 29732 +[8083] Forked 29733 +(29732) found +(29733) found +[8082] Forked 29734 +[8081] Forked 29735 +(29734) found +(29735) found +[8080] Forked 29736 +[8079] Forked 29737 +(29737) found +(29736) found +[8078] Forked 29738 +(29738) found +[8077] Forked 29739 +(29739) found +[8076] Forked 29740 +(29740) found +[8075] Forked 29741 +(29741) found +[8074] Forked 29742 +(29742) found +[8073] Forked 29743 +(29743) found +[8072] Forked 29744 +(29744) found +[8071] Forked 29745 +(29745) found +[8070] Forked 29746 +(29746) found +[8069] Forked 29747 +(29747) found +[8068] Forked 29748 +(29748) found +[8067] Forked 29749 +(29749) found +[8066] Forked 29750 +(29750) found +[8065] Forked 29751 +(29751) found +[8064] Forked 29752 +(29752) found +[8063] Forked 29753 +(29753) found +[8062] Forked 29754 +(29754) found +[8061] Forked 29755 +(29755) found +[8060] Forked 29756 +(29756) found +[8059] Forked 29757 +(29757) found +[8058] Forked 29758 +(29758) found +[8057] Forked 29759 +(29759) found +[8056] Forked 29760 +(29760) found +[8055] Forked 29761 +(29761) found +[8054] Forked 29762 +(29762) found +[8053] Forked 29763 +(29763) found +[8052] Forked 29764 +(29764) found +[8051] Forked 29765 +(29765) found +[8050] Forked 29766 +(29766) found +[8049] Forked 29767 +(29767) found +[8048] Forked 29768 +(29768) found +[8047] Forked 29769 +(29769) found +[8046] Forked 29770 +(29770) found +[8045] Forked 29771 +(29771) found +[8044] Forked 29772 +(29772) found +[8043] Forked 29773 +(29773) found +[8042] Forked 29774 +(29774) found +[8041] Forked 29775 +(29775) found +[8040] Forked 29776 +(29776) found +[8039] Forked 29777 +(29777) found +[8038] Forked 29778 +(29778) found +[8037] Forked 29779 +(29779) found +[8036] Forked 29780 +(29780) found +[8035] Forked 29781 +(29781) found +[8034] Forked 29782 +(29782) found +[8033] Forked 29783 +(29783) found +[8032] Forked 29784 +(29784) found +[8031] Forked 29785 +(29785) found +[8030] Forked 29786 +(29786) found +[8029] Forked 29787 +(29787) found +[8028] Forked 29788 +(29788) found +[8027] Forked 29789 +[8026] Forked 29790 +(29789) found +(29790) found +[8025] Forked 29791 +[8024] Forked 29792 +(29791) found +(29792) found +[8023] Forked 29793 +[8022] Forked 29794 +(29793) found +(29794) found +[8021] Forked 29795 +[8020] Forked 29796 +(29795) found +(29796) found +[8019] Forked 29797 +[8018] Forked 29798 +(29797) found +(29798) found +[8017] Forked 29799 +[8016] Forked 29800 +(29799) found +(29800) found +[8015] Forked 29801 +[8014] Forked 29802 +(29801) found +(29802) found +[8013] Forked 29803 +[8012] Forked 29804 +(29803) found +(29804) found +[8011] Forked 29805 +[8010] Forked 29806 +(29805) found +(29806) found +[8009] Forked 29807 +[8008] Forked 29810 +(29807) found +(29810) found +[8007] Forked 29811 +[8006] Forked 29812 +(29811) found +(29812) found +[8005] Forked 29813 +[8004] Forked 29814 +(29813) found +(29814) found +[8003] Forked 29815 +[8002] Forked 29816 +(29815) found +(29816) found +[8001] Forked 29817 +[8000] Forked 29818 +(29817) found +(29818) found +[7999] Forked 29819 +[7998] Forked 29820 +(29819) found +(29820) found +[7997] Forked 29821 +[7996] Forked 29822 +(29821) found +(29822) found +[7995] Forked 29823 +[7994] Forked 29824 +(29823) found +(29824) found +[7993] Forked 29825 +[7992] Forked 29826 +(29825) found +(29826) found +[7991] Forked 29827 +[7990] Forked 29828 +(29827) found +(29828) found +[7989] Forked 29829 +[7988] Forked 29830 +(29829) found +(29830) found +[7987] Forked 29831 +[7986] Forked 29832 +(29831) found +(29832) found +[7985] Forked 29833 +[7984] Forked 29834 +(29833) found +(29834) found +[7983] Forked 29835 +(29835) found +[7982] Forked 29836 +(29836) found +[7981] Forked 29837 +(29837) found +[7980] Forked 29838 +(29838) found +[7979] Forked 29839 +(29839) found +[7978] Forked 29840 +(29840) found +[7977] Forked 29841 +(29841) found +[7976] Forked 29842 +(29842) found +[7975] Forked 29843 +(29843) found +[7974] Forked 29844 +(29844) found +[7973] Forked 29845 +(29845) found +[7972] Forked 29846 +(29846) found +[7971] Forked 29847 +(29847) found +[7970] Forked 29848 +(29848) found +[7969] Forked 29849 +(29849) found +[7968] Forked 29850 +(29850) found +[7967] Forked 29851 +(29851) found +[7966] Forked 29852 +(29852) found +[7965] Forked 29853 +(29853) found +[7964] Forked 29854 +(29854) found +[7963] Forked 29855 +(29855) found +[7962] Forked 29856 +(29856) found +[7961] Forked 29857 +(29857) found +[7960] Forked 29858 +(29858) found +[7959] Forked 29859 +(29859) found +[7958] Forked 29860 +(29860) found +[7957] Forked 29861 +(29861) found +[7956] Forked 29862 +(29862) found +[7955] Forked 29863 +(29863) found +[7954] Forked 29864 +(29864) found +[7953] Forked 29865 +(29865) found +[7952] Forked 29866 +(29866) found +[7951] Forked 29867 +(29867) found +[7950] Forked 29868 +(29868) found +[7949] Forked 29869 +(29869) found +[7948] Forked 29870 +(29870) found +[7947] Forked 29871 +(29871) found +[7946] Forked 29872 +(29872) found +[7945] Forked 29873 +[7944] Forked 29874 +(29873) found +(29874) found +[7943] Forked 29875 +[7942] Forked 29876 +(29875) found +(29876) found +[7941] Forked 29877 +[7940] Forked 29878 +(29877) found +(29878) found +[7939] Forked 29879 +[7938] Forked 29880 +(29879) found +(29880) found +[7937] Forked 29881 +[7936] Forked 29882 +(29881) found +(29882) found +[7935] Forked 29883 +[7934] Forked 29884 +(29883) found +(29884) found +[7933] Forked 29885 +[7932] Forked 29886 +(29885) found +(29886) found +[7931] Forked 29887 +[7930] Forked 29888 +(29887) found +(29888) found +[7929] Forked 29889 +[7928] Forked 29890 +(29889) found +(29890) found +[7927] Forked 29891 +[7926] Forked 29892 +(29891) found +(29892) found +[7925] Forked 29893 +[7924] Forked 29894 +(29893) found +(29894) found +[7923] Forked 29895 +[7922] Forked 29896 +(29895) found +(29896) found +[7921] Forked 29897 +[7920] Forked 29898 +(29897) found +(29898) found +[7919] Forked 29899 +[7918] Forked 29900 +(29899) found +(29900) found +[7917] Forked 29901 +[7916] Forked 29902 +(29901) found +(29902) found +[7915] Forked 29903 +[7914] Forked 29904 +(29903) found +(29904) found +[7913] Forked 29905 +[7912] Forked 29906 +(29905) found +(29906) found +[7911] Forked 29907 +[7910] Forked 29908 +(29907) found +(29908) found +[7909] Forked 29909 +[7908] Forked 29910 +(29909) found +(29910) found +[7907] Forked 29911 +[7906] Forked 29912 +(29911) found +(29912) found +[7905] Forked 29913 +[7904] Forked 29914 +(29913) found +(29914) found +[7903] Forked 29915 +[7902] Forked 29916 +(29915) found +(29916) found +[7901] Forked 29917 +(29917) found +[7900] Forked 29918 +(29918) found +[7899] Forked 29919 +(29919) found +[7898] Forked 29920 +(29920) found +[7897] Forked 29921 +(29921) found +[7896] Forked 29922 +(29922) found +[7895] Forked 29923 +(29923) found +[7894] Forked 29924 +(29924) found +[7893] Forked 29925 +(29925) found +[7892] Forked 29926 +(29926) found +[7891] Forked 29927 +(29927) found +[7890] Forked 29928 +(29928) found +[7889] Forked 29929 +(29929) found +[7888] Forked 29930 +(29930) found +[7887] Forked 29931 +(29931) found +[7886] Forked 29932 +(29932) found +[7885] Forked 29933 +(29933) found +[7884] Forked 29934 +(29934) found +[7883] Forked 29935 +(29935) found +[7882] Forked 29936 +(29936) found +[7881] Forked 29937 +(29937) found +[7880] Forked 29938 +(29938) found +[7879] Forked 29939 +(29939) found +[7878] Forked 29940 +(29940) found +[7877] Forked 29941 +(29941) found +[7876] Forked 29942 +(29942) found +[7875] Forked 29943 +(29943) found +[7874] Forked 29944 +(29944) found +[7873] Forked 29945 +(29945) found +[7872] Forked 29946 +(29946) found +[7871] Forked 29947 +(29947) found +[7870] Forked 29948 +(29948) found +[7869] Forked 29949 +(29949) found +[7868] Forked 29950 +(29950) found +[7867] Forked 29951 +(29951) found +[7866] Forked 29952 +(29952) found +[7865] Forked 29953 +(29953) found +[7864] Forked 29954 +(29954) found +[7863] Forked 29955 +(29955) found +[7862] Forked 29956 +[7861] Forked 29957 +(29956) found +(29957) found +[7860] Forked 29958 +[7859] Forked 29959 +(29958) found +(29959) found +[7858] Forked 29960 +[7857] Forked 29961 +(29960) found +(29961) found +[7856] Forked 29962 +[7855] Forked 29963 +(29962) found +(29963) found +[7854] Forked 29964 +[7853] Forked 29965 +(29964) found +(29965) found +[7852] Forked 29966 +[7851] Forked 29967 +(29966) found +(29967) found +[7850] Forked 29968 +[7849] Forked 29969 +(29968) found +(29969) found +[7848] Forked 29970 +[7847] Forked 29972 +(29970) found +(29972) found +[7846] Forked 29973 +[7845] Forked 29974 +(29973) found +(29974) found +[7844] Forked 29975 +[7843] Forked 29976 +(29975) found +(29976) found +[7842] Forked 29977 +[7841] Forked 29978 +(29977) found +(29978) found +[7840] Forked 29979 +[7839] Forked 29980 +(29979) found +(29980) found +[7838] Forked 29981 +[7837] Forked 29982 +(29981) found +(29982) found +[7836] Forked 29983 +[7835] Forked 29984 +(29983) found +(29984) found +[7834] Forked 29985 +[7833] Forked 29986 +(29985) found +(29986) found +[7832] Forked 29987 +[7831] Forked 29988 +(29987) found +(29988) found +[7830] Forked 29989 +[7829] Forked 29990 +(29989) found +(29990) found +[7828] Forked 29991 +[7827] Forked 29992 +(29992) found +(29991) found +[7826] Forked 29993 +(29993) found +[7825] Forked 29994 +(29994) found +[7824] Forked 29995 +(29995) found +[7823] Forked 29996 +(29996) found +[7822] Forked 29997 +(29997) found +[7821] Forked 29998 +(29998) found +[7820] Forked 29999 +(29999) found +[7819] Forked 30000 +(30000) found +[7818] Forked 30001 +(30001) found +[7817] Forked 30002 +(30002) found +[7816] Forked 30003 +(30003) found +[7815] Forked 30004 +(30004) found +[7814] Forked 30005 +(30005) found +[7813] Forked 30006 +(30006) found +[7812] Forked 30007 +(30007) found +[7811] Forked 30008 +(30008) found +[7810] Forked 30009 +(30009) found +[7809] Forked 30010 +(30010) found +[7808] Forked 30011 +(30011) found +[7807] Forked 30012 +(30012) found +[7806] Forked 30013 +(30013) found +[7805] Forked 30014 +(30014) found +[7804] Forked 30015 +(30015) found +[7803] Forked 30016 +(30016) found +[7802] Forked 30017 +(30017) found +[7801] Forked 30018 +(30018) found +[7800] Forked 30019 +(30019) found +[7799] Forked 30020 +(30020) found +[7798] Forked 30021 +(30021) found +[7797] Forked 30022 +(30022) found +[7796] Forked 30023 +(30023) found +[7795] Forked 30024 +(30024) found +[7794] Forked 30025 +(30025) found +[7793] Forked 30026 +(30026) found +[7792] Forked 30027 +(30027) found +[7791] Forked 30028 +(30028) found +[7790] Forked 30029 +(30029) found +[7789] Forked 30030 +(30030) found +[7788] Forked 30031 +(30031) found +[7787] Forked 30032 +(30032) found +[7786] Forked 30033 +(30033) found +[7785] Forked 30034 +(30034) found +[7784] Forked 30035 +(30035) found +[7783] Forked 30036 +(30036) found +[7782] Forked 30037 +(30037) found +[7781] Forked 30038 +(30038) found +[7780] Forked 30039 +(30039) found +[7779] Forked 30040 +(30040) found +[7778] Forked 30041 +(30041) found +[7777] Forked 30042 +(30042) found +[7776] Forked 30043 +(30043) found +[7775] Forked 30044 +(30044) found +[7774] Forked 30045 +(30045) found +[7773] Forked 30046 +(30046) found +[7772] Forked 30047 +(30047) found +[7771] Forked 30048 +(30048) found +[7770] Forked 30049 +(30049) found +[7769] Forked 30050 +(30050) found +[7768] Forked 30051 +(30051) found +[7767] Forked 30052 +(30052) found +[7766] Forked 30053 +(30053) found +[7765] Forked 30054 +(30054) found +[7764] Forked 30055 +(30055) found +[7763] Forked 30056 +(30056) found +[7762] Forked 30057 +(30057) found +[7761] Forked 30058 +(30058) found +[7760] Forked 30059 +(30059) found +[7759] Forked 30060 +(30060) found +[7758] Forked 30061 +(30061) found +[7757] Forked 30062 +(30062) found +[7756] Forked 30063 +(30063) found +[7755] Forked 30064 +[7754] Forked 30065 +(30064) found +(30065) found +[7753] Forked 30066 +[7752] Forked 30067 +(30066) found +(30067) found +[7751] Forked 30068 +[7750] Forked 30069 +(30068) found +(30069) found +[7749] Forked 30070 +[7748] Forked 30071 +(30070) found +(30071) found +[7747] Forked 30072 +[7746] Forked 30073 +(30072) found +(30073) found +[7745] Forked 30074 +[7744] Forked 30075 +(30074) found +(30075) found +[7743] Forked 30076 +[7742] Forked 30077 +(30076) found +(30077) found +[7741] Forked 30078 +[7740] Forked 30079 +(30078) found +(30079) found +[7739] Forked 30080 +[7738] Forked 30081 +(30080) found +(30081) found +[7737] Forked 30083 +[7736] Forked 30084 +(30083) found +(30084) found +[7735] Forked 30085 +[7734] Forked 30086 +(30085) found +(30086) found +[7733] Forked 30087 +[7732] Forked 30088 +(30087) found +(30088) found +[7731] Forked 30089 +[7730] Forked 30090 +(30089) found +(30090) found +[7729] Forked 30091 +[7728] Forked 30092 +(30091) found +(30092) found +[7727] Forked 30093 +[7726] Forked 30094 +(30093) found +(30094) found +[7725] Forked 30095 +[7724] Forked 30096 +(30095) found +(30096) found +[7723] Forked 30097 +[7722] Forked 30098 +(30097) found +(30098) found +[7721] Forked 30099 +[7720] Forked 30100 +(30099) found +(30100) found +[7719] Forked 30101 +[7718] Forked 30102 +(30101) found +(30102) found +[7717] Forked 30103 +[7716] Forked 30104 +(30103) found +(30104) found +[7715] Forked 30105 +[7714] Forked 30106 +(30105) found +(30106) found +[7713] Forked 30107 +[7712] Forked 30108 +(30107) found +(30108) found +[7711] Forked 30109 +[7710] Forked 30110 +(30109) found +(30110) found +[7709] Forked 30111 +(30111) found +[7708] Forked 30112 +(30112) found +[7707] Forked 30113 +(30113) found +[7706] Forked 30114 +(30114) found +[7705] Forked 30115 +(30115) found +[7704] Forked 30116 +(30116) found +[7703] Forked 30117 +(30117) found +[7702] Forked 30118 +(30118) found +[7701] Forked 30119 +(30119) found +[7700] Forked 30120 +(30120) found +[7699] Forked 30121 +(30121) found +[7698] Forked 30122 +(30122) found +[7697] Forked 30123 +(30123) found +[7696] Forked 30124 +(30124) found +[7695] Forked 30125 +(30125) found +[7694] Forked 30126 +(30126) found +[7693] Forked 30127 +(30127) found +[7692] Forked 30128 +(30128) found +[7691] Forked 30129 +(30129) found +[7690] Forked 30130 +(30130) found +[7689] Forked 30131 +(30131) found +[7688] Forked 30132 +(30132) found +[7687] Forked 30133 +(30133) found +[7686] Forked 30134 +(30134) found +[7685] Forked 30135 +(30135) found +[7684] Forked 30136 +(30136) found +[7683] Forked 30137 +(30137) found +[7682] Forked 30138 +(30138) found +[7681] Forked 30139 +(30139) found +[7680] Forked 30140 +(30140) found +[7679] Forked 30141 +(30141) found +[7678] Forked 30142 +(30142) found +[7677] Forked 30143 +(30143) found +[7676] Forked 30144 +(30144) found +[7675] Forked 30145 +[7674] Forked 30146 +(30145) found +(30146) found +[7673] Forked 30147 +[7672] Forked 30148 +(30148) found +(30147) found +[7671] Forked 30149 +(30149) found +[7670] Forked 30150 +(30150) found +[7669] Forked 30151 +(30151) found +[7668] Forked 30152 +(30152) found +[7667] Forked 30153 +(30153) found +[7666] Forked 30154 +(30154) found +[7665] Forked 30155 +(30155) found +[7664] Forked 30156 +(30156) found +[7663] Forked 30157 +(30157) found +[7662] Forked 30158 +(30158) found +[7661] Forked 30159 +(30159) found +[7660] Forked 30160 +(30160) found +[7659] Forked 30161 +(30161) found +[7658] Forked 30162 +(30162) found +[7657] Forked 30163 +(30163) found +[7656] Forked 30164 +(30164) found +[7655] Forked 30165 +(30165) found +[7654] Forked 30166 +(30166) found +[7653] Forked 30167 +(30167) found +[7652] Forked 30168 +(30168) found +[7651] Forked 30169 +(30169) found +[7650] Forked 30170 +(30170) found +[7649] Forked 30171 +(30171) found +[7648] Forked 30172 +(30172) found +[7647] Forked 30173 +(30173) found +[7646] Forked 30174 +(30174) found +[7645] Forked 30175 +(30175) found +[7644] Forked 30176 +(30176) found +[7643] Forked 30177 +(30177) found +[7642] Forked 30178 +(30178) found +[7641] Forked 30179 +(30179) found +[7640] Forked 30180 +(30180) found +[7639] Forked 30181 +(30181) found +[7638] Forked 30182 +(30182) found +[7637] Forked 30183 +(30183) found +[7636] Forked 30184 +(30184) found +[7635] Forked 30185 +(30185) found +[7634] Forked 30186 +(30186) found +[7633] Forked 30187 +(30187) found +[7632] Forked 30188 +(30188) found +[7631] Forked 30189 +(30189) found +[7630] Forked 30190 +(30190) found +[7629] Forked 30191 +(30191) found +[7628] Forked 30192 +(30192) found +[7627] Forked 30193 +(30193) found +[7626] Forked 30194 +(30194) found +[7625] Forked 30195 +(30195) found +[7624] Forked 30196 +(30196) found +[7623] Forked 30197 +(30197) found +[7622] Forked 30198 +(30198) found +[7621] Forked 30199 +(30199) found +[7620] Forked 30200 +(30200) found +[7619] Forked 30201 +(30201) found +[7618] Forked 30202 +(30202) found +[7617] Forked 30203 +(30203) found +[7616] Forked 30204 +(30204) found +[7615] Forked 30205 +(30205) found +[7614] Forked 30206 +(30206) found +[7613] Forked 30207 +(30207) found +[7612] Forked 30208 +(30208) found +[7611] Forked 30209 +(30209) found +[7610] Forked 30210 +(30210) found +[7609] Forked 30211 +(30211) found +[7608] Forked 30212 +(30212) found +[7607] Forked 30213 +(30213) found +[7606] Forked 30214 +(30214) found +[7605] Forked 30215 +(30215) found +[7604] Forked 30216 +(30216) found +[7603] Forked 30217 +(30217) found +[7602] Forked 30218 +(30218) found +[7601] Forked 30219 +(30219) found +[7600] Forked 30220 +(30220) found +[7599] Forked 30221 +(30221) found +[7598] Forked 30222 +(30222) found +[7597] Forked 30223 +(30223) found +[7596] Forked 30224 +(30224) found +[7595] Forked 30225 +(30225) found +[7594] Forked 30226 +(30226) found +[7593] Forked 30227 +(30227) found +[7592] Forked 30228 +(30228) found +[7591] Forked 30229 +(30229) found +[7590] Forked 30230 +(30230) found +[7589] Forked 30231 +(30231) found +[7588] Forked 30232 +(30232) found +[7587] Forked 30233 +(30233) found +[7586] Forked 30234 +(30234) found +[7585] Forked 30235 +(30235) found +[7584] Forked 30236 +(30236) found +[7583] Forked 30237 +(30237) found +[7582] Forked 30238 +(30238) found +[7581] Forked 30239 +(30239) found +[7580] Forked 30240 +(30240) found +[7579] Forked 30241 +(30241) found +[7578] Forked 30242 +(30242) found +[7577] Forked 30243 +(30243) found +[7576] Forked 30244 +(30244) found +[7575] Forked 30245 +(30245) found +[7574] Forked 30246 +(30246) found +[7573] Forked 30247 +(30247) found +[7572] Forked 30248 +(30248) found +[7571] Forked 30249 +(30249) found +[7570] Forked 30250 +(30250) found +[7569] Forked 30251 +(30251) found +[7568] Forked 30252 +(30252) found +[7567] Forked 30253 +(30253) found +[7566] Forked 30254 +(30254) found +[7565] Forked 30255 +(30255) found +[7564] Forked 30256 +(30256) found +[7563] Forked 30257 +(30257) found +[7562] Forked 30258 +(30258) found +[7561] Forked 30259 +(30259) found +[7560] Forked 30260 +(30260) found +[7559] Forked 30261 +(30261) found +[7558] Forked 30262 +(30262) found +[7557] Forked 30263 +(30263) found +[7556] Forked 30264 +(30264) found +[7555] Forked 30265 +(30265) found +[7554] Forked 30266 +(30266) found +[7553] Forked 30267 +(30267) found +[7552] Forked 30268 +(30268) found +[7551] Forked 30269 +(30269) found +[7550] Forked 30270 +(30270) found +[7549] Forked 30271 +(30271) found +[7548] Forked 30272 +(30272) found +[7547] Forked 30273 +(30273) found +[7546] Forked 30274 +(30274) found +[7545] Forked 30275 +(30275) found +[7544] Forked 30276 +(30276) found +[7543] Forked 30277 +(30277) found +[7542] Forked 30278 +(30278) found +[7541] Forked 30279 +(30279) found +[7540] Forked 30280 +(30280) found +[7539] Forked 30281 +[7538] Forked 30282 +(30281) found +(30282) found +[7537] Forked 30283 +[7536] Forked 30284 +(30283) found +(30284) found +[7535] Forked 30285 +[7534] Forked 30286 +(30285) found +(30286) found +[7533] Forked 30287 +[7532] Forked 30288 +(30287) found +(30288) found +[7531] Forked 30289 +[7530] Forked 30290 +(30290) found +(30289) found +[7529] Forked 30291 +(30291) found +[7528] Forked 30292 +(30292) found +[7527] Forked 30293 +(30293) found +[7526] Forked 30294 +(30294) found +[7525] Forked 30295 +(30295) found +[7524] Forked 30296 +(30296) found +[7523] Forked 30297 +(30297) found +[7522] Forked 30298 +(30298) found +[7521] Forked 30299 +(30299) found +[7520] Forked 30300 +(30300) found +[7519] Forked 30301 +(30301) found +[7518] Forked 30302 +(30302) found +[7517] Forked 30303 +(30303) found +[7516] Forked 30304 +(30304) found +[7515] Forked 30305 +(30305) found +[7514] Forked 30306 +(30306) found +[7513] Forked 30307 +(30307) found +[7512] Forked 30308 +(30308) found +[7511] Forked 30309 +(30309) found +[7510] Forked 30310 +(30310) found +[7509] Forked 30311 +(30311) found +[7508] Forked 30312 +(30312) found +[7507] Forked 30313 +(30313) found +[7506] Forked 30314 +(30314) found +[7505] Forked 30315 +(30315) found +[7504] Forked 30316 +(30316) found +[7503] Forked 30317 +(30317) found +[7502] Forked 30318 +(30318) found +[7501] Forked 30319 +(30319) found +[7500] Forked 30320 +(30320) found +[7499] Forked 30321 +(30321) found +[7498] Forked 30322 +(30322) found +[7497] Forked 30323 +(30323) found +[7496] Forked 30324 +(30324) found +[7495] Forked 30325 +(30325) found +[7494] Forked 30326 +(30326) found +[7493] Forked 30327 +(30327) found +[7492] Forked 30328 +(30328) found +[7491] Forked 30329 +(30329) found +[7490] Forked 30330 +(30330) found +[7489] Forked 30331 +(30331) found +[7488] Forked 30332 +(30332) found +[7487] Forked 30333 +(30333) found +[7486] Forked 30334 +(30334) found +[7485] Forked 30335 +(30335) found +[7484] Forked 30336 +(30336) found +[7483] Forked 30337 +(30337) found +[7482] Forked 30338 +(30338) found +[7481] Forked 30339 +(30339) found +[7480] Forked 30340 +(30340) found +[7479] Forked 30341 +(30341) found +[7478] Forked 30342 +(30342) found +[7477] Forked 30343 +(30343) found +[7476] Forked 30344 +(30344) found +[7475] Forked 30345 +(30345) found +[7474] Forked 30346 +(30346) found +[7473] Forked 30347 +(30347) found +[7472] Forked 30348 +(30348) found +[7471] Forked 30349 +(30349) found +[7470] Forked 30350 +(30350) found +[7469] Forked 30351 +(30351) found +[7468] Forked 30352 +(30352) found +[7467] Forked 30353 +(30353) found +[7466] Forked 30354 +[7465] Forked 30355 +(30354) found +(30355) found +[7464] Forked 30356 +[7463] Forked 30357 +(30356) found +(30357) found +[7462] Forked 30358 +[7461] Forked 30359 +(30358) found +(30359) found +[7460] Forked 30360 +[7459] Forked 30361 +(30360) found +(30361) found +[7458] Forked 30362 +[7457] Forked 30363 +(30362) found +(30363) found +[7456] Forked 30364 +[7455] Forked 30365 +(30364) found +(30365) found +[7454] Forked 30366 +[7453] Forked 30367 +(30366) found +(30367) found +[7452] Forked 30368 +[7451] Forked 30369 +(30368) found +(30369) found +[7450] Forked 30370 +[7449] Forked 30371 +(30370) found +(30371) found +[7448] Forked 30372 +[7447] Forked 30373 +(30372) found +(30373) found +[7446] Forked 30374 +[7445] Forked 30375 +(30374) found +(30375) found +[7444] Forked 30376 +[7443] Forked 30377 +(30376) found +(30377) found +[7442] Forked 30378 +[7441] Forked 30379 +(30378) found +(30379) found +[7440] Forked 30380 +[7439] Forked 30381 +(30380) found +(30381) found +[7438] Forked 30382 +[7437] Forked 30383 +(30382) found +(30383) found +[7436] Forked 30384 +[7435] Forked 30385 +(30384) found +(30385) found +[7434] Forked 30386 +[7433] Forked 30387 +(30386) found +(30387) found +[7432] Forked 30388 +[7431] Forked 30389 +(30388) found +(30389) found +[7430] Forked 30390 +[7429] Forked 30391 +(30390) found +(30391) found +[7428] Forked 30392 +[7427] Forked 30393 +(30392) found +(30393) found +[7426] Forked 30394 +[7425] Forked 30395 +(30394) found +(30395) found +[7424] Forked 30396 +[7423] Forked 30397 +(30396) found +(30397) found +[7422] Forked 30398 +[7421] Forked 30399 +(30398) found +(30399) found +[7420] Forked 30400 +(30400) found +[7419] Forked 30401 +(30401) found +[7418] Forked 30402 +(30402) found +[7417] Forked 30403 +(30403) found +[7416] Forked 30404 +(30404) found +[7415] Forked 30405 +(30405) found +[7414] Forked 30406 +(30406) found +[7413] Forked 30407 +(30407) found +[7412] Forked 30408 +(30408) found +[7411] Forked 30409 +(30409) found +[7410] Forked 30410 +(30410) found +[7409] Forked 30411 +(30411) found +[7408] Forked 30412 +(30412) found +[7407] Forked 30413 +(30413) found +[7406] Forked 30414 +(30414) found +[7405] Forked 30415 +(30415) found +[7404] Forked 30416 +(30416) found +[7403] Forked 30417 +(30417) found +[7402] Forked 30418 +(30418) found +[7401] Forked 30419 +(30419) found +[7400] Forked 30420 +(30420) found +[7399] Forked 30421 +(30421) found +[7398] Forked 30422 +(30422) found +[7397] Forked 30423 +(30423) found +[7396] Forked 30424 +(30424) found +[7395] Forked 30425 +(30425) found +[7394] Forked 30426 +(30426) found +[7393] Forked 30427 +(30427) found +[7392] Forked 30428 +(30428) found +[7391] Forked 30429 +(30429) found +[7390] Forked 30430 +(30430) found +[7389] Forked 30431 +(30431) found +[7388] Forked 30432 +(30432) found +[7387] Forked 30433 +(30433) found +[7386] Forked 30434 +[7385] Forked 30435 +(30434) found +(30435) found +[7384] Forked 30436 +[7383] Forked 30437 +(30436) found +(30437) found +[7382] Forked 30438 +[7381] Forked 30439 +(30438) found +(30439) found +[7380] Forked 30440 +[7379] Forked 30441 +(30440) found +(30441) found +[7378] Forked 30442 +[7377] Forked 30443 +(30442) found +(30443) found +[7376] Forked 30444 +[7375] Forked 30445 +(30444) found +(30445) found +[7374] Forked 30446 +[7373] Forked 30447 +(30446) found +(30447) found +[7372] Forked 30448 +[7371] Forked 30449 +(30448) found +(30449) found +[7370] Forked 30450 +[7369] Forked 30451 +(30450) found +(30451) found +[7368] Forked 30452 +[7367] Forked 30453 +(30452) found +(30453) found +[7366] Forked 30454 +[7365] Forked 30455 +(30454) found +(30455) found +[7364] Forked 30456 +[7363] Forked 30457 +(30456) found +(30457) found +[7362] Forked 30458 +[7361] Forked 30459 +(30458) found +(30459) found +[7360] Forked 30460 +[7359] Forked 30461 +(30460) found +(30461) found +[7358] Forked 30462 +[7357] Forked 30463 +(30462) found +(30463) found +[7356] Forked 30464 +[7355] Forked 30465 +(30464) found +(30465) found +[7354] Forked 30466 +[7353] Forked 30467 +(30466) found +(30467) found +[7352] Forked 30468 +[7351] Forked 30469 +(30468) found +(30469) found +[7350] Forked 30470 +[7349] Forked 30471 +(30470) found +(30471) found +[7348] Forked 30472 +[7347] Forked 30473 +(30472) found +(30473) found +[7346] Forked 30474 +[7345] Forked 30475 +(30474) found +(30475) found +[7344] Forked 30476 +[7343] Forked 30477 +(30476) found +(30477) found +[7342] Forked 30478 +[7341] Forked 30479 +(30478) found +(30479) found +[7340] Forked 30480 +[7339] Forked 30481 +(30480) found +(30481) found +[7338] Forked 30482 +[7337] Forked 30483 +(30482) found +(30483) found +[7336] Forked 30484 +[7335] Forked 30485 +(30484) found +(30485) found +[7334] Forked 30486 +[7333] Forked 30487 +(30486) found +(30487) found +[7332] Forked 30488 +[7331] Forked 30489 +(30488) found +(30489) found +[7330] Forked 30490 +[7329] Forked 30491 +(30490) found +(30491) found +[7328] Forked 30492 +[7327] Forked 30493 +(30492) found +(30493) found +[7326] Forked 30494 +[7325] Forked 30495 +(30494) found +(30495) found +[7324] Forked 30496 +[7323] Forked 30497 +(30496) found +(30497) found +[7322] Forked 30498 +[7321] Forked 30499 +(30498) found +(30499) found +[7320] Forked 30500 +[7319] Forked 30501 +(30500) found +(30501) found +[7318] Forked 30502 +[7317] Forked 30503 +(30502) found +(30503) found +[7316] Forked 30504 +[7315] Forked 30505 +(30504) found +(30505) found +[7314] Forked 30506 +[7313] Forked 30507 +(30506) found +(30507) found +[7312] Forked 30509 +(30509) found +[7311] Forked 30510 +(30510) found +[7310] Forked 30511 +[7309] Forked 30512 +(30511) found +(30512) found +[7308] Forked 30513 +[7307] Forked 30515 +(30513) found +(30515) found +[7306] Forked 30516 +[7305] Forked 30517 +(30516) found +(30517) found +[7304] Forked 30518 +[7303] Forked 30519 +(30518) found +(30519) found +[7302] Forked 30521 +[7301] Forked 30522 +(30521) found +(30522) found +[7300] Forked 30523 +[7299] Forked 30524 +(30523) found +(30524) found +[7298] Forked 30525 +[7297] Forked 30526 +(30525) found +(30526) found +[7296] Forked 30528 +(30528) found +[7295] Forked 30529 +(30529) found +[7294] Forked 30530 +(30530) found +[7293] Forked 30531 +(30531) found +[7292] Forked 30532 +(30532) found +[7291] Forked 30534 +(30534) found +[7290] Forked 30535 +(30535) found +[7289] Forked 30536 +(30536) found +[7288] Forked 30537 +(30537) found +[7287] Forked 30538 +(30538) found +[7286] Forked 30540 +(30540) found +[7285] Forked 30541 +(30541) found +[7284] Forked 30542 +(30542) found +[7283] Forked 30543 +(30543) found +[7282] Forked 30544 +(30544) found +[7281] Forked 30545 +(30545) found +[7280] Forked 30546 +(30546) found +[7279] Forked 30547 +(30547) found +[7278] Forked 30548 +(30548) found +[7277] Forked 30549 +(30549) found +[7276] Forked 30550 +(30550) found +[7275] Forked 30551 +(30551) found +[7274] Forked 30552 +(30552) found +[7273] Forked 30553 +(30553) found +[7272] Forked 30554 +(30554) found +[7271] Forked 30555 +(30555) found +[7270] Forked 30556 +(30556) found +[7269] Forked 30557 +(30557) found +[7268] Forked 30558 +(30558) found +[7267] Forked 30559 +(30559) found +[7266] Forked 30560 +(30560) found +[7265] Forked 30561 +(30561) found +[7264] Forked 30562 +(30562) found +[7263] Forked 30563 +(30563) found +[7262] Forked 30564 +(30564) found +[7261] Forked 30565 +(30565) found +[7260] Forked 30566 +(30566) found +[7259] Forked 30567 +(30567) found +[7258] Forked 30568 +(30568) found +[7257] Forked 30569 +(30569) found +[7256] Forked 30570 +(30570) found +[7255] Forked 30571 +(30571) found +[7254] Forked 30572 +(30572) found +[7253] Forked 30573 +(30573) found +[7252] Forked 30574 +(30574) found +[7251] Forked 30575 +(30575) found +[7250] Forked 30576 +(30576) found +[7249] Forked 30577 +(30577) found +[7248] Forked 30578 +(30578) found +[7247] Forked 30579 +(30579) found +[7246] Forked 30580 +(30580) found +[7245] Forked 30581 +(30581) found +[7244] Forked 30582 +(30582) found +[7243] Forked 30583 +(30583) found +[7242] Forked 30584 +(30584) found +[7241] Forked 30585 +(30585) found +[7240] Forked 30586 +(30586) found +[7239] Forked 30587 +(30587) found +[7238] Forked 30588 +(30588) found +[7237] Forked 30589 +(30589) found +[7236] Forked 30590 +(30590) found +[7235] Forked 30591 +(30591) found +[7234] Forked 30592 +(30592) found +[7233] Forked 30593 +(30593) found +[7232] Forked 30594 +(30594) found +[7231] Forked 30595 +(30595) found +[7230] Forked 30596 +(30596) found +[7229] Forked 30597 +(30597) found +[7228] Forked 30598 +(30598) found +[7227] Forked 30599 +(30599) found +[7226] Forked 30600 +(30600) found +[7225] Forked 30601 +(30601) found +[7224] Forked 30602 +(30602) found +[7223] Forked 30603 +(30603) found +[7222] Forked 30604 +(30604) found +[7221] Forked 30605 +(30605) found +[7220] Forked 30606 +[7219] Forked 30607 +(30606) found +(30607) found +[7218] Forked 30608 +[7217] Forked 30609 +(30608) found +(30609) found +[7216] Forked 30610 +[7215] Forked 30611 +(30610) found +(30611) found +[7214] Forked 30612 +[7213] Forked 30613 +(30612) found +(30613) found +[7212] Forked 30614 +[7211] Forked 30615 +(30614) found +(30615) found +[7210] Forked 30616 +[7209] Forked 30617 +(30616) found +(30617) found +[7208] Forked 30618 +[7207] Forked 30619 +(30618) found +(30619) found +[7206] Forked 30620 +[7205] Forked 30621 +(30620) found +(30621) found +[7204] Forked 30622 +[7203] Forked 30623 +(30622) found +(30623) found +[7202] Forked 30624 +[7201] Forked 30625 +(30624) found +(30625) found +[7200] Forked 30626 +[7199] Forked 30627 +(30627) found +(30626) found +[7198] Forked 30628 +(30628) found +[7197] Forked 30629 +(30629) found +[7196] Forked 30630 +(30630) found +[7195] Forked 30631 +(30631) found +[7194] Forked 30632 +(30632) found +[7193] Forked 30633 +(30633) found +[7192] Forked 30634 +(30634) found +[7191] Forked 30635 +(30635) found +[7190] Forked 30636 +(30636) found +[7189] Forked 30637 +(30637) found +[7188] Forked 30638 +(30638) found +[7187] Forked 30639 +(30639) found +[7186] Forked 30640 +(30640) found +[7185] Forked 30641 +(30641) found +[7184] Forked 30642 +(30642) found +[7183] Forked 30643 +(30643) found +[7182] Forked 30644 +(30644) found +[7181] Forked 30645 +(30645) found +[7180] Forked 30646 +(30646) found +[7179] Forked 30647 +(30647) found +[7178] Forked 30648 +(30648) found +[7177] Forked 30649 +(30649) found +[7176] Forked 30650 +(30650) found +[7175] Forked 30651 +(30651) found +[7174] Forked 30652 +(30652) found +[7173] Forked 30653 +(30653) found +[7172] Forked 30654 +(30654) found +[7171] Forked 30655 +(30655) found +[7170] Forked 30656 +(30656) found +[7169] Forked 30657 +(30657) found +[7168] Forked 30658 +(30658) found +[7167] Forked 30659 +(30659) found +[7166] Forked 30660 +(30660) found +[7165] Forked 30661 +(30661) found +[7164] Forked 30662 +(30662) found +[7163] Forked 30663 +(30663) found +[7162] Forked 30664 +(30664) found +[7161] Forked 30665 +(30665) found +[7160] Forked 30666 +(30666) found +[7159] Forked 30667 +(30667) found +[7158] Forked 30668 +(30668) found +[7157] Forked 30669 +(30669) found +[7156] Forked 30670 +(30670) found +[7155] Forked 30671 +(30671) found +[7154] Forked 30672 +(30672) found +[7153] Forked 30673 +(30673) found +[7152] Forked 30674 +(30674) found +[7151] Forked 30675 +(30675) found +[7150] Forked 30676 +(30676) found +[7149] Forked 30677 +(30677) found +[7148] Forked 30678 +[7147] Forked 30679 +(30678) found +(30679) found +[7146] Forked 30680 +[7145] Forked 30681 +(30680) found +(30681) found +[7144] Forked 30682 +[7143] Forked 30683 +(30682) found +(30683) found +[7142] Forked 30684 +[7141] Forked 30685 +(30684) found +(30685) found +[7140] Forked 30686 +[7139] Forked 30687 +(30686) found +(30687) found +[7138] Forked 30688 +[7137] Forked 30689 +(30688) found +(30689) found +[7136] Forked 30690 +[7135] Forked 30691 +(30690) found +(30691) found +[7134] Forked 30692 +[7133] Forked 30693 +(30692) found +(30693) found +[7132] Forked 30694 +[7131] Forked 30695 +(30694) found +(30695) found +[7130] Forked 30696 +[7129] Forked 30697 +(30696) found +(30697) found +[7128] Forked 30698 +[7127] Forked 30699 +(30698) found +(30699) found +[7126] Forked 30700 +[7125] Forked 30701 +(30700) found +(30701) found +[7124] Forked 30702 +[7123] Forked 30703 +(30702) found +(30703) found +[7122] Forked 30704 +[7121] Forked 30705 +(30704) found +(30705) found +[7120] Forked 30706 +[7119] Forked 30707 +(30706) found +(30707) found +[7118] Forked 30708 +[7117] Forked 30709 +(30708) found +(30709) found +[7116] Forked 30710 +[7115] Forked 30711 +(30710) found +(30711) found +[7114] Forked 30712 +[7113] Forked 30713 +(30712) found +(30713) found +[7112] Forked 30714 +[7111] Forked 30715 +(30714) found +(30715) found +[7110] Forked 30716 +[7109] Forked 30717 +(30716) found +(30717) found +[7108] Forked 30718 +[7107] Forked 30719 +(30718) found +(30719) found +[7106] Forked 30720 +[7105] Forked 30721 +(30720) found +(30721) found +[7104] Forked 30722 +[7103] Forked 30723 +(30722) found +(30723) found +[7102] Forked 30724 +(30724) found +[7101] Forked 30725 +(30725) found +[7100] Forked 30726 +(30726) found +[7099] Forked 30727 +(30727) found +[7098] Forked 30728 +(30728) found +[7097] Forked 30729 +(30729) found +[7096] Forked 30730 +(30730) found +[7095] Forked 30731 +(30731) found +[7094] Forked 30732 +(30732) found +[7093] Forked 30733 +(30733) found +[7092] Forked 30734 +(30734) found +[7091] Forked 30735 +(30735) found +[7090] Forked 30736 +(30736) found +[7089] Forked 30737 +(30737) found +[7088] Forked 30738 +(30738) found +[7087] Forked 30739 +(30739) found +[7086] Forked 30740 +(30740) found +[7085] Forked 30741 +(30741) found +[7084] Forked 30742 +(30742) found +[7083] Forked 30743 +(30743) found +[7082] Forked 30744 +(30744) found +[7081] Forked 30745 +(30745) found +[7080] Forked 30746 +(30746) found +[7079] Forked 30747 +(30747) found +[7078] Forked 30748 +(30748) found +[7077] Forked 30749 +(30749) found +[7076] Forked 30750 +(30750) found +[7075] Forked 30751 +(30751) found +[7074] Forked 30752 +(30752) found +[7073] Forked 30753 +(30753) found +[7072] Forked 30754 +(30754) found +[7071] Forked 30755 +(30755) found +[7070] Forked 30756 +(30756) found +[7069] Forked 30757 +(30757) found +[7068] Forked 30758 +(30758) found +[7067] Forked 30759 +[7066] Forked 30760 +(30759) found +(30760) found +[7065] Forked 30761 +[7064] Forked 30762 +(30761) found +(30762) found +[7063] Forked 30763 +[7062] Forked 30764 +(30764) found +(30763) found +[7061] Forked 30765 +(30765) found +[7060] Forked 30766 +(30766) found +[7059] Forked 30767 +(30767) found +[7058] Forked 30768 +(30768) found +[7057] Forked 30769 +(30769) found +[7056] Forked 30770 +(30770) found +[7055] Forked 30771 +(30771) found +[7054] Forked 30772 +(30772) found +[7053] Forked 30773 +(30773) found +[7052] Forked 30774 +(30774) found +[7051] Forked 30775 +(30775) found +[7050] Forked 30776 +(30776) found +[7049] Forked 30777 +(30777) found +[7048] Forked 30778 +(30778) found +[7047] Forked 30779 +(30779) found +[7046] Forked 30780 +(30780) found +[7045] Forked 30781 +(30781) found +[7044] Forked 30782 +(30782) found +[7043] Forked 30783 +(30783) found +[7042] Forked 30784 +(30784) found +[7041] Forked 30785 +(30785) found +[7040] Forked 30786 +(30786) found +[7039] Forked 30787 +(30787) found +[7038] Forked 30788 +(30788) found +[7037] Forked 30789 +(30789) found +[7036] Forked 30790 +(30790) found +[7035] Forked 30791 +(30791) found +[7034] Forked 30792 +(30792) found +[7033] Forked 30793 +(30793) found +[7032] Forked 30794 +(30794) found +[7031] Forked 30795 +(30795) found +[7030] Forked 30796 +(30796) found +[7029] Forked 30797 +(30797) found +[7028] Forked 30798 +(30798) found +[7027] Forked 30799 +(30799) found +[7026] Forked 30800 +(30800) found +[7025] Forked 30801 +(30801) found +[7024] Forked 30802 +(30802) found +[7023] Forked 30803 +(30803) found +[7022] Forked 30804 +(30804) found +[7021] Forked 30805 +(30805) found +[7020] Forked 30806 +(30806) found +[7019] Forked 30807 +(30807) found +[7018] Forked 30808 +(30808) found +[7017] Forked 30809 +(30809) found +[7016] Forked 30810 +(30810) found +[7015] Forked 30811 +(30811) found +[7014] Forked 30812 +(30812) found +[7013] Forked 30813 +(30813) found +[7012] Forked 30814 +(30814) found +[7011] Forked 30815 +(30815) found +[7010] Forked 30816 +(30816) found +[7009] Forked 30817 +(30817) found +[7008] Forked 30818 +(30818) found +[7007] Forked 30819 +(30819) found +[7006] Forked 30820 +(30820) found +[7005] Forked 30821 +(30821) found +[7004] Forked 30822 +(30822) found +[7003] Forked 30823 +(30823) found +[7002] Forked 30824 +(30824) found +[7001] Forked 30825 +(30825) found +[7000] Forked 30826 +(30826) found +[6999] Forked 30827 +(30827) found +[6998] Forked 30828 +(30828) found +[6997] Forked 30829 +[6996] Forked 30831 +(30829) found +(30831) found +[6995] Forked 30832 +[6994] Forked 30833 +(30832) found +(30833) found +[6993] Forked 30834 +[6992] Forked 30835 +(30834) found +(30835) found +[6991] Forked 30837 +[6990] Forked 30838 +(30837) found +(30838) found +[6989] Forked 30839 +[6988] Forked 30840 +(30839) found +(30840) found +[6987] Forked 30841 +[6986] Forked 30843 +(30841) found +(30843) found +[6985] Forked 30844 +[6984] Forked 30845 +(30844) found +(30845) found +[6983] Forked 30846 +[6982] Forked 30847 +(30846) found +(30847) found +[6981] Forked 30849 +[6980] Forked 30850 +(30849) found +(30850) found +[6979] Forked 30851 +[6978] Forked 30852 +(30851) found +(30852) found +[6977] Forked 30853 +[6976] Forked 30855 +(30853) found +(30855) found +[6975] Forked 30856 +[6974] Forked 30857 +(30856) found +(30857) found +[6973] Forked 30858 +[6972] Forked 30859 +(30858) found +(30859) found +[6971] Forked 30861 +[6970] Forked 30862 +(30861) found +(30862) found +[6969] Forked 30863 +[6968] Forked 30864 +(30863) found +(30864) found +[6967] Forked 30865 +[6966] Forked 30866 +(30865) found +(30866) found +[6965] Forked 30867 +[6964] Forked 30868 +(30867) found +(30868) found +[6963] Forked 30869 +[6962] Forked 30870 +(30869) found +(30870) found +[6961] Forked 30871 +[6960] Forked 30872 +(30871) found +(30872) found +[6959] Forked 30873 +[6958] Forked 30874 +(30873) found +(30874) found +[6957] Forked 30875 +[6956] Forked 30876 +(30875) found +(30876) found +[6955] Forked 30877 +[6954] Forked 30878 +(30877) found +(30878) found +[6953] Forked 30879 +[6952] Forked 30880 +(30879) found +(30880) found +[6951] Forked 30881 +[6950] Forked 30882 +(30881) found +(30882) found +[6949] Forked 30883 +[6948] Forked 30884 +(30883) found +(30884) found +[6947] Forked 30885 +[6946] Forked 30886 +(30885) found +(30886) found +[6945] Forked 30887 +[6944] Forked 30888 +(30887) found +(30888) found +[6943] Forked 30889 +[6942] Forked 30890 +(30889) found +(30890) found +[6941] Forked 30891 +[6940] Forked 30892 +(30891) found +(30892) found +[6939] Forked 30893 +[6938] Forked 30894 +(30893) found +(30894) found +[6937] Forked 30895 +[6936] Forked 30896 +(30895) found +(30896) found +[6935] Forked 30897 +[6934] Forked 30898 +(30897) found +(30898) found +[6933] Forked 30899 +[6932] Forked 30900 +(30899) found +(30900) found +[6931] Forked 30901 +[6930] Forked 30902 +(30901) found +(30902) found +[6929] Forked 30903 +[6928] Forked 30904 +(30903) found +(30904) found +[6927] Forked 30905 +[6926] Forked 30906 +(30905) found +(30906) found +[6925] Forked 30907 +[6924] Forked 30908 +(30907) found +(30908) found +[6923] Forked 30909 +[6922] Forked 30910 +(30909) found +(30910) found +[6921] Forked 30911 +[6920] Forked 30912 +(30911) found +(30912) found +[6919] Forked 30913 +[6918] Forked 30914 +(30913) found +(30914) found +[6917] Forked 30915 +[6916] Forked 30916 +(30915) found +(30916) found +[6915] Forked 30917 +[6914] Forked 30918 +(30917) found +(30918) found +[6913] Forked 30919 +[6912] Forked 30920 +(30919) found +(30920) found +[6911] Forked 30921 +[6910] Forked 30923 +(30921) found +(30923) found +[6909] Forked 30924 +(30924) found +[6908] Forked 30925 +(30925) found +[6907] Forked 30926 +(30926) found +[6906] Forked 30927 +(30927) found +[6905] Forked 30928 +(30928) found +[6904] Forked 30929 +(30929) found +[6903] Forked 30930 +(30930) found +[6902] Forked 30931 +(30931) found +[6901] Forked 30932 +(30932) found +[6900] Forked 30933 +(30933) found +[6899] Forked 30934 +(30934) found +[6898] Forked 30935 +(30935) found +[6897] Forked 30936 +(30936) found +[6896] Forked 30937 +(30937) found +[6895] Forked 30938 +(30938) found +[6894] Forked 30939 +(30939) found +[6893] Forked 30940 +(30940) found +[6892] Forked 30941 +(30941) found +[6891] Forked 30942 +(30942) found +[6890] Forked 30943 +(30943) found +[6889] Forked 30944 +(30944) found +[6888] Forked 30945 +(30945) found +[6887] Forked 30946 +(30946) found +[6886] Forked 30947 +(30947) found +[6885] Forked 30948 +(30948) found +[6884] Forked 30949 +(30949) found +[6883] Forked 30950 +(30950) found +[6882] Forked 30951 +(30951) found +[6881] Forked 30952 +(30952) found +[6880] Forked 30953 +(30953) found +[6879] Forked 30954 +(30954) found +[6878] Forked 30955 +(30955) found +[6877] Forked 30956 +(30956) found +[6876] Forked 30957 +(30957) found +[6875] Forked 30958 +(30958) found +[6874] Forked 30959 +(30959) found +[6873] Forked 30960 +(30960) found +[6872] Forked 30961 +(30961) found +[6871] Forked 30962 +(30962) found +[6870] Forked 30963 +[6869] Forked 30964 +(30963) found +(30964) found +[6868] Forked 30965 +[6867] Forked 30966 +(30965) found +(30966) found +[6866] Forked 30967 +[6865] Forked 30968 +(30967) found +(30968) found +[6864] Forked 30969 +[6863] Forked 30970 +(30969) found +(30970) found +[6862] Forked 30971 +[6861] Forked 30972 +(30971) found +(30972) found +[6860] Forked 30973 +[6859] Forked 30974 +(30973) found +(30974) found +[6858] Forked 30975 +[6857] Forked 30976 +(30975) found +(30976) found +[6856] Forked 30977 +[6855] Forked 30978 +(30977) found +(30978) found +[6854] Forked 30979 +[6853] Forked 30980 +(30979) found +(30980) found +[6852] Forked 30981 +[6851] Forked 30982 +(30981) found +(30982) found +[6850] Forked 30983 +[6849] Forked 30984 +(30983) found +(30984) found +[6848] Forked 30985 +[6847] Forked 30986 +(30985) found +(30986) found +[6846] Forked 30987 +[6845] Forked 30988 +(30987) found +(30988) found +[6844] Forked 30989 +[6843] Forked 30990 +(30989) found +(30990) found +[6842] Forked 30991 +[6841] Forked 30992 +(30991) found +(30992) found +[6840] Forked 30993 +[6839] Forked 30994 +(30993) found +(30994) found +[6838] Forked 30995 +[6837] Forked 30996 +(30995) found +(30996) found +[6836] Forked 30997 +[6835] Forked 30998 +(30997) found +(30998) found +[6834] Forked 30999 +[6833] Forked 31000 +(30999) found +(31000) found +[6832] Forked 31001 +[6831] Forked 31003 +(31001) found +(31003) found +[6830] Forked 31004 +(31004) found +[6829] Forked 31005 +(31005) found +[6828] Forked 31006 +(31006) found +[6827] Forked 31007 +(31007) found +[6826] Forked 31008 +(31008) found +[6825] Forked 31009 +(31009) found +[6824] Forked 31010 +(31010) found +[6823] Forked 31011 +(31011) found +[6822] Forked 31012 +(31012) found +[6821] Forked 31013 +(31013) found +[6820] Forked 31014 +(31014) found +[6819] Forked 31015 +(31015) found +[6818] Forked 31016 +(31016) found +[6817] Forked 31017 +(31017) found +[6816] Forked 31018 +(31018) found +[6815] Forked 31019 +(31019) found +[6814] Forked 31020 +(31020) found +[6813] Forked 31021 +(31021) found +[6812] Forked 31022 +(31022) found +[6811] Forked 31023 +(31023) found +[6810] Forked 31024 +(31024) found +[6809] Forked 31025 +(31025) found +[6808] Forked 31026 +(31026) found +[6807] Forked 31027 +(31027) found +[6806] Forked 31028 +(31028) found +[6805] Forked 31029 +(31029) found +[6804] Forked 31030 +(31030) found +[6803] Forked 31031 +(31031) found +[6802] Forked 31032 +(31032) found +[6801] Forked 31033 +(31033) found +[6800] Forked 31034 +(31034) found +[6799] Forked 31035 +(31035) found +[6798] Forked 31036 +(31036) found +[6797] Forked 31037 +(31037) found +[6796] Forked 31038 +(31038) found +[6795] Forked 31039 +(31039) found +[6794] Forked 31040 +(31040) found +[6793] Forked 31041 +(31041) found +[6792] Forked 31042 +(31042) found +[6791] Forked 31043 +(31043) found +[6790] Forked 31044 +(31044) found +[6789] Forked 31045 +[6788] Forked 31046 +(31045) found +(31046) found +[6787] Forked 31047 +[6786] Forked 31048 +(31047) found +(31048) found +[6785] Forked 31049 +[6784] Forked 31050 +(31049) found +(31050) found +[6783] Forked 31051 +[6782] Forked 31052 +(31051) found +(31052) found +[6781] Forked 31053 +[6780] Forked 31054 +(31053) found +(31054) found +[6779] Forked 31055 +[6778] Forked 31056 +(31055) found +(31056) found +[6777] Forked 31057 +[6776] Forked 31058 +(31057) found +(31058) found +[6775] Forked 31059 +[6774] Forked 31060 +(31059) found +(31060) found +[6773] Forked 31061 +[6772] Forked 31062 +(31061) found +(31062) found +[6771] Forked 31064 +[6770] Forked 31065 +(31064) found +(31065) found +[6769] Forked 31066 +[6768] Forked 31067 +(31066) found +(31067) found +[6767] Forked 31068 +[6766] Forked 31069 +(31068) found +(31069) found +[6765] Forked 31070 +[6764] Forked 31071 +(31070) found +(31071) found +[6763] Forked 31072 +[6762] Forked 31073 +(31072) found +(31073) found +[6761] Forked 31074 +[6760] Forked 31075 +(31074) found +(31075) found +[6759] Forked 31076 +[6758] Forked 31077 +(31076) found +(31077) found +[6757] Forked 31078 +[6756] Forked 31079 +(31078) found +(31079) found +[6755] Forked 31080 +[6754] Forked 31081 +(31080) found +(31081) found +[6753] Forked 31082 +[6752] Forked 31083 +(31082) found +(31083) found +[6751] Forked 31084 +[6750] Forked 31086 +(31084) found +(31086) found +[6749] Forked 31087 +(31087) found +[6748] Forked 31088 +(31088) found +[6747] Forked 31089 +(31089) found +[6746] Forked 31090 +(31090) found +[6745] Forked 31091 +(31091) found +[6744] Forked 31092 +(31092) found +[6743] Forked 31093 +(31093) found +[6742] Forked 31094 +(31094) found +[6741] Forked 31095 +(31095) found +[6740] Forked 31096 +(31096) found +[6739] Forked 31097 +(31097) found +[6738] Forked 31098 +(31098) found +[6737] Forked 31099 +(31099) found +[6736] Forked 31100 +(31100) found +[6735] Forked 31101 +(31101) found +[6734] Forked 31102 +(31102) found +[6733] Forked 31103 +(31103) found +[6732] Forked 31104 +(31104) found +[6731] Forked 31105 +(31105) found +[6730] Forked 31106 +(31106) found +[6729] Forked 31107 +(31107) found +[6728] Forked 31108 +(31108) found +[6727] Forked 31109 +(31109) found +[6726] Forked 31110 +(31110) found +[6725] Forked 31111 +(31111) found +[6724] Forked 31112 +(31112) found +[6723] Forked 31113 +(31113) found +[6722] Forked 31114 +(31114) found +[6721] Forked 31115 +(31115) found +[6720] Forked 31116 +(31116) found +[6719] Forked 31117 +(31117) found +[6718] Forked 31118 +(31118) found +[6717] Forked 31119 +(31119) found +[6716] Forked 31120 +(31120) found +[6715] Forked 31121 +(31121) found +[6714] Forked 31122 +(31122) found +[6713] Forked 31123 +(31123) found +[6712] Forked 31124 +(31124) found +[6711] Forked 31125 +(31125) found +[6710] Forked 31126 +(31126) found +[6709] Forked 31127 +(31127) found +[6708] Forked 31128 +[6707] Forked 31129 +(31128) found +(31129) found +[6706] Forked 31130 +[6705] Forked 31131 +(31130) found +(31131) found +[6704] Forked 31132 +[6703] Forked 31133 +(31132) found +(31133) found +[6702] Forked 31134 +[6701] Forked 31135 +(31134) found +(31135) found +[6700] Forked 31136 +[6699] Forked 31137 +(31136) found +(31137) found +[6698] Forked 31138 +[6697] Forked 31139 +(31138) found +(31139) found +[6696] Forked 31140 +[6695] Forked 31141 +(31140) found +(31141) found +[6694] Forked 31142 +[6693] Forked 31143 +(31142) found +(31143) found +[6692] Forked 31144 +[6691] Forked 31145 +(31144) found +(31145) found +[6690] Forked 31146 +[6689] Forked 31147 +(31146) found +(31147) found +[6688] Forked 31148 +[6687] Forked 31149 +(31148) found +(31149) found +[6686] Forked 31150 +[6685] Forked 31151 +(31150) found +(31151) found +[6684] Forked 31152 +[6683] Forked 31153 +(31152) found +(31153) found +[6682] Forked 31154 +[6681] Forked 31155 +(31154) found +(31155) found +[6680] Forked 31156 +[6679] Forked 31157 +(31156) found +(31157) found +[6678] Forked 31158 +[6677] Forked 31159 +(31158) found +(31159) found +[6676] Forked 31160 +[6675] Forked 31161 +(31160) found +(31161) found +[6674] Forked 31162 +[6673] Forked 31163 +(31162) found +(31163) found +[6672] Forked 31164 +[6671] Forked 31165 +(31164) found +(31165) found +[6670] Forked 31166 +[6669] Forked 31167 +(31166) found +(31167) found +[6668] Forked 31168 +[6667] Forked 31169 +(31168) found +(31169) found +[6666] Forked 31170 +[6665] Forked 31171 +(31170) found +(31171) found +[6664] Forked 31172 +[6663] Forked 31173 +(31172) found +(31173) found +[6662] Forked 31174 +[6661] Forked 31175 +(31174) found +(31175) found +[6660] Forked 31176 +[6659] Forked 31177 +(31176) found +(31177) found +[6658] Forked 31178 +[6657] Forked 31179 +(31178) found +(31179) found +[6656] Forked 31180 +[6655] Forked 31181 +(31180) found +(31181) found +[6654] Forked 31182 +[6653] Forked 31183 +(31182) found +(31183) found +[6652] Forked 31184 +[6651] Forked 31185 +(31184) found +(31185) found +[6650] Forked 31186 +[6649] Forked 31187 +(31186) found +(31187) found +[6648] Forked 31188 +[6647] Forked 31189 +(31188) found +(31189) found +[6646] Forked 31190 +[6645] Forked 31191 +(31190) found +(31191) found +[6644] Forked 31192 +[6643] Forked 31193 +(31192) found +(31193) found +[6642] Forked 31194 +[6641] Forked 31195 +(31194) found +(31195) found +[6640] Forked 31196 +[6639] Forked 31197 +(31196) found +(31197) found +[6638] Forked 31198 +[6637] Forked 31199 +(31198) found +(31199) found +[6636] Forked 31200 +[6635] Forked 31201 +(31200) found +(31201) found +[6634] Forked 31202 +[6633] Forked 31203 +(31202) found +(31203) found +[6632] Forked 31204 +[6631] Forked 31205 +(31204) found +(31205) found +[6630] Forked 31206 +[6629] Forked 31207 +(31206) found +(31207) found +[6628] Forked 31208 +[6627] Forked 31209 +(31208) found +(31209) found +[6626] Forked 31210 +[6625] Forked 31211 +(31210) found +(31211) found +[6624] Forked 31212 +[6623] Forked 31213 +(31212) found +(31213) found +[6622] Forked 31214 +[6621] Forked 31215 +(31214) found +(31215) found +[6620] Forked 31216 +[6619] Forked 31217 +(31216) found +(31217) found +[6618] Forked 31218 +[6617] Forked 31219 +(31218) found +(31219) found +[6616] Forked 31220 +[6615] Forked 31221 +(31220) found +(31221) found +[6614] Forked 31222 +[6613] Forked 31223 +(31222) found +(31223) found +[6612] Forked 31224 +[6611] Forked 31225 +(31224) found +(31225) found +[6610] Forked 31226 +[6609] Forked 31227 +(31226) found +(31227) found +[6608] Forked 31228 +[6607] Forked 31229 +(31228) found +(31229) found +[6606] Forked 31230 +[6605] Forked 31231 +(31230) found +(31231) found +[6604] Forked 31232 +[6603] Forked 31233 +(31232) found +(31233) found +[6602] Forked 31234 +[6601] Forked 31235 +(31234) found +(31235) found +[6600] Forked 31236 +[6599] Forked 31237 +(31236) found +(31237) found +[6598] Forked 31238 +[6597] Forked 31239 +(31238) found +(31239) found +[6596] Forked 31240 +[6595] Forked 31241 +(31240) found +(31241) found +[6594] Forked 31242 +[6593] Forked 31243 +(31242) found +(31243) found +[6592] Forked 31244 +[6591] Forked 31245 +(31244) found +(31245) found +[6590] Forked 31246 +[6589] Forked 31247 +(31246) found +(31247) found +[6588] Forked 31248 +[6587] Forked 31249 +(31248) found +(31249) found +[6586] Forked 31250 +[6585] Forked 31251 +(31250) found +(31251) found +[6584] Forked 31252 +[6583] Forked 31253 +(31252) found +(31253) found +[6582] Forked 31254 +[6581] Forked 31255 +(31254) found +(31255) found +[6580] Forked 31256 +[6579] Forked 31257 +(31256) found +(31257) found +[6578] Forked 31258 +[6577] Forked 31259 +(31258) found +(31259) found +[6576] Forked 31260 +[6575] Forked 31261 +(31260) found +(31261) found +[6574] Forked 31262 +(31262) found +[6573] Forked 31263 +(31263) found +[6572] Forked 31264 +(31264) found +[6571] Forked 31265 +(31265) found +[6570] Forked 31266 +(31266) found +[6569] Forked 31267 +(31267) found +[6568] Forked 31268 +(31268) found +[6567] Forked 31269 +(31269) found +[6566] Forked 31270 +(31270) found +[6565] Forked 31271 +(31271) found +[6564] Forked 31272 +(31272) found +[6563] Forked 31273 +(31273) found +[6562] Forked 31274 +(31274) found +[6561] Forked 31275 +(31275) found +[6560] Forked 31276 +(31276) found +[6559] Forked 31277 +(31277) found +[6558] Forked 31278 +(31278) found +[6557] Forked 31279 +(31279) found +[6556] Forked 31280 +(31280) found +[6555] Forked 31281 +(31281) found +[6554] Forked 31282 +(31282) found +[6553] Forked 31283 +(31283) found +[6552] Forked 31284 +(31284) found +[6551] Forked 31285 +(31285) found +[6550] Forked 31286 +(31286) found +[6549] Forked 31287 +(31287) found +[6548] Forked 31288 +(31288) found +[6547] Forked 31289 +(31289) found +[6546] Forked 31290 +(31290) found +[6545] Forked 31291 +(31291) found +[6544] Forked 31292 +(31292) found +[6543] Forked 31293 +(31293) found +[6542] Forked 31294 +(31294) found +[6541] Forked 31295 +(31295) found +[6540] Forked 31296 +(31296) found +[6539] Forked 31297 +(31297) found +[6538] Forked 31298 +(31298) found +[6537] Forked 31299 +(31299) found +[6536] Forked 31300 +[6535] Forked 31301 +(31300) found +(31301) found +[6534] Forked 31302 +[6533] Forked 31303 +(31302) found +(31303) found +[6532] Forked 31304 +(31304) found +[6531] Forked 31305 +[6530] Forked 31306 +(31305) found +(31306) found +[6529] Forked 31307 +[6528] Forked 31308 +(31307) found +(31308) found +[6527] Forked 31309 +[6526] Forked 31310 +(31309) found +(31310) found +[6525] Forked 31311 +[6524] Forked 31312 +(31311) found +(31312) found +[6523] Forked 31313 +[6522] Forked 31314 +(31313) found +(31314) found +[6521] Forked 31315 +[6520] Forked 31316 +(31315) found +(31316) found +[6519] Forked 31317 +[6518] Forked 31318 +(31317) found +(31318) found +[6517] Forked 31319 +[6516] Forked 31320 +(31320) found +(31319) found +[6515] Forked 31321 +(31321) found +[6514] Forked 31322 +(31322) found +[6513] Forked 31323 +(31323) found +[6512] Forked 31324 +(31324) found +[6511] Forked 31325 +(31325) found +[6510] Forked 31326 +(31326) found +[6509] Forked 31327 +(31327) found +[6508] Forked 31328 +(31328) found +[6507] Forked 31329 +(31329) found +[6506] Forked 31330 +(31330) found +[6505] Forked 31331 +(31331) found +[6504] Forked 31332 +(31332) found +[6503] Forked 31333 +(31333) found +[6502] Forked 31334 +(31334) found +[6501] Forked 31335 +(31335) found +[6500] Forked 31336 +(31336) found +[6499] Forked 31337 +(31337) found +[6498] Forked 31338 +(31338) found +[6497] Forked 31339 +(31339) found +[6496] Forked 31340 +(31340) found +[6495] Forked 31341 +(31341) found +[6494] Forked 31342 +(31342) found +[6493] Forked 31343 +(31343) found +[6492] Forked 31344 +(31344) found +[6491] Forked 31345 +(31345) found +[6490] Forked 31346 +(31346) found +[6489] Forked 31347 +(31347) found +[6488] Forked 31348 +(31348) found +[6487] Forked 31349 +(31349) found +[6486] Forked 31350 +(31350) found +[6485] Forked 31351 +(31351) found +[6484] Forked 31352 +(31352) found +[6483] Forked 31353 +(31353) found +[6482] Forked 31354 +(31354) found +[6481] Forked 31355 +(31355) found +[6480] Forked 31356 +(31356) found +[6479] Forked 31357 +(31357) found +[6478] Forked 31358 +(31358) found +[6477] Forked 31359 +(31359) found +[6476] Forked 31360 +(31360) found +[6475] Forked 31361 +(31361) found +[6474] Forked 31362 +(31362) found +[6473] Forked 31363 +(31363) found +[6472] Forked 31364 +(31364) found +[6471] Forked 31365 +(31365) found +[6470] Forked 31366 +(31366) found +[6469] Forked 31367 +(31367) found +[6468] Forked 31368 +(31368) found +[6467] Forked 31369 +(31369) found +[6466] Forked 31370 +(31370) found +[6465] Forked 31371 +(31371) found +[6464] Forked 31372 +(31372) found +[6463] Forked 31373 +(31373) found +[6462] Forked 31374 +(31374) found +[6461] Forked 31375 +[6460] Forked 31376 +(31375) found +(31376) found +[6459] Forked 31377 +[6458] Forked 31378 +(31377) found +(31378) found +[6457] Forked 31379 +[6456] Forked 31380 +(31379) found +(31380) found +[6455] Forked 31381 +[6454] Forked 31382 +(31381) found +(31382) found +[6453] Forked 31383 +[6452] Forked 31384 +(31383) found +(31384) found +[6451] Forked 31385 +[6450] Forked 31386 +(31385) found +(31386) found +[6449] Forked 31387 +[6448] Forked 31388 +(31387) found +(31388) found +[6447] Forked 31389 +[6446] Forked 31390 +(31389) found +(31390) found +[6445] Forked 31391 +[6444] Forked 31392 +(31391) found +(31392) found +[6443] Forked 31393 +[6442] Forked 31394 +(31393) found +(31394) found +[6441] Forked 31395 +[6440] Forked 31396 +(31395) found +(31396) found +[6439] Forked 31397 +[6438] Forked 31398 +(31397) found +(31398) found +[6437] Forked 31399 +[6436] Forked 31400 +(31399) found +(31400) found +[6435] Forked 31401 +[6434] Forked 31402 +(31401) found +(31402) found +[6433] Forked 31403 +[6432] Forked 31404 +(31403) found +(31404) found +[6431] Forked 31405 +[6430] Forked 31406 +(31405) found +(31406) found +[6429] Forked 31407 +[6428] Forked 31408 +(31407) found +(31408) found +[6427] Forked 31409 +[6426] Forked 31410 +(31409) found +(31410) found +[6425] Forked 31411 +[6424] Forked 31412 +(31411) found +(31412) found +[6423] Forked 31413 +[6422] Forked 31415 +(31413) found +(31415) found +[6421] Forked 31416 +(31416) found +[6420] Forked 31417 +(31417) found +[6419] Forked 31418 +(31418) found +[6418] Forked 31419 +(31419) found +[6417] Forked 31420 +(31420) found +[6416] Forked 31421 +(31421) found +[6415] Forked 31422 +(31422) found +[6414] Forked 31423 +(31423) found +[6413] Forked 31424 +(31424) found +[6412] Forked 31425 +(31425) found +[6411] Forked 31426 +(31426) found +[6410] Forked 31427 +(31427) found +[6409] Forked 31428 +(31428) found +[6408] Forked 31429 +(31429) found +[6407] Forked 31430 +(31430) found +[6406] Forked 31431 +(31431) found +[6405] Forked 31432 +(31432) found +[6404] Forked 31433 +(31433) found +[6403] Forked 31434 +(31434) found +[6402] Forked 31435 +(31435) found +[6401] Forked 31436 +(31436) found +[6400] Forked 31437 +(31437) found +[6399] Forked 31438 +(31438) found +[6398] Forked 31439 +(31439) found +[6397] Forked 31440 +(31440) found +[6396] Forked 31441 +(31441) found +[6395] Forked 31442 +(31442) found +[6394] Forked 31443 +(31443) found +[6393] Forked 31444 +(31444) found +[6392] Forked 31445 +(31445) found +[6391] Forked 31446 +(31446) found +[6390] Forked 31447 +(31447) found +[6389] Forked 31448 +(31448) found +[6388] Forked 31449 +(31449) found +[6387] Forked 31450 +(31450) found +[6386] Forked 31451 +(31451) found +[6385] Forked 31452 +(31452) found +[6384] Forked 31453 +(31453) found +[6383] Forked 31454 +(31454) found +[6382] Forked 31455 +(31455) found +[6381] Forked 31456 +(31456) found +[6380] Forked 31457 +(31457) found +[6379] Forked 31458 +(31458) found +[6378] Forked 31459 +(31459) found +[6377] Forked 31460 +(31460) found +[6376] Forked 31461 +(31461) found +[6375] Forked 31462 +(31462) found +[6374] Forked 31463 +(31463) found +[6373] Forked 31464 +(31464) found +[6372] Forked 31465 +(31465) found +[6371] Forked 31466 +(31466) found +[6370] Forked 31467 +(31467) found +[6369] Forked 31468 +(31468) found +[6368] Forked 31469 +(31469) found +[6367] Forked 31470 +(31470) found +[6366] Forked 31471 +(31471) found +[6365] Forked 31472 +(31472) found +[6364] Forked 31473 +(31473) found +[6363] Forked 31474 +(31474) found +[6362] Forked 31475 +(31475) found +[6361] Forked 31476 +(31476) found +[6360] Forked 31477 +(31477) found +[6359] Forked 31478 +(31478) found +[6358] Forked 31479 +(31479) found +[6357] Forked 31480 +(31480) found +[6356] Forked 31481 +(31481) found +[6355] Forked 31482 +(31482) found +[6354] Forked 31483 +(31483) found +[6353] Forked 31484 +(31484) found +[6352] Forked 31485 +(31485) found +[6351] Forked 31486 +(31486) found +[6350] Forked 31487 +(31487) found +[6349] Forked 31488 +(31488) found +[6348] Forked 31489 +[6347] Forked 31490 +(31489) found +(31490) found +[6346] Forked 31491 +[6345] Forked 31492 +(31491) found +(31492) found +[6344] Forked 31493 +[6343] Forked 31494 +(31493) found +(31494) found +[6342] Forked 31495 +[6341] Forked 31496 +(31495) found +(31496) found +[6340] Forked 31497 +[6339] Forked 31498 +(31497) found +(31498) found +[6338] Forked 31499 +[6337] Forked 31500 +(31499) found +(31500) found +[6336] Forked 31501 +[6335] Forked 31502 +(31501) found +(31502) found +[6334] Forked 31503 +[6333] Forked 31504 +(31503) found +(31504) found +[6332] Forked 31505 +[6331] Forked 31506 +(31505) found +(31506) found +[6330] Forked 31507 +[6329] Forked 31508 +(31507) found +(31508) found +[6328] Forked 31509 +[6327] Forked 31510 +(31509) found +(31510) found +[6326] Forked 31511 +[6325] Forked 31512 +(31511) found +(31512) found +[6324] Forked 31513 +[6323] Forked 31514 +(31513) found +(31514) found +[6322] Forked 31515 +[6321] Forked 31516 +(31515) found +(31516) found +[6320] Forked 31517 +[6319] Forked 31518 +(31517) found +(31518) found +[6318] Forked 31519 +[6317] Forked 31520 +(31519) found +(31520) found +[6316] Forked 31521 +[6315] Forked 31522 +(31521) found +(31522) found +[6314] Forked 31523 +[6313] Forked 31524 +(31523) found +(31524) found +[6312] Forked 31525 +[6311] Forked 31526 +(31525) found +(31526) found +[6310] Forked 31527 +[6309] Forked 31528 +(31527) found +(31528) found +[6308] Forked 31529 +[6307] Forked 31530 +(31529) found +(31530) found +[6306] Forked 31531 +[6305] Forked 31532 +(31531) found +(31532) found +[6304] Forked 31533 +[6303] Forked 31534 +(31533) found +(31534) found +[6302] Forked 31535 +(31535) found +[6301] Forked 31536 +(31536) found +[6300] Forked 31537 +(31537) found +[6299] Forked 31538 +(31538) found +[6298] Forked 31539 +(31539) found +[6297] Forked 31540 +(31540) found +[6296] Forked 31541 +(31541) found +[6295] Forked 31542 +(31542) found +[6294] Forked 31543 +(31543) found +[6293] Forked 31544 +(31544) found +[6292] Forked 31545 +(31545) found +[6291] Forked 31546 +(31546) found +[6290] Forked 31547 +(31547) found +[6289] Forked 31548 +(31548) found +[6288] Forked 31549 +(31549) found +[6287] Forked 31550 +(31550) found +[6286] Forked 31551 +(31551) found +[6285] Forked 31552 +(31552) found +[6284] Forked 31553 +(31553) found +[6283] Forked 31554 +(31554) found +[6282] Forked 31555 +(31555) found +[6281] Forked 31556 +(31556) found +[6280] Forked 31557 +(31557) found +[6279] Forked 31558 +(31558) found +[6278] Forked 31559 +(31559) found +[6277] Forked 31560 +(31560) found +[6276] Forked 31561 +(31561) found +[6275] Forked 31562 +(31562) found +[6274] Forked 31563 +(31563) found +[6273] Forked 31564 +(31564) found +[6272] Forked 31565 +(31565) found +[6271] Forked 31566 +(31566) found +[6270] Forked 31567 +(31567) found +[6269] Forked 31568 +(31568) found +[6268] Forked 31569 +(31569) found +[6267] Forked 31570 +(31570) found +[6266] Forked 31571 +[6265] Forked 31572 +(31571) found +(31572) found +[6264] Forked 31573 +[6263] Forked 31574 +(31573) found +(31574) found +[6262] Forked 31575 +[6261] Forked 31576 +(31575) found +(31576) found +[6260] Forked 31577 +[6259] Forked 31578 +(31577) found +(31578) found +[6258] Forked 31579 +[6257] Forked 31580 +(31579) found +(31580) found +[6256] Forked 31581 +[6255] Forked 31582 +(31581) found +(31582) found +[6254] Forked 31583 +[6253] Forked 31584 +(31583) found +(31584) found +[6252] Forked 31585 +[6251] Forked 31586 +(31585) found +(31586) found +[6250] Forked 31587 +[6249] Forked 31588 +(31587) found +(31588) found +[6248] Forked 31589 +[6247] Forked 31590 +(31589) found +(31590) found +[6246] Forked 31591 +[6245] Forked 31592 +(31591) found +(31592) found +[6244] Forked 31593 +[6243] Forked 31594 +(31593) found +(31594) found +[6242] Forked 31595 +[6241] Forked 31596 +(31595) found +(31596) found +[6240] Forked 31597 +[6239] Forked 31598 +(31597) found +(31598) found +[6238] Forked 31599 +[6237] Forked 31600 +(31599) found +(31600) found +[6236] Forked 31601 +[6235] Forked 31602 +(31601) found +(31602) found +[6234] Forked 31603 +[6233] Forked 31604 +(31603) found +(31604) found +[6232] Forked 31605 +[6231] Forked 31606 +(31605) found +(31606) found +[6230] Forked 31607 +[6229] Forked 31608 +(31607) found +(31608) found +[6228] Forked 31609 +[6227] Forked 31610 +(31609) found +(31610) found +[6226] Forked 31611 +[6225] Forked 31612 +(31611) found +(31612) found +[6224] Forked 31613 +[6223] Forked 31614 +(31613) found +(31614) found +[6222] Forked 31615 +[6221] Forked 31616 +(31615) found +(31616) found +[6220] Forked 31617 +(31617) found +[6219] Forked 31618 +(31618) found +[6218] Forked 31619 +(31619) found +[6217] Forked 31620 +(31620) found +[6216] Forked 31621 +(31621) found +[6215] Forked 31622 +(31622) found +[6214] Forked 31623 +(31623) found +[6213] Forked 31624 +(31624) found +[6212] Forked 31625 +(31625) found +[6211] Forked 31626 +(31626) found +[6210] Forked 31627 +(31627) found +[6209] Forked 31628 +(31628) found +[6208] Forked 31629 +(31629) found +[6207] Forked 31630 +(31630) found +[6206] Forked 31631 +(31631) found +[6205] Forked 31632 +(31632) found +[6204] Forked 31633 +(31633) found +[6203] Forked 31634 +(31634) found +[6202] Forked 31635 +(31635) found +[6201] Forked 31636 +(31636) found +[6200] Forked 31637 +(31637) found +[6199] Forked 31638 +(31638) found +[6198] Forked 31639 +(31639) found +[6197] Forked 31640 +(31640) found +[6196] Forked 31641 +(31641) found +[6195] Forked 31642 +(31642) found +[6194] Forked 31643 +(31643) found +[6193] Forked 31644 +(31644) found +[6192] Forked 31645 +(31645) found +[6191] Forked 31646 +(31646) found +[6190] Forked 31647 +(31647) found +[6189] Forked 31648 +(31648) found +[6188] Forked 31649 +(31649) found +[6187] Forked 31650 +(31650) found +[6186] Forked 31651 +(31651) found +[6185] Forked 31652 +(31652) found +[6184] Forked 31653 +[6183] Forked 31654 +(31653) found +(31654) found +[6182] Forked 31655 +[6181] Forked 31656 +(31655) found +(31656) found +[6180] Forked 31657 +[6179] Forked 31658 +(31657) found +(31658) found +[6178] Forked 31659 +[6177] Forked 31660 +(31659) found +(31660) found +[6176] Forked 31661 +[6175] Forked 31662 +(31661) found +(31662) found +[6174] Forked 31663 +[6173] Forked 31664 +(31663) found +(31664) found +[6172] Forked 31665 +[6171] Forked 31666 +(31665) found +(31666) found +[6170] Forked 31667 +[6169] Forked 31668 +(31667) found +(31668) found +[6168] Forked 31669 +[6167] Forked 31670 +(31669) found +(31670) found +[6166] Forked 31671 +[6165] Forked 31672 +(31671) found +(31672) found +[6164] Forked 31673 +[6163] Forked 31674 +(31673) found +(31674) found +[6162] Forked 31675 +[6161] Forked 31676 +(31675) found +(31676) found +[6160] Forked 31677 +[6159] Forked 31678 +(31677) found +(31678) found +[6158] Forked 31679 +[6157] Forked 31680 +(31679) found +(31680) found +[6156] Forked 31681 +[6155] Forked 31682 +(31681) found +(31682) found +[6154] Forked 31683 +[6153] Forked 31684 +(31683) found +(31684) found +[6152] Forked 31685 +[6151] Forked 31686 +(31685) found +(31686) found +[6150] Forked 31687 +[6149] Forked 31688 +(31687) found +(31688) found +[6148] Forked 31689 +[6147] Forked 31691 +(31689) found +(31691) found +[6146] Forked 31692 +(31692) found +[6145] Forked 31693 +(31693) found +[6144] Forked 31694 +(31694) found +[6143] Forked 31695 +(31695) found +[6142] Forked 31696 +(31696) found +[6141] Forked 31697 +(31697) found +[6140] Forked 31698 +(31698) found +[6139] Forked 31699 +(31699) found +[6138] Forked 31700 +(31700) found +[6137] Forked 31701 +(31701) found +[6136] Forked 31702 +(31702) found +[6135] Forked 31703 +(31703) found +[6134] Forked 31704 +(31704) found +[6133] Forked 31705 +(31705) found +[6132] Forked 31706 +(31706) found +[6131] Forked 31707 +(31707) found +[6130] Forked 31708 +(31708) found +[6129] Forked 31709 +(31709) found +[6128] Forked 31710 +(31710) found +[6127] Forked 31711 +(31711) found +[6126] Forked 31712 +(31712) found +[6125] Forked 31713 +(31713) found +[6124] Forked 31714 +(31714) found +[6123] Forked 31715 +(31715) found +[6122] Forked 31716 +(31716) found +[6121] Forked 31717 +(31717) found +[6120] Forked 31718 +(31718) found +[6119] Forked 31719 +(31719) found +[6118] Forked 31720 +(31720) found +[6117] Forked 31721 +(31721) found +[6116] Forked 31722 +(31722) found +[6115] Forked 31723 +(31723) found +[6114] Forked 31724 +(31724) found +[6113] Forked 31725 +(31725) found +[6112] Forked 31726 +(31726) found +[6111] Forked 31727 +(31727) found +[6110] Forked 31728 +(31728) found +[6109] Forked 31729 +(31729) found +[6108] Forked 31730 +(31730) found +[6107] Forked 31731 +(31731) found +[6106] Forked 31732 +(31732) found +[6105] Forked 31733 +(31733) found +[6104] Forked 31734 +(31734) found +[6103] Forked 31735 +(31735) found +[6102] Forked 31736 +(31736) found +[6101] Forked 31737 +(31737) found +[6100] Forked 31738 +(31738) found +[6099] Forked 31739 +(31739) found +[6098] Forked 31740 +(31740) found +[6097] Forked 31741 +(31741) found +[6096] Forked 31742 +(31742) found +[6095] Forked 31743 +(31743) found +[6094] Forked 31744 +(31744) found +[6093] Forked 31745 +(31745) found +[6092] Forked 31746 +(31746) found +[6091] Forked 31747 +(31747) found +[6090] Forked 31748 +(31748) found +[6089] Forked 31749 +(31749) found +[6088] Forked 31750 +(31750) found +[6087] Forked 31751 +(31751) found +[6086] Forked 31752 +(31752) found +[6085] Forked 31753 +(31753) found +[6084] Forked 31754 +(31754) found +[6083] Forked 31755 +(31755) found +[6082] Forked 31756 +(31756) found +[6081] Forked 31757 +(31757) found +[6080] Forked 31758 +(31758) found +[6079] Forked 31759 +(31759) found +[6078] Forked 31760 +(31760) found +[6077] Forked 31761 +(31761) found +[6076] Forked 31762 +(31762) found +[6075] Forked 31763 +(31763) found +[6074] Forked 31764 +(31764) found +[6073] Forked 31765 +(31765) found +[6072] Forked 31766 +[6071] Forked 31767 +(31766) found +(31767) found +[6070] Forked 31768 +[6069] Forked 31769 +(31768) found +(31769) found +[6068] Forked 31770 +[6067] Forked 31771 +(31770) found +(31771) found +[6066] Forked 31772 +[6065] Forked 31773 +(31772) found +(31773) found +[6064] Forked 31774 +[6063] Forked 31775 +(31774) found +(31775) found +[6062] Forked 31776 +[6061] Forked 31777 +(31776) found +(31777) found +[6060] Forked 31778 +[6059] Forked 31779 +(31778) found +(31779) found +[6058] Forked 31780 +[6057] Forked 31781 +(31780) found +(31781) found +[6056] Forked 31782 +[6055] Forked 31783 +(31782) found +(31783) found +[6054] Forked 31784 +[6053] Forked 31785 +(31784) found +(31785) found +[6052] Forked 31786 +[6051] Forked 31787 +(31786) found +(31787) found +[6050] Forked 31788 +[6049] Forked 31789 +(31788) found +(31789) found +[6048] Forked 31790 +[6047] Forked 31791 +(31790) found +(31791) found +[6046] Forked 31792 +[6045] Forked 31793 +(31792) found +(31793) found +[6044] Forked 31794 +[6043] Forked 31795 +(31794) found +(31795) found +[6042] Forked 31796 +[6041] Forked 31797 +(31796) found +(31797) found +[6040] Forked 31798 +[6039] Forked 31799 +(31798) found +(31799) found +[6038] Forked 31800 +[6037] Forked 31801 +(31800) found +(31801) found +[6036] Forked 31802 +[6035] Forked 31803 +(31802) found +(31803) found +[6034] Forked 31804 +[6033] Forked 31805 +(31804) found +(31805) found +[6032] Forked 31806 +[6031] Forked 31807 +(31806) found +(31807) found +[6030] Forked 31808 +[6029] Forked 31809 +(31808) found +(31809) found +[6028] Forked 31810 +[6027] Forked 31811 +(31810) found +(31811) found +[6026] Forked 31812 +[6025] Forked 31813 +(31812) found +(31813) found +[6024] Forked 31814 +[6023] Forked 31815 +(31814) found +(31815) found +[6022] Forked 31816 +[6021] Forked 31817 +(31816) found +(31817) found +[6020] Forked 31818 +[6019] Forked 31819 +(31818) found +(31819) found +[6018] Forked 31820 +[6017] Forked 31821 +(31820) found +(31821) found +[6016] Forked 31822 +[6015] Forked 31823 +(31822) found +(31823) found +[6014] Forked 31824 +[6013] Forked 31825 +(31824) found +(31825) found +[6012] Forked 31826 +[6011] Forked 31827 +(31826) found +(31827) found +[6010] Forked 31828 +[6009] Forked 31829 +(31828) found +(31829) found +[6008] Forked 31830 +[6007] Forked 31831 +(31830) found +(31831) found +[6006] Forked 31832 +[6005] Forked 31833 +(31832) found +(31833) found +[6004] Forked 31834 +[6003] Forked 31835 +(31834) found +(31835) found +[6002] Forked 31836 +[6001] Forked 31837 +(31836) found +(31837) found +[6000] Forked 31838 +[5999] Forked 31839 +(31838) found +(31839) found +[5998] Forked 31840 +[5997] Forked 31841 +(31840) found +(31841) found +[5996] Forked 31842 +[5995] Forked 31843 +(31842) found +(31843) found +[5994] Forked 31844 +[5993] Forked 31845 +(31844) found +(31845) found +[5992] Forked 31846 +[5991] Forked 31847 +(31846) found +(31847) found +[5990] Forked 31848 +[5989] Forked 31849 +(31848) found +(31849) found +[5988] Forked 31850 +[5987] Forked 31851 +(31850) found +(31851) found +[5986] Forked 31852 +[5985] Forked 31853 +(31852) found +(31853) found +[5984] Forked 31854 +[5983] Forked 31855 +(31854) found +(31855) found +[5982] Forked 31856 +[5981] Forked 31857 +(31856) found +(31857) found +[5980] Forked 31858 +(31858) found +[5979] Forked 31859 +(31859) found +[5978] Forked 31860 +(31860) found +[5977] Forked 31861 +(31861) found +[5976] Forked 31862 +(31862) found +[5975] Forked 31863 +(31863) found +[5974] Forked 31864 +(31864) found +[5973] Forked 31865 +(31865) found +[5972] Forked 31866 +(31866) found +[5971] Forked 31867 +(31867) found +[5970] Forked 31868 +(31868) found +[5969] Forked 31869 +(31869) found +[5968] Forked 31870 +(31870) found +[5967] Forked 31871 +(31871) found +[5966] Forked 31872 +(31872) found +[5965] Forked 31873 +(31873) found +[5964] Forked 31874 +(31874) found +[5963] Forked 31875 +(31875) found +[5962] Forked 31876 +(31876) found +[5961] Forked 31877 +(31877) found +[5960] Forked 31878 +(31878) found +[5959] Forked 31879 +(31879) found +[5958] Forked 31880 +(31880) found +[5957] Forked 31881 +(31881) found +[5956] Forked 31882 +(31882) found +[5955] Forked 31883 +(31883) found +[5954] Forked 31884 +(31884) found +[5953] Forked 31885 +(31885) found +[5952] Forked 31886 +(31886) found +[5951] Forked 31887 +(31887) found +[5950] Forked 31888 +(31888) found +[5949] Forked 31889 +(31889) found +[5948] Forked 31890 +(31890) found +[5947] Forked 31891 +(31891) found +[5946] Forked 31892 +(31892) found +[5945] Forked 31893 +[5944] Forked 31894 +(31893) found +(31894) found +[5943] Forked 31895 +[5942] Forked 31896 +(31895) found +(31896) found +[5941] Forked 31897 +[5940] Forked 31898 +(31897) found +(31898) found +[5939] Forked 31899 +[5938] Forked 31900 +(31899) found +(31900) found +[5937] Forked 31901 +[5936] Forked 31902 +(31901) found +(31902) found +[5935] Forked 31903 +[5934] Forked 31904 +(31903) found +(31904) found +[5933] Forked 31905 +[5932] Forked 31906 +(31905) found +(31906) found +[5931] Forked 31907 +[5930] Forked 31908 +(31907) found +(31908) found +[5929] Forked 31909 +[5928] Forked 31910 +(31909) found +(31910) found +[5927] Forked 31911 +[5926] Forked 31912 +(31911) found +(31912) found +[5925] Forked 31913 +[5924] Forked 31914 +(31913) found +(31914) found +[5923] Forked 31915 +[5922] Forked 31916 +(31915) found +(31916) found +[5921] Forked 31917 +[5920] Forked 31918 +(31917) found +(31918) found +[5919] Forked 31919 +[5918] Forked 31920 +(31919) found +(31920) found +[5917] Forked 31921 +[5916] Forked 31922 +(31921) found +(31922) found +[5915] Forked 31923 +[5914] Forked 31924 +(31923) found +(31924) found +[5913] Forked 31925 +[5912] Forked 31926 +(31925) found +(31926) found +[5911] Forked 31927 +[5910] Forked 31928 +(31927) found +(31928) found +[5909] Forked 31929 +[5908] Forked 31930 +(31929) found +(31930) found +[5907] Forked 31931 +[5906] Forked 31933 +(31931) found +(31933) found +[5905] Forked 31934 +(31934) found +[5904] Forked 31935 +(31935) found +[5903] Forked 31936 +(31936) found +[5902] Forked 31937 +(31937) found +[5901] Forked 31938 +(31938) found +[5900] Forked 31939 +(31939) found +[5899] Forked 31940 +(31940) found +[5898] Forked 31941 +(31941) found +[5897] Forked 31942 +(31942) found +[5896] Forked 31943 +(31943) found +[5895] Forked 31944 +(31944) found +[5894] Forked 31945 +(31945) found +[5893] Forked 31946 +(31946) found +[5892] Forked 31947 +(31947) found +[5891] Forked 31948 +(31948) found +[5890] Forked 31949 +(31949) found +[5889] Forked 31950 +(31950) found +[5888] Forked 31951 +(31951) found +[5887] Forked 31952 +(31952) found +[5886] Forked 31953 +[5885] Forked 31954 +(31953) found +(31954) found +[5884] Forked 31955 +[5883] Forked 31956 +(31955) found +(31956) found +[5882] Forked 31957 +[5881] Forked 31958 +(31957) found +(31958) found +[5880] Forked 31959 +[5879] Forked 31960 +(31959) found +(31960) found +[5878] Forked 31961 +[5877] Forked 31962 +(31961) found +(31962) found +[5876] Forked 31963 +[5875] Forked 31964 +(31963) found +(31964) found +[5874] Forked 31965 +[5873] Forked 31966 +(31965) found +(31966) found +[5872] Forked 31967 +[5871] Forked 31968 +(31967) found +(31968) found +[5870] Forked 31969 +[5869] Forked 31970 +(31969) found +(31970) found +[5868] Forked 31971 +[5867] Forked 31972 +(31971) found +(31972) found +[5866] Forked 31973 +[5865] Forked 31974 +(31973) found +(31974) found +[5864] Forked 31975 +[5863] Forked 31976 +(31975) found +(31976) found +[5862] Forked 31977 +(31977) found +[5861] Forked 31978 +(31978) found +[5860] Forked 31979 +(31979) found +[5859] Forked 31980 +(31980) found +[5858] Forked 31981 +(31981) found +[5857] Forked 31982 +(31982) found +[5856] Forked 31983 +(31983) found +[5855] Forked 31984 +(31984) found +[5854] Forked 31985 +(31985) found +[5853] Forked 31986 +(31986) found +[5852] Forked 31987 +(31987) found +[5851] Forked 31988 +(31988) found +[5850] Forked 31989 +(31989) found +[5849] Forked 31990 +(31990) found +[5848] Forked 31991 +(31991) found +[5847] Forked 31992 +(31992) found +[5846] Forked 31993 +(31993) found +[5845] Forked 31994 +(31994) found +[5844] Forked 31995 +(31995) found +[5843] Forked 31996 +(31996) found +[5842] Forked 31997 +(31997) found +[5841] Forked 31998 +(31998) found +[5840] Forked 31999 +(31999) found +[5839] Forked 32000 +(32000) found +[5838] Forked 32001 +(32001) found +[5837] Forked 32002 +(32002) found +[5836] Forked 32003 +(32003) found +[5835] Forked 32004 +(32004) found +[5834] Forked 32005 +(32005) found +[5833] Forked 32006 +(32006) found +[5832] Forked 32007 +(32007) found +[5831] Forked 32008 +(32008) found +[5830] Forked 32009 +(32009) found +[5829] Forked 32010 +(32010) found +[5828] Forked 32011 +(32011) found +[5827] Forked 32012 +(32012) found +[5826] Forked 32013 +(32013) found +[5825] Forked 32014 +(32014) found +[5824] Forked 32015 +(32015) found +[5823] Forked 32016 +[5822] Forked 32017 +(32016) found +(32017) found +[5821] Forked 32018 +[5820] Forked 32019 +(32018) found +(32019) found +[5819] Forked 32020 +[5818] Forked 32021 +(32020) found +(32021) found +[5817] Forked 32022 +[5816] Forked 32023 +(32022) found +(32023) found +[5815] Forked 32024 +[5814] Forked 32025 +(32024) found +(32025) found +[5813] Forked 32026 +[5812] Forked 32027 +(32026) found +(32027) found +[5811] Forked 32028 +[5810] Forked 32029 +(32028) found +(32029) found +[5809] Forked 32030 +[5808] Forked 32031 +(32030) found +(32031) found +[5807] Forked 32032 +[5806] Forked 32033 +(32032) found +(32033) found +[5805] Forked 32034 +[5804] Forked 32035 +(32034) found +(32035) found +[5803] Forked 32036 +[5802] Forked 32037 +(32036) found +(32037) found +[5801] Forked 32038 +[5800] Forked 32039 +(32038) found +(32039) found +[5799] Forked 32040 +[5798] Forked 32041 +(32040) found +(32041) found +[5797] Forked 32042 +[5796] Forked 32043 +(32042) found +(32043) found +[5795] Forked 32044 +[5794] Forked 32045 +(32044) found +(32045) found +[5793] Forked 32046 +[5792] Forked 32047 +(32047) found +(32046) found +[5791] Forked 32048 +(32048) found +[5790] Forked 32049 +(32049) found +[5789] Forked 32050 +(32050) found +[5788] Forked 32051 +(32051) found +[5787] Forked 32052 +(32052) found +[5786] Forked 32053 +(32053) found +[5785] Forked 32054 +(32054) found +[5784] Forked 32055 +(32055) found +[5783] Forked 32056 +(32056) found +[5782] Forked 32057 +(32057) found +[5781] Forked 32058 +(32058) found +[5780] Forked 32059 +(32059) found +[5779] Forked 32060 +(32060) found +[5778] Forked 32061 +(32061) found +[5777] Forked 32062 +(32062) found +[5776] Forked 32063 +(32063) found +[5775] Forked 32064 +(32064) found +[5774] Forked 32065 +(32065) found +[5773] Forked 32066 +[5772] Forked 32067 +(32066) found +(32067) found +[5771] Forked 32068 +[5770] Forked 32069 +(32068) found +(32069) found +[5769] Forked 32070 +[5768] Forked 32071 +(32070) found +(32071) found +[5767] Forked 32072 +[5766] Forked 32073 +(32072) found +(32073) found +[5765] Forked 32074 +[5764] Forked 32075 +(32074) found +(32075) found +[5763] Forked 32076 +[5762] Forked 32077 +(32076) found +(32077) found +[5761] Forked 32078 +[5760] Forked 32079 +(32078) found +(32079) found +[5759] Forked 32080 +[5758] Forked 32081 +(32080) found +(32081) found +[5757] Forked 32082 +[5756] Forked 32083 +(32082) found +(32083) found +[5755] Forked 32084 +[5754] Forked 32085 +(32084) found +(32085) found +[5753] Forked 32086 +[5752] Forked 32087 +(32086) found +(32087) found +[5751] Forked 32088 +[5750] Forked 32089 +(32089) found +(32088) found +[5749] Forked 32090 +(32090) found +[5748] Forked 32091 +(32091) found +[5747] Forked 32092 +(32092) found +[5746] Forked 32093 +(32093) found +[5745] Forked 32094 +(32094) found +[5744] Forked 32095 +(32095) found +[5743] Forked 32096 +(32096) found +[5742] Forked 32097 +(32097) found +[5741] Forked 32098 +(32098) found +[5740] Forked 32099 +(32099) found +[5739] Forked 32100 +(32100) found +[5738] Forked 32101 +(32101) found +[5737] Forked 32102 +(32102) found +[5736] Forked 32103 +(32103) found +[5735] Forked 32104 +(32104) found +[5734] Forked 32105 +(32105) found +[5733] Forked 32106 +(32106) found +[5732] Forked 32107 +(32107) found +[5731] Forked 32108 +(32108) found +[5730] Forked 32109 +(32109) found +[5729] Forked 32110 +(32110) found +[5728] Forked 32111 +(32111) found +[5727] Forked 32112 +(32112) found +[5726] Forked 32113 +(32113) found +[5725] Forked 32115 +(32115) found +[5724] Forked 32116 +(32116) found +[5723] Forked 32117 +(32117) found +[5722] Forked 32118 +(32118) found +[5721] Forked 32119 +(32119) found +[5720] Forked 32120 +(32120) found +[5719] Forked 32121 +(32121) found +[5718] Forked 32122 +(32122) found +[5717] Forked 32123 +(32123) found +[5716] Forked 32124 +(32124) found +[5715] Forked 32125 +(32125) found +[5714] Forked 32126 +(32126) found +[5713] Forked 32127 +(32127) found +[5712] Forked 32128 +(32128) found +[5711] Forked 32129 +(32129) found +[5710] Forked 32130 +(32130) found +[5709] Forked 32131 +(32131) found +[5708] Forked 32132 +(32132) found +[5707] Forked 32133 +(32133) found +[5706] Forked 32134 +(32134) found +[5705] Forked 32135 +(32135) found +[5704] Forked 32136 +(32136) found +[5703] Forked 32137 +(32137) found +[5702] Forked 32138 +(32138) found +[5701] Forked 32139 +(32139) found +[5700] Forked 32140 +(32140) found +[5699] Forked 32141 +[5698] Forked 32142 +(32141) found +(32142) found +[5697] Forked 32143 +[5696] Forked 32144 +(32143) found +(32144) found +[5695] Forked 32145 +[5694] Forked 32146 +(32145) found +(32146) found +[5693] Forked 32147 +[5692] Forked 32148 +(32147) found +(32148) found +[5691] Forked 32149 +[5690] Forked 32150 +(32149) found +(32150) found +[5689] Forked 32151 +[5688] Forked 32152 +(32151) found +(32152) found +[5687] Forked 32153 +[5686] Forked 32154 +(32153) found +(32154) found +[5685] Forked 32155 +[5684] Forked 32157 +(32155) found +(32157) found +[5683] Forked 32158 +(32158) found +[5682] Forked 32159 +(32159) found +[5681] Forked 32160 +(32160) found +[5680] Forked 32161 +(32161) found +[5679] Forked 32162 +(32162) found +[5678] Forked 32163 +(32163) found +[5677] Forked 32164 +(32164) found +[5676] Forked 32165 +(32165) found +[5675] Forked 32166 +(32166) found +[5674] Forked 32167 +(32167) found +[5673] Forked 32168 +(32168) found +[5672] Forked 32169 +(32169) found +[5671] Forked 32170 +(32170) found +[5670] Forked 32171 +(32171) found +[5669] Forked 32172 +(32172) found +[5668] Forked 32173 +(32173) found +[5667] Forked 32174 +(32174) found +[5666] Forked 32175 +(32175) found +[5665] Forked 32176 +(32176) found +[5664] Forked 32177 +(32177) found +[5663] Forked 32178 +(32178) found +[5662] Forked 32179 +(32179) found +[5661] Forked 32180 +(32180) found +[5660] Forked 32181 +(32181) found +[5659] Forked 32182 +(32182) found +[5658] Forked 32183 +(32183) found +[5657] Forked 32184 +(32184) found +[5656] Forked 32185 +(32185) found +[5655] Forked 32186 +(32186) found +[5654] Forked 32187 +(32187) found +[5653] Forked 32188 +(32188) found +[5652] Forked 32189 +(32189) found +[5651] Forked 32190 +(32190) found +[5650] Forked 32191 +(32191) found +[5649] Forked 32192 +(32192) found +[5648] Forked 32193 +(32193) found +[5647] Forked 32194 +(32194) found +[5646] Forked 32195 +(32195) found +[5645] Forked 32196 +(32196) found +[5644] Forked 32197 +(32197) found +[5643] Forked 32198 +(32198) found +[5642] Forked 32199 +(32199) found +[5641] Forked 32200 +(32200) found +[5640] Forked 32201 +(32201) found +[5639] Forked 32202 +(32202) found +[5638] Forked 32203 +(32203) found +[5637] Forked 32204 +(32204) found +[5636] Forked 32205 +(32205) found +[5635] Forked 32206 +(32206) found +[5634] Forked 32207 +(32207) found +[5633] Forked 32208 +(32208) found +[5632] Forked 32209 +(32209) found +[5631] Forked 32210 +(32210) found +[5630] Forked 32211 +(32211) found +[5629] Forked 32212 +(32212) found +[5628] Forked 32213 +(32213) found +[5627] Forked 32214 +(32214) found +[5626] Forked 32215 +(32215) found +[5625] Forked 32216 +(32216) found +[5624] Forked 32217 +(32217) found +[5623] Forked 32218 +(32218) found +[5622] Forked 32219 +(32219) found +[5621] Forked 32220 +(32220) found +[5620] Forked 32221 +(32221) found +[5619] Forked 32222 +(32222) found +[5618] Forked 32223 +(32223) found +[5617] Forked 32224 +(32224) found +[5616] Forked 32225 +(32225) found +[5615] Forked 32226 +(32226) found +[5614] Forked 32227 +(32227) found +[5613] Forked 32228 +(32228) found +[5612] Forked 32229 +(32229) found +[5611] Forked 32230 +(32230) found +[5610] Forked 32231 +(32231) found +[5609] Forked 32232 +(32232) found +[5608] Forked 32233 +(32233) found +[5607] Forked 32234 +(32234) found +[5606] Forked 32235 +(32235) found +[5605] Forked 32236 +(32236) found +[5604] Forked 32237 +(32237) found +[5603] Forked 32238 +(32238) found +[5602] Forked 32239 +(32239) found +[5601] Forked 32240 +(32240) found +[5600] Forked 32241 +(32241) found +[5599] Forked 32242 +(32242) found +[5598] Forked 32243 +(32243) found +[5597] Forked 32244 +(32244) found +[5596] Forked 32245 +(32245) found +[5595] Forked 32246 +(32246) found +[5594] Forked 32247 +(32247) found +[5593] Forked 32248 +(32248) found +[5592] Forked 32249 +[5591] Forked 32250 +(32249) found +(32250) found +[5590] Forked 32251 +[5589] Forked 32252 +(32251) found +(32252) found +[5588] Forked 32253 +[5587] Forked 32254 +(32253) found +(32254) found +[5586] Forked 32255 +[5585] Forked 32256 +(32255) found +(32256) found +[5584] Forked 32257 +[5583] Forked 32258 +(32257) found +(32258) found +[5582] Forked 32259 +[5581] Forked 32260 +(32259) found +(32260) found +[5580] Forked 32261 +[5579] Forked 32262 +(32261) found +(32262) found +[5578] Forked 32263 +[5577] Forked 32264 +(32263) found +(32264) found +[5576] Forked 32265 +[5575] Forked 32266 +(32265) found +(32266) found +[5574] Forked 32267 +[5573] Forked 32268 +(32267) found +(32268) found +[5572] Forked 32269 +[5571] Forked 32270 +(32269) found +(32270) found +[5570] Forked 32271 +[5569] Forked 32272 +(32271) found +(32272) found +[5568] Forked 32273 +[5567] Forked 32274 +(32273) found +(32274) found +[5566] Forked 32275 +[5565] Forked 32276 +(32275) found +(32276) found +[5564] Forked 32277 +[5563] Forked 32278 +(32277) found +(32278) found +[5562] Forked 32279 +[5561] Forked 32280 +(32279) found +(32280) found +[5560] Forked 32281 +[5559] Forked 32282 +(32281) found +(32282) found +[5558] Forked 32283 +[5557] Forked 32284 +(32283) found +(32284) found +[5556] Forked 32285 +[5555] Forked 32286 +(32285) found +(32286) found +[5554] Forked 32287 +[5553] Forked 32288 +(32287) found +(32288) found +[5552] Forked 32289 +[5551] Forked 32290 +(32289) found +(32290) found +[5550] Forked 32291 +[5549] Forked 32292 +(32291) found +(32292) found +[5548] Forked 32293 +[5547] Forked 32294 +(32293) found +(32294) found +[5546] Forked 32295 +(32295) found +[5545] Forked 32296 +(32296) found +[5544] Forked 32297 +(32297) found +[5543] Forked 32298 +(32298) found +[5542] Forked 32299 +(32299) found +[5541] Forked 32300 +(32300) found +[5540] Forked 32301 +(32301) found +[5539] Forked 32302 +(32302) found +[5538] Forked 32303 +(32303) found +[5537] Forked 32304 +(32304) found +[5536] Forked 32305 +(32305) found +[5535] Forked 32306 +(32306) found +[5534] Forked 32307 +(32307) found +[5533] Forked 32308 +(32308) found +[5532] Forked 32309 +(32309) found +[5531] Forked 32310 +(32310) found +[5530] Forked 32311 +(32311) found +[5529] Forked 32312 +(32312) found +[5528] Forked 32313 +(32313) found +[5527] Forked 32314 +(32314) found +[5526] Forked 32315 +(32315) found +[5525] Forked 32316 +(32316) found +[5524] Forked 32317 +(32317) found +[5523] Forked 32318 +(32318) found +[5522] Forked 32319 +(32319) found +[5521] Forked 32320 +(32320) found +[5520] Forked 32321 +(32321) found +[5519] Forked 32322 +(32322) found +[5518] Forked 32323 +(32323) found +[5517] Forked 32324 +(32324) found +[5516] Forked 32325 +(32325) found +[5515] Forked 32326 +(32326) found +[5514] Forked 32327 +(32327) found +[5513] Forked 32328 +(32328) found +[5512] Forked 32329 +(32329) found +[5511] Forked 32330 +[5510] Forked 32331 +(32330) found +(32331) found +[5509] Forked 32332 +[5508] Forked 32333 +(32332) found +(32333) found +[5507] Forked 32334 +[5506] Forked 32335 +(32334) found +(32335) found +[5505] Forked 32336 +[5504] Forked 32337 +(32336) found +(32337) found +[5503] Forked 32338 +[5502] Forked 32339 +(32338) found +(32339) found +[5501] Forked 32340 +[5500] Forked 32341 +(32340) found +(32341) found +[5499] Forked 32342 +[5498] Forked 32343 +(32342) found +(32343) found +[5497] Forked 32344 +[5496] Forked 32345 +(32344) found +(32345) found +[5495] Forked 32346 +[5494] Forked 32347 +(32346) found +(32347) found +[5493] Forked 32348 +[5492] Forked 32349 +(32348) found +(32349) found +[5491] Forked 32350 +[5490] Forked 32351 +(32350) found +(32351) found +[5489] Forked 32352 +[5488] Forked 32353 +(32352) found +(32353) found +[5487] Forked 32354 +[5486] Forked 32355 +(32354) found +(32355) found +[5485] Forked 32356 +[5484] Forked 32357 +(32356) found +(32357) found +[5483] Forked 32358 +[5482] Forked 32359 +(32358) found +(32359) found +[5481] Forked 32360 +[5480] Forked 32361 +(32360) found +(32361) found +[5479] Forked 32362 +[5478] Forked 32363 +(32362) found +(32363) found +[5477] Forked 32364 +[5476] Forked 32365 +(32364) found +(32365) found +[5475] Forked 32366 +[5474] Forked 32367 +(32366) found +(32367) found +[5473] Forked 32368 +[5472] Forked 32369 +(32368) found +(32369) found +[5471] Forked 32370 +[5470] Forked 32371 +(32370) found +(32371) found +[5469] Forked 32372 +[5468] Forked 32373 +(32372) found +(32373) found +[5467] Forked 32374 +[5466] Forked 32375 +(32374) found +(32375) found +[5465] Forked 32376 +[5464] Forked 32377 +(32376) found +(32377) found +[5463] Forked 32378 +[5462] Forked 32379 +(32378) found +(32379) found +[5461] Forked 32380 +[5460] Forked 32381 +(32380) found +(32381) found +[5459] Forked 32382 +[5458] Forked 32383 +(32382) found +(32383) found +[5457] Forked 32384 +[5456] Forked 32385 +(32384) found +(32385) found +[5455] Forked 32386 +[5454] Forked 32387 +(32386) found +(32387) found +[5453] Forked 32388 +[5452] Forked 32389 +(32388) found +(32389) found +[5451] Forked 32390 +[5450] Forked 32391 +(32390) found +(32391) found +[5449] Forked 32392 +[5448] Forked 32393 +(32392) found +(32393) found +[5447] Forked 32394 +[5446] Forked 32395 +(32394) found +(32395) found +[5445] Forked 32396 +[5444] Forked 32397 +(32396) found +(32397) found +[5443] Forked 32398 +[5442] Forked 32399 +(32398) found +(32399) found +[5441] Forked 32400 +[5440] Forked 32401 +(32400) found +(32401) found +[5439] Forked 32402 +[5438] Forked 32403 +(32402) found +(32403) found +[5437] Forked 32404 +[5436] Forked 32405 +(32404) found +(32405) found +[5435] Forked 32406 +[5434] Forked 32407 +(32406) found +(32407) found +[5433] Forked 32408 +[5432] Forked 32409 +(32408) found +(32409) found +[5431] Forked 32410 +[5430] Forked 32411 +(32410) found +(32411) found +[5429] Forked 32412 +[5428] Forked 32413 +(32412) found +(32413) found +[5427] Forked 32414 +[5426] Forked 32415 +(32414) found +(32415) found +[5425] Forked 32416 +[5424] Forked 32417 +(32416) found +(32417) found +[5423] Forked 32418 +(32418) found +[5422] Forked 32419 +[5421] Forked 32420 +(32419) found +(32420) found +[5420] Forked 32421 +[5419] Forked 32422 +(32421) found +(32422) found +[5418] Forked 32423 +[5417] Forked 32424 +(32423) found +(32424) found +[5416] Forked 32425 +[5415] Forked 32426 +(32425) found +(32426) found +[5414] Forked 32427 +[5413] Forked 32428 +(32427) found +(32428) found +[5412] Forked 32429 +[5411] Forked 32430 +(32429) found +(32430) found +[5410] Forked 32431 +[5409] Forked 32432 +(32431) found +(32432) found +[5408] Forked 32433 +[5407] Forked 32434 +(32433) found +(32434) found +[5406] Forked 32435 +[5405] Forked 32436 +(32435) found +(32436) found +[5404] Forked 32437 +[5403] Forked 32438 +(32437) found +(32438) found +[5402] Forked 32439 +[5401] Forked 32440 +(32439) found +(32440) found +[5400] Forked 32441 +[5399] Forked 32442 +(32441) found +(32442) found +[5398] Forked 32443 +[5397] Forked 32444 +(32443) found +(32444) found +[5396] Forked 32445 +[5395] Forked 32446 +(32445) found +(32446) found +[5394] Forked 32447 +[5393] Forked 32448 +(32447) found +(32448) found +[5392] Forked 32449 +[5391] Forked 32450 +(32449) found +(32450) found +[5390] Forked 32451 +[5389] Forked 32452 +(32451) found +(32452) found +[5388] Forked 32453 +[5387] Forked 32454 +(32453) found +(32454) found +[5386] Forked 32455 +[5385] Forked 32456 +(32455) found +(32456) found +[5384] Forked 32457 +[5383] Forked 32458 +(32457) found +(32458) found +[5382] Forked 32459 +[5381] Forked 32460 +(32459) found +(32460) found +[5380] Forked 32461 +[5379] Forked 32462 +(32461) found +(32462) found +[5378] Forked 32463 +[5377] Forked 32464 +(32463) found +(32464) found +[5376] Forked 32465 +[5375] Forked 32466 +(32465) found +(32466) found +[5374] Forked 32467 +[5373] Forked 32468 +(32467) found +(32468) found +[5372] Forked 32469 +[5371] Forked 32470 +(32469) found +(32470) found +[5370] Forked 32471 +[5369] Forked 32472 +(32471) found +(32472) found +[5368] Forked 32473 +[5367] Forked 32474 +(32473) found +(32474) found +[5366] Forked 32475 +[5365] Forked 32476 +(32475) found +(32476) found +[5364] Forked 32477 +[5363] Forked 32478 +(32477) found +(32478) found +[5362] Forked 32479 +[5361] Forked 32480 +(32479) found +(32480) found +[5360] Forked 32481 +[5359] Forked 32482 +(32481) found +(32482) found +[5358] Forked 32483 +[5357] Forked 32484 +(32483) found +(32484) found +[5356] Forked 32485 +[5355] Forked 32486 +(32485) found +(32486) found +[5354] Forked 32487 +[5353] Forked 32488 +(32487) found +(32488) found +[5352] Forked 32489 +[5351] Forked 32490 +(32489) found +(32490) found +[5350] Forked 32491 +[5349] Forked 32492 +(32491) found +(32492) found +[5348] Forked 32493 +[5347] Forked 32494 +(32493) found +(32494) found +[5346] Forked 32495 +[5345] Forked 32496 +(32495) found +(32496) found +[5344] Forked 32497 +[5343] Forked 32498 +(32497) found +(32498) found +[5342] Forked 32499 +[5341] Forked 32500 +(32499) found +(32500) found +[5340] Forked 32501 +[5339] Forked 32502 +(32501) found +(32502) found +[5338] Forked 32503 +[5337] Forked 32504 +(32503) found +(32504) found +[5336] Forked 32505 +[5335] Forked 32506 +(32505) found +(32506) found +[5334] Forked 32507 +[5333] Forked 32508 +(32507) found +(32508) found +[5332] Forked 32509 +[5331] Forked 32510 +(32509) found +(32510) found +[5330] Forked 32511 +[5329] Forked 32512 +(32511) found +(32512) found +[5328] Forked 32513 +[5327] Forked 32514 +(32513) found +(32514) found +[5326] Forked 32515 +[5325] Forked 32516 +(32515) found +(32516) found +[5324] Forked 32517 +[5323] Forked 32518 +(32517) found +(32518) found +[5322] Forked 32519 +[5321] Forked 32520 +(32519) found +(32520) found +[5320] Forked 32521 +[5319] Forked 32522 +(32521) found +(32522) found +[5318] Forked 32523 +[5317] Forked 32524 +(32523) found +(32524) found +[5316] Forked 32525 +[5315] Forked 32526 +(32525) found +(32526) found +[5314] Forked 32527 +[5313] Forked 32528 +(32527) found +(32528) found +[5312] Forked 32529 +[5311] Forked 32530 +(32529) found +(32530) found +[5310] Forked 32531 +[5309] Forked 32532 +(32531) found +(32532) found +[5308] Forked 32533 +[5307] Forked 32534 +(32533) found +(32534) found +[5306] Forked 32535 +[5305] Forked 32536 +(32535) found +(32536) found +[5304] Forked 32537 +[5303] Forked 32538 +(32537) found +(32538) found +[5302] Forked 32539 +[5301] Forked 32540 +(32539) found +(32540) found +[5300] Forked 32541 +[5299] Forked 32542 +(32541) found +(32542) found +[5298] Forked 32543 +(32543) found +[5297] Forked 32544 +(32544) found +[5296] Forked 32545 +(32545) found +[5295] Forked 32546 +(32546) found +[5294] Forked 32547 +(32547) found +[5293] Forked 32548 +(32548) found +[5292] Forked 32549 +(32549) found +[5291] Forked 32550 +[5290] Forked 32551 +(32550) found +(32551) found +[5289] Forked 32552 +[5288] Forked 32553 +(32552) found +(32553) found +[5287] Forked 32554 +[5286] Forked 32555 +(32554) found +(32555) found +[5285] Forked 32556 +[5284] Forked 32557 +(32556) found +(32557) found +[5283] Forked 32558 +[5282] Forked 32559 +(32558) found +(32559) found +[5281] Forked 32560 +[5280] Forked 32561 +(32560) found +(32561) found +[5279] Forked 32562 +[5278] Forked 32563 +(32562) found +(32563) found +[5277] Forked 32564 +[5276] Forked 32565 +(32564) found +(32565) found +[5275] Forked 32566 +[5274] Forked 32567 +(32566) found +(32567) found +[5273] Forked 32568 +[5272] Forked 32569 +(32568) found +(32569) found +[5271] Forked 32570 +[5270] Forked 32571 +(32570) found +(32571) found +[5269] Forked 32572 +[5268] Forked 32573 +(32572) found +(32573) found +[5267] Forked 32574 +[5266] Forked 32575 +(32574) found +(32575) found +[5265] Forked 32576 +[5264] Forked 32577 +(32576) found +(32577) found +[5263] Forked 32578 +[5262] Forked 32579 +(32578) found +(32579) found +[5261] Forked 32580 +[5260] Forked 32581 +(32580) found +(32581) found +[5259] Forked 32582 +[5258] Forked 32583 +(32582) found +(32583) found +[5257] Forked 32584 +[5256] Forked 32585 +(32584) found +(32585) found +[5255] Forked 32586 +[5254] Forked 32587 +(32586) found +(32587) found +[5253] Forked 32588 +[5252] Forked 32589 +(32588) found +(32589) found +[5251] Forked 32590 +[5250] Forked 32591 +(32590) found +(32591) found +[5249] Forked 32592 +[5248] Forked 32593 +(32592) found +(32593) found +[5247] Forked 32594 +(32594) found +[5246] Forked 32595 +(32595) found +[5245] Forked 32596 +(32596) found +[5244] Forked 32597 +(32597) found +[5243] Forked 32598 +(32598) found +[5242] Forked 32599 +(32599) found +[5241] Forked 32600 +(32600) found +[5240] Forked 32601 +(32601) found +[5239] Forked 32602 +(32602) found +[5238] Forked 32603 +(32603) found +[5237] Forked 32604 +(32604) found +[5236] Forked 32605 +(32605) found +[5235] Forked 32606 +(32606) found +[5234] Forked 32607 +(32607) found +[5233] Forked 32608 +(32608) found +[5232] Forked 32609 +(32609) found +[5231] Forked 32610 +(32610) found +[5230] Forked 32611 +(32611) found +[5229] Forked 32612 +(32612) found +[5228] Forked 32613 +(32613) found +[5227] Forked 32614 +(32614) found +[5226] Forked 32615 +(32615) found +[5225] Forked 32616 +(32616) found +[5224] Forked 32617 +(32617) found +[5223] Forked 32618 +(32618) found +[5222] Forked 32619 +(32619) found +[5221] Forked 32620 +(32620) found +[5220] Forked 32621 +(32621) found +[5219] Forked 32622 +(32622) found +[5218] Forked 32623 +(32623) found +[5217] Forked 32624 +(32624) found +[5216] Forked 32625 +(32625) found +[5215] Forked 32626 +(32626) found +[5214] Forked 32627 +(32627) found +[5213] Forked 32628 +(32628) found +[5212] Forked 32629 +(32629) found +[5211] Forked 32630 +(32630) found +[5210] Forked 32631 +(32631) found +[5209] Forked 32632 +(32632) found +[5208] Forked 32633 +(32633) found +[5207] Forked 32634 +[5206] Forked 32635 +(32634) found +(32635) found +[5205] Forked 32636 +[5204] Forked 32637 +(32636) found +(32637) found +[5203] Forked 32638 +[5202] Forked 32639 +(32638) found +(32639) found +[5201] Forked 32640 +[5200] Forked 32641 +(32640) found +(32641) found +[5199] Forked 32642 +[5198] Forked 32643 +(32642) found +(32643) found +[5197] Forked 32644 +[5196] Forked 32645 +(32644) found +(32645) found +[5195] Forked 32646 +[5194] Forked 32647 +(32646) found +(32647) found +[5193] Forked 32648 +[5192] Forked 32649 +(32648) found +(32649) found +[5191] Forked 32650 +[5190] Forked 32651 +(32650) found +(32651) found +[5189] Forked 32652 +[5188] Forked 32653 +(32652) found +(32653) found +[5187] Forked 32654 +[5186] Forked 32655 +(32654) found +(32655) found +[5185] Forked 32656 +[5184] Forked 32657 +(32656) found +(32657) found +[5183] Forked 32658 +[5182] Forked 32659 +(32658) found +(32659) found +[5181] Forked 32660 +(32660) found +[5180] Forked 32661 +[5179] Forked 32662 +(32661) found +(32662) found +[5178] Forked 32663 +[5177] Forked 32664 +(32663) found +(32664) found +[5176] Forked 32665 +[5175] Forked 32666 +(32665) found +(32666) found +[5174] Forked 32667 +[5173] Forked 32668 +(32667) found +(32668) found +[5172] Forked 32669 +[5171] Forked 32670 +(32669) found +(32670) found +[5170] Forked 32671 +[5169] Forked 32672 +(32671) found +(32672) found +[5168] Forked 32673 +(32673) found +[5167] Forked 32674 +(32674) found +[5166] Forked 32675 +(32675) found +[5165] Forked 32676 +(32676) found +[5164] Forked 32677 +(32677) found +[5163] Forked 32678 +(32678) found +[5162] Forked 32679 +(32679) found +[5161] Forked 32680 +(32680) found +[5160] Forked 32681 +(32681) found +[5159] Forked 32682 +(32682) found +[5158] Forked 32683 +(32683) found +[5157] Forked 32684 +(32684) found +[5156] Forked 32685 +(32685) found +[5155] Forked 32686 +(32686) found +[5154] Forked 32687 +(32687) found +[5153] Forked 32688 +(32688) found +[5152] Forked 32689 +(32689) found +[5151] Forked 32690 +(32690) found +[5150] Forked 32691 +(32691) found +[5149] Forked 32692 +(32692) found +[5148] Forked 32693 +(32693) found +[5147] Forked 32694 +(32694) found +[5146] Forked 32695 +(32695) found +[5145] Forked 32696 +(32696) found +[5144] Forked 32697 +(32697) found +[5143] Forked 32698 +(32698) found +[5142] Forked 32699 +(32699) found +[5141] Forked 32700 +(32700) found +[5140] Forked 32701 +(32701) found +[5139] Forked 32702 +(32702) found +[5138] Forked 32703 +(32703) found +[5137] Forked 32704 +(32704) found +[5136] Forked 32705 +(32705) found +[5135] Forked 32706 +(32706) found +[5134] Forked 32707 +(32707) found +[5133] Forked 32708 +(32708) found +[5132] Forked 32709 +(32709) found +[5131] Forked 32710 +(32710) found +[5130] Forked 32711 +(32711) found +[5129] Forked 32712 +[5128] Forked 32713 +(32712) found +(32713) found +[5127] Forked 32714 +[5126] Forked 32715 +(32714) found +(32715) found +[5125] Forked 32716 +[5124] Forked 32717 +(32716) found +(32717) found +[5123] Forked 32718 +[5122] Forked 32719 +(32718) found +(32719) found +[5121] Forked 32720 +[5120] Forked 32721 +(32720) found +(32721) found +[5119] Forked 32722 +[5118] Forked 32723 +(32722) found +(32723) found +[5117] Forked 32724 +[5116] Forked 32725 +(32724) found +(32725) found +[5115] Forked 32726 +[5114] Forked 32727 +(32726) found +(32727) found +[5113] Forked 32728 +[5112] Forked 32729 +(32728) found +(32729) found +[5111] Forked 32730 +[5110] Forked 32731 +(32730) found +(32731) found +[5109] Forked 32732 +[5108] Forked 32733 +(32732) found +(32733) found +[5107] Forked 32734 +[5106] Forked 32735 +(32734) found +(32735) found +[5105] Forked 32736 +[5104] Forked 32737 +(32736) found +(32737) found +[5103] Forked 32738 +[5102] Forked 32739 +(32738) found +(32739) found +[5101] Forked 32740 +[5100] Forked 32741 +(32740) found +(32741) found +[5099] Forked 32742 +[5098] Forked 32743 +(32742) found +(32743) found +[5097] Forked 32744 +[5096] Forked 32745 +(32744) found +(32745) found +[5095] Forked 32746 +[5094] Forked 32747 +(32746) found +(32747) found +[5093] Forked 32748 +[5092] Forked 32749 +(32748) found +(32749) found +[5091] Forked 32750 +[5090] Forked 32751 +(32750) found +(32751) found +[5089] Forked 32752 +[5088] Forked 32753 +(32752) found +(32753) found +[5087] Forked 32754 +[5086] Forked 32755 +(32754) found +(32755) found +[5085] Forked 32756 +[5084] Forked 32757 +(32756) found +(32757) found +[5083] Forked 32758 +[5082] Forked 32759 +(32758) found +(32759) found +[5081] Forked 32760 +[5080] Forked 32761 +(32760) found +(32761) found +[5079] Forked 32762 +[5078] Forked 32763 +(32762) found +(32763) found +[5077] Forked 32764 +[5076] Forked 32765 +(32764) found +(32765) found +[5075] Forked 32766 +[5074] Forked 32767 +(32766) found +(32767) found +[5073] Forked 300 +[5072] Forked 301 +(300) found +(301) found +[5071] Forked 302 +[5070] Forked 303 +(302) found +(303) found +[5069] Forked 304 +[5068] Forked 305 +(304) found +(305) found +[5067] Forked 306 +[5066] Forked 307 +(306) found +(307) found +[5065] Forked 308 +(308) found +[5064] Forked 310 +(310) found +[5063] Forked 311 +(311) found +[5062] Forked 312 +(312) found +[5061] Forked 313 +(313) found +[5060] Forked 314 +(314) found +[5059] Forked 315 +(315) found +[5058] Forked 316 +(316) found +[5057] Forked 317 +(317) found +[5056] Forked 318 +(318) found +[5055] Forked 319 +(319) found +[5054] Forked 320 +(320) found +[5053] Forked 321 +(321) found +[5052] Forked 322 +(322) found +[5051] Forked 323 +(323) found +[5050] Forked 324 +(324) found +[5049] Forked 325 +(325) found +[5048] Forked 328 +(328) found +[5047] Forked 330 +(330) found +[5046] Forked 331 +(331) found +[5045] Forked 332 +(332) found +[5044] Forked 333 +(333) found +[5043] Forked 334 +(334) found +[5042] Forked 335 +(335) found +[5041] Forked 336 +(336) found +[5040] Forked 337 +(337) found +[5039] Forked 338 +(338) found +[5038] Forked 339 +(339) found +[5037] Forked 340 +(340) found +[5036] Forked 341 +(341) found +[5035] Forked 342 +(342) found +[5034] Forked 343 +(343) found +[5033] Forked 344 +(344) found +[5032] Forked 345 +(345) found +[5031] Forked 346 +(346) found +[5030] Forked 347 +(347) found +[5029] Forked 348 +(348) found +[5028] Forked 349 +(349) found +[5027] Forked 350 +(350) found +[5026] Forked 351 +(351) found +[5025] Forked 352 +(352) found +[5024] Forked 353 +(353) found +[5023] Forked 354 +(354) found +[5022] Forked 355 +(355) found +[5021] Forked 356 +(356) found +[5020] Forked 357 +(357) found +[5019] Forked 358 +(358) found +[5018] Forked 359 +(359) found +[5017] Forked 360 +(360) found +[5016] Forked 361 +(361) found +[5015] Forked 362 +(362) found +[5014] Forked 363 +(363) found +[5013] Forked 364 +[5012] Forked 365 +(364) found +(365) found +[5011] Forked 366 +[5010] Forked 367 +(366) found +(367) found +[5009] Forked 368 +[5008] Forked 369 +(368) found +(369) found +[5007] Forked 370 +[5006] Forked 371 +(370) found +(371) found +[5005] Forked 372 +[5004] Forked 373 +(372) found +(373) found +[5003] Forked 374 +[5002] Forked 375 +(374) found +(375) found +[5001] Forked 376 +[5000] Forked 377 +(376) found +(377) found +[4999] Forked 378 +[4998] Forked 379 +(378) found +(379) found +[4997] Forked 380 +[4996] Forked 381 +(380) found +(381) found +[4995] Forked 383 +[4994] Forked 384 +(383) found +(384) found +[4993] Forked 385 +[4992] Forked 386 +(385) found +(386) found +[4991] Forked 387 +[4990] Forked 388 +(387) found +(388) found +[4989] Forked 389 +[4988] Forked 390 +(389) found +(390) found +[4987] Forked 391 +[4986] Forked 392 +(391) found +(392) found +[4985] Forked 393 +[4984] Forked 394 +(393) found +(394) found +[4983] Forked 395 +[4982] Forked 396 +(395) found +(396) found +[4981] Forked 397 +[4980] Forked 398 +(397) found +(398) found +[4979] Forked 399 +[4978] Forked 401 +(399) found +(401) found +[4977] Forked 402 +[4976] Forked 403 +(402) found +(403) found +[4975] Forked 404 +[4974] Forked 405 +(404) found +(405) found +[4973] Forked 407 +[4972] Forked 408 +(407) found +(408) found +[4971] Forked 409 +[4970] Forked 410 +(409) found +(410) found +[4969] Forked 411 +[4968] Forked 412 +(411) found +(412) found +[4967] Forked 413 +[4966] Forked 414 +(413) found +(414) found +[4965] Forked 415 +[4964] Forked 416 +(415) found +(416) found +[4963] Forked 417 +[4962] Forked 418 +(417) found +(418) found +[4961] Forked 419 +[4960] Forked 420 +(419) found +(420) found +[4959] Forked 421 +[4958] Forked 422 +(421) found +(422) found +[4957] Forked 423 +[4956] Forked 424 +(423) found +(424) found +[4955] Forked 425 +[4954] Forked 426 +(425) found +(426) found +[4953] Forked 427 +[4952] Forked 429 +(427) found +(429) found +[4951] Forked 430 +[4950] Forked 431 +(430) found +(431) found +[4949] Forked 432 +[4948] Forked 433 +(432) found +(433) found +[4947] Forked 434 +[4946] Forked 435 +(434) found +(435) found +[4945] Forked 436 +[4944] Forked 437 +(436) found +(437) found +[4943] Forked 438 +[4942] Forked 439 +(439) found +(438) found +[4941] Forked 440 +(440) found +[4940] Forked 441 +(441) found +[4939] Forked 442 +(442) found +[4938] Forked 443 +(443) found +[4937] Forked 444 +(444) found +[4936] Forked 445 +(445) found +[4935] Forked 446 +(446) found +[4934] Forked 447 +(447) found +[4933] Forked 448 +(448) found +[4932] Forked 449 +(449) found +[4931] Forked 450 +(450) found +[4930] Forked 451 +(451) found +[4929] Forked 452 +(452) found +[4928] Forked 453 +(453) found +[4927] Forked 454 +(454) found +[4926] Forked 455 +(455) found +[4925] Forked 456 +(456) found +[4924] Forked 457 +(457) found +[4923] Forked 458 +(458) found +[4922] Forked 459 +(459) found +[4921] Forked 460 +(460) found +[4920] Forked 461 +(461) found +[4919] Forked 462 +(462) found +[4918] Forked 463 +(463) found +[4917] Forked 464 +(464) found +[4916] Forked 465 +(465) found +[4915] Forked 466 +(466) found +[4914] Forked 467 +(467) found +[4913] Forked 468 +(468) found +[4912] Forked 469 +(469) found +[4911] Forked 470 +(470) found +[4910] Forked 471 +(471) found +[4909] Forked 472 +(472) found +[4908] Forked 473 +(473) found +[4907] Forked 474 +(474) found +[4906] Forked 475 +(475) found +[4905] Forked 476 +(476) found +[4904] Forked 477 +(477) found +[4903] Forked 478 +(478) found +[4902] Forked 479 +(479) found +[4901] Forked 480 +(480) found +[4900] Forked 481 +(481) found +[4899] Forked 482 +(482) found +[4898] Forked 483 +(483) found +[4897] Forked 484 +(484) found +[4896] Forked 485 +(485) found +[4895] Forked 486 +(486) found +[4894] Forked 487 +(487) found +[4893] Forked 488 +(488) found +[4892] Forked 489 +(489) found +[4891] Forked 490 +(490) found +[4890] Forked 491 +(491) found +[4889] Forked 492 +(492) found +[4888] Forked 493 +(493) found +[4887] Forked 494 +(494) found +[4886] Forked 495 +(495) found +[4885] Forked 496 +(496) found +[4884] Forked 497 +(497) found +[4883] Forked 498 +(498) found +[4882] Forked 499 +(499) found +[4881] Forked 500 +(500) found +[4880] Forked 501 +(501) found +[4879] Forked 502 +(502) found +[4878] Forked 503 +(503) found +[4877] Forked 504 +(504) found +[4876] Forked 505 +(505) found +[4875] Forked 506 +(506) found +[4874] Forked 507 +(507) found +[4873] Forked 508 +(508) found +[4872] Forked 509 +(509) found +[4871] Forked 510 +(510) found +[4870] Forked 511 +(511) found +[4869] Forked 512 +(512) found +[4868] Forked 513 +(513) found +[4867] Forked 514 +(514) found +[4866] Forked 515 +(515) found +[4865] Forked 516 +(516) found +[4864] Forked 517 +(517) found +[4863] Forked 518 +(518) found +[4862] Forked 519 +[4861] Forked 520 +(519) found +(520) found +[4860] Forked 521 +[4859] Forked 522 +(521) found +(522) found +[4858] Forked 523 +[4857] Forked 524 +(523) found +(524) found +[4856] Forked 525 +[4855] Forked 526 +(525) found +(526) found +[4854] Forked 527 +[4853] Forked 528 +(527) found +(528) found +[4852] Forked 529 +[4851] Forked 530 +(529) found +(530) found +[4850] Forked 531 +[4849] Forked 532 +(531) found +(532) found +[4848] Forked 533 +[4847] Forked 534 +(533) found +(534) found +[4846] Forked 535 +[4845] Forked 536 +(535) found +(536) found +[4844] Forked 537 +[4843] Forked 538 +(537) found +(538) found +[4842] Forked 539 +[4841] Forked 540 +(539) found +(540) found +[4840] Forked 541 +[4839] Forked 542 +(541) found +(542) found +[4838] Forked 543 +[4837] Forked 544 +(543) found +(544) found +[4836] Forked 545 +[4835] Forked 546 +(545) found +(546) found +[4834] Forked 547 +[4833] Forked 548 +(547) found +(548) found +[4832] Forked 549 +[4831] Forked 550 +(549) found +(550) found +[4830] Forked 551 +[4829] Forked 552 +(551) found +(552) found +[4828] Forked 553 +[4827] Forked 554 +(553) found +(554) found +[4826] Forked 555 +[4825] Forked 556 +(555) found +(556) found +[4824] Forked 557 +[4823] Forked 558 +(557) found +(558) found +[4822] Forked 559 +[4821] Forked 560 +(559) found +(560) found +[4820] Forked 561 +[4819] Forked 562 +(561) found +(562) found +[4818] Forked 563 +[4817] Forked 564 +(563) found +(564) found +[4816] Forked 565 +(565) found +[4815] Forked 566 +(566) found +[4814] Forked 567 +(567) found +[4813] Forked 568 +(568) found +[4812] Forked 569 +(569) found +[4811] Forked 570 +(570) found +[4810] Forked 571 +(571) found +[4809] Forked 572 +(572) found +[4808] Forked 573 +(573) found +[4807] Forked 574 +(574) found +[4806] Forked 575 +(575) found +[4805] Forked 576 +(576) found +[4804] Forked 577 +(577) found +[4803] Forked 578 +(578) found +[4802] Forked 579 +(579) found +[4801] Forked 580 +(580) found +[4800] Forked 581 +(581) found +[4799] Forked 582 +(582) found +[4798] Forked 583 +(583) found +[4797] Forked 584 +(584) found +[4796] Forked 585 +(585) found +[4795] Forked 586 +(586) found +[4794] Forked 587 +(587) found +[4793] Forked 588 +(588) found +[4792] Forked 589 +(589) found +[4791] Forked 590 +(590) found +[4790] Forked 591 +(591) found +[4789] Forked 592 +(592) found +[4788] Forked 593 +(593) found +[4787] Forked 594 +(594) found +[4786] Forked 595 +(595) found +[4785] Forked 596 +(596) found +[4784] Forked 597 +(597) found +[4783] Forked 598 +(598) found +[4782] Forked 599 +(599) found +[4781] Forked 600 +[4780] Forked 601 +(600) found +(601) found +[4779] Forked 602 +[4778] Forked 603 +(602) found +(603) found +[4777] Forked 604 +[4776] Forked 606 +(604) found +(606) found +[4775] Forked 607 +[4774] Forked 609 +(607) found +(609) found +[4773] Forked 610 +[4772] Forked 612 +(610) found +(612) found +[4771] Forked 613 +[4770] Forked 615 +(613) found +(615) found +[4769] Forked 616 +[4768] Forked 617 +(616) found +(617) found +[4767] Forked 618 +[4766] Forked 619 +(618) found +(619) found +[4765] Forked 620 +[4764] Forked 621 +(620) found +(621) found +[4763] Forked 622 +[4762] Forked 623 +(622) found +(623) found +[4761] Forked 624 +[4760] Forked 625 +(624) found +(625) found +[4759] Forked 626 +[4758] Forked 627 +(626) found +(627) found +[4757] Forked 628 +[4756] Forked 629 +(628) found +(629) found +[4755] Forked 630 +[4754] Forked 631 +(630) found +(631) found +[4753] Forked 632 +[4752] Forked 633 +(632) found +(633) found +[4751] Forked 634 +[4750] Forked 635 +(634) found +(635) found +[4749] Forked 636 +[4748] Forked 637 +(636) found +(637) found +[4747] Forked 638 +[4746] Forked 639 +(638) found +(639) found +[4745] Forked 640 +[4744] Forked 641 +(640) found +(641) found +[4743] Forked 642 +[4742] Forked 643 +(642) found +(643) found +[4741] Forked 644 +[4740] Forked 646 +(644) found +(646) found +[4739] Forked 647 +(647) found +[4738] Forked 648 +(648) found +[4737] Forked 649 +(649) found +[4736] Forked 650 +(650) found +[4735] Forked 651 +(651) found +[4734] Forked 652 +(652) found +[4733] Forked 653 +(653) found +[4732] Forked 654 +(654) found +[4731] Forked 655 +(655) found +[4730] Forked 656 +(656) found +[4729] Forked 657 +(657) found +[4728] Forked 658 +(658) found +[4727] Forked 659 +(659) found +[4726] Forked 660 +(660) found +[4725] Forked 661 +(661) found +[4724] Forked 662 +(662) found +[4723] Forked 663 +(663) found +[4722] Forked 664 +(664) found +[4721] Forked 665 +(665) found +[4720] Forked 666 +(666) found +[4719] Forked 667 +(667) found +[4718] Forked 668 +(668) found +[4717] Forked 669 +(669) found +[4716] Forked 670 +(670) found +[4715] Forked 671 +(671) found +[4714] Forked 672 +(672) found +[4713] Forked 673 +(673) found +[4712] Forked 674 +(674) found +[4711] Forked 675 +(675) found +[4710] Forked 677 +(677) found +[4709] Forked 678 +(678) found +[4708] Forked 679 +(679) found +[4707] Forked 680 +(680) found +[4706] Forked 681 +(681) found +[4705] Forked 682 +(682) found +[4704] Forked 683 +(683) found +[4703] Forked 684 +(684) found +[4702] Forked 685 +(685) found +[4701] Forked 686 +[4700] Forked 687 +(686) found +(687) found +[4699] Forked 688 +[4698] Forked 689 +(688) found +(689) found +[4697] Forked 690 +[4696] Forked 691 +(691) found +(690) found +[4695] Forked 692 +(692) found +[4694] Forked 693 +(693) found +[4693] Forked 694 +(694) found +[4692] Forked 695 +(695) found +[4691] Forked 696 +(696) found +[4690] Forked 697 +(697) found +[4689] Forked 698 +(698) found +[4688] Forked 699 +(699) found +[4687] Forked 700 +(700) found +[4686] Forked 701 +(701) found +[4685] Forked 702 +(702) found +[4684] Forked 703 +(703) found +[4683] Forked 704 +(704) found +[4682] Forked 705 +(705) found +[4681] Forked 706 +(706) found +[4680] Forked 707 +(707) found +[4679] Forked 708 +(708) found +[4678] Forked 709 +(709) found +[4677] Forked 710 +(710) found +[4676] Forked 711 +(711) found +[4675] Forked 712 +(712) found +[4674] Forked 713 +(713) found +[4673] Forked 714 +(714) found +[4672] Forked 715 +(715) found +[4671] Forked 716 +(716) found +[4670] Forked 717 +(717) found +[4669] Forked 718 +(718) found +[4668] Forked 719 +(719) found +[4667] Forked 720 +(720) found +[4666] Forked 721 +(721) found +[4665] Forked 722 +(722) found +[4664] Forked 723 +(723) found +[4663] Forked 724 +(724) found +[4662] Forked 725 +(725) found +[4661] Forked 726 +(726) found +[4660] Forked 727 +(727) found +[4659] Forked 728 +(728) found +[4658] Forked 729 +(729) found +[4657] Forked 730 +(730) found +[4656] Forked 731 +(731) found +[4655] Forked 732 +(732) found +[4654] Forked 734 +(734) found +[4653] Forked 735 +(735) found +[4652] Forked 737 +(737) found +[4651] Forked 740 +(740) found +[4650] Forked 742 +(742) found +[4649] Forked 744 +(744) found +[4648] Forked 745 +(745) found +[4647] Forked 746 +(746) found +[4646] Forked 747 +(747) found +[4645] Forked 748 +(748) found +[4644] Forked 749 +(749) found +[4643] Forked 750 +(750) found +[4642] Forked 751 +(751) found +[4641] Forked 752 +(752) found +[4640] Forked 753 +(753) found +[4639] Forked 754 +(754) found +[4638] Forked 755 +(755) found +[4637] Forked 756 +(756) found +[4636] Forked 757 +(757) found +[4635] Forked 758 +(758) found +[4634] Forked 759 +(759) found +[4633] Forked 760 +(760) found +[4632] Forked 761 +(761) found +[4631] Forked 762 +(762) found +[4630] Forked 763 +(763) found +[4629] Forked 764 +(764) found +[4628] Forked 765 +(765) found +[4627] Forked 766 +(766) found +[4626] Forked 767 +(767) found +[4625] Forked 768 +(768) found +[4624] Forked 769 +(769) found +[4623] Forked 770 +(770) found +[4622] Forked 771 +(771) found +[4621] Forked 772 +(772) found +[4620] Forked 773 +(773) found +[4619] Forked 774 +(774) found +[4618] Forked 775 +(775) found +[4617] Forked 776 +(776) found +[4616] Forked 777 +(777) found +[4615] Forked 778 +(778) found +[4614] Forked 780 +(780) found +[4613] Forked 781 +(781) found +[4612] Forked 782 +(782) found +[4611] Forked 783 +(783) found +[4610] Forked 784 +(784) found +[4609] Forked 785 +(785) found +[4608] Forked 786 +(786) found +[4607] Forked 787 +(787) found +[4606] Forked 788 +(788) found +[4605] Forked 789 +(789) found +[4604] Forked 790 +(790) found +[4603] Forked 791 +(791) found +[4602] Forked 792 +(792) found +[4601] Forked 793 +(793) found +[4600] Forked 794 +[4599] Forked 795 +(794) found +(795) found +[4598] Forked 796 +[4597] Forked 797 +(796) found +(797) found +[4596] Forked 798 +[4595] Forked 799 +(798) found +(799) found +[4594] Forked 800 +[4593] Forked 801 +(800) found +(801) found +[4592] Forked 802 +[4591] Forked 803 +(802) found +(803) found +[4590] Forked 804 +[4589] Forked 805 +(804) found +(805) found +[4588] Forked 806 +[4587] Forked 807 +(806) found +(807) found +[4586] Forked 808 +[4585] Forked 809 +(808) found +(809) found +[4584] Forked 810 +[4583] Forked 811 +(810) found +(811) found +[4582] Forked 812 +[4581] Forked 813 +(812) found +(813) found +[4580] Forked 814 +[4579] Forked 815 +(814) found +(815) found +[4578] Forked 816 +[4577] Forked 817 +(816) found +(817) found +[4576] Forked 818 +[4575] Forked 819 +(818) found +(819) found +[4574] Forked 820 +[4573] Forked 821 +(820) found +(821) found +[4572] Forked 822 +[4571] Forked 823 +(822) found +(823) found +[4570] Forked 824 +[4569] Forked 825 +(824) found +(825) found +[4568] Forked 826 +[4567] Forked 827 +(826) found +(827) found +[4566] Forked 828 +[4565] Forked 829 +(828) found +(829) found +[4564] Forked 830 +[4563] Forked 831 +(830) found +(831) found +[4562] Forked 832 +(832) found +[4561] Forked 833 +[4560] Forked 834 +(833) found +(834) found +[4559] Forked 835 +[4558] Forked 836 +(835) found +(836) found +[4557] Forked 837 +[4556] Forked 838 +(837) found +(838) found +[4555] Forked 839 +[4554] Forked 840 +(839) found +(840) found +[4553] Forked 841 +[4552] Forked 842 +(841) found +(842) found +[4551] Forked 843 +[4550] Forked 844 +(843) found +(844) found +[4549] Forked 845 +[4548] Forked 847 +(845) found +(847) found +[4547] Forked 848 +[4546] Forked 849 +(848) found +(849) found +[4545] Forked 850 +[4544] Forked 851 +(850) found +(851) found +[4543] Forked 852 +[4542] Forked 853 +(852) found +(853) found +[4541] Forked 854 +[4540] Forked 855 +(854) found +(855) found +[4539] Forked 856 +[4538] Forked 857 +(856) found +(857) found +[4537] Forked 858 +(858) found +[4536] Forked 859 +[4535] Forked 860 +(859) found +(860) found +[4534] Forked 861 +[4533] Forked 862 +(861) found +(862) found +[4532] Forked 863 +[4531] Forked 864 +(863) found +(864) found +[4530] Forked 865 +[4529] Forked 866 +(865) found +(866) found +[4528] Forked 867 +[4527] Forked 868 +(867) found +(868) found +[4526] Forked 869 +[4525] Forked 870 +(869) found +(870) found +[4524] Forked 871 +[4523] Forked 872 +(871) found +(872) found +[4522] Forked 873 +[4521] Forked 874 +(873) found +(874) found +[4520] Forked 875 +[4519] Forked 876 +(875) found +(876) found +[4518] Forked 877 +[4517] Forked 879 +(877) found +(879) found +[4516] Forked 880 +(880) found +[4515] Forked 881 +(881) found +[4514] Forked 882 +(882) found +[4513] Forked 883 +(883) found +[4512] Forked 884 +(884) found +[4511] Forked 885 +(885) found +[4510] Forked 886 +(886) found +[4509] Forked 887 +(887) found +[4508] Forked 888 +(888) found +[4507] Forked 889 +(889) found +[4506] Forked 890 +(890) found +[4505] Forked 891 +(891) found +[4504] Forked 892 +(892) found +[4503] Forked 893 +(893) found +[4502] Forked 894 +(894) found +[4501] Forked 895 +(895) found +[4500] Forked 896 +(896) found +[4499] Forked 897 +(897) found +[4498] Forked 898 +(898) found +[4497] Forked 899 +(899) found +[4496] Forked 900 +(900) found +[4495] Forked 901 +(901) found +[4494] Forked 902 +(902) found +[4493] Forked 903 +(903) found +[4492] Forked 904 +(904) found +[4491] Forked 905 +(905) found +[4490] Forked 906 +(906) found +[4489] Forked 907 +(907) found +[4488] Forked 908 +(908) found +[4487] Forked 909 +(909) found +[4486] Forked 910 +(910) found +[4485] Forked 911 +(911) found +[4484] Forked 912 +(912) found +[4483] Forked 913 +(913) found +[4482] Forked 914 +(914) found +[4481] Forked 915 +(915) found +[4480] Forked 916 +(916) found +[4479] Forked 917 +(917) found +[4478] Forked 918 +[4477] Forked 919 +(918) found +(919) found +[4476] Forked 920 +[4475] Forked 921 +(920) found +(921) found +[4474] Forked 922 +[4473] Forked 923 +(922) found +(923) found +[4472] Forked 924 +[4471] Forked 925 +(924) found +(925) found +[4470] Forked 926 +[4469] Forked 927 +(926) found +(927) found +[4468] Forked 941 +[4467] Forked 942 +(941) found +(942) found +[4466] Forked 943 +[4465] Forked 944 +(943) found +(944) found +[4464] Forked 945 +[4463] Forked 946 +(945) found +(946) found +[4462] Forked 947 +[4461] Forked 950 +(947) found +(950) found +[4460] Forked 951 +[4459] Forked 952 +(951) found +(952) found +[4458] Forked 953 +[4457] Forked 954 +(953) found +(954) found +[4456] Forked 955 +[4455] Forked 956 +(955) found +(956) found +[4454] Forked 957 +[4453] Forked 958 +(957) found +(958) found +[4452] Forked 959 +[4451] Forked 960 +(959) found +(960) found +[4450] Forked 961 +[4449] Forked 962 +(961) found +(962) found +[4448] Forked 963 +[4447] Forked 964 +(963) found +(964) found +[4446] Forked 965 +[4445] Forked 966 +(965) found +(966) found +[4444] Forked 967 +[4443] Forked 968 +(967) found +(968) found +[4442] Forked 969 +[4441] Forked 970 +(969) found +(970) found +[4440] Forked 971 +[4439] Forked 972 +(971) found +(972) found +[4438] Forked 973 +[4437] Forked 974 +(973) found +(974) found +[4436] Forked 975 +[4435] Forked 976 +(975) found +(976) found +[4434] Forked 977 +[4433] Forked 978 +(977) found +(978) found +[4432] Forked 979 +(979) found +[4431] Forked 980 +(980) found +[4430] Forked 981 +(981) found +[4429] Forked 982 +(982) found +[4428] Forked 983 +(983) found +[4427] Forked 984 +(984) found +[4426] Forked 985 +(985) found +[4425] Forked 986 +(986) found +[4424] Forked 987 +(987) found +[4423] Forked 988 +(988) found +[4422] Forked 989 +(989) found +[4421] Forked 990 +(990) found +[4420] Forked 991 +(991) found +[4419] Forked 992 +(992) found +[4418] Forked 993 +(993) found +[4417] Forked 994 +(994) found +[4416] Forked 995 +(995) found +[4415] Forked 996 +(996) found +[4414] Forked 997 +(997) found +[4413] Forked 998 +(998) found +[4412] Forked 999 +(999) found +[4411] Forked 1000 +(1000) found +[4410] Forked 1001 +(1001) found +[4409] Forked 1002 +(1002) found +[4408] Forked 1003 +(1003) found +[4407] Forked 1004 +(1004) found +[4406] Forked 1005 +(1005) found +[4405] Forked 1006 +(1006) found +[4404] Forked 1007 +(1007) found +[4403] Forked 1008 +(1008) found +[4402] Forked 1009 +(1009) found +[4401] Forked 1010 +(1010) found +[4400] Forked 1011 +(1011) found +[4399] Forked 1012 +(1012) found +[4398] Forked 1013 +(1013) found +[4397] Forked 1014 +(1014) found +[4396] Forked 1015 +(1015) found +[4395] Forked 1016 +[4394] Forked 1017 +(1016) found +(1017) found +[4393] Forked 1018 +[4392] Forked 1019 +(1018) found +(1019) found +[4391] Forked 1020 +[4390] Forked 1021 +(1020) found +(1021) found +[4389] Forked 1022 +[4388] Forked 1023 +(1022) found +(1023) found +[4387] Forked 1024 +[4386] Forked 1025 +(1024) found +(1025) found +[4385] Forked 1026 +[4384] Forked 1027 +(1026) found +(1027) found +[4383] Forked 1028 +[4382] Forked 1029 +(1028) found +(1029) found +[4381] Forked 1030 +[4380] Forked 1031 +(1030) found +(1031) found +[4379] Forked 1032 +[4378] Forked 1033 +(1032) found +(1033) found +[4377] Forked 1034 +[4376] Forked 1035 +(1034) found +(1035) found +[4375] Forked 1036 +[4374] Forked 1037 +(1036) found +(1037) found +[4373] Forked 1038 +[4372] Forked 1039 +(1038) found +(1039) found +[4371] Forked 1040 +[4370] Forked 1041 +(1040) found +(1041) found +[4369] Forked 1042 +[4368] Forked 1043 +(1042) found +(1043) found +[4367] Forked 1044 +[4366] Forked 1045 +(1044) found +(1045) found +[4365] Forked 1046 +[4364] Forked 1047 +(1046) found +(1047) found +[4363] Forked 1048 +[4362] Forked 1049 +(1048) found +(1049) found +[4361] Forked 1050 +[4360] Forked 1051 +(1050) found +(1051) found +[4359] Forked 1052 +[4358] Forked 1053 +(1052) found +(1053) found +[4357] Forked 1054 +[4356] Forked 1055 +(1054) found +(1055) found +[4355] Forked 1056 +[4354] Forked 1057 +(1056) found +(1057) found +[4353] Forked 1058 +[4352] Forked 1059 +(1058) found +(1059) found +[4351] Forked 1060 +[4350] Forked 1061 +(1060) found +(1061) found +[4349] Forked 1062 +(1062) found +[4348] Forked 1063 +(1063) found +[4347] Forked 1064 +(1064) found +[4346] Forked 1065 +(1065) found +[4345] Forked 1066 +(1066) found +[4344] Forked 1067 +(1067) found +[4343] Forked 1068 +(1068) found +[4342] Forked 1069 +(1069) found +[4341] Forked 1070 +(1070) found +[4340] Forked 1071 +(1071) found +[4339] Forked 1072 +(1072) found +[4338] Forked 1073 +(1073) found +[4337] Forked 1074 +(1074) found +[4336] Forked 1075 +(1075) found +[4335] Forked 1076 +(1076) found +[4334] Forked 1077 +(1077) found +[4333] Forked 1078 +(1078) found +[4332] Forked 1079 +(1079) found +[4331] Forked 1080 +(1080) found +[4330] Forked 1081 +(1081) found +[4329] Forked 1082 +(1082) found +[4328] Forked 1083 +(1083) found +[4327] Forked 1084 +(1084) found +[4326] Forked 1085 +(1085) found +[4325] Forked 1086 +(1086) found +[4324] Forked 1087 +(1087) found +[4323] Forked 1088 +(1088) found +[4322] Forked 1089 +(1089) found +[4321] Forked 1090 +(1090) found +[4320] Forked 1091 +(1091) found +[4319] Forked 1092 +(1092) found +[4318] Forked 1093 +(1093) found +[4317] Forked 1094 +(1094) found +[4316] Forked 1095 +(1095) found +[4315] Forked 1096 +(1096) found +[4314] Forked 1097 +(1097) found +[4313] Forked 1098 +[4312] Forked 1099 +(1098) found +(1099) found +[4311] Forked 1100 +[4310] Forked 1101 +(1100) found +(1101) found +[4309] Forked 1102 +[4308] Forked 1103 +(1102) found +(1103) found +[4307] Forked 1104 +[4306] Forked 1106 +(1104) found +(1106) found +[4305] Forked 1108 +[4304] Forked 1109 +(1108) found +(1109) found +[4303] Forked 1111 +[4302] Forked 1113 +(1111) found +(1113) found +[4301] Forked 1114 +[4300] Forked 1115 +(1114) found +(1115) found +[4299] Forked 1116 +[4298] Forked 1117 +(1116) found +(1117) found +[4297] Forked 1118 +[4296] Forked 1119 +(1118) found +(1119) found +[4295] Forked 1120 +[4294] Forked 1121 +(1120) found +(1121) found +[4293] Forked 1122 +[4292] Forked 1123 +(1122) found +(1123) found +[4291] Forked 1124 +[4290] Forked 1125 +(1124) found +(1125) found +[4289] Forked 1126 +[4288] Forked 1127 +(1126) found +(1127) found +[4287] Forked 1128 +[4286] Forked 1129 +(1128) found +(1129) found +[4285] Forked 1130 +[4284] Forked 1131 +(1130) found +(1131) found +[4283] Forked 1132 +[4282] Forked 1133 +(1132) found +(1133) found +[4281] Forked 1134 +[4280] Forked 1135 +(1134) found +(1135) found +[4279] Forked 1136 +[4278] Forked 1137 +(1136) found +(1137) found +[4277] Forked 1138 +[4276] Forked 1139 +(1138) found +(1139) found +[4275] Forked 1140 +[4274] Forked 1141 +(1141) found +(1140) found +[4273] Forked 1142 +(1142) found +[4272] Forked 1143 +(1143) found +[4271] Forked 1144 +(1144) found +[4270] Forked 1145 +(1145) found +[4269] Forked 1146 +(1146) found +[4268] Forked 1147 +(1147) found +[4267] Forked 1148 +(1148) found +[4266] Forked 1149 +(1149) found +[4265] Forked 1150 +(1150) found +[4264] Forked 1151 +(1151) found +[4263] Forked 1152 +(1152) found +[4262] Forked 1153 +(1153) found +[4261] Forked 1154 +(1154) found +[4260] Forked 1155 +(1155) found +[4259] Forked 1156 +(1156) found +[4258] Forked 1157 +(1157) found +[4257] Forked 1158 +(1158) found +[4256] Forked 1159 +(1159) found +[4255] Forked 1160 +(1160) found +[4254] Forked 1161 +(1161) found +[4253] Forked 1162 +(1162) found +[4252] Forked 1163 +(1163) found +[4251] Forked 1164 +(1164) found +[4250] Forked 1165 +(1165) found +[4249] Forked 1166 +(1166) found +[4248] Forked 1167 +(1167) found +[4247] Forked 1168 +(1168) found +[4246] Forked 1169 +(1169) found +[4245] Forked 1170 +(1170) found +[4244] Forked 1171 +(1171) found +[4243] Forked 1172 +(1172) found +[4242] Forked 1173 +(1173) found +[4241] Forked 1174 +(1174) found +[4240] Forked 1175 +(1175) found +[4239] Forked 1176 +(1176) found +[4238] Forked 1177 +(1177) found +[4237] Forked 1178 +(1178) found +[4236] Forked 1179 +(1179) found +[4235] Forked 1180 +[4234] Forked 1181 +(1180) found +(1181) found +[4233] Forked 1182 +[4232] Forked 1183 +(1182) found +(1183) found +[4231] Forked 1184 +[4230] Forked 1185 +(1184) found +(1185) found +[4229] Forked 1186 +[4228] Forked 1188 +(1186) found +(1188) found +[4227] Forked 1190 +(1190) found +[4226] Forked 1191 +(1191) found +[4225] Forked 1192 +(1192) found +[4224] Forked 1193 +(1193) found +[4223] Forked 1194 +(1194) found +[4222] Forked 1195 +(1195) found +[4221] Forked 1196 +(1196) found +[4220] Forked 1197 +(1197) found +[4219] Forked 1198 +(1198) found +[4218] Forked 1199 +(1199) found +[4217] Forked 1200 +(1200) found +[4216] Forked 1201 +(1201) found +[4215] Forked 1202 +(1202) found +[4214] Forked 1203 +(1203) found +[4213] Forked 1204 +(1204) found +[4212] Forked 1205 +(1205) found +[4211] Forked 1206 +(1206) found +[4210] Forked 1207 +(1207) found +[4209] Forked 1208 +(1208) found +[4208] Forked 1209 +(1209) found +[4207] Forked 1210 +(1210) found +[4206] Forked 1211 +(1211) found +[4205] Forked 1212 +(1212) found +[4204] Forked 1213 +(1213) found +[4203] Forked 1214 +(1214) found +[4202] Forked 1215 +(1215) found +[4201] Forked 1216 +(1216) found +[4200] Forked 1217 +(1217) found +[4199] Forked 1218 +(1218) found +[4198] Forked 1219 +(1219) found +[4197] Forked 1220 +(1220) found +[4196] Forked 1221 +(1221) found +[4195] Forked 1222 +(1222) found +[4194] Forked 1223 +(1223) found +[4193] Forked 1224 +(1224) found +[4192] Forked 1225 +(1225) found +[4191] Forked 1226 +(1226) found +[4190] Forked 1227 +(1227) found +[4189] Forked 1228 +(1228) found +[4188] Forked 1229 +(1229) found +[4187] Forked 1230 +(1230) found +[4186] Forked 1231 +(1231) found +[4185] Forked 1232 +(1232) found +[4184] Forked 1233 +(1233) found +[4183] Forked 1234 +(1234) found +[4182] Forked 1235 +(1235) found +[4181] Forked 1236 +(1236) found +[4180] Forked 1237 +(1237) found +[4179] Forked 1238 +(1238) found +[4178] Forked 1239 +(1239) found +[4177] Forked 1240 +(1240) found +[4176] Forked 1241 +(1241) found +[4175] Forked 1242 +(1242) found +[4174] Forked 1243 +(1243) found +[4173] Forked 1244 +(1244) found +[4172] Forked 1245 +(1245) found +[4171] Forked 1246 +(1246) found +[4170] Forked 1247 +(1247) found +[4169] Forked 1248 +(1248) found +[4168] Forked 1249 +(1249) found +[4167] Forked 1250 +(1250) found +[4166] Forked 1251 +(1251) found +[4165] Forked 1252 +[4164] Forked 1253 +(1252) found +(1253) found +[4163] Forked 1254 +[4162] Forked 1255 +(1254) found +(1255) found +[4161] Forked 1256 +[4160] Forked 1257 +(1256) found +(1257) found +[4159] Forked 1258 +[4158] Forked 1259 +(1258) found +(1259) found +[4157] Forked 1260 +[4156] Forked 1261 +(1260) found +(1261) found +[4155] Forked 1262 +[4154] Forked 1263 +(1262) found +(1263) found +[4153] Forked 1264 +[4152] Forked 1265 +(1264) found +(1265) found +[4151] Forked 1266 +[4150] Forked 1267 +(1266) found +(1267) found +[4149] Forked 1268 +[4148] Forked 1269 +(1268) found +(1269) found +[4147] Forked 1270 +[4146] Forked 1271 +(1270) found +(1271) found +[4145] Forked 1272 +[4144] Forked 1273 +(1272) found +(1273) found +[4143] Forked 1274 +[4142] Forked 1275 +(1274) found +(1275) found +[4141] Forked 1276 +[4140] Forked 1277 +(1276) found +(1277) found +[4139] Forked 1278 +[4138] Forked 1279 +(1278) found +(1279) found +[4137] Forked 1280 +[4136] Forked 1281 +(1280) found +(1281) found +[4135] Forked 1282 +[4134] Forked 1283 +(1282) found +(1283) found +[4133] Forked 1284 +[4132] Forked 1285 +(1284) found +(1285) found +[4131] Forked 1286 +[4130] Forked 1287 +(1286) found +(1287) found +[4129] Forked 1288 +[4128] Forked 1289 +(1288) found +(1289) found +[4127] Forked 1290 +[4126] Forked 1291 +(1290) found +(1291) found +[4125] Forked 1292 +[4124] Forked 1293 +(1292) found +(1293) found +[4123] Forked 1294 +[4122] Forked 1295 +(1294) found +(1295) found +[4121] Forked 1296 +[4120] Forked 1297 +(1296) found +(1297) found +[4119] Forked 1298 +[4118] Forked 1299 +(1298) found +(1299) found +[4117] Forked 1300 +[4116] Forked 1301 +(1300) found +(1301) found +[4115] Forked 1302 +[4114] Forked 1303 +(1302) found +(1303) found +[4113] Forked 1304 +[4112] Forked 1305 +(1304) found +(1305) found +[4111] Forked 1306 +[4110] Forked 1307 +(1306) found +(1307) found +[4109] Forked 1308 +[4108] Forked 1309 +(1308) found +(1309) found +[4107] Forked 1310 +[4106] Forked 1312 +(1310) found +(1312) found +[4105] Forked 1313 +[4104] Forked 1314 +(1314) found +(1313) found +[4103] Forked 1315 +(1315) found +[4102] Forked 1316 +(1316) found +[4101] Forked 1317 +(1317) found +[4100] Forked 1318 +(1318) found +[4099] Forked 1319 +(1319) found +[4098] Forked 1320 +(1320) found +[4097] Forked 1321 +(1321) found +[4096] Forked 1322 +(1322) found +[4095] Forked 1323 +(1323) found +[4094] Forked 1324 +(1324) found +[4093] Forked 1325 +(1325) found +[4092] Forked 1326 +(1326) found +[4091] Forked 1327 +(1327) found +[4090] Forked 1328 +(1328) found +[4089] Forked 1329 +(1329) found +[4088] Forked 1330 +(1330) found +[4087] Forked 1331 +(1331) found +[4086] Forked 1332 +(1332) found +[4085] Forked 1333 +(1333) found +[4084] Forked 1334 +(1334) found +[4083] Forked 1335 +(1335) found +[4082] Forked 1336 +(1336) found +[4081] Forked 1337 +(1337) found +[4080] Forked 1338 +(1338) found +[4079] Forked 1339 +(1339) found +[4078] Forked 1340 +(1340) found +[4077] Forked 1341 +(1341) found +[4076] Forked 1342 +(1342) found +[4075] Forked 1343 +(1343) found +[4074] Forked 1344 +(1344) found +[4073] Forked 1345 +(1345) found +[4072] Forked 1346 +(1346) found +[4071] Forked 1347 +(1347) found +[4070] Forked 1348 +(1348) found +[4069] Forked 1349 +(1349) found +[4068] Forked 1350 +(1350) found +[4067] Forked 1351 +(1351) found +[4066] Forked 1352 +(1352) found +[4065] Forked 1353 +(1353) found +[4064] Forked 1354 +(1354) found +[4063] Forked 1355 +(1355) found +[4062] Forked 1356 +(1356) found +[4061] Forked 1357 +(1357) found +[4060] Forked 1358 +(1358) found +[4059] Forked 1359 +(1359) found +[4058] Forked 1360 +(1360) found +[4057] Forked 1361 +(1361) found +[4056] Forked 1362 +(1362) found +[4055] Forked 1363 +(1363) found +[4054] Forked 1364 +(1364) found +[4053] Forked 1365 +(1365) found +[4052] Forked 1366 +(1366) found +[4051] Forked 1367 +(1367) found +[4050] Forked 1368 +(1368) found +[4049] Forked 1369 +(1369) found +[4048] Forked 1370 +(1370) found +[4047] Forked 1371 +(1371) found +[4046] Forked 1372 +(1372) found +[4045] Forked 1373 +[4044] Forked 1374 +(1373) found +(1374) found +[4043] Forked 1375 +[4042] Forked 1376 +(1375) found +(1376) found +[4041] Forked 1377 +[4040] Forked 1378 +(1377) found +(1378) found +[4039] Forked 1379 +[4038] Forked 1380 +(1379) found +(1380) found +[4037] Forked 1381 +[4036] Forked 1382 +(1381) found +(1382) found +[4035] Forked 1383 +[4034] Forked 1384 +(1383) found +(1384) found +[4033] Forked 1385 +[4032] Forked 1386 +(1385) found +(1386) found +[4031] Forked 1387 +[4030] Forked 1388 +(1387) found +(1388) found +[4029] Forked 1389 +[4028] Forked 1390 +(1389) found +(1390) found +[4027] Forked 1391 +[4026] Forked 1392 +(1391) found +(1392) found +[4025] Forked 1393 +[4024] Forked 1394 +(1393) found +(1394) found +[4023] Forked 1395 +[4022] Forked 1396 +(1395) found +(1396) found +[4021] Forked 1397 +[4020] Forked 1398 +(1397) found +(1398) found +[4019] Forked 1399 +[4018] Forked 1400 +(1399) found +(1400) found +[4017] Forked 1401 +[4016] Forked 1402 +(1401) found +(1402) found +[4015] Forked 1403 +[4014] Forked 1404 +(1403) found +(1404) found +[4013] Forked 1405 +[4012] Forked 1406 +(1405) found +(1406) found +[4011] Forked 1407 +[4010] Forked 1408 +(1407) found +(1408) found +[4009] Forked 1409 +[4008] Forked 1410 +(1409) found +(1410) found +[4007] Forked 1411 +[4006] Forked 1412 +(1411) found +(1412) found +[4005] Forked 1413 +[4004] Forked 1414 +(1413) found +(1414) found +[4003] Forked 1415 +[4002] Forked 1416 +(1415) found +(1416) found +[4001] Forked 1417 +[4000] Forked 1418 +(1417) found +(1418) found +[3999] Forked 1419 +[3998] Forked 1420 +(1419) found +(1420) found +[3997] Forked 1421 +[3996] Forked 1422 +(1421) found +(1422) found +[3995] Forked 1423 +[3994] Forked 1424 +(1423) found +(1424) found +[3993] Forked 1425 +[3992] Forked 1426 +(1425) found +(1426) found +[3991] Forked 1427 +[3990] Forked 1428 +(1427) found +(1428) found +[3989] Forked 1429 +[3988] Forked 1430 +(1429) found +(1430) found +[3987] Forked 1431 +[3986] Forked 1432 +(1431) found +(1432) found +[3985] Forked 1433 +[3984] Forked 1434 +(1433) found +(1434) found +[3983] Forked 1435 +[3982] Forked 1436 +(1435) found +(1436) found +[3981] Forked 1437 +[3980] Forked 1438 +(1437) found +(1438) found +[3979] Forked 1440 +[3978] Forked 1441 +(1440) found +(1441) found +[3977] Forked 1442 +[3976] Forked 1443 +(1442) found +(1443) found +[3975] Forked 1444 +[3974] Forked 1445 +(1444) found +(1445) found +[3973] Forked 1446 +[3972] Forked 1447 +(1446) found +(1447) found +[3971] Forked 1448 +[3970] Forked 1449 +(1448) found +(1449) found +[3969] Forked 1450 +[3968] Forked 1451 +(1450) found +(1451) found +[3967] Forked 1452 +[3966] Forked 1453 +(1452) found +(1453) found +[3965] Forked 1454 +[3964] Forked 1455 +(1454) found +(1455) found +[3963] Forked 1456 +[3962] Forked 1457 +(1456) found +(1457) found +[3961] Forked 1458 +[3960] Forked 1459 +(1458) found +(1459) found +[3959] Forked 1460 +[3958] Forked 1461 +(1460) found +(1461) found +[3957] Forked 1462 +[3956] Forked 1463 +(1462) found +(1463) found +[3955] Forked 1464 +[3954] Forked 1465 +(1464) found +(1465) found +[3953] Forked 1466 +(1466) found +[3952] Forked 1467 +(1467) found +[3951] Forked 1468 +(1468) found +[3950] Forked 1469 +(1469) found +[3949] Forked 1470 +(1470) found +[3948] Forked 1471 +(1471) found +[3947] Forked 1472 +(1472) found +[3946] Forked 1473 +(1473) found +[3945] Forked 1474 +(1474) found +[3944] Forked 1475 +(1475) found +[3943] Forked 1476 +(1476) found +[3942] Forked 1477 +(1477) found +[3941] Forked 1478 +(1478) found +[3940] Forked 1479 +(1479) found +[3939] Forked 1480 +(1480) found +[3938] Forked 1481 +(1481) found +[3937] Forked 1482 +(1482) found +[3936] Forked 1483 +(1483) found +[3935] Forked 1484 +(1484) found +[3934] Forked 1485 +(1485) found +[3933] Forked 1486 +(1486) found +[3932] Forked 1487 +(1487) found +[3931] Forked 1488 +(1488) found +[3930] Forked 1489 +(1489) found +[3929] Forked 1490 +(1490) found +[3928] Forked 1491 +(1491) found +[3927] Forked 1492 +(1492) found +[3926] Forked 1493 +(1493) found +[3925] Forked 1494 +(1494) found +[3924] Forked 1495 +(1495) found +[3923] Forked 1496 +(1496) found +[3922] Forked 1497 +(1497) found +[3921] Forked 1498 +(1498) found +[3920] Forked 1499 +(1499) found +[3919] Forked 1500 +(1500) found +[3918] Forked 1501 +[3917] Forked 1502 +(1501) found +(1502) found +[3916] Forked 1503 +[3915] Forked 1504 +(1503) found +(1504) found +[3914] Forked 1505 +[3913] Forked 1506 +(1505) found +(1506) found +[3912] Forked 1507 +[3911] Forked 1508 +(1507) found +(1508) found +[3910] Forked 1509 +[3909] Forked 1510 +(1509) found +(1510) found +[3908] Forked 1511 +[3907] Forked 1512 +(1511) found +(1512) found +[3906] Forked 1513 +[3905] Forked 1514 +(1513) found +(1514) found +[3904] Forked 1515 +[3903] Forked 1516 +(1515) found +(1516) found +[3902] Forked 1517 +[3901] Forked 1518 +(1517) found +(1518) found +[3900] Forked 1519 +[3899] Forked 1520 +(1519) found +(1520) found +[3898] Forked 1521 +[3897] Forked 1522 +(1521) found +(1522) found +[3896] Forked 1523 +[3895] Forked 1524 +(1523) found +(1524) found +[3894] Forked 1525 +[3893] Forked 1526 +(1525) found +(1526) found +[3892] Forked 1527 +[3891] Forked 1528 +(1527) found +(1528) found +[3890] Forked 1529 +[3889] Forked 1530 +(1529) found +(1530) found +[3888] Forked 1531 +[3887] Forked 1532 +(1531) found +(1532) found +[3886] Forked 1533 +[3885] Forked 1534 +(1533) found +(1534) found +[3884] Forked 1535 +[3883] Forked 1536 +(1535) found +(1536) found +[3882] Forked 1537 +[3881] Forked 1538 +(1537) found +(1538) found +[3880] Forked 1539 +[3879] Forked 1540 +(1539) found +(1540) found +[3878] Forked 1541 +[3877] Forked 1542 +(1541) found +(1542) found +[3876] Forked 1543 +[3875] Forked 1544 +(1543) found +(1544) found +[3874] Forked 1545 +[3873] Forked 1546 +(1545) found +(1546) found +[3872] Forked 1547 +(1547) found +[3871] Forked 1548 +(1548) found +[3870] Forked 1549 +(1549) found +[3869] Forked 1550 +(1550) found +[3868] Forked 1551 +(1551) found +[3867] Forked 1552 +(1552) found +[3866] Forked 1553 +(1553) found +[3865] Forked 1554 +(1554) found +[3864] Forked 1555 +(1555) found +[3863] Forked 1556 +(1556) found +[3862] Forked 1557 +(1557) found +[3861] Forked 1558 +(1558) found +[3860] Forked 1559 +(1559) found +[3859] Forked 1560 +(1560) found +[3858] Forked 1561 +(1561) found +[3857] Forked 1562 +(1562) found +[3856] Forked 1563 +(1563) found +[3855] Forked 1564 +(1564) found +[3854] Forked 1565 +(1565) found +[3853] Forked 1566 +(1566) found +[3852] Forked 1567 +(1567) found +[3851] Forked 1568 +(1568) found +[3850] Forked 1569 +(1569) found +[3849] Forked 1570 +(1570) found +[3848] Forked 1571 +(1571) found +[3847] Forked 1572 +(1572) found +[3846] Forked 1573 +(1573) found +[3845] Forked 1574 +(1574) found +[3844] Forked 1575 +(1575) found +[3843] Forked 1576 +(1576) found +[3842] Forked 1577 +(1577) found +[3841] Forked 1578 +(1578) found +[3840] Forked 1579 +(1579) found +[3839] Forked 1580 +(1580) found +[3838] Forked 1581 +[3837] Forked 1582 +(1581) found +(1582) found +[3836] Forked 1583 +[3835] Forked 1584 +(1583) found +(1584) found +[3834] Forked 1585 +[3833] Forked 1586 +(1585) found +(1586) found +[3832] Forked 1587 +[3831] Forked 1588 +(1587) found +(1588) found +[3830] Forked 1589 +[3829] Forked 1590 +(1589) found +(1590) found +[3828] Forked 1591 +[3827] Forked 1592 +(1591) found +(1592) found +[3826] Forked 1593 +[3825] Forked 1595 +(1593) found +(1595) found +[3824] Forked 1596 +[3823] Forked 1597 +(1596) found +(1597) found +[3822] Forked 1598 +[3821] Forked 1599 +(1598) found +(1599) found +[3820] Forked 1600 +[3819] Forked 1601 +(1600) found +(1601) found +[3818] Forked 1602 +[3817] Forked 1603 +(1602) found +(1603) found +[3816] Forked 1604 +[3815] Forked 1605 +(1604) found +(1605) found +[3814] Forked 1606 +[3813] Forked 1607 +(1606) found +(1607) found +[3812] Forked 1608 +[3811] Forked 1609 +(1608) found +(1609) found +[3810] Forked 1610 +[3809] Forked 1611 +(1610) found +(1611) found +[3808] Forked 1612 +[3807] Forked 1613 +(1612) found +(1613) found +[3806] Forked 1614 +[3805] Forked 1615 +(1614) found +(1615) found +[3804] Forked 1616 +[3803] Forked 1617 +(1616) found +(1617) found +[3802] Forked 1618 +[3801] Forked 1619 +(1618) found +(1619) found +[3800] Forked 1620 +[3799] Forked 1621 +(1620) found +(1621) found +[3798] Forked 1622 +[3797] Forked 1623 +(1622) found +(1623) found +[3796] Forked 1624 +[3795] Forked 1625 +(1624) found +(1625) found +[3794] Forked 1626 +[3793] Forked 1627 +(1626) found +(1627) found +[3792] Forked 1628 +(1628) found +[3791] Forked 1629 +(1629) found +[3790] Forked 1630 +(1630) found +[3789] Forked 1631 +(1631) found +[3788] Forked 1632 +(1632) found +[3787] Forked 1633 +(1633) found +[3786] Forked 1634 +(1634) found +[3785] Forked 1635 +(1635) found +[3784] Forked 1636 +(1636) found +[3783] Forked 1637 +(1637) found +[3782] Forked 1638 +(1638) found +[3781] Forked 1639 +(1639) found +[3780] Forked 1640 +(1640) found +[3779] Forked 1641 +(1641) found +[3778] Forked 1642 +(1642) found +[3777] Forked 1643 +(1643) found +[3776] Forked 1644 +(1644) found +[3775] Forked 1645 +(1645) found +[3774] Forked 1646 +(1646) found +[3773] Forked 1647 +(1647) found +[3772] Forked 1648 +(1648) found +[3771] Forked 1649 +(1649) found +[3770] Forked 1650 +(1650) found +[3769] Forked 1651 +(1651) found +[3768] Forked 1652 +(1652) found +[3767] Forked 1653 +(1653) found +[3766] Forked 1654 +(1654) found +[3765] Forked 1655 +(1655) found +[3764] Forked 1656 +(1656) found +[3763] Forked 1657 +(1657) found +[3762] Forked 1658 +(1658) found +[3761] Forked 1659 +(1659) found +[3760] Forked 1660 +(1660) found +[3759] Forked 1661 +(1661) found +[3758] Forked 1662 +(1662) found +[3757] Forked 1663 +[3756] Forked 1664 +(1663) found +(1664) found +[3755] Forked 1665 +[3754] Forked 1666 +(1665) found +(1666) found +[3753] Forked 1668 +[3752] Forked 1669 +(1668) found +(1669) found +[3751] Forked 1670 +[3750] Forked 1671 +(1670) found +(1671) found +[3749] Forked 1672 +[3748] Forked 1673 +(1672) found +(1673) found +[3747] Forked 1674 +[3746] Forked 1675 +(1674) found +(1675) found +[3745] Forked 1676 +[3744] Forked 1677 +(1676) found +(1677) found +[3743] Forked 1679 +[3742] Forked 1680 +(1679) found +(1680) found +[3741] Forked 1681 +[3740] Forked 1682 +(1681) found +(1682) found +[3739] Forked 1683 +[3738] Forked 1684 +(1683) found +(1684) found +[3737] Forked 1685 +[3736] Forked 1686 +(1685) found +(1686) found +[3735] Forked 1687 +[3734] Forked 1688 +(1687) found +(1688) found +[3733] Forked 1689 +[3732] Forked 1690 +(1689) found +(1690) found +[3731] Forked 1691 +[3730] Forked 1692 +(1691) found +(1692) found +[3729] Forked 1693 +[3728] Forked 1694 +(1693) found +(1694) found +[3727] Forked 1695 +[3726] Forked 1696 +(1695) found +(1696) found +[3725] Forked 1697 +[3724] Forked 1698 +(1697) found +(1698) found +[3723] Forked 1699 +[3722] Forked 1700 +(1699) found +(1700) found +[3721] Forked 1701 +[3720] Forked 1702 +(1701) found +(1702) found +[3719] Forked 1703 +[3718] Forked 1704 +(1703) found +(1704) found +[3717] Forked 1705 +[3716] Forked 1706 +(1705) found +(1706) found +[3715] Forked 1707 +[3714] Forked 1708 +(1707) found +(1708) found +[3713] Forked 1709 +[3712] Forked 1710 +(1709) found +(1710) found +[3711] Forked 1711 +(1711) found +[3710] Forked 1712 +(1712) found +[3709] Forked 1713 +(1713) found +[3708] Forked 1714 +(1714) found +[3707] Forked 1715 +(1715) found +[3706] Forked 1716 +(1716) found +[3705] Forked 1717 +(1717) found +[3704] Forked 1718 +(1718) found +[3703] Forked 1719 +(1719) found +[3702] Forked 1720 +(1720) found +[3701] Forked 1721 +(1721) found +[3700] Forked 1722 +(1722) found +[3699] Forked 1723 +(1723) found +[3698] Forked 1724 +(1724) found +[3697] Forked 1725 +(1725) found +[3696] Forked 1726 +(1726) found +[3695] Forked 1727 +(1727) found +[3694] Forked 1728 +(1728) found +[3693] Forked 1729 +(1729) found +[3692] Forked 1730 +(1730) found +[3691] Forked 1731 +(1731) found +[3690] Forked 1732 +(1732) found +[3689] Forked 1733 +(1733) found +[3688] Forked 1734 +(1734) found +[3687] Forked 1735 +(1735) found +[3686] Forked 1736 +(1736) found +[3685] Forked 1737 +(1737) found +[3684] Forked 1738 +(1738) found +[3683] Forked 1739 +(1739) found +[3682] Forked 1740 +(1740) found +[3681] Forked 1741 +(1741) found +[3680] Forked 1742 +(1742) found +[3679] Forked 1744 +(1744) found +[3678] Forked 1746 +(1746) found +[3677] Forked 1747 +(1747) found +[3676] Forked 1748 +[3675] Forked 1749 +(1748) found +(1749) found +[3674] Forked 1750 +[3673] Forked 1751 +(1750) found +(1751) found +[3672] Forked 1752 +[3671] Forked 1753 +(1752) found +(1753) found +[3670] Forked 1754 +[3669] Forked 1755 +(1754) found +(1755) found +[3668] Forked 1756 +[3667] Forked 1757 +(1756) found +(1757) found +[3666] Forked 1758 +[3665] Forked 1760 +(1758) found +(1760) found +[3664] Forked 1761 +[3663] Forked 1762 +(1761) found +(1762) found +[3662] Forked 1763 +[3661] Forked 1764 +(1763) found +(1764) found +[3660] Forked 1765 +[3659] Forked 1766 +(1765) found +(1766) found +[3658] Forked 1767 +[3657] Forked 1768 +(1767) found +(1768) found +[3656] Forked 1769 +[3655] Forked 1770 +(1769) found +(1770) found +[3654] Forked 1771 +[3653] Forked 1772 +(1771) found +(1772) found +[3652] Forked 1773 +[3651] Forked 1774 +(1773) found +(1774) found +[3650] Forked 1775 +[3649] Forked 1776 +(1775) found +(1776) found +[3648] Forked 1777 +[3647] Forked 1778 +(1777) found +(1778) found +[3646] Forked 1779 +[3645] Forked 1780 +(1779) found +(1780) found +[3644] Forked 1781 +[3643] Forked 1782 +(1781) found +(1782) found +[3642] Forked 1783 +[3641] Forked 1784 +(1783) found +(1784) found +[3640] Forked 1785 +[3639] Forked 1786 +(1785) found +(1786) found +[3638] Forked 1787 +[3637] Forked 1788 +(1787) found +(1788) found +[3636] Forked 1789 +[3635] Forked 1790 +(1789) found +(1790) found +[3634] Forked 1791 +[3633] Forked 1792 +(1791) found +(1792) found +[3632] Forked 1793 +[3631] Forked 1794 +(1793) found +(1794) found +[3630] Forked 1795 +[3629] Forked 1796 +(1795) found +(1796) found +[3628] Forked 1797 +[3627] Forked 1798 +(1797) found +(1798) found +[3626] Forked 1799 +[3625] Forked 1800 +(1799) found +(1800) found +[3624] Forked 1801 +[3623] Forked 1802 +(1801) found +(1802) found +[3622] Forked 1803 +[3621] Forked 1804 +(1803) found +(1804) found +[3620] Forked 1805 +[3619] Forked 1806 +(1805) found +(1806) found +[3618] Forked 1807 +[3617] Forked 1808 +(1807) found +(1808) found +[3616] Forked 1809 +[3615] Forked 1810 +(1809) found +(1810) found +[3614] Forked 1811 +[3613] Forked 1812 +(1811) found +(1812) found +[3612] Forked 1813 +[3611] Forked 1814 +(1813) found +(1814) found +[3610] Forked 1815 +(1815) found +[3609] Forked 1816 +[3608] Forked 1817 +(1816) found +(1817) found +[3607] Forked 1818 +[3606] Forked 1819 +(1818) found +(1819) found +[3605] Forked 1820 +[3604] Forked 1821 +(1820) found +(1821) found +[3603] Forked 1822 +[3602] Forked 1823 +(1822) found +(1823) found +[3601] Forked 1824 +[3600] Forked 1825 +(1824) found +(1825) found +[3599] Forked 1826 +[3598] Forked 1827 +(1826) found +(1827) found +[3597] Forked 1828 +[3596] Forked 1829 +(1828) found +(1829) found +[3595] Forked 1830 +[3594] Forked 1831 +(1830) found +(1831) found +[3593] Forked 1832 +[3592] Forked 1833 +(1832) found +(1833) found +[3591] Forked 1834 +[3590] Forked 1835 +(1834) found +(1835) found +[3589] Forked 1836 +[3588] Forked 1837 +(1836) found +(1837) found +[3587] Forked 1838 +(1838) found +[3586] Forked 1839 +(1839) found +[3585] Forked 1840 +(1840) found +[3584] Forked 1841 +(1841) found +[3583] Forked 1842 +(1842) found +[3582] Forked 1843 +(1843) found +[3581] Forked 1844 +(1844) found +[3580] Forked 1845 +(1845) found +[3579] Forked 1846 +(1846) found +[3578] Forked 1847 +(1847) found +[3577] Forked 1848 +(1848) found +[3576] Forked 1849 +(1849) found +[3575] Forked 1850 +(1850) found +[3574] Forked 1851 +(1851) found +[3573] Forked 1852 +(1852) found +[3572] Forked 1853 +(1853) found +[3571] Forked 1854 +(1854) found +[3570] Forked 1855 +(1855) found +[3569] Forked 1856 +(1856) found +[3568] Forked 1857 +(1857) found +[3567] Forked 1858 +(1858) found +[3566] Forked 1859 +(1859) found +[3565] Forked 1860 +(1860) found +[3564] Forked 1861 +(1861) found +[3563] Forked 1862 +(1862) found +[3562] Forked 1863 +(1863) found +[3561] Forked 1864 +(1864) found +[3560] Forked 1865 +(1865) found +[3559] Forked 1866 +(1866) found +[3558] Forked 1867 +(1867) found +[3557] Forked 1868 +(1868) found +[3556] Forked 1869 +(1869) found +[3555] Forked 1870 +(1870) found +[3554] Forked 1871 +(1871) found +[3553] Forked 1872 +(1872) found +[3552] Forked 1873 +(1873) found +[3551] Forked 1874 +(1874) found +[3550] Forked 1875 +(1875) found +[3549] Forked 1876 +(1876) found +[3548] Forked 1877 +[3547] Forked 1878 +(1877) found +(1878) found +[3546] Forked 1879 +[3545] Forked 1880 +(1879) found +(1880) found +[3544] Forked 1881 +[3543] Forked 1882 +(1881) found +(1882) found +[3542] Forked 1883 +[3541] Forked 1884 +(1883) found +(1884) found +[3540] Forked 1885 +[3539] Forked 1886 +(1885) found +(1886) found +[3538] Forked 1887 +[3537] Forked 1888 +(1887) found +(1888) found +[3536] Forked 1889 +[3535] Forked 1890 +(1889) found +(1890) found +[3534] Forked 1891 +[3533] Forked 1892 +(1891) found +(1892) found +[3532] Forked 1893 +[3531] Forked 1894 +(1893) found +(1894) found +[3530] Forked 1895 +[3529] Forked 1896 +(1896) found +(1895) found +[3528] Forked 1897 +(1897) found +[3527] Forked 1898 +(1898) found +[3526] Forked 1899 +(1899) found +[3525] Forked 1900 +(1900) found +[3524] Forked 1901 +(1901) found +[3523] Forked 1902 +(1902) found +[3522] Forked 1903 +(1903) found +[3521] Forked 1904 +(1904) found +[3520] Forked 1905 +(1905) found +[3519] Forked 1906 +(1906) found +[3518] Forked 1907 +(1907) found +[3517] Forked 1908 +(1908) found +[3516] Forked 1909 +(1909) found +[3515] Forked 1910 +(1910) found +[3514] Forked 1911 +(1911) found +[3513] Forked 1912 +(1912) found +[3512] Forked 1913 +(1913) found +[3511] Forked 1914 +(1914) found +[3510] Forked 1915 +(1915) found +[3509] Forked 1916 +(1916) found +[3508] Forked 1917 +(1917) found +[3507] Forked 1918 +(1918) found +[3506] Forked 1919 +(1919) found +[3505] Forked 1920 +(1920) found +[3504] Forked 1921 +(1921) found +[3503] Forked 1922 +(1922) found +[3502] Forked 1923 +(1923) found +[3501] Forked 1924 +(1924) found +[3500] Forked 1925 +(1925) found +[3499] Forked 1926 +(1926) found +[3498] Forked 1927 +(1927) found +[3497] Forked 1928 +(1928) found +[3496] Forked 1929 +(1929) found +[3495] Forked 1930 +(1930) found +[3494] Forked 1931 +(1931) found +[3493] Forked 1932 +(1932) found +[3492] Forked 1933 +(1933) found +[3491] Forked 1934 +(1934) found +[3490] Forked 1935 +(1935) found +[3489] Forked 1936 +(1936) found +[3488] Forked 1937 +(1937) found +[3487] Forked 1938 +(1938) found +[3486] Forked 1939 +(1939) found +[3485] Forked 1940 +(1940) found +[3484] Forked 1941 +(1941) found +[3483] Forked 1942 +(1942) found +[3482] Forked 1943 +(1943) found +[3481] Forked 1944 +(1944) found +[3480] Forked 1945 +(1945) found +[3479] Forked 1946 +(1946) found +[3478] Forked 1947 +(1947) found +[3477] Forked 1948 +(1948) found +[3476] Forked 1949 +(1949) found +[3475] Forked 1950 +[3474] Forked 1951 +(1950) found +(1951) found +[3473] Forked 1952 +[3472] Forked 1953 +(1952) found +(1953) found +[3471] Forked 1954 +[3470] Forked 1955 +(1954) found +(1955) found +[3469] Forked 1956 +[3468] Forked 1957 +(1956) found +(1957) found +[3467] Forked 1958 +[3466] Forked 1959 +(1958) found +(1959) found +[3465] Forked 1960 +[3464] Forked 1961 +(1960) found +(1961) found +[3463] Forked 1962 +[3462] Forked 1963 +(1962) found +(1963) found +[3461] Forked 1964 +[3460] Forked 1965 +(1964) found +(1965) found +[3459] Forked 1966 +[3458] Forked 1967 +(1966) found +(1967) found +[3457] Forked 1968 +[3456] Forked 1969 +(1968) found +(1969) found +[3455] Forked 1970 +[3454] Forked 1971 +(1970) found +(1971) found +[3453] Forked 1972 +[3452] Forked 1973 +(1972) found +(1973) found +[3451] Forked 1974 +[3450] Forked 1975 +(1974) found +(1975) found +[3449] Forked 1976 +[3448] Forked 1977 +(1976) found +(1977) found +[3447] Forked 1978 +[3446] Forked 1979 +(1978) found +(1979) found +[3445] Forked 1980 +[3444] Forked 1981 +(1980) found +(1981) found +[3443] Forked 1982 +[3442] Forked 1983 +(1982) found +(1983) found +[3441] Forked 1984 +[3440] Forked 1985 +(1984) found +(1985) found +[3439] Forked 1986 +[3438] Forked 1987 +(1986) found +(1987) found +[3437] Forked 1988 +(1988) found +[3436] Forked 1989 +[3435] Forked 1990 +(1989) found +(1990) found +[3434] Forked 1991 +[3433] Forked 1992 +(1991) found +(1992) found +[3432] Forked 1993 +(1993) found +[3431] Forked 1994 +(1994) found +[3430] Forked 1995 +(1995) found +[3429] Forked 1996 +(1996) found +[3428] Forked 1997 +(1997) found +[3427] Forked 1998 +(1998) found +[3426] Forked 1999 +(1999) found +[3425] Forked 2000 +(2000) found +[3424] Forked 2001 +(2001) found +[3423] Forked 2002 +(2002) found +[3422] Forked 2003 +(2003) found +[3421] Forked 2004 +(2004) found +[3420] Forked 2005 +(2005) found +[3419] Forked 2006 +(2006) found +[3418] Forked 2007 +(2007) found +[3417] Forked 2008 +(2008) found +[3416] Forked 2009 +(2009) found +[3415] Forked 2010 +(2010) found +[3414] Forked 2011 +(2011) found +[3413] Forked 2012 +(2012) found +[3412] Forked 2013 +(2013) found +[3411] Forked 2014 +(2014) found +[3410] Forked 2015 +(2015) found +[3409] Forked 2016 +(2016) found +[3408] Forked 2017 +(2017) found +[3407] Forked 2018 +(2018) found +[3406] Forked 2019 +(2019) found +[3405] Forked 2020 +(2020) found +[3404] Forked 2021 +(2021) found +[3403] Forked 2022 +(2022) found +[3402] Forked 2023 +(2023) found +[3401] Forked 2024 +(2024) found +[3400] Forked 2025 +(2025) found +[3399] Forked 2026 +(2026) found +[3398] Forked 2027 +(2027) found +[3397] Forked 2028 +(2028) found +[3396] Forked 2029 +(2029) found +[3395] Forked 2030 +(2030) found +[3394] Forked 2031 +[3393] Forked 2032 +(2031) found +(2032) found +[3392] Forked 2033 +[3391] Forked 2034 +(2033) found +(2034) found +[3390] Forked 2035 +[3389] Forked 2036 +(2035) found +(2036) found +[3388] Forked 2037 +[3387] Forked 2038 +(2037) found +(2038) found +[3386] Forked 2039 +[3385] Forked 2040 +(2039) found +(2040) found +[3384] Forked 2041 +[3383] Forked 2042 +(2041) found +(2042) found +[3382] Forked 2043 +[3381] Forked 2044 +(2043) found +(2044) found +[3380] Forked 2045 +[3379] Forked 2046 +(2045) found +(2046) found +[3378] Forked 2047 +[3377] Forked 2048 +(2047) found +(2048) found +[3376] Forked 2049 +[3375] Forked 2050 +(2049) found +(2050) found +[3374] Forked 2051 +[3373] Forked 2052 +(2051) found +(2052) found +[3372] Forked 2053 +[3371] Forked 2054 +(2053) found +(2054) found +[3370] Forked 2055 +[3369] Forked 2056 +(2055) found +(2056) found +[3368] Forked 2057 +[3367] Forked 2058 +(2057) found +(2058) found +[3366] Forked 2059 +[3365] Forked 2060 +(2059) found +(2060) found +[3364] Forked 2061 +[3363] Forked 2062 +(2061) found +(2062) found +[3362] Forked 2063 +[3361] Forked 2064 +(2064) found +(2063) found +[3360] Forked 2065 +(2065) found +[3359] Forked 2066 +(2066) found +[3358] Forked 2067 +(2067) found +[3357] Forked 2068 +(2068) found +[3356] Forked 2070 +(2070) found +[3355] Forked 2071 +(2071) found +[3354] Forked 2072 +(2072) found +[3353] Forked 2073 +(2073) found +[3352] Forked 2074 +(2074) found +[3351] Forked 2075 +(2075) found +[3350] Forked 2076 +(2076) found +[3349] Forked 2077 +(2077) found +[3348] Forked 2078 +(2078) found +[3347] Forked 2079 +(2079) found +[3346] Forked 2080 +(2080) found +[3345] Forked 2081 +(2081) found +[3344] Forked 2082 +(2082) found +[3343] Forked 2083 +(2083) found +[3342] Forked 2084 +(2084) found +[3341] Forked 2085 +(2085) found +[3340] Forked 2086 +(2086) found +[3339] Forked 2087 +(2087) found +[3338] Forked 2088 +(2088) found +[3337] Forked 2089 +(2089) found +[3336] Forked 2090 +(2090) found +[3335] Forked 2091 +(2091) found +[3334] Forked 2092 +(2092) found +[3333] Forked 2093 +(2093) found +[3332] Forked 2094 +(2094) found +[3331] Forked 2095 +(2095) found +[3330] Forked 2096 +(2096) found +[3329] Forked 2097 +(2097) found +[3328] Forked 2098 +(2098) found +[3327] Forked 2099 +(2099) found +[3326] Forked 2100 +(2100) found +[3325] Forked 2101 +(2101) found +[3324] Forked 2102 +(2102) found +[3323] Forked 2103 +(2103) found +[3322] Forked 2104 +(2104) found +[3321] Forked 2105 +(2105) found +[3320] Forked 2106 +(2106) found +[3319] Forked 2109 +(2109) found +[3318] Forked 2110 +(2110) found +[3317] Forked 2111 +(2111) found +[3316] Forked 2112 +[3315] Forked 2113 +(2112) found +(2113) found +[3314] Forked 2114 +[3313] Forked 2115 +(2114) found +(2115) found +[3312] Forked 2116 +[3311] Forked 2117 +(2116) found +(2117) found +[3310] Forked 2118 +[3309] Forked 2119 +(2118) found +(2119) found +[3308] Forked 2120 +[3307] Forked 2121 +(2120) found +(2121) found +[3306] Forked 2122 +[3305] Forked 2123 +(2122) found +(2123) found +[3304] Forked 2124 +[3303] Forked 2125 +(2124) found +(2125) found +[3302] Forked 2126 +[3301] Forked 2127 +(2126) found +(2127) found +[3300] Forked 2128 +[3299] Forked 2129 +(2128) found +(2129) found +[3298] Forked 2130 +[3297] Forked 2131 +(2130) found +(2131) found +[3296] Forked 2132 +[3295] Forked 2133 +(2132) found +(2133) found +[3294] Forked 2134 +[3293] Forked 2135 +(2134) found +(2135) found +[3292] Forked 2136 +[3291] Forked 2137 +(2136) found +(2137) found +[3290] Forked 2138 +[3289] Forked 2139 +(2138) found +(2139) found +[3288] Forked 2140 +[3287] Forked 2141 +(2140) found +(2141) found +[3286] Forked 2142 +[3285] Forked 2143 +(2142) found +(2143) found +[3284] Forked 2144 +[3283] Forked 2145 +(2144) found +(2145) found +[3282] Forked 2146 +[3281] Forked 2147 +(2146) found +(2147) found +[3280] Forked 2148 +[3279] Forked 2149 +(2148) found +(2149) found +[3278] Forked 2150 +[3277] Forked 2151 +(2150) found +(2151) found +[3276] Forked 2152 +[3275] Forked 2153 +(2152) found +(2153) found +[3274] Forked 2154 +(2154) found +[3273] Forked 2155 +(2155) found +[3272] Forked 2156 +(2156) found +[3271] Forked 2157 +(2157) found +[3270] Forked 2158 +(2158) found +[3269] Forked 2160 +(2160) found +[3268] Forked 2161 +(2161) found +[3267] Forked 2162 +(2162) found +[3266] Forked 2163 +(2163) found +[3265] Forked 2164 +(2164) found +[3264] Forked 2165 +(2165) found +[3263] Forked 2166 +(2166) found +[3262] Forked 2167 +(2167) found +[3261] Forked 2168 +(2168) found +[3260] Forked 2169 +(2169) found +[3259] Forked 2170 +(2170) found +[3258] Forked 2171 +(2171) found +[3257] Forked 2172 +(2172) found +[3256] Forked 2173 +(2173) found +[3255] Forked 2174 +(2174) found +[3254] Forked 2175 +(2175) found +[3253] Forked 2176 +(2176) found +[3252] Forked 2177 +(2177) found +[3251] Forked 2178 +(2178) found +[3250] Forked 2179 +(2179) found +[3249] Forked 2180 +(2180) found +[3248] Forked 2181 +(2181) found +[3247] Forked 2182 +(2182) found +[3246] Forked 2183 +(2183) found +[3245] Forked 2184 +(2184) found +[3244] Forked 2185 +(2185) found +[3243] Forked 2186 +(2186) found +[3242] Forked 2187 +(2187) found +[3241] Forked 2188 +(2188) found +[3240] Forked 2189 +(2189) found +[3239] Forked 2190 +(2190) found +[3238] Forked 2191 +(2191) found +[3237] Forked 2192 +(2192) found +[3236] Forked 2193 +[3235] Forked 2194 +(2193) found +(2194) found +[3234] Forked 2195 +[3233] Forked 2196 +(2195) found +(2196) found +[3232] Forked 2197 +[3231] Forked 2198 +(2197) found +(2198) found +[3230] Forked 2199 +[3229] Forked 2200 +(2199) found +(2200) found +[3228] Forked 2201 +[3227] Forked 2202 +(2201) found +(2202) found +[3226] Forked 2203 +[3225] Forked 2204 +(2203) found +(2204) found +[3224] Forked 2205 +[3223] Forked 2206 +(2205) found +(2206) found +[3222] Forked 2207 +[3221] Forked 2208 +(2207) found +(2208) found +[3220] Forked 2209 +[3219] Forked 2210 +(2209) found +(2210) found +[3218] Forked 2211 +[3217] Forked 2212 +(2211) found +(2212) found +[3216] Forked 2213 +[3215] Forked 2214 +(2213) found +(2214) found +[3214] Forked 2215 +[3213] Forked 2216 +(2215) found +(2216) found +[3212] Forked 2217 +[3211] Forked 2218 +(2217) found +(2218) found +[3210] Forked 2219 +[3209] Forked 2220 +(2219) found +(2220) found +[3208] Forked 2221 +[3207] Forked 2222 +(2221) found +(2222) found +[3206] Forked 2223 +[3205] Forked 2224 +(2223) found +(2224) found +[3204] Forked 2225 +[3203] Forked 2226 +(2225) found +(2226) found +[3202] Forked 2227 +[3201] Forked 2228 +(2227) found +(2228) found +[3200] Forked 2229 +[3199] Forked 2230 +(2229) found +(2230) found +[3198] Forked 2231 +[3197] Forked 2232 +(2231) found +(2232) found +[3196] Forked 2233 +[3195] Forked 2234 +(2234) found +(2233) found +[3194] Forked 2235 +(2235) found +[3193] Forked 2236 +(2236) found +[3192] Forked 2237 +(2237) found +[3191] Forked 2238 +(2238) found +[3190] Forked 2239 +(2239) found +[3189] Forked 2240 +(2240) found +[3188] Forked 2241 +(2241) found +[3187] Forked 2242 +(2242) found +[3186] Forked 2243 +(2243) found +[3185] Forked 2244 +(2244) found +[3184] Forked 2245 +(2245) found +[3183] Forked 2246 +(2246) found +[3182] Forked 2247 +(2247) found +[3181] Forked 2248 +(2248) found +[3180] Forked 2249 +(2249) found +[3179] Forked 2250 +(2250) found +[3178] Forked 2251 +(2251) found +[3177] Forked 2252 +(2252) found +[3176] Forked 2253 +(2253) found +[3175] Forked 2254 +(2254) found +[3174] Forked 2255 +(2255) found +[3173] Forked 2256 +(2256) found +[3172] Forked 2257 +(2257) found +[3171] Forked 2258 +(2258) found +[3170] Forked 2259 +(2259) found +[3169] Forked 2260 +(2260) found +[3168] Forked 2261 +(2261) found +[3167] Forked 2265 +(2265) found +[3166] Forked 2266 +(2266) found +[3165] Forked 2267 +(2267) found +[3164] Forked 2268 +(2268) found +[3163] Forked 2269 +(2269) found +[3162] Forked 2270 +(2270) found +[3161] Forked 2271 +(2271) found +[3160] Forked 2272 +(2272) found +[3159] Forked 2273 +(2273) found +[3158] Forked 2274 +(2274) found +[3157] Forked 2275 +(2275) found +[3156] Forked 2276 +[3155] Forked 2277 +(2276) found +(2277) found +[3154] Forked 2278 +[3153] Forked 2279 +(2278) found +(2279) found +[3152] Forked 2280 +[3151] Forked 2281 +(2280) found +(2281) found +[3150] Forked 2282 +[3149] Forked 2283 +(2282) found +(2283) found +[3148] Forked 2284 +[3147] Forked 2285 +(2284) found +(2285) found +[3146] Forked 2286 +[3145] Forked 2287 +(2286) found +(2287) found +[3144] Forked 2288 +[3143] Forked 2289 +(2288) found +(2289) found +[3142] Forked 2290 +[3141] Forked 2291 +(2290) found +(2291) found +[3140] Forked 2292 +[3139] Forked 2293 +(2292) found +(2293) found +[3138] Forked 2294 +[3137] Forked 2295 +(2294) found +(2295) found +[3136] Forked 2296 +[3135] Forked 2297 +(2296) found +(2297) found +[3134] Forked 2298 +[3133] Forked 2299 +(2298) found +(2299) found +[3132] Forked 2300 +[3131] Forked 2301 +(2300) found +(2301) found +[3130] Forked 2302 +[3129] Forked 2303 +(2302) found +(2303) found +[3128] Forked 2304 +[3127] Forked 2305 +(2304) found +(2305) found +[3126] Forked 2306 +[3125] Forked 2307 +(2306) found +(2307) found +[3124] Forked 2308 +[3123] Forked 2309 +(2308) found +(2309) found +[3122] Forked 2310 +[3121] Forked 2311 +(2310) found +(2311) found +[3120] Forked 2312 +[3119] Forked 2313 +(2312) found +(2313) found +[3118] Forked 2314 +[3117] Forked 2315 +(2314) found +(2315) found +[3116] Forked 2316 +[3115] Forked 2317 +(2316) found +(2317) found +[3114] Forked 2318 +[3113] Forked 2319 +(2318) found +(2319) found +[3112] Forked 2320 +(2320) found +[3111] Forked 2321 +(2321) found +[3110] Forked 2322 +(2322) found +[3109] Forked 2323 +(2323) found +[3108] Forked 2324 +(2324) found +[3107] Forked 2325 +(2325) found +[3106] Forked 2326 +(2326) found +[3105] Forked 2327 +(2327) found +[3104] Forked 2328 +(2328) found +[3103] Forked 2329 +(2329) found +[3102] Forked 2330 +(2330) found +[3101] Forked 2331 +(2331) found +[3100] Forked 2332 +(2332) found +[3099] Forked 2333 +(2333) found +[3098] Forked 2334 +(2334) found +[3097] Forked 2335 +(2335) found +[3096] Forked 2336 +(2336) found +[3095] Forked 2337 +(2337) found +[3094] Forked 2338 +(2338) found +[3093] Forked 2339 +(2339) found +[3092] Forked 2340 +(2340) found +[3091] Forked 2341 +(2341) found +[3090] Forked 2342 +(2342) found +[3089] Forked 2343 +(2343) found +[3088] Forked 2344 +(2344) found +[3087] Forked 2345 +(2345) found +[3086] Forked 2346 +(2346) found +[3085] Forked 2347 +(2347) found +[3084] Forked 2348 +(2348) found +[3083] Forked 2349 +(2349) found +[3082] Forked 2350 +(2350) found +[3081] Forked 2351 +(2351) found +[3080] Forked 2352 +(2352) found +[3079] Forked 2353 +(2353) found +[3078] Forked 2354 +(2354) found +[3077] Forked 2355 +(2355) found +[3076] Forked 2356 +(2356) found +[3075] Forked 2357 +(2357) found +[3074] Forked 2358 +(2358) found +[3073] Forked 2359 +[3072] Forked 2360 +(2359) found +(2360) found +[3071] Forked 2361 +[3070] Forked 2362 +(2361) found +(2362) found +[3069] Forked 2363 +[3068] Forked 2364 +(2363) found +(2364) found +[3067] Forked 2365 +[3066] Forked 2366 +(2365) found +(2366) found +[3065] Forked 2367 +[3064] Forked 2368 +(2367) found +(2368) found +[3063] Forked 2369 +[3062] Forked 2370 +(2369) found +(2370) found +[3061] Forked 2371 +[3060] Forked 2372 +(2371) found +(2372) found +[3059] Forked 2373 +[3058] Forked 2374 +(2373) found +(2374) found +[3057] Forked 2375 +[3056] Forked 2376 +(2375) found +(2376) found +[3055] Forked 2377 +[3054] Forked 2378 +(2377) found +(2378) found +[3053] Forked 2379 +[3052] Forked 2380 +(2379) found +(2380) found +[3051] Forked 2381 +[3050] Forked 2382 +(2381) found +(2382) found +[3049] Forked 2383 +[3048] Forked 2384 +(2383) found +(2384) found +[3047] Forked 2385 +[3046] Forked 2386 +(2385) found +(2386) found +[3045] Forked 2387 +[3044] Forked 2388 +(2387) found +(2388) found +[3043] Forked 2389 +[3042] Forked 2390 +(2389) found +(2390) found +[3041] Forked 2391 +[3040] Forked 2392 +(2391) found +(2392) found +[3039] Forked 2393 +[3038] Forked 2394 +(2393) found +(2394) found +[3037] Forked 2395 +[3036] Forked 2396 +(2395) found +(2396) found +[3035] Forked 2397 +[3034] Forked 2399 +(2397) found +(2399) found +[3033] Forked 2400 +(2400) found +[3032] Forked 2401 +(2401) found +[3031] Forked 2402 +(2402) found +[3030] Forked 2404 +(2404) found +[3029] Forked 2405 +(2405) found +[3028] Forked 2406 +(2406) found +[3027] Forked 2407 +(2407) found +[3026] Forked 2408 +(2408) found +[3025] Forked 2409 +(2409) found +[3024] Forked 2410 +(2410) found +[3023] Forked 2411 +(2411) found +[3022] Forked 2412 +(2412) found +[3021] Forked 2413 +(2413) found +[3020] Forked 2414 +(2414) found +[3019] Forked 2415 +(2415) found +[3018] Forked 2416 +(2416) found +[3017] Forked 2417 +(2417) found +[3016] Forked 2418 +(2418) found +[3015] Forked 2419 +(2419) found +[3014] Forked 2420 +(2420) found +[3013] Forked 2421 +(2421) found +[3012] Forked 2422 +(2422) found +[3011] Forked 2423 +(2423) found +[3010] Forked 2424 +(2424) found +[3009] Forked 2425 +(2425) found +[3008] Forked 2426 +(2426) found +[3007] Forked 2427 +(2427) found +[3006] Forked 2428 +(2428) found +[3005] Forked 2429 +(2429) found +[3004] Forked 2430 +(2430) found +[3003] Forked 2431 +(2431) found +[3002] Forked 2432 +(2432) found +[3001] Forked 2433 +(2433) found +[3000] Forked 2434 +(2434) found +[2999] Forked 2435 +(2435) found +[2998] Forked 2436 +(2436) found +[2997] Forked 2437 +(2437) found +[2996] Forked 2438 +(2438) found +[2995] Forked 2439 +(2439) found +[2994] Forked 2440 +(2440) found +[2993] Forked 2441 +[2992] Forked 2442 +(2441) found +(2442) found +[2991] Forked 2443 +[2990] Forked 2444 +(2443) found +(2444) found +[2989] Forked 2445 +[2988] Forked 2446 +(2445) found +(2446) found +[2987] Forked 2447 +[2986] Forked 2448 +(2447) found +(2448) found +[2985] Forked 2449 +[2984] Forked 2450 +(2449) found +(2450) found +[2983] Forked 2451 +[2982] Forked 2452 +(2451) found +(2452) found +[2981] Forked 2453 +[2980] Forked 2454 +(2453) found +(2454) found +[2979] Forked 2455 +[2978] Forked 2456 +(2455) found +(2456) found +[2977] Forked 2457 +[2976] Forked 2458 +(2457) found +(2458) found +[2975] Forked 2459 +[2974] Forked 2460 +(2459) found +(2460) found +[2973] Forked 2461 +[2972] Forked 2462 +(2461) found +(2462) found +[2971] Forked 2463 +[2970] Forked 2464 +(2463) found +(2464) found +[2969] Forked 2465 +[2968] Forked 2466 +(2465) found +(2466) found +[2967] Forked 2467 +[2966] Forked 2468 +(2467) found +(2468) found +[2965] Forked 2469 +[2964] Forked 2470 +(2469) found +(2470) found +[2963] Forked 2471 +[2962] Forked 2472 +(2471) found +(2472) found +[2961] Forked 2473 +[2960] Forked 2474 +(2473) found +(2474) found +[2959] Forked 2475 +[2958] Forked 2476 +(2475) found +(2476) found +[2957] Forked 2477 +[2956] Forked 2478 +(2477) found +(2478) found +[2955] Forked 2479 +[2954] Forked 2480 +(2479) found +(2480) found +[2953] Forked 2481 +[2952] Forked 2482 +(2481) found +(2482) found +[2951] Forked 2483 +[2950] Forked 2484 +(2483) found +(2484) found +[2949] Forked 2485 +(2485) found +[2948] Forked 2486 +(2486) found +[2947] Forked 2487 +(2487) found +[2946] Forked 2488 +(2488) found +[2945] Forked 2489 +(2489) found +[2944] Forked 2490 +(2490) found +[2943] Forked 2491 +(2491) found +[2942] Forked 2492 +(2492) found +[2941] Forked 2493 +(2493) found +[2940] Forked 2494 +(2494) found +[2939] Forked 2495 +(2495) found +[2938] Forked 2496 +(2496) found +[2937] Forked 2497 +(2497) found +[2936] Forked 2498 +(2498) found +[2935] Forked 2499 +(2499) found +[2934] Forked 2500 +(2500) found +[2933] Forked 2501 +(2501) found +[2932] Forked 2502 +(2502) found +[2931] Forked 2503 +(2503) found +[2930] Forked 2504 +(2504) found +[2929] Forked 2505 +(2505) found +[2928] Forked 2506 +(2506) found +[2927] Forked 2507 +(2507) found +[2926] Forked 2508 +(2508) found +[2925] Forked 2509 +(2509) found +[2924] Forked 2510 +(2510) found +[2923] Forked 2512 +(2512) found +[2922] Forked 2513 +(2513) found +[2921] Forked 2514 +(2514) found +[2920] Forked 2515 +(2515) found +[2919] Forked 2516 +(2516) found +[2918] Forked 2517 +(2517) found +[2917] Forked 2518 +(2518) found +[2916] Forked 2519 +(2519) found +[2915] Forked 2520 +(2520) found +[2914] Forked 2521 +(2521) found +[2913] Forked 2522 +(2522) found +[2912] Forked 2523 +(2523) found +[2911] Forked 2525 +[2910] Forked 2526 +(2525) found +(2526) found +[2909] Forked 2527 +[2908] Forked 2528 +(2527) found +(2528) found +[2907] Forked 2529 +[2906] Forked 2530 +(2529) found +(2530) found +[2905] Forked 2531 +[2904] Forked 2532 +(2531) found +(2532) found +[2903] Forked 2533 +[2902] Forked 2534 +(2533) found +(2534) found +[2901] Forked 2535 +[2900] Forked 2536 +(2535) found +(2536) found +[2899] Forked 2537 +[2898] Forked 2538 +(2537) found +(2538) found +[2897] Forked 2539 +[2896] Forked 2541 +(2539) found +(2541) found +[2895] Forked 2542 +[2894] Forked 2543 +(2542) found +(2543) found +[2893] Forked 2544 +[2892] Forked 2545 +(2544) found +(2545) found +[2891] Forked 2546 +[2890] Forked 2547 +(2546) found +(2547) found +[2889] Forked 2548 +[2888] Forked 2549 +(2548) found +(2549) found +[2887] Forked 2550 +[2886] Forked 2551 +(2550) found +(2551) found +[2885] Forked 2552 +[2884] Forked 2553 +(2552) found +(2553) found +[2883] Forked 2554 +[2882] Forked 2555 +(2554) found +(2555) found +[2881] Forked 2556 +[2880] Forked 2557 +(2556) found +(2557) found +[2879] Forked 2558 +[2878] Forked 2559 +(2558) found +(2559) found +[2877] Forked 2560 +[2876] Forked 2561 +(2560) found +(2561) found +[2875] Forked 2562 +[2874] Forked 2563 +(2562) found +(2563) found +[2873] Forked 2564 +[2872] Forked 2565 +(2564) found +(2565) found +[2871] Forked 2566 +[2870] Forked 2567 +(2566) found +(2567) found +[2869] Forked 2568 +[2868] Forked 2569 +(2568) found +(2569) found +[2867] Forked 2570 +(2570) found +[2866] Forked 2571 +(2571) found +[2865] Forked 2572 +(2572) found +[2864] Forked 2573 +(2573) found +[2863] Forked 2574 +(2574) found +[2862] Forked 2575 +(2575) found +[2861] Forked 2576 +(2576) found +[2860] Forked 2577 +(2577) found +[2859] Forked 2578 +(2578) found +[2858] Forked 2579 +(2579) found +[2857] Forked 2580 +(2580) found +[2856] Forked 2581 +(2581) found +[2855] Forked 2582 +(2582) found +[2854] Forked 2583 +(2583) found +[2853] Forked 2584 +(2584) found +[2852] Forked 2585 +(2585) found +[2851] Forked 2586 +(2586) found +[2850] Forked 2587 +(2587) found +[2849] Forked 2588 +(2588) found +[2848] Forked 2589 +(2589) found +[2847] Forked 2590 +(2590) found +[2846] Forked 2591 +(2591) found +[2845] Forked 2592 +(2592) found +[2844] Forked 2593 +(2593) found +[2843] Forked 2594 +(2594) found +[2842] Forked 2595 +(2595) found +[2841] Forked 2596 +(2596) found +[2840] Forked 2597 +(2597) found +[2839] Forked 2598 +(2598) found +[2838] Forked 2599 +(2599) found +[2837] Forked 2600 +(2600) found +[2836] Forked 2601 +(2601) found +[2835] Forked 2602 +(2602) found +[2834] Forked 2603 +(2603) found +[2833] Forked 2604 +(2604) found +[2832] Forked 2605 +(2605) found +[2831] Forked 2606 +(2606) found +[2830] Forked 2607 +(2607) found +[2829] Forked 2608 +(2608) found +[2828] Forked 2609 +(2609) found +[2827] Forked 2610 +(2610) found +[2826] Forked 2611 +[2825] Forked 2612 +(2611) found +(2612) found +[2824] Forked 2613 +[2823] Forked 2614 +(2613) found +(2614) found +[2822] Forked 2615 +[2821] Forked 2616 +(2615) found +(2616) found +[2820] Forked 2617 +[2819] Forked 2618 +(2617) found +(2618) found +[2818] Forked 2619 +[2817] Forked 2620 +(2619) found +(2620) found +[2816] Forked 2621 +[2815] Forked 2622 +(2621) found +(2622) found +[2814] Forked 2623 +[2813] Forked 2624 +(2623) found +(2624) found +[2812] Forked 2625 +[2811] Forked 2626 +(2625) found +(2626) found +[2810] Forked 2627 +[2809] Forked 2628 +(2627) found +(2628) found +[2808] Forked 2629 +[2807] Forked 2630 +(2629) found +(2630) found +[2806] Forked 2631 +[2805] Forked 2632 +(2631) found +(2632) found +[2804] Forked 2633 +[2803] Forked 2634 +(2633) found +(2634) found +[2802] Forked 2635 +[2801] Forked 2636 +(2635) found +(2636) found +[2800] Forked 2637 +[2799] Forked 2638 +(2637) found +(2638) found +[2798] Forked 2639 +[2797] Forked 2640 +(2639) found +(2640) found +[2796] Forked 2641 +[2795] Forked 2642 +(2641) found +(2642) found +[2794] Forked 2643 +[2793] Forked 2644 +(2643) found +(2644) found +[2792] Forked 2645 +[2791] Forked 2646 +(2645) found +(2646) found +[2790] Forked 2647 +[2789] Forked 2648 +(2647) found +(2648) found +[2788] Forked 2649 +[2787] Forked 2650 +(2649) found +(2650) found +[2786] Forked 2651 +(2651) found +[2785] Forked 2652 +(2652) found +[2784] Forked 2653 +(2653) found +[2783] Forked 2654 +(2654) found +[2782] Forked 2655 +(2655) found +[2781] Forked 2659 +(2659) found +[2780] Forked 2662 +(2662) found +[2779] Forked 2663 +(2663) found +[2778] Forked 2664 +(2664) found +[2777] Forked 2665 +(2665) found +[2776] Forked 2666 +(2666) found +[2775] Forked 2669 +(2669) found +[2774] Forked 2670 +(2670) found +[2773] Forked 2671 +(2671) found +[2772] Forked 2672 +(2672) found +[2771] Forked 2673 +(2673) found +[2770] Forked 2674 +(2674) found +[2769] Forked 2675 +(2675) found +[2768] Forked 2676 +(2676) found +[2767] Forked 2677 +(2677) found +[2766] Forked 2678 +(2678) found +[2765] Forked 2679 +(2679) found +[2764] Forked 2680 +(2680) found +[2763] Forked 2681 +(2681) found +[2762] Forked 2682 +(2682) found +[2761] Forked 2683 +(2683) found +[2760] Forked 2684 +(2684) found +[2759] Forked 2685 +(2685) found +[2758] Forked 2686 +(2686) found +[2757] Forked 2687 +(2687) found +[2756] Forked 2688 +(2688) found +[2755] Forked 2689 +(2689) found +[2754] Forked 2690 +(2690) found +[2753] Forked 2691 +(2691) found +[2752] Forked 2692 +(2692) found +[2751] Forked 2693 +(2693) found +[2750] Forked 2694 +(2694) found +[2749] Forked 2695 +(2695) found +[2748] Forked 2696 +(2696) found +[2747] Forked 2697 +[2746] Forked 2698 +(2697) found +(2698) found +[2745] Forked 2699 +[2744] Forked 2700 +(2699) found +(2700) found +[2743] Forked 2701 +[2742] Forked 2703 +(2701) found +(2703) found +[2741] Forked 2704 +[2740] Forked 2705 +(2704) found +(2705) found +[2739] Forked 2706 +[2738] Forked 2707 +(2706) found +(2707) found +[2737] Forked 2708 +[2736] Forked 2709 +(2708) found +(2709) found +[2735] Forked 2710 +[2734] Forked 2711 +(2710) found +(2711) found +[2733] Forked 2712 +[2732] Forked 2713 +(2712) found +(2713) found +[2731] Forked 2714 +[2730] Forked 2715 +(2714) found +(2715) found +[2729] Forked 2716 +[2728] Forked 2717 +(2716) found +(2717) found +[2727] Forked 2718 +[2726] Forked 2719 +(2718) found +(2719) found +[2725] Forked 2720 +[2724] Forked 2723 +(2720) found +(2723) found +[2723] Forked 2725 +(2725) found +[2722] Forked 2728 +[2721] Forked 2729 +(2728) found +(2729) found +[2720] Forked 2730 +[2719] Forked 2731 +(2730) found +(2731) found +[2718] Forked 2732 +[2717] Forked 2733 +(2732) found +(2733) found +[2716] Forked 2734 +[2715] Forked 2735 +(2734) found +(2735) found +[2714] Forked 2736 +[2713] Forked 2737 +(2736) found +(2737) found +[2712] Forked 2738 +[2711] Forked 2739 +(2738) found +(2739) found +[2710] Forked 2740 +[2709] Forked 2741 +(2740) found +(2741) found +[2708] Forked 2742 +[2707] Forked 2743 +(2742) found +(2743) found +[2706] Forked 2744 +[2705] Forked 2745 +(2744) found +(2745) found +[2704] Forked 2746 +(2746) found +[2703] Forked 2747 +(2747) found +[2702] Forked 2748 +(2748) found +[2701] Forked 2749 +(2749) found +[2700] Forked 2750 +(2750) found +[2699] Forked 2751 +(2751) found +[2698] Forked 2752 +(2752) found +[2697] Forked 2753 +(2753) found +[2696] Forked 2754 +(2754) found +[2695] Forked 2755 +(2755) found +[2694] Forked 2756 +(2756) found +[2693] Forked 2757 +(2757) found +[2692] Forked 2758 +(2758) found +[2691] Forked 2760 +(2760) found +[2690] Forked 2761 +(2761) found +[2689] Forked 2762 +(2762) found +[2688] Forked 2763 +(2763) found +[2687] Forked 2764 +(2764) found +[2686] Forked 2765 +(2765) found +[2685] Forked 2766 +(2766) found +[2684] Forked 2767 +(2767) found +[2683] Forked 2768 +(2768) found +[2682] Forked 2769 +(2769) found +[2681] Forked 2770 +(2770) found +[2680] Forked 2771 +(2771) found +[2679] Forked 2772 +(2772) found +[2678] Forked 2773 +(2773) found +[2677] Forked 2774 +(2774) found +[2676] Forked 2775 +(2775) found +[2675] Forked 2776 +(2776) found +[2674] Forked 2777 +(2777) found +[2673] Forked 2778 +(2778) found +[2672] Forked 2779 +(2779) found +[2671] Forked 2780 +(2780) found +[2670] Forked 2781 +(2781) found +[2669] Forked 2782 +(2782) found +[2668] Forked 2783 +(2783) found +[2667] Forked 2784 +(2784) found +[2666] Forked 2785 +[2665] Forked 2786 +(2785) found +(2786) found +[2664] Forked 2787 +[2663] Forked 2788 +(2787) found +(2788) found +[2662] Forked 2789 +[2661] Forked 2790 +(2789) found +(2790) found +[2660] Forked 2791 +[2659] Forked 2792 +(2791) found +(2792) found +[2658] Forked 2793 +[2657] Forked 2794 +(2793) found +(2794) found +[2656] Forked 2795 +[2655] Forked 2796 +(2795) found +(2796) found +[2654] Forked 2797 +[2653] Forked 2798 +(2797) found +(2798) found +[2652] Forked 2799 +[2651] Forked 2800 +(2799) found +(2800) found +[2650] Forked 2801 +[2649] Forked 2802 +(2801) found +(2802) found +[2648] Forked 2803 +[2647] Forked 2804 +(2803) found +(2804) found +[2646] Forked 2805 +[2645] Forked 2806 +(2805) found +(2806) found +[2644] Forked 2807 +[2643] Forked 2808 +(2807) found +(2808) found +[2642] Forked 2809 +[2641] Forked 2810 +(2809) found +(2810) found +[2640] Forked 2811 +[2639] Forked 2812 +(2811) found +(2812) found +[2638] Forked 2813 +[2637] Forked 2814 +(2813) found +(2814) found +[2636] Forked 2815 +[2635] Forked 2816 +(2815) found +(2816) found +[2634] Forked 2817 +[2633] Forked 2818 +(2817) found +(2818) found +[2632] Forked 2819 +[2631] Forked 2820 +(2819) found +(2820) found +[2630] Forked 2821 +[2629] Forked 2822 +(2821) found +(2822) found +[2628] Forked 2823 +[2627] Forked 2824 +(2823) found +(2824) found +[2626] Forked 2825 +[2625] Forked 2826 +(2825) found +(2826) found +[2624] Forked 2827 +[2623] Forked 2830 +(2827) found +(2830) found +[2622] Forked 2831 +(2831) found +[2621] Forked 2832 +(2832) found +[2620] Forked 2833 +(2833) found +[2619] Forked 2834 +(2834) found +[2618] Forked 2835 +(2835) found +[2617] Forked 2836 +(2836) found +[2616] Forked 2837 +(2837) found +[2615] Forked 2838 +(2838) found +[2614] Forked 2839 +(2839) found +[2613] Forked 2840 +(2840) found +[2612] Forked 2841 +(2841) found +[2611] Forked 2843 +(2843) found +[2610] Forked 2844 +(2844) found +[2609] Forked 2845 +(2845) found +[2608] Forked 2846 +(2846) found +[2607] Forked 2847 +(2847) found +[2606] Forked 2848 +(2848) found +[2605] Forked 2849 +(2849) found +[2604] Forked 2850 +(2850) found +[2603] Forked 2851 +(2851) found +[2602] Forked 2852 +(2852) found +[2601] Forked 2853 +(2853) found +[2600] Forked 2854 +(2854) found +[2599] Forked 2855 +(2855) found +[2598] Forked 2856 +(2856) found +[2597] Forked 2857 +(2857) found +[2596] Forked 2858 +(2858) found +[2595] Forked 2859 +(2859) found +[2594] Forked 2860 +(2860) found +[2593] Forked 2861 +(2861) found +[2592] Forked 2862 +(2862) found +[2591] Forked 2863 +(2863) found +[2590] Forked 2864 +(2864) found +[2589] Forked 2865 +(2865) found +[2588] Forked 2866 +(2866) found +[2587] Forked 2867 +(2867) found +[2586] Forked 2868 +(2868) found +[2585] Forked 2869 +(2869) found +[2584] Forked 2870 +[2583] Forked 2871 +(2870) found +(2871) found +[2582] Forked 2872 +[2581] Forked 2873 +(2872) found +(2873) found +[2580] Forked 2874 +[2579] Forked 2875 +(2874) found +(2875) found +[2578] Forked 2876 +(2876) found +[2577] Forked 2877 +[2576] Forked 2878 +(2877) found +(2878) found +[2575] Forked 2879 +[2574] Forked 2880 +(2879) found +(2880) found +[2573] Forked 2881 +[2572] Forked 2882 +(2881) found +(2882) found +[2571] Forked 2883 +[2570] Forked 2884 +(2883) found +(2884) found +[2569] Forked 2885 +[2568] Forked 2886 +(2885) found +(2886) found +[2567] Forked 2887 +[2566] Forked 2888 +(2887) found +(2888) found +[2565] Forked 2889 +[2564] Forked 2890 +(2889) found +(2890) found +[2563] Forked 2891 +[2562] Forked 2892 +(2891) found +(2892) found +[2561] Forked 2893 +[2560] Forked 2894 +(2893) found +(2894) found +[2559] Forked 2895 +[2558] Forked 2896 +(2895) found +(2896) found +[2557] Forked 2897 +[2556] Forked 2898 +(2897) found +(2898) found +[2555] Forked 2899 +[2554] Forked 2900 +(2899) found +(2900) found +[2553] Forked 2901 +[2552] Forked 2902 +(2901) found +(2902) found +[2551] Forked 2903 +[2550] Forked 2904 +(2903) found +(2904) found +[2549] Forked 2905 +(2905) found +[2548] Forked 2906 +(2906) found +[2547] Forked 2907 +[2546] Forked 2908 +(2907) found +(2908) found +[2545] Forked 2909 +[2544] Forked 2910 +(2909) found +(2910) found +[2543] Forked 2911 +[2542] Forked 2912 +(2911) found +(2912) found +[2541] Forked 2913 +[2540] Forked 2914 +(2913) found +(2914) found +[2539] Forked 2915 +[2538] Forked 2916 +(2915) found +(2916) found +[2537] Forked 2917 +[2536] Forked 2918 +(2917) found +(2918) found +[2535] Forked 2919 +[2534] Forked 2920 +(2919) found +(2920) found +[2533] Forked 2921 +[2532] Forked 2922 +(2921) found +(2922) found +[2531] Forked 2923 +[2530] Forked 2924 +(2923) found +(2924) found +[2529] Forked 2925 +[2528] Forked 2926 +(2925) found +(2926) found +[2527] Forked 2927 +[2526] Forked 2928 +(2927) found +(2928) found +[2525] Forked 2929 +[2524] Forked 2930 +(2929) found +(2930) found +[2523] Forked 2932 +[2522] Forked 2933 +(2932) found +(2933) found +[2521] Forked 2934 +[2520] Forked 2935 +(2934) found +(2935) found +[2519] Forked 2936 +[2518] Forked 2937 +(2936) found +(2937) found +[2517] Forked 2938 +[2516] Forked 2939 +(2938) found +(2939) found +[2515] Forked 2940 +[2514] Forked 2941 +(2940) found +(2941) found +[2513] Forked 2942 +[2512] Forked 2943 +(2942) found +(2943) found +[2511] Forked 2944 +[2510] Forked 2945 +(2944) found +(2945) found +[2509] Forked 2946 +[2508] Forked 2947 +(2946) found +(2947) found +[2507] Forked 2948 +[2506] Forked 2949 +(2948) found +(2949) found +[2505] Forked 2950 +[2504] Forked 2951 +(2950) found +(2951) found +[2503] Forked 2952 +[2502] Forked 2953 +(2952) found +(2953) found +[2501] Forked 2956 +[2500] Forked 2957 +(2956) found +(2957) found +[2499] Forked 2958 +[2498] Forked 2959 +(2958) found +(2959) found +[2497] Forked 2960 +[2496] Forked 2961 +(2960) found +(2961) found +[2495] Forked 2962 +[2494] Forked 2963 +(2962) found +(2963) found +[2493] Forked 2964 +[2492] Forked 2965 +(2964) found +(2965) found +[2491] Forked 2966 +[2490] Forked 2967 +(2966) found +(2967) found +[2489] Forked 2968 +[2488] Forked 2969 +(2968) found +(2969) found +[2487] Forked 2970 +[2486] Forked 2971 +(2970) found +(2971) found +[2485] Forked 2972 +[2484] Forked 2973 +(2972) found +(2973) found +[2483] Forked 2974 +[2482] Forked 2975 +(2974) found +(2975) found +[2481] Forked 2976 +[2480] Forked 2977 +(2976) found +(2977) found +[2479] Forked 2978 +[2478] Forked 2979 +(2978) found +(2979) found +[2477] Forked 2980 +[2476] Forked 2981 +(2980) found +(2981) found +[2475] Forked 2983 +[2474] Forked 2984 +(2983) found +(2984) found +[2473] Forked 2987 +[2472] Forked 2992 +(2987) found +(2992) found +[2471] Forked 3049 +[2470] Forked 3050 +(3049) found +(3050) found +[2469] Forked 3051 +[2468] Forked 3052 +(3051) found +(3052) found +[2467] Forked 3053 +[2466] Forked 3054 +(3053) found +(3054) found +[2465] Forked 3055 +[2464] Forked 3056 +(3055) found +(3056) found +[2463] Forked 3057 +[2462] Forked 3058 +(3057) found +(3058) found +[2461] Forked 3059 +[2460] Forked 3060 +(3059) found +(3060) found +[2459] Forked 3061 +[2458] Forked 3062 +(3061) found +(3062) found +[2457] Forked 3063 +[2456] Forked 3064 +(3063) found +(3064) found +[2455] Forked 3065 +[2454] Forked 3066 +(3065) found +(3066) found +[2453] Forked 3067 +[2452] Forked 3068 +(3067) found +(3068) found +[2451] Forked 3069 +(3069) found +[2450] Forked 3070 +(3070) found +[2449] Forked 3071 +(3071) found +[2448] Forked 3072 +(3072) found +[2447] Forked 3073 +(3073) found +[2446] Forked 3074 +(3074) found +[2445] Forked 3075 +(3075) found +[2444] Forked 3076 +(3076) found +[2443] Forked 3077 +(3077) found +[2442] Forked 3078 +(3078) found +[2441] Forked 3079 +(3079) found +[2440] Forked 3080 +(3080) found +[2439] Forked 3081 +(3081) found +[2438] Forked 3082 +(3082) found +[2437] Forked 3083 +(3083) found +[2436] Forked 3085 +(3085) found +[2435] Forked 3086 +(3086) found +[2434] Forked 3087 +(3087) found +[2433] Forked 3088 +(3088) found +[2432] Forked 3089 +(3089) found +[2431] Forked 3090 +(3090) found +[2430] Forked 3091 +(3091) found +[2429] Forked 3093 +(3093) found +[2428] Forked 3094 +(3094) found +[2427] Forked 3095 +(3095) found +[2426] Forked 3096 +(3096) found +[2425] Forked 3097 +(3097) found +[2424] Forked 3098 +(3098) found +[2423] Forked 3099 +(3099) found +[2422] Forked 3101 +(3101) found +[2421] Forked 3102 +(3102) found +[2420] Forked 3103 +(3103) found +[2419] Forked 3104 +(3104) found +[2418] Forked 3105 +(3105) found +[2417] Forked 3106 +(3106) found +[2416] Forked 3107 +(3107) found +[2415] Forked 3108 +(3108) found +[2414] Forked 3109 +(3109) found +[2413] Forked 3110 +[2412] Forked 3112 +(3110) found +(3112) found +[2411] Forked 3113 +[2410] Forked 3114 +(3113) found +(3114) found +[2409] Forked 3115 +[2408] Forked 3116 +(3115) found +(3116) found +[2407] Forked 3117 +[2406] Forked 3118 +(3117) found +(3118) found +[2405] Forked 3119 +[2404] Forked 3120 +(3119) found +(3120) found +[2403] Forked 3121 +[2402] Forked 3123 +(3121) found +(3123) found +[2401] Forked 3124 +[2400] Forked 3126 +(3124) found +(3126) found +[2399] Forked 3128 +[2398] Forked 3129 +(3128) found +(3129) found +[2397] Forked 3130 +[2396] Forked 3131 +(3130) found +(3131) found +[2395] Forked 3132 +[2394] Forked 3133 +(3132) found +(3133) found +[2393] Forked 3134 +[2392] Forked 3135 +(3134) found +(3135) found +[2391] Forked 3136 +[2390] Forked 3137 +(3136) found +(3137) found +[2389] Forked 3138 +[2388] Forked 3139 +(3138) found +(3139) found +[2387] Forked 3140 +[2386] Forked 3141 +(3140) found +(3141) found +[2385] Forked 3142 +[2384] Forked 3143 +(3142) found +(3143) found +[2383] Forked 3144 +[2382] Forked 3145 +(3144) found +(3145) found +[2381] Forked 3147 +[2380] Forked 3148 +(3147) found +(3148) found +[2379] Forked 3149 +[2378] Forked 3150 +(3149) found +(3150) found +[2377] Forked 3151 +[2376] Forked 3152 +(3151) found +(3152) found +[2375] Forked 3153 +[2374] Forked 3154 +(3153) found +(3154) found +[2373] Forked 3155 +[2372] Forked 3156 +(3155) found +(3156) found +[2371] Forked 3157 +[2370] Forked 3158 +(3157) found +(3158) found +[2369] Forked 3159 +(3159) found +[2368] Forked 3160 +(3160) found +[2367] Forked 3163 +(3163) found +[2366] Forked 3164 +(3164) found +[2365] Forked 3165 +(3165) found +[2364] Forked 3166 +(3166) found +[2363] Forked 3167 +(3167) found +[2362] Forked 3168 +(3168) found +[2361] Forked 3169 +(3169) found +[2360] Forked 3170 +(3170) found +[2359] Forked 3171 +(3171) found +[2358] Forked 3172 +(3172) found +[2357] Forked 3173 +(3173) found +[2356] Forked 3174 +(3174) found +[2355] Forked 3175 +(3175) found +[2354] Forked 3176 +(3176) found +[2353] Forked 3177 +(3177) found +[2352] Forked 3178 +(3178) found +[2351] Forked 3179 +(3179) found +[2350] Forked 3180 +(3180) found +[2349] Forked 3181 +(3181) found +[2348] Forked 3182 +(3182) found +[2347] Forked 3183 +(3183) found +[2346] Forked 3184 +(3184) found +[2345] Forked 3185 +(3185) found +[2344] Forked 3186 +(3186) found +[2343] Forked 3187 +(3187) found +[2342] Forked 3188 +(3188) found +[2341] Forked 3189 +(3189) found +[2340] Forked 3190 +(3190) found +[2339] Forked 3191 +(3191) found +[2338] Forked 3192 +(3192) found +[2337] Forked 3195 +(3195) found +[2336] Forked 3196 +(3196) found +[2335] Forked 3197 +(3197) found +[2334] Forked 3198 +(3198) found +[2333] Forked 3199 +(3199) found +[2332] Forked 3200 +(3200) found +[2331] Forked 3201 +[2330] Forked 3202 +(3201) found +(3202) found +[2329] Forked 3203 +[2328] Forked 3204 +(3203) found +(3204) found +[2327] Forked 3205 +[2326] Forked 3206 +(3205) found +(3206) found +[2325] Forked 3207 +[2324] Forked 3208 +(3207) found +(3208) found +[2323] Forked 3209 +[2322] Forked 3210 +(3209) found +(3210) found +[2321] Forked 3211 +[2320] Forked 3212 +(3211) found +(3212) found +[2319] Forked 3213 +[2318] Forked 3214 +(3213) found +(3214) found +[2317] Forked 3215 +[2316] Forked 3216 +(3215) found +(3216) found +[2315] Forked 3217 +[2314] Forked 3218 +(3217) found +(3218) found +[2313] Forked 3219 +[2312] Forked 3220 +(3219) found +(3220) found +[2311] Forked 3221 +[2310] Forked 3222 +(3221) found +(3222) found +[2309] Forked 3223 +[2308] Forked 3224 +(3223) found +(3224) found +[2307] Forked 3225 +[2306] Forked 3227 +(3225) found +(3227) found +[2305] Forked 3228 +[2304] Forked 3229 +(3228) found +(3229) found +[2303] Forked 3230 +[2302] Forked 3231 +(3230) found +(3231) found +[2301] Forked 3232 +[2300] Forked 3233 +(3232) found +(3233) found +[2299] Forked 3234 +[2298] Forked 3235 +(3234) found +(3235) found +[2297] Forked 3236 +[2296] Forked 3237 +(3236) found +(3237) found +[2295] Forked 3238 +[2294] Forked 3239 +(3238) found +(3239) found +[2293] Forked 3240 +[2292] Forked 3241 +(3240) found +(3241) found +[2291] Forked 3242 +[2290] Forked 3243 +(3242) found +(3243) found +[2289] Forked 3244 +[2288] Forked 3245 +(3244) found +(3245) found +[2287] Forked 3249 +(3249) found +[2286] Forked 3250 +(3250) found +[2285] Forked 3251 +(3251) found +[2284] Forked 3252 +(3252) found +[2283] Forked 3253 +(3253) found +[2282] Forked 3254 +(3254) found +[2281] Forked 3255 +(3255) found +[2280] Forked 3256 +(3256) found +[2279] Forked 3257 +(3257) found +[2278] Forked 3258 +(3258) found +[2277] Forked 3259 +(3259) found +[2276] Forked 3260 +(3260) found +[2275] Forked 3261 +(3261) found +[2274] Forked 3262 +(3262) found +[2273] Forked 3263 +(3263) found +[2272] Forked 3264 +(3264) found +[2271] Forked 3265 +(3265) found +[2270] Forked 3266 +(3266) found +[2269] Forked 3267 +(3267) found +[2268] Forked 3268 +(3268) found +[2267] Forked 3269 +(3269) found +[2266] Forked 3270 +(3270) found +[2265] Forked 3271 +(3271) found +[2264] Forked 3272 +(3272) found +[2263] Forked 3273 +(3273) found +[2262] Forked 3274 +(3274) found +[2261] Forked 3275 +(3275) found +[2260] Forked 3276 +(3276) found +[2259] Forked 3277 +(3277) found +[2258] Forked 3278 +(3278) found +[2257] Forked 3279 +(3279) found +[2256] Forked 3280 +(3280) found +[2255] Forked 3281 +(3281) found +[2254] Forked 3282 +(3282) found +[2253] Forked 3283 +(3283) found +[2252] Forked 3284 +(3284) found +[2251] Forked 3285 +(3285) found +[2250] Forked 3286 +(3286) found +[2249] Forked 3287 +[2248] Forked 3288 +(3287) found +(3288) found +[2247] Forked 3289 +[2246] Forked 3290 +(3289) found +(3290) found +[2245] Forked 3291 +[2244] Forked 3292 +(3291) found +(3292) found +[2243] Forked 3293 +[2242] Forked 3294 +(3293) found +(3294) found +[2241] Forked 3295 +[2240] Forked 3296 +(3295) found +(3296) found +[2239] Forked 3297 +[2238] Forked 3298 +(3297) found +(3298) found +[2237] Forked 3299 +[2236] Forked 3300 +(3299) found +(3300) found +[2235] Forked 3301 +[2234] Forked 3302 +(3301) found +(3302) found +[2233] Forked 3303 +[2232] Forked 3304 +(3303) found +(3304) found +[2231] Forked 3305 +[2230] Forked 3306 +(3305) found +(3306) found +[2229] Forked 3307 +[2228] Forked 3308 +(3307) found +(3308) found +[2227] Forked 3309 +[2226] Forked 3310 +(3309) found +(3310) found +[2225] Forked 3311 +[2224] Forked 3312 +(3311) found +(3312) found +[2223] Forked 3313 +[2222] Forked 3314 +(3313) found +(3314) found +[2221] Forked 3315 +[2220] Forked 3317 +(3315) found +(3317) found +[2219] Forked 3318 +[2218] Forked 3319 +(3318) found +(3319) found +[2217] Forked 3320 +[2216] Forked 3321 +(3320) found +(3321) found +[2215] Forked 3322 +[2214] Forked 3323 +(3322) found +(3323) found +[2213] Forked 3324 +[2212] Forked 3325 +(3324) found +(3325) found +[2211] Forked 3326 +[2210] Forked 3327 +(3326) found +(3327) found +[2209] Forked 3333 +[2208] Forked 3334 +(3333) found +(3334) found +[2207] Forked 3335 +(3335) found +[2206] Forked 3336 +(3336) found +[2205] Forked 3337 +(3337) found +[2204] Forked 3338 +(3338) found +[2203] Forked 3339 +(3339) found +[2202] Forked 3340 +(3340) found +[2201] Forked 3341 +(3341) found +[2200] Forked 3342 +(3342) found +[2199] Forked 3343 +(3343) found +[2198] Forked 3344 +(3344) found +[2197] Forked 3345 +(3345) found +[2196] Forked 3347 +(3347) found +[2195] Forked 3348 +(3348) found +[2194] Forked 3349 +(3349) found +[2193] Forked 3350 +(3350) found +[2192] Forked 3351 +(3351) found +[2191] Forked 3352 +(3352) found +[2190] Forked 3353 +(3353) found +[2189] Forked 3354 +(3354) found +[2188] Forked 3355 +(3355) found +[2187] Forked 3356 +(3356) found +[2186] Forked 3357 +(3357) found +[2185] Forked 3358 +(3358) found +[2184] Forked 3359 +(3359) found +[2183] Forked 3360 +(3360) found +[2182] Forked 3361 +(3361) found +[2181] Forked 3362 +(3362) found +[2180] Forked 3363 +(3363) found +[2179] Forked 3364 +(3364) found +[2178] Forked 3365 +(3365) found +[2177] Forked 3366 +(3366) found +[2176] Forked 3367 +(3367) found +[2175] Forked 3368 +(3368) found +[2174] Forked 3369 +(3369) found +[2173] Forked 3370 +(3370) found +[2172] Forked 3371 +(3371) found +[2171] Forked 3372 +(3372) found +[2170] Forked 3373 +(3373) found +[2169] Forked 3382 +[2168] Forked 3383 +(3382) found +(3383) found +[2167] Forked 3384 +[2166] Forked 3385 +(3384) found +(3385) found +[2165] Forked 3386 +[2164] Forked 3387 +(3386) found +(3387) found +[2163] Forked 3388 +[2162] Forked 3389 +(3388) found +(3389) found +[2161] Forked 3390 +[2160] Forked 3391 +(3390) found +(3391) found +[2159] Forked 3392 +[2158] Forked 3393 +(3392) found +(3393) found +[2157] Forked 3394 +[2156] Forked 3395 +(3394) found +(3395) found +[2155] Forked 3396 +[2154] Forked 3397 +(3396) found +(3397) found +[2153] Forked 3398 +[2152] Forked 3399 +(3398) found +(3399) found +[2151] Forked 3401 +[2150] Forked 3402 +(3401) found +(3402) found +[2149] Forked 3403 +[2148] Forked 3404 +(3403) found +(3404) found +[2147] Forked 3405 +[2146] Forked 3406 +(3405) found +(3406) found +[2145] Forked 3407 +[2144] Forked 3408 +(3407) found +(3408) found +[2143] Forked 3409 +[2142] Forked 3410 +(3409) found +(3410) found +[2141] Forked 3411 +[2140] Forked 3412 +(3411) found +(3412) found +[2139] Forked 3413 +[2138] Forked 3414 +(3413) found +(3414) found +[2137] Forked 3415 +[2136] Forked 3416 +(3415) found +(3416) found +[2135] Forked 3417 +[2134] Forked 3418 +(3417) found +(3418) found +[2133] Forked 3419 +[2132] Forked 3420 +(3419) found +(3420) found +[2131] Forked 3421 +[2130] Forked 3422 +(3421) found +(3422) found +[2129] Forked 3423 +[2128] Forked 3424 +(3423) found +(3424) found +[2127] Forked 3425 +[2126] Forked 3426 +(3425) found +(3426) found +[2125] Forked 3427 +(3427) found +[2124] Forked 3428 +(3428) found +[2123] Forked 3429 +(3429) found +[2122] Forked 3430 +(3430) found +[2121] Forked 3431 +(3431) found +[2120] Forked 3432 +(3432) found +[2119] Forked 3433 +(3433) found +[2118] Forked 3434 +(3434) found +[2117] Forked 3435 +(3435) found +[2116] Forked 3436 +(3436) found +[2115] Forked 3437 +(3437) found +[2114] Forked 3438 +(3438) found +[2113] Forked 3439 +(3439) found +[2112] Forked 3440 +(3440) found +[2111] Forked 3441 +(3441) found +[2110] Forked 3442 +(3442) found +[2109] Forked 3443 +(3443) found +[2108] Forked 3444 +(3444) found +[2107] Forked 3445 +(3445) found +[2106] Forked 3446 +(3446) found +[2105] Forked 3447 +(3447) found +[2104] Forked 3448 +(3448) found +[2103] Forked 3449 +(3449) found +[2102] Forked 3450 +(3450) found +[2101] Forked 3451 +(3451) found +[2100] Forked 3452 +(3452) found +[2099] Forked 3453 +(3453) found +[2098] Forked 3454 +(3454) found +[2097] Forked 3455 +(3455) found +[2096] Forked 3456 +(3456) found +[2095] Forked 3457 +(3457) found +[2094] Forked 3458 +(3458) found +[2093] Forked 3459 +(3459) found +[2092] Forked 3460 +(3460) found +[2091] Forked 3461 +(3461) found +[2090] Forked 3462 +(3462) found +[2089] Forked 3463 +(3463) found +[2088] Forked 3464 +(3464) found +[2087] Forked 3465 +[2086] Forked 3466 +(3465) found +(3466) found +[2085] Forked 3467 +[2084] Forked 3468 +(3467) found +(3468) found +[2083] Forked 3469 +[2082] Forked 3470 +(3469) found +(3470) found +[2081] Forked 3471 +[2080] Forked 3472 +(3471) found +(3472) found +[2079] Forked 3473 +[2078] Forked 3474 +(3473) found +(3474) found +[2077] Forked 3475 +[2076] Forked 3476 +(3475) found +(3476) found +[2075] Forked 3477 +[2074] Forked 3478 +(3477) found +(3478) found +[2073] Forked 3479 +[2072] Forked 3480 +(3480) found +(3479) found +[2071] Forked 3481 +(3481) found +[2070] Forked 3482 +(3482) found +[2069] Forked 3483 +(3483) found +[2068] Forked 3484 +(3484) found +[2067] Forked 3485 +(3485) found +[2066] Forked 3486 +(3486) found +[2065] Forked 3487 +(3487) found +[2064] Forked 3488 +(3488) found +[2063] Forked 3489 +(3489) found +[2062] Forked 3490 +(3490) found +[2061] Forked 3491 +(3491) found +[2060] Forked 3492 +(3492) found +[2059] Forked 3493 +[2058] Forked 3494 +(3493) found +(3494) found +[2057] Forked 3495 +[2056] Forked 3496 +(3495) found +(3496) found +[2055] Forked 3497 +(3497) found +[2054] Forked 3498 +(3498) found +[2053] Forked 3499 +(3499) found +[2052] Forked 3500 +(3500) found +[2051] Forked 3501 +(3501) found +[2050] Forked 3502 +(3502) found +[2049] Forked 3503 +(3503) found +[2048] Forked 3504 +(3504) found +[2047] Forked 3505 +(3505) found +[2046] Forked 3506 +(3506) found +[2045] Forked 3507 +(3507) found +[2044] Forked 3508 +(3508) found +[2043] Forked 3509 +(3509) found +[2042] Forked 3510 +(3510) found +[2041] Forked 3511 +(3511) found +[2040] Forked 3512 +(3512) found +[2039] Forked 3513 +(3513) found +[2038] Forked 3514 +(3514) found +[2037] Forked 3515 +(3515) found +[2036] Forked 3516 +(3516) found +[2035] Forked 3517 +(3517) found +[2034] Forked 3518 +(3518) found +[2033] Forked 3519 +(3519) found +[2032] Forked 3520 +(3520) found +[2031] Forked 3521 +(3521) found +[2030] Forked 3522 +(3522) found +[2029] Forked 3523 +(3523) found +[2028] Forked 3524 +(3524) found +[2027] Forked 3525 +(3525) found +[2026] Forked 3526 +(3526) found +[2025] Forked 3527 +(3527) found +[2024] Forked 3528 +(3528) found +[2023] Forked 3529 +(3529) found +[2022] Forked 3530 +(3530) found +[2021] Forked 3531 +(3531) found +[2020] Forked 3532 +(3532) found +[2019] Forked 3533 +(3533) found +[2018] Forked 3534 +[2017] Forked 3535 +(3534) found +(3535) found +[2016] Forked 3536 +[2015] Forked 3537 +(3536) found +(3537) found +[2014] Forked 3538 +[2013] Forked 3539 +(3538) found +(3539) found +[2012] Forked 3540 +[2011] Forked 3541 +(3540) found +(3541) found +[2010] Forked 3542 +[2009] Forked 3543 +(3542) found +(3543) found +[2008] Forked 3544 +[2007] Forked 3545 +(3544) found +(3545) found +[2006] Forked 3546 +[2005] Forked 3548 +(3546) found +(3548) found +[2004] Forked 3549 +(3549) found +[2003] Forked 3550 +(3550) found +[2002] Forked 3551 +(3551) found +[2001] Forked 3552 +(3552) found +[2000] Forked 3553 +(3553) found +[1999] Forked 3554 +(3554) found +[1998] Forked 3555 +(3555) found +[1997] Forked 3556 +(3556) found +[1996] Forked 3557 +(3557) found +[1995] Forked 3558 +(3558) found +[1994] Forked 3559 +(3559) found +[1993] Forked 3560 +(3560) found +[1992] Forked 3561 +(3561) found +[1991] Forked 3562 +(3562) found +[1990] Forked 3563 +(3563) found +[1989] Forked 3564 +(3564) found +[1988] Forked 3565 +(3565) found +[1987] Forked 3566 +(3566) found +[1986] Forked 3567 +(3567) found +[1985] Forked 3568 +(3568) found +[1984] Forked 3569 +(3569) found +[1983] Forked 3570 +(3570) found +[1982] Forked 3571 +(3571) found +[1981] Forked 3572 +(3572) found +[1980] Forked 3573 +(3573) found +[1979] Forked 3574 +(3574) found +[1978] Forked 3575 +(3575) found +[1977] Forked 3576 +(3576) found +[1976] Forked 3577 +(3577) found +[1975] Forked 3578 +(3578) found +[1974] Forked 3579 +(3579) found +[1973] Forked 3580 +(3580) found +[1972] Forked 3581 +(3581) found +[1971] Forked 3582 +(3582) found +[1970] Forked 3583 +(3583) found +[1969] Forked 3584 +(3584) found +[1968] Forked 3585 +(3585) found +[1967] Forked 3586 +(3586) found +[1966] Forked 3587 +(3587) found +[1965] Forked 3588 +(3588) found +[1964] Forked 3589 +(3589) found +[1963] Forked 3590 +(3590) found +[1962] Forked 3591 +(3591) found +[1961] Forked 3592 +(3592) found +[1960] Forked 3593 +(3593) found +[1959] Forked 3594 +(3594) found +[1958] Forked 3595 +(3595) found +[1957] Forked 3596 +(3596) found +[1956] Forked 3597 +(3597) found +[1955] Forked 3598 +(3598) found +[1954] Forked 3599 +(3599) found +[1953] Forked 3600 +(3600) found +[1952] Forked 3601 +(3601) found +[1951] Forked 3602 +(3602) found +[1950] Forked 3603 +(3603) found +[1949] Forked 3604 +(3604) found +[1948] Forked 3605 +(3605) found +[1947] Forked 3606 +(3606) found +[1946] Forked 3607 +(3607) found +[1945] Forked 3608 +[1944] Forked 3609 +(3608) found +(3609) found +[1943] Forked 3610 +[1942] Forked 3611 +(3610) found +(3611) found +[1941] Forked 3612 +[1940] Forked 3613 +(3612) found +(3613) found +[1939] Forked 3614 +[1938] Forked 3615 +(3614) found +(3615) found +[1937] Forked 3616 +[1936] Forked 3617 +(3616) found +(3617) found +[1935] Forked 3618 +[1934] Forked 3619 +(3618) found +(3619) found +[1933] Forked 3620 +[1932] Forked 3621 +(3620) found +(3621) found +[1931] Forked 3622 +[1930] Forked 3623 +(3622) found +(3623) found +[1929] Forked 3624 +[1928] Forked 3625 +(3624) found +(3625) found +[1927] Forked 3626 +[1926] Forked 3627 +(3626) found +(3627) found +[1925] Forked 3628 +[1924] Forked 3629 +(3628) found +(3629) found +[1923] Forked 3630 +[1922] Forked 3631 +(3630) found +(3631) found +[1921] Forked 3632 +[1920] Forked 3633 +(3632) found +(3633) found +[1919] Forked 3634 +[1918] Forked 3635 +(3634) found +(3635) found +[1917] Forked 3636 +[1916] Forked 3637 +(3636) found +(3637) found +[1915] Forked 3638 +[1914] Forked 3639 +(3638) found +(3639) found +[1913] Forked 3640 +[1912] Forked 3641 +(3640) found +(3641) found +[1911] Forked 3642 +[1910] Forked 3643 +(3642) found +(3643) found +[1909] Forked 3644 +[1908] Forked 3645 +(3644) found +(3645) found +[1907] Forked 3646 +[1906] Forked 3647 +(3646) found +(3647) found +[1905] Forked 3648 +[1904] Forked 3649 +(3648) found +(3649) found +[1903] Forked 3650 +[1902] Forked 3651 +(3650) found +(3651) found +[1901] Forked 3652 +(3652) found +[1900] Forked 3653 +(3653) found +[1899] Forked 3654 +(3654) found +[1898] Forked 3655 +(3655) found +[1897] Forked 3656 +(3656) found +[1896] Forked 3658 +(3658) found +[1895] Forked 3659 +(3659) found +[1894] Forked 3660 +(3660) found +[1893] Forked 3661 +(3661) found +[1892] Forked 3662 +(3662) found +[1891] Forked 3663 +(3663) found +[1890] Forked 3664 +(3664) found +[1889] Forked 3665 +(3665) found +[1888] Forked 3666 +(3666) found +[1887] Forked 3667 +(3667) found +[1886] Forked 3669 +(3669) found +[1885] Forked 3670 +(3670) found +[1884] Forked 3671 +(3671) found +[1883] Forked 3672 +(3672) found +[1882] Forked 3673 +(3673) found +[1881] Forked 3674 +(3674) found +[1880] Forked 3675 +(3675) found +[1879] Forked 3676 +(3676) found +[1878] Forked 3677 +(3677) found +[1877] Forked 3678 +(3678) found +[1876] Forked 3679 +(3679) found +[1875] Forked 3680 +(3680) found +[1874] Forked 3681 +(3681) found +[1873] Forked 3682 +(3682) found +[1872] Forked 3683 +(3683) found +[1871] Forked 3684 +(3684) found +[1870] Forked 3685 +(3685) found +[1869] Forked 3686 +(3686) found +[1868] Forked 3687 +(3687) found +[1867] Forked 3688 +(3688) found +[1866] Forked 3689 +(3689) found +[1865] Forked 3690 +(3690) found +[1864] Forked 3691 +(3691) found +[1863] Forked 3692 +[1862] Forked 3693 +(3692) found +(3693) found +[1861] Forked 3694 +[1860] Forked 3695 +(3694) found +(3695) found +[1859] Forked 3696 +[1858] Forked 3697 +(3696) found +(3697) found +[1857] Forked 3698 +[1856] Forked 3699 +(3698) found +(3699) found +[1855] Forked 3700 +[1854] Forked 3701 +(3700) found +(3701) found +[1853] Forked 3702 +[1852] Forked 3703 +(3702) found +(3703) found +[1851] Forked 3704 +[1850] Forked 3705 +(3704) found +(3705) found +[1849] Forked 3706 +[1848] Forked 3707 +(3706) found +(3707) found +[1847] Forked 3708 +[1846] Forked 3709 +(3708) found +(3709) found +[1845] Forked 3710 +[1844] Forked 3711 +(3710) found +(3711) found +[1843] Forked 3712 +[1842] Forked 3713 +(3712) found +(3713) found +[1841] Forked 3714 +[1840] Forked 3715 +(3714) found +(3715) found +[1839] Forked 3716 +[1838] Forked 3717 +(3716) found +(3717) found +[1837] Forked 3718 +[1836] Forked 3719 +(3718) found +(3719) found +[1835] Forked 3720 +[1834] Forked 3721 +(3720) found +(3721) found +[1833] Forked 3722 +[1832] Forked 3723 +(3722) found +(3723) found +[1831] Forked 3724 +[1830] Forked 3725 +(3724) found +(3725) found +[1829] Forked 3726 +[1828] Forked 3727 +(3726) found +(3727) found +[1827] Forked 3728 +[1826] Forked 3729 +(3728) found +(3729) found +[1825] Forked 3730 +[1824] Forked 3731 +(3730) found +(3731) found +[1823] Forked 3732 +[1822] Forked 3733 +(3732) found +(3733) found +[1821] Forked 3734 +[1820] Forked 3735 +(3735) found +(3734) found +[1819] Forked 3736 +(3736) found +[1818] Forked 3737 +(3737) found +[1817] Forked 3738 +(3738) found +[1816] Forked 3739 +(3739) found +[1815] Forked 3740 +(3740) found +[1814] Forked 3741 +(3741) found +[1813] Forked 3742 +(3742) found +[1812] Forked 3743 +(3743) found +[1811] Forked 3744 +(3744) found +[1810] Forked 3745 +(3745) found +[1809] Forked 3746 +(3746) found +[1808] Forked 3747 +(3747) found +[1807] Forked 3748 +(3748) found +[1806] Forked 3749 +(3749) found +[1805] Forked 3750 +(3750) found +[1804] Forked 3751 +(3751) found +[1803] Forked 3752 +(3752) found +[1802] Forked 3753 +(3753) found +[1801] Forked 3754 +(3754) found +[1800] Forked 3755 +(3755) found +[1799] Forked 3756 +(3756) found +[1798] Forked 3757 +(3757) found +[1797] Forked 3758 +(3758) found +[1796] Forked 3759 +(3759) found +[1795] Forked 3760 +(3760) found +[1794] Forked 3761 +(3761) found +[1793] Forked 3762 +(3762) found +[1792] Forked 3763 +(3763) found +[1791] Forked 3764 +(3764) found +[1790] Forked 3765 +(3765) found +[1789] Forked 3766 +(3766) found +[1788] Forked 3767 +(3767) found +[1787] Forked 3768 +(3768) found +[1786] Forked 3769 +(3769) found +[1785] Forked 3770 +(3770) found +[1784] Forked 3771 +(3771) found +[1783] Forked 3772 +(3772) found +[1782] Forked 3773 +(3773) found +[1781] Forked 3774 +[1780] Forked 3775 +(3774) found +(3775) found +[1779] Forked 3776 +[1778] Forked 3777 +(3776) found +(3777) found +[1777] Forked 3778 +[1776] Forked 3779 +(3778) found +(3779) found +[1775] Forked 3780 +[1774] Forked 3781 +(3780) found +(3781) found +[1773] Forked 3782 +[1772] Forked 3783 +(3782) found +(3783) found +[1771] Forked 3784 +[1770] Forked 3785 +(3784) found +(3785) found +[1769] Forked 3786 +[1768] Forked 3787 +(3786) found +(3787) found +[1767] Forked 3788 +[1766] Forked 3789 +(3788) found +(3789) found +[1765] Forked 3790 +[1764] Forked 3791 +(3790) found +(3791) found +[1763] Forked 3792 +[1762] Forked 3793 +(3792) found +(3793) found +[1761] Forked 3794 +[1760] Forked 3795 +(3794) found +(3795) found +[1759] Forked 3796 +[1758] Forked 3797 +(3796) found +(3797) found +[1757] Forked 3798 +[1756] Forked 3799 +(3798) found +(3799) found +[1755] Forked 3800 +[1754] Forked 3801 +(3800) found +(3801) found +[1753] Forked 3802 +[1752] Forked 3803 +(3802) found +(3803) found +[1751] Forked 3804 +[1750] Forked 3805 +(3804) found +(3805) found +[1749] Forked 3806 +[1748] Forked 3807 +(3806) found +(3807) found +[1747] Forked 3808 +[1746] Forked 3809 +(3808) found +(3809) found +[1745] Forked 3810 +[1744] Forked 3811 +(3810) found +(3811) found +[1743] Forked 3812 +[1742] Forked 3814 +(3812) found +(3814) found +[1741] Forked 3815 +[1740] Forked 3816 +(3815) found +(3816) found +[1739] Forked 3817 +(3817) found +[1738] Forked 3818 +(3818) found +[1737] Forked 3819 +(3819) found +[1736] Forked 3820 +(3820) found +[1735] Forked 3821 +(3821) found +[1734] Forked 3822 +(3822) found +[1733] Forked 3823 +(3823) found +[1732] Forked 3824 +(3824) found +[1731] Forked 3825 +(3825) found +[1730] Forked 3826 +(3826) found +[1729] Forked 3827 +(3827) found +[1728] Forked 3828 +(3828) found +[1727] Forked 3829 +(3829) found +[1726] Forked 3830 +(3830) found +[1725] Forked 3831 +(3831) found +[1724] Forked 3832 +(3832) found +[1723] Forked 3833 +(3833) found +[1722] Forked 3834 +(3834) found +[1721] Forked 3835 +(3835) found +[1720] Forked 3836 +(3836) found +[1719] Forked 3837 +(3837) found +[1718] Forked 3838 +(3838) found +[1717] Forked 3839 +(3839) found +[1716] Forked 3840 +(3840) found +[1715] Forked 3841 +(3841) found +[1714] Forked 3842 +(3842) found +[1713] Forked 3843 +(3843) found +[1712] Forked 3844 +(3844) found +[1711] Forked 3845 +(3845) found +[1710] Forked 3846 +(3846) found +[1709] Forked 3847 +(3847) found +[1708] Forked 3848 +(3848) found +[1707] Forked 3849 +(3849) found +[1706] Forked 3850 +(3850) found +[1705] Forked 3851 +(3851) found +[1704] Forked 3852 +(3852) found +[1703] Forked 3853 +(3853) found +[1702] Forked 3854 +(3854) found +[1701] Forked 3855 +(3855) found +[1700] Forked 3856 +[1699] Forked 3857 +(3856) found +(3857) found +[1698] Forked 3858 +[1697] Forked 3859 +(3858) found +(3859) found +[1696] Forked 3860 +[1695] Forked 3861 +(3860) found +(3861) found +[1694] Forked 3862 +[1693] Forked 3863 +(3862) found +(3863) found +[1692] Forked 3864 +[1691] Forked 3865 +(3864) found +(3865) found +[1690] Forked 3866 +[1689] Forked 3867 +(3866) found +(3867) found +[1688] Forked 3868 +[1687] Forked 3869 +(3868) found +(3869) found +[1686] Forked 3870 +[1685] Forked 3871 +(3870) found +(3871) found +[1684] Forked 3872 +[1683] Forked 3873 +(3872) found +(3873) found +[1682] Forked 3874 +[1681] Forked 3875 +(3874) found +(3875) found +[1680] Forked 3876 +[1679] Forked 3877 +(3876) found +(3877) found +[1678] Forked 3878 +[1677] Forked 3879 +(3878) found +(3879) found +[1676] Forked 3880 +[1675] Forked 3881 +(3880) found +(3881) found +[1674] Forked 3882 +[1673] Forked 3883 +(3882) found +(3883) found +[1672] Forked 3884 +[1671] Forked 3885 +(3884) found +(3885) found +[1670] Forked 3886 +[1669] Forked 3887 +(3886) found +(3887) found +[1668] Forked 3888 +[1667] Forked 3889 +(3888) found +(3889) found +[1666] Forked 3890 +[1665] Forked 3891 +(3890) found +(3891) found +[1664] Forked 3892 +[1663] Forked 3893 +(3892) found +(3893) found +[1662] Forked 3894 +[1661] Forked 3896 +(3894) found +(3896) found +[1660] Forked 3897 +(3897) found +[1659] Forked 3898 +(3898) found +[1658] Forked 3899 +(3899) found +[1657] Forked 3900 +(3900) found +[1656] Forked 3901 +(3901) found +[1655] Forked 3902 +(3902) found +[1654] Forked 3903 +(3903) found +[1653] Forked 3904 +(3904) found +[1652] Forked 3905 +(3905) found +[1651] Forked 3906 +(3906) found +[1650] Forked 3907 +(3907) found +[1649] Forked 3908 +(3908) found +[1648] Forked 3909 +(3909) found +[1647] Forked 3910 +(3910) found +[1646] Forked 3911 +(3911) found +[1645] Forked 3912 +(3912) found +[1644] Forked 3913 +(3913) found +[1643] Forked 3914 +(3914) found +[1642] Forked 3915 +(3915) found +[1641] Forked 3916 +(3916) found +[1640] Forked 3917 +(3917) found +[1639] Forked 3919 +(3919) found +[1638] Forked 3920 +(3920) found +[1637] Forked 3921 +(3921) found +[1636] Forked 3922 +(3922) found +[1635] Forked 3923 +(3923) found +[1634] Forked 3924 +(3924) found +[1633] Forked 3925 +(3925) found +[1632] Forked 3926 +(3926) found +[1631] Forked 3927 +(3927) found +[1630] Forked 3928 +(3928) found +[1629] Forked 3929 +(3929) found +[1628] Forked 3930 +(3930) found +[1627] Forked 3931 +(3931) found +[1626] Forked 3932 +(3932) found +[1625] Forked 3933 +(3933) found +[1624] Forked 3934 +(3934) found +[1623] Forked 3935 +(3935) found +[1622] Forked 3936 +(3936) found +[1621] Forked 3937 +(3937) found +[1620] Forked 3938 +(3938) found +[1619] Forked 3939 +(3939) found +[1618] Forked 3940 +(3940) found +[1617] Forked 3941 +(3941) found +[1616] Forked 3942 +(3942) found +[1615] Forked 3943 +(3943) found +[1614] Forked 3944 +(3944) found +[1613] Forked 3945 +(3945) found +[1612] Forked 3946 +(3946) found +[1611] Forked 3947 +(3947) found +[1610] Forked 3948 +(3948) found +[1609] Forked 3949 +(3949) found +[1608] Forked 3950 +(3950) found +[1607] Forked 3951 +(3951) found +[1606] Forked 3952 +(3952) found +[1605] Forked 3953 +(3953) found +[1604] Forked 3954 +(3954) found +[1603] Forked 3955 +(3955) found +[1602] Forked 3956 +(3956) found +[1601] Forked 3957 +(3957) found +[1600] Forked 3958 +(3958) found +[1599] Forked 3959 +(3959) found +[1598] Forked 3960 +(3960) found +[1597] Forked 3961 +(3961) found +[1596] Forked 3962 +(3962) found +[1595] Forked 3963 +(3963) found +[1594] Forked 3964 +(3964) found +[1593] Forked 3965 +(3965) found +[1592] Forked 3966 +(3966) found +[1591] Forked 3967 +(3967) found +[1590] Forked 3968 +(3968) found +[1589] Forked 3969 +[1588] Forked 3970 +(3969) found +(3970) found +[1587] Forked 3971 +[1586] Forked 3972 +(3971) found +(3972) found +[1585] Forked 3973 +[1584] Forked 3974 +(3973) found +(3974) found +[1583] Forked 3975 +[1582] Forked 3976 +(3975) found +(3976) found +[1581] Forked 3977 +[1580] Forked 3978 +(3977) found +(3978) found +[1579] Forked 3979 +[1578] Forked 3980 +(3979) found +(3980) found +[1577] Forked 3981 +[1576] Forked 3982 +(3981) found +(3982) found +[1575] Forked 3983 +[1574] Forked 3984 +(3983) found +(3984) found +[1573] Forked 3985 +[1572] Forked 3986 +(3985) found +(3986) found +[1571] Forked 3987 +[1570] Forked 3988 +(3987) found +(3988) found +[1569] Forked 3989 +[1568] Forked 3990 +(3989) found +(3990) found +[1567] Forked 3991 +[1566] Forked 3992 +(3991) found +(3992) found +[1565] Forked 3993 +[1564] Forked 3994 +(3993) found +(3994) found +[1563] Forked 3995 +[1562] Forked 3996 +(3995) found +(3996) found +[1561] Forked 3997 +[1560] Forked 3998 +(3997) found +(3998) found +[1559] Forked 3999 +[1558] Forked 4000 +(3999) found +(4000) found +[1557] Forked 4001 +[1556] Forked 4002 +(4001) found +(4002) found +[1555] Forked 4003 +[1554] Forked 4004 +(4003) found +(4004) found +[1553] Forked 4005 +[1552] Forked 4006 +(4005) found +(4006) found +[1551] Forked 4007 +[1550] Forked 4008 +(4007) found +(4008) found +[1549] Forked 4009 +[1548] Forked 4010 +(4009) found +(4010) found +[1547] Forked 4011 +[1546] Forked 4012 +(4011) found +(4012) found +[1545] Forked 4013 +[1544] Forked 4015 +(4013) found +(4015) found +[1543] Forked 4016 +(4016) found +[1542] Forked 4017 +(4017) found +[1541] Forked 4018 +(4018) found +[1540] Forked 4019 +(4019) found +[1539] Forked 4020 +(4020) found +[1538] Forked 4021 +(4021) found +[1537] Forked 4022 +(4022) found +[1536] Forked 4023 +(4023) found +[1535] Forked 4024 +(4024) found +[1534] Forked 4025 +(4025) found +[1533] Forked 4026 +(4026) found +[1532] Forked 4028 +(4028) found +[1531] Forked 4029 +(4029) found +[1530] Forked 4030 +(4030) found +[1529] Forked 4031 +(4031) found +[1528] Forked 4032 +(4032) found +[1527] Forked 4034 +(4034) found +[1526] Forked 4035 +(4035) found +[1525] Forked 4036 +(4036) found +[1524] Forked 4037 +(4037) found +[1523] Forked 4038 +(4038) found +[1522] Forked 4039 +(4039) found +[1521] Forked 4040 +(4040) found +[1520] Forked 4041 +(4041) found +[1519] Forked 4042 +(4042) found +[1518] Forked 4043 +(4043) found +[1517] Forked 4044 +(4044) found +[1516] Forked 4045 +(4045) found +[1515] Forked 4046 +(4046) found +[1514] Forked 4047 +(4047) found +[1513] Forked 4048 +(4048) found +[1512] Forked 4049 +(4049) found +[1511] Forked 4052 +(4052) found +[1510] Forked 4053 +(4053) found +[1509] Forked 4054 +(4054) found +[1508] Forked 4055 +(4055) found +[1507] Forked 4056 +[1506] Forked 4057 +(4056) found +(4057) found +[1505] Forked 4058 +[1504] Forked 4059 +(4058) found +(4059) found +[1503] Forked 4060 +[1502] Forked 4061 +(4060) found +(4061) found +[1501] Forked 4062 +[1500] Forked 4063 +(4062) found +(4063) found +[1499] Forked 4064 +[1498] Forked 4065 +(4064) found +(4065) found +[1497] Forked 4066 +[1496] Forked 4067 +(4066) found +(4067) found +[1495] Forked 4068 +[1494] Forked 4069 +(4068) found +(4069) found +[1493] Forked 4070 +[1492] Forked 4071 +(4070) found +(4071) found +[1491] Forked 4072 +[1490] Forked 4074 +(4072) found +(4074) found +[1489] Forked 4075 +[1488] Forked 4076 +(4075) found +(4076) found +[1487] Forked 4077 +[1486] Forked 4078 +(4077) found +(4078) found +[1485] Forked 4079 +[1484] Forked 4080 +(4079) found +(4080) found +[1483] Forked 4081 +[1482] Forked 4082 +(4081) found +(4082) found +[1481] Forked 4083 +[1480] Forked 4086 +(4083) found +(4086) found +[1479] Forked 4088 +[1478] Forked 4089 +(4088) found +(4089) found +[1477] Forked 4090 +[1476] Forked 4093 +(4090) found +(4093) found +[1475] Forked 4095 +[1474] Forked 4096 +(4095) found +(4096) found +[1473] Forked 4097 +[1472] Forked 4098 +(4097) found +(4098) found +[1471] Forked 4099 +[1470] Forked 4100 +(4099) found +(4100) found +[1469] Forked 4101 +[1468] Forked 4102 +(4101) found +(4102) found +[1467] Forked 4103 +[1466] Forked 4104 +(4103) found +(4104) found +[1465] Forked 4105 +[1464] Forked 4106 +(4105) found +(4106) found +[1463] Forked 4107 +[1462] Forked 4108 +(4107) found +(4108) found +[1461] Forked 4109 +[1460] Forked 4110 +(4109) found +(4110) found +[1459] Forked 4111 +[1458] Forked 4112 +(4111) found +(4112) found +[1457] Forked 4113 +[1456] Forked 4114 +(4113) found +(4114) found +[1455] Forked 4115 +[1454] Forked 4116 +(4115) found +(4116) found +[1453] Forked 4117 +[1452] Forked 4118 +(4117) found +(4118) found +[1451] Forked 4119 +[1450] Forked 4120 +(4119) found +(4120) found +[1449] Forked 4121 +[1448] Forked 4122 +(4121) found +(4122) found +[1447] Forked 4123 +[1446] Forked 4124 +(4123) found +(4124) found +[1445] Forked 4125 +[1444] Forked 4126 +(4125) found +(4126) found +[1443] Forked 4127 +[1442] Forked 4128 +(4127) found +(4128) found +[1441] Forked 4129 +[1440] Forked 4130 +(4129) found +(4130) found +[1439] Forked 4131 +[1438] Forked 4132 +(4131) found +(4132) found +[1437] Forked 4133 +[1436] Forked 4134 +(4133) found +(4134) found +[1435] Forked 4135 +[1434] Forked 4136 +(4135) found +(4136) found +[1433] Forked 4137 +[1432] Forked 4138 +(4137) found +(4138) found +[1431] Forked 4139 +[1430] Forked 4140 +(4139) found +(4140) found +[1429] Forked 4141 +[1428] Forked 4142 +(4141) found +(4142) found +[1427] Forked 4143 +[1426] Forked 4144 +(4143) found +(4144) found +[1425] Forked 4145 +[1424] Forked 4146 +(4145) found +(4146) found +[1423] Forked 4147 +[1422] Forked 4148 +(4147) found +(4148) found +[1421] Forked 4149 +[1420] Forked 4150 +(4149) found +(4150) found +[1419] Forked 4151 +[1418] Forked 4152 +(4151) found +(4152) found +[1417] Forked 4153 +(4153) found +[1416] Forked 4154 +(4154) found +[1415] Forked 4155 +(4155) found +[1414] Forked 4156 +(4156) found +[1413] Forked 4157 +(4157) found +[1412] Forked 4158 +(4158) found +[1411] Forked 4159 +(4159) found +[1410] Forked 4160 +(4160) found +[1409] Forked 4161 +(4161) found +[1408] Forked 4162 +(4162) found +[1407] Forked 4163 +(4163) found +[1406] Forked 4164 +(4164) found +[1405] Forked 4165 +(4165) found +[1404] Forked 4166 +(4166) found +[1403] Forked 4167 +(4167) found +[1402] Forked 4168 +(4168) found +[1401] Forked 4169 +(4169) found +[1400] Forked 4170 +(4170) found +[1399] Forked 4171 +(4171) found +[1398] Forked 4172 +(4172) found +[1397] Forked 4173 +(4173) found +[1396] Forked 4174 +(4174) found +[1395] Forked 4175 +(4175) found +[1394] Forked 4176 +(4176) found +[1393] Forked 4177 +(4177) found +[1392] Forked 4178 +(4178) found +[1391] Forked 4179 +(4179) found +[1390] Forked 4180 +(4180) found +[1389] Forked 4181 +(4181) found +[1388] Forked 4182 +(4182) found +[1387] Forked 4183 +(4183) found +[1386] Forked 4184 +(4184) found +[1385] Forked 4185 +(4185) found +[1384] Forked 4186 +(4186) found +[1383] Forked 4187 +(4187) found +[1382] Forked 4188 +(4188) found +[1381] Forked 4189 +(4189) found +[1380] Forked 4190 +(4190) found +[1379] Forked 4191 +[1378] Forked 4192 +(4191) found +(4192) found +[1377] Forked 4193 +[1376] Forked 4194 +(4193) found +(4194) found +[1375] Forked 4195 +[1374] Forked 4196 +(4195) found +(4196) found +[1373] Forked 4197 +[1372] Forked 4198 +(4197) found +(4198) found +[1371] Forked 4199 +[1370] Forked 4200 +(4199) found +(4200) found +[1369] Forked 4201 +[1368] Forked 4202 +(4201) found +(4202) found +[1367] Forked 4203 +[1366] Forked 4204 +(4203) found +(4204) found +[1365] Forked 4205 +[1364] Forked 4206 +(4205) found +(4206) found +[1363] Forked 4207 +[1362] Forked 4208 +(4207) found +(4208) found +[1361] Forked 4209 +[1360] Forked 4210 +(4209) found +(4210) found +[1359] Forked 4211 +[1358] Forked 4212 +(4211) found +(4212) found +[1357] Forked 4213 +[1356] Forked 4214 +(4213) found +(4214) found +[1355] Forked 4215 +[1354] Forked 4216 +(4215) found +(4216) found +[1353] Forked 4217 +[1352] Forked 4218 +(4217) found +(4218) found +[1351] Forked 4219 +[1350] Forked 4220 +(4219) found +(4220) found +[1349] Forked 4221 +[1348] Forked 4222 +(4221) found +(4222) found +[1347] Forked 4223 +[1346] Forked 4224 +(4223) found +(4224) found +[1345] Forked 4225 +[1344] Forked 4226 +(4225) found +(4226) found +[1343] Forked 4227 +[1342] Forked 4228 +(4227) found +(4228) found +[1341] Forked 4229 +(4229) found +[1340] Forked 4230 +[1339] Forked 4231 +(4230) found +(4231) found +[1338] Forked 4232 +[1337] Forked 4233 +(4232) found +(4233) found +[1336] Forked 4234 +(4234) found +[1335] Forked 4235 +(4235) found +[1334] Forked 4236 +(4236) found +[1333] Forked 4237 +(4237) found +[1332] Forked 4238 +(4238) found +[1331] Forked 4239 +(4239) found +[1330] Forked 4240 +(4240) found +[1329] Forked 4242 +(4242) found +[1328] Forked 4243 +(4243) found +[1327] Forked 4244 +(4244) found +[1326] Forked 4245 +(4245) found +[1325] Forked 4247 +(4247) found +[1324] Forked 4248 +(4248) found +[1323] Forked 4249 +(4249) found +[1322] Forked 4250 +(4250) found +[1321] Forked 4251 +(4251) found +[1320] Forked 4252 +(4252) found +[1319] Forked 4254 +(4254) found +[1318] Forked 4255 +(4255) found +[1317] Forked 4256 +(4256) found +[1316] Forked 4257 +(4257) found +[1315] Forked 4258 +(4258) found +[1314] Forked 4259 +(4259) found +[1313] Forked 4260 +(4260) found +[1312] Forked 4261 +(4261) found +[1311] Forked 4262 +(4262) found +[1310] Forked 4263 +(4263) found +[1309] Forked 4264 +(4264) found +[1308] Forked 4265 +(4265) found +[1307] Forked 4266 +(4266) found +[1306] Forked 4267 +(4267) found +[1305] Forked 4268 +(4268) found +[1304] Forked 4269 +(4269) found +[1303] Forked 4270 +(4270) found +[1302] Forked 4271 +(4271) found +[1301] Forked 4272 +(4272) found +[1300] Forked 4273 +(4273) found +[1299] Forked 4274 +(4274) found +[1298] Forked 4275 +(4275) found +[1297] Forked 4276 +[1296] Forked 4277 +(4276) found +(4277) found +[1295] Forked 4278 +[1294] Forked 4279 +(4278) found +(4279) found +[1293] Forked 4280 +[1292] Forked 4281 +(4280) found +(4281) found +[1291] Forked 4282 +[1290] Forked 4284 +(4282) found +(4284) found +[1289] Forked 4285 +[1288] Forked 4286 +(4285) found +(4286) found +[1287] Forked 4287 +[1286] Forked 4288 +(4287) found +(4288) found +[1285] Forked 4289 +[1284] Forked 4290 +(4290) found +(4289) found +[1283] Forked 4291 +(4291) found +[1282] Forked 4292 +(4292) found +[1281] Forked 4293 +(4293) found +[1280] Forked 4294 +(4294) found +[1279] Forked 4295 +(4295) found +[1278] Forked 4296 +(4296) found +[1277] Forked 4297 +(4297) found +[1276] Forked 4298 +(4298) found +[1275] Forked 4299 +(4299) found +[1274] Forked 4300 +(4300) found +[1273] Forked 4301 +(4301) found +[1272] Forked 4302 +(4302) found +[1271] Forked 4303 +(4303) found +[1270] Forked 4304 +(4304) found +[1269] Forked 4305 +(4305) found +[1268] Forked 4306 +(4306) found +[1267] Forked 4307 +(4307) found +[1266] Forked 4308 +(4308) found +[1265] Forked 4309 +(4309) found +[1264] Forked 4310 +(4310) found +[1263] Forked 4311 +(4311) found +[1262] Forked 4312 +(4312) found +[1261] Forked 4313 +(4313) found +[1260] Forked 4314 +(4314) found +[1259] Forked 4315 +(4315) found +[1258] Forked 4316 +(4316) found +[1257] Forked 4317 +(4317) found +[1256] Forked 4318 +(4318) found +[1255] Forked 4319 +(4319) found +[1254] Forked 4320 +(4320) found +[1253] Forked 4321 +(4321) found +[1252] Forked 4322 +(4322) found +[1251] Forked 4323 +(4323) found +[1250] Forked 4324 +(4324) found +[1249] Forked 4325 +(4325) found +[1248] Forked 4326 +(4326) found +[1247] Forked 4327 +(4327) found +[1246] Forked 4328 +(4328) found +[1245] Forked 4329 +(4329) found +[1244] Forked 4330 +(4330) found +[1243] Forked 4331 +(4331) found +[1242] Forked 4332 +(4332) found +[1241] Forked 4333 +(4333) found +[1240] Forked 4334 +(4334) found +[1239] Forked 4335 +(4335) found +[1238] Forked 4336 +(4336) found +[1237] Forked 4337 +(4337) found +[1236] Forked 4338 +(4338) found +[1235] Forked 4339 +(4339) found +[1234] Forked 4340 +(4340) found +[1233] Forked 4341 +(4341) found +[1232] Forked 4342 +(4342) found +[1231] Forked 4343 +(4343) found +[1230] Forked 4344 +(4344) found +[1229] Forked 4345 +(4345) found +[1228] Forked 4346 +(4346) found +[1227] Forked 4347 +(4347) found +[1226] Forked 4348 +(4348) found +[1225] Forked 4349 +[1224] Forked 4350 +(4349) found +(4350) found +[1223] Forked 4351 +[1222] Forked 4352 +(4351) found +(4352) found +[1221] Forked 4353 +[1220] Forked 4354 +(4353) found +(4354) found +[1219] Forked 4355 +[1218] Forked 4356 +(4355) found +(4356) found +[1217] Forked 4357 +[1216] Forked 4358 +(4357) found +(4358) found +[1215] Forked 4359 +[1214] Forked 4360 +(4359) found +(4360) found +[1213] Forked 4361 +[1212] Forked 4362 +(4361) found +(4362) found +[1211] Forked 4363 +[1210] Forked 4364 +(4363) found +(4364) found +[1209] Forked 4365 +[1208] Forked 4366 +(4365) found +(4366) found +[1207] Forked 4367 +[1206] Forked 4368 +(4367) found +(4368) found +[1205] Forked 4369 +[1204] Forked 4370 +(4369) found +(4370) found +[1203] Forked 4371 +[1202] Forked 4372 +(4371) found +(4372) found +[1201] Forked 4373 +[1200] Forked 4374 +(4373) found +(4374) found +[1199] Forked 4375 +[1198] Forked 4376 +(4375) found +(4376) found +[1197] Forked 4377 +[1196] Forked 4378 +(4377) found +(4378) found +[1195] Forked 4379 +[1194] Forked 4380 +(4379) found +(4380) found +[1193] Forked 4381 +[1192] Forked 4382 +(4381) found +(4382) found +[1191] Forked 4383 +[1190] Forked 4384 +(4383) found +(4384) found +[1189] Forked 4385 +[1188] Forked 4386 +(4385) found +(4386) found +[1187] Forked 4387 +[1186] Forked 4388 +(4387) found +(4388) found +[1185] Forked 4389 +[1184] Forked 4390 +(4389) found +(4390) found +[1183] Forked 4391 +[1182] Forked 4392 +(4391) found +(4392) found +[1181] Forked 4393 +(4393) found +[1180] Forked 4394 +(4394) found +[1179] Forked 4395 +(4395) found +[1178] Forked 4396 +(4396) found +[1177] Forked 4397 +(4397) found +[1176] Forked 4398 +(4398) found +[1175] Forked 4399 +(4399) found +[1174] Forked 4400 +(4400) found +[1173] Forked 4401 +(4401) found +[1172] Forked 4402 +(4402) found +[1171] Forked 4403 +(4403) found +[1170] Forked 4404 +(4404) found +[1169] Forked 4405 +(4405) found +[1168] Forked 4406 +(4406) found +[1167] Forked 4407 +(4407) found +[1166] Forked 4408 +(4408) found +[1165] Forked 4409 +(4409) found +[1164] Forked 4410 +(4410) found +[1163] Forked 4411 +(4411) found +[1162] Forked 4412 +(4412) found +[1161] Forked 4413 +(4413) found +[1160] Forked 4414 +(4414) found +[1159] Forked 4415 +(4415) found +[1158] Forked 4416 +(4416) found +[1157] Forked 4417 +(4417) found +[1156] Forked 4418 +(4418) found +[1155] Forked 4419 +(4419) found +[1154] Forked 4420 +(4420) found +[1153] Forked 4421 +(4421) found +[1152] Forked 4422 +(4422) found +[1151] Forked 4423 +(4423) found +[1150] Forked 4424 +(4424) found +[1149] Forked 4425 +(4425) found +[1148] Forked 4426 +(4426) found +[1147] Forked 4427 +(4427) found +[1146] Forked 4428 +(4428) found +[1145] Forked 4429 +(4429) found +[1144] Forked 4430 +(4430) found +[1143] Forked 4431 +[1142] Forked 4432 +(4431) found +(4432) found +[1141] Forked 4433 +[1140] Forked 4434 +(4433) found +(4434) found +[1139] Forked 4435 +[1138] Forked 4436 +(4435) found +(4436) found +[1137] Forked 4437 +[1136] Forked 4438 +(4437) found +(4438) found +[1135] Forked 4439 +[1134] Forked 4440 +(4439) found +(4440) found +[1133] Forked 4441 +[1132] Forked 4442 +(4441) found +(4442) found +[1131] Forked 4443 +[1130] Forked 4444 +(4443) found +(4444) found +[1129] Forked 4445 +[1128] Forked 4446 +(4445) found +(4446) found +[1127] Forked 4447 +[1126] Forked 4448 +(4447) found +(4448) found +[1125] Forked 4449 +[1124] Forked 4450 +(4449) found +(4450) found +[1123] Forked 4451 +[1122] Forked 4452 +(4451) found +(4452) found +[1121] Forked 4453 +[1120] Forked 4454 +(4453) found +(4454) found +[1119] Forked 4455 +[1118] Forked 4456 +(4455) found +(4456) found +[1117] Forked 4457 +[1116] Forked 4458 +(4457) found +(4458) found +[1115] Forked 4459 +[1114] Forked 4460 +(4459) found +(4460) found +[1113] Forked 4461 +[1112] Forked 4462 +(4461) found +(4462) found +[1111] Forked 4463 +[1110] Forked 4464 +(4463) found +(4464) found +[1109] Forked 4465 +[1108] Forked 4466 +(4465) found +(4466) found +[1107] Forked 4467 +[1106] Forked 4468 +(4467) found +(4468) found +[1105] Forked 4469 +[1104] Forked 4470 +(4469) found +(4470) found +[1103] Forked 4471 +[1102] Forked 4472 +(4471) found +(4472) found +[1101] Forked 4473 +[1100] Forked 4474 +(4473) found +(4474) found +[1099] Forked 4475 +(4475) found +[1098] Forked 4476 +(4476) found +[1097] Forked 4477 +(4477) found +[1096] Forked 4478 +(4478) found +[1095] Forked 4479 +(4479) found +[1094] Forked 4480 +(4480) found +[1093] Forked 4481 +(4481) found +[1092] Forked 4482 +(4482) found +[1091] Forked 4483 +(4483) found +[1090] Forked 4484 +(4484) found +[1089] Forked 4485 +(4485) found +[1088] Forked 4486 +(4486) found +[1087] Forked 4487 +(4487) found +[1086] Forked 4488 +(4488) found +[1085] Forked 4489 +(4489) found +[1084] Forked 4490 +(4490) found +[1083] Forked 4491 +(4491) found +[1082] Forked 4492 +(4492) found +[1081] Forked 4493 +(4493) found +[1080] Forked 4494 +(4494) found +[1079] Forked 4495 +(4495) found +[1078] Forked 4496 +(4496) found +[1077] Forked 4497 +(4497) found +[1076] Forked 4498 +(4498) found +[1075] Forked 4499 +(4499) found +[1074] Forked 4500 +(4500) found +[1073] Forked 4501 +(4501) found +[1072] Forked 4502 +(4502) found +[1071] Forked 4503 +(4503) found +[1070] Forked 4504 +(4504) found +[1069] Forked 4505 +(4505) found +[1068] Forked 4506 +(4506) found +[1067] Forked 4507 +(4507) found +[1066] Forked 4508 +(4508) found +[1065] Forked 4509 +(4509) found +[1064] Forked 4510 +(4510) found +[1063] Forked 4511 +(4511) found +[1062] Forked 4512 +(4512) found +[1061] Forked 4513 +(4513) found +[1060] Forked 4514 +[1059] Forked 4515 +(4514) found +(4515) found +[1058] Forked 4516 +[1057] Forked 4517 +(4516) found +(4517) found +[1056] Forked 4518 +[1055] Forked 4519 +(4518) found +(4519) found +[1054] Forked 4520 +[1053] Forked 4521 +(4520) found +(4521) found +[1052] Forked 4522 +[1051] Forked 4523 +(4522) found +(4523) found +[1050] Forked 4524 +[1049] Forked 4525 +(4524) found +(4525) found +[1048] Forked 4526 +[1047] Forked 4527 +(4526) found +(4527) found +[1046] Forked 4528 +[1045] Forked 4529 +(4528) found +(4529) found +[1044] Forked 4530 +[1043] Forked 4531 +(4530) found +(4531) found +[1042] Forked 4532 +[1041] Forked 4533 +(4532) found +(4533) found +[1040] Forked 4534 +(4534) found +[1039] Forked 4535 +(4535) found +[1038] Forked 4536 +[1037] Forked 4537 +(4536) found +(4537) found +[1036] Forked 4538 +[1035] Forked 4539 +(4538) found +(4539) found +[1034] Forked 4540 +[1033] Forked 4541 +(4540) found +(4541) found +[1032] Forked 4542 +[1031] Forked 4543 +(4542) found +(4543) found +[1030] Forked 4544 +[1029] Forked 4545 +(4544) found +(4545) found +[1028] Forked 4546 +[1027] Forked 4547 +(4546) found +(4547) found +[1026] Forked 4548 +[1025] Forked 4549 +(4548) found +(4549) found +[1024] Forked 4550 +[1023] Forked 4551 +(4550) found +(4551) found +[1022] Forked 4552 +[1021] Forked 4553 +(4552) found +(4553) found +[1020] Forked 4554 +[1019] Forked 4555 +(4554) found +(4555) found +[1018] Forked 4556 +(4556) found +[1017] Forked 4557 +(4557) found +[1016] Forked 4558 +(4558) found +[1015] Forked 4559 +(4559) found +[1014] Forked 4560 +(4560) found +[1013] Forked 4561 +(4561) found +[1012] Forked 4562 +(4562) found +[1011] Forked 4563 +(4563) found +[1010] Forked 4564 +(4564) found +[1009] Forked 4565 +(4565) found +[1008] Forked 4566 +(4566) found +[1007] Forked 4567 +(4567) found +[1006] Forked 4568 +(4568) found +[1005] Forked 4569 +(4569) found +[1004] Forked 4570 +(4570) found +[1003] Forked 4571 +(4571) found +[1002] Forked 4572 +(4572) found +[1001] Forked 4573 +(4573) found +[1000] Forked 4574 +(4574) found +[999] Forked 4575 +(4575) found +[998] Forked 4576 +(4576) found +[997] Forked 4577 +(4577) found +[996] Forked 4578 +(4578) found +[995] Forked 4579 +(4579) found +[994] Forked 4580 +(4580) found +[993] Forked 4581 +(4581) found +[992] Forked 4582 +(4582) found +[991] Forked 4583 +(4583) found +[990] Forked 4584 +(4584) found +[989] Forked 4585 +(4585) found +[988] Forked 4586 +(4586) found +[987] Forked 4587 +(4587) found +[986] Forked 4588 +(4588) found +[985] Forked 4589 +(4589) found +[984] Forked 4590 +(4590) found +[983] Forked 4591 +(4591) found +[982] Forked 4593 +(4593) found +[981] Forked 4594 +(4594) found +[980] Forked 4595 +(4595) found +[979] Forked 4596 +[978] Forked 4597 +(4596) found +(4597) found +[977] Forked 4598 +[976] Forked 4599 +(4598) found +(4599) found +[975] Forked 4600 +[974] Forked 4601 +(4600) found +(4601) found +[973] Forked 4602 +[972] Forked 4603 +(4602) found +(4603) found +[971] Forked 4604 +[970] Forked 4605 +(4604) found +(4605) found +[969] Forked 4606 +[968] Forked 4607 +(4606) found +(4607) found +[967] Forked 4608 +[966] Forked 4609 +(4608) found +(4609) found +[965] Forked 4610 +[964] Forked 4611 +(4610) found +(4611) found +[963] Forked 4612 +[962] Forked 4613 +(4612) found +(4613) found +[961] Forked 4614 +[960] Forked 4615 +(4614) found +(4615) found +[959] Forked 4616 +[958] Forked 4617 +(4616) found +(4617) found +[957] Forked 4618 +[956] Forked 4619 +(4618) found +(4619) found +[955] Forked 4620 +[954] Forked 4621 +(4620) found +(4621) found +[953] Forked 4622 +[952] Forked 4623 +(4623) found +(4622) found +[951] Forked 4624 +(4624) found +[950] Forked 4625 +(4625) found +[949] Forked 4626 +(4626) found +[948] Forked 4627 +(4627) found +[947] Forked 4628 +(4628) found +[946] Forked 4629 +(4629) found +[945] Forked 4630 +(4630) found +[944] Forked 4631 +(4631) found +[943] Forked 4632 +(4632) found +[942] Forked 4633 +[941] Forked 4634 +(4633) found +(4634) found +[940] Forked 4635 +[939] Forked 4636 +(4636) found +(4635) found +[938] Forked 4637 +(4637) found +[937] Forked 4638 +(4638) found +[936] Forked 4639 +(4639) found +[935] Forked 4640 +(4640) found +[934] Forked 4641 +(4641) found +[933] Forked 4642 +(4642) found +[932] Forked 4643 +(4643) found +[931] Forked 4644 +(4644) found +[930] Forked 4645 +(4645) found +[929] Forked 4646 +(4646) found +[928] Forked 4647 +(4647) found +[927] Forked 4648 +(4648) found +[926] Forked 4649 +(4649) found +[925] Forked 4650 +(4650) found +[924] Forked 4651 +(4651) found +[923] Forked 4652 +(4652) found +[922] Forked 4653 +(4653) found +[921] Forked 4654 +(4654) found +[920] Forked 4655 +(4655) found +[919] Forked 4656 +(4656) found +[918] Forked 4657 +(4657) found +[917] Forked 4658 +(4658) found +[916] Forked 4659 +(4659) found +[915] Forked 4660 +(4660) found +[914] Forked 4661 +(4661) found +[913] Forked 4662 +(4662) found +[912] Forked 4663 +(4663) found +[911] Forked 4664 +(4664) found +[910] Forked 4665 +(4665) found +[909] Forked 4666 +(4666) found +[908] Forked 4667 +(4667) found +[907] Forked 4668 +(4668) found +[906] Forked 4669 +(4669) found +[905] Forked 4670 +(4670) found +[904] Forked 4671 +(4671) found +[903] Forked 4672 +(4672) found +[902] Forked 4673 +(4673) found +[901] Forked 4674 +[900] Forked 4675 +(4674) found +(4675) found +[899] Forked 4676 +[898] Forked 4677 +(4676) found +(4677) found +[897] Forked 4678 +[896] Forked 4679 +(4678) found +(4679) found +[895] Forked 4680 +[894] Forked 4681 +(4680) found +(4681) found +[893] Forked 4682 +[892] Forked 4683 +(4682) found +(4683) found +[891] Forked 4684 +[890] Forked 4685 +(4684) found +(4685) found +[889] Forked 4686 +[888] Forked 4687 +(4686) found +(4687) found +[887] Forked 4688 +[886] Forked 4689 +(4688) found +(4689) found +[885] Forked 4690 +[884] Forked 4691 +(4690) found +(4691) found +[883] Forked 4692 +[882] Forked 4693 +(4692) found +(4693) found +[881] Forked 4694 +[880] Forked 4695 +(4694) found +(4695) found +[879] Forked 4696 +[878] Forked 4697 +(4696) found +(4697) found +[877] Forked 4698 +[876] Forked 4699 +(4698) found +(4699) found +[875] Forked 4700 +[874] Forked 4701 +(4700) found +(4701) found +[873] Forked 4702 +[872] Forked 4703 +(4702) found +(4703) found +[871] Forked 4704 +[870] Forked 4705 +(4704) found +(4705) found +[869] Forked 4706 +[868] Forked 4707 +(4706) found +(4707) found +[867] Forked 4708 +[866] Forked 4709 +(4708) found +(4709) found +[865] Forked 4710 +[864] Forked 4711 +(4710) found +(4711) found +[863] Forked 4712 +[862] Forked 4713 +(4712) found +(4713) found +[861] Forked 4714 +[860] Forked 4715 +(4714) found +(4715) found +[859] Forked 4716 +[858] Forked 4717 +(4716) found +(4717) found +[857] Forked 4718 +(4718) found +[856] Forked 4719 +(4719) found +[855] Forked 4720 +(4720) found +[854] Forked 4721 +(4721) found +[853] Forked 4722 +(4722) found +[852] Forked 4723 +(4723) found +[851] Forked 4724 +(4724) found +[850] Forked 4725 +(4725) found +[849] Forked 4726 +(4726) found +[848] Forked 4727 +(4727) found +[847] Forked 4728 +(4728) found +[846] Forked 4729 +(4729) found +[845] Forked 4730 +(4730) found +[844] Forked 4731 +(4731) found +[843] Forked 4732 +(4732) found +[842] Forked 4733 +(4733) found +[841] Forked 4734 +(4734) found +[840] Forked 4735 +(4735) found +[839] Forked 4736 +(4736) found +[838] Forked 4737 +(4737) found +[837] Forked 4738 +(4738) found +[836] Forked 4739 +(4739) found +[835] Forked 4740 +(4740) found +[834] Forked 4741 +(4741) found +[833] Forked 4742 +(4742) found +[832] Forked 4743 +(4743) found +[831] Forked 4744 +(4744) found +[830] Forked 4745 +(4745) found +[829] Forked 4746 +(4746) found +[828] Forked 4747 +(4747) found +[827] Forked 4748 +(4748) found +[826] Forked 4749 +(4749) found +[825] Forked 4750 +(4750) found +[824] Forked 4751 +(4751) found +[823] Forked 4752 +(4752) found +[822] Forked 4753 +(4753) found +[821] Forked 4754 +(4754) found +[820] Forked 4755 +(4755) found +[819] Forked 4756 +(4756) found +[818] Forked 4757 +(4757) found +[817] Forked 4758 +[816] Forked 4759 +(4758) found +(4759) found +[815] Forked 4760 +[814] Forked 4761 +(4760) found +(4761) found +[813] Forked 4762 +[812] Forked 4763 +(4762) found +(4763) found +[811] Forked 4764 +[810] Forked 4765 +(4764) found +(4765) found +[809] Forked 4766 +[808] Forked 4767 +(4766) found +(4767) found +[807] Forked 4768 +[806] Forked 4769 +(4768) found +(4769) found +[805] Forked 4770 +[804] Forked 4771 +(4770) found +(4771) found +[803] Forked 4772 +[802] Forked 4773 +(4772) found +(4773) found +[801] Forked 4774 +[800] Forked 4775 +(4774) found +(4775) found +[799] Forked 4776 +[798] Forked 4777 +(4776) found +(4777) found +[797] Forked 4778 +[796] Forked 4779 +(4778) found +(4779) found +[795] Forked 4780 +[794] Forked 4781 +(4780) found +(4781) found +[793] Forked 4782 +[792] Forked 4783 +(4782) found +(4783) found +[791] Forked 4784 +[790] Forked 4785 +(4784) found +(4785) found +[789] Forked 4786 +[788] Forked 4787 +(4786) found +(4787) found +[787] Forked 4788 +[786] Forked 4789 +(4788) found +(4789) found +[785] Forked 4790 +[784] Forked 4791 +(4790) found +(4791) found +[783] Forked 4792 +[782] Forked 4793 +(4792) found +(4793) found +[781] Forked 4794 +[780] Forked 4795 +(4794) found +(4795) found +[779] Forked 4796 +[778] Forked 4797 +(4796) found +(4797) found +[777] Forked 4798 +[776] Forked 4799 +(4798) found +(4799) found +[775] Forked 4800 +[774] Forked 4801 +[773] Forked 4802 +[772] Forked 4803 +[771] Forked 4804 +[770] Forked 4805 +[769] Forked 4806 +[768] Forked 4807 +[767] Forked 4809 +(4800) found +(4801) found +(4802) found +(4803) found +(4804) found +(4805) found +(4806) found +(4807) found +(4809) found +[766] Forked 4810 +(4810) found +[765] Forked 4811 +(4811) found +[764] Forked 4812 +(4812) found +[763] Forked 4813 +(4813) found +[762] Forked 4814 +(4814) found +[761] Forked 4815 +(4815) found +[760] Forked 4816 +(4816) found +[759] Forked 4817 +(4817) found +[758] Forked 4818 +(4818) found +[757] Forked 4819 +(4819) found +[756] Forked 4820 +(4820) found +[755] Forked 4821 +(4821) found +[754] Forked 4822 +(4822) found +[753] Forked 4823 +(4823) found +[752] Forked 4824 +(4824) found +[751] Forked 4825 +(4825) found +[750] Forked 4826 +(4826) found +[749] Forked 4827 +(4827) found +[748] Forked 4828 +(4828) found +[747] Forked 4829 +(4829) found +[746] Forked 4830 +(4830) found +[745] Forked 4831 +(4831) found +[744] Forked 4832 +(4832) found +[743] Forked 4833 +(4833) found +[742] Forked 4834 +(4834) found +[741] Forked 4835 +(4835) found +[740] Forked 4836 +(4836) found +[739] Forked 4837 +(4837) found +[738] Forked 4838 +(4838) found +[737] Forked 4839 +(4839) found +[736] Forked 4840 +(4840) found +[735] Forked 4841 +(4841) found +[734] Forked 4842 +[733] Forked 4843 +(4842) found +(4843) found +[732] Forked 4844 +[731] Forked 4845 +(4844) found +(4845) found +[730] Forked 4846 +[729] Forked 4847 +(4846) found +(4847) found +[728] Forked 4848 +[727] Forked 4849 +(4848) found +(4849) found +[726] Forked 4850 +[725] Forked 4851 +(4850) found +(4851) found +[724] Forked 4852 +[723] Forked 4853 +(4852) found +(4853) found +[722] Forked 4854 +[721] Forked 4855 +(4854) found +(4855) found +[720] Forked 4856 +[719] Forked 4857 +(4856) found +(4857) found +[718] Forked 4858 +[717] Forked 4859 +(4858) found +(4859) found +[716] Forked 4860 +[715] Forked 4861 +(4860) found +(4861) found +[714] Forked 4862 +[713] Forked 4863 +(4862) found +(4863) found +[712] Forked 4864 +[711] Forked 4865 +(4864) found +(4865) found +[710] Forked 4866 +[709] Forked 4867 +(4866) found +(4867) found +[708] Forked 4868 +[707] Forked 4869 +(4868) found +(4869) found +[706] Forked 4870 +[705] Forked 4871 +(4870) found +(4871) found +[704] Forked 4872 +[703] Forked 4873 +(4872) found +(4873) found +[702] Forked 4874 +[701] Forked 4875 +(4874) found +(4875) found +[700] Forked 4876 +(4876) found +[699] Forked 4877 +[698] Forked 4878 +(4877) found +(4878) found +[697] Forked 4879 +[696] Forked 4881 +(4879) found +(4881) found +[695] Forked 4882 +(4882) found +[694] Forked 4883 +(4883) found +[693] Forked 4884 +(4884) found +[692] Forked 4885 +(4885) found +[691] Forked 4886 +(4886) found +[690] Forked 4887 +(4887) found +[689] Forked 4888 +(4888) found +[688] Forked 4889 +(4889) found +[687] Forked 4890 +(4890) found +[686] Forked 4891 +(4891) found +[685] Forked 4892 +(4892) found +[684] Forked 4893 +(4893) found +[683] Forked 4894 +(4894) found +[682] Forked 4895 +(4895) found +[681] Forked 4896 +(4896) found +[680] Forked 4897 +(4897) found +[679] Forked 4898 +(4898) found +[678] Forked 4899 +(4899) found +[677] Forked 4900 +(4900) found +[676] Forked 4901 +(4901) found +[675] Forked 4902 +(4902) found +[674] Forked 4903 +(4903) found +[673] Forked 4904 +(4904) found +[672] Forked 4905 +(4905) found +[671] Forked 4906 +(4906) found +[670] Forked 4907 +(4907) found +[669] Forked 4908 +(4908) found +[668] Forked 4909 +(4909) found +[667] Forked 4910 +(4910) found +[666] Forked 4911 +(4911) found +[665] Forked 4912 +(4912) found +[664] Forked 4913 +(4913) found +[663] Forked 4914 +(4914) found +[662] Forked 4915 +(4915) found +[661] Forked 4916 +(4916) found +[660] Forked 4917 +(4917) found +[659] Forked 4918 +(4918) found +[658] Forked 4919 +(4919) found +[657] Forked 4920 +(4920) found +[656] Forked 4921 +(4921) found +[655] Forked 4922 +(4922) found +[654] Forked 4923 +(4923) found +[653] Forked 4924 +(4924) found +[652] Forked 4925 +(4925) found +[651] Forked 4926 +(4926) found +[650] Forked 4927 +(4927) found +[649] Forked 4928 +(4928) found +[648] Forked 4929 +(4929) found +[647] Forked 4930 +(4930) found +[646] Forked 4931 +(4931) found +[645] Forked 4932 +(4932) found +[644] Forked 4933 +(4933) found +[643] Forked 4934 +(4934) found +[642] Forked 4935 +(4935) found +[641] Forked 4936 +(4936) found +[640] Forked 4937 +(4937) found +[639] Forked 4938 +(4938) found +[638] Forked 4939 +(4939) found +[637] Forked 4940 +(4940) found +[636] Forked 4941 +(4941) found +[635] Forked 4942 +(4942) found +[634] Forked 4943 +(4943) found +[633] Forked 4944 +(4944) found +[632] Forked 4945 +(4945) found +[631] Forked 4946 +(4946) found +[630] Forked 4947 +(4947) found +[629] Forked 4948 +(4948) found +[628] Forked 4949 +(4949) found +[627] Forked 4950 +(4950) found +[626] Forked 4951 +(4951) found +[625] Forked 4952 +(4952) found +[624] Forked 4953 +(4953) found +[623] Forked 4954 +(4954) found +[622] Forked 4955 +(4955) found +[621] Forked 4956 +[620] Forked 4957 +(4956) found +(4957) found +[619] Forked 4958 +[618] Forked 4959 +(4958) found +(4959) found +[617] Forked 4960 +[616] Forked 4961 +(4960) found +(4961) found +[615] Forked 4962 +[614] Forked 4963 +(4962) found +(4963) found +[613] Forked 4964 +[612] Forked 4965 +(4964) found +(4965) found +[611] Forked 4966 +[610] Forked 4967 +(4966) found +(4967) found +[609] Forked 4968 +[608] Forked 4969 +(4968) found +(4969) found +[607] Forked 4970 +[606] Forked 4971 +(4970) found +(4971) found +[605] Forked 4972 +[604] Forked 4973 +(4972) found +(4973) found +[603] Forked 4974 +[602] Forked 4975 +(4974) found +(4975) found +[601] Forked 4976 +[600] Forked 4977 +(4976) found +(4977) found +[599] Forked 4978 +[598] Forked 4979 +(4978) found +(4979) found +[597] Forked 4980 +[596] Forked 4981 +(4980) found +(4981) found +[595] Forked 4982 +[594] Forked 4983 +(4982) found +(4983) found +[593] Forked 4984 +[592] Forked 4985 +(4984) found +(4985) found +[591] Forked 4986 +[590] Forked 4987 +(4986) found +(4987) found +[589] Forked 4988 +[588] Forked 4989 +(4988) found +(4989) found +[587] Forked 4990 +[586] Forked 4991 +(4990) found +(4991) found +[585] Forked 4992 +[584] Forked 4993 +(4992) found +(4993) found +[583] Forked 4994 +[582] Forked 4995 +(4994) found +(4995) found +[581] Forked 4996 +[580] Forked 4997 +(4996) found +(4997) found +[579] Forked 4998 +[578] Forked 4999 +(4998) found +(4999) found +[577] Forked 5000 +[576] Forked 5001 +(5000) found +(5001) found +[575] Forked 5002 +(5002) found +[574] Forked 5003 +(5003) found +[573] Forked 5004 +(5004) found +[572] Forked 5005 +(5005) found +[571] Forked 5006 +(5006) found +[570] Forked 5007 +(5007) found +[569] Forked 5008 +(5008) found +[568] Forked 5009 +(5009) found +[567] Forked 5010 +(5010) found +[566] Forked 5011 +(5011) found +[565] Forked 5012 +(5012) found +[564] Forked 5013 +(5013) found +[563] Forked 5014 +(5014) found +[562] Forked 5015 +(5015) found +[561] Forked 5016 +(5016) found +[560] Forked 5017 +(5017) found +[559] Forked 5018 +(5018) found +[558] Forked 5019 +(5019) found +[557] Forked 5020 +(5020) found +[556] Forked 5021 +(5021) found +[555] Forked 5022 +(5022) found +[554] Forked 5023 +(5023) found +[553] Forked 5024 +(5024) found +[552] Forked 5025 +(5025) found +[551] Forked 5026 +(5026) found +[550] Forked 5027 +(5027) found +[549] Forked 5028 +(5028) found +[548] Forked 5029 +(5029) found +[547] Forked 5030 +(5030) found +[546] Forked 5031 +(5031) found +[545] Forked 5032 +(5032) found +[544] Forked 5033 +(5033) found +[543] Forked 5034 +(5034) found +[542] Forked 5035 +(5035) found +[541] Forked 5036 +(5036) found +[540] Forked 5037 +[539] Forked 5038 +(5037) found +(5038) found +[538] Forked 5039 +[537] Forked 5040 +(5039) found +(5040) found +[536] Forked 5041 +[535] Forked 5042 +(5041) found +(5042) found +[534] Forked 5043 +[533] Forked 5044 +(5043) found +(5044) found +[532] Forked 5045 +[531] Forked 5046 +(5045) found +(5046) found +[530] Forked 5047 +[529] Forked 5048 +(5047) found +(5048) found +[528] Forked 5049 +[527] Forked 5050 +(5049) found +(5050) found +[526] Forked 5051 +[525] Forked 5052 +(5051) found +(5052) found +[524] Forked 5053 +[523] Forked 5054 +(5053) found +(5054) found +[522] Forked 5055 +[521] Forked 5056 +(5055) found +(5056) found +[520] Forked 5057 +[519] Forked 5058 +(5057) found +(5058) found +[518] Forked 5059 +[517] Forked 5060 +(5059) found +(5060) found +[516] Forked 5061 +[515] Forked 5062 +(5061) found +(5062) found +[514] Forked 5063 +[513] Forked 5064 +(5063) found +(5064) found +[512] Forked 5065 +[511] Forked 5066 +(5065) found +(5066) found +[510] Forked 5067 +[509] Forked 5068 +(5067) found +(5068) found +[508] Forked 5069 +[507] Forked 5070 +(5069) found +(5070) found +[506] Forked 5071 +[505] Forked 5072 +(5071) found +(5072) found +[504] Forked 5073 +[503] Forked 5074 +(5073) found +(5074) found +[502] Forked 5075 +[501] Forked 5076 +(5075) found +(5076) found +[500] Forked 5077 +[499] Forked 5078 +(5077) found +(5078) found +[498] Forked 5079 +[497] Forked 5080 +(5079) found +(5080) found +[496] Forked 5081 +[495] Forked 5082 +(5081) found +(5082) found +[494] Forked 5083 +(5083) found +[493] Forked 5084 +(5084) found +[492] Forked 5085 +(5085) found +[491] Forked 5086 +(5086) found +[490] Forked 5087 +(5087) found +[489] Forked 5088 +(5088) found +[488] Forked 5089 +(5089) found +[487] Forked 5090 +(5090) found +[486] Forked 5091 +(5091) found +[485] Forked 5092 +(5092) found +[484] Forked 5093 +(5093) found +[483] Forked 5094 +(5094) found +[482] Forked 5095 +(5095) found +[481] Forked 5096 +(5096) found +[480] Forked 5097 +(5097) found +[479] Forked 5098 +(5098) found +[478] Forked 5099 +(5099) found +[477] Forked 5100 +(5100) found +[476] Forked 5101 +(5101) found +[475] Forked 5102 +(5102) found +[474] Forked 5103 +(5103) found +[473] Forked 5104 +(5104) found +[472] Forked 5105 +(5105) found +[471] Forked 5106 +(5106) found +[470] Forked 5107 +(5107) found +[469] Forked 5108 +(5108) found +[468] Forked 5109 +(5109) found +[467] Forked 5110 +(5110) found +[466] Forked 5111 +(5111) found +[465] Forked 5112 +(5112) found +[464] Forked 5113 +(5113) found +[463] Forked 5114 +(5114) found +[462] Forked 5115 +(5115) found +[461] Forked 5116 +(5116) found +[460] Forked 5117 +(5117) found +[459] Forked 5118 +(5118) found +[458] Forked 5119 +(5119) found +[457] Forked 5120 +[456] Forked 5121 +(5120) found +(5121) found +[455] Forked 5122 +[454] Forked 5123 +(5122) found +(5123) found +[453] Forked 5124 +[452] Forked 5125 +(5124) found +(5125) found +[451] Forked 5126 +[450] Forked 5127 +(5126) found +(5127) found +[449] Forked 5128 +[448] Forked 5129 +(5128) found +(5129) found +[447] Forked 5130 +[446] Forked 5131 +(5130) found +(5131) found +[445] Forked 5132 +[444] Forked 5133 +(5132) found +(5133) found +[443] Forked 5134 +[442] Forked 5135 +(5134) found +(5135) found +[441] Forked 5136 +(5136) found +[440] Forked 5137 +(5137) found +[439] Forked 5138 +(5138) found +[438] Forked 5139 +(5139) found +[437] Forked 5140 +(5140) found +[436] Forked 5141 +(5141) found +[435] Forked 5142 +(5142) found +[434] Forked 5143 +(5143) found +[433] Forked 5144 +[432] Forked 5145 +(5144) found +(5145) found +[431] Forked 5146 +[430] Forked 5147 +(5146) found +(5147) found +[429] Forked 5148 +[428] Forked 5149 +(5148) found +(5149) found +[427] Forked 5150 +[426] Forked 5151 +(5150) found +(5151) found +[425] Forked 5152 +[424] Forked 5153 +(5152) found +(5153) found +[423] Forked 5154 +[422] Forked 5155 +(5154) found +(5155) found +[421] Forked 5156 +[420] Forked 5157 +(5156) found +(5157) found +[419] Forked 5158 +[418] Forked 5159 +(5158) found +(5159) found +[417] Forked 5160 +[416] Forked 5161 +(5160) found +(5161) found +[415] Forked 5162 +[414] Forked 5164 +(5162) found +(5164) found +[413] Forked 5165 +(5165) found +[412] Forked 5166 +(5166) found +[411] Forked 5167 +(5167) found +[410] Forked 5168 +(5168) found +[409] Forked 5169 +(5169) found +[408] Forked 5170 +(5170) found +[407] Forked 5171 +(5171) found +[406] Forked 5172 +(5172) found +[405] Forked 5173 +(5173) found +[404] Forked 5174 +(5174) found +[403] Forked 5175 +(5175) found +[402] Forked 5176 +(5176) found +[401] Forked 5177 +(5177) found +[400] Forked 5178 +(5178) found +[399] Forked 5179 +(5179) found +[398] Forked 5180 +(5180) found +[397] Forked 5181 +(5181) found +[396] Forked 5182 +(5182) found +[395] Forked 5183 +(5183) found +[394] Forked 5184 +(5184) found +[393] Forked 5185 +(5185) found +[392] Forked 5186 +(5186) found +[391] Forked 5187 +(5187) found +[390] Forked 5188 +(5188) found +[389] Forked 5189 +(5189) found +[388] Forked 5190 +(5190) found +[387] Forked 5191 +(5191) found +[386] Forked 5192 +(5192) found +[385] Forked 5193 +(5193) found +[384] Forked 5194 +(5194) found +[383] Forked 5195 +(5195) found +[382] Forked 5196 +(5196) found +[381] Forked 5197 +(5197) found +[380] Forked 5198 +(5198) found +[379] Forked 5199 +[378] Forked 5200 +(5199) found +(5200) found +[377] Forked 5201 +[376] Forked 5202 +(5201) found +(5202) found +[375] Forked 5203 +[374] Forked 5204 +(5203) found +(5204) found +[373] Forked 5205 +[372] Forked 5206 +(5205) found +(5206) found +[371] Forked 5207 +[370] Forked 5208 +(5207) found +(5208) found +[369] Forked 5209 +[368] Forked 5210 +(5209) found +(5210) found +[367] Forked 5211 +[366] Forked 5212 +(5211) found +(5212) found +[365] Forked 5213 +[364] Forked 5214 +(5213) found +(5214) found +[363] Forked 5215 +[362] Forked 5216 +(5215) found +(5216) found +[361] Forked 5217 +[360] Forked 5218 +(5217) found +(5218) found +[359] Forked 5219 +[358] Forked 5220 +(5219) found +(5220) found +[357] Forked 5221 +[356] Forked 5222 +(5221) found +(5222) found +[355] Forked 5223 +[354] Forked 5224 +(5223) found +(5224) found +[353] Forked 5225 +[352] Forked 5226 +(5225) found +(5226) found +[351] Forked 5227 +[350] Forked 5228 +(5227) found +(5228) found +[349] Forked 5229 +[348] Forked 5230 +(5229) found +(5230) found +[347] Forked 5231 +[346] Forked 5232 +(5231) found +(5232) found +[345] Forked 5233 +[344] Forked 5234 +(5233) found +(5234) found +[343] Forked 5235 +[342] Forked 5236 +(5235) found +(5236) found +[341] Forked 5237 +[340] Forked 5238 +(5237) found +(5238) found +[339] Forked 5239 +[338] Forked 5240 +(5239) found +(5240) found +[337] Forked 5241 +[336] Forked 5242 +(5241) found +(5242) found +[335] Forked 5243 +[334] Forked 5244 +(5243) found +(5244) found +[333] Forked 5245 +(5245) found +[332] Forked 5246 +(5246) found +[331] Forked 5247 +(5247) found +[330] Forked 5248 +(5248) found +[329] Forked 5249 +(5249) found +[328] Forked 5250 +(5250) found +[327] Forked 5251 +(5251) found +[326] Forked 5252 +(5252) found +[325] Forked 5253 +(5253) found +[324] Forked 5254 +(5254) found +[323] Forked 5255 +(5255) found +[322] Forked 5256 +(5256) found +[321] Forked 5257 +(5257) found +[320] Forked 5258 +(5258) found +[319] Forked 5259 +(5259) found +[318] Forked 5260 +(5260) found +[317] Forked 5261 +(5261) found +[316] Forked 5262 +(5262) found +[315] Forked 5263 +(5263) found +[314] Forked 5264 +(5264) found +[313] Forked 5265 +(5265) found +[312] Forked 5266 +(5266) found +[311] Forked 5267 +(5267) found +[310] Forked 5268 +(5268) found +[309] Forked 5269 +(5269) found +[308] Forked 5270 +(5270) found +[307] Forked 5271 +(5271) found +[306] Forked 5272 +(5272) found +[305] Forked 5273 +(5273) found +[304] Forked 5274 +(5274) found +[303] Forked 5275 +(5275) found +[302] Forked 5276 +(5276) found +[301] Forked 5277 +(5277) found +[300] Forked 5278 +(5278) found +[299] Forked 5279 +(5279) found +[298] Forked 5280 +(5280) found +[297] Forked 5281 +[296] Forked 5282 +(5281) found +(5282) found +[295] Forked 5283 +[294] Forked 5284 +(5283) found +(5284) found +[293] Forked 5285 +[292] Forked 5286 +(5285) found +(5286) found +[291] Forked 5287 +[290] Forked 5288 +(5287) found +(5288) found +[289] Forked 5289 +[288] Forked 5290 +(5289) found +(5290) found +[287] Forked 5291 +[286] Forked 5292 +(5291) found +(5292) found +[285] Forked 5293 +[284] Forked 5294 +(5293) found +(5294) found +[283] Forked 5295 +[282] Forked 5296 +(5295) found +(5296) found +[281] Forked 5297 +[280] Forked 5298 +(5297) found +(5298) found +[279] Forked 5299 +[278] Forked 5300 +(5299) found +(5300) found +[277] Forked 5301 +[276] Forked 5302 +(5301) found +(5302) found +[275] Forked 5303 +[274] Forked 5304 +(5303) found +(5304) found +[273] Forked 5305 +[272] Forked 5306 +(5305) found +(5306) found +[271] Forked 5307 +[270] Forked 5308 +(5307) found +(5308) found +[269] Forked 5309 +[268] Forked 5310 +(5309) found +(5310) found +[267] Forked 5311 +[266] Forked 5312 +(5311) found +(5312) found +[265] Forked 5313 +[264] Forked 5314 +(5313) found +(5314) found +[263] Forked 5315 +[262] Forked 5316 +(5315) found +(5316) found +[261] Forked 5317 +[260] Forked 5318 +(5317) found +(5318) found +[259] Forked 5319 +[258] Forked 5320 +(5319) found +(5320) found +[257] Forked 5321 +[256] Forked 5322 +(5321) found +(5322) found +[255] Forked 5323 +[254] Forked 5324 +(5323) found +(5324) found +[253] Forked 5325 +[252] Forked 5326 +(5325) found +(5326) found +[251] Forked 5327 +(5327) found +[250] Forked 5328 +(5328) found +[249] Forked 5329 +(5329) found +[248] Forked 5330 +(5330) found +[247] Forked 5331 +(5331) found +[246] Forked 5332 +(5332) found +[245] Forked 5333 +(5333) found +[244] Forked 5334 +(5334) found +[243] Forked 5335 +(5335) found +[242] Forked 5336 +(5336) found +[241] Forked 5337 +(5337) found +[240] Forked 5338 +(5338) found +[239] Forked 5339 +(5339) found +[238] Forked 5340 +(5340) found +[237] Forked 5341 +(5341) found +[236] Forked 5342 +(5342) found +[235] Forked 5343 +(5343) found +[234] Forked 5344 +(5344) found +[233] Forked 5345 +(5345) found +[232] Forked 5346 +(5346) found +[231] Forked 5347 +(5347) found +[230] Forked 5348 +(5348) found +[229] Forked 5349 +(5349) found +[228] Forked 5350 +(5350) found +[227] Forked 5351 +(5351) found +[226] Forked 5352 +(5352) found +[225] Forked 5353 +(5353) found +[224] Forked 5354 +(5354) found +[223] Forked 5355 +(5355) found +[222] Forked 5356 +(5356) found +[221] Forked 5357 +(5357) found +[220] Forked 5358 +(5358) found +[219] Forked 5359 +(5359) found +[218] Forked 5360 +(5360) found +[217] Forked 5361 +(5361) found +[216] Forked 5362 +(5362) found +[215] Forked 5363 +[214] Forked 5364 +(5363) found +(5364) found +[213] Forked 5365 +[212] Forked 5366 +(5365) found +(5366) found +[211] Forked 5367 +[210] Forked 5368 +(5367) found +(5368) found +[209] Forked 5369 +[208] Forked 5370 +(5369) found +(5370) found +[207] Forked 5371 +[206] Forked 5372 +(5371) found +(5372) found +[205] Forked 5373 +[204] Forked 5374 +(5373) found +(5374) found +[203] Forked 5375 +[202] Forked 5376 +(5375) found +(5376) found +[201] Forked 5377 +[200] Forked 5378 +(5377) found +(5378) found +[199] Forked 5379 +[198] Forked 5380 +(5379) found +(5380) found +[197] Forked 5381 +[196] Forked 5382 +(5381) found +(5382) found +[195] Forked 5383 +[194] Forked 5384 +(5383) found +(5384) found +[193] Forked 5385 +[192] Forked 5386 +(5385) found +(5386) found +[191] Forked 5387 +[190] Forked 5388 +(5387) found +(5388) found +[189] Forked 5389 +[188] Forked 5390 +(5389) found +(5390) found +[187] Forked 5391 +[186] Forked 5392 +(5391) found +(5392) found +[185] Forked 5393 +[184] Forked 5394 +(5393) found +(5394) found +[183] Forked 5395 +[182] Forked 5396 +(5395) found +(5396) found +[181] Forked 5397 +[180] Forked 5398 +(5397) found +(5398) found +[179] Forked 5399 +[178] Forked 5400 +(5399) found +(5400) found +[177] Forked 5401 +[176] Forked 5403 +(5401) found +(5403) found +[175] Forked 5404 +(5404) found +[174] Forked 5405 +(5405) found +[173] Forked 5406 +(5406) found +[172] Forked 5407 +(5407) found +[171] Forked 5408 +(5408) found +[170] Forked 5409 +(5409) found +[169] Forked 5410 +(5410) found +[168] Forked 5411 +(5411) found +[167] Forked 5412 +(5412) found +[166] Forked 5413 +(5413) found +[165] Forked 5414 +(5414) found +[164] Forked 5415 +(5415) found +[163] Forked 5416 +(5416) found +[162] Forked 5417 +(5417) found +[161] Forked 5418 +(5418) found +[160] Forked 5419 +(5419) found +[159] Forked 5420 +(5420) found +[158] Forked 5421 +(5421) found +[157] Forked 5422 +(5422) found +[156] Forked 5423 +(5423) found +[155] Forked 5424 +(5424) found +[154] Forked 5425 +(5425) found +[153] Forked 5426 +(5426) found +[152] Forked 5427 +(5427) found +[151] Forked 5428 +(5428) found +[150] Forked 5429 +(5429) found +[149] Forked 5430 +(5430) found +[148] Forked 5431 +(5431) found +[147] Forked 5432 +(5432) found +[146] Forked 5433 +(5433) found +[145] Forked 5434 +(5434) found +[144] Forked 5435 +(5435) found +[143] Forked 5436 +(5436) found +[142] Forked 5437 +(5437) found +[141] Forked 5438 +(5438) found +[140] Forked 5439 +(5439) found +[139] Forked 5440 +(5440) found +[138] Forked 5441 +(5441) found +[137] Forked 5442 +(5442) found +[136] Forked 5443 +[135] Forked 5444 +(5443) found +(5444) found +[134] Forked 5445 +[133] Forked 5446 +(5446) found +(5445) found +[132] Forked 5447 +(5447) found +[131] Forked 5448 +(5448) found +[130] Forked 5449 +(5449) found +[129] Forked 5450 +(5450) found +[128] Forked 5451 +(5451) found +[127] Forked 5452 +(5452) found +[126] Forked 5453 +(5453) found +[125] Forked 5454 +(5454) found +[124] Forked 5455 +(5455) found +[123] Forked 5456 +(5456) found +[122] Forked 5457 +(5457) found +[121] Forked 5458 +(5458) found +[120] Forked 5459 +(5459) found +[119] Forked 5460 +(5460) found +[118] Forked 5461 +(5461) found +[117] Forked 5462 +(5462) found +[116] Forked 5463 +(5463) found +[115] Forked 5464 +(5464) found +[114] Forked 5465 +(5465) found +[113] Forked 5466 +(5466) found +[112] Forked 5467 +(5467) found +[111] Forked 5468 +(5468) found +[110] Forked 5469 +(5469) found +[109] Forked 5470 +(5470) found +[108] Forked 5471 +(5471) found +[107] Forked 5472 +(5472) found +[106] Forked 5473 +(5473) found +[105] Forked 5474 +(5474) found +[104] Forked 5475 +(5475) found +[103] Forked 5476 +(5476) found +[102] Forked 5477 +(5477) found +[101] Forked 5478 +(5478) found +[100] Forked 5479 +(5479) found +[99] Forked 5480 +(5480) found +[98] Forked 5481 +(5481) found +[97] Forked 5482 +(5482) found +[96] Forked 5483 +(5483) found +[95] Forked 5484 +(5484) found +[94] Forked 5485 +(5485) found +[93] Forked 5486 +(5486) found +[92] Forked 5487 +(5487) found +[91] Forked 5488 +(5488) found +[90] Forked 5489 +(5489) found +[89] Forked 5490 +(5490) found +[88] Forked 5491 +(5491) found +[87] Forked 5492 +(5492) found +[86] Forked 5493 +(5493) found +[85] Forked 5494 +(5494) found +[84] Forked 5495 +(5495) found +[83] Forked 5496 +(5496) found +[82] Forked 5497 +(5497) found +[81] Forked 5498 +(5498) found +[80] Forked 5499 +(5499) found +[79] Forked 5500 +(5500) found +[78] Forked 5501 +(5501) found +[77] Forked 5502 +(5502) found +[76] Forked 5503 +(5503) found +[75] Forked 5504 +(5504) found +[74] Forked 5505 +(5505) found +[73] Forked 5506 +(5506) found +[72] Forked 5507 +(5507) found +[71] Forked 5508 +(5508) found +[70] Forked 5509 +(5509) found +[69] Forked 5510 +(5510) found +[68] Forked 5511 +(5511) found +[67] Forked 5512 +(5512) found +[66] Forked 5513 +(5513) found +[65] Forked 5514 +(5514) found +[64] Forked 5515 +(5515) found +[63] Forked 5516 +(5516) found +[62] Forked 5517 +(5517) found +[61] Forked 5518 +(5518) found +[60] Forked 5519 +(5519) found +[59] Forked 5520 +(5520) found +[58] Forked 5521 +(5521) found +[57] Forked 5522 +(5522) found +[56] Forked 5523 +(5523) found +[55] Forked 5524 +(5524) found +[54] Forked 5525 +(5525) found +[53] Forked 5526 +(5526) found +[52] Forked 5527 +(5527) found +[51] Forked 5528 +(5528) found +[50] Forked 5529 +(5529) found +[49] Forked 5530 +(5530) found +[48] Forked 5531 +(5531) found +[47] Forked 5532 +(5532) found +[46] Forked 5533 +(5533) found +[45] Forked 5534 +(5534) found +[44] Forked 5535 +(5535) found +[43] Forked 5536 +(5536) found +[42] Forked 5537 +(5537) found +[41] Forked 5538 +(5538) found +[40] Forked 5539 +(5539) found +[39] Forked 5540 +(5540) found +[38] Forked 5541 +(5541) found +[37] Forked 5542 +(5542) found +[36] Forked 5543 +(5543) found +[35] Forked 5544 +(5544) found +[34] Forked 5545 +(5545) found +[33] Forked 5546 +(5546) found +[32] Forked 5547 +(5547) found +[31] Forked 5548 +(5548) found +[30] Forked 5549 +(5549) found +[29] Forked 5550 +(5550) found +[28] Forked 5551 +[27] Forked 5552 +(5551) found +(5552) found +[26] Forked 5553 +[25] Forked 5554 +(5553) found +(5554) found +[24] Forked 5555 +[23] Forked 5556 +(5555) found +(5556) found +[22] Forked 5557 +[21] Forked 5558 +(5557) found +(5558) found +[20] Forked 5559 +[19] Forked 5560 +(5559) found +(5560) found +[18] Forked 5561 +[17] Forked 5562 +(5561) found +(5562) found +[16] Forked 5563 +[15] Forked 5564 +(5563) found +(5564) found +[14] Forked 5565 +[13] Forked 5566 +(5565) found +(5566) found +[12] Forked 5567 +(5567) found +[11] Forked 5568 +[10] Forked 5569 +(5568) found +(5569) found +[9] Forked 5570 +[8] Forked 5571 +(5570) found +(5571) found +[7] Forked 5572 +[6] Forked 5573 +(5572) found +(5573) found +[5] Forked 5574 +[4] Forked 5575 +(5574) found +(5575) found +[3] Forked 5576 +[2] Forked 5577 +(5576) found +(5577) found +[1] Forked 5578 +[0] Forked 5579 +(5578) found +(5579) found diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.G b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.G new file mode 100644 index 00000000..7e9c89f9 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/fork-latency.c.G @@ -0,0 +1,40001 @@ +MAX=20000 +[19999] Forked 18452 +(18452) found +[19998] Forked 18453 +(18453) found +[19997] Forked 18454 +(18454) found +[19996] Forked 18455 +(18455) found +[19995] Forked 18456 +(18456) found +[19994] Forked 18457 +(18457) found +[19993] Forked 18458 +(18458) found +[19992] Forked 18459 +(18459) found +[19991] Forked 18460 +(18460) found +[19990] Forked 18461 +(18461) found +[19989] Forked 18462 +(18462) found +[19988] Forked 18463 +(18463) found +[19987] Forked 18464 +(18464) found +[19986] Forked 18466 +(18466) found +[19985] Forked 18467 +(18467) found +[19984] Forked 18468 +(18468) found +[19983] Forked 18469 +(18469) found +[19982] Forked 18470 +(18470) found +[19981] Forked 18471 +(18471) found +[19980] Forked 18472 +(18472) found +[19979] Forked 18473 +(18473) found +[19978] Forked 18474 +(18474) found +[19977] Forked 18475 +(18475) found +[19976] Forked 18476 +(18476) found +[19975] Forked 18477 +(18477) found +[19974] Forked 18478 +(18478) found +[19973] Forked 18479 +(18479) found +[19972] Forked 18480 +(18480) found +[19971] Forked 18481 +(18481) found +[19970] Forked 18482 +(18482) found +[19969] Forked 18483 +(18483) found +[19968] Forked 18484 +(18484) found +[19967] Forked 18485 +(18485) found +[19966] Forked 18486 +(18486) found +[19965] Forked 18487 +(18487) found +[19964] Forked 18488 +(18488) found +[19963] Forked 18489 +(18489) found +[19962] Forked 18490 +(18490) found +[19961] Forked 18491 +(18491) found +[19960] Forked 18492 +(18492) found +[19959] Forked 18493 +(18493) found +[19958] Forked 18494 +(18494) found +[19957] Forked 18495 +(18495) found +[19956] Forked 18496 +(18496) found +[19955] Forked 18497 +(18497) found +[19954] Forked 18498 +(18498) found +[19953] Forked 18499 +(18499) found +[19952] Forked 18500 +(18500) found +[19951] Forked 18501 +(18501) found +[19950] Forked 18502 +(18502) found +[19949] Forked 18503 +(18503) found +[19948] Forked 18504 +(18504) found +[19947] Forked 18505 +(18505) found +[19946] Forked 18506 +(18506) found +[19945] Forked 18507 +(18507) found +[19944] Forked 18508 +(18508) found +[19943] Forked 18509 +(18509) found +[19942] Forked 18510 +(18510) found +[19941] Forked 18511 +(18511) found +[19940] Forked 18512 +(18512) found +[19939] Forked 18513 +(18513) found +[19938] Forked 18514 +(18514) found +[19937] Forked 18515 +(18515) found +[19936] Forked 18516 +(18516) found +[19935] Forked 18517 +(18517) found +[19934] Forked 18518 +(18518) found +[19933] Forked 18519 +(18519) found +[19932] Forked 18520 +(18520) found +[19931] Forked 18521 +(18521) found +[19930] Forked 18522 +(18522) found +[19929] Forked 18523 +(18523) found +[19928] Forked 18524 +(18524) found +[19927] Forked 18525 +(18525) found +[19926] Forked 18526 +(18526) found +[19925] Forked 18527 +(18527) found +[19924] Forked 18528 +(18528) found +[19923] Forked 18529 +(18529) found +[19922] Forked 18530 +(18530) found +[19921] Forked 18531 +(18531) found +[19920] Forked 18532 +(18532) found +[19919] Forked 18533 +(18533) found +[19918] Forked 18534 +(18534) found +[19917] Forked 18535 +(18535) found +[19916] Forked 18536 +(18536) found +[19915] Forked 18537 +(18537) found +[19914] Forked 18538 +(18538) found +[19913] Forked 18539 +(18539) found +[19912] Forked 18540 +(18540) found +[19911] Forked 18541 +(18541) found +[19910] Forked 18542 +(18542) found +[19909] Forked 18543 +(18543) found +[19908] Forked 18544 +(18544) found +[19907] Forked 18545 +(18545) found +[19906] Forked 18546 +(18546) found +[19905] Forked 18547 +(18547) found +[19904] Forked 18548 +(18548) found +[19903] Forked 18549 +(18549) found +[19902] Forked 18550 +(18550) found +[19901] Forked 18551 +(18551) found +[19900] Forked 18552 +(18552) found +[19899] Forked 18553 +(18553) found +[19898] Forked 18554 +(18554) found +[19897] Forked 18555 +(18555) found +[19896] Forked 18556 +(18556) found +[19895] Forked 18557 +(18557) found +[19894] Forked 18558 +(18558) found +[19893] Forked 18559 +(18559) found +[19892] Forked 18560 +(18560) found +[19891] Forked 18561 +[19890] Forked 18562 +(18561) found +(18562) found +[19889] Forked 18563 +[19888] Forked 18564 +(18563) found +(18564) found +[19887] Forked 18565 +[19886] Forked 18567 +(18565) found +(18567) found +[19885] Forked 18568 +[19884] Forked 18569 +(18568) found +(18569) found +[19883] Forked 18570 +[19882] Forked 18571 +(18570) found +(18571) found +[19881] Forked 18572 +[19880] Forked 18573 +(18572) found +(18573) found +[19879] Forked 18574 +[19878] Forked 18575 +(18574) found +(18575) found +[19877] Forked 18576 +[19876] Forked 18577 +(18576) found +(18577) found +[19875] Forked 18578 +[19874] Forked 18579 +(18578) found +(18579) found +[19873] Forked 18580 +[19872] Forked 18581 +(18580) found +(18581) found +[19871] Forked 18582 +[19870] Forked 18583 +(18582) found +(18583) found +[19869] Forked 18584 +[19868] Forked 18585 +(18584) found +(18585) found +[19867] Forked 18586 +[19866] Forked 18587 +(18586) found +(18587) found +[19865] Forked 18588 +[19864] Forked 18589 +(18588) found +(18589) found +[19863] Forked 18590 +[19862] Forked 18591 +(18590) found +(18591) found +[19861] Forked 18592 +[19860] Forked 18593 +(18592) found +(18593) found +[19859] Forked 18594 +[19858] Forked 18595 +(18594) found +(18595) found +[19857] Forked 18596 +[19856] Forked 18597 +(18596) found +(18597) found +[19855] Forked 18598 +[19854] Forked 18599 +(18598) found +(18599) found +[19853] Forked 18600 +[19852] Forked 18601 +(18600) found +(18601) found +[19851] Forked 18602 +[19850] Forked 18603 +(18602) found +(18603) found +[19849] Forked 18604 +[19848] Forked 18605 +(18604) found +(18605) found +[19847] Forked 18606 +[19846] Forked 18607 +(18606) found +(18607) found +[19845] Forked 18608 +[19844] Forked 18609 +(18608) found +(18609) found +[19843] Forked 18610 +[19842] Forked 18612 +(18610) found +(18612) found +[19841] Forked 18613 +[19840] Forked 18614 +(18613) found +(18614) found +[19839] Forked 18615 +[19838] Forked 18616 +(18615) found +(18616) found +[19837] Forked 18617 +[19836] Forked 18618 +(18617) found +(18618) found +[19835] Forked 18619 +[19834] Forked 18620 +(18619) found +(18620) found +[19833] Forked 18621 +[19832] Forked 18622 +(18621) found +(18622) found +[19831] Forked 18623 +[19830] Forked 18624 +(18623) found +(18624) found +[19829] Forked 18625 +[19828] Forked 18626 +(18625) found +(18626) found +[19827] Forked 18627 +[19826] Forked 18628 +(18627) found +(18628) found +[19825] Forked 18629 +[19824] Forked 18630 +(18629) found +(18630) found +[19823] Forked 18631 +[19822] Forked 18632 +(18631) found +(18632) found +[19821] Forked 18633 +[19820] Forked 18634 +(18633) found +(18634) found +[19819] Forked 18635 +[19818] Forked 18636 +(18635) found +(18636) found +[19817] Forked 18637 +[19816] Forked 18638 +(18637) found +(18638) found +[19815] Forked 18639 +[19814] Forked 18640 +(18639) found +(18640) found +[19813] Forked 18641 +[19812] Forked 18642 +(18641) found +(18642) found +[19811] Forked 18643 +[19810] Forked 18644 +(18643) found +(18644) found +[19809] Forked 18645 +[19808] Forked 18646 +(18645) found +(18646) found +[19807] Forked 18647 +[19806] Forked 18648 +(18647) found +(18648) found +[19805] Forked 18649 +[19804] Forked 18650 +(18649) found +(18650) found +[19803] Forked 18651 +[19802] Forked 18652 +(18651) found +(18652) found +[19801] Forked 18653 +[19800] Forked 18654 +(18653) found +(18654) found +[19799] Forked 18655 +(18655) found +[19798] Forked 18656 +(18656) found +[19797] Forked 18657 +(18657) found +[19796] Forked 18658 +(18658) found +[19795] Forked 18659 +(18659) found +[19794] Forked 18660 +(18660) found +[19793] Forked 18661 +(18661) found +[19792] Forked 18662 +(18662) found +[19791] Forked 18663 +(18663) found +[19790] Forked 18664 +(18664) found +[19789] Forked 18665 +(18665) found +[19788] Forked 18666 +(18666) found +[19787] Forked 18667 +(18667) found +[19786] Forked 18668 +(18668) found +[19785] Forked 18669 +(18669) found +[19784] Forked 18670 +(18670) found +[19783] Forked 18671 +(18671) found +[19782] Forked 18672 +(18672) found +[19781] Forked 18673 +(18673) found +[19780] Forked 18674 +(18674) found +[19779] Forked 18675 +(18675) found +[19778] Forked 18676 +(18676) found +[19777] Forked 18677 +(18677) found +[19776] Forked 18678 +(18678) found +[19775] Forked 18679 +(18679) found +[19774] Forked 18680 +(18680) found +[19773] Forked 18681 +(18681) found +[19772] Forked 18682 +(18682) found +[19771] Forked 18683 +(18683) found +[19770] Forked 18684 +(18684) found +[19769] Forked 18685 +(18685) found +[19768] Forked 18686 +(18686) found +[19767] Forked 18687 +(18687) found +[19766] Forked 18688 +(18688) found +[19765] Forked 18689 +(18689) found +[19764] Forked 18690 +(18690) found +[19763] Forked 18691 +(18691) found +[19762] Forked 18692 +(18692) found +[19761] Forked 18693 +[19760] Forked 18694 +(18693) found +(18694) found +[19759] Forked 18695 +(18695) found +[19758] Forked 18696 +(18696) found +[19757] Forked 18697 +(18697) found +[19756] Forked 18698 +(18698) found +[19755] Forked 18699 +[19754] Forked 18700 +(18699) found +(18700) found +[19753] Forked 18701 +[19752] Forked 18702 +(18701) found +(18702) found +[19751] Forked 18703 +[19750] Forked 18704 +(18703) found +(18704) found +[19749] Forked 18705 +[19748] Forked 18706 +(18705) found +(18706) found +[19747] Forked 18707 +[19746] Forked 18708 +(18707) found +(18708) found +[19745] Forked 18709 +[19744] Forked 18710 +(18709) found +(18710) found +[19743] Forked 18711 +[19742] Forked 18712 +(18711) found +(18712) found +[19741] Forked 18713 +[19740] Forked 18714 +(18713) found +(18714) found +[19739] Forked 18715 +[19738] Forked 18716 +(18715) found +(18716) found +[19737] Forked 18717 +[19736] Forked 18718 +(18717) found +(18718) found +[19735] Forked 18719 +[19734] Forked 18720 +(18719) found +(18720) found +[19733] Forked 18721 +[19732] Forked 18722 +(18721) found +(18722) found +[19731] Forked 18723 +[19730] Forked 18724 +(18723) found +(18724) found +[19729] Forked 18725 +[19728] Forked 18726 +(18725) found +(18726) found +[19727] Forked 18727 +[19726] Forked 18728 +(18727) found +(18728) found +[19725] Forked 18729 +[19724] Forked 18730 +(18729) found +(18730) found +[19723] Forked 18731 +[19722] Forked 18732 +(18731) found +(18732) found +[19721] Forked 18733 +[19720] Forked 18734 +(18733) found +(18734) found +[19719] Forked 18735 +[19718] Forked 18736 +(18735) found +(18736) found +[19717] Forked 18737 +[19716] Forked 18738 +(18737) found +(18738) found +[19715] Forked 18739 +[19714] Forked 18740 +(18739) found +(18740) found +[19713] Forked 18741 +[19712] Forked 18742 +(18741) found +(18742) found +[19711] Forked 18743 +[19710] Forked 18744 +(18743) found +(18744) found +[19709] Forked 18745 +(18745) found +[19708] Forked 18746 +(18746) found +[19707] Forked 18747 +[19706] Forked 18748 +(18747) found +(18748) found +[19705] Forked 18749 +[19704] Forked 18750 +(18749) found +(18750) found +[19703] Forked 18751 +[19702] Forked 18752 +(18751) found +(18752) found +[19701] Forked 18753 +[19700] Forked 18754 +(18753) found +(18754) found +[19699] Forked 18755 +[19698] Forked 18756 +(18755) found +(18756) found +[19697] Forked 18757 +[19696] Forked 18758 +(18757) found +(18758) found +[19695] Forked 18759 +[19694] Forked 18760 +(18759) found +(18760) found +[19693] Forked 18761 +[19692] Forked 18762 +(18761) found +(18762) found +[19691] Forked 18763 +[19690] Forked 18764 +(18763) found +(18764) found +[19689] Forked 18765 +[19688] Forked 18766 +(18765) found +(18766) found +[19687] Forked 18767 +[19686] Forked 18768 +(18767) found +(18768) found +[19685] Forked 18769 +[19684] Forked 18770 +(18769) found +(18770) found +[19683] Forked 18771 +[19682] Forked 18772 +(18771) found +(18772) found +[19681] Forked 18773 +[19680] Forked 18774 +(18773) found +(18774) found +[19679] Forked 18775 +[19678] Forked 18776 +(18775) found +(18776) found +[19677] Forked 18777 +[19676] Forked 18778 +(18777) found +(18778) found +[19675] Forked 18779 +[19674] Forked 18780 +(18779) found +(18780) found +[19673] Forked 18781 +[19672] Forked 18782 +(18781) found +(18782) found +[19671] Forked 18783 +[19670] Forked 18784 +(18783) found +(18784) found +[19669] Forked 18785 +[19668] Forked 18786 +(18785) found +(18786) found +[19667] Forked 18787 +[19666] Forked 18788 +(18787) found +(18788) found +[19665] Forked 18789 +[19664] Forked 18790 +(18789) found +(18790) found +[19663] Forked 18791 +[19662] Forked 18792 +(18791) found +(18792) found +[19661] Forked 18793 +[19660] Forked 18794 +(18793) found +(18794) found +[19659] Forked 18795 +[19658] Forked 18796 +(18795) found +(18796) found +[19657] Forked 18797 +[19656] Forked 18798 +(18797) found +(18798) found +[19655] Forked 18799 +[19654] Forked 18800 +(18799) found +(18800) found +[19653] Forked 18801 +[19652] Forked 18802 +(18801) found +(18802) found +[19651] Forked 18803 +[19650] Forked 18804 +(18803) found +(18804) found +[19649] Forked 18805 +[19648] Forked 18806 +(18805) found +(18806) found +[19647] Forked 18807 +[19646] Forked 18808 +(18807) found +(18808) found +[19645] Forked 18809 +[19644] Forked 18810 +(18809) found +(18810) found +[19643] Forked 18811 +[19642] Forked 18812 +(18811) found +(18812) found +[19641] Forked 18813 +[19640] Forked 18814 +(18813) found +(18814) found +[19639] Forked 18815 +[19638] Forked 18816 +(18815) found +(18816) found +[19637] Forked 18817 +[19636] Forked 18818 +(18817) found +(18818) found +[19635] Forked 18819 +[19634] Forked 18820 +(18819) found +(18820) found +[19633] Forked 18821 +[19632] Forked 18822 +(18821) found +(18822) found +[19631] Forked 18823 +[19630] Forked 18824 +(18823) found +(18824) found +[19629] Forked 18825 +[19628] Forked 18826 +(18825) found +(18826) found +[19627] Forked 18827 +[19626] Forked 18828 +(18827) found +(18828) found +[19625] Forked 18829 +[19624] Forked 18830 +(18829) found +(18830) found +[19623] Forked 18831 +[19622] Forked 18832 +(18831) found +(18832) found +[19621] Forked 18833 +[19620] Forked 18834 +(18833) found +(18834) found +[19619] Forked 18835 +[19618] Forked 18836 +(18835) found +(18836) found +[19617] Forked 18837 +[19616] Forked 18838 +(18837) found +(18838) found +[19615] Forked 18839 +[19614] Forked 18840 +(18839) found +(18840) found +[19613] Forked 18841 +[19612] Forked 18842 +(18842) found +(18841) found +[19611] Forked 18843 +(18843) found +[19610] Forked 18844 +(18844) found +[19609] Forked 18845 +(18845) found +[19608] Forked 18846 +(18846) found +[19607] Forked 18847 +(18847) found +[19606] Forked 18848 +(18848) found +[19605] Forked 18849 +(18849) found +[19604] Forked 18850 +(18850) found +[19603] Forked 18851 +(18851) found +[19602] Forked 18852 +(18852) found +[19601] Forked 18853 +(18853) found +[19600] Forked 18854 +(18854) found +[19599] Forked 18855 +(18855) found +[19598] Forked 18856 +(18856) found +[19597] Forked 18857 +(18857) found +[19596] Forked 18858 +(18858) found +[19595] Forked 18859 +(18859) found +[19594] Forked 18860 +(18860) found +[19593] Forked 18861 +(18861) found +[19592] Forked 18862 +(18862) found +[19591] Forked 18863 +(18863) found +[19590] Forked 18864 +(18864) found +[19589] Forked 18865 +(18865) found +[19588] Forked 18866 +(18866) found +[19587] Forked 18867 +(18867) found +[19586] Forked 18868 +(18868) found +[19585] Forked 18869 +(18869) found +[19584] Forked 18870 +(18870) found +[19583] Forked 18871 +(18871) found +[19582] Forked 18872 +(18872) found +[19581] Forked 18873 +(18873) found +[19580] Forked 18874 +(18874) found +[19579] Forked 18875 +(18875) found +[19578] Forked 18876 +(18876) found +[19577] Forked 18877 +(18877) found +[19576] Forked 18878 +[19575] Forked 18879 +(18878) found +(18879) found +[19574] Forked 18880 +[19573] Forked 18881 +(18880) found +(18881) found +[19572] Forked 18882 +[19571] Forked 18883 +(18882) found +(18883) found +[19570] Forked 18884 +[19569] Forked 18885 +(18884) found +(18885) found +[19568] Forked 18886 +[19567] Forked 18887 +(18886) found +(18887) found +[19566] Forked 18888 +[19565] Forked 18889 +(18888) found +(18889) found +[19564] Forked 18890 +[19563] Forked 18891 +(18890) found +(18891) found +[19562] Forked 18892 +[19561] Forked 18893 +(18892) found +(18893) found +[19560] Forked 18894 +[19559] Forked 18895 +(18894) found +(18895) found +[19558] Forked 18896 +[19557] Forked 18897 +(18896) found +(18897) found +[19556] Forked 18898 +[19555] Forked 18899 +(18898) found +(18899) found +[19554] Forked 18900 +[19553] Forked 18901 +(18900) found +(18901) found +[19552] Forked 18902 +[19551] Forked 18903 +(18902) found +(18903) found +[19550] Forked 18904 +[19549] Forked 18905 +(18904) found +(18905) found +[19548] Forked 18906 +[19547] Forked 18907 +(18906) found +(18907) found +[19546] Forked 18908 +[19545] Forked 18909 +(18908) found +(18909) found +[19544] Forked 18910 +[19543] Forked 18911 +(18910) found +(18911) found +[19542] Forked 18912 +(18912) found +[19541] Forked 18913 +(18913) found +[19540] Forked 18914 +(18914) found +[19539] Forked 18915 +(18915) found +[19538] Forked 18916 +(18916) found +[19537] Forked 18917 +(18917) found +[19536] Forked 18918 +(18918) found +[19535] Forked 18919 +(18919) found +[19534] Forked 18920 +(18920) found +[19533] Forked 18921 +(18921) found +[19532] Forked 18922 +(18922) found +[19531] Forked 18923 +(18923) found +[19530] Forked 18924 +(18924) found +[19529] Forked 18925 +(18925) found +[19528] Forked 18926 +(18926) found +[19527] Forked 18927 +(18927) found +[19526] Forked 18928 +(18928) found +[19525] Forked 18929 +(18929) found +[19524] Forked 18930 +(18930) found +[19523] Forked 18931 +(18931) found +[19522] Forked 18932 +(18932) found +[19521] Forked 18933 +(18933) found +[19520] Forked 18934 +(18934) found +[19519] Forked 18935 +(18935) found +[19518] Forked 18936 +(18936) found +[19517] Forked 18937 +(18937) found +[19516] Forked 18938 +(18938) found +[19515] Forked 18939 +(18939) found +[19514] Forked 18940 +(18940) found +[19513] Forked 18941 +(18941) found +[19512] Forked 18942 +(18942) found +[19511] Forked 18943 +(18943) found +[19510] Forked 18944 +(18944) found +[19509] Forked 18945 +(18945) found +[19508] Forked 18946 +(18946) found +[19507] Forked 18947 +(18947) found +[19506] Forked 18948 +(18948) found +[19505] Forked 18949 +[19504] Forked 18950 +(18949) found +(18950) found +[19503] Forked 18951 +[19502] Forked 18952 +(18951) found +(18952) found +[19501] Forked 18953 +[19500] Forked 18954 +(18953) found +(18954) found +[19499] Forked 18955 +[19498] Forked 18956 +(18955) found +(18956) found +[19497] Forked 18957 +[19496] Forked 18958 +(18957) found +(18958) found +[19495] Forked 18959 +[19494] Forked 18960 +(18959) found +(18960) found +[19493] Forked 18961 +[19492] Forked 18962 +(18961) found +(18962) found +[19491] Forked 18963 +[19490] Forked 18964 +(18963) found +(18964) found +[19489] Forked 18965 +[19488] Forked 18966 +(18965) found +(18966) found +[19487] Forked 18967 +[19486] Forked 18968 +(18967) found +(18968) found +[19485] Forked 18969 +[19484] Forked 18970 +(18969) found +(18970) found +[19483] Forked 18971 +[19482] Forked 18972 +(18971) found +(18972) found +[19481] Forked 18973 +[19480] Forked 18974 +(18973) found +(18974) found +[19479] Forked 18975 +[19478] Forked 18976 +(18975) found +(18976) found +[19477] Forked 18977 +[19476] Forked 18978 +(18977) found +(18978) found +[19475] Forked 18979 +[19474] Forked 18980 +(18979) found +(18980) found +[19473] Forked 18981 +[19472] Forked 18982 +(18981) found +(18982) found +[19471] Forked 18983 +[19470] Forked 18984 +(18983) found +(18984) found +[19469] Forked 18985 +[19468] Forked 18986 +(18985) found +(18986) found +[19467] Forked 18987 +[19466] Forked 18988 +(18987) found +(18988) found +[19465] Forked 18989 +[19464] Forked 18990 +(18989) found +(18990) found +[19463] Forked 18991 +[19462] Forked 18992 +(18991) found +(18992) found +[19461] Forked 18993 +[19460] Forked 18994 +(18993) found +(18994) found +[19459] Forked 18995 +[19458] Forked 18996 +(18995) found +(18996) found +[19457] Forked 18997 +(18997) found +[19456] Forked 18998 +(18998) found +[19455] Forked 18999 +(18999) found +[19454] Forked 19000 +(19000) found +[19453] Forked 19001 +(19001) found +[19452] Forked 19002 +(19002) found +[19451] Forked 19003 +(19003) found +[19450] Forked 19004 +(19004) found +[19449] Forked 19005 +(19005) found +[19448] Forked 19006 +(19006) found +[19447] Forked 19007 +(19007) found +[19446] Forked 19008 +(19008) found +[19445] Forked 19009 +(19009) found +[19444] Forked 19010 +(19010) found +[19443] Forked 19011 +(19011) found +[19442] Forked 19012 +(19012) found +[19441] Forked 19013 +(19013) found +[19440] Forked 19014 +(19014) found +[19439] Forked 19015 +(19015) found +[19438] Forked 19016 +(19016) found +[19437] Forked 19017 +(19017) found +[19436] Forked 19018 +(19018) found +[19435] Forked 19019 +(19019) found +[19434] Forked 19020 +(19020) found +[19433] Forked 19021 +(19021) found +[19432] Forked 19022 +(19022) found +[19431] Forked 19023 +(19023) found +[19430] Forked 19024 +(19024) found +[19429] Forked 19025 +(19025) found +[19428] Forked 19026 +[19427] Forked 19027 +(19026) found +(19027) found +[19426] Forked 19028 +[19425] Forked 19029 +(19028) found +(19029) found +[19424] Forked 19030 +[19423] Forked 19031 +(19030) found +(19031) found +[19422] Forked 19032 +[19421] Forked 19033 +(19032) found +(19033) found +[19420] Forked 19034 +[19419] Forked 19035 +(19034) found +(19035) found +[19418] Forked 19036 +[19417] Forked 19037 +(19036) found +(19037) found +[19416] Forked 19038 +[19415] Forked 19039 +(19038) found +(19039) found +[19414] Forked 19040 +[19413] Forked 19041 +(19040) found +(19041) found +[19412] Forked 19042 +[19411] Forked 19043 +(19042) found +(19043) found +[19410] Forked 19044 +[19409] Forked 19045 +(19044) found +(19045) found +[19408] Forked 19046 +[19407] Forked 19047 +(19046) found +(19047) found +[19406] Forked 19048 +[19405] Forked 19049 +(19048) found +(19049) found +[19404] Forked 19050 +[19403] Forked 19051 +(19050) found +(19051) found +[19402] Forked 19052 +[19401] Forked 19053 +(19052) found +(19053) found +[19400] Forked 19054 +[19399] Forked 19055 +(19054) found +(19055) found +[19398] Forked 19056 +[19397] Forked 19057 +(19056) found +(19057) found +[19396] Forked 19058 +[19395] Forked 19059 +(19058) found +(19059) found +[19394] Forked 19060 +[19393] Forked 19061 +(19060) found +(19061) found +[19392] Forked 19062 +[19391] Forked 19063 +(19062) found +(19063) found +[19390] Forked 19064 +(19064) found +[19389] Forked 19065 +[19388] Forked 19066 +(19065) found +(19066) found +[19387] Forked 19067 +[19386] Forked 19068 +(19067) found +(19068) found +[19385] Forked 19069 +[19384] Forked 19070 +(19069) found +(19070) found +[19383] Forked 19071 +(19071) found +[19382] Forked 19072 +(19072) found +[19381] Forked 19073 +(19073) found +[19380] Forked 19074 +(19074) found +[19379] Forked 19075 +(19075) found +[19378] Forked 19076 +(19076) found +[19377] Forked 19077 +(19077) found +[19376] Forked 19078 +(19078) found +[19375] Forked 19079 +(19079) found +[19374] Forked 19080 +(19080) found +[19373] Forked 19081 +(19081) found +[19372] Forked 19082 +(19082) found +[19371] Forked 19084 +(19084) found +[19370] Forked 19085 +(19085) found +[19369] Forked 19086 +(19086) found +[19368] Forked 19087 +(19087) found +[19367] Forked 19088 +(19088) found +[19366] Forked 19089 +(19089) found +[19365] Forked 19090 +(19090) found +[19364] Forked 19091 +(19091) found +[19363] Forked 19092 +(19092) found +[19362] Forked 19093 +(19093) found +[19361] Forked 19094 +(19094) found +[19360] Forked 19097 +(19097) found +[19359] Forked 19098 +(19098) found +[19358] Forked 19099 +(19099) found +[19357] Forked 19100 +(19100) found +[19356] Forked 19102 +(19102) found +[19355] Forked 19104 +(19104) found +[19354] Forked 19105 +(19105) found +[19353] Forked 19106 +(19106) found +[19352] Forked 19107 +(19107) found +[19351] Forked 19108 +(19108) found +[19350] Forked 19109 +(19109) found +[19349] Forked 19110 +(19110) found +[19348] Forked 19111 +(19111) found +[19347] Forked 19112 +(19112) found +[19346] Forked 19113 +[19345] Forked 19114 +(19113) found +(19114) found +[19344] Forked 19115 +[19343] Forked 19116 +(19115) found +(19116) found +[19342] Forked 19117 +[19341] Forked 19118 +(19117) found +(19118) found +[19340] Forked 19119 +[19339] Forked 19120 +(19119) found +(19120) found +[19338] Forked 19122 +[19337] Forked 19123 +(19122) found +(19123) found +[19336] Forked 19124 +[19335] Forked 19125 +(19124) found +(19125) found +[19334] Forked 19126 +[19333] Forked 19127 +(19126) found +(19127) found +[19332] Forked 19128 +[19331] Forked 19129 +(19128) found +(19129) found +[19330] Forked 19130 +[19329] Forked 19131 +(19130) found +(19131) found +[19328] Forked 19132 +[19327] Forked 19133 +(19132) found +(19133) found +[19326] Forked 19134 +[19325] Forked 19135 +(19134) found +(19135) found +[19324] Forked 19136 +[19323] Forked 19137 +(19136) found +(19137) found +[19322] Forked 19138 +[19321] Forked 19139 +(19138) found +(19139) found +[19320] Forked 19140 +[19319] Forked 19141 +(19140) found +(19141) found +[19318] Forked 19142 +[19317] Forked 19143 +(19142) found +(19143) found +[19316] Forked 19144 +[19315] Forked 19145 +(19144) found +(19145) found +[19314] Forked 19146 +[19313] Forked 19147 +(19146) found +(19147) found +[19312] Forked 19148 +[19311] Forked 19149 +(19148) found +(19149) found +[19310] Forked 19150 +[19309] Forked 19151 +(19150) found +(19151) found +[19308] Forked 19152 +[19307] Forked 19153 +(19152) found +(19153) found +[19306] Forked 19154 +[19305] Forked 19155 +(19154) found +(19155) found +[19304] Forked 19156 +[19303] Forked 19157 +(19156) found +(19157) found +[19302] Forked 19158 +[19301] Forked 19159 +(19158) found +(19159) found +[19300] Forked 19160 +[19299] Forked 19161 +(19160) found +(19161) found +[19298] Forked 19162 +[19297] Forked 19163 +(19162) found +(19163) found +[19296] Forked 19164 +[19295] Forked 19165 +(19164) found +(19165) found +[19294] Forked 19166 +[19293] Forked 19167 +(19166) found +(19167) found +[19292] Forked 19168 +[19291] Forked 19169 +(19168) found +(19169) found +[19290] Forked 19170 +[19289] Forked 19171 +(19170) found +(19171) found +[19288] Forked 19172 +[19287] Forked 19173 +(19172) found +(19173) found +[19286] Forked 19174 +[19285] Forked 19175 +(19174) found +(19175) found +[19284] Forked 19176 +[19283] Forked 19177 +(19176) found +(19177) found +[19282] Forked 19178 +[19281] Forked 19179 +(19178) found +(19179) found +[19280] Forked 19180 +[19279] Forked 19181 +(19180) found +(19181) found +[19278] Forked 19182 +[19277] Forked 19183 +(19182) found +(19183) found +[19276] Forked 19184 +[19275] Forked 19186 +(19184) found +(19186) found +[19274] Forked 19187 +(19187) found +[19273] Forked 19188 +[19272] Forked 19189 +(19188) found +(19189) found +[19271] Forked 19191 +[19270] Forked 19192 +(19191) found +(19192) found +[19269] Forked 19193 +[19268] Forked 19194 +(19193) found +(19194) found +[19267] Forked 19195 +[19266] Forked 19196 +(19195) found +(19196) found +[19265] Forked 19197 +[19264] Forked 19198 +(19197) found +(19198) found +[19263] Forked 19199 +[19262] Forked 19200 +(19199) found +(19200) found +[19261] Forked 19201 +[19260] Forked 19202 +(19201) found +(19202) found +[19259] Forked 19203 +[19258] Forked 19204 +(19203) found +(19204) found +[19257] Forked 19205 +[19256] Forked 19206 +(19205) found +(19206) found +[19255] Forked 19207 +[19254] Forked 19208 +(19207) found +(19208) found +[19253] Forked 19209 +[19252] Forked 19210 +(19209) found +(19210) found +[19251] Forked 19211 +[19250] Forked 19212 +(19211) found +(19212) found +[19249] Forked 19213 +[19248] Forked 19214 +(19213) found +(19214) found +[19247] Forked 19215 +[19246] Forked 19216 +(19215) found +(19216) found +[19245] Forked 19217 +[19244] Forked 19218 +(19217) found +(19218) found +[19243] Forked 19219 +[19242] Forked 19220 +(19219) found +(19220) found +[19241] Forked 19221 +[19240] Forked 19222 +(19221) found +(19222) found +[19239] Forked 19223 +[19238] Forked 19224 +(19223) found +(19224) found +[19237] Forked 19225 +[19236] Forked 19226 +(19225) found +(19226) found +[19235] Forked 19227 +[19234] Forked 19228 +(19227) found +(19228) found +[19233] Forked 19229 +[19232] Forked 19230 +(19229) found +(19230) found +[19231] Forked 19231 +[19230] Forked 19232 +(19231) found +(19232) found +[19229] Forked 19233 +[19228] Forked 19234 +(19233) found +(19234) found +[19227] Forked 19235 +[19226] Forked 19236 +(19235) found +(19236) found +[19225] Forked 19237 +[19224] Forked 19238 +(19237) found +(19238) found +[19223] Forked 19239 +[19222] Forked 19240 +(19239) found +(19240) found +[19221] Forked 19241 +[19220] Forked 19242 +(19241) found +(19242) found +[19219] Forked 19243 +[19218] Forked 19244 +(19243) found +(19244) found +[19217] Forked 19245 +[19216] Forked 19246 +(19245) found +(19246) found +[19215] Forked 19247 +[19214] Forked 19248 +(19247) found +(19248) found +[19213] Forked 19249 +[19212] Forked 19250 +(19249) found +(19250) found +[19211] Forked 19251 +(19251) found +[19210] Forked 19252 +(19252) found +[19209] Forked 19253 +(19253) found +[19208] Forked 19254 +(19254) found +[19207] Forked 19255 +(19255) found +[19206] Forked 19256 +(19256) found +[19205] Forked 19257 +(19257) found +[19204] Forked 19258 +(19258) found +[19203] Forked 19259 +(19259) found +[19202] Forked 19260 +(19260) found +[19201] Forked 19261 +(19261) found +[19200] Forked 19262 +(19262) found +[19199] Forked 19263 +(19263) found +[19198] Forked 19264 +(19264) found +[19197] Forked 19265 +(19265) found +[19196] Forked 19266 +(19266) found +[19195] Forked 19267 +(19267) found +[19194] Forked 19268 +(19268) found +[19193] Forked 19269 +(19269) found +[19192] Forked 19270 +(19270) found +[19191] Forked 19271 +(19271) found +[19190] Forked 19272 +(19272) found +[19189] Forked 19273 +(19273) found +[19188] Forked 19274 +(19274) found +[19187] Forked 19275 +(19275) found +[19186] Forked 19276 +(19276) found +[19185] Forked 19277 +(19277) found +[19184] Forked 19278 +(19278) found +[19183] Forked 19279 +(19279) found +[19182] Forked 19280 +(19280) found +[19181] Forked 19281 +(19281) found +[19180] Forked 19282 +(19282) found +[19179] Forked 19283 +(19283) found +[19178] Forked 19284 +(19284) found +[19177] Forked 19285 +(19285) found +[19176] Forked 19286 +(19286) found +[19175] Forked 19287 +(19287) found +[19174] Forked 19288 +[19173] Forked 19289 +(19288) found +(19289) found +[19172] Forked 19290 +(19290) found +[19171] Forked 19291 +(19291) found +[19170] Forked 19292 +(19292) found +[19169] Forked 19293 +(19293) found +[19168] Forked 19294 +(19294) found +[19167] Forked 19295 +(19295) found +[19166] Forked 19296 +(19296) found +[19165] Forked 19297 +(19297) found +[19164] Forked 19298 +(19298) found +[19163] Forked 19299 +(19299) found +[19162] Forked 19300 +(19300) found +[19161] Forked 19301 +(19301) found +[19160] Forked 19302 +(19302) found +[19159] Forked 19303 +(19303) found +[19158] Forked 19304 +(19304) found +[19157] Forked 19305 +(19305) found +[19156] Forked 19306 +(19306) found +[19155] Forked 19307 +(19307) found +[19154] Forked 19308 +(19308) found +[19153] Forked 19309 +(19309) found +[19152] Forked 19310 +(19310) found +[19151] Forked 19311 +(19311) found +[19150] Forked 19312 +(19312) found +[19149] Forked 19313 +(19313) found +[19148] Forked 19314 +(19314) found +[19147] Forked 19315 +(19315) found +[19146] Forked 19316 +(19316) found +[19145] Forked 19317 +(19317) found +[19144] Forked 19318 +(19318) found +[19143] Forked 19319 +(19319) found +[19142] Forked 19320 +[19141] Forked 19321 +(19321) found +(19320) found +[19140] Forked 19322 +(19322) found +[19139] Forked 19323 +(19323) found +[19138] Forked 19324 +(19324) found +[19137] Forked 19325 +(19325) found +[19136] Forked 19326 +(19326) found +[19135] Forked 19327 +(19327) found +[19134] Forked 19328 +(19328) found +[19133] Forked 19329 +(19329) found +[19132] Forked 19330 +(19330) found +[19131] Forked 19331 +(19331) found +[19130] Forked 19332 +(19332) found +[19129] Forked 19333 +(19333) found +[19128] Forked 19334 +(19334) found +[19127] Forked 19335 +(19335) found +[19126] Forked 19336 +(19336) found +[19125] Forked 19337 +(19337) found +[19124] Forked 19338 +(19338) found +[19123] Forked 19339 +(19339) found +[19122] Forked 19340 +(19340) found +[19121] Forked 19341 +(19341) found +[19120] Forked 19342 +(19342) found +[19119] Forked 19343 +(19343) found +[19118] Forked 19344 +(19344) found +[19117] Forked 19345 +(19345) found +[19116] Forked 19346 +(19346) found +[19115] Forked 19347 +(19347) found +[19114] Forked 19348 +(19348) found +[19113] Forked 19349 +(19349) found +[19112] Forked 19352 +(19352) found +[19111] Forked 19353 +(19353) found +[19110] Forked 19354 +(19354) found +[19109] Forked 19355 +(19355) found +[19108] Forked 19356 +(19356) found +[19107] Forked 19357 +(19357) found +[19106] Forked 19359 +(19359) found +[19105] Forked 19360 +(19360) found +[19104] Forked 19361 +(19361) found +[19103] Forked 19362 +(19362) found +[19102] Forked 19363 +(19363) found +[19101] Forked 19364 +(19364) found +[19100] Forked 19365 +(19365) found +[19099] Forked 19366 +(19366) found +[19098] Forked 19367 +(19367) found +[19097] Forked 19368 +(19368) found +[19096] Forked 19369 +(19369) found +[19095] Forked 19370 +(19370) found +[19094] Forked 19371 +(19371) found +[19093] Forked 19372 +(19372) found +[19092] Forked 19373 +(19373) found +[19091] Forked 19374 +(19374) found +[19090] Forked 19375 +(19375) found +[19089] Forked 19376 +(19376) found +[19088] Forked 19377 +(19377) found +[19087] Forked 19378 +(19378) found +[19086] Forked 19379 +(19379) found +[19085] Forked 19380 +(19380) found +[19084] Forked 19381 +(19381) found +[19083] Forked 19382 +(19382) found +[19082] Forked 19383 +(19383) found +[19081] Forked 19384 +(19384) found +[19080] Forked 19385 +(19385) found +[19079] Forked 19386 +(19386) found +[19078] Forked 19387 +(19387) found +[19077] Forked 19388 +(19388) found +[19076] Forked 19389 +(19389) found +[19075] Forked 19390 +(19390) found +[19074] Forked 19391 +(19391) found +[19073] Forked 19392 +(19392) found +[19072] Forked 19393 +(19393) found +[19071] Forked 19394 +(19394) found +[19070] Forked 19395 +(19395) found +[19069] Forked 19396 +(19396) found +[19068] Forked 19397 +[19067] Forked 19398 +(19397) found +(19398) found +[19066] Forked 19399 +[19065] Forked 19400 +(19399) found +(19400) found +[19064] Forked 19401 +[19063] Forked 19402 +(19401) found +(19402) found +[19062] Forked 19403 +[19061] Forked 19404 +(19403) found +(19404) found +[19060] Forked 19405 +[19059] Forked 19406 +(19405) found +(19406) found +[19058] Forked 19407 +[19057] Forked 19408 +(19407) found +(19408) found +[19056] Forked 19409 +[19055] Forked 19410 +(19409) found +(19410) found +[19054] Forked 19411 +[19053] Forked 19412 +(19411) found +(19412) found +[19052] Forked 19413 +[19051] Forked 19414 +(19413) found +(19414) found +[19050] Forked 19415 +[19049] Forked 19416 +(19415) found +(19416) found +[19048] Forked 19417 +[19047] Forked 19418 +(19417) found +(19418) found +[19046] Forked 19419 +[19045] Forked 19420 +(19419) found +(19420) found +[19044] Forked 19421 +[19043] Forked 19422 +(19421) found +(19422) found +[19042] Forked 19423 +[19041] Forked 19424 +(19423) found +(19424) found +[19040] Forked 19425 +[19039] Forked 19426 +(19425) found +(19426) found +[19038] Forked 19427 +[19037] Forked 19428 +(19427) found +(19428) found +[19036] Forked 19429 +(19429) found +[19035] Forked 19430 +(19430) found +[19034] Forked 19431 +(19431) found +[19033] Forked 19432 +(19432) found +[19032] Forked 19433 +(19433) found +[19031] Forked 19434 +(19434) found +[19030] Forked 19435 +(19435) found +[19029] Forked 19436 +(19436) found +[19028] Forked 19437 +(19437) found +[19027] Forked 19438 +(19438) found +[19026] Forked 19439 +(19439) found +[19025] Forked 19440 +(19440) found +[19024] Forked 19441 +(19441) found +[19023] Forked 19442 +(19442) found +[19022] Forked 19443 +(19443) found +[19021] Forked 19444 +(19444) found +[19020] Forked 19445 +(19445) found +[19019] Forked 19446 +(19446) found +[19018] Forked 19447 +(19447) found +[19017] Forked 19448 +(19448) found +[19016] Forked 19449 +(19449) found +[19015] Forked 19450 +(19450) found +[19014] Forked 19451 +(19451) found +[19013] Forked 19452 +(19452) found +[19012] Forked 19453 +(19453) found +[19011] Forked 19454 +(19454) found +[19010] Forked 19455 +[19009] Forked 19456 +(19455) found +(19456) found +[19008] Forked 19457 +[19007] Forked 19458 +(19457) found +(19458) found +[19006] Forked 19459 +[19005] Forked 19460 +(19459) found +(19460) found +[19004] Forked 19461 +[19003] Forked 19462 +(19461) found +(19462) found +[19002] Forked 19463 +[19001] Forked 19464 +(19463) found +(19464) found +[19000] Forked 19465 +[18999] Forked 19466 +(19465) found +(19466) found +[18998] Forked 19467 +[18997] Forked 19468 +(19467) found +(19468) found +[18996] Forked 19469 +[18995] Forked 19470 +(19469) found +(19470) found +[18994] Forked 19471 +[18993] Forked 19472 +(19471) found +(19472) found +[18992] Forked 19473 +[18991] Forked 19474 +(19473) found +(19474) found +[18990] Forked 19475 +[18989] Forked 19476 +(19475) found +(19476) found +[18988] Forked 19477 +[18987] Forked 19478 +(19477) found +(19478) found +[18986] Forked 19479 +[18985] Forked 19480 +(19479) found +(19480) found +[18984] Forked 19481 +[18983] Forked 19482 +(19481) found +(19482) found +[18982] Forked 19483 +[18981] Forked 19484 +(19483) found +(19484) found +[18980] Forked 19485 +[18979] Forked 19486 +(19485) found +(19486) found +[18978] Forked 19487 +[18977] Forked 19488 +(19487) found +(19488) found +[18976] Forked 19489 +[18975] Forked 19490 +(19489) found +(19490) found +[18974] Forked 19491 +[18973] Forked 19492 +(19491) found +(19492) found +[18972] Forked 19493 +[18971] Forked 19494 +(19493) found +(19494) found +[18970] Forked 19495 +(19495) found +[18969] Forked 19496 +[18968] Forked 19497 +(19496) found +(19497) found +[18967] Forked 19498 +[18966] Forked 19499 +(19498) found +(19499) found +[18965] Forked 19500 +(19500) found +[18964] Forked 19501 +[18963] Forked 19502 +(19501) found +(19502) found +[18962] Forked 19503 +[18961] Forked 19504 +(19503) found +(19504) found +[18960] Forked 19505 +[18959] Forked 19506 +(19505) found +(19506) found +[18958] Forked 19507 +[18957] Forked 19508 +(19507) found +(19508) found +[18956] Forked 19509 +[18955] Forked 19510 +(19509) found +(19510) found +[18954] Forked 19511 +[18953] Forked 19512 +(19511) found +(19512) found +[18952] Forked 19513 +[18951] Forked 19514 +(19513) found +(19514) found +[18950] Forked 19515 +[18949] Forked 19516 +(19515) found +(19516) found +[18948] Forked 19517 +[18947] Forked 19518 +(19517) found +(19518) found +[18946] Forked 19519 +[18945] Forked 19520 +(19519) found +(19520) found +[18944] Forked 19521 +[18943] Forked 19522 +(19521) found +(19522) found +[18942] Forked 19523 +[18941] Forked 19524 +(19523) found +(19524) found +[18940] Forked 19525 +[18939] Forked 19526 +(19525) found +(19526) found +[18938] Forked 19527 +[18937] Forked 19528 +(19527) found +(19528) found +[18936] Forked 19529 +[18935] Forked 19530 +(19529) found +(19530) found +[18934] Forked 19531 +[18933] Forked 19532 +(19531) found +(19532) found +[18932] Forked 19533 +[18931] Forked 19534 +(19533) found +(19534) found +[18930] Forked 19535 +[18929] Forked 19536 +(19535) found +(19536) found +[18928] Forked 19537 +[18927] Forked 19538 +(19537) found +(19538) found +[18926] Forked 19539 +[18925] Forked 19540 +(19539) found +(19540) found +[18924] Forked 19541 +[18923] Forked 19542 +(19541) found +(19542) found +[18922] Forked 19543 +[18921] Forked 19544 +(19543) found +(19544) found +[18920] Forked 19545 +[18919] Forked 19546 +(19545) found +(19546) found +[18918] Forked 19547 +[18917] Forked 19548 +(19547) found +(19548) found +[18916] Forked 19549 +[18915] Forked 19550 +(19549) found +(19550) found +[18914] Forked 19551 +[18913] Forked 19552 +(19551) found +(19552) found +[18912] Forked 19553 +[18911] Forked 19554 +(19553) found +(19554) found +[18910] Forked 19555 +[18909] Forked 19556 +(19555) found +(19556) found +[18908] Forked 19557 +[18907] Forked 19558 +(19557) found +(19558) found +[18906] Forked 19559 +[18905] Forked 19560 +(19559) found +(19560) found +[18904] Forked 19561 +[18903] Forked 19562 +(19561) found +(19562) found +[18902] Forked 19563 +[18901] Forked 19564 +(19563) found +(19564) found +[18900] Forked 19565 +[18899] Forked 19566 +(19565) found +(19566) found +[18898] Forked 19567 +[18897] Forked 19568 +(19567) found +(19568) found +[18896] Forked 19569 +[18895] Forked 19570 +(19569) found +(19570) found +[18894] Forked 19571 +[18893] Forked 19572 +(19571) found +(19572) found +[18892] Forked 19573 +[18891] Forked 19574 +(19573) found +(19574) found +[18890] Forked 19575 +[18889] Forked 19576 +(19575) found +(19576) found +[18888] Forked 19577 +[18887] Forked 19578 +(19577) found +(19578) found +[18886] Forked 19579 +[18885] Forked 19580 +(19579) found +(19580) found +[18884] Forked 19581 +[18883] Forked 19582 +(19581) found +(19582) found +[18882] Forked 19583 +[18881] Forked 19584 +(19583) found +(19584) found +[18880] Forked 19585 +[18879] Forked 19586 +(19585) found +(19586) found +[18878] Forked 19587 +[18877] Forked 19588 +(19587) found +(19588) found +[18876] Forked 19589 +[18875] Forked 19590 +(19589) found +(19590) found +[18874] Forked 19591 +[18873] Forked 19592 +(19591) found +(19592) found +[18872] Forked 19593 +[18871] Forked 19594 +(19593) found +(19594) found +[18870] Forked 19595 +[18869] Forked 19596 +(19595) found +(19596) found +[18868] Forked 19597 +[18867] Forked 19598 +(19597) found +(19598) found +[18866] Forked 19599 +[18865] Forked 19600 +(19599) found +(19600) found +[18864] Forked 19601 +[18863] Forked 19602 +(19601) found +(19602) found +[18862] Forked 19603 +[18861] Forked 19604 +(19603) found +(19604) found +[18860] Forked 19605 +[18859] Forked 19606 +(19605) found +(19606) found +[18858] Forked 19607 +[18857] Forked 19608 +(19607) found +(19608) found +[18856] Forked 19609 +[18855] Forked 19610 +(19609) found +(19610) found +[18854] Forked 19611 +[18853] Forked 19612 +(19611) found +(19612) found +[18852] Forked 19613 +[18851] Forked 19614 +(19613) found +(19614) found +[18850] Forked 19615 +[18849] Forked 19616 +(19615) found +(19616) found +[18848] Forked 19617 +[18847] Forked 19618 +(19617) found +(19618) found +[18846] Forked 19619 +[18845] Forked 19620 +(19619) found +(19620) found +[18844] Forked 19621 +[18843] Forked 19622 +(19621) found +(19622) found +[18842] Forked 19623 +[18841] Forked 19624 +(19623) found +(19624) found +[18840] Forked 19625 +[18839] Forked 19626 +(19625) found +(19626) found +[18838] Forked 19627 +[18837] Forked 19628 +(19627) found +(19628) found +[18836] Forked 19629 +[18835] Forked 19630 +(19629) found +(19630) found +[18834] Forked 19631 +[18833] Forked 19632 +(19631) found +(19632) found +[18832] Forked 19633 +[18831] Forked 19634 +(19633) found +(19634) found +[18830] Forked 19635 +[18829] Forked 19636 +(19635) found +(19636) found +[18828] Forked 19637 +[18827] Forked 19638 +(19637) found +(19638) found +[18826] Forked 19639 +[18825] Forked 19640 +(19639) found +(19640) found +[18824] Forked 19641 +[18823] Forked 19642 +(19641) found +(19642) found +[18822] Forked 19643 +[18821] Forked 19644 +(19643) found +(19644) found +[18820] Forked 19645 +[18819] Forked 19646 +(19645) found +(19646) found +[18818] Forked 19647 +[18817] Forked 19648 +(19647) found +(19648) found +[18816] Forked 19649 +[18815] Forked 19650 +(19649) found +(19650) found +[18814] Forked 19651 +[18813] Forked 19652 +(19651) found +(19652) found +[18812] Forked 19653 +[18811] Forked 19654 +(19653) found +(19654) found +[18810] Forked 19655 +[18809] Forked 19656 +(19655) found +(19656) found +[18808] Forked 19657 +[18807] Forked 19658 +(19657) found +(19658) found +[18806] Forked 19659 +[18805] Forked 19660 +(19659) found +(19660) found +[18804] Forked 19661 +[18803] Forked 19662 +(19661) found +(19662) found +[18802] Forked 19663 +[18801] Forked 19664 +(19663) found +(19664) found +[18800] Forked 19665 +[18799] Forked 19666 +(19665) found +(19666) found +[18798] Forked 19667 +[18797] Forked 19668 +(19667) found +(19668) found +[18796] Forked 19669 +[18795] Forked 19670 +(19669) found +(19670) found +[18794] Forked 19671 +[18793] Forked 19672 +(19671) found +(19672) found +[18792] Forked 19673 +[18791] Forked 19674 +(19673) found +(19674) found +[18790] Forked 19675 +[18789] Forked 19676 +(19675) found +(19676) found +[18788] Forked 19677 +[18787] Forked 19678 +(19677) found +(19678) found +[18786] Forked 19679 +[18785] Forked 19680 +(19679) found +(19680) found +[18784] Forked 19681 +(19681) found +[18783] Forked 19682 +(19682) found +[18782] Forked 19683 +(19683) found +[18781] Forked 19684 +(19684) found +[18780] Forked 19685 +(19685) found +[18779] Forked 19686 +(19686) found +[18778] Forked 19687 +(19687) found +[18777] Forked 19688 +(19688) found +[18776] Forked 19689 +(19689) found +[18775] Forked 19690 +(19690) found +[18774] Forked 19691 +(19691) found +[18773] Forked 19692 +(19692) found +[18772] Forked 19693 +(19693) found +[18771] Forked 19694 +(19694) found +[18770] Forked 19695 +(19695) found +[18769] Forked 19696 +(19696) found +[18768] Forked 19697 +(19697) found +[18767] Forked 19698 +(19698) found +[18766] Forked 19699 +(19699) found +[18765] Forked 19700 +(19700) found +[18764] Forked 19701 +(19701) found +[18763] Forked 19702 +(19702) found +[18762] Forked 19703 +(19703) found +[18761] Forked 19704 +(19704) found +[18760] Forked 19705 +(19705) found +[18759] Forked 19706 +(19706) found +[18758] Forked 19707 +(19707) found +[18757] Forked 19708 +(19708) found +[18756] Forked 19709 +(19709) found +[18755] Forked 19710 +(19710) found +[18754] Forked 19711 +(19711) found +[18753] Forked 19712 +(19712) found +[18752] Forked 19713 +(19713) found +[18751] Forked 19714 +(19714) found +[18750] Forked 19715 +(19715) found +[18749] Forked 19716 +(19716) found +[18748] Forked 19717 +[18747] Forked 19718 +(19717) found +(19718) found +[18746] Forked 19719 +[18745] Forked 19720 +(19719) found +(19720) found +[18744] Forked 19721 +[18743] Forked 19722 +(19721) found +(19722) found +[18742] Forked 19723 +[18741] Forked 19724 +(19723) found +(19724) found +[18740] Forked 19725 +[18739] Forked 19726 +(19725) found +(19726) found +[18738] Forked 19727 +[18737] Forked 19728 +(19727) found +(19728) found +[18736] Forked 19729 +[18735] Forked 19730 +(19729) found +(19730) found +[18734] Forked 19731 +[18733] Forked 19732 +(19731) found +(19732) found +[18732] Forked 19733 +[18731] Forked 19734 +(19733) found +(19734) found +[18730] Forked 19735 +[18729] Forked 19736 +(19735) found +(19736) found +[18728] Forked 19737 +[18727] Forked 19738 +(19737) found +(19738) found +[18726] Forked 19739 +[18725] Forked 19740 +(19739) found +(19740) found +[18724] Forked 19741 +[18723] Forked 19742 +(19741) found +(19742) found +[18722] Forked 19743 +[18721] Forked 19744 +(19743) found +(19744) found +[18720] Forked 19745 +[18719] Forked 19746 +(19745) found +(19746) found +[18718] Forked 19747 +[18717] Forked 19748 +(19747) found +(19748) found +[18716] Forked 19749 +[18715] Forked 19750 +(19749) found +(19750) found +[18714] Forked 19751 +[18713] Forked 19752 +(19751) found +(19752) found +[18712] Forked 19753 +[18711] Forked 19755 +(19753) found +(19755) found +[18710] Forked 19756 +(19756) found +[18709] Forked 19757 +(19757) found +[18708] Forked 19758 +(19758) found +[18707] Forked 19759 +(19759) found +[18706] Forked 19760 +(19760) found +[18705] Forked 19761 +(19761) found +[18704] Forked 19762 +(19762) found +[18703] Forked 19763 +(19763) found +[18702] Forked 19764 +(19764) found +[18701] Forked 19765 +(19765) found +[18700] Forked 19766 +(19766) found +[18699] Forked 19767 +(19767) found +[18698] Forked 19768 +(19768) found +[18697] Forked 19769 +(19769) found +[18696] Forked 19770 +(19770) found +[18695] Forked 19771 +(19771) found +[18694] Forked 19772 +(19772) found +[18693] Forked 19773 +(19773) found +[18692] Forked 19774 +(19774) found +[18691] Forked 19775 +(19775) found +[18690] Forked 19776 +(19776) found +[18689] Forked 19777 +(19777) found +[18688] Forked 19778 +(19778) found +[18687] Forked 19779 +(19779) found +[18686] Forked 19780 +(19780) found +[18685] Forked 19781 +(19781) found +[18684] Forked 19782 +(19782) found +[18683] Forked 19783 +(19783) found +[18682] Forked 19784 +(19784) found +[18681] Forked 19785 +(19785) found +[18680] Forked 19786 +(19786) found +[18679] Forked 19787 +(19787) found +[18678] Forked 19788 +(19788) found +[18677] Forked 19789 +(19789) found +[18676] Forked 19790 +(19790) found +[18675] Forked 19791 +(19791) found +[18674] Forked 19792 +(19792) found +[18673] Forked 19793 +(19793) found +[18672] Forked 19794 +(19794) found +[18671] Forked 19795 +(19795) found +[18670] Forked 19796 +(19796) found +[18669] Forked 19797 +[18668] Forked 19798 +(19797) found +(19798) found +[18667] Forked 19799 +[18666] Forked 19800 +(19799) found +(19800) found +[18665] Forked 19801 +[18664] Forked 19802 +(19801) found +(19802) found +[18663] Forked 19803 +[18662] Forked 19804 +(19803) found +(19804) found +[18661] Forked 19805 +[18660] Forked 19806 +(19805) found +(19806) found +[18659] Forked 19807 +[18658] Forked 19808 +(19807) found +(19808) found +[18657] Forked 19809 +[18656] Forked 19810 +(19809) found +(19810) found +[18655] Forked 19811 +[18654] Forked 19812 +(19811) found +(19812) found +[18653] Forked 19813 +[18652] Forked 19814 +(19813) found +(19814) found +[18651] Forked 19815 +[18650] Forked 19816 +(19815) found +(19816) found +[18649] Forked 19817 +[18648] Forked 19818 +(19817) found +(19818) found +[18647] Forked 19819 +[18646] Forked 19820 +(19819) found +(19820) found +[18645] Forked 19821 +[18644] Forked 19822 +(19821) found +(19822) found +[18643] Forked 19823 +[18642] Forked 19824 +(19823) found +(19824) found +[18641] Forked 19825 +[18640] Forked 19826 +(19825) found +(19826) found +[18639] Forked 19827 +[18638] Forked 19828 +(19827) found +(19828) found +[18637] Forked 19829 +[18636] Forked 19830 +(19829) found +(19830) found +[18635] Forked 19831 +[18634] Forked 19832 +(19831) found +(19832) found +[18633] Forked 19833 +[18632] Forked 19834 +(19833) found +(19834) found +[18631] Forked 19835 +[18630] Forked 19836 +(19835) found +(19836) found +[18629] Forked 19837 +[18628] Forked 19838 +(19837) found +(19838) found +[18627] Forked 19839 +[18626] Forked 19840 +(19839) found +(19840) found +[18625] Forked 19841 +[18624] Forked 19842 +(19841) found +(19842) found +[18623] Forked 19843 +[18622] Forked 19844 +(19843) found +(19844) found +[18621] Forked 19845 +(19845) found +[18620] Forked 19846 +(19846) found +[18619] Forked 19847 +(19847) found +[18618] Forked 19848 +(19848) found +[18617] Forked 19849 +(19849) found +[18616] Forked 19850 +(19850) found +[18615] Forked 19851 +(19851) found +[18614] Forked 19852 +(19852) found +[18613] Forked 19853 +(19853) found +[18612] Forked 19854 +(19854) found +[18611] Forked 19855 +(19855) found +[18610] Forked 19856 +(19856) found +[18609] Forked 19857 +(19857) found +[18608] Forked 19858 +(19858) found +[18607] Forked 19859 +(19859) found +[18606] Forked 19860 +(19860) found +[18605] Forked 19861 +(19861) found +[18604] Forked 19862 +(19862) found +[18603] Forked 19863 +(19863) found +[18602] Forked 19864 +(19864) found +[18601] Forked 19865 +(19865) found +[18600] Forked 19866 +(19866) found +[18599] Forked 19867 +(19867) found +[18598] Forked 19868 +(19868) found +[18597] Forked 19869 +(19869) found +[18596] Forked 19870 +(19870) found +[18595] Forked 19871 +(19871) found +[18594] Forked 19872 +(19872) found +[18593] Forked 19873 +(19873) found +[18592] Forked 19874 +(19874) found +[18591] Forked 19875 +(19875) found +[18590] Forked 19876 +(19876) found +[18589] Forked 19877 +(19877) found +[18588] Forked 19878 +(19878) found +[18587] Forked 19879 +[18586] Forked 19880 +(19879) found +(19880) found +[18585] Forked 19881 +[18584] Forked 19882 +(19881) found +(19882) found +[18583] Forked 19883 +[18582] Forked 19884 +(19883) found +(19884) found +[18581] Forked 19885 +[18580] Forked 19886 +(19885) found +(19886) found +[18579] Forked 19887 +[18578] Forked 19888 +(19887) found +(19888) found +[18577] Forked 19889 +[18576] Forked 19890 +(19889) found +(19890) found +[18575] Forked 19891 +[18574] Forked 19892 +(19891) found +(19892) found +[18573] Forked 19893 +[18572] Forked 19894 +(19893) found +(19894) found +[18571] Forked 19895 +[18570] Forked 19896 +(19895) found +(19896) found +[18569] Forked 19897 +[18568] Forked 19898 +(19897) found +(19898) found +[18567] Forked 19899 +[18566] Forked 19900 +(19899) found +(19900) found +[18565] Forked 19901 +[18564] Forked 19902 +(19901) found +(19902) found +[18563] Forked 19903 +[18562] Forked 19904 +(19903) found +(19904) found +[18561] Forked 19905 +[18560] Forked 19906 +(19905) found +(19906) found +[18559] Forked 19907 +[18558] Forked 19908 +(19907) found +(19908) found +[18557] Forked 19909 +[18556] Forked 19910 +(19909) found +(19910) found +[18555] Forked 19911 +[18554] Forked 19912 +(19911) found +(19912) found +[18553] Forked 19913 +[18552] Forked 19914 +(19913) found +(19914) found +[18551] Forked 19915 +[18550] Forked 19916 +(19915) found +(19916) found +[18549] Forked 19917 +[18548] Forked 19918 +(19917) found +(19918) found +[18547] Forked 19919 +[18546] Forked 19920 +(19919) found +(19920) found +[18545] Forked 19921 +[18544] Forked 19922 +(19921) found +(19922) found +[18543] Forked 19923 +[18542] Forked 19924 +(19923) found +(19924) found +[18541] Forked 19925 +[18540] Forked 19926 +(19925) found +(19926) found +[18539] Forked 19927 +[18538] Forked 19928 +(19927) found +(19928) found +[18537] Forked 19929 +[18536] Forked 19930 +(19929) found +(19930) found +[18535] Forked 19931 +[18534] Forked 19932 +(19931) found +(19932) found +[18533] Forked 19933 +[18532] Forked 19934 +(19933) found +(19934) found +[18531] Forked 19935 +[18530] Forked 19936 +(19935) found +(19936) found +[18529] Forked 19937 +[18528] Forked 19938 +(19937) found +(19938) found +[18527] Forked 19939 +[18526] Forked 19940 +(19939) found +(19940) found +[18525] Forked 19941 +[18524] Forked 19942 +(19941) found +(19942) found +[18523] Forked 19943 +[18522] Forked 19944 +(19943) found +(19944) found +[18521] Forked 19945 +[18520] Forked 19946 +(19945) found +(19946) found +[18519] Forked 19947 +[18518] Forked 19948 +(19947) found +(19948) found +[18517] Forked 19949 +[18516] Forked 19950 +(19949) found +(19950) found +[18515] Forked 19951 +[18514] Forked 19952 +(19951) found +(19952) found +[18513] Forked 19953 +[18512] Forked 19954 +(19953) found +(19954) found +[18511] Forked 19955 +[18510] Forked 19956 +(19955) found +(19956) found +[18509] Forked 19957 +[18508] Forked 19958 +(19957) found +(19958) found +[18507] Forked 19959 +[18506] Forked 19960 +(19959) found +(19960) found +[18505] Forked 19961 +[18504] Forked 19962 +(19961) found +(19962) found +[18503] Forked 19963 +[18502] Forked 19964 +(19963) found +(19964) found +[18501] Forked 19965 +[18500] Forked 19966 +(19965) found +(19966) found +[18499] Forked 19967 +[18498] Forked 19968 +(19967) found +(19968) found +[18497] Forked 19969 +[18496] Forked 19970 +(19969) found +(19970) found +[18495] Forked 19971 +(19971) found +[18494] Forked 19972 +(19972) found +[18493] Forked 19973 +(19973) found +[18492] Forked 19974 +(19974) found +[18491] Forked 19975 +(19975) found +[18490] Forked 19976 +(19976) found +[18489] Forked 19977 +(19977) found +[18488] Forked 19978 +(19978) found +[18487] Forked 19979 +(19979) found +[18486] Forked 19980 +(19980) found +[18485] Forked 19981 +(19981) found +[18484] Forked 19982 +(19982) found +[18483] Forked 19983 +(19983) found +[18482] Forked 19984 +(19984) found +[18481] Forked 19985 +(19985) found +[18480] Forked 19986 +(19986) found +[18479] Forked 19987 +(19987) found +[18478] Forked 19988 +(19988) found +[18477] Forked 19989 +(19989) found +[18476] Forked 19990 +(19990) found +[18475] Forked 19991 +(19991) found +[18474] Forked 19992 +(19992) found +[18473] Forked 19993 +(19993) found +[18472] Forked 19994 +(19994) found +[18471] Forked 19995 +(19995) found +[18470] Forked 19996 +(19996) found +[18469] Forked 19997 +(19997) found +[18468] Forked 19998 +(19998) found +[18467] Forked 19999 +(19999) found +[18466] Forked 20000 +(20000) found +[18465] Forked 20001 +(20001) found +[18464] Forked 20002 +(20002) found +[18463] Forked 20003 +(20003) found +[18462] Forked 20004 +(20004) found +[18461] Forked 20005 +(20005) found +[18460] Forked 20006 +(20006) found +[18459] Forked 20007 +(20007) found +[18458] Forked 20008 +[18457] Forked 20009 +(20008) found +(20009) found +[18456] Forked 20010 +[18455] Forked 20011 +(20010) found +(20011) found +[18454] Forked 20012 +[18453] Forked 20014 +(20012) found +(20014) found +[18452] Forked 20015 +(20015) found +[18451] Forked 20016 +(20016) found +[18450] Forked 20017 +(20017) found +[18449] Forked 20018 +(20018) found +[18448] Forked 20019 +(20019) found +[18447] Forked 20020 +(20020) found +[18446] Forked 20021 +(20021) found +[18445] Forked 20022 +(20022) found +[18444] Forked 20023 +(20023) found +[18443] Forked 20024 +(20024) found +[18442] Forked 20025 +(20025) found +[18441] Forked 20026 +(20026) found +[18440] Forked 20027 +(20027) found +[18439] Forked 20028 +(20028) found +[18438] Forked 20029 +(20029) found +[18437] Forked 20030 +(20030) found +[18436] Forked 20031 +(20031) found +[18435] Forked 20032 +(20032) found +[18434] Forked 20033 +(20033) found +[18433] Forked 20034 +(20034) found +[18432] Forked 20035 +(20035) found +[18431] Forked 20036 +(20036) found +[18430] Forked 20037 +(20037) found +[18429] Forked 20038 +(20038) found +[18428] Forked 20039 +(20039) found +[18427] Forked 20040 +(20040) found +[18426] Forked 20041 +(20041) found +[18425] Forked 20042 +(20042) found +[18424] Forked 20043 +(20043) found +[18423] Forked 20044 +(20044) found +[18422] Forked 20045 +(20045) found +[18421] Forked 20046 +(20046) found +[18420] Forked 20047 +(20047) found +[18419] Forked 20048 +(20048) found +[18418] Forked 20049 +(20049) found +[18417] Forked 20050 +(20050) found +[18416] Forked 20051 +(20051) found +[18415] Forked 20052 +(20052) found +[18414] Forked 20053 +(20053) found +[18413] Forked 20054 +(20054) found +[18412] Forked 20055 +(20055) found +[18411] Forked 20056 +(20056) found +[18410] Forked 20057 +(20057) found +[18409] Forked 20058 +(20058) found +[18408] Forked 20059 +(20059) found +[18407] Forked 20060 +(20060) found +[18406] Forked 20061 +(20061) found +[18405] Forked 20062 +(20062) found +[18404] Forked 20063 +(20063) found +[18403] Forked 20064 +(20064) found +[18402] Forked 20065 +(20065) found +[18401] Forked 20066 +(20066) found +[18400] Forked 20067 +(20067) found +[18399] Forked 20068 +(20068) found +[18398] Forked 20069 +(20069) found +[18397] Forked 20070 +(20070) found +[18396] Forked 20071 +(20071) found +[18395] Forked 20072 +(20072) found +[18394] Forked 20073 +(20073) found +[18393] Forked 20074 +(20074) found +[18392] Forked 20075 +(20075) found +[18391] Forked 20076 +(20076) found +[18390] Forked 20077 +(20077) found +[18389] Forked 20078 +(20078) found +[18388] Forked 20079 +(20079) found +[18387] Forked 20080 +(20080) found +[18386] Forked 20081 +[18385] Forked 20082 +(20081) found +(20082) found +[18384] Forked 20083 +[18383] Forked 20084 +(20083) found +(20084) found +[18382] Forked 20085 +[18381] Forked 20086 +(20085) found +(20086) found +[18380] Forked 20087 +(20087) found +[18379] Forked 20088 +(20088) found +[18378] Forked 20089 +(20089) found +[18377] Forked 20090 +(20090) found +[18376] Forked 20091 +(20091) found +[18375] Forked 20092 +(20092) found +[18374] Forked 20093 +(20093) found +[18373] Forked 20094 +(20094) found +[18372] Forked 20095 +(20095) found +[18371] Forked 20096 +(20096) found +[18370] Forked 20097 +(20097) found +[18369] Forked 20098 +(20098) found +[18368] Forked 20099 +(20099) found +[18367] Forked 20100 +(20100) found +[18366] Forked 20101 +(20101) found +[18365] Forked 20102 +(20102) found +[18364] Forked 20103 +(20103) found +[18363] Forked 20104 +(20104) found +[18362] Forked 20105 +(20105) found +[18361] Forked 20106 +(20106) found +[18360] Forked 20107 +(20107) found +[18359] Forked 20108 +(20108) found +[18358] Forked 20109 +(20109) found +[18357] Forked 20110 +(20110) found +[18356] Forked 20111 +(20111) found +[18355] Forked 20112 +(20112) found +[18354] Forked 20113 +(20113) found +[18353] Forked 20114 +(20114) found +[18352] Forked 20115 +(20115) found +[18351] Forked 20116 +(20116) found +[18350] Forked 20117 +(20117) found +[18349] Forked 20118 +(20118) found +[18348] Forked 20119 +(20119) found +[18347] Forked 20120 +(20120) found +[18346] Forked 20121 +(20121) found +[18345] Forked 20122 +(20122) found +[18344] Forked 20123 +(20123) found +[18343] Forked 20124 +(20124) found +[18342] Forked 20125 +(20125) found +[18341] Forked 20126 +(20126) found +[18340] Forked 20127 +(20127) found +[18339] Forked 20128 +(20128) found +[18338] Forked 20129 +(20129) found +[18337] Forked 20130 +(20130) found +[18336] Forked 20131 +(20131) found +[18335] Forked 20132 +(20132) found +[18334] Forked 20133 +(20133) found +[18333] Forked 20134 +(20134) found +[18332] Forked 20135 +(20135) found +[18331] Forked 20136 +(20136) found +[18330] Forked 20137 +(20137) found +[18329] Forked 20138 +(20138) found +[18328] Forked 20139 +(20139) found +[18327] Forked 20140 +(20140) found +[18326] Forked 20141 +(20141) found +[18325] Forked 20142 +(20142) found +[18324] Forked 20143 +(20143) found +[18323] Forked 20144 +(20144) found +[18322] Forked 20145 +(20145) found +[18321] Forked 20146 +(20146) found +[18320] Forked 20147 +(20147) found +[18319] Forked 20148 +(20148) found +[18318] Forked 20149 +(20149) found +[18317] Forked 20150 +(20150) found +[18316] Forked 20151 +(20151) found +[18315] Forked 20152 +(20152) found +[18314] Forked 20153 +(20153) found +[18313] Forked 20154 +(20154) found +[18312] Forked 20155 +(20155) found +[18311] Forked 20156 +(20156) found +[18310] Forked 20157 +(20157) found +[18309] Forked 20158 +(20158) found +[18308] Forked 20159 +(20159) found +[18307] Forked 20160 +(20160) found +[18306] Forked 20161 +(20161) found +[18305] Forked 20162 +(20162) found +[18304] Forked 20163 +(20163) found +[18303] Forked 20164 +(20164) found +[18302] Forked 20165 +(20165) found +[18301] Forked 20166 +(20166) found +[18300] Forked 20167 +(20167) found +[18299] Forked 20168 +(20168) found +[18298] Forked 20169 +(20169) found +[18297] Forked 20170 +(20170) found +[18296] Forked 20171 +(20171) found +[18295] Forked 20172 +(20172) found +[18294] Forked 20173 +(20173) found +[18293] Forked 20174 +(20174) found +[18292] Forked 20175 +(20175) found +[18291] Forked 20176 +(20176) found +[18290] Forked 20177 +(20177) found +[18289] Forked 20178 +(20178) found +[18288] Forked 20179 +(20179) found +[18287] Forked 20180 +(20180) found +[18286] Forked 20181 +(20181) found +[18285] Forked 20182 +(20182) found +[18284] Forked 20183 +(20183) found +[18283] Forked 20184 +(20184) found +[18282] Forked 20185 +(20185) found +[18281] Forked 20186 +(20186) found +[18280] Forked 20187 +(20187) found +[18279] Forked 20188 +(20188) found +[18278] Forked 20189 +[18277] Forked 20190 +(20189) found +(20190) found +[18276] Forked 20191 +[18275] Forked 20192 +(20191) found +(20192) found +[18274] Forked 20193 +[18273] Forked 20194 +(20193) found +(20194) found +[18272] Forked 20195 +[18271] Forked 20196 +(20195) found +(20196) found +[18270] Forked 20197 +[18269] Forked 20198 +(20197) found +(20198) found +[18268] Forked 20199 +[18267] Forked 20200 +(20199) found +(20200) found +[18266] Forked 20201 +[18265] Forked 20202 +(20201) found +(20202) found +[18264] Forked 20203 +[18263] Forked 20204 +(20203) found +(20204) found +[18262] Forked 20205 +[18261] Forked 20206 +(20205) found +(20206) found +[18260] Forked 20207 +[18259] Forked 20208 +(20207) found +(20208) found +[18258] Forked 20209 +[18257] Forked 20210 +(20209) found +(20210) found +[18256] Forked 20211 +[18255] Forked 20212 +(20211) found +(20212) found +[18254] Forked 20213 +[18253] Forked 20214 +(20213) found +(20214) found +[18252] Forked 20215 +[18251] Forked 20216 +(20215) found +(20216) found +[18250] Forked 20217 +[18249] Forked 20218 +(20217) found +(20218) found +[18248] Forked 20219 +[18247] Forked 20220 +(20219) found +(20220) found +[18246] Forked 20221 +[18245] Forked 20222 +(20221) found +(20222) found +[18244] Forked 20223 +[18243] Forked 20225 +(20223) found +(20225) found +[18242] Forked 20226 +(20226) found +[18241] Forked 20227 +(20227) found +[18240] Forked 20228 +(20228) found +[18239] Forked 20229 +(20229) found +[18238] Forked 20230 +(20230) found +[18237] Forked 20231 +(20231) found +[18236] Forked 20232 +(20232) found +[18235] Forked 20233 +(20233) found +[18234] Forked 20234 +(20234) found +[18233] Forked 20235 +(20235) found +[18232] Forked 20236 +(20236) found +[18231] Forked 20237 +(20237) found +[18230] Forked 20238 +(20238) found +[18229] Forked 20239 +(20239) found +[18228] Forked 20240 +(20240) found +[18227] Forked 20241 +(20241) found +[18226] Forked 20242 +(20242) found +[18225] Forked 20243 +(20243) found +[18224] Forked 20244 +(20244) found +[18223] Forked 20245 +(20245) found +[18222] Forked 20246 +(20246) found +[18221] Forked 20247 +(20247) found +[18220] Forked 20248 +(20248) found +[18219] Forked 20249 +(20249) found +[18218] Forked 20250 +(20250) found +[18217] Forked 20251 +(20251) found +[18216] Forked 20252 +(20252) found +[18215] Forked 20253 +(20253) found +[18214] Forked 20254 +(20254) found +[18213] Forked 20255 +(20255) found +[18212] Forked 20256 +(20256) found +[18211] Forked 20257 +(20257) found +[18210] Forked 20258 +(20258) found +[18209] Forked 20259 +(20259) found +[18208] Forked 20260 +(20260) found +[18207] Forked 20261 +(20261) found +[18206] Forked 20262 +(20262) found +[18205] Forked 20263 +(20263) found +[18204] Forked 20264 +(20264) found +[18203] Forked 20265 +(20265) found +[18202] Forked 20266 +(20266) found +[18201] Forked 20267 +(20267) found +[18200] Forked 20268 +(20268) found +[18199] Forked 20269 +(20269) found +[18198] Forked 20270 +(20270) found +[18197] Forked 20271 +(20271) found +[18196] Forked 20272 +(20272) found +[18195] Forked 20273 +(20273) found +[18194] Forked 20274 +(20274) found +[18193] Forked 20275 +(20275) found +[18192] Forked 20276 +(20276) found +[18191] Forked 20277 +(20277) found +[18190] Forked 20278 +(20278) found +[18189] Forked 20279 +(20279) found +[18188] Forked 20280 +(20280) found +[18187] Forked 20281 +(20281) found +[18186] Forked 20282 +(20282) found +[18185] Forked 20283 +(20283) found +[18184] Forked 20284 +(20284) found +[18183] Forked 20285 +(20285) found +[18182] Forked 20286 +(20286) found +[18181] Forked 20287 +(20287) found +[18180] Forked 20288 +(20288) found +[18179] Forked 20289 +(20289) found +[18178] Forked 20290 +(20290) found +[18177] Forked 20291 +(20291) found +[18176] Forked 20292 +(20292) found +[18175] Forked 20293 +(20293) found +[18174] Forked 20294 +(20294) found +[18173] Forked 20295 +(20295) found +[18172] Forked 20296 +(20296) found +[18171] Forked 20297 +(20297) found +[18170] Forked 20298 +(20298) found +[18169] Forked 20299 +(20299) found +[18168] Forked 20300 +(20300) found +[18167] Forked 20301 +(20301) found +[18166] Forked 20302 +(20302) found +[18165] Forked 20303 +(20303) found +[18164] Forked 20304 +(20304) found +[18163] Forked 20305 +(20305) found +[18162] Forked 20306 +(20306) found +[18161] Forked 20307 +(20307) found +[18160] Forked 20308 +(20308) found +[18159] Forked 20309 +(20309) found +[18158] Forked 20310 +(20310) found +[18157] Forked 20311 +(20311) found +[18156] Forked 20312 +(20312) found +[18155] Forked 20313 +(20313) found +[18154] Forked 20314 +(20314) found +[18153] Forked 20315 +(20315) found +[18152] Forked 20316 +(20316) found +[18151] Forked 20317 +(20317) found +[18150] Forked 20318 +(20318) found +[18149] Forked 20319 +(20319) found +[18148] Forked 20320 +(20320) found +[18147] Forked 20321 +(20321) found +[18146] Forked 20322 +(20322) found +[18145] Forked 20323 +(20323) found +[18144] Forked 20324 +(20324) found +[18143] Forked 20325 +(20325) found +[18142] Forked 20326 +(20326) found +[18141] Forked 20327 +(20327) found +[18140] Forked 20328 +(20328) found +[18139] Forked 20329 +(20329) found +[18138] Forked 20330 +(20330) found +[18137] Forked 20331 +(20331) found +[18136] Forked 20332 +(20332) found +[18135] Forked 20333 +(20333) found +[18134] Forked 20334 +(20334) found +[18133] Forked 20335 +(20335) found +[18132] Forked 20336 +(20336) found +[18131] Forked 20337 +(20337) found +[18130] Forked 20338 +(20338) found +[18129] Forked 20339 +(20339) found +[18128] Forked 20340 +(20340) found +[18127] Forked 20341 +(20341) found +[18126] Forked 20342 +[18125] Forked 20343 +(20342) found +(20343) found +[18124] Forked 20344 +[18123] Forked 20345 +(20344) found +(20345) found +[18122] Forked 20346 +[18121] Forked 20347 +(20346) found +(20347) found +[18120] Forked 20348 +[18119] Forked 20349 +(20348) found +(20349) found +[18118] Forked 20350 +[18117] Forked 20351 +(20350) found +(20351) found +[18116] Forked 20352 +[18115] Forked 20353 +(20352) found +(20353) found +[18114] Forked 20354 +[18113] Forked 20355 +(20354) found +(20355) found +[18112] Forked 20356 +[18111] Forked 20357 +(20356) found +(20357) found +[18110] Forked 20358 +[18109] Forked 20359 +(20358) found +(20359) found +[18108] Forked 20360 +[18107] Forked 20361 +(20360) found +(20361) found +[18106] Forked 20362 +[18105] Forked 20363 +(20362) found +(20363) found +[18104] Forked 20364 +[18103] Forked 20365 +(20364) found +(20365) found +[18102] Forked 20366 +[18101] Forked 20367 +(20366) found +(20367) found +[18100] Forked 20368 +[18099] Forked 20369 +(20368) found +(20369) found +[18098] Forked 20370 +[18097] Forked 20371 +(20370) found +(20371) found +[18096] Forked 20372 +[18095] Forked 20373 +(20372) found +(20373) found +[18094] Forked 20374 +[18093] Forked 20375 +(20374) found +(20375) found +[18092] Forked 20376 +[18091] Forked 20377 +(20376) found +(20377) found +[18090] Forked 20378 +[18089] Forked 20379 +(20378) found +(20379) found +[18088] Forked 20380 +[18087] Forked 20381 +(20380) found +(20381) found +[18086] Forked 20382 +[18085] Forked 20383 +(20382) found +(20383) found +[18084] Forked 20384 +[18083] Forked 20385 +(20384) found +(20385) found +[18082] Forked 20386 +[18081] Forked 20387 +(20386) found +(20387) found +[18080] Forked 20388 +[18079] Forked 20389 +(20388) found +(20389) found +[18078] Forked 20390 +[18077] Forked 20391 +(20390) found +(20391) found +[18076] Forked 20392 +[18075] Forked 20393 +(20392) found +(20393) found +[18074] Forked 20394 +[18073] Forked 20395 +(20394) found +(20395) found +[18072] Forked 20396 +[18071] Forked 20397 +(20396) found +(20397) found +[18070] Forked 20398 +[18069] Forked 20399 +(20398) found +(20399) found +[18068] Forked 20400 +[18067] Forked 20401 +(20400) found +(20401) found +[18066] Forked 20402 +[18065] Forked 20403 +(20402) found +(20403) found +[18064] Forked 20404 +[18063] Forked 20405 +(20404) found +(20405) found +[18062] Forked 20406 +[18061] Forked 20407 +(20406) found +(20407) found +[18060] Forked 20408 +[18059] Forked 20409 +(20408) found +(20409) found +[18058] Forked 20410 +[18057] Forked 20411 +(20410) found +(20411) found +[18056] Forked 20412 +[18055] Forked 20413 +(20412) found +(20413) found +[18054] Forked 20414 +[18053] Forked 20415 +(20414) found +(20415) found +[18052] Forked 20416 +[18051] Forked 20417 +(20416) found +(20417) found +[18050] Forked 20418 +[18049] Forked 20419 +(20418) found +(20419) found +[18048] Forked 20420 +[18047] Forked 20421 +(20420) found +(20421) found +[18046] Forked 20422 +[18045] Forked 20423 +(20422) found +(20423) found +[18044] Forked 20424 +[18043] Forked 20425 +(20424) found +(20425) found +[18042] Forked 20426 +[18041] Forked 20427 +(20426) found +(20427) found +[18040] Forked 20428 +[18039] Forked 20429 +(20428) found +(20429) found +[18038] Forked 20430 +[18037] Forked 20431 +(20430) found +(20431) found +[18036] Forked 20432 +(20432) found +[18035] Forked 20433 +(20433) found +[18034] Forked 20434 +(20434) found +[18033] Forked 20435 +(20435) found +[18032] Forked 20436 +(20436) found +[18031] Forked 20437 +(20437) found +[18030] Forked 20438 +(20438) found +[18029] Forked 20439 +(20439) found +[18028] Forked 20440 +(20440) found +[18027] Forked 20441 +(20441) found +[18026] Forked 20442 +(20442) found +[18025] Forked 20443 +(20443) found +[18024] Forked 20444 +(20444) found +[18023] Forked 20445 +(20445) found +[18022] Forked 20446 +(20446) found +[18021] Forked 20447 +(20447) found +[18020] Forked 20448 +(20448) found +[18019] Forked 20449 +(20449) found +[18018] Forked 20450 +(20450) found +[18017] Forked 20451 +(20451) found +[18016] Forked 20452 +(20452) found +[18015] Forked 20453 +(20453) found +[18014] Forked 20454 +(20454) found +[18013] Forked 20455 +(20455) found +[18012] Forked 20456 +(20456) found +[18011] Forked 20457 +(20457) found +[18010] Forked 20458 +(20458) found +[18009] Forked 20459 +(20459) found +[18008] Forked 20460 +(20460) found +[18007] Forked 20461 +(20461) found +[18006] Forked 20462 +(20462) found +[18005] Forked 20463 +(20463) found +[18004] Forked 20464 +(20464) found +[18003] Forked 20465 +(20465) found +[18002] Forked 20466 +(20466) found +[18001] Forked 20467 +(20467) found +[18000] Forked 20468 +[17999] Forked 20469 +(20468) found +(20469) found +[17998] Forked 20470 +[17997] Forked 20471 +(20470) found +(20471) found +[17996] Forked 20472 +(20472) found +[17995] Forked 20473 +[17994] Forked 20474 +(20473) found +(20474) found +[17993] Forked 20475 +[17992] Forked 20476 +(20475) found +(20476) found +[17991] Forked 20477 +[17990] Forked 20478 +(20477) found +(20478) found +[17989] Forked 20479 +[17988] Forked 20480 +(20479) found +(20480) found +[17987] Forked 20481 +[17986] Forked 20482 +(20481) found +(20482) found +[17985] Forked 20483 +(20483) found +[17984] Forked 20484 +[17983] Forked 20485 +(20484) found +(20485) found +[17982] Forked 20486 +[17981] Forked 20487 +(20486) found +(20487) found +[17980] Forked 20488 +[17979] Forked 20489 +(20488) found +(20489) found +[17978] Forked 20490 +[17977] Forked 20491 +(20490) found +(20491) found +[17976] Forked 20492 +[17975] Forked 20493 +(20492) found +(20493) found +[17974] Forked 20494 +[17973] Forked 20495 +(20494) found +(20495) found +[17972] Forked 20496 +[17971] Forked 20497 +(20496) found +(20497) found +[17970] Forked 20498 +[17969] Forked 20499 +(20498) found +(20499) found +[17968] Forked 20500 +[17967] Forked 20501 +(20500) found +(20501) found +[17966] Forked 20502 +[17965] Forked 20503 +(20502) found +(20503) found +[17964] Forked 20504 +[17963] Forked 20505 +(20504) found +(20505) found +[17962] Forked 20506 +[17961] Forked 20507 +(20506) found +(20507) found +[17960] Forked 20508 +[17959] Forked 20509 +(20508) found +(20509) found +[17958] Forked 20510 +[17957] Forked 20511 +(20510) found +(20511) found +[17956] Forked 20512 +(20512) found +[17955] Forked 20513 +(20513) found +[17954] Forked 20514 +(20514) found +[17953] Forked 20515 +(20515) found +[17952] Forked 20516 +(20516) found +[17951] Forked 20517 +(20517) found +[17950] Forked 20518 +(20518) found +[17949] Forked 20519 +(20519) found +[17948] Forked 20520 +(20520) found +[17947] Forked 20521 +(20521) found +[17946] Forked 20522 +(20522) found +[17945] Forked 20523 +(20523) found +[17944] Forked 20524 +(20524) found +[17943] Forked 20525 +(20525) found +[17942] Forked 20526 +(20526) found +[17941] Forked 20527 +(20527) found +[17940] Forked 20528 +(20528) found +[17939] Forked 20529 +(20529) found +[17938] Forked 20530 +(20530) found +[17937] Forked 20531 +(20531) found +[17936] Forked 20532 +(20532) found +[17935] Forked 20533 +(20533) found +[17934] Forked 20534 +(20534) found +[17933] Forked 20535 +(20535) found +[17932] Forked 20536 +(20536) found +[17931] Forked 20537 +(20537) found +[17930] Forked 20538 +(20538) found +[17929] Forked 20539 +(20539) found +[17928] Forked 20540 +(20540) found +[17927] Forked 20541 +(20541) found +[17926] Forked 20542 +(20542) found +[17925] Forked 20543 +(20543) found +[17924] Forked 20544 +(20544) found +[17923] Forked 20545 +(20545) found +[17922] Forked 20546 +(20546) found +[17921] Forked 20547 +(20547) found +[17920] Forked 20548 +[17919] Forked 20549 +(20548) found +(20549) found +[17918] Forked 20550 +[17917] Forked 20551 +(20550) found +(20551) found +[17916] Forked 20552 +[17915] Forked 20553 +(20552) found +(20553) found +[17914] Forked 20554 +[17913] Forked 20555 +(20554) found +(20555) found +[17912] Forked 20556 +[17911] Forked 20557 +(20556) found +(20557) found +[17910] Forked 20558 +[17909] Forked 20559 +(20558) found +(20559) found +[17908] Forked 20560 +[17907] Forked 20561 +(20560) found +(20561) found +[17906] Forked 20562 +[17905] Forked 20563 +(20562) found +(20563) found +[17904] Forked 20564 +[17903] Forked 20565 +(20564) found +(20565) found +[17902] Forked 20566 +[17901] Forked 20567 +(20566) found +(20567) found +[17900] Forked 20568 +[17899] Forked 20569 +(20568) found +(20569) found +[17898] Forked 20570 +[17897] Forked 20571 +(20570) found +(20571) found +[17896] Forked 20572 +[17895] Forked 20573 +(20572) found +(20573) found +[17894] Forked 20574 +[17893] Forked 20575 +(20574) found +(20575) found +[17892] Forked 20576 +[17891] Forked 20577 +(20576) found +(20577) found +[17890] Forked 20578 +[17889] Forked 20579 +(20578) found +(20579) found +[17888] Forked 20580 +(20580) found +[17887] Forked 20581 +(20581) found +[17886] Forked 20582 +[17885] Forked 20583 +(20582) found +(20583) found +[17884] Forked 20584 +[17883] Forked 20585 +(20584) found +(20585) found +[17882] Forked 20586 +[17881] Forked 20587 +(20586) found +(20587) found +[17880] Forked 20588 +[17879] Forked 20589 +(20588) found +(20589) found +[17878] Forked 20590 +[17877] Forked 20591 +(20590) found +(20591) found +[17876] Forked 20592 +[17875] Forked 20593 +(20592) found +(20593) found +[17874] Forked 20594 +[17873] Forked 20595 +(20594) found +(20595) found +[17872] Forked 20596 +[17871] Forked 20597 +(20596) found +(20597) found +[17870] Forked 20598 +[17869] Forked 20599 +(20598) found +(20599) found +[17868] Forked 20600 +[17867] Forked 20601 +(20600) found +(20601) found +[17866] Forked 20602 +[17865] Forked 20603 +(20602) found +(20603) found +[17864] Forked 20604 +[17863] Forked 20605 +(20604) found +(20605) found +[17862] Forked 20606 +[17861] Forked 20607 +(20606) found +(20607) found +[17860] Forked 20608 +[17859] Forked 20609 +(20608) found +(20609) found +[17858] Forked 20610 +[17857] Forked 20611 +(20610) found +(20611) found +[17856] Forked 20612 +[17855] Forked 20613 +(20612) found +(20613) found +[17854] Forked 20614 +[17853] Forked 20615 +(20614) found +(20615) found +[17852] Forked 20616 +[17851] Forked 20617 +(20616) found +(20617) found +[17850] Forked 20618 +[17849] Forked 20619 +(20618) found +(20619) found +[17848] Forked 20620 +[17847] Forked 20621 +(20620) found +(20621) found +[17846] Forked 20622 +[17845] Forked 20623 +(20622) found +(20623) found +[17844] Forked 20624 +[17843] Forked 20625 +(20624) found +(20625) found +[17842] Forked 20626 +[17841] Forked 20627 +(20626) found +(20627) found +[17840] Forked 20628 +[17839] Forked 20629 +(20628) found +(20629) found +[17838] Forked 20630 +[17837] Forked 20631 +(20630) found +(20631) found +[17836] Forked 20632 +[17835] Forked 20633 +(20632) found +(20633) found +[17834] Forked 20634 +[17833] Forked 20635 +(20634) found +(20635) found +[17832] Forked 20636 +[17831] Forked 20637 +(20636) found +(20637) found +[17830] Forked 20638 +(20638) found +[17829] Forked 20639 +(20639) found +[17828] Forked 20640 +(20640) found +[17827] Forked 20641 +(20641) found +[17826] Forked 20642 +(20642) found +[17825] Forked 20643 +(20643) found +[17824] Forked 20644 +(20644) found +[17823] Forked 20645 +(20645) found +[17822] Forked 20646 +(20646) found +[17821] Forked 20647 +(20647) found +[17820] Forked 20648 +(20648) found +[17819] Forked 20649 +(20649) found +[17818] Forked 20650 +(20650) found +[17817] Forked 20651 +(20651) found +[17816] Forked 20652 +(20652) found +[17815] Forked 20653 +(20653) found +[17814] Forked 20654 +(20654) found +[17813] Forked 20655 +(20655) found +[17812] Forked 20656 +(20656) found +[17811] Forked 20657 +(20657) found +[17810] Forked 20658 +(20658) found +[17809] Forked 20659 +(20659) found +[17808] Forked 20660 +(20660) found +[17807] Forked 20661 +(20661) found +[17806] Forked 20662 +(20662) found +[17805] Forked 20663 +(20663) found +[17804] Forked 20664 +(20664) found +[17803] Forked 20665 +(20665) found +[17802] Forked 20666 +(20666) found +[17801] Forked 20667 +(20667) found +[17800] Forked 20668 +(20668) found +[17799] Forked 20669 +(20669) found +[17798] Forked 20670 +(20670) found +[17797] Forked 20671 +(20671) found +[17796] Forked 20672 +(20672) found +[17795] Forked 20673 +[17794] Forked 20674 +(20673) found +(20674) found +[17793] Forked 20675 +[17792] Forked 20676 +(20676) found +(20675) found +[17791] Forked 20677 +(20677) found +[17790] Forked 20678 +(20678) found +[17789] Forked 20679 +(20679) found +[17788] Forked 20680 +(20680) found +[17787] Forked 20681 +(20681) found +[17786] Forked 20682 +(20682) found +[17785] Forked 20683 +(20683) found +[17784] Forked 20684 +(20684) found +[17783] Forked 20685 +(20685) found +[17782] Forked 20686 +(20686) found +[17781] Forked 20687 +(20687) found +[17780] Forked 20688 +(20688) found +[17779] Forked 20689 +(20689) found +[17778] Forked 20690 +(20690) found +[17777] Forked 20691 +(20691) found +[17776] Forked 20692 +(20692) found +[17775] Forked 20693 +(20693) found +[17774] Forked 20694 +(20694) found +[17773] Forked 20695 +(20695) found +[17772] Forked 20696 +(20696) found +[17771] Forked 20697 +(20697) found +[17770] Forked 20698 +(20698) found +[17769] Forked 20699 +(20699) found +[17768] Forked 20700 +(20700) found +[17767] Forked 20701 +(20701) found +[17766] Forked 20702 +(20702) found +[17765] Forked 20703 +(20703) found +[17764] Forked 20704 +(20704) found +[17763] Forked 20705 +(20705) found +[17762] Forked 20706 +(20706) found +[17761] Forked 20707 +(20707) found +[17760] Forked 20708 +(20708) found +[17759] Forked 20709 +(20709) found +[17758] Forked 20710 +(20710) found +[17757] Forked 20711 +(20711) found +[17756] Forked 20712 +(20712) found +[17755] Forked 20713 +(20713) found +[17754] Forked 20714 +(20714) found +[17753] Forked 20715 +(20715) found +[17752] Forked 20716 +(20716) found +[17751] Forked 20717 +(20717) found +[17750] Forked 20718 +(20718) found +[17749] Forked 20719 +(20719) found +[17748] Forked 20720 +(20720) found +[17747] Forked 20721 +(20721) found +[17746] Forked 20722 +(20722) found +[17745] Forked 20723 +(20723) found +[17744] Forked 20724 +(20724) found +[17743] Forked 20725 +(20725) found +[17742] Forked 20726 +(20726) found +[17741] Forked 20727 +(20727) found +[17740] Forked 20728 +(20728) found +[17739] Forked 20729 +(20729) found +[17738] Forked 20730 +(20730) found +[17737] Forked 20731 +(20731) found +[17736] Forked 20732 +(20732) found +[17735] Forked 20733 +(20733) found +[17734] Forked 20734 +(20734) found +[17733] Forked 20735 +(20735) found +[17732] Forked 20736 +(20736) found +[17731] Forked 20737 +(20737) found +[17730] Forked 20738 +(20738) found +[17729] Forked 20739 +(20739) found +[17728] Forked 20740 +(20740) found +[17727] Forked 20741 +(20741) found +[17726] Forked 20742 +(20742) found +[17725] Forked 20743 +(20743) found +[17724] Forked 20744 +[17723] Forked 20745 +(20744) found +(20745) found +[17722] Forked 20746 +[17721] Forked 20747 +(20746) found +(20747) found +[17720] Forked 20748 +[17719] Forked 20749 +(20748) found +(20749) found +[17718] Forked 20750 +[17717] Forked 20751 +(20750) found +(20751) found +[17716] Forked 20752 +[17715] Forked 20753 +(20752) found +(20753) found +[17714] Forked 20754 +[17713] Forked 20755 +(20754) found +(20755) found +[17712] Forked 20756 +[17711] Forked 20757 +(20756) found +(20757) found +[17710] Forked 20758 +[17709] Forked 20759 +(20758) found +(20759) found +[17708] Forked 20760 +[17707] Forked 20761 +(20760) found +(20761) found +[17706] Forked 20762 +[17705] Forked 20763 +(20762) found +(20763) found +[17704] Forked 20764 +[17703] Forked 20765 +(20764) found +(20765) found +[17702] Forked 20766 +[17701] Forked 20767 +(20766) found +(20767) found +[17700] Forked 20768 +[17699] Forked 20769 +(20768) found +(20769) found +[17698] Forked 20770 +[17697] Forked 20771 +(20770) found +(20771) found +[17696] Forked 20772 +[17695] Forked 20773 +(20772) found +(20773) found +[17694] Forked 20774 +[17693] Forked 20775 +(20774) found +(20775) found +[17692] Forked 20776 +[17691] Forked 20777 +(20776) found +(20777) found +[17690] Forked 20778 +[17689] Forked 20779 +(20778) found +(20779) found +[17688] Forked 20780 +[17687] Forked 20781 +(20780) found +(20781) found +[17686] Forked 20782 +[17685] Forked 20783 +(20782) found +(20783) found +[17684] Forked 20784 +[17683] Forked 20785 +(20784) found +(20785) found +[17682] Forked 20786 +[17681] Forked 20787 +(20786) found +(20787) found +[17680] Forked 20788 +[17679] Forked 20789 +(20788) found +(20789) found +[17678] Forked 20790 +[17677] Forked 20791 +(20790) found +(20791) found +[17676] Forked 20792 +[17675] Forked 20793 +(20792) found +(20793) found +[17674] Forked 20794 +[17673] Forked 20795 +(20794) found +(20795) found +[17672] Forked 20796 +[17671] Forked 20797 +(20796) found +(20797) found +[17670] Forked 20798 +[17669] Forked 20799 +(20798) found +(20799) found +[17668] Forked 20800 +[17667] Forked 20801 +(20800) found +(20801) found +[17666] Forked 20802 +[17665] Forked 20803 +(20802) found +(20803) found +[17664] Forked 20804 +[17663] Forked 20805 +(20804) found +(20805) found +[17662] Forked 20806 +[17661] Forked 20807 +(20806) found +(20807) found +[17660] Forked 20808 +[17659] Forked 20809 +(20808) found +(20809) found +[17658] Forked 20810 +[17657] Forked 20811 +(20810) found +(20811) found +[17656] Forked 20812 +[17655] Forked 20813 +(20812) found +(20813) found +[17654] Forked 20814 +[17653] Forked 20815 +(20814) found +(20815) found +[17652] Forked 20816 +[17651] Forked 20817 +(20816) found +(20817) found +[17650] Forked 20818 +[17649] Forked 20819 +(20818) found +(20819) found +[17648] Forked 20820 +[17647] Forked 20821 +(20820) found +(20821) found +[17646] Forked 20822 +[17645] Forked 20823 +(20822) found +(20823) found +[17644] Forked 20824 +[17643] Forked 20825 +(20824) found +(20825) found +[17642] Forked 20826 +[17641] Forked 20827 +(20826) found +(20827) found +[17640] Forked 20828 +[17639] Forked 20829 +(20828) found +(20829) found +[17638] Forked 20830 +[17637] Forked 20831 +(20830) found +(20831) found +[17636] Forked 20832 +[17635] Forked 20833 +(20832) found +(20833) found +[17634] Forked 20834 +(20834) found +[17633] Forked 20835 +[17632] Forked 20836 +(20835) found +(20836) found +[17631] Forked 20837 +[17630] Forked 20838 +(20837) found +(20838) found +[17629] Forked 20839 +[17628] Forked 20840 +(20839) found +(20840) found +[17627] Forked 20841 +[17626] Forked 20842 +(20841) found +(20842) found +[17625] Forked 20843 +[17624] Forked 20844 +(20843) found +(20844) found +[17623] Forked 20845 +[17622] Forked 20846 +(20845) found +(20846) found +[17621] Forked 20847 +[17620] Forked 20848 +(20847) found +(20848) found +[17619] Forked 20849 +[17618] Forked 20850 +(20849) found +(20850) found +[17617] Forked 20851 +[17616] Forked 20852 +(20851) found +(20852) found +[17615] Forked 20853 +[17614] Forked 20854 +(20853) found +(20854) found +[17613] Forked 20855 +[17612] Forked 20856 +(20855) found +(20856) found +[17611] Forked 20857 +[17610] Forked 20858 +(20857) found +(20858) found +[17609] Forked 20859 +[17608] Forked 20860 +(20859) found +(20860) found +[17607] Forked 20861 +[17606] Forked 20862 +(20861) found +(20862) found +[17605] Forked 20863 +[17604] Forked 20864 +(20863) found +(20864) found +[17603] Forked 20865 +[17602] Forked 20866 +(20865) found +(20866) found +[17601] Forked 20867 +[17600] Forked 20868 +(20867) found +(20868) found +[17599] Forked 20869 +[17598] Forked 20870 +(20869) found +(20870) found +[17597] Forked 20871 +[17596] Forked 20872 +(20871) found +(20872) found +[17595] Forked 20873 +[17594] Forked 20874 +(20873) found +(20874) found +[17593] Forked 20875 +[17592] Forked 20876 +(20875) found +(20876) found +[17591] Forked 20877 +[17590] Forked 20878 +(20877) found +(20878) found +[17589] Forked 20879 +[17588] Forked 20880 +(20879) found +(20880) found +[17587] Forked 20881 +[17586] Forked 20882 +(20881) found +(20882) found +[17585] Forked 20883 +[17584] Forked 20884 +(20883) found +(20884) found +[17583] Forked 20885 +[17582] Forked 20886 +(20885) found +(20886) found +[17581] Forked 20887 +[17580] Forked 20888 +(20887) found +(20888) found +[17579] Forked 20889 +[17578] Forked 20890 +(20889) found +(20890) found +[17577] Forked 20891 +[17576] Forked 20892 +(20891) found +(20892) found +[17575] Forked 20893 +[17574] Forked 20894 +(20893) found +(20894) found +[17573] Forked 20895 +[17572] Forked 20896 +(20895) found +(20896) found +[17571] Forked 20897 +[17570] Forked 20898 +(20897) found +(20898) found +[17569] Forked 20899 +[17568] Forked 20900 +(20899) found +(20900) found +[17567] Forked 20901 +[17566] Forked 20902 +(20901) found +(20902) found +[17565] Forked 20903 +[17564] Forked 20904 +(20903) found +(20904) found +[17563] Forked 20905 +[17562] Forked 20906 +(20905) found +(20906) found +[17561] Forked 20907 +[17560] Forked 20908 +(20907) found +(20908) found +[17559] Forked 20909 +[17558] Forked 20910 +(20909) found +(20910) found +[17557] Forked 20911 +[17556] Forked 20912 +(20911) found +(20912) found +[17555] Forked 20913 +[17554] Forked 20914 +(20913) found +(20914) found +[17553] Forked 20915 +[17552] Forked 20916 +(20915) found +(20916) found +[17551] Forked 20917 +[17550] Forked 20918 +(20917) found +(20918) found +[17549] Forked 20919 +[17548] Forked 20920 +(20919) found +(20920) found +[17547] Forked 20921 +[17546] Forked 20922 +(20921) found +(20922) found +[17545] Forked 20923 +[17544] Forked 20924 +(20923) found +(20924) found +[17543] Forked 20925 +[17542] Forked 20926 +(20925) found +(20926) found +[17541] Forked 20927 +[17540] Forked 20928 +(20927) found +(20928) found +[17539] Forked 20929 +[17538] Forked 20930 +(20929) found +(20930) found +[17537] Forked 20931 +[17536] Forked 20932 +(20931) found +(20932) found +[17535] Forked 20933 +[17534] Forked 20934 +(20933) found +(20934) found +[17533] Forked 20935 +[17532] Forked 20936 +(20935) found +(20936) found +[17531] Forked 20937 +[17530] Forked 20938 +(20937) found +(20938) found +[17529] Forked 20939 +[17528] Forked 20940 +(20939) found +(20940) found +[17527] Forked 20941 +[17526] Forked 20942 +(20941) found +(20942) found +[17525] Forked 20943 +[17524] Forked 20944 +(20943) found +(20944) found +[17523] Forked 20945 +[17522] Forked 20946 +(20945) found +(20946) found +[17521] Forked 20947 +[17520] Forked 20948 +(20947) found +(20948) found +[17519] Forked 20949 +[17518] Forked 20950 +(20949) found +(20950) found +[17517] Forked 20951 +[17516] Forked 20952 +(20951) found +(20952) found +[17515] Forked 20953 +[17514] Forked 20954 +(20953) found +(20954) found +[17513] Forked 20955 +[17512] Forked 20956 +(20955) found +(20956) found +[17511] Forked 20957 +[17510] Forked 20958 +(20957) found +(20958) found +[17509] Forked 20959 +[17508] Forked 20960 +(20959) found +(20960) found +[17507] Forked 20961 +[17506] Forked 20962 +(20961) found +(20962) found +[17505] Forked 20963 +[17504] Forked 20964 +(20963) found +(20964) found +[17503] Forked 20965 +[17502] Forked 20966 +(20965) found +(20966) found +[17501] Forked 20967 +[17500] Forked 20968 +(20967) found +(20968) found +[17499] Forked 20969 +[17498] Forked 20970 +(20969) found +(20970) found +[17497] Forked 20971 +[17496] Forked 20972 +(20971) found +(20972) found +[17495] Forked 20973 +(20973) found +[17494] Forked 20974 +(20974) found +[17493] Forked 20975 +(20975) found +[17492] Forked 20976 +(20976) found +[17491] Forked 20977 +(20977) found +[17490] Forked 20978 +(20978) found +[17489] Forked 20979 +(20979) found +[17488] Forked 20980 +(20980) found +[17487] Forked 20981 +(20981) found +[17486] Forked 20982 +(20982) found +[17485] Forked 20983 +(20983) found +[17484] Forked 20984 +(20984) found +[17483] Forked 20985 +(20985) found +[17482] Forked 20986 +(20986) found +[17481] Forked 20987 +(20987) found +[17480] Forked 20988 +(20988) found +[17479] Forked 20989 +(20989) found +[17478] Forked 20990 +(20990) found +[17477] Forked 20991 +(20991) found +[17476] Forked 20992 +(20992) found +[17475] Forked 20993 +(20993) found +[17474] Forked 20994 +(20994) found +[17473] Forked 20995 +(20995) found +[17472] Forked 20996 +(20996) found +[17471] Forked 20997 +(20997) found +[17470] Forked 20998 +(20998) found +[17469] Forked 20999 +(20999) found +[17468] Forked 21000 +(21000) found +[17467] Forked 21001 +(21001) found +[17466] Forked 21002 +(21002) found +[17465] Forked 21003 +(21003) found +[17464] Forked 21004 +(21004) found +[17463] Forked 21005 +(21005) found +[17462] Forked 21006 +(21006) found +[17461] Forked 21007 +(21007) found +[17460] Forked 21008 +[17459] Forked 21009 +(21008) found +(21009) found +[17458] Forked 21010 +[17457] Forked 21011 +(21010) found +(21011) found +[17456] Forked 21012 +[17455] Forked 21013 +(21012) found +(21013) found +[17454] Forked 21014 +[17453] Forked 21015 +(21014) found +(21015) found +[17452] Forked 21016 +[17451] Forked 21017 +(21016) found +(21017) found +[17450] Forked 21018 +[17449] Forked 21019 +(21018) found +(21019) found +[17448] Forked 21020 +[17447] Forked 21021 +(21020) found +(21021) found +[17446] Forked 21022 +[17445] Forked 21023 +(21022) found +(21023) found +[17444] Forked 21024 +[17443] Forked 21025 +(21024) found +(21025) found +[17442] Forked 21026 +[17441] Forked 21027 +(21026) found +(21027) found +[17440] Forked 21028 +[17439] Forked 21029 +(21028) found +(21029) found +[17438] Forked 21030 +[17437] Forked 21031 +(21030) found +(21031) found +[17436] Forked 21032 +[17435] Forked 21033 +(21032) found +(21033) found +[17434] Forked 21034 +[17433] Forked 21035 +(21034) found +(21035) found +[17432] Forked 21036 +[17431] Forked 21037 +(21036) found +(21037) found +[17430] Forked 21038 +[17429] Forked 21039 +(21038) found +(21039) found +[17428] Forked 21040 +[17427] Forked 21041 +(21040) found +(21041) found +[17426] Forked 21042 +[17425] Forked 21043 +(21042) found +(21043) found +[17424] Forked 21044 +[17423] Forked 21045 +(21044) found +(21045) found +[17422] Forked 21046 +[17421] Forked 21047 +(21046) found +(21047) found +[17420] Forked 21048 +[17419] Forked 21049 +(21048) found +(21049) found +[17418] Forked 21050 +[17417] Forked 21051 +(21050) found +(21051) found +[17416] Forked 21052 +[17415] Forked 21053 +(21052) found +(21053) found +[17414] Forked 21054 +(21054) found +[17413] Forked 21055 +(21055) found +[17412] Forked 21056 +(21056) found +[17411] Forked 21057 +(21057) found +[17410] Forked 21058 +(21058) found +[17409] Forked 21059 +(21059) found +[17408] Forked 21060 +(21060) found +[17407] Forked 21061 +(21061) found +[17406] Forked 21062 +(21062) found +[17405] Forked 21063 +(21063) found +[17404] Forked 21064 +(21064) found +[17403] Forked 21065 +(21065) found +[17402] Forked 21066 +(21066) found +[17401] Forked 21067 +(21067) found +[17400] Forked 21068 +(21068) found +[17399] Forked 21069 +(21069) found +[17398] Forked 21070 +(21070) found +[17397] Forked 21071 +(21071) found +[17396] Forked 21072 +(21072) found +[17395] Forked 21073 +(21073) found +[17394] Forked 21074 +(21074) found +[17393] Forked 21075 +(21075) found +[17392] Forked 21076 +(21076) found +[17391] Forked 21077 +(21077) found +[17390] Forked 21078 +(21078) found +[17389] Forked 21079 +(21079) found +[17388] Forked 21080 +(21080) found +[17387] Forked 21081 +(21081) found +[17386] Forked 21082 +(21082) found +[17385] Forked 21083 +(21083) found +[17384] Forked 21084 +(21084) found +[17383] Forked 21085 +(21085) found +[17382] Forked 21086 +(21086) found +[17381] Forked 21087 +(21087) found +[17380] Forked 21088 +[17379] Forked 21089 +(21088) found +(21089) found +[17378] Forked 21090 +[17377] Forked 21091 +(21090) found +(21091) found +[17376] Forked 21092 +[17375] Forked 21093 +(21092) found +(21093) found +[17374] Forked 21094 +[17373] Forked 21095 +(21094) found +(21095) found +[17372] Forked 21096 +[17371] Forked 21097 +(21096) found +(21097) found +[17370] Forked 21098 +[17369] Forked 21099 +(21098) found +(21099) found +[17368] Forked 21100 +[17367] Forked 21101 +(21100) found +(21101) found +[17366] Forked 21102 +[17365] Forked 21103 +(21102) found +(21103) found +[17364] Forked 21104 +[17363] Forked 21105 +(21104) found +(21105) found +[17362] Forked 21106 +[17361] Forked 21107 +(21106) found +(21107) found +[17360] Forked 21108 +[17359] Forked 21109 +(21108) found +(21109) found +[17358] Forked 21110 +[17357] Forked 21111 +(21110) found +(21111) found +[17356] Forked 21112 +[17355] Forked 21113 +(21112) found +(21113) found +[17354] Forked 21114 +[17353] Forked 21115 +(21114) found +(21115) found +[17352] Forked 21116 +[17351] Forked 21117 +(21116) found +(21117) found +[17350] Forked 21118 +[17349] Forked 21119 +(21118) found +(21119) found +[17348] Forked 21120 +[17347] Forked 21121 +(21120) found +(21121) found +[17346] Forked 21122 +[17345] Forked 21123 +(21122) found +(21123) found +[17344] Forked 21124 +[17343] Forked 21125 +(21124) found +(21125) found +[17342] Forked 21126 +[17341] Forked 21127 +(21126) found +(21127) found +[17340] Forked 21128 +[17339] Forked 21129 +(21128) found +(21129) found +[17338] Forked 21130 +[17337] Forked 21131 +(21130) found +(21131) found +[17336] Forked 21132 +[17335] Forked 21133 +(21132) found +(21133) found +[17334] Forked 21134 +(21134) found +[17333] Forked 21135 +(21135) found +[17332] Forked 21136 +(21136) found +[17331] Forked 21137 +(21137) found +[17330] Forked 21138 +(21138) found +[17329] Forked 21139 +(21139) found +[17328] Forked 21140 +(21140) found +[17327] Forked 21141 +(21141) found +[17326] Forked 21142 +(21142) found +[17325] Forked 21143 +(21143) found +[17324] Forked 21144 +(21144) found +[17323] Forked 21145 +(21145) found +[17322] Forked 21146 +(21146) found +[17321] Forked 21147 +(21147) found +[17320] Forked 21148 +(21148) found +[17319] Forked 21149 +(21149) found +[17318] Forked 21150 +(21150) found +[17317] Forked 21151 +(21151) found +[17316] Forked 21152 +(21152) found +[17315] Forked 21153 +(21153) found +[17314] Forked 21154 +(21154) found +[17313] Forked 21155 +(21155) found +[17312] Forked 21156 +(21156) found +[17311] Forked 21157 +(21157) found +[17310] Forked 21158 +(21158) found +[17309] Forked 21159 +(21159) found +[17308] Forked 21160 +(21160) found +[17307] Forked 21161 +(21161) found +[17306] Forked 21162 +(21162) found +[17305] Forked 21163 +(21163) found +[17304] Forked 21164 +(21164) found +[17303] Forked 21165 +(21165) found +[17302] Forked 21166 +(21166) found +[17301] Forked 21167 +(21167) found +[17300] Forked 21168 +(21168) found +[17299] Forked 21169 +[17298] Forked 21170 +(21169) found +(21170) found +[17297] Forked 21171 +[17296] Forked 21172 +(21171) found +(21172) found +[17295] Forked 21173 +[17294] Forked 21174 +(21173) found +(21174) found +[17293] Forked 21175 +[17292] Forked 21176 +(21175) found +(21176) found +[17291] Forked 21177 +[17290] Forked 21178 +(21177) found +(21178) found +[17289] Forked 21179 +[17288] Forked 21180 +(21179) found +(21180) found +[17287] Forked 21181 +[17286] Forked 21182 +(21181) found +(21182) found +[17285] Forked 21183 +[17284] Forked 21184 +(21183) found +(21184) found +[17283] Forked 21185 +[17282] Forked 21186 +(21185) found +(21186) found +[17281] Forked 21187 +[17280] Forked 21188 +(21187) found +(21188) found +[17279] Forked 21189 +[17278] Forked 21190 +(21189) found +(21190) found +[17277] Forked 21191 +[17276] Forked 21192 +(21191) found +(21192) found +[17275] Forked 21193 +[17274] Forked 21194 +(21193) found +(21194) found +[17273] Forked 21195 +[17272] Forked 21196 +(21195) found +(21196) found +[17271] Forked 21197 +[17270] Forked 21198 +(21197) found +(21198) found +[17269] Forked 21199 +[17268] Forked 21200 +(21199) found +(21200) found +[17267] Forked 21201 +[17266] Forked 21202 +(21201) found +(21202) found +[17265] Forked 21203 +[17264] Forked 21204 +(21203) found +(21204) found +[17263] Forked 21205 +[17262] Forked 21206 +(21205) found +(21206) found +[17261] Forked 21207 +[17260] Forked 21208 +(21207) found +(21208) found +[17259] Forked 21209 +[17258] Forked 21210 +(21209) found +(21210) found +[17257] Forked 21211 +[17256] Forked 21212 +(21211) found +(21212) found +[17255] Forked 21213 +[17254] Forked 21214 +(21213) found +(21214) found +[17253] Forked 21215 +(21215) found +[17252] Forked 21216 +(21216) found +[17251] Forked 21217 +(21217) found +[17250] Forked 21218 +(21218) found +[17249] Forked 21219 +(21219) found +[17248] Forked 21220 +(21220) found +[17247] Forked 21221 +(21221) found +[17246] Forked 21222 +(21222) found +[17245] Forked 21223 +(21223) found +[17244] Forked 21224 +(21224) found +[17243] Forked 21225 +(21225) found +[17242] Forked 21226 +(21226) found +[17241] Forked 21227 +(21227) found +[17240] Forked 21228 +(21228) found +[17239] Forked 21229 +(21229) found +[17238] Forked 21230 +(21230) found +[17237] Forked 21231 +(21231) found +[17236] Forked 21232 +(21232) found +[17235] Forked 21233 +(21233) found +[17234] Forked 21234 +(21234) found +[17233] Forked 21235 +(21235) found +[17232] Forked 21236 +(21236) found +[17231] Forked 21237 +(21237) found +[17230] Forked 21238 +(21238) found +[17229] Forked 21239 +(21239) found +[17228] Forked 21240 +(21240) found +[17227] Forked 21241 +(21241) found +[17226] Forked 21242 +(21242) found +[17225] Forked 21243 +(21243) found +[17224] Forked 21244 +(21244) found +[17223] Forked 21245 +(21245) found +[17222] Forked 21246 +(21246) found +[17221] Forked 21247 +(21247) found +[17220] Forked 21248 +(21248) found +[17219] Forked 21249 +(21249) found +[17218] Forked 21250 +[17217] Forked 21251 +(21250) found +(21251) found +[17216] Forked 21252 +(21252) found +[17215] Forked 21253 +(21253) found +[17214] Forked 21254 +(21254) found +[17213] Forked 21255 +[17212] Forked 21256 +(21255) found +(21256) found +[17211] Forked 21257 +[17210] Forked 21258 +(21257) found +(21258) found +[17209] Forked 21259 +[17208] Forked 21260 +(21259) found +(21260) found +[17207] Forked 21261 +[17206] Forked 21262 +(21261) found +(21262) found +[17205] Forked 21263 +[17204] Forked 21264 +(21263) found +(21264) found +[17203] Forked 21265 +[17202] Forked 21266 +(21265) found +(21266) found +[17201] Forked 21267 +[17200] Forked 21268 +(21267) found +(21268) found +[17199] Forked 21269 +[17198] Forked 21270 +(21269) found +(21270) found +[17197] Forked 21271 +[17196] Forked 21272 +(21271) found +(21272) found +[17195] Forked 21273 +[17194] Forked 21274 +(21273) found +(21274) found +[17193] Forked 21275 +[17192] Forked 21276 +(21275) found +(21276) found +[17191] Forked 21277 +[17190] Forked 21279 +(21277) found +(21279) found +[17189] Forked 21280 +(21280) found +[17188] Forked 21281 +(21281) found +[17187] Forked 21282 +(21282) found +[17186] Forked 21283 +(21283) found +[17185] Forked 21284 +(21284) found +[17184] Forked 21285 +(21285) found +[17183] Forked 21286 +(21286) found +[17182] Forked 21287 +(21287) found +[17181] Forked 21288 +(21288) found +[17180] Forked 21289 +(21289) found +[17179] Forked 21290 +(21290) found +[17178] Forked 21291 +(21291) found +[17177] Forked 21292 +(21292) found +[17176] Forked 21293 +(21293) found +[17175] Forked 21294 +(21294) found +[17174] Forked 21295 +(21295) found +[17173] Forked 21296 +(21296) found +[17172] Forked 21297 +(21297) found +[17171] Forked 21298 +(21298) found +[17170] Forked 21299 +(21299) found +[17169] Forked 21300 +(21300) found +[17168] Forked 21301 +(21301) found +[17167] Forked 21302 +(21302) found +[17166] Forked 21303 +(21303) found +[17165] Forked 21304 +(21304) found +[17164] Forked 21305 +(21305) found +[17163] Forked 21306 +(21306) found +[17162] Forked 21307 +(21307) found +[17161] Forked 21308 +(21308) found +[17160] Forked 21309 +(21309) found +[17159] Forked 21310 +(21310) found +[17158] Forked 21311 +(21311) found +[17157] Forked 21312 +(21312) found +[17156] Forked 21313 +(21313) found +[17155] Forked 21314 +(21314) found +[17154] Forked 21315 +(21315) found +[17153] Forked 21316 +(21316) found +[17152] Forked 21317 +(21317) found +[17151] Forked 21318 +(21318) found +[17150] Forked 21319 +(21319) found +[17149] Forked 21320 +(21320) found +[17148] Forked 21321 +(21321) found +[17147] Forked 21322 +(21322) found +[17146] Forked 21323 +(21323) found +[17145] Forked 21324 +(21324) found +[17144] Forked 21325 +(21325) found +[17143] Forked 21326 +(21326) found +[17142] Forked 21327 +(21327) found +[17141] Forked 21328 +(21328) found +[17140] Forked 21329 +(21329) found +[17139] Forked 21330 +(21330) found +[17138] Forked 21331 +(21331) found +[17137] Forked 21332 +[17136] Forked 21333 +(21332) found +(21333) found +[17135] Forked 21334 +[17134] Forked 21335 +(21334) found +(21335) found +[17133] Forked 21336 +[17132] Forked 21337 +(21336) found +(21337) found +[17131] Forked 21338 +[17130] Forked 21339 +(21338) found +(21339) found +[17129] Forked 21340 +[17128] Forked 21341 +(21340) found +(21341) found +[17127] Forked 21342 +[17126] Forked 21343 +(21342) found +(21343) found +[17125] Forked 21344 +[17124] Forked 21345 +(21344) found +(21345) found +[17123] Forked 21346 +[17122] Forked 21347 +(21346) found +(21347) found +[17121] Forked 21348 +[17120] Forked 21349 +(21348) found +(21349) found +[17119] Forked 21350 +[17118] Forked 21351 +(21350) found +(21351) found +[17117] Forked 21352 +[17116] Forked 21353 +(21352) found +(21353) found +[17115] Forked 21354 +[17114] Forked 21355 +(21354) found +(21355) found +[17113] Forked 21356 +[17112] Forked 21357 +(21356) found +(21357) found +[17111] Forked 21358 +[17110] Forked 21359 +(21358) found +(21359) found +[17109] Forked 21360 +[17108] Forked 21361 +(21360) found +(21361) found +[17107] Forked 21362 +[17106] Forked 21363 +(21362) found +(21363) found +[17105] Forked 21364 +[17104] Forked 21365 +(21364) found +(21365) found +[17103] Forked 21366 +[17102] Forked 21367 +(21366) found +(21367) found +[17101] Forked 21368 +[17100] Forked 21369 +(21368) found +(21369) found +[17099] Forked 21370 +[17098] Forked 21371 +(21370) found +(21371) found +[17097] Forked 21372 +[17096] Forked 21373 +(21372) found +(21373) found +[17095] Forked 21374 +[17094] Forked 21375 +(21374) found +(21375) found +[17093] Forked 21376 +[17092] Forked 21377 +(21376) found +(21377) found +[17091] Forked 21378 +[17090] Forked 21379 +(21379) found +(21378) found +[17089] Forked 21380 +(21380) found +[17088] Forked 21381 +(21381) found +[17087] Forked 21382 +(21382) found +[17086] Forked 21383 +(21383) found +[17085] Forked 21384 +(21384) found +[17084] Forked 21385 +(21385) found +[17083] Forked 21386 +(21386) found +[17082] Forked 21387 +(21387) found +[17081] Forked 21388 +(21388) found +[17080] Forked 21389 +(21389) found +[17079] Forked 21390 +(21390) found +[17078] Forked 21391 +(21391) found +[17077] Forked 21392 +(21392) found +[17076] Forked 21393 +(21393) found +[17075] Forked 21394 +(21394) found +[17074] Forked 21395 +(21395) found +[17073] Forked 21396 +(21396) found +[17072] Forked 21397 +(21397) found +[17071] Forked 21398 +(21398) found +[17070] Forked 21399 +(21399) found +[17069] Forked 21400 +(21400) found +[17068] Forked 21401 +(21401) found +[17067] Forked 21402 +(21402) found +[17066] Forked 21403 +(21403) found +[17065] Forked 21404 +(21404) found +[17064] Forked 21405 +(21405) found +[17063] Forked 21406 +(21406) found +[17062] Forked 21407 +(21407) found +[17061] Forked 21408 +(21408) found +[17060] Forked 21409 +(21409) found +[17059] Forked 21410 +(21410) found +[17058] Forked 21411 +(21411) found +[17057] Forked 21412 +(21412) found +[17056] Forked 21413 +[17055] Forked 21414 +(21413) found +(21414) found +[17054] Forked 21415 +[17053] Forked 21416 +(21415) found +(21416) found +[17052] Forked 21417 +[17051] Forked 21418 +(21417) found +(21418) found +[17050] Forked 21419 +[17049] Forked 21420 +(21419) found +(21420) found +[17048] Forked 21421 +[17047] Forked 21422 +(21421) found +(21422) found +[17046] Forked 21423 +[17045] Forked 21424 +(21423) found +(21424) found +[17044] Forked 21425 +[17043] Forked 21426 +(21425) found +(21426) found +[17042] Forked 21427 +[17041] Forked 21428 +(21427) found +(21428) found +[17040] Forked 21429 +[17039] Forked 21430 +(21429) found +(21430) found +[17038] Forked 21431 +[17037] Forked 21432 +(21431) found +(21432) found +[17036] Forked 21433 +[17035] Forked 21434 +(21433) found +(21434) found +[17034] Forked 21435 +[17033] Forked 21436 +(21435) found +(21436) found +[17032] Forked 21437 +[17031] Forked 21438 +(21437) found +(21438) found +[17030] Forked 21439 +[17029] Forked 21440 +(21439) found +(21440) found +[17028] Forked 21441 +[17027] Forked 21442 +(21441) found +(21442) found +[17026] Forked 21443 +[17025] Forked 21444 +(21443) found +(21444) found +[17024] Forked 21445 +[17023] Forked 21446 +(21445) found +(21446) found +[17022] Forked 21447 +[17021] Forked 21448 +(21447) found +(21448) found +[17020] Forked 21449 +[17019] Forked 21450 +(21449) found +(21450) found +[17018] Forked 21451 +[17017] Forked 21452 +(21451) found +(21452) found +[17016] Forked 21453 +[17015] Forked 21454 +(21454) found +(21453) found +[17014] Forked 21455 +(21455) found +[17013] Forked 21456 +(21456) found +[17012] Forked 21457 +(21457) found +[17011] Forked 21458 +(21458) found +[17010] Forked 21459 +(21459) found +[17009] Forked 21460 +(21460) found +[17008] Forked 21461 +(21461) found +[17007] Forked 21462 +(21462) found +[17006] Forked 21463 +(21463) found +[17005] Forked 21464 +(21464) found +[17004] Forked 21465 +(21465) found +[17003] Forked 21466 +(21466) found +[17002] Forked 21467 +(21467) found +[17001] Forked 21468 +(21468) found +[17000] Forked 21469 +(21469) found +[16999] Forked 21470 +(21470) found +[16998] Forked 21471 +(21471) found +[16997] Forked 21472 +(21472) found +[16996] Forked 21473 +(21473) found +[16995] Forked 21474 +(21474) found +[16994] Forked 21475 +(21475) found +[16993] Forked 21476 +(21476) found +[16992] Forked 21477 +(21477) found +[16991] Forked 21478 +(21478) found +[16990] Forked 21479 +(21479) found +[16989] Forked 21480 +(21480) found +[16988] Forked 21481 +(21481) found +[16987] Forked 21482 +(21482) found +[16986] Forked 21483 +(21483) found +[16985] Forked 21484 +(21484) found +[16984] Forked 21485 +(21485) found +[16983] Forked 21486 +(21486) found +[16982] Forked 21487 +(21487) found +[16981] Forked 21488 +(21488) found +[16980] Forked 21489 +(21489) found +[16979] Forked 21490 +[16978] Forked 21491 +(21490) found +(21491) found +[16977] Forked 21492 +[16976] Forked 21493 +(21492) found +(21493) found +[16975] Forked 21494 +[16974] Forked 21495 +(21494) found +(21495) found +[16973] Forked 21496 +[16972] Forked 21497 +(21496) found +(21497) found +[16971] Forked 21498 +[16970] Forked 21499 +(21498) found +(21499) found +[16969] Forked 21500 +[16968] Forked 21501 +(21500) found +(21501) found +[16967] Forked 21502 +[16966] Forked 21503 +(21502) found +(21503) found +[16965] Forked 21504 +[16964] Forked 21505 +(21504) found +(21505) found +[16963] Forked 21506 +[16962] Forked 21507 +(21506) found +(21507) found +[16961] Forked 21508 +[16960] Forked 21509 +(21508) found +(21509) found +[16959] Forked 21510 +[16958] Forked 21511 +(21510) found +(21511) found +[16957] Forked 21512 +[16956] Forked 21513 +(21512) found +(21513) found +[16955] Forked 21514 +[16954] Forked 21515 +(21514) found +(21515) found +[16953] Forked 21516 +[16952] Forked 21517 +(21516) found +(21517) found +[16951] Forked 21518 +[16950] Forked 21519 +(21518) found +(21519) found +[16949] Forked 21520 +[16948] Forked 21521 +(21520) found +(21521) found +[16947] Forked 21522 +[16946] Forked 21523 +(21522) found +(21523) found +[16945] Forked 21524 +[16944] Forked 21525 +(21524) found +(21525) found +[16943] Forked 21526 +[16942] Forked 21527 +(21526) found +(21527) found +[16941] Forked 21528 +[16940] Forked 21529 +(21528) found +(21529) found +[16939] Forked 21530 +[16938] Forked 21531 +(21530) found +(21531) found +[16937] Forked 21532 +[16936] Forked 21533 +(21532) found +(21533) found +[16935] Forked 21534 +[16934] Forked 21535 +(21534) found +(21535) found +[16933] Forked 21536 +[16932] Forked 21537 +(21536) found +(21537) found +[16931] Forked 21538 +[16930] Forked 21539 +(21538) found +(21539) found +[16929] Forked 21540 +[16928] Forked 21541 +(21540) found +(21541) found +[16927] Forked 21542 +[16926] Forked 21543 +(21542) found +(21543) found +[16925] Forked 21544 +[16924] Forked 21545 +(21544) found +(21545) found +[16923] Forked 21546 +[16922] Forked 21547 +(21546) found +(21547) found +[16921] Forked 21548 +[16920] Forked 21549 +(21548) found +(21549) found +[16919] Forked 21550 +[16918] Forked 21551 +(21550) found +(21551) found +[16917] Forked 21552 +[16916] Forked 21553 +(21552) found +(21553) found +[16915] Forked 21554 +[16914] Forked 21555 +(21554) found +(21555) found +[16913] Forked 21556 +[16912] Forked 21557 +(21556) found +(21557) found +[16911] Forked 21558 +[16910] Forked 21559 +(21558) found +(21559) found +[16909] Forked 21560 +[16908] Forked 21561 +(21560) found +(21561) found +[16907] Forked 21562 +[16906] Forked 21563 +(21562) found +(21563) found +[16905] Forked 21564 +[16904] Forked 21565 +(21564) found +(21565) found +[16903] Forked 21566 +[16902] Forked 21567 +(21566) found +(21567) found +[16901] Forked 21568 +[16900] Forked 21569 +(21568) found +(21569) found +[16899] Forked 21570 +[16898] Forked 21571 +(21570) found +(21571) found +[16897] Forked 21572 +[16896] Forked 21573 +(21572) found +(21573) found +[16895] Forked 21574 +[16894] Forked 21575 +(21574) found +(21575) found +[16893] Forked 21576 +[16892] Forked 21577 +(21576) found +(21577) found +[16891] Forked 21578 +[16890] Forked 21579 +(21578) found +(21579) found +[16889] Forked 21580 +[16888] Forked 21581 +(21580) found +(21581) found +[16887] Forked 21582 +[16886] Forked 21583 +(21582) found +(21583) found +[16885] Forked 21584 +[16884] Forked 21585 +(21584) found +(21585) found +[16883] Forked 21586 +[16882] Forked 21587 +(21586) found +(21587) found +[16881] Forked 21588 +[16880] Forked 21589 +(21588) found +(21589) found +[16879] Forked 21590 +[16878] Forked 21591 +(21590) found +(21591) found +[16877] Forked 21592 +[16876] Forked 21593 +(21592) found +(21593) found +[16875] Forked 21594 +[16874] Forked 21595 +(21594) found +(21595) found +[16873] Forked 21596 +[16872] Forked 21597 +(21596) found +(21597) found +[16871] Forked 21598 +[16870] Forked 21599 +(21598) found +(21599) found +[16869] Forked 21600 +[16868] Forked 21601 +(21600) found +(21601) found +[16867] Forked 21602 +[16866] Forked 21603 +(21602) found +(21603) found +[16865] Forked 21604 +[16864] Forked 21605 +(21604) found +(21605) found +[16863] Forked 21606 +[16862] Forked 21607 +(21606) found +(21607) found +[16861] Forked 21608 +[16860] Forked 21609 +(21608) found +(21609) found +[16859] Forked 21610 +[16858] Forked 21611 +(21610) found +(21611) found +[16857] Forked 21612 +[16856] Forked 21613 +(21612) found +(21613) found +[16855] Forked 21614 +[16854] Forked 21615 +(21614) found +(21615) found +[16853] Forked 21616 +[16852] Forked 21617 +(21616) found +(21617) found +[16851] Forked 21618 +[16850] Forked 21619 +(21618) found +(21619) found +[16849] Forked 21620 +[16848] Forked 21621 +(21620) found +(21621) found +[16847] Forked 21622 +[16846] Forked 21623 +(21622) found +(21623) found +[16845] Forked 21624 +[16844] Forked 21625 +(21624) found +(21625) found +[16843] Forked 21626 +[16842] Forked 21627 +(21626) found +(21627) found +[16841] Forked 21628 +[16840] Forked 21630 +(21628) found +(21630) found +[16839] Forked 21631 +(21631) found +[16838] Forked 21632 +(21632) found +[16837] Forked 21633 +(21633) found +[16836] Forked 21634 +(21634) found +[16835] Forked 21635 +(21635) found +[16834] Forked 21636 +(21636) found +[16833] Forked 21637 +(21637) found +[16832] Forked 21638 +(21638) found +[16831] Forked 21639 +(21639) found +[16830] Forked 21640 +(21640) found +[16829] Forked 21641 +(21641) found +[16828] Forked 21642 +(21642) found +[16827] Forked 21643 +(21643) found +[16826] Forked 21644 +(21644) found +[16825] Forked 21645 +(21645) found +[16824] Forked 21646 +(21646) found +[16823] Forked 21647 +(21647) found +[16822] Forked 21648 +(21648) found +[16821] Forked 21649 +(21649) found +[16820] Forked 21650 +(21650) found +[16819] Forked 21651 +(21651) found +[16818] Forked 21652 +(21652) found +[16817] Forked 21653 +(21653) found +[16816] Forked 21654 +(21654) found +[16815] Forked 21655 +(21655) found +[16814] Forked 21656 +(21656) found +[16813] Forked 21657 +(21657) found +[16812] Forked 21658 +(21658) found +[16811] Forked 21659 +(21659) found +[16810] Forked 21660 +[16809] Forked 21661 +(21660) found +(21661) found +[16808] Forked 21662 +[16807] Forked 21663 +(21662) found +(21663) found +[16806] Forked 21664 +[16805] Forked 21665 +(21664) found +(21665) found +[16804] Forked 21666 +[16803] Forked 21667 +(21666) found +(21667) found +[16802] Forked 21668 +[16801] Forked 21669 +(21668) found +(21669) found +[16800] Forked 21670 +[16799] Forked 21671 +(21670) found +(21671) found +[16798] Forked 21672 +[16797] Forked 21673 +(21672) found +(21673) found +[16796] Forked 21674 +[16795] Forked 21675 +(21674) found +(21675) found +[16794] Forked 21676 +[16793] Forked 21677 +(21676) found +(21677) found +[16792] Forked 21678 +[16791] Forked 21679 +(21678) found +(21679) found +[16790] Forked 21680 +[16789] Forked 21681 +(21680) found +(21681) found +[16788] Forked 21682 +[16787] Forked 21683 +(21682) found +(21683) found +[16786] Forked 21684 +[16785] Forked 21685 +(21684) found +(21685) found +[16784] Forked 21686 +[16783] Forked 21687 +(21686) found +(21687) found +[16782] Forked 21688 +[16781] Forked 21689 +(21688) found +(21689) found +[16780] Forked 21690 +[16779] Forked 21691 +(21690) found +(21691) found +[16778] Forked 21692 +[16777] Forked 21693 +(21692) found +(21693) found +[16776] Forked 21694 +[16775] Forked 21695 +(21694) found +(21695) found +[16774] Forked 21696 +[16773] Forked 21697 +(21696) found +(21697) found +[16772] Forked 21698 +(21698) found +[16771] Forked 21699 +[16770] Forked 21700 +(21699) found +(21700) found +[16769] Forked 21701 +[16768] Forked 21702 +(21701) found +(21702) found +[16767] Forked 21703 +[16766] Forked 21704 +(21703) found +(21704) found +[16765] Forked 21705 +[16764] Forked 21706 +(21705) found +(21706) found +[16763] Forked 21707 +[16762] Forked 21708 +(21707) found +(21708) found +[16761] Forked 21709 +[16760] Forked 21710 +(21709) found +(21710) found +[16759] Forked 21711 +[16758] Forked 21712 +(21711) found +(21712) found +[16757] Forked 21713 +[16756] Forked 21714 +(21713) found +(21714) found +[16755] Forked 21715 +[16754] Forked 21716 +(21715) found +(21716) found +[16753] Forked 21717 +[16752] Forked 21718 +(21717) found +(21718) found +[16751] Forked 21719 +[16750] Forked 21720 +(21719) found +(21720) found +[16749] Forked 21721 +[16748] Forked 21722 +(21721) found +(21722) found +[16747] Forked 21723 +[16746] Forked 21724 +(21723) found +(21724) found +[16745] Forked 21725 +[16744] Forked 21726 +(21725) found +(21726) found +[16743] Forked 21727 +[16742] Forked 21728 +(21727) found +(21728) found +[16741] Forked 21729 +[16740] Forked 21730 +(21729) found +(21730) found +[16739] Forked 21731 +[16738] Forked 21732 +(21731) found +(21732) found +[16737] Forked 21733 +[16736] Forked 21734 +(21733) found +(21734) found +[16735] Forked 21735 +[16734] Forked 21736 +(21735) found +(21736) found +[16733] Forked 21737 +[16732] Forked 21738 +(21737) found +(21738) found +[16731] Forked 21739 +[16730] Forked 21740 +(21739) found +(21740) found +[16729] Forked 21741 +[16728] Forked 21742 +(21741) found +(21742) found +[16727] Forked 21743 +[16726] Forked 21744 +(21743) found +(21744) found +[16725] Forked 21745 +[16724] Forked 21746 +(21745) found +(21746) found +[16723] Forked 21747 +[16722] Forked 21749 +(21747) found +(21749) found +[16721] Forked 21750 +(21750) found +[16720] Forked 21751 +(21751) found +[16719] Forked 21752 +(21752) found +[16718] Forked 21753 +(21753) found +[16717] Forked 21754 +(21754) found +[16716] Forked 21755 +(21755) found +[16715] Forked 21756 +(21756) found +[16714] Forked 21757 +(21757) found +[16713] Forked 21758 +(21758) found +[16712] Forked 21759 +(21759) found +[16711] Forked 21760 +(21760) found +[16710] Forked 21761 +(21761) found +[16709] Forked 21762 +(21762) found +[16708] Forked 21763 +(21763) found +[16707] Forked 21764 +(21764) found +[16706] Forked 21765 +(21765) found +[16705] Forked 21766 +(21766) found +[16704] Forked 21767 +(21767) found +[16703] Forked 21768 +(21768) found +[16702] Forked 21769 +(21769) found +[16701] Forked 21770 +(21770) found +[16700] Forked 21771 +(21771) found +[16699] Forked 21772 +(21772) found +[16698] Forked 21773 +(21773) found +[16697] Forked 21774 +(21774) found +[16696] Forked 21775 +(21775) found +[16695] Forked 21776 +(21776) found +[16694] Forked 21777 +(21777) found +[16693] Forked 21778 +(21778) found +[16692] Forked 21779 +(21779) found +[16691] Forked 21780 +(21780) found +[16690] Forked 21781 +(21781) found +[16689] Forked 21782 +(21782) found +[16688] Forked 21783 +(21783) found +[16687] Forked 21784 +(21784) found +[16686] Forked 21785 +(21785) found +[16685] Forked 21786 +(21786) found +[16684] Forked 21787 +[16683] Forked 21788 +(21787) found +(21788) found +[16682] Forked 21789 +[16681] Forked 21790 +(21789) found +(21790) found +[16680] Forked 21791 +[16679] Forked 21792 +(21791) found +(21792) found +[16678] Forked 21793 +[16677] Forked 21794 +(21793) found +(21794) found +[16676] Forked 21795 +[16675] Forked 21796 +(21795) found +(21796) found +[16674] Forked 21797 +[16673] Forked 21798 +(21797) found +(21798) found +[16672] Forked 21799 +[16671] Forked 21800 +(21799) found +(21800) found +[16670] Forked 21801 +[16669] Forked 21802 +(21801) found +(21802) found +[16668] Forked 21803 +[16667] Forked 21804 +(21803) found +(21804) found +[16666] Forked 21805 +[16665] Forked 21806 +(21805) found +(21806) found +[16664] Forked 21807 +[16663] Forked 21808 +(21807) found +(21808) found +[16662] Forked 21809 +[16661] Forked 21810 +(21809) found +(21810) found +[16660] Forked 21811 +[16659] Forked 21812 +(21811) found +(21812) found +[16658] Forked 21813 +[16657] Forked 21814 +(21813) found +(21814) found +[16656] Forked 21815 +[16655] Forked 21816 +(21815) found +(21816) found +[16654] Forked 21817 +[16653] Forked 21818 +(21817) found +(21818) found +[16652] Forked 21819 +[16651] Forked 21820 +(21819) found +(21820) found +[16650] Forked 21821 +[16649] Forked 21822 +(21821) found +(21822) found +[16648] Forked 21823 +[16647] Forked 21824 +(21823) found +(21824) found +[16646] Forked 21825 +[16645] Forked 21826 +(21825) found +(21826) found +[16644] Forked 21827 +[16643] Forked 21828 +(21827) found +(21828) found +[16642] Forked 21829 +[16641] Forked 21830 +(21829) found +(21830) found +[16640] Forked 21831 +[16639] Forked 21832 +(21831) found +(21832) found +[16638] Forked 21833 +[16637] Forked 21834 +(21833) found +(21834) found +[16636] Forked 21835 +[16635] Forked 21836 +(21835) found +(21836) found +[16634] Forked 21837 +[16633] Forked 21838 +(21837) found +(21838) found +[16632] Forked 21839 +[16631] Forked 21840 +(21839) found +(21840) found +[16630] Forked 21841 +[16629] Forked 21842 +(21841) found +(21842) found +[16628] Forked 21843 +[16627] Forked 21844 +(21843) found +(21844) found +[16626] Forked 21845 +[16625] Forked 21846 +(21845) found +(21846) found +[16624] Forked 21847 +[16623] Forked 21848 +(21847) found +(21848) found +[16622] Forked 21849 +[16621] Forked 21850 +(21849) found +(21850) found +[16620] Forked 21851 +[16619] Forked 21852 +(21851) found +(21852) found +[16618] Forked 21853 +[16617] Forked 21854 +(21853) found +(21854) found +[16616] Forked 21855 +[16615] Forked 21856 +(21855) found +(21856) found +[16614] Forked 21857 +[16613] Forked 21858 +(21857) found +(21858) found +[16612] Forked 21859 +[16611] Forked 21860 +(21859) found +(21860) found +[16610] Forked 21861 +[16609] Forked 21862 +(21861) found +(21862) found +[16608] Forked 21863 +[16607] Forked 21864 +(21863) found +(21864) found +[16606] Forked 21865 +[16605] Forked 21867 +(21865) found +(21867) found +[16604] Forked 21868 +(21868) found +[16603] Forked 21869 +(21869) found +[16602] Forked 21870 +(21870) found +[16601] Forked 21871 +(21871) found +[16600] Forked 21872 +(21872) found +[16599] Forked 21873 +(21873) found +[16598] Forked 21874 +(21874) found +[16597] Forked 21875 +(21875) found +[16596] Forked 21876 +(21876) found +[16595] Forked 21877 +(21877) found +[16594] Forked 21878 +(21878) found +[16593] Forked 21879 +(21879) found +[16592] Forked 21880 +(21880) found +[16591] Forked 21881 +(21881) found +[16590] Forked 21882 +(21882) found +[16589] Forked 21883 +(21883) found +[16588] Forked 21884 +(21884) found +[16587] Forked 21885 +(21885) found +[16586] Forked 21886 +(21886) found +[16585] Forked 21887 +(21887) found +[16584] Forked 21888 +(21888) found +[16583] Forked 21889 +(21889) found +[16582] Forked 21890 +(21890) found +[16581] Forked 21891 +(21891) found +[16580] Forked 21892 +(21892) found +[16579] Forked 21893 +(21893) found +[16578] Forked 21894 +(21894) found +[16577] Forked 21895 +(21895) found +[16576] Forked 21896 +(21896) found +[16575] Forked 21897 +(21897) found +[16574] Forked 21898 +(21898) found +[16573] Forked 21899 +(21899) found +[16572] Forked 21900 +(21900) found +[16571] Forked 21901 +(21901) found +[16570] Forked 21902 +(21902) found +[16569] Forked 21903 +(21903) found +[16568] Forked 21904 +(21904) found +[16567] Forked 21905 +(21905) found +[16566] Forked 21906 +(21906) found +[16565] Forked 21907 +(21907) found +[16564] Forked 21908 +(21908) found +[16563] Forked 21909 +(21909) found +[16562] Forked 21910 +(21910) found +[16561] Forked 21911 +(21911) found +[16560] Forked 21912 +(21912) found +[16559] Forked 21913 +(21913) found +[16558] Forked 21914 +[16557] Forked 21915 +(21914) found +(21915) found +[16556] Forked 21916 +[16555] Forked 21917 +(21916) found +(21917) found +[16554] Forked 21918 +[16553] Forked 21919 +(21918) found +(21919) found +[16552] Forked 21920 +[16551] Forked 21921 +(21920) found +(21921) found +[16550] Forked 21922 +[16549] Forked 21923 +(21922) found +(21923) found +[16548] Forked 21924 +[16547] Forked 21925 +(21924) found +(21925) found +[16546] Forked 21926 +[16545] Forked 21927 +(21926) found +(21927) found +[16544] Forked 21928 +[16543] Forked 21929 +(21928) found +(21929) found +[16542] Forked 21930 +[16541] Forked 21931 +(21930) found +(21931) found +[16540] Forked 21932 +[16539] Forked 21933 +(21932) found +(21933) found +[16538] Forked 21934 +[16537] Forked 21935 +(21934) found +(21935) found +[16536] Forked 21936 +[16535] Forked 21937 +(21936) found +(21937) found +[16534] Forked 21938 +[16533] Forked 21939 +(21938) found +(21939) found +[16532] Forked 21940 +[16531] Forked 21941 +(21940) found +(21941) found +[16530] Forked 21942 +[16529] Forked 21943 +(21942) found +(21943) found +[16528] Forked 21944 +[16527] Forked 21945 +(21944) found +(21945) found +[16526] Forked 21946 +[16525] Forked 21947 +(21946) found +(21947) found +[16524] Forked 21948 +[16523] Forked 21949 +(21948) found +(21949) found +[16522] Forked 21950 +[16521] Forked 21951 +(21950) found +(21951) found +[16520] Forked 21952 +[16519] Forked 21953 +(21952) found +(21953) found +[16518] Forked 21954 +[16517] Forked 21955 +(21954) found +(21955) found +[16516] Forked 21956 +[16515] Forked 21957 +(21956) found +(21957) found +[16514] Forked 21958 +(21958) found +[16513] Forked 21959 +(21959) found +[16512] Forked 21960 +(21960) found +[16511] Forked 21961 +(21961) found +[16510] Forked 21962 +(21962) found +[16509] Forked 21963 +(21963) found +[16508] Forked 21964 +(21964) found +[16507] Forked 21965 +(21965) found +[16506] Forked 21966 +(21966) found +[16505] Forked 21967 +(21967) found +[16504] Forked 21968 +(21968) found +[16503] Forked 21969 +(21969) found +[16502] Forked 21970 +(21970) found +[16501] Forked 21971 +(21971) found +[16500] Forked 21972 +(21972) found +[16499] Forked 21973 +(21973) found +[16498] Forked 21974 +(21974) found +[16497] Forked 21975 +(21975) found +[16496] Forked 21976 +(21976) found +[16495] Forked 21977 +(21977) found +[16494] Forked 21978 +(21978) found +[16493] Forked 21979 +(21979) found +[16492] Forked 21980 +(21980) found +[16491] Forked 21981 +(21981) found +[16490] Forked 21982 +(21982) found +[16489] Forked 21983 +(21983) found +[16488] Forked 21984 +(21984) found +[16487] Forked 21985 +(21985) found +[16486] Forked 21986 +(21986) found +[16485] Forked 21987 +(21987) found +[16484] Forked 21988 +(21988) found +[16483] Forked 21989 +(21989) found +[16482] Forked 21990 +(21990) found +[16481] Forked 21991 +(21991) found +[16480] Forked 21992 +(21992) found +[16479] Forked 21993 +(21993) found +[16478] Forked 21994 +(21994) found +[16477] Forked 21995 +[16476] Forked 21996 +(21995) found +(21996) found +[16475] Forked 21997 +[16474] Forked 21998 +(21997) found +(21998) found +[16473] Forked 21999 +[16472] Forked 22000 +(21999) found +(22000) found +[16471] Forked 22001 +[16470] Forked 22002 +(22001) found +(22002) found +[16469] Forked 22003 +[16468] Forked 22004 +(22003) found +(22004) found +[16467] Forked 22005 +[16466] Forked 22006 +(22005) found +(22006) found +[16465] Forked 22007 +[16464] Forked 22008 +(22007) found +(22008) found +[16463] Forked 22009 +[16462] Forked 22010 +(22009) found +(22010) found +[16461] Forked 22011 +[16460] Forked 22012 +(22011) found +(22012) found +[16459] Forked 22013 +[16458] Forked 22014 +(22013) found +(22014) found +[16457] Forked 22015 +[16456] Forked 22016 +(22015) found +(22016) found +[16455] Forked 22017 +[16454] Forked 22018 +(22017) found +(22018) found +[16453] Forked 22019 +[16452] Forked 22020 +(22019) found +(22020) found +[16451] Forked 22021 +[16450] Forked 22022 +(22021) found +(22022) found +[16449] Forked 22023 +[16448] Forked 22024 +(22023) found +(22024) found +[16447] Forked 22025 +[16446] Forked 22026 +(22025) found +(22026) found +[16445] Forked 22027 +[16444] Forked 22028 +(22027) found +(22028) found +[16443] Forked 22029 +[16442] Forked 22030 +(22029) found +(22030) found +[16441] Forked 22031 +[16440] Forked 22032 +(22031) found +(22032) found +[16439] Forked 22033 +[16438] Forked 22034 +(22033) found +(22034) found +[16437] Forked 22035 +[16436] Forked 22037 +(22035) found +(22037) found +[16435] Forked 22038 +(22038) found +[16434] Forked 22039 +(22039) found +[16433] Forked 22040 +(22040) found +[16432] Forked 22041 +(22041) found +[16431] Forked 22042 +(22042) found +[16430] Forked 22043 +(22043) found +[16429] Forked 22044 +(22044) found +[16428] Forked 22045 +(22045) found +[16427] Forked 22046 +(22046) found +[16426] Forked 22047 +(22047) found +[16425] Forked 22048 +(22048) found +[16424] Forked 22049 +(22049) found +[16423] Forked 22050 +(22050) found +[16422] Forked 22051 +(22051) found +[16421] Forked 22052 +(22052) found +[16420] Forked 22053 +(22053) found +[16419] Forked 22054 +(22054) found +[16418] Forked 22055 +(22055) found +[16417] Forked 22056 +(22056) found +[16416] Forked 22057 +(22057) found +[16415] Forked 22058 +(22058) found +[16414] Forked 22059 +(22059) found +[16413] Forked 22060 +(22060) found +[16412] Forked 22061 +(22061) found +[16411] Forked 22062 +(22062) found +[16410] Forked 22063 +(22063) found +[16409] Forked 22064 +(22064) found +[16408] Forked 22065 +(22065) found +[16407] Forked 22066 +(22066) found +[16406] Forked 22067 +(22067) found +[16405] Forked 22068 +(22068) found +[16404] Forked 22069 +(22069) found +[16403] Forked 22070 +(22070) found +[16402] Forked 22071 +(22071) found +[16401] Forked 22072 +(22072) found +[16400] Forked 22073 +(22073) found +[16399] Forked 22074 +(22074) found +[16398] Forked 22075 +(22075) found +[16397] Forked 22076 +(22076) found +[16396] Forked 22077 +[16395] Forked 22078 +(22077) found +(22078) found +[16394] Forked 22079 +[16393] Forked 22080 +(22079) found +(22080) found +[16392] Forked 22081 +[16391] Forked 22082 +(22081) found +(22082) found +[16390] Forked 22083 +[16389] Forked 22084 +(22083) found +(22084) found +[16388] Forked 22085 +[16387] Forked 22086 +(22085) found +(22086) found +[16386] Forked 22087 +[16385] Forked 22088 +(22087) found +(22088) found +[16384] Forked 22089 +[16383] Forked 22090 +(22089) found +(22090) found +[16382] Forked 22091 +[16381] Forked 22092 +(22091) found +(22092) found +[16380] Forked 22093 +[16379] Forked 22094 +(22093) found +(22094) found +[16378] Forked 22095 +[16377] Forked 22096 +(22095) found +(22096) found +[16376] Forked 22097 +[16375] Forked 22098 +(22097) found +(22098) found +[16374] Forked 22099 +[16373] Forked 22100 +(22099) found +(22100) found +[16372] Forked 22101 +[16371] Forked 22102 +(22101) found +(22102) found +[16370] Forked 22103 +[16369] Forked 22104 +(22103) found +(22104) found +[16368] Forked 22105 +[16367] Forked 22106 +(22105) found +(22106) found +[16366] Forked 22107 +[16365] Forked 22108 +(22107) found +(22108) found +[16364] Forked 22109 +[16363] Forked 22110 +(22109) found +(22110) found +[16362] Forked 22111 +[16361] Forked 22112 +(22111) found +(22112) found +[16360] Forked 22113 +[16359] Forked 22114 +(22113) found +(22114) found +[16358] Forked 22115 +[16357] Forked 22116 +(22115) found +(22116) found +[16356] Forked 22117 +[16355] Forked 22118 +(22117) found +(22118) found +[16354] Forked 22119 +[16353] Forked 22120 +(22119) found +(22120) found +[16352] Forked 22121 +[16351] Forked 22123 +(22121) found +(22123) found +[16350] Forked 22124 +(22124) found +[16349] Forked 22125 +(22125) found +[16348] Forked 22126 +(22126) found +[16347] Forked 22127 +(22127) found +[16346] Forked 22128 +(22128) found +[16345] Forked 22129 +(22129) found +[16344] Forked 22130 +(22130) found +[16343] Forked 22131 +(22131) found +[16342] Forked 22132 +(22132) found +[16341] Forked 22133 +(22133) found +[16340] Forked 22134 +(22134) found +[16339] Forked 22135 +(22135) found +[16338] Forked 22136 +(22136) found +[16337] Forked 22137 +(22137) found +[16336] Forked 22138 +(22138) found +[16335] Forked 22139 +(22139) found +[16334] Forked 22140 +(22140) found +[16333] Forked 22141 +(22141) found +[16332] Forked 22142 +(22142) found +[16331] Forked 22143 +(22143) found +[16330] Forked 22144 +(22144) found +[16329] Forked 22145 +(22145) found +[16328] Forked 22146 +(22146) found +[16327] Forked 22147 +(22147) found +[16326] Forked 22148 +(22148) found +[16325] Forked 22149 +(22149) found +[16324] Forked 22150 +(22150) found +[16323] Forked 22151 +(22151) found +[16322] Forked 22152 +(22152) found +[16321] Forked 22153 +(22153) found +[16320] Forked 22154 +(22154) found +[16319] Forked 22155 +(22155) found +[16318] Forked 22156 +(22156) found +[16317] Forked 22157 +(22157) found +[16316] Forked 22158 +(22158) found +[16315] Forked 22159 +(22159) found +[16314] Forked 22160 +(22160) found +[16313] Forked 22161 +(22161) found +[16312] Forked 22162 +(22162) found +[16311] Forked 22163 +(22163) found +[16310] Forked 22164 +(22164) found +[16309] Forked 22165 +(22165) found +[16308] Forked 22166 +(22166) found +[16307] Forked 22167 +(22167) found +[16306] Forked 22168 +(22168) found +[16305] Forked 22169 +(22169) found +[16304] Forked 22170 +(22170) found +[16303] Forked 22171 +(22171) found +[16302] Forked 22172 +(22172) found +[16301] Forked 22173 +(22173) found +[16300] Forked 22174 +(22174) found +[16299] Forked 22175 +(22175) found +[16298] Forked 22176 +(22176) found +[16297] Forked 22177 +(22177) found +[16296] Forked 22178 +(22178) found +[16295] Forked 22179 +(22179) found +[16294] Forked 22180 +(22180) found +[16293] Forked 22181 +(22181) found +[16292] Forked 22182 +(22182) found +[16291] Forked 22183 +(22183) found +[16290] Forked 22184 +(22184) found +[16289] Forked 22185 +(22185) found +[16288] Forked 22186 +(22186) found +[16287] Forked 22187 +(22187) found +[16286] Forked 22188 +(22188) found +[16285] Forked 22189 +(22189) found +[16284] Forked 22190 +(22190) found +[16283] Forked 22191 +(22191) found +[16282] Forked 22192 +(22192) found +[16281] Forked 22193 +(22193) found +[16280] Forked 22194 +[16279] Forked 22195 +(22194) found +(22195) found +[16278] Forked 22196 +[16277] Forked 22197 +(22196) found +(22197) found +[16276] Forked 22198 +[16275] Forked 22199 +(22198) found +(22199) found +[16274] Forked 22200 +[16273] Forked 22201 +(22200) found +(22201) found +[16272] Forked 22202 +[16271] Forked 22203 +(22202) found +(22203) found +[16270] Forked 22204 +[16269] Forked 22205 +(22204) found +(22205) found +[16268] Forked 22206 +[16267] Forked 22207 +(22206) found +(22207) found +[16266] Forked 22208 +[16265] Forked 22209 +(22208) found +(22209) found +[16264] Forked 22210 +[16263] Forked 22211 +(22210) found +(22211) found +[16262] Forked 22212 +[16261] Forked 22213 +(22212) found +(22213) found +[16260] Forked 22214 +[16259] Forked 22215 +(22214) found +(22215) found +[16258] Forked 22216 +[16257] Forked 22217 +(22216) found +(22217) found +[16256] Forked 22218 +[16255] Forked 22220 +(22218) found +(22220) found +[16254] Forked 22221 +(22221) found +[16253] Forked 22222 +(22222) found +[16252] Forked 22223 +(22223) found +[16251] Forked 22224 +(22224) found +[16250] Forked 22225 +(22225) found +[16249] Forked 22226 +(22226) found +[16248] Forked 22227 +(22227) found +[16247] Forked 22228 +(22228) found +[16246] Forked 22229 +(22229) found +[16245] Forked 22230 +(22230) found +[16244] Forked 22231 +(22231) found +[16243] Forked 22232 +(22232) found +[16242] Forked 22233 +(22233) found +[16241] Forked 22234 +(22234) found +[16240] Forked 22235 +(22235) found +[16239] Forked 22236 +(22236) found +[16238] Forked 22237 +(22237) found +[16237] Forked 22238 +(22238) found +[16236] Forked 22239 +(22239) found +[16235] Forked 22240 +(22240) found +[16234] Forked 22241 +(22241) found +[16233] Forked 22242 +(22242) found +[16232] Forked 22243 +(22243) found +[16231] Forked 22244 +(22244) found +[16230] Forked 22245 +(22245) found +[16229] Forked 22246 +(22246) found +[16228] Forked 22247 +(22247) found +[16227] Forked 22248 +(22248) found +[16226] Forked 22249 +(22249) found +[16225] Forked 22250 +(22250) found +[16224] Forked 22251 +(22251) found +[16223] Forked 22252 +(22252) found +[16222] Forked 22253 +(22253) found +[16221] Forked 22254 +(22254) found +[16220] Forked 22255 +(22255) found +[16219] Forked 22256 +(22256) found +[16218] Forked 22257 +(22257) found +[16217] Forked 22258 +(22258) found +[16216] Forked 22259 +(22259) found +[16215] Forked 22260 +(22260) found +[16214] Forked 22261 +(22261) found +[16213] Forked 22262 +(22262) found +[16212] Forked 22263 +(22263) found +[16211] Forked 22264 +(22264) found +[16210] Forked 22265 +(22265) found +[16209] Forked 22266 +(22266) found +[16208] Forked 22267 +(22267) found +[16207] Forked 22268 +(22268) found +[16206] Forked 22269 +(22269) found +[16205] Forked 22270 +(22270) found +[16204] Forked 22271 +(22271) found +[16203] Forked 22272 +(22272) found +[16202] Forked 22273 +(22273) found +[16201] Forked 22274 +(22274) found +[16200] Forked 22275 +(22275) found +[16199] Forked 22276 +(22276) found +[16198] Forked 22277 +(22277) found +[16197] Forked 22278 +(22278) found +[16196] Forked 22279 +(22279) found +[16195] Forked 22280 +(22280) found +[16194] Forked 22281 +(22281) found +[16193] Forked 22282 +(22282) found +[16192] Forked 22283 +(22283) found +[16191] Forked 22284 +(22284) found +[16190] Forked 22285 +(22285) found +[16189] Forked 22286 +(22286) found +[16188] Forked 22287 +(22287) found +[16187] Forked 22288 +(22288) found +[16186] Forked 22289 +(22289) found +[16185] Forked 22290 +(22290) found +[16184] Forked 22291 +(22291) found +[16183] Forked 22292 +(22292) found +[16182] Forked 22293 +(22293) found +[16181] Forked 22294 +(22294) found +[16180] Forked 22295 +(22295) found +[16179] Forked 22296 +(22296) found +[16178] Forked 22297 +(22297) found +[16177] Forked 22298 +(22298) found +[16176] Forked 22299 +(22299) found +[16175] Forked 22300 +(22300) found +[16174] Forked 22301 +(22301) found +[16173] Forked 22302 +(22302) found +[16172] Forked 22303 +(22303) found +[16171] Forked 22304 +(22304) found +[16170] Forked 22305 +(22305) found +[16169] Forked 22306 +(22306) found +[16168] Forked 22307 +[16167] Forked 22308 +(22307) found +(22308) found +[16166] Forked 22309 +[16165] Forked 22310 +(22309) found +(22310) found +[16164] Forked 22311 +[16163] Forked 22312 +(22311) found +(22312) found +[16162] Forked 22313 +[16161] Forked 22314 +(22313) found +(22314) found +[16160] Forked 22315 +[16159] Forked 22316 +(22315) found +(22316) found +[16158] Forked 22317 +[16157] Forked 22318 +(22317) found +(22318) found +[16156] Forked 22319 +[16155] Forked 22320 +(22319) found +(22320) found +[16154] Forked 22321 +[16153] Forked 22322 +(22321) found +(22322) found +[16152] Forked 22323 +[16151] Forked 22324 +(22323) found +(22324) found +[16150] Forked 22325 +[16149] Forked 22326 +(22325) found +(22326) found +[16148] Forked 22327 +[16147] Forked 22328 +(22327) found +(22328) found +[16146] Forked 22329 +[16145] Forked 22330 +(22329) found +(22330) found +[16144] Forked 22331 +[16143] Forked 22332 +(22331) found +(22332) found +[16142] Forked 22333 +[16141] Forked 22334 +(22333) found +(22334) found +[16140] Forked 22335 +[16139] Forked 22336 +(22335) found +(22336) found +[16138] Forked 22337 +[16137] Forked 22338 +(22337) found +(22338) found +[16136] Forked 22339 +[16135] Forked 22340 +(22339) found +(22340) found +[16134] Forked 22341 +[16133] Forked 22342 +(22341) found +(22342) found +[16132] Forked 22343 +[16131] Forked 22344 +(22343) found +(22344) found +[16130] Forked 22345 +[16129] Forked 22346 +(22345) found +(22346) found +[16128] Forked 22347 +(22347) found +[16127] Forked 22348 +[16126] Forked 22349 +(22348) found +(22349) found +[16125] Forked 22350 +[16124] Forked 22351 +(22350) found +(22351) found +[16123] Forked 22352 +[16122] Forked 22353 +(22352) found +(22353) found +[16121] Forked 22354 +[16120] Forked 22355 +(22354) found +(22355) found +[16119] Forked 22356 +[16118] Forked 22357 +(22356) found +(22357) found +[16117] Forked 22358 +[16116] Forked 22359 +(22358) found +(22359) found +[16115] Forked 22360 +[16114] Forked 22361 +(22360) found +(22361) found +[16113] Forked 22362 +[16112] Forked 22363 +(22362) found +(22363) found +[16111] Forked 22364 +[16110] Forked 22365 +(22364) found +(22365) found +[16109] Forked 22366 +[16108] Forked 22367 +(22366) found +(22367) found +[16107] Forked 22368 +[16106] Forked 22369 +(22368) found +(22369) found +[16105] Forked 22370 +[16104] Forked 22371 +(22370) found +(22371) found +[16103] Forked 22372 +[16102] Forked 22373 +(22372) found +(22373) found +[16101] Forked 22374 +[16100] Forked 22375 +(22374) found +(22375) found +[16099] Forked 22376 +[16098] Forked 22377 +(22376) found +(22377) found +[16097] Forked 22378 +[16096] Forked 22379 +(22378) found +(22379) found +[16095] Forked 22380 +[16094] Forked 22381 +(22380) found +(22381) found +[16093] Forked 22382 +[16092] Forked 22383 +(22382) found +(22383) found +[16091] Forked 22384 +[16090] Forked 22385 +(22384) found +(22385) found +[16089] Forked 22386 +[16088] Forked 22387 +(22386) found +(22387) found +[16087] Forked 22388 +[16086] Forked 22389 +(22388) found +(22389) found +[16085] Forked 22390 +[16084] Forked 22391 +(22390) found +(22391) found +[16083] Forked 22392 +[16082] Forked 22393 +(22392) found +(22393) found +[16081] Forked 22394 +[16080] Forked 22395 +(22394) found +(22395) found +[16079] Forked 22396 +[16078] Forked 22397 +(22396) found +(22397) found +[16077] Forked 22398 +[16076] Forked 22399 +(22398) found +(22399) found +[16075] Forked 22400 +[16074] Forked 22401 +(22400) found +(22401) found +[16073] Forked 22402 +[16072] Forked 22403 +(22402) found +(22403) found +[16071] Forked 22404 +[16070] Forked 22405 +(22404) found +(22405) found +[16069] Forked 22406 +[16068] Forked 22407 +(22406) found +(22407) found +[16067] Forked 22408 +[16066] Forked 22409 +(22408) found +(22409) found +[16065] Forked 22410 +[16064] Forked 22411 +(22410) found +(22411) found +[16063] Forked 22412 +[16062] Forked 22413 +(22412) found +(22413) found +[16061] Forked 22414 +[16060] Forked 22415 +(22414) found +(22415) found +[16059] Forked 22416 +[16058] Forked 22417 +(22416) found +(22417) found +[16057] Forked 22418 +[16056] Forked 22419 +(22418) found +(22419) found +[16055] Forked 22420 +[16054] Forked 22421 +(22420) found +(22421) found +[16053] Forked 22422 +[16052] Forked 22423 +(22422) found +(22423) found +[16051] Forked 22424 +[16050] Forked 22425 +(22424) found +(22425) found +[16049] Forked 22426 +[16048] Forked 22427 +(22426) found +(22427) found +[16047] Forked 22428 +[16046] Forked 22429 +(22428) found +(22429) found +[16045] Forked 22430 +[16044] Forked 22431 +(22430) found +(22431) found +[16043] Forked 22432 +[16042] Forked 22433 +(22432) found +(22433) found +[16041] Forked 22434 +[16040] Forked 22435 +(22434) found +(22435) found +[16039] Forked 22436 +[16038] Forked 22437 +(22436) found +(22437) found +[16037] Forked 22438 +[16036] Forked 22439 +(22438) found +(22439) found +[16035] Forked 22440 +[16034] Forked 22442 +(22440) found +(22442) found +[16033] Forked 22443 +(22443) found +[16032] Forked 22444 +(22444) found +[16031] Forked 22445 +(22445) found +[16030] Forked 22446 +(22446) found +[16029] Forked 22447 +(22447) found +[16028] Forked 22448 +(22448) found +[16027] Forked 22449 +(22449) found +[16026] Forked 22450 +(22450) found +[16025] Forked 22451 +(22451) found +[16024] Forked 22452 +(22452) found +[16023] Forked 22453 +(22453) found +[16022] Forked 22454 +(22454) found +[16021] Forked 22455 +(22455) found +[16020] Forked 22456 +(22456) found +[16019] Forked 22457 +(22457) found +[16018] Forked 22458 +(22458) found +[16017] Forked 22459 +(22459) found +[16016] Forked 22460 +(22460) found +[16015] Forked 22461 +(22461) found +[16014] Forked 22462 +(22462) found +[16013] Forked 22463 +(22463) found +[16012] Forked 22464 +(22464) found +[16011] Forked 22465 +(22465) found +[16010] Forked 22466 +(22466) found +[16009] Forked 22467 +(22467) found +[16008] Forked 22468 +(22468) found +[16007] Forked 22469 +(22469) found +[16006] Forked 22470 +(22470) found +[16005] Forked 22471 +(22471) found +[16004] Forked 22472 +(22472) found +[16003] Forked 22473 +(22473) found +[16002] Forked 22474 +(22474) found +[16001] Forked 22475 +(22475) found +[16000] Forked 22476 +(22476) found +[15999] Forked 22477 +(22477) found +[15998] Forked 22478 +(22478) found +[15997] Forked 22479 +(22479) found +[15996] Forked 22480 +(22480) found +[15995] Forked 22481 +(22481) found +[15994] Forked 22482 +[15993] Forked 22483 +(22482) found +(22483) found +[15992] Forked 22484 +[15991] Forked 22485 +(22484) found +(22485) found +[15990] Forked 22486 +[15989] Forked 22487 +(22486) found +(22487) found +[15988] Forked 22488 +[15987] Forked 22489 +(22488) found +(22489) found +[15986] Forked 22490 +[15985] Forked 22491 +(22490) found +(22491) found +[15984] Forked 22492 +[15983] Forked 22493 +(22492) found +(22493) found +[15982] Forked 22494 +[15981] Forked 22495 +(22494) found +(22495) found +[15980] Forked 22496 +[15979] Forked 22497 +(22496) found +(22497) found +[15978] Forked 22498 +[15977] Forked 22499 +(22498) found +(22499) found +[15976] Forked 22500 +[15975] Forked 22501 +(22500) found +(22501) found +[15974] Forked 22502 +[15973] Forked 22503 +(22502) found +(22503) found +[15972] Forked 22504 +[15971] Forked 22505 +(22504) found +(22505) found +[15970] Forked 22506 +[15969] Forked 22507 +(22506) found +(22507) found +[15968] Forked 22508 +[15967] Forked 22509 +(22508) found +(22509) found +[15966] Forked 22510 +[15965] Forked 22511 +(22510) found +(22511) found +[15964] Forked 22512 +[15963] Forked 22513 +(22512) found +(22513) found +[15962] Forked 22514 +[15961] Forked 22515 +(22514) found +(22515) found +[15960] Forked 22516 +[15959] Forked 22517 +(22516) found +(22517) found +[15958] Forked 22518 +[15957] Forked 22519 +(22518) found +(22519) found +[15956] Forked 22520 +[15955] Forked 22521 +(22520) found +(22521) found +[15954] Forked 22522 +[15953] Forked 22523 +(22522) found +(22523) found +[15952] Forked 22524 +[15951] Forked 22525 +(22524) found +(22525) found +[15950] Forked 22526 +[15949] Forked 22527 +(22526) found +(22527) found +[15948] Forked 22528 +[15947] Forked 22529 +(22528) found +(22529) found +[15946] Forked 22530 +[15945] Forked 22531 +(22530) found +(22531) found +[15944] Forked 22532 +[15943] Forked 22533 +(22532) found +(22533) found +[15942] Forked 22534 +[15941] Forked 22535 +(22534) found +(22535) found +[15940] Forked 22536 +[15939] Forked 22537 +(22536) found +(22537) found +[15938] Forked 22538 +[15937] Forked 22539 +(22538) found +(22539) found +[15936] Forked 22540 +[15935] Forked 22541 +(22540) found +(22541) found +[15934] Forked 22542 +[15933] Forked 22543 +(22542) found +(22543) found +[15932] Forked 22544 +[15931] Forked 22545 +(22544) found +(22545) found +[15930] Forked 22546 +[15929] Forked 22547 +(22546) found +(22547) found +[15928] Forked 22548 +[15927] Forked 22549 +(22548) found +(22549) found +[15926] Forked 22550 +[15925] Forked 22551 +(22550) found +(22551) found +[15924] Forked 22552 +[15923] Forked 22553 +(22552) found +(22553) found +[15922] Forked 22554 +[15921] Forked 22555 +(22554) found +(22555) found +[15920] Forked 22556 +[15919] Forked 22557 +(22556) found +(22557) found +[15918] Forked 22558 +[15917] Forked 22559 +(22558) found +(22559) found +[15916] Forked 22560 +[15915] Forked 22561 +(22560) found +(22561) found +[15914] Forked 22562 +[15913] Forked 22563 +(22562) found +(22563) found +[15912] Forked 22564 +[15911] Forked 22565 +(22564) found +(22565) found +[15910] Forked 22566 +[15909] Forked 22567 +(22566) found +(22567) found +[15908] Forked 22568 +[15907] Forked 22569 +(22568) found +(22569) found +[15906] Forked 22570 +[15905] Forked 22571 +(22570) found +(22571) found +[15904] Forked 22572 +[15903] Forked 22573 +(22572) found +(22573) found +[15902] Forked 22574 +(22574) found +[15901] Forked 22575 +(22575) found +[15900] Forked 22576 +(22576) found +[15899] Forked 22577 +(22577) found +[15898] Forked 22578 +(22578) found +[15897] Forked 22579 +(22579) found +[15896] Forked 22580 +(22580) found +[15895] Forked 22581 +(22581) found +[15894] Forked 22582 +(22582) found +[15893] Forked 22583 +(22583) found +[15892] Forked 22584 +(22584) found +[15891] Forked 22585 +(22585) found +[15890] Forked 22586 +(22586) found +[15889] Forked 22587 +(22587) found +[15888] Forked 22588 +(22588) found +[15887] Forked 22589 +(22589) found +[15886] Forked 22590 +(22590) found +[15885] Forked 22591 +(22591) found +[15884] Forked 22592 +(22592) found +[15883] Forked 22593 +(22593) found +[15882] Forked 22594 +(22594) found +[15881] Forked 22595 +(22595) found +[15880] Forked 22596 +(22596) found +[15879] Forked 22597 +(22597) found +[15878] Forked 22598 +(22598) found +[15877] Forked 22599 +(22599) found +[15876] Forked 22600 +(22600) found +[15875] Forked 22601 +(22601) found +[15874] Forked 22602 +(22602) found +[15873] Forked 22603 +(22603) found +[15872] Forked 22604 +(22604) found +[15871] Forked 22605 +(22605) found +[15870] Forked 22606 +(22606) found +[15869] Forked 22607 +(22607) found +[15868] Forked 22608 +(22608) found +[15867] Forked 22609 +[15866] Forked 22610 +(22609) found +(22610) found +[15865] Forked 22611 +[15864] Forked 22612 +(22611) found +(22612) found +[15863] Forked 22613 +[15862] Forked 22614 +(22613) found +(22614) found +[15861] Forked 22615 +[15860] Forked 22616 +(22615) found +(22616) found +[15859] Forked 22617 +[15858] Forked 22618 +(22617) found +(22618) found +[15857] Forked 22619 +[15856] Forked 22620 +(22619) found +(22620) found +[15855] Forked 22621 +[15854] Forked 22622 +(22621) found +(22622) found +[15853] Forked 22623 +[15852] Forked 22624 +(22623) found +(22624) found +[15851] Forked 22625 +[15850] Forked 22626 +(22625) found +(22626) found +[15849] Forked 22627 +[15848] Forked 22628 +(22627) found +(22628) found +[15847] Forked 22629 +[15846] Forked 22630 +(22629) found +(22630) found +[15845] Forked 22631 +[15844] Forked 22632 +(22631) found +(22632) found +[15843] Forked 22633 +[15842] Forked 22634 +(22633) found +(22634) found +[15841] Forked 22635 +[15840] Forked 22636 +(22635) found +(22636) found +[15839] Forked 22637 +[15838] Forked 22638 +(22637) found +(22638) found +[15837] Forked 22639 +[15836] Forked 22640 +(22639) found +(22640) found +[15835] Forked 22641 +[15834] Forked 22642 +(22641) found +(22642) found +[15833] Forked 22644 +[15832] Forked 22645 +(22644) found +(22645) found +[15831] Forked 22646 +[15830] Forked 22647 +(22646) found +(22647) found +[15829] Forked 22648 +[15828] Forked 22649 +(22648) found +(22649) found +[15827] Forked 22650 +[15826] Forked 22651 +(22650) found +(22651) found +[15825] Forked 22652 +[15824] Forked 22653 +(22652) found +(22653) found +[15823] Forked 22654 +[15822] Forked 22655 +(22654) found +(22655) found +[15821] Forked 22656 +[15820] Forked 22657 +(22656) found +(22657) found +[15819] Forked 22658 +(22658) found +[15818] Forked 22659 +(22659) found +[15817] Forked 22660 +(22660) found +[15816] Forked 22661 +(22661) found +[15815] Forked 22662 +(22662) found +[15814] Forked 22663 +(22663) found +[15813] Forked 22664 +(22664) found +[15812] Forked 22665 +(22665) found +[15811] Forked 22666 +(22666) found +[15810] Forked 22667 +(22667) found +[15809] Forked 22668 +(22668) found +[15808] Forked 22669 +(22669) found +[15807] Forked 22670 +(22670) found +[15806] Forked 22671 +(22671) found +[15805] Forked 22672 +(22672) found +[15804] Forked 22673 +(22673) found +[15803] Forked 22674 +(22674) found +[15802] Forked 22675 +(22675) found +[15801] Forked 22676 +(22676) found +[15800] Forked 22677 +(22677) found +[15799] Forked 22678 +(22678) found +[15798] Forked 22679 +(22679) found +[15797] Forked 22680 +(22680) found +[15796] Forked 22681 +(22681) found +[15795] Forked 22682 +(22682) found +[15794] Forked 22683 +(22683) found +[15793] Forked 22684 +(22684) found +[15792] Forked 22685 +(22685) found +[15791] Forked 22686 +(22686) found +[15790] Forked 22687 +(22687) found +[15789] Forked 22688 +(22688) found +[15788] Forked 22689 +(22689) found +[15787] Forked 22690 +(22690) found +[15786] Forked 22691 +(22691) found +[15785] Forked 22692 +(22692) found +[15784] Forked 22693 +[15783] Forked 22694 +(22693) found +(22694) found +[15782] Forked 22695 +(22695) found +[15781] Forked 22696 +(22696) found +[15780] Forked 22697 +(22697) found +[15779] Forked 22698 +(22698) found +[15778] Forked 22699 +(22699) found +[15777] Forked 22700 +(22700) found +[15776] Forked 22701 +(22701) found +[15775] Forked 22702 +(22702) found +[15774] Forked 22703 +(22703) found +[15773] Forked 22704 +(22704) found +[15772] Forked 22705 +(22705) found +[15771] Forked 22706 +(22706) found +[15770] Forked 22707 +(22707) found +[15769] Forked 22708 +(22708) found +[15768] Forked 22709 +(22709) found +[15767] Forked 22710 +(22710) found +[15766] Forked 22711 +(22711) found +[15765] Forked 22712 +(22712) found +[15764] Forked 22713 +(22713) found +[15763] Forked 22714 +(22714) found +[15762] Forked 22715 +(22715) found +[15761] Forked 22716 +(22716) found +[15760] Forked 22717 +(22717) found +[15759] Forked 22718 +(22718) found +[15758] Forked 22719 +(22719) found +[15757] Forked 22720 +(22720) found +[15756] Forked 22721 +(22721) found +[15755] Forked 22722 +(22722) found +[15754] Forked 22723 +(22723) found +[15753] Forked 22724 +(22724) found +[15752] Forked 22725 +[15751] Forked 22726 +(22725) found +(22726) found +[15750] Forked 22727 +[15749] Forked 22728 +(22727) found +(22728) found +[15748] Forked 22729 +[15747] Forked 22730 +(22729) found +(22730) found +[15746] Forked 22731 +[15745] Forked 22732 +(22731) found +(22732) found +[15744] Forked 22733 +[15743] Forked 22734 +(22733) found +(22734) found +[15742] Forked 22735 +[15741] Forked 22736 +(22735) found +(22736) found +[15740] Forked 22737 +[15739] Forked 22738 +(22737) found +(22738) found +[15738] Forked 22739 +[15737] Forked 22740 +(22739) found +(22740) found +[15736] Forked 22741 +[15735] Forked 22742 +(22741) found +(22742) found +[15734] Forked 22743 +[15733] Forked 22744 +(22743) found +(22744) found +[15732] Forked 22745 +[15731] Forked 22746 +(22745) found +(22746) found +[15730] Forked 22747 +[15729] Forked 22748 +(22747) found +(22748) found +[15728] Forked 22749 +[15727] Forked 22750 +(22749) found +(22750) found +[15726] Forked 22751 +(22751) found +[15725] Forked 22752 +[15724] Forked 22753 +(22752) found +(22753) found +[15723] Forked 22754 +[15722] Forked 22755 +(22754) found +(22755) found +[15721] Forked 22756 +[15720] Forked 22757 +(22756) found +(22757) found +[15719] Forked 22758 +[15718] Forked 22759 +(22758) found +(22759) found +[15717] Forked 22760 +[15716] Forked 22761 +(22760) found +(22761) found +[15715] Forked 22762 +[15714] Forked 22763 +(22762) found +(22763) found +[15713] Forked 22764 +[15712] Forked 22765 +(22764) found +(22765) found +[15711] Forked 22766 +[15710] Forked 22767 +(22766) found +(22767) found +[15709] Forked 22768 +[15708] Forked 22769 +(22768) found +(22769) found +[15707] Forked 22770 +[15706] Forked 22771 +(22771) found +(22770) found +[15705] Forked 22772 +(22772) found +[15704] Forked 22773 +(22773) found +[15703] Forked 22774 +(22774) found +[15702] Forked 22775 +(22775) found +[15701] Forked 22776 +(22776) found +[15700] Forked 22777 +(22777) found +[15699] Forked 22778 +(22778) found +[15698] Forked 22779 +(22779) found +[15697] Forked 22780 +(22780) found +[15696] Forked 22781 +(22781) found +[15695] Forked 22782 +(22782) found +[15694] Forked 22783 +(22783) found +[15693] Forked 22784 +(22784) found +[15692] Forked 22785 +(22785) found +[15691] Forked 22786 +(22786) found +[15690] Forked 22787 +(22787) found +[15689] Forked 22788 +(22788) found +[15688] Forked 22789 +(22789) found +[15687] Forked 22790 +(22790) found +[15686] Forked 22791 +(22791) found +[15685] Forked 22792 +(22792) found +[15684] Forked 22793 +(22793) found +[15683] Forked 22794 +(22794) found +[15682] Forked 22795 +(22795) found +[15681] Forked 22796 +(22796) found +[15680] Forked 22797 +(22797) found +[15679] Forked 22798 +(22798) found +[15678] Forked 22799 +(22799) found +[15677] Forked 22800 +(22800) found +[15676] Forked 22801 +(22801) found +[15675] Forked 22802 +(22802) found +[15674] Forked 22803 +(22803) found +[15673] Forked 22804 +(22804) found +[15672] Forked 22805 +(22805) found +[15671] Forked 22806 +(22806) found +[15670] Forked 22807 +(22807) found +[15669] Forked 22808 +(22808) found +[15668] Forked 22809 +(22809) found +[15667] Forked 22810 +(22810) found +[15666] Forked 22811 +(22811) found +[15665] Forked 22812 +(22812) found +[15664] Forked 22813 +(22813) found +[15663] Forked 22814 +(22814) found +[15662] Forked 22815 +(22815) found +[15661] Forked 22816 +(22816) found +[15660] Forked 22817 +(22817) found +[15659] Forked 22818 +(22818) found +[15658] Forked 22819 +(22819) found +[15657] Forked 22820 +(22820) found +[15656] Forked 22821 +(22821) found +[15655] Forked 22822 +(22822) found +[15654] Forked 22823 +(22823) found +[15653] Forked 22824 +(22824) found +[15652] Forked 22825 +(22825) found +[15651] Forked 22826 +(22826) found +[15650] Forked 22827 +(22827) found +[15649] Forked 22828 +(22828) found +[15648] Forked 22829 +(22829) found +[15647] Forked 22830 +(22830) found +[15646] Forked 22831 +(22831) found +[15645] Forked 22832 +(22832) found +[15644] Forked 22833 +(22833) found +[15643] Forked 22834 +(22834) found +[15642] Forked 22835 +(22835) found +[15641] Forked 22836 +(22836) found +[15640] Forked 22837 +(22837) found +[15639] Forked 22838 +(22838) found +[15638] Forked 22839 +(22839) found +[15637] Forked 22840 +(22840) found +[15636] Forked 22841 +(22841) found +[15635] Forked 22842 +(22842) found +[15634] Forked 22843 +(22843) found +[15633] Forked 22844 +(22844) found +[15632] Forked 22845 +[15631] Forked 22846 +(22845) found +(22846) found +[15630] Forked 22847 +[15629] Forked 22848 +(22847) found +(22848) found +[15628] Forked 22849 +[15627] Forked 22850 +(22849) found +(22850) found +[15626] Forked 22851 +[15625] Forked 22852 +(22851) found +(22852) found +[15624] Forked 22853 +[15623] Forked 22854 +(22853) found +(22854) found +[15622] Forked 22855 +[15621] Forked 22856 +(22855) found +(22856) found +[15620] Forked 22857 +[15619] Forked 22858 +(22857) found +(22858) found +[15618] Forked 22859 +[15617] Forked 22860 +(22859) found +(22860) found +[15616] Forked 22861 +[15615] Forked 22862 +(22861) found +(22862) found +[15614] Forked 22863 +[15613] Forked 22864 +(22863) found +(22864) found +[15612] Forked 22865 +[15611] Forked 22866 +(22865) found +(22866) found +[15610] Forked 22867 +[15609] Forked 22868 +(22867) found +(22868) found +[15608] Forked 22869 +[15607] Forked 22870 +(22869) found +(22870) found +[15606] Forked 22871 +[15605] Forked 22872 +(22871) found +(22872) found +[15604] Forked 22873 +[15603] Forked 22874 +(22873) found +(22874) found +[15602] Forked 22875 +[15601] Forked 22876 +(22875) found +(22876) found +[15600] Forked 22877 +[15599] Forked 22878 +(22877) found +(22878) found +[15598] Forked 22879 +[15597] Forked 22880 +(22879) found +(22880) found +[15596] Forked 22881 +[15595] Forked 22882 +(22881) found +(22882) found +[15594] Forked 22883 +[15593] Forked 22884 +(22883) found +(22884) found +[15592] Forked 22885 +[15591] Forked 22886 +(22885) found +(22886) found +[15590] Forked 22887 +[15589] Forked 22888 +(22888) found +(22887) found +[15588] Forked 22889 +(22889) found +[15587] Forked 22890 +(22890) found +[15586] Forked 22891 +(22891) found +[15585] Forked 22892 +(22892) found +[15584] Forked 22893 +(22893) found +[15583] Forked 22894 +(22894) found +[15582] Forked 22895 +(22895) found +[15581] Forked 22896 +(22896) found +[15580] Forked 22897 +(22897) found +[15579] Forked 22898 +(22898) found +[15578] Forked 22899 +(22899) found +[15577] Forked 22900 +(22900) found +[15576] Forked 22901 +(22901) found +[15575] Forked 22902 +(22902) found +[15574] Forked 22903 +(22903) found +[15573] Forked 22904 +(22904) found +[15572] Forked 22905 +(22905) found +[15571] Forked 22906 +(22906) found +[15570] Forked 22907 +(22907) found +[15569] Forked 22908 +(22908) found +[15568] Forked 22909 +(22909) found +[15567] Forked 22910 +(22910) found +[15566] Forked 22911 +(22911) found +[15565] Forked 22912 +(22912) found +[15564] Forked 22913 +(22913) found +[15563] Forked 22914 +(22914) found +[15562] Forked 22915 +(22915) found +[15561] Forked 22916 +(22916) found +[15560] Forked 22917 +(22917) found +[15559] Forked 22918 +(22918) found +[15558] Forked 22919 +(22919) found +[15557] Forked 22920 +(22920) found +[15556] Forked 22921 +(22921) found +[15555] Forked 22922 +(22922) found +[15554] Forked 22923 +(22923) found +[15553] Forked 22924 +[15552] Forked 22925 +(22924) found +(22925) found +[15551] Forked 22926 +[15550] Forked 22927 +(22926) found +(22927) found +[15549] Forked 22928 +[15548] Forked 22929 +(22928) found +(22929) found +[15547] Forked 22930 +[15546] Forked 22931 +(22930) found +(22931) found +[15545] Forked 22932 +[15544] Forked 22933 +(22932) found +(22933) found +[15543] Forked 22934 +[15542] Forked 22935 +(22934) found +(22935) found +[15541] Forked 22936 +[15540] Forked 22937 +(22936) found +(22937) found +[15539] Forked 22938 +[15538] Forked 22939 +(22938) found +(22939) found +[15537] Forked 22940 +[15536] Forked 22941 +(22940) found +(22941) found +[15535] Forked 22942 +[15534] Forked 22943 +(22942) found +(22943) found +[15533] Forked 22944 +[15532] Forked 22945 +(22944) found +(22945) found +[15531] Forked 22946 +[15530] Forked 22947 +(22946) found +(22947) found +[15529] Forked 22948 +[15528] Forked 22949 +(22948) found +(22949) found +[15527] Forked 22950 +[15526] Forked 22951 +(22950) found +(22951) found +[15525] Forked 22952 +[15524] Forked 22953 +(22952) found +(22953) found +[15523] Forked 22954 +[15522] Forked 22955 +(22954) found +(22955) found +[15521] Forked 22956 +[15520] Forked 22957 +(22956) found +(22957) found +[15519] Forked 22958 +[15518] Forked 22959 +(22958) found +(22959) found +[15517] Forked 22960 +[15516] Forked 22961 +(22960) found +(22961) found +[15515] Forked 22962 +[15514] Forked 22963 +(22962) found +(22963) found +[15513] Forked 22964 +[15512] Forked 22965 +(22964) found +(22965) found +[15511] Forked 22966 +[15510] Forked 22967 +(22966) found +(22967) found +[15509] Forked 22968 +(22968) found +[15508] Forked 22969 +(22969) found +[15507] Forked 22970 +(22970) found +[15506] Forked 22971 +(22971) found +[15505] Forked 22972 +(22972) found +[15504] Forked 22973 +(22973) found +[15503] Forked 22974 +(22974) found +[15502] Forked 22975 +(22975) found +[15501] Forked 22976 +(22976) found +[15500] Forked 22977 +(22977) found +[15499] Forked 22978 +(22978) found +[15498] Forked 22979 +(22979) found +[15497] Forked 22980 +(22980) found +[15496] Forked 22981 +(22981) found +[15495] Forked 22982 +(22982) found +[15494] Forked 22983 +(22983) found +[15493] Forked 22984 +(22984) found +[15492] Forked 22985 +(22985) found +[15491] Forked 22986 +(22986) found +[15490] Forked 22987 +(22987) found +[15489] Forked 22988 +(22988) found +[15488] Forked 22989 +(22989) found +[15487] Forked 22990 +(22990) found +[15486] Forked 22991 +(22991) found +[15485] Forked 22992 +(22992) found +[15484] Forked 22993 +(22993) found +[15483] Forked 22994 +(22994) found +[15482] Forked 22995 +(22995) found +[15481] Forked 22996 +(22996) found +[15480] Forked 22997 +(22997) found +[15479] Forked 22998 +(22998) found +[15478] Forked 22999 +(22999) found +[15477] Forked 23000 +(23000) found +[15476] Forked 23001 +(23001) found +[15475] Forked 23002 +(23002) found +[15474] Forked 23003 +(23003) found +[15473] Forked 23004 +[15472] Forked 23005 +(23004) found +(23005) found +[15471] Forked 23006 +[15470] Forked 23007 +(23006) found +(23007) found +[15469] Forked 23008 +[15468] Forked 23009 +(23008) found +(23009) found +[15467] Forked 23010 +[15466] Forked 23011 +(23010) found +(23011) found +[15465] Forked 23012 +[15464] Forked 23013 +(23012) found +(23013) found +[15463] Forked 23014 +[15462] Forked 23015 +(23014) found +(23015) found +[15461] Forked 23016 +[15460] Forked 23017 +(23016) found +(23017) found +[15459] Forked 23018 +[15458] Forked 23019 +(23018) found +(23019) found +[15457] Forked 23020 +[15456] Forked 23021 +(23020) found +(23021) found +[15455] Forked 23022 +[15454] Forked 23023 +(23022) found +(23023) found +[15453] Forked 23024 +[15452] Forked 23025 +(23024) found +(23025) found +[15451] Forked 23026 +[15450] Forked 23027 +(23026) found +(23027) found +[15449] Forked 23028 +[15448] Forked 23029 +(23028) found +(23029) found +[15447] Forked 23030 +[15446] Forked 23031 +(23030) found +(23031) found +[15445] Forked 23032 +[15444] Forked 23033 +(23032) found +(23033) found +[15443] Forked 23034 +[15442] Forked 23035 +(23034) found +(23035) found +[15441] Forked 23036 +[15440] Forked 23037 +(23036) found +(23037) found +[15439] Forked 23038 +[15438] Forked 23039 +(23039) found +(23038) found +[15437] Forked 23040 +(23040) found +[15436] Forked 23041 +(23041) found +[15435] Forked 23042 +(23042) found +[15434] Forked 23043 +(23043) found +[15433] Forked 23044 +(23044) found +[15432] Forked 23045 +(23045) found +[15431] Forked 23046 +(23046) found +[15430] Forked 23047 +(23047) found +[15429] Forked 23048 +(23048) found +[15428] Forked 23049 +(23049) found +[15427] Forked 23050 +(23050) found +[15426] Forked 23051 +(23051) found +[15425] Forked 23052 +(23052) found +[15424] Forked 23053 +(23053) found +[15423] Forked 23054 +(23054) found +[15422] Forked 23055 +(23055) found +[15421] Forked 23056 +(23056) found +[15420] Forked 23057 +(23057) found +[15419] Forked 23058 +(23058) found +[15418] Forked 23059 +(23059) found +[15417] Forked 23060 +(23060) found +[15416] Forked 23061 +(23061) found +[15415] Forked 23062 +(23062) found +[15414] Forked 23063 +(23063) found +[15413] Forked 23064 +(23064) found +[15412] Forked 23065 +(23065) found +[15411] Forked 23066 +(23066) found +[15410] Forked 23067 +(23067) found +[15409] Forked 23068 +(23068) found +[15408] Forked 23069 +(23069) found +[15407] Forked 23070 +(23070) found +[15406] Forked 23071 +(23071) found +[15405] Forked 23072 +(23072) found +[15404] Forked 23073 +(23073) found +[15403] Forked 23074 +(23074) found +[15402] Forked 23075 +(23075) found +[15401] Forked 23076 +(23076) found +[15400] Forked 23077 +(23077) found +[15399] Forked 23078 +(23078) found +[15398] Forked 23079 +(23079) found +[15397] Forked 23080 +(23080) found +[15396] Forked 23081 +(23081) found +[15395] Forked 23082 +(23082) found +[15394] Forked 23083 +[15393] Forked 23084 +(23083) found +(23084) found +[15392] Forked 23085 +[15391] Forked 23086 +(23085) found +(23086) found +[15390] Forked 23087 +[15389] Forked 23088 +(23087) found +(23088) found +[15388] Forked 23089 +[15387] Forked 23090 +(23089) found +(23090) found +[15386] Forked 23091 +[15385] Forked 23092 +(23091) found +(23092) found +[15384] Forked 23093 +[15383] Forked 23094 +(23093) found +(23094) found +[15382] Forked 23095 +[15381] Forked 23096 +(23095) found +(23096) found +[15380] Forked 23097 +[15379] Forked 23098 +(23097) found +(23098) found +[15378] Forked 23099 +[15377] Forked 23100 +(23099) found +(23100) found +[15376] Forked 23101 +[15375] Forked 23102 +(23101) found +(23102) found +[15374] Forked 23103 +[15373] Forked 23104 +(23103) found +(23104) found +[15372] Forked 23105 +[15371] Forked 23106 +(23105) found +(23106) found +[15370] Forked 23107 +[15369] Forked 23108 +(23107) found +(23108) found +[15368] Forked 23109 +[15367] Forked 23110 +(23109) found +(23110) found +[15366] Forked 23111 +[15365] Forked 23112 +(23111) found +(23112) found +[15364] Forked 23113 +[15363] Forked 23114 +(23113) found +(23114) found +[15362] Forked 23115 +[15361] Forked 23116 +(23115) found +(23116) found +[15360] Forked 23117 +[15359] Forked 23118 +(23117) found +(23118) found +[15358] Forked 23119 +[15357] Forked 23120 +(23119) found +(23120) found +[15356] Forked 23121 +[15355] Forked 23122 +(23121) found +(23122) found +[15354] Forked 23123 +[15353] Forked 23124 +(23123) found +(23124) found +[15352] Forked 23125 +[15351] Forked 23126 +(23125) found +(23126) found +[15350] Forked 23127 +[15349] Forked 23128 +(23127) found +(23128) found +[15348] Forked 23129 +(23129) found +[15347] Forked 23130 +(23130) found +[15346] Forked 23131 +(23131) found +[15345] Forked 23132 +[15344] Forked 23133 +(23132) found +(23133) found +[15343] Forked 23134 +[15342] Forked 23135 +(23134) found +(23135) found +[15341] Forked 23136 +[15340] Forked 23137 +(23136) found +(23137) found +[15339] Forked 23138 +[15338] Forked 23139 +(23138) found +(23139) found +[15337] Forked 23140 +[15336] Forked 23141 +(23140) found +(23141) found +[15335] Forked 23142 +[15334] Forked 23143 +(23142) found +(23143) found +[15333] Forked 23144 +[15332] Forked 23145 +(23144) found +(23145) found +[15331] Forked 23146 +[15330] Forked 23147 +(23146) found +(23147) found +[15329] Forked 23148 +[15328] Forked 23149 +(23148) found +(23149) found +[15327] Forked 23150 +[15326] Forked 23151 +(23150) found +(23151) found +[15325] Forked 23152 +[15324] Forked 23153 +(23152) found +(23153) found +[15323] Forked 23154 +[15322] Forked 23155 +(23154) found +(23155) found +[15321] Forked 23156 +[15320] Forked 23158 +(23156) found +(23158) found +[15319] Forked 23159 +(23159) found +[15318] Forked 23160 +(23160) found +[15317] Forked 23161 +(23161) found +[15316] Forked 23162 +(23162) found +[15315] Forked 23163 +(23163) found +[15314] Forked 23164 +(23164) found +[15313] Forked 23165 +(23165) found +[15312] Forked 23166 +(23166) found +[15311] Forked 23167 +(23167) found +[15310] Forked 23168 +(23168) found +[15309] Forked 23169 +(23169) found +[15308] Forked 23170 +(23170) found +[15307] Forked 23171 +(23171) found +[15306] Forked 23172 +(23172) found +[15305] Forked 23173 +(23173) found +[15304] Forked 23174 +(23174) found +[15303] Forked 23175 +(23175) found +[15302] Forked 23176 +(23176) found +[15301] Forked 23177 +(23177) found +[15300] Forked 23178 +(23178) found +[15299] Forked 23179 +(23179) found +[15298] Forked 23180 +(23180) found +[15297] Forked 23181 +(23181) found +[15296] Forked 23182 +(23182) found +[15295] Forked 23183 +(23183) found +[15294] Forked 23184 +(23184) found +[15293] Forked 23185 +(23185) found +[15292] Forked 23186 +(23186) found +[15291] Forked 23187 +(23187) found +[15290] Forked 23188 +(23188) found +[15289] Forked 23189 +(23189) found +[15288] Forked 23190 +(23190) found +[15287] Forked 23191 +(23191) found +[15286] Forked 23192 +(23192) found +[15285] Forked 23193 +(23193) found +[15284] Forked 23194 +(23194) found +[15283] Forked 23195 +(23195) found +[15282] Forked 23196 +(23196) found +[15281] Forked 23197 +(23197) found +[15280] Forked 23198 +(23198) found +[15279] Forked 23199 +(23199) found +[15278] Forked 23200 +(23200) found +[15277] Forked 23201 +(23201) found +[15276] Forked 23202 +(23202) found +[15275] Forked 23203 +(23203) found +[15274] Forked 23204 +(23204) found +[15273] Forked 23205 +(23205) found +[15272] Forked 23206 +(23206) found +[15271] Forked 23207 +(23207) found +[15270] Forked 23208 +(23208) found +[15269] Forked 23209 +(23209) found +[15268] Forked 23210 +(23210) found +[15267] Forked 23211 +[15266] Forked 23212 +(23211) found +(23212) found +[15265] Forked 23213 +[15264] Forked 23214 +(23213) found +(23214) found +[15263] Forked 23215 +[15262] Forked 23216 +(23215) found +(23216) found +[15261] Forked 23217 +[15260] Forked 23218 +(23217) found +(23218) found +[15259] Forked 23219 +[15258] Forked 23220 +(23219) found +(23220) found +[15257] Forked 23221 +[15256] Forked 23222 +(23221) found +(23222) found +[15255] Forked 23223 +[15254] Forked 23224 +(23223) found +(23224) found +[15253] Forked 23225 +[15252] Forked 23226 +(23225) found +(23226) found +[15251] Forked 23227 +[15250] Forked 23228 +(23227) found +(23228) found +[15249] Forked 23229 +[15248] Forked 23230 +(23229) found +(23230) found +[15247] Forked 23231 +[15246] Forked 23232 +(23231) found +(23232) found +[15245] Forked 23233 +[15244] Forked 23234 +(23233) found +(23234) found +[15243] Forked 23235 +[15242] Forked 23236 +(23235) found +(23236) found +[15241] Forked 23237 +[15240] Forked 23238 +(23237) found +(23238) found +[15239] Forked 23239 +[15238] Forked 23240 +(23239) found +(23240) found +[15237] Forked 23241 +[15236] Forked 23242 +(23241) found +(23242) found +[15235] Forked 23243 +[15234] Forked 23244 +(23243) found +(23244) found +[15233] Forked 23245 +[15232] Forked 23246 +(23245) found +(23246) found +[15231] Forked 23247 +[15230] Forked 23248 +(23247) found +(23248) found +[15229] Forked 23249 +[15228] Forked 23250 +(23249) found +(23250) found +[15227] Forked 23251 +[15226] Forked 23252 +(23251) found +(23252) found +[15225] Forked 23253 +[15224] Forked 23254 +(23253) found +(23254) found +[15223] Forked 23255 +[15222] Forked 23256 +(23255) found +(23256) found +[15221] Forked 23257 +[15220] Forked 23258 +(23258) found +(23257) found +[15219] Forked 23259 +(23259) found +[15218] Forked 23260 +(23260) found +[15217] Forked 23261 +(23261) found +[15216] Forked 23262 +(23262) found +[15215] Forked 23263 +(23263) found +[15214] Forked 23264 +(23264) found +[15213] Forked 23265 +(23265) found +[15212] Forked 23266 +(23266) found +[15211] Forked 23267 +(23267) found +[15210] Forked 23268 +(23268) found +[15209] Forked 23269 +(23269) found +[15208] Forked 23270 +(23270) found +[15207] Forked 23271 +(23271) found +[15206] Forked 23272 +(23272) found +[15205] Forked 23273 +(23273) found +[15204] Forked 23274 +(23274) found +[15203] Forked 23275 +(23275) found +[15202] Forked 23276 +(23276) found +[15201] Forked 23277 +(23277) found +[15200] Forked 23278 +(23278) found +[15199] Forked 23279 +(23279) found +[15198] Forked 23280 +(23280) found +[15197] Forked 23281 +(23281) found +[15196] Forked 23282 +(23282) found +[15195] Forked 23283 +(23283) found +[15194] Forked 23284 +(23284) found +[15193] Forked 23285 +(23285) found +[15192] Forked 23286 +(23286) found +[15191] Forked 23287 +(23287) found +[15190] Forked 23288 +(23288) found +[15189] Forked 23289 +(23289) found +[15188] Forked 23290 +(23290) found +[15187] Forked 23291 +(23291) found +[15186] Forked 23292 +(23292) found +[15185] Forked 23293 +(23293) found +[15184] Forked 23294 +(23294) found +[15183] Forked 23295 +(23295) found +[15182] Forked 23296 +(23296) found +[15181] Forked 23297 +(23297) found +[15180] Forked 23298 +(23298) found +[15179] Forked 23299 +(23299) found +[15178] Forked 23300 +(23300) found +[15177] Forked 23301 +(23301) found +[15176] Forked 23302 +(23302) found +[15175] Forked 23303 +(23303) found +[15174] Forked 23304 +(23304) found +[15173] Forked 23305 +(23305) found +[15172] Forked 23306 +(23306) found +[15171] Forked 23307 +(23307) found +[15170] Forked 23308 +(23308) found +[15169] Forked 23309 +(23309) found +[15168] Forked 23310 +(23310) found +[15167] Forked 23311 +(23311) found +[15166] Forked 23312 +(23312) found +[15165] Forked 23313 +(23313) found +[15164] Forked 23314 +(23314) found +[15163] Forked 23315 +(23315) found +[15162] Forked 23316 +(23316) found +[15161] Forked 23317 +(23317) found +[15160] Forked 23318 +(23318) found +[15159] Forked 23319 +(23319) found +[15158] Forked 23320 +(23320) found +[15157] Forked 23321 +(23321) found +[15156] Forked 23322 +(23322) found +[15155] Forked 23323 +(23323) found +[15154] Forked 23324 +(23324) found +[15153] Forked 23325 +(23325) found +[15152] Forked 23326 +(23326) found +[15151] Forked 23327 +(23327) found +[15150] Forked 23328 +(23328) found +[15149] Forked 23329 +(23329) found +[15148] Forked 23330 +[15147] Forked 23331 +(23330) found +(23331) found +[15146] Forked 23332 +[15145] Forked 23333 +(23332) found +(23333) found +[15144] Forked 23334 +[15143] Forked 23335 +(23334) found +(23335) found +[15142] Forked 23336 +[15141] Forked 23337 +(23336) found +(23337) found +[15140] Forked 23338 +[15139] Forked 23339 +(23338) found +(23339) found +[15138] Forked 23340 +[15137] Forked 23341 +(23340) found +(23341) found +[15136] Forked 23342 +[15135] Forked 23343 +(23342) found +(23343) found +[15134] Forked 23344 +[15133] Forked 23345 +(23344) found +(23345) found +[15132] Forked 23346 +[15131] Forked 23347 +(23346) found +(23347) found +[15130] Forked 23348 +[15129] Forked 23349 +(23348) found +(23349) found +[15128] Forked 23350 +[15127] Forked 23351 +(23350) found +(23351) found +[15126] Forked 23352 +[15125] Forked 23353 +(23352) found +(23353) found +[15124] Forked 23354 +[15123] Forked 23355 +(23354) found +(23355) found +[15122] Forked 23356 +[15121] Forked 23357 +(23356) found +(23357) found +[15120] Forked 23358 +[15119] Forked 23359 +(23358) found +(23359) found +[15118] Forked 23360 +[15117] Forked 23361 +(23360) found +(23361) found +[15116] Forked 23362 +[15115] Forked 23363 +(23362) found +(23363) found +[15114] Forked 23364 +[15113] Forked 23365 +(23364) found +(23365) found +[15112] Forked 23366 +[15111] Forked 23367 +(23366) found +(23367) found +[15110] Forked 23368 +[15109] Forked 23369 +(23368) found +(23369) found +[15108] Forked 23370 +[15107] Forked 23371 +(23370) found +(23371) found +[15106] Forked 23372 +[15105] Forked 23373 +(23372) found +(23373) found +[15104] Forked 23374 +[15103] Forked 23375 +(23374) found +(23375) found +[15102] Forked 23376 +(23376) found +[15101] Forked 23377 +(23377) found +[15100] Forked 23378 +(23378) found +[15099] Forked 23379 +(23379) found +[15098] Forked 23380 +(23380) found +[15097] Forked 23381 +(23381) found +[15096] Forked 23382 +(23382) found +[15095] Forked 23383 +(23383) found +[15094] Forked 23384 +(23384) found +[15093] Forked 23385 +(23385) found +[15092] Forked 23386 +(23386) found +[15091] Forked 23387 +(23387) found +[15090] Forked 23388 +(23388) found +[15089] Forked 23389 +(23389) found +[15088] Forked 23390 +(23390) found +[15087] Forked 23391 +(23391) found +[15086] Forked 23392 +(23392) found +[15085] Forked 23393 +(23393) found +[15084] Forked 23394 +(23394) found +[15083] Forked 23395 +(23395) found +[15082] Forked 23396 +(23396) found +[15081] Forked 23397 +(23397) found +[15080] Forked 23398 +(23398) found +[15079] Forked 23399 +(23399) found +[15078] Forked 23400 +(23400) found +[15077] Forked 23401 +(23401) found +[15076] Forked 23402 +(23402) found +[15075] Forked 23403 +(23403) found +[15074] Forked 23404 +(23404) found +[15073] Forked 23405 +(23405) found +[15072] Forked 23406 +(23406) found +[15071] Forked 23407 +(23407) found +[15070] Forked 23408 +(23408) found +[15069] Forked 23409 +(23409) found +[15068] Forked 23410 +(23410) found +[15067] Forked 23411 +(23411) found +[15066] Forked 23412 +(23412) found +[15065] Forked 23413 +[15064] Forked 23414 +(23413) found +(23414) found +[15063] Forked 23415 +[15062] Forked 23416 +(23415) found +(23416) found +[15061] Forked 23417 +[15060] Forked 23418 +(23417) found +(23418) found +[15059] Forked 23419 +[15058] Forked 23420 +(23419) found +(23420) found +[15057] Forked 23421 +[15056] Forked 23422 +(23421) found +(23422) found +[15055] Forked 23423 +[15054] Forked 23424 +(23423) found +(23424) found +[15053] Forked 23425 +[15052] Forked 23426 +(23425) found +(23426) found +[15051] Forked 23427 +[15050] Forked 23428 +(23427) found +(23428) found +[15049] Forked 23429 +[15048] Forked 23430 +(23429) found +(23430) found +[15047] Forked 23431 +[15046] Forked 23432 +(23431) found +(23432) found +[15045] Forked 23433 +[15044] Forked 23434 +(23433) found +(23434) found +[15043] Forked 23435 +[15042] Forked 23436 +(23435) found +(23436) found +[15041] Forked 23437 +[15040] Forked 23438 +(23437) found +(23438) found +[15039] Forked 23439 +[15038] Forked 23440 +(23439) found +(23440) found +[15037] Forked 23441 +[15036] Forked 23442 +(23441) found +(23442) found +[15035] Forked 23443 +[15034] Forked 23444 +(23443) found +(23444) found +[15033] Forked 23445 +[15032] Forked 23446 +(23445) found +(23446) found +[15031] Forked 23447 +[15030] Forked 23448 +(23447) found +(23448) found +[15029] Forked 23449 +[15028] Forked 23450 +(23449) found +(23450) found +[15027] Forked 23451 +[15026] Forked 23452 +(23451) found +(23452) found +[15025] Forked 23453 +[15024] Forked 23454 +(23453) found +(23454) found +[15023] Forked 23455 +[15022] Forked 23456 +(23455) found +(23456) found +[15021] Forked 23457 +[15020] Forked 23458 +(23457) found +(23458) found +[15019] Forked 23459 +[15018] Forked 23460 +(23459) found +(23460) found +[15017] Forked 23461 +[15016] Forked 23462 +(23461) found +(23462) found +[15015] Forked 23463 +[15014] Forked 23464 +(23463) found +(23464) found +[15013] Forked 23465 +[15012] Forked 23466 +(23465) found +(23466) found +[15011] Forked 23467 +[15010] Forked 23468 +(23467) found +(23468) found +[15009] Forked 23469 +[15008] Forked 23470 +(23469) found +(23470) found +[15007] Forked 23471 +[15006] Forked 23472 +(23471) found +(23472) found +[15005] Forked 23473 +[15004] Forked 23474 +(23473) found +(23474) found +[15003] Forked 23475 +[15002] Forked 23476 +(23475) found +(23476) found +[15001] Forked 23477 +[15000] Forked 23478 +(23477) found +(23478) found +[14999] Forked 23479 +[14998] Forked 23480 +(23479) found +(23480) found +[14997] Forked 23481 +[14996] Forked 23482 +(23481) found +(23482) found +[14995] Forked 23483 +[14994] Forked 23484 +(23483) found +(23484) found +[14993] Forked 23485 +[14992] Forked 23486 +(23485) found +(23486) found +[14991] Forked 23487 +[14990] Forked 23488 +(23487) found +(23488) found +[14989] Forked 23489 +[14988] Forked 23490 +(23489) found +(23490) found +[14987] Forked 23491 +[14986] Forked 23492 +(23491) found +(23492) found +[14985] Forked 23493 +[14984] Forked 23494 +(23493) found +(23494) found +[14983] Forked 23495 +[14982] Forked 23496 +(23495) found +(23496) found +[14981] Forked 23497 +[14980] Forked 23498 +(23497) found +(23498) found +[14979] Forked 23499 +[14978] Forked 23500 +(23499) found +(23500) found +[14977] Forked 23501 +[14976] Forked 23502 +(23501) found +(23502) found +[14975] Forked 23503 +[14974] Forked 23504 +(23503) found +(23504) found +[14973] Forked 23505 +[14972] Forked 23506 +(23505) found +(23506) found +[14971] Forked 23507 +[14970] Forked 23508 +(23507) found +(23508) found +[14969] Forked 23509 +[14968] Forked 23510 +(23509) found +(23510) found +[14967] Forked 23511 +[14966] Forked 23512 +(23511) found +(23512) found +[14965] Forked 23513 +[14964] Forked 23514 +(23513) found +(23514) found +[14963] Forked 23515 +[14962] Forked 23516 +(23515) found +(23516) found +[14961] Forked 23517 +[14960] Forked 23518 +(23517) found +(23518) found +[14959] Forked 23519 +[14958] Forked 23520 +(23519) found +(23520) found +[14957] Forked 23521 +[14956] Forked 23522 +(23521) found +(23522) found +[14955] Forked 23523 +[14954] Forked 23524 +(23523) found +(23524) found +[14953] Forked 23525 +[14952] Forked 23526 +(23525) found +(23526) found +[14951] Forked 23527 +[14950] Forked 23528 +(23527) found +(23528) found +[14949] Forked 23529 +[14948] Forked 23530 +(23529) found +(23530) found +[14947] Forked 23531 +[14946] Forked 23532 +(23531) found +(23532) found +[14945] Forked 23533 +[14944] Forked 23534 +(23533) found +(23534) found +[14943] Forked 23535 +[14942] Forked 23536 +(23535) found +(23536) found +[14941] Forked 23537 +[14940] Forked 23538 +(23537) found +(23538) found +[14939] Forked 23539 +[14938] Forked 23540 +(23539) found +(23540) found +[14937] Forked 23541 +[14936] Forked 23542 +(23541) found +(23542) found +[14935] Forked 23543 +[14934] Forked 23544 +(23543) found +(23544) found +[14933] Forked 23545 +[14932] Forked 23546 +(23545) found +(23546) found +[14931] Forked 23547 +[14930] Forked 23548 +(23547) found +(23548) found +[14929] Forked 23549 +[14928] Forked 23550 +(23549) found +(23550) found +[14927] Forked 23551 +[14926] Forked 23552 +(23551) found +(23552) found +[14925] Forked 23553 +[14924] Forked 23554 +(23553) found +(23554) found +[14923] Forked 23555 +[14922] Forked 23556 +(23555) found +(23556) found +[14921] Forked 23557 +[14920] Forked 23558 +(23557) found +(23558) found +[14919] Forked 23559 +[14918] Forked 23560 +(23559) found +(23560) found +[14917] Forked 23561 +[14916] Forked 23562 +(23561) found +(23562) found +[14915] Forked 23563 +[14914] Forked 23564 +(23563) found +(23564) found +[14913] Forked 23565 +[14912] Forked 23566 +(23565) found +(23566) found +[14911] Forked 23567 +[14910] Forked 23568 +(23567) found +(23568) found +[14909] Forked 23569 +[14908] Forked 23570 +(23569) found +(23570) found +[14907] Forked 23571 +[14906] Forked 23572 +(23571) found +(23572) found +[14905] Forked 23573 +[14904] Forked 23574 +(23573) found +(23574) found +[14903] Forked 23575 +[14902] Forked 23577 +(23575) found +(23577) found +[14901] Forked 23578 +(23578) found +[14900] Forked 23579 +(23579) found +[14899] Forked 23580 +(23580) found +[14898] Forked 23581 +(23581) found +[14897] Forked 23582 +(23582) found +[14896] Forked 23583 +(23583) found +[14895] Forked 23584 +(23584) found +[14894] Forked 23585 +(23585) found +[14893] Forked 23586 +(23586) found +[14892] Forked 23587 +(23587) found +[14891] Forked 23588 +(23588) found +[14890] Forked 23589 +(23589) found +[14889] Forked 23590 +(23590) found +[14888] Forked 23591 +(23591) found +[14887] Forked 23592 +(23592) found +[14886] Forked 23593 +(23593) found +[14885] Forked 23594 +(23594) found +[14884] Forked 23595 +(23595) found +[14883] Forked 23596 +(23596) found +[14882] Forked 23597 +(23597) found +[14881] Forked 23598 +(23598) found +[14880] Forked 23599 +(23599) found +[14879] Forked 23600 +(23600) found +[14878] Forked 23601 +(23601) found +[14877] Forked 23602 +(23602) found +[14876] Forked 23603 +(23603) found +[14875] Forked 23604 +(23604) found +[14874] Forked 23605 +(23605) found +[14873] Forked 23606 +(23606) found +[14872] Forked 23607 +(23607) found +[14871] Forked 23608 +(23608) found +[14870] Forked 23609 +(23609) found +[14869] Forked 23610 +(23610) found +[14868] Forked 23611 +(23611) found +[14867] Forked 23612 +(23612) found +[14866] Forked 23613 +(23613) found +[14865] Forked 23614 +(23614) found +[14864] Forked 23615 +(23615) found +[14863] Forked 23616 +(23616) found +[14862] Forked 23617 +(23617) found +[14861] Forked 23618 +(23618) found +[14860] Forked 23619 +(23619) found +[14859] Forked 23620 +(23620) found +[14858] Forked 23621 +(23621) found +[14857] Forked 23622 +(23622) found +[14856] Forked 23623 +(23623) found +[14855] Forked 23624 +(23624) found +[14854] Forked 23625 +(23625) found +[14853] Forked 23626 +(23626) found +[14852] Forked 23627 +[14851] Forked 23628 +(23627) found +(23628) found +[14850] Forked 23629 +[14849] Forked 23630 +(23629) found +(23630) found +[14848] Forked 23631 +[14847] Forked 23632 +(23631) found +(23632) found +[14846] Forked 23633 +[14845] Forked 23634 +(23633) found +(23634) found +[14844] Forked 23635 +[14843] Forked 23636 +(23635) found +(23636) found +[14842] Forked 23637 +[14841] Forked 23638 +(23637) found +(23638) found +[14840] Forked 23639 +[14839] Forked 23640 +(23639) found +(23640) found +[14838] Forked 23641 +[14837] Forked 23642 +(23641) found +(23642) found +[14836] Forked 23643 +[14835] Forked 23644 +(23643) found +(23644) found +[14834] Forked 23645 +[14833] Forked 23646 +(23645) found +(23646) found +[14832] Forked 23647 +[14831] Forked 23648 +(23647) found +(23648) found +[14830] Forked 23649 +[14829] Forked 23650 +(23649) found +(23650) found +[14828] Forked 23651 +[14827] Forked 23652 +(23651) found +(23652) found +[14826] Forked 23653 +[14825] Forked 23654 +(23653) found +(23654) found +[14824] Forked 23655 +[14823] Forked 23656 +(23655) found +(23656) found +[14822] Forked 23657 +[14821] Forked 23658 +(23657) found +(23658) found +[14820] Forked 23659 +[14819] Forked 23660 +(23659) found +(23660) found +[14818] Forked 23661 +[14817] Forked 23662 +(23661) found +(23662) found +[14816] Forked 23663 +[14815] Forked 23664 +(23663) found +(23664) found +[14814] Forked 23665 +[14813] Forked 23666 +(23665) found +(23666) found +[14812] Forked 23667 +[14811] Forked 23668 +(23667) found +(23668) found +[14810] Forked 23669 +[14809] Forked 23670 +(23669) found +(23670) found +[14808] Forked 23671 +[14807] Forked 23672 +(23671) found +(23672) found +[14806] Forked 23673 +[14805] Forked 23674 +(23673) found +(23674) found +[14804] Forked 23675 +[14803] Forked 23676 +(23675) found +(23676) found +[14802] Forked 23677 +[14801] Forked 23678 +(23677) found +(23678) found +[14800] Forked 23679 +[14799] Forked 23680 +(23679) found +(23680) found +[14798] Forked 23681 +[14797] Forked 23682 +(23681) found +(23682) found +[14796] Forked 23683 +[14795] Forked 23684 +(23683) found +(23684) found +[14794] Forked 23685 +[14793] Forked 23686 +(23685) found +(23686) found +[14792] Forked 23687 +[14791] Forked 23688 +(23687) found +(23688) found +[14790] Forked 23689 +[14789] Forked 23690 +(23689) found +(23690) found +[14788] Forked 23691 +[14787] Forked 23692 +(23691) found +(23692) found +[14786] Forked 23693 +[14785] Forked 23694 +(23693) found +(23694) found +[14784] Forked 23695 +[14783] Forked 23696 +(23695) found +(23696) found +[14782] Forked 23697 +[14781] Forked 23698 +(23697) found +(23698) found +[14780] Forked 23699 +[14779] Forked 23700 +(23699) found +(23700) found +[14778] Forked 23701 +[14777] Forked 23702 +(23701) found +(23702) found +[14776] Forked 23703 +[14775] Forked 23704 +(23703) found +(23704) found +[14774] Forked 23705 +[14773] Forked 23706 +(23705) found +(23706) found +[14772] Forked 23707 +[14771] Forked 23708 +(23707) found +(23708) found +[14770] Forked 23709 +[14769] Forked 23710 +(23709) found +(23710) found +[14768] Forked 23711 +[14767] Forked 23712 +(23711) found +(23712) found +[14766] Forked 23713 +[14765] Forked 23714 +(23713) found +(23714) found +[14764] Forked 23715 +[14763] Forked 23716 +(23715) found +(23716) found +[14762] Forked 23717 +[14761] Forked 23718 +(23717) found +(23718) found +[14760] Forked 23719 +(23719) found +[14759] Forked 23720 +(23720) found +[14758] Forked 23721 +(23721) found +[14757] Forked 23722 +(23722) found +[14756] Forked 23723 +(23723) found +[14755] Forked 23724 +(23724) found +[14754] Forked 23725 +(23725) found +[14753] Forked 23726 +(23726) found +[14752] Forked 23727 +(23727) found +[14751] Forked 23728 +(23728) found +[14750] Forked 23729 +(23729) found +[14749] Forked 23730 +(23730) found +[14748] Forked 23731 +(23731) found +[14747] Forked 23732 +(23732) found +[14746] Forked 23733 +(23733) found +[14745] Forked 23734 +(23734) found +[14744] Forked 23735 +(23735) found +[14743] Forked 23736 +(23736) found +[14742] Forked 23737 +(23737) found +[14741] Forked 23738 +(23738) found +[14740] Forked 23739 +(23739) found +[14739] Forked 23740 +(23740) found +[14738] Forked 23741 +(23741) found +[14737] Forked 23742 +(23742) found +[14736] Forked 23743 +(23743) found +[14735] Forked 23744 +(23744) found +[14734] Forked 23745 +(23745) found +[14733] Forked 23746 +(23746) found +[14732] Forked 23747 +(23747) found +[14731] Forked 23748 +(23748) found +[14730] Forked 23749 +(23749) found +[14729] Forked 23750 +(23750) found +[14728] Forked 23751 +(23751) found +[14727] Forked 23752 +[14726] Forked 23753 +(23752) found +(23753) found +[14725] Forked 23754 +[14724] Forked 23755 +(23754) found +(23755) found +[14723] Forked 23756 +[14722] Forked 23757 +(23756) found +(23757) found +[14721] Forked 23758 +[14720] Forked 23759 +(23758) found +(23759) found +[14719] Forked 23760 +[14718] Forked 23761 +(23760) found +(23761) found +[14717] Forked 23762 +[14716] Forked 23763 +(23762) found +(23763) found +[14715] Forked 23764 +[14714] Forked 23765 +(23764) found +(23765) found +[14713] Forked 23766 +[14712] Forked 23767 +(23766) found +(23767) found +[14711] Forked 23768 +[14710] Forked 23769 +(23768) found +(23769) found +[14709] Forked 23770 +[14708] Forked 23771 +(23770) found +(23771) found +[14707] Forked 23772 +[14706] Forked 23773 +(23772) found +(23773) found +[14705] Forked 23774 +[14704] Forked 23775 +(23774) found +(23775) found +[14703] Forked 23776 +[14702] Forked 23777 +(23776) found +(23777) found +[14701] Forked 23778 +[14700] Forked 23779 +(23778) found +(23779) found +[14699] Forked 23780 +[14698] Forked 23781 +(23780) found +(23781) found +[14697] Forked 23782 +[14696] Forked 23783 +(23782) found +(23783) found +[14695] Forked 23784 +[14694] Forked 23785 +(23784) found +(23785) found +[14693] Forked 23786 +[14692] Forked 23787 +(23786) found +(23787) found +[14691] Forked 23788 +[14690] Forked 23789 +(23788) found +(23789) found +[14689] Forked 23790 +[14688] Forked 23791 +(23790) found +(23791) found +[14687] Forked 23792 +[14686] Forked 23793 +(23792) found +(23793) found +[14685] Forked 23794 +[14684] Forked 23795 +(23794) found +(23795) found +[14683] Forked 23796 +[14682] Forked 23797 +(23796) found +(23797) found +[14681] Forked 23798 +[14680] Forked 23799 +(23798) found +(23799) found +[14679] Forked 23800 +[14678] Forked 23801 +(23800) found +(23801) found +[14677] Forked 23802 +[14676] Forked 23803 +(23802) found +(23803) found +[14675] Forked 23804 +[14674] Forked 23805 +(23804) found +(23805) found +[14673] Forked 23806 +[14672] Forked 23807 +(23806) found +(23807) found +[14671] Forked 23808 +[14670] Forked 23809 +(23808) found +(23809) found +[14669] Forked 23810 +[14668] Forked 23811 +(23810) found +(23811) found +[14667] Forked 23812 +[14666] Forked 23813 +(23812) found +(23813) found +[14665] Forked 23814 +[14664] Forked 23815 +(23814) found +(23815) found +[14663] Forked 23816 +[14662] Forked 23817 +(23816) found +(23817) found +[14661] Forked 23818 +[14660] Forked 23819 +(23818) found +(23819) found +[14659] Forked 23820 +[14658] Forked 23821 +(23820) found +(23821) found +[14657] Forked 23822 +[14656] Forked 23823 +(23822) found +(23823) found +[14655] Forked 23824 +[14654] Forked 23825 +(23824) found +(23825) found +[14653] Forked 23826 +[14652] Forked 23827 +(23826) found +(23827) found +[14651] Forked 23828 +[14650] Forked 23829 +(23828) found +(23829) found +[14649] Forked 23830 +[14648] Forked 23831 +(23830) found +(23831) found +[14647] Forked 23832 +[14646] Forked 23833 +(23832) found +(23833) found +[14645] Forked 23834 +[14644] Forked 23835 +(23834) found +(23835) found +[14643] Forked 23836 +[14642] Forked 23837 +(23836) found +(23837) found +[14641] Forked 23838 +[14640] Forked 23839 +(23838) found +(23839) found +[14639] Forked 23840 +[14638] Forked 23841 +(23840) found +(23841) found +[14637] Forked 23842 +[14636] Forked 23843 +(23842) found +(23843) found +[14635] Forked 23844 +(23844) found +[14634] Forked 23845 +(23845) found +[14633] Forked 23846 +(23846) found +[14632] Forked 23847 +(23847) found +[14631] Forked 23848 +(23848) found +[14630] Forked 23849 +(23849) found +[14629] Forked 23850 +(23850) found +[14628] Forked 23851 +(23851) found +[14627] Forked 23852 +(23852) found +[14626] Forked 23853 +(23853) found +[14625] Forked 23854 +(23854) found +[14624] Forked 23855 +(23855) found +[14623] Forked 23856 +(23856) found +[14622] Forked 23857 +(23857) found +[14621] Forked 23858 +(23858) found +[14620] Forked 23859 +(23859) found +[14619] Forked 23860 +(23860) found +[14618] Forked 23861 +(23861) found +[14617] Forked 23862 +(23862) found +[14616] Forked 23863 +(23863) found +[14615] Forked 23864 +(23864) found +[14614] Forked 23865 +(23865) found +[14613] Forked 23866 +(23866) found +[14612] Forked 23867 +(23867) found +[14611] Forked 23868 +(23868) found +[14610] Forked 23869 +(23869) found +[14609] Forked 23870 +(23870) found +[14608] Forked 23871 +(23871) found +[14607] Forked 23872 +(23872) found +[14606] Forked 23873 +(23873) found +[14605] Forked 23874 +(23874) found +[14604] Forked 23875 +(23875) found +[14603] Forked 23876 +(23876) found +[14602] Forked 23877 +(23877) found +[14601] Forked 23878 +(23878) found +[14600] Forked 23879 +[14599] Forked 23880 +(23879) found +(23880) found +[14598] Forked 23881 +[14597] Forked 23882 +(23881) found +(23882) found +[14596] Forked 23883 +[14595] Forked 23884 +(23883) found +(23884) found +[14594] Forked 23885 +[14593] Forked 23886 +(23885) found +(23886) found +[14592] Forked 23887 +[14591] Forked 23888 +(23887) found +(23888) found +[14590] Forked 23889 +[14589] Forked 23890 +(23889) found +(23890) found +[14588] Forked 23891 +[14587] Forked 23892 +(23891) found +(23892) found +[14586] Forked 23893 +[14585] Forked 23894 +(23893) found +(23894) found +[14584] Forked 23895 +[14583] Forked 23896 +(23895) found +(23896) found +[14582] Forked 23897 +[14581] Forked 23898 +(23897) found +(23898) found +[14580] Forked 23899 +[14579] Forked 23900 +(23899) found +(23900) found +[14578] Forked 23901 +[14577] Forked 23902 +(23901) found +(23902) found +[14576] Forked 23903 +[14575] Forked 23904 +(23903) found +(23904) found +[14574] Forked 23905 +[14573] Forked 23906 +(23905) found +(23906) found +[14572] Forked 23907 +[14571] Forked 23908 +(23907) found +(23908) found +[14570] Forked 23909 +[14569] Forked 23910 +(23909) found +(23910) found +[14568] Forked 23911 +[14567] Forked 23912 +(23911) found +(23912) found +[14566] Forked 23913 +(23913) found +[14565] Forked 23914 +(23914) found +[14564] Forked 23915 +(23915) found +[14563] Forked 23916 +(23916) found +[14562] Forked 23917 +(23917) found +[14561] Forked 23918 +(23918) found +[14560] Forked 23919 +(23919) found +[14559] Forked 23920 +(23920) found +[14558] Forked 23921 +(23921) found +[14557] Forked 23922 +(23922) found +[14556] Forked 23923 +(23923) found +[14555] Forked 23924 +(23924) found +[14554] Forked 23925 +(23925) found +[14553] Forked 23926 +(23926) found +[14552] Forked 23927 +(23927) found +[14551] Forked 23928 +(23928) found +[14550] Forked 23929 +(23929) found +[14549] Forked 23930 +(23930) found +[14548] Forked 23931 +(23931) found +[14547] Forked 23932 +(23932) found +[14546] Forked 23933 +(23933) found +[14545] Forked 23934 +(23934) found +[14544] Forked 23935 +(23935) found +[14543] Forked 23936 +(23936) found +[14542] Forked 23937 +(23937) found +[14541] Forked 23938 +(23938) found +[14540] Forked 23939 +(23939) found +[14539] Forked 23940 +(23940) found +[14538] Forked 23941 +(23941) found +[14537] Forked 23942 +(23942) found +[14536] Forked 23943 +(23943) found +[14535] Forked 23944 +(23944) found +[14534] Forked 23945 +(23945) found +[14533] Forked 23946 +(23946) found +[14532] Forked 23947 +(23947) found +[14531] Forked 23948 +(23948) found +[14530] Forked 23949 +(23949) found +[14529] Forked 23950 +(23950) found +[14528] Forked 23951 +(23951) found +[14527] Forked 23952 +(23952) found +[14526] Forked 23953 +(23953) found +[14525] Forked 23954 +(23954) found +[14524] Forked 23955 +(23955) found +[14523] Forked 23956 +(23956) found +[14522] Forked 23957 +(23957) found +[14521] Forked 23958 +(23958) found +[14520] Forked 23959 +(23959) found +[14519] Forked 23960 +(23960) found +[14518] Forked 23961 +(23961) found +[14517] Forked 23962 +(23962) found +[14516] Forked 23963 +(23963) found +[14515] Forked 23964 +(23964) found +[14514] Forked 23965 +(23965) found +[14513] Forked 23966 +(23966) found +[14512] Forked 23967 +(23967) found +[14511] Forked 23968 +(23968) found +[14510] Forked 23969 +(23969) found +[14509] Forked 23970 +(23970) found +[14508] Forked 23971 +(23971) found +[14507] Forked 23972 +(23972) found +[14506] Forked 23973 +(23973) found +[14505] Forked 23974 +(23974) found +[14504] Forked 23975 +(23975) found +[14503] Forked 23976 +(23976) found +[14502] Forked 23977 +(23977) found +[14501] Forked 23978 +(23978) found +[14500] Forked 23979 +(23979) found +[14499] Forked 23980 +(23980) found +[14498] Forked 23981 +(23981) found +[14497] Forked 23982 +(23982) found +[14496] Forked 23983 +[14495] Forked 23984 +(23983) found +(23984) found +[14494] Forked 23985 +[14493] Forked 23986 +(23985) found +(23986) found +[14492] Forked 23987 +[14491] Forked 23988 +(23987) found +(23988) found +[14490] Forked 23989 +[14489] Forked 23990 +(23989) found +(23990) found +[14488] Forked 23991 +[14487] Forked 23992 +(23991) found +(23992) found +[14486] Forked 23993 +[14485] Forked 23994 +(23993) found +(23994) found +[14484] Forked 23995 +[14483] Forked 23996 +(23995) found +(23996) found +[14482] Forked 23997 +[14481] Forked 23998 +(23997) found +(23998) found +[14480] Forked 23999 +[14479] Forked 24000 +(23999) found +(24000) found +[14478] Forked 24001 +[14477] Forked 24002 +(24001) found +(24002) found +[14476] Forked 24003 +[14475] Forked 24004 +(24003) found +(24004) found +[14474] Forked 24005 +[14473] Forked 24006 +(24005) found +(24006) found +[14472] Forked 24007 +[14471] Forked 24008 +(24007) found +(24008) found +[14470] Forked 24009 +[14469] Forked 24010 +(24009) found +(24010) found +[14468] Forked 24011 +[14467] Forked 24012 +(24011) found +(24012) found +[14466] Forked 24013 +[14465] Forked 24014 +(24013) found +(24014) found +[14464] Forked 24015 +[14463] Forked 24016 +(24015) found +(24016) found +[14462] Forked 24017 +[14461] Forked 24018 +(24017) found +(24018) found +[14460] Forked 24019 +[14459] Forked 24020 +(24019) found +(24020) found +[14458] Forked 24021 +[14457] Forked 24022 +(24021) found +(24022) found +[14456] Forked 24023 +[14455] Forked 24025 +(24023) found +(24025) found +[14454] Forked 24026 +(24026) found +[14453] Forked 24027 +(24027) found +[14452] Forked 24028 +(24028) found +[14451] Forked 24029 +(24029) found +[14450] Forked 24030 +(24030) found +[14449] Forked 24031 +(24031) found +[14448] Forked 24032 +(24032) found +[14447] Forked 24033 +(24033) found +[14446] Forked 24034 +(24034) found +[14445] Forked 24035 +(24035) found +[14444] Forked 24036 +(24036) found +[14443] Forked 24037 +(24037) found +[14442] Forked 24038 +(24038) found +[14441] Forked 24039 +(24039) found +[14440] Forked 24040 +(24040) found +[14439] Forked 24041 +(24041) found +[14438] Forked 24042 +(24042) found +[14437] Forked 24043 +(24043) found +[14436] Forked 24044 +(24044) found +[14435] Forked 24045 +(24045) found +[14434] Forked 24046 +(24046) found +[14433] Forked 24047 +(24047) found +[14432] Forked 24048 +(24048) found +[14431] Forked 24049 +(24049) found +[14430] Forked 24050 +(24050) found +[14429] Forked 24051 +(24051) found +[14428] Forked 24052 +(24052) found +[14427] Forked 24053 +(24053) found +[14426] Forked 24054 +(24054) found +[14425] Forked 24055 +(24055) found +[14424] Forked 24056 +(24056) found +[14423] Forked 24057 +(24057) found +[14422] Forked 24058 +(24058) found +[14421] Forked 24059 +(24059) found +[14420] Forked 24060 +(24060) found +[14419] Forked 24061 +(24061) found +[14418] Forked 24062 +(24062) found +[14417] Forked 24063 +(24063) found +[14416] Forked 24064 +(24064) found +[14415] Forked 24065 +(24065) found +[14414] Forked 24066 +(24066) found +[14413] Forked 24067 +(24067) found +[14412] Forked 24068 +(24068) found +[14411] Forked 24069 +(24069) found +[14410] Forked 24070 +(24070) found +[14409] Forked 24071 +(24071) found +[14408] Forked 24072 +(24072) found +[14407] Forked 24073 +(24073) found +[14406] Forked 24074 +(24074) found +[14405] Forked 24075 +(24075) found +[14404] Forked 24076 +(24076) found +[14403] Forked 24077 +(24077) found +[14402] Forked 24078 +(24078) found +[14401] Forked 24079 +(24079) found +[14400] Forked 24080 +(24080) found +[14399] Forked 24081 +(24081) found +[14398] Forked 24082 +(24082) found +[14397] Forked 24083 +(24083) found +[14396] Forked 24084 +(24084) found +[14395] Forked 24085 +(24085) found +[14394] Forked 24086 +(24086) found +[14393] Forked 24087 +(24087) found +[14392] Forked 24088 +(24088) found +[14391] Forked 24089 +(24089) found +[14390] Forked 24090 +(24090) found +[14389] Forked 24091 +(24091) found +[14388] Forked 24092 +(24092) found +[14387] Forked 24093 +(24093) found +[14386] Forked 24094 +(24094) found +[14385] Forked 24095 +(24095) found +[14384] Forked 24096 +(24096) found +[14383] Forked 24097 +(24097) found +[14382] Forked 24098 +(24098) found +[14381] Forked 24099 +(24099) found +[14380] Forked 24100 +(24100) found +[14379] Forked 24101 +(24101) found +[14378] Forked 24102 +(24102) found +[14377] Forked 24103 +(24103) found +[14376] Forked 24104 +(24104) found +[14375] Forked 24105 +(24105) found +[14374] Forked 24106 +(24106) found +[14373] Forked 24107 +(24107) found +[14372] Forked 24108 +(24108) found +[14371] Forked 24109 +(24109) found +[14370] Forked 24110 +(24110) found +[14369] Forked 24111 +(24111) found +[14368] Forked 24112 +(24112) found +[14367] Forked 24113 +(24113) found +[14366] Forked 24114 +(24114) found +[14365] Forked 24115 +(24115) found +[14364] Forked 24116 +(24116) found +[14363] Forked 24117 +(24117) found +[14362] Forked 24118 +(24118) found +[14361] Forked 24119 +(24119) found +[14360] Forked 24120 +(24120) found +[14359] Forked 24121 +(24121) found +[14358] Forked 24122 +(24122) found +[14357] Forked 24123 +(24123) found +[14356] Forked 24124 +(24124) found +[14355] Forked 24125 +(24125) found +[14354] Forked 24126 +(24126) found +[14353] Forked 24127 +(24127) found +[14352] Forked 24128 +(24128) found +[14351] Forked 24129 +(24129) found +[14350] Forked 24130 +(24130) found +[14349] Forked 24131 +(24131) found +[14348] Forked 24132 +(24132) found +[14347] Forked 24133 +(24133) found +[14346] Forked 24134 +(24134) found +[14345] Forked 24135 +(24135) found +[14344] Forked 24136 +(24136) found +[14343] Forked 24137 +(24137) found +[14342] Forked 24138 +(24138) found +[14341] Forked 24139 +(24139) found +[14340] Forked 24140 +(24140) found +[14339] Forked 24141 +(24141) found +[14338] Forked 24142 +(24142) found +[14337] Forked 24143 +(24143) found +[14336] Forked 24144 +(24144) found +[14335] Forked 24145 +(24145) found +[14334] Forked 24146 +(24146) found +[14333] Forked 24147 +(24147) found +[14332] Forked 24148 +(24148) found +[14331] Forked 24149 +(24149) found +[14330] Forked 24150 +(24150) found +[14329] Forked 24151 +(24151) found +[14328] Forked 24152 +(24152) found +[14327] Forked 24153 +(24153) found +[14326] Forked 24154 +(24154) found +[14325] Forked 24155 +(24155) found +[14324] Forked 24156 +(24156) found +[14323] Forked 24157 +(24157) found +[14322] Forked 24158 +(24158) found +[14321] Forked 24159 +(24159) found +[14320] Forked 24160 +(24160) found +[14319] Forked 24161 +(24161) found +[14318] Forked 24162 +(24162) found +[14317] Forked 24163 +(24163) found +[14316] Forked 24164 +(24164) found +[14315] Forked 24165 +(24165) found +[14314] Forked 24166 +(24166) found +[14313] Forked 24167 +(24167) found +[14312] Forked 24168 +(24168) found +[14311] Forked 24169 +(24169) found +[14310] Forked 24170 +(24170) found +[14309] Forked 24171 +(24171) found +[14308] Forked 24172 +(24172) found +[14307] Forked 24173 +(24173) found +[14306] Forked 24174 +(24174) found +[14305] Forked 24175 +(24175) found +[14304] Forked 24176 +(24176) found +[14303] Forked 24177 +[14302] Forked 24178 +(24177) found +(24178) found +[14301] Forked 24179 +[14300] Forked 24180 +(24179) found +(24180) found +[14299] Forked 24181 +[14298] Forked 24182 +(24181) found +(24182) found +[14297] Forked 24183 +[14296] Forked 24184 +(24183) found +(24184) found +[14295] Forked 24185 +[14294] Forked 24186 +(24185) found +(24186) found +[14293] Forked 24187 +[14292] Forked 24188 +(24187) found +(24188) found +[14291] Forked 24189 +[14290] Forked 24190 +(24189) found +(24190) found +[14289] Forked 24191 +[14288] Forked 24192 +(24191) found +(24192) found +[14287] Forked 24193 +[14286] Forked 24194 +(24193) found +(24194) found +[14285] Forked 24195 +[14284] Forked 24196 +(24195) found +(24196) found +[14283] Forked 24197 +[14282] Forked 24198 +(24197) found +(24198) found +[14281] Forked 24199 +[14280] Forked 24200 +(24199) found +(24200) found +[14279] Forked 24201 +[14278] Forked 24202 +(24201) found +(24202) found +[14277] Forked 24203 +[14276] Forked 24204 +(24203) found +(24204) found +[14275] Forked 24205 +[14274] Forked 24206 +(24205) found +(24206) found +[14273] Forked 24207 +[14272] Forked 24208 +(24207) found +(24208) found +[14271] Forked 24209 +[14270] Forked 24210 +(24209) found +(24210) found +[14269] Forked 24211 +[14268] Forked 24212 +(24211) found +(24212) found +[14267] Forked 24213 +[14266] Forked 24214 +(24213) found +(24214) found +[14265] Forked 24215 +[14264] Forked 24216 +(24215) found +(24216) found +[14263] Forked 24217 +[14262] Forked 24218 +(24217) found +(24218) found +[14261] Forked 24219 +[14260] Forked 24220 +(24219) found +(24220) found +[14259] Forked 24221 +[14258] Forked 24222 +(24221) found +(24222) found +[14257] Forked 24223 +[14256] Forked 24224 +(24223) found +(24224) found +[14255] Forked 24225 +[14254] Forked 24226 +(24225) found +(24226) found +[14253] Forked 24227 +[14252] Forked 24228 +(24227) found +(24228) found +[14251] Forked 24229 +[14250] Forked 24230 +(24229) found +(24230) found +[14249] Forked 24231 +[14248] Forked 24232 +(24231) found +(24232) found +[14247] Forked 24233 +[14246] Forked 24234 +(24233) found +(24234) found +[14245] Forked 24235 +[14244] Forked 24236 +(24235) found +(24236) found +[14243] Forked 24237 +[14242] Forked 24238 +(24237) found +(24238) found +[14241] Forked 24239 +[14240] Forked 24240 +(24239) found +(24240) found +[14239] Forked 24241 +[14238] Forked 24242 +(24241) found +(24242) found +[14237] Forked 24243 +[14236] Forked 24244 +(24243) found +(24244) found +[14235] Forked 24245 +[14234] Forked 24246 +(24245) found +(24246) found +[14233] Forked 24247 +[14232] Forked 24248 +(24247) found +(24248) found +[14231] Forked 24249 +[14230] Forked 24250 +(24249) found +(24250) found +[14229] Forked 24251 +[14228] Forked 24252 +(24251) found +(24252) found +[14227] Forked 24253 +[14226] Forked 24254 +(24253) found +(24254) found +[14225] Forked 24255 +[14224] Forked 24256 +(24255) found +(24256) found +[14223] Forked 24257 +(24257) found +[14222] Forked 24258 +(24258) found +[14221] Forked 24259 +(24259) found +[14220] Forked 24260 +(24260) found +[14219] Forked 24261 +(24261) found +[14218] Forked 24262 +(24262) found +[14217] Forked 24263 +(24263) found +[14216] Forked 24264 +(24264) found +[14215] Forked 24265 +(24265) found +[14214] Forked 24266 +(24266) found +[14213] Forked 24267 +(24267) found +[14212] Forked 24268 +(24268) found +[14211] Forked 24269 +(24269) found +[14210] Forked 24270 +(24270) found +[14209] Forked 24271 +(24271) found +[14208] Forked 24272 +(24272) found +[14207] Forked 24273 +(24273) found +[14206] Forked 24274 +(24274) found +[14205] Forked 24275 +(24275) found +[14204] Forked 24276 +(24276) found +[14203] Forked 24277 +(24277) found +[14202] Forked 24278 +(24278) found +[14201] Forked 24279 +(24279) found +[14200] Forked 24280 +(24280) found +[14199] Forked 24281 +(24281) found +[14198] Forked 24282 +(24282) found +[14197] Forked 24283 +(24283) found +[14196] Forked 24284 +(24284) found +[14195] Forked 24285 +(24285) found +[14194] Forked 24286 +(24286) found +[14193] Forked 24287 +(24287) found +[14192] Forked 24288 +[14191] Forked 24289 +(24288) found +(24289) found +[14190] Forked 24290 +[14189] Forked 24291 +(24290) found +(24291) found +[14188] Forked 24292 +[14187] Forked 24294 +(24292) found +(24294) found +[14186] Forked 24295 +(24295) found +[14185] Forked 24296 +(24296) found +[14184] Forked 24297 +(24297) found +[14183] Forked 24298 +(24298) found +[14182] Forked 24299 +(24299) found +[14181] Forked 24300 +(24300) found +[14180] Forked 24301 +(24301) found +[14179] Forked 24302 +(24302) found +[14178] Forked 24303 +(24303) found +[14177] Forked 24304 +(24304) found +[14176] Forked 24305 +(24305) found +[14175] Forked 24306 +(24306) found +[14174] Forked 24307 +(24307) found +[14173] Forked 24308 +(24308) found +[14172] Forked 24309 +(24309) found +[14171] Forked 24310 +(24310) found +[14170] Forked 24311 +(24311) found +[14169] Forked 24312 +(24312) found +[14168] Forked 24313 +(24313) found +[14167] Forked 24314 +(24314) found +[14166] Forked 24315 +(24315) found +[14165] Forked 24316 +(24316) found +[14164] Forked 24317 +(24317) found +[14163] Forked 24319 +(24319) found +[14162] Forked 24320 +(24320) found +[14161] Forked 24321 +(24321) found +[14160] Forked 24322 +(24322) found +[14159] Forked 24323 +(24323) found +[14158] Forked 24324 +(24324) found +[14157] Forked 24325 +(24325) found +[14156] Forked 24326 +(24326) found +[14155] Forked 24327 +(24327) found +[14154] Forked 24328 +(24328) found +[14153] Forked 24329 +(24329) found +[14152] Forked 24330 +(24330) found +[14151] Forked 24331 +(24331) found +[14150] Forked 24332 +(24332) found +[14149] Forked 24333 +(24333) found +[14148] Forked 24334 +(24334) found +[14147] Forked 24335 +(24335) found +[14146] Forked 24336 +(24336) found +[14145] Forked 24337 +(24337) found +[14144] Forked 24338 +(24338) found +[14143] Forked 24339 +(24339) found +[14142] Forked 24340 +(24340) found +[14141] Forked 24341 +(24341) found +[14140] Forked 24342 +(24342) found +[14139] Forked 24343 +(24343) found +[14138] Forked 24344 +(24344) found +[14137] Forked 24345 +(24345) found +[14136] Forked 24346 +(24346) found +[14135] Forked 24347 +(24347) found +[14134] Forked 24348 +(24348) found +[14133] Forked 24349 +(24349) found +[14132] Forked 24350 +(24350) found +[14131] Forked 24351 +(24351) found +[14130] Forked 24352 +(24352) found +[14129] Forked 24353 +(24353) found +[14128] Forked 24354 +(24354) found +[14127] Forked 24355 +(24355) found +[14126] Forked 24356 +(24356) found +[14125] Forked 24357 +(24357) found +[14124] Forked 24358 +(24358) found +[14123] Forked 24359 +(24359) found +[14122] Forked 24360 +(24360) found +[14121] Forked 24361 +[14120] Forked 24362 +(24361) found +(24362) found +[14119] Forked 24363 +[14118] Forked 24364 +(24363) found +(24364) found +[14117] Forked 24365 +[14116] Forked 24366 +(24365) found +(24366) found +[14115] Forked 24367 +[14114] Forked 24368 +(24367) found +(24368) found +[14113] Forked 24369 +[14112] Forked 24370 +(24369) found +(24370) found +[14111] Forked 24371 +[14110] Forked 24372 +(24371) found +(24372) found +[14109] Forked 24373 +[14108] Forked 24374 +(24373) found +(24374) found +[14107] Forked 24375 +[14106] Forked 24376 +(24375) found +(24376) found +[14105] Forked 24377 +[14104] Forked 24378 +(24377) found +(24378) found +[14103] Forked 24379 +[14102] Forked 24380 +(24379) found +(24380) found +[14101] Forked 24381 +[14100] Forked 24382 +(24381) found +(24382) found +[14099] Forked 24383 +[14098] Forked 24384 +(24383) found +(24384) found +[14097] Forked 24385 +[14096] Forked 24386 +(24385) found +(24386) found +[14095] Forked 24387 +[14094] Forked 24388 +(24387) found +(24388) found +[14093] Forked 24389 +[14092] Forked 24390 +(24389) found +(24390) found +[14091] Forked 24391 +[14090] Forked 24392 +(24391) found +(24392) found +[14089] Forked 24393 +[14088] Forked 24394 +(24393) found +(24394) found +[14087] Forked 24395 +[14086] Forked 24396 +(24395) found +(24396) found +[14085] Forked 24397 +[14084] Forked 24398 +(24397) found +(24398) found +[14083] Forked 24399 +[14082] Forked 24400 +(24399) found +(24400) found +[14081] Forked 24401 +[14080] Forked 24402 +(24401) found +(24402) found +[14079] Forked 24403 +[14078] Forked 24404 +(24403) found +(24404) found +[14077] Forked 24405 +[14076] Forked 24406 +(24406) found +(24405) found +[14075] Forked 24407 +(24407) found +[14074] Forked 24408 +(24408) found +[14073] Forked 24409 +(24409) found +[14072] Forked 24410 +(24410) found +[14071] Forked 24411 +(24411) found +[14070] Forked 24412 +(24412) found +[14069] Forked 24413 +(24413) found +[14068] Forked 24414 +(24414) found +[14067] Forked 24415 +(24415) found +[14066] Forked 24416 +(24416) found +[14065] Forked 24417 +(24417) found +[14064] Forked 24418 +(24418) found +[14063] Forked 24419 +(24419) found +[14062] Forked 24420 +(24420) found +[14061] Forked 24421 +(24421) found +[14060] Forked 24422 +(24422) found +[14059] Forked 24423 +(24423) found +[14058] Forked 24424 +(24424) found +[14057] Forked 24425 +(24425) found +[14056] Forked 24426 +(24426) found +[14055] Forked 24427 +(24427) found +[14054] Forked 24428 +(24428) found +[14053] Forked 24429 +(24429) found +[14052] Forked 24430 +(24430) found +[14051] Forked 24431 +(24431) found +[14050] Forked 24432 +(24432) found +[14049] Forked 24433 +(24433) found +[14048] Forked 24434 +(24434) found +[14047] Forked 24435 +(24435) found +[14046] Forked 24436 +(24436) found +[14045] Forked 24437 +(24437) found +[14044] Forked 24438 +(24438) found +[14043] Forked 24439 +(24439) found +[14042] Forked 24440 +(24440) found +[14041] Forked 24441 +(24441) found +[14040] Forked 24442 +[14039] Forked 24443 +(24442) found +(24443) found +[14038] Forked 24444 +[14037] Forked 24445 +(24444) found +(24445) found +[14036] Forked 24446 +[14035] Forked 24447 +(24446) found +(24447) found +[14034] Forked 24448 +[14033] Forked 24449 +(24448) found +(24449) found +[14032] Forked 24450 +[14031] Forked 24451 +(24450) found +(24451) found +[14030] Forked 24452 +[14029] Forked 24453 +(24452) found +(24453) found +[14028] Forked 24454 +[14027] Forked 24455 +(24454) found +(24455) found +[14026] Forked 24456 +[14025] Forked 24457 +(24456) found +(24457) found +[14024] Forked 24458 +[14023] Forked 24459 +(24458) found +(24459) found +[14022] Forked 24460 +[14021] Forked 24461 +(24460) found +(24461) found +[14020] Forked 24462 +[14019] Forked 24463 +(24462) found +(24463) found +[14018] Forked 24464 +[14017] Forked 24465 +(24464) found +(24465) found +[14016] Forked 24466 +[14015] Forked 24467 +(24466) found +(24467) found +[14014] Forked 24468 +[14013] Forked 24469 +(24468) found +(24469) found +[14012] Forked 24470 +[14011] Forked 24473 +(24470) found +(24473) found +[14010] Forked 24474 +[14009] Forked 24475 +(24474) found +(24475) found +[14008] Forked 24476 +[14007] Forked 24477 +(24476) found +(24477) found +[14006] Forked 24478 +[14005] Forked 24479 +(24478) found +(24479) found +[14004] Forked 24480 +[14003] Forked 24481 +(24480) found +(24481) found +[14002] Forked 24482 +[14001] Forked 24483 +(24482) found +(24483) found +[14000] Forked 24484 +[13999] Forked 24485 +(24484) found +(24485) found +[13998] Forked 24486 +[13997] Forked 24487 +(24486) found +(24487) found +[13996] Forked 24488 +[13995] Forked 24489 +(24488) found +(24489) found +[13994] Forked 24490 +[13993] Forked 24491 +(24490) found +(24491) found +[13992] Forked 24492 +[13991] Forked 24493 +(24492) found +(24493) found +[13990] Forked 24494 +[13989] Forked 24495 +(24494) found +(24495) found +[13988] Forked 24496 +[13987] Forked 24497 +(24496) found +(24497) found +[13986] Forked 24498 +[13985] Forked 24499 +(24498) found +(24499) found +[13984] Forked 24500 +[13983] Forked 24501 +(24500) found +(24501) found +[13982] Forked 24502 +[13981] Forked 24503 +(24502) found +(24503) found +[13980] Forked 24504 +[13979] Forked 24505 +(24504) found +(24505) found +[13978] Forked 24506 +[13977] Forked 24507 +(24506) found +(24507) found +[13976] Forked 24508 +[13975] Forked 24509 +(24508) found +(24509) found +[13974] Forked 24510 +[13973] Forked 24511 +(24510) found +(24511) found +[13972] Forked 24512 +[13971] Forked 24513 +(24512) found +(24513) found +[13970] Forked 24514 +[13969] Forked 24515 +(24514) found +(24515) found +[13968] Forked 24516 +[13967] Forked 24517 +(24516) found +(24517) found +[13966] Forked 24518 +[13965] Forked 24519 +(24518) found +(24519) found +[13964] Forked 24520 +[13963] Forked 24521 +(24520) found +(24521) found +[13962] Forked 24522 +(24522) found +[13961] Forked 24523 +[13960] Forked 24524 +(24523) found +(24524) found +[13959] Forked 24525 +[13958] Forked 24526 +(24525) found +(24526) found +[13957] Forked 24527 +[13956] Forked 24528 +(24527) found +(24528) found +[13955] Forked 24529 +[13954] Forked 24530 +(24529) found +(24530) found +[13953] Forked 24531 +[13952] Forked 24532 +(24531) found +(24532) found +[13951] Forked 24533 +[13950] Forked 24534 +(24533) found +(24534) found +[13949] Forked 24535 +[13948] Forked 24536 +(24535) found +(24536) found +[13947] Forked 24537 +[13946] Forked 24538 +(24537) found +(24538) found +[13945] Forked 24539 +[13944] Forked 24540 +(24539) found +(24540) found +[13943] Forked 24541 +[13942] Forked 24542 +(24541) found +(24542) found +[13941] Forked 24543 +[13940] Forked 24544 +(24543) found +(24544) found +[13939] Forked 24545 +[13938] Forked 24546 +(24545) found +(24546) found +[13937] Forked 24547 +[13936] Forked 24548 +(24547) found +(24548) found +[13935] Forked 24549 +[13934] Forked 24550 +(24549) found +(24550) found +[13933] Forked 24551 +[13932] Forked 24552 +(24551) found +(24552) found +[13931] Forked 24553 +[13930] Forked 24554 +(24553) found +(24554) found +[13929] Forked 24555 +[13928] Forked 24556 +(24555) found +(24556) found +[13927] Forked 24557 +[13926] Forked 24558 +(24557) found +(24558) found +[13925] Forked 24559 +[13924] Forked 24560 +(24559) found +(24560) found +[13923] Forked 24561 +[13922] Forked 24562 +(24561) found +(24562) found +[13921] Forked 24563 +[13920] Forked 24564 +(24563) found +(24564) found +[13919] Forked 24565 +[13918] Forked 24566 +(24565) found +(24566) found +[13917] Forked 24567 +[13916] Forked 24568 +(24567) found +(24568) found +[13915] Forked 24569 +[13914] Forked 24570 +(24569) found +(24570) found +[13913] Forked 24571 +[13912] Forked 24572 +(24571) found +(24572) found +[13911] Forked 24573 +[13910] Forked 24574 +(24573) found +(24574) found +[13909] Forked 24575 +[13908] Forked 24576 +(24575) found +(24576) found +[13907] Forked 24577 +[13906] Forked 24578 +(24577) found +(24578) found +[13905] Forked 24579 +[13904] Forked 24580 +(24579) found +(24580) found +[13903] Forked 24581 +[13902] Forked 24582 +(24581) found +(24582) found +[13901] Forked 24583 +[13900] Forked 24585 +(24583) found +(24585) found +[13899] Forked 24586 +(24586) found +[13898] Forked 24587 +(24587) found +[13897] Forked 24588 +(24588) found +[13896] Forked 24589 +(24589) found +[13895] Forked 24590 +(24590) found +[13894] Forked 24591 +(24591) found +[13893] Forked 24592 +(24592) found +[13892] Forked 24593 +(24593) found +[13891] Forked 24594 +(24594) found +[13890] Forked 24595 +(24595) found +[13889] Forked 24596 +(24596) found +[13888] Forked 24597 +(24597) found +[13887] Forked 24598 +(24598) found +[13886] Forked 24599 +(24599) found +[13885] Forked 24600 +(24600) found +[13884] Forked 24601 +(24601) found +[13883] Forked 24602 +(24602) found +[13882] Forked 24603 +(24603) found +[13881] Forked 24604 +(24604) found +[13880] Forked 24605 +(24605) found +[13879] Forked 24606 +(24606) found +[13878] Forked 24607 +(24607) found +[13877] Forked 24608 +(24608) found +[13876] Forked 24609 +(24609) found +[13875] Forked 24610 +(24610) found +[13874] Forked 24611 +(24611) found +[13873] Forked 24612 +(24612) found +[13872] Forked 24613 +(24613) found +[13871] Forked 24614 +(24614) found +[13870] Forked 24615 +(24615) found +[13869] Forked 24616 +(24616) found +[13868] Forked 24617 +(24617) found +[13867] Forked 24618 +(24618) found +[13866] Forked 24619 +(24619) found +[13865] Forked 24620 +(24620) found +[13864] Forked 24621 +(24621) found +[13863] Forked 24622 +(24622) found +[13862] Forked 24623 +(24623) found +[13861] Forked 24624 +(24624) found +[13860] Forked 24625 +(24625) found +[13859] Forked 24626 +(24626) found +[13858] Forked 24627 +(24627) found +[13857] Forked 24628 +(24628) found +[13856] Forked 24629 +(24629) found +[13855] Forked 24630 +(24630) found +[13854] Forked 24631 +(24631) found +[13853] Forked 24632 +(24632) found +[13852] Forked 24633 +(24633) found +[13851] Forked 24634 +(24634) found +[13850] Forked 24635 +(24635) found +[13849] Forked 24636 +(24636) found +[13848] Forked 24637 +(24637) found +[13847] Forked 24638 +(24638) found +[13846] Forked 24639 +(24639) found +[13845] Forked 24640 +(24640) found +[13844] Forked 24641 +(24641) found +[13843] Forked 24642 +(24642) found +[13842] Forked 24643 +(24643) found +[13841] Forked 24644 +(24644) found +[13840] Forked 24645 +(24645) found +[13839] Forked 24646 +(24646) found +[13838] Forked 24647 +(24647) found +[13837] Forked 24648 +(24648) found +[13836] Forked 24649 +(24649) found +[13835] Forked 24650 +(24650) found +[13834] Forked 24651 +(24651) found +[13833] Forked 24652 +(24652) found +[13832] Forked 24653 +(24653) found +[13831] Forked 24654 +(24654) found +[13830] Forked 24655 +(24655) found +[13829] Forked 24656 +(24656) found +[13828] Forked 24657 +(24657) found +[13827] Forked 24658 +(24658) found +[13826] Forked 24659 +(24659) found +[13825] Forked 24660 +(24660) found +[13824] Forked 24661 +(24661) found +[13823] Forked 24662 +(24662) found +[13822] Forked 24663 +(24663) found +[13821] Forked 24664 +(24664) found +[13820] Forked 24665 +(24665) found +[13819] Forked 24666 +(24666) found +[13818] Forked 24667 +(24667) found +[13817] Forked 24668 +(24668) found +[13816] Forked 24669 +(24669) found +[13815] Forked 24670 +(24670) found +[13814] Forked 24671 +(24671) found +[13813] Forked 24672 +(24672) found +[13812] Forked 24673 +(24673) found +[13811] Forked 24674 +(24674) found +[13810] Forked 24675 +(24675) found +[13809] Forked 24676 +(24676) found +[13808] Forked 24677 +(24677) found +[13807] Forked 24678 +(24678) found +[13806] Forked 24679 +(24679) found +[13805] Forked 24680 +(24680) found +[13804] Forked 24681 +(24681) found +[13803] Forked 24682 +(24682) found +[13802] Forked 24683 +(24683) found +[13801] Forked 24684 +(24684) found +[13800] Forked 24685 +(24685) found +[13799] Forked 24686 +(24686) found +[13798] Forked 24687 +(24687) found +[13797] Forked 24688 +[13796] Forked 24690 +(24688) found +(24690) found +[13795] Forked 24691 +(24691) found +[13794] Forked 24692 +(24692) found +[13793] Forked 24693 +(24693) found +[13792] Forked 24694 +[13791] Forked 24695 +(24694) found +(24695) found +[13790] Forked 24696 +[13789] Forked 24697 +(24696) found +(24697) found +[13788] Forked 24698 +[13787] Forked 24699 +(24698) found +(24699) found +[13786] Forked 24700 +[13785] Forked 24701 +(24700) found +(24701) found +[13784] Forked 24702 +[13783] Forked 24703 +(24702) found +(24703) found +[13782] Forked 24704 +[13781] Forked 24705 +(24704) found +(24705) found +[13780] Forked 24706 +[13779] Forked 24707 +(24706) found +(24707) found +[13778] Forked 24708 +[13777] Forked 24709 +(24708) found +(24709) found +[13776] Forked 24710 +[13775] Forked 24711 +(24710) found +(24711) found +[13774] Forked 24712 +[13773] Forked 24713 +(24712) found +(24713) found +[13772] Forked 24714 +[13771] Forked 24715 +(24714) found +(24715) found +[13770] Forked 24716 +[13769] Forked 24717 +(24716) found +(24717) found +[13768] Forked 24718 +[13767] Forked 24719 +(24718) found +(24719) found +[13766] Forked 24720 +[13765] Forked 24721 +(24720) found +(24721) found +[13764] Forked 24722 +[13763] Forked 24723 +(24722) found +(24723) found +[13762] Forked 24724 +[13761] Forked 24725 +(24724) found +(24725) found +[13760] Forked 24726 +[13759] Forked 24727 +(24726) found +(24727) found +[13758] Forked 24728 +[13757] Forked 24729 +(24728) found +(24729) found +[13756] Forked 24730 +[13755] Forked 24731 +(24730) found +(24731) found +[13754] Forked 24732 +[13753] Forked 24733 +(24732) found +(24733) found +[13752] Forked 24734 +(24734) found +[13751] Forked 24735 +(24735) found +[13750] Forked 24736 +(24736) found +[13749] Forked 24737 +(24737) found +[13748] Forked 24738 +(24738) found +[13747] Forked 24739 +(24739) found +[13746] Forked 24740 +(24740) found +[13745] Forked 24741 +(24741) found +[13744] Forked 24742 +(24742) found +[13743] Forked 24743 +(24743) found +[13742] Forked 24744 +(24744) found +[13741] Forked 24745 +(24745) found +[13740] Forked 24746 +(24746) found +[13739] Forked 24747 +(24747) found +[13738] Forked 24748 +(24748) found +[13737] Forked 24749 +(24749) found +[13736] Forked 24750 +(24750) found +[13735] Forked 24751 +(24751) found +[13734] Forked 24752 +(24752) found +[13733] Forked 24753 +(24753) found +[13732] Forked 24754 +(24754) found +[13731] Forked 24755 +(24755) found +[13730] Forked 24756 +(24756) found +[13729] Forked 24757 +(24757) found +[13728] Forked 24758 +(24758) found +[13727] Forked 24759 +(24759) found +[13726] Forked 24760 +(24760) found +[13725] Forked 24761 +(24761) found +[13724] Forked 24762 +(24762) found +[13723] Forked 24763 +(24763) found +[13722] Forked 24764 +(24764) found +[13721] Forked 24765 +(24765) found +[13720] Forked 24766 +(24766) found +[13719] Forked 24767 +(24767) found +[13718] Forked 24768 +(24768) found +[13717] Forked 24769 +(24769) found +[13716] Forked 24770 +[13715] Forked 24771 +(24770) found +(24771) found +[13714] Forked 24772 +[13713] Forked 24773 +(24772) found +(24773) found +[13712] Forked 24774 +[13711] Forked 24776 +(24774) found +(24776) found +[13710] Forked 24777 +(24777) found +[13709] Forked 24778 +(24778) found +[13708] Forked 24779 +(24779) found +[13707] Forked 24780 +(24780) found +[13706] Forked 24781 +(24781) found +[13705] Forked 24782 +(24782) found +[13704] Forked 24783 +(24783) found +[13703] Forked 24784 +(24784) found +[13702] Forked 24785 +(24785) found +[13701] Forked 24786 +(24786) found +[13700] Forked 24787 +(24787) found +[13699] Forked 24788 +(24788) found +[13698] Forked 24789 +(24789) found +[13697] Forked 24790 +(24790) found +[13696] Forked 24791 +(24791) found +[13695] Forked 24792 +(24792) found +[13694] Forked 24793 +(24793) found +[13693] Forked 24794 +(24794) found +[13692] Forked 24795 +(24795) found +[13691] Forked 24796 +(24796) found +[13690] Forked 24797 +(24797) found +[13689] Forked 24798 +(24798) found +[13688] Forked 24799 +(24799) found +[13687] Forked 24800 +(24800) found +[13686] Forked 24801 +(24801) found +[13685] Forked 24802 +(24802) found +[13684] Forked 24803 +(24803) found +[13683] Forked 24804 +(24804) found +[13682] Forked 24805 +(24805) found +[13681] Forked 24806 +(24806) found +[13680] Forked 24807 +(24807) found +[13679] Forked 24808 +(24808) found +[13678] Forked 24809 +(24809) found +[13677] Forked 24810 +(24810) found +[13676] Forked 24811 +(24811) found +[13675] Forked 24812 +(24812) found +[13674] Forked 24813 +(24813) found +[13673] Forked 24814 +(24814) found +[13672] Forked 24815 +(24815) found +[13671] Forked 24816 +(24816) found +[13670] Forked 24817 +(24817) found +[13669] Forked 24818 +(24818) found +[13668] Forked 24819 +(24819) found +[13667] Forked 24820 +(24820) found +[13666] Forked 24821 +(24821) found +[13665] Forked 24822 +(24822) found +[13664] Forked 24823 +(24823) found +[13663] Forked 24824 +(24824) found +[13662] Forked 24825 +(24825) found +[13661] Forked 24826 +(24826) found +[13660] Forked 24827 +(24827) found +[13659] Forked 24828 +(24828) found +[13658] Forked 24829 +(24829) found +[13657] Forked 24830 +(24830) found +[13656] Forked 24831 +(24831) found +[13655] Forked 24832 +(24832) found +[13654] Forked 24833 +(24833) found +[13653] Forked 24834 +(24834) found +[13652] Forked 24835 +(24835) found +[13651] Forked 24836 +(24836) found +[13650] Forked 24837 +(24837) found +[13649] Forked 24838 +(24838) found +[13648] Forked 24839 +(24839) found +[13647] Forked 24840 +(24840) found +[13646] Forked 24841 +(24841) found +[13645] Forked 24842 +(24842) found +[13644] Forked 24843 +(24843) found +[13643] Forked 24844 +(24844) found +[13642] Forked 24845 +(24845) found +[13641] Forked 24846 +(24846) found +[13640] Forked 24847 +(24847) found +[13639] Forked 24848 +(24848) found +[13638] Forked 24849 +(24849) found +[13637] Forked 24850 +(24850) found +[13636] Forked 24851 +(24851) found +[13635] Forked 24852 +(24852) found +[13634] Forked 24853 +(24853) found +[13633] Forked 24854 +(24854) found +[13632] Forked 24855 +(24855) found +[13631] Forked 24856 +(24856) found +[13630] Forked 24857 +(24857) found +[13629] Forked 24858 +(24858) found +[13628] Forked 24859 +(24859) found +[13627] Forked 24860 +(24860) found +[13626] Forked 24861 +(24861) found +[13625] Forked 24862 +(24862) found +[13624] Forked 24863 +(24863) found +[13623] Forked 24864 +(24864) found +[13622] Forked 24865 +(24865) found +[13621] Forked 24866 +(24866) found +[13620] Forked 24867 +(24867) found +[13619] Forked 24868 +(24868) found +[13618] Forked 24869 +(24869) found +[13617] Forked 24870 +(24870) found +[13616] Forked 24871 +(24871) found +[13615] Forked 24872 +(24872) found +[13614] Forked 24873 +(24873) found +[13613] Forked 24874 +(24874) found +[13612] Forked 24875 +(24875) found +[13611] Forked 24876 +(24876) found +[13610] Forked 24877 +(24877) found +[13609] Forked 24878 +(24878) found +[13608] Forked 24879 +[13607] Forked 24880 +(24879) found +(24880) found +[13606] Forked 24881 +[13605] Forked 24882 +(24881) found +(24882) found +[13604] Forked 24883 +[13603] Forked 24884 +(24883) found +(24884) found +[13602] Forked 24885 +[13601] Forked 24886 +(24885) found +(24886) found +[13600] Forked 24887 +[13599] Forked 24888 +(24887) found +(24888) found +[13598] Forked 24889 +(24889) found +[13597] Forked 24890 +[13596] Forked 24891 +(24890) found +(24891) found +[13595] Forked 24892 +[13594] Forked 24893 +(24892) found +(24893) found +[13593] Forked 24894 +[13592] Forked 24895 +(24894) found +(24895) found +[13591] Forked 24896 +[13590] Forked 24897 +(24896) found +(24897) found +[13589] Forked 24898 +[13588] Forked 24899 +(24898) found +(24899) found +[13587] Forked 24900 +[13586] Forked 24901 +(24900) found +(24901) found +[13585] Forked 24902 +[13584] Forked 24903 +(24902) found +(24903) found +[13583] Forked 24904 +[13582] Forked 24905 +(24904) found +(24905) found +[13581] Forked 24906 +[13580] Forked 24907 +(24906) found +(24907) found +[13579] Forked 24908 +[13578] Forked 24909 +(24908) found +(24909) found +[13577] Forked 24910 +[13576] Forked 24911 +(24910) found +(24911) found +[13575] Forked 24912 +[13574] Forked 24913 +(24912) found +(24913) found +[13573] Forked 24914 +[13572] Forked 24915 +(24914) found +(24915) found +[13571] Forked 24916 +[13570] Forked 24917 +(24916) found +(24917) found +[13569] Forked 24918 +[13568] Forked 24919 +(24918) found +(24919) found +[13567] Forked 24920 +[13566] Forked 24921 +(24920) found +(24921) found +[13565] Forked 24922 +[13564] Forked 24923 +(24922) found +(24923) found +[13563] Forked 24924 +[13562] Forked 24925 +(24924) found +(24925) found +[13561] Forked 24926 +[13560] Forked 24927 +(24926) found +(24927) found +[13559] Forked 24928 +[13558] Forked 24929 +(24928) found +(24929) found +[13557] Forked 24930 +[13556] Forked 24931 +(24930) found +(24931) found +[13555] Forked 24932 +[13554] Forked 24933 +(24932) found +(24933) found +[13553] Forked 24934 +[13552] Forked 24935 +(24934) found +(24935) found +[13551] Forked 24936 +[13550] Forked 24937 +(24936) found +(24937) found +[13549] Forked 24938 +[13548] Forked 24939 +(24938) found +(24939) found +[13547] Forked 24940 +[13546] Forked 24941 +(24940) found +(24941) found +[13545] Forked 24942 +[13544] Forked 24943 +(24942) found +(24943) found +[13543] Forked 24944 +[13542] Forked 24945 +(24944) found +(24945) found +[13541] Forked 24946 +[13540] Forked 24947 +(24946) found +(24947) found +[13539] Forked 24948 +[13538] Forked 24949 +(24948) found +(24949) found +[13537] Forked 24950 +[13536] Forked 24951 +(24950) found +(24951) found +[13535] Forked 24952 +[13534] Forked 24953 +(24952) found +(24953) found +[13533] Forked 24954 +[13532] Forked 24955 +(24954) found +(24955) found +[13531] Forked 24956 +[13530] Forked 24957 +(24956) found +(24957) found +[13529] Forked 24958 +[13528] Forked 24959 +(24958) found +(24959) found +[13527] Forked 24960 +[13526] Forked 24961 +(24960) found +(24961) found +[13525] Forked 24962 +[13524] Forked 24963 +(24962) found +(24963) found +[13523] Forked 24964 +[13522] Forked 24965 +(24964) found +(24965) found +[13521] Forked 24966 +[13520] Forked 24967 +(24966) found +(24967) found +[13519] Forked 24968 +[13518] Forked 24969 +(24968) found +(24969) found +[13517] Forked 24970 +(24970) found +[13516] Forked 24971 +(24971) found +[13515] Forked 24972 +(24972) found +[13514] Forked 24973 +(24973) found +[13513] Forked 24974 +(24974) found +[13512] Forked 24975 +(24975) found +[13511] Forked 24976 +(24976) found +[13510] Forked 24977 +(24977) found +[13509] Forked 24978 +(24978) found +[13508] Forked 24979 +(24979) found +[13507] Forked 24980 +(24980) found +[13506] Forked 24981 +(24981) found +[13505] Forked 24982 +(24982) found +[13504] Forked 24983 +(24983) found +[13503] Forked 24984 +(24984) found +[13502] Forked 24985 +(24985) found +[13501] Forked 24986 +(24986) found +[13500] Forked 24987 +(24987) found +[13499] Forked 24988 +(24988) found +[13498] Forked 24989 +(24989) found +[13497] Forked 24990 +(24990) found +[13496] Forked 24991 +(24991) found +[13495] Forked 24992 +(24992) found +[13494] Forked 24993 +(24993) found +[13493] Forked 24994 +(24994) found +[13492] Forked 24996 +(24996) found +[13491] Forked 24997 +(24997) found +[13490] Forked 24998 +(24998) found +[13489] Forked 24999 +(24999) found +[13488] Forked 25000 +(25000) found +[13487] Forked 25001 +(25001) found +[13486] Forked 25002 +(25002) found +[13485] Forked 25003 +(25003) found +[13484] Forked 25004 +(25004) found +[13483] Forked 25005 +(25005) found +[13482] Forked 25006 +(25006) found +[13481] Forked 25007 +[13480] Forked 25008 +(25007) found +(25008) found +[13479] Forked 25009 +[13478] Forked 25010 +(25009) found +(25010) found +[13477] Forked 25011 +[13476] Forked 25013 +(25011) found +(25013) found +[13475] Forked 25014 +(25014) found +[13474] Forked 25015 +(25015) found +[13473] Forked 25016 +(25016) found +[13472] Forked 25017 +(25017) found +[13471] Forked 25018 +(25018) found +[13470] Forked 25019 +(25019) found +[13469] Forked 25020 +(25020) found +[13468] Forked 25021 +(25021) found +[13467] Forked 25022 +(25022) found +[13466] Forked 25023 +(25023) found +[13465] Forked 25024 +(25024) found +[13464] Forked 25025 +(25025) found +[13463] Forked 25026 +(25026) found +[13462] Forked 25027 +(25027) found +[13461] Forked 25028 +(25028) found +[13460] Forked 25029 +(25029) found +[13459] Forked 25030 +(25030) found +[13458] Forked 25031 +(25031) found +[13457] Forked 25032 +(25032) found +[13456] Forked 25033 +(25033) found +[13455] Forked 25034 +(25034) found +[13454] Forked 25035 +(25035) found +[13453] Forked 25036 +(25036) found +[13452] Forked 25037 +(25037) found +[13451] Forked 25038 +(25038) found +[13450] Forked 25039 +(25039) found +[13449] Forked 25040 +(25040) found +[13448] Forked 25041 +(25041) found +[13447] Forked 25042 +(25042) found +[13446] Forked 25043 +(25043) found +[13445] Forked 25044 +(25044) found +[13444] Forked 25045 +(25045) found +[13443] Forked 25046 +(25046) found +[13442] Forked 25047 +(25047) found +[13441] Forked 25048 +(25048) found +[13440] Forked 25049 +(25049) found +[13439] Forked 25050 +(25050) found +[13438] Forked 25051 +(25051) found +[13437] Forked 25052 +(25052) found +[13436] Forked 25053 +(25053) found +[13435] Forked 25054 +(25054) found +[13434] Forked 25055 +(25055) found +[13433] Forked 25056 +(25056) found +[13432] Forked 25057 +(25057) found +[13431] Forked 25058 +(25058) found +[13430] Forked 25059 +(25059) found +[13429] Forked 25060 +(25060) found +[13428] Forked 25061 +(25061) found +[13427] Forked 25062 +(25062) found +[13426] Forked 25063 +(25063) found +[13425] Forked 25064 +(25064) found +[13424] Forked 25065 +(25065) found +[13423] Forked 25066 +(25066) found +[13422] Forked 25067 +(25067) found +[13421] Forked 25068 +(25068) found +[13420] Forked 25069 +(25069) found +[13419] Forked 25070 +(25070) found +[13418] Forked 25071 +(25071) found +[13417] Forked 25072 +(25072) found +[13416] Forked 25073 +(25073) found +[13415] Forked 25074 +(25074) found +[13414] Forked 25075 +(25075) found +[13413] Forked 25076 +(25076) found +[13412] Forked 25077 +(25077) found +[13411] Forked 25078 +(25078) found +[13410] Forked 25079 +[13409] Forked 25080 +(25079) found +(25080) found +[13408] Forked 25081 +[13407] Forked 25082 +(25081) found +(25082) found +[13406] Forked 25083 +[13405] Forked 25084 +(25083) found +(25084) found +[13404] Forked 25085 +[13403] Forked 25086 +(25085) found +(25086) found +[13402] Forked 25087 +[13401] Forked 25088 +(25087) found +(25088) found +[13400] Forked 25089 +[13399] Forked 25090 +(25089) found +(25090) found +[13398] Forked 25091 +[13397] Forked 25092 +(25091) found +(25092) found +[13396] Forked 25093 +[13395] Forked 25094 +(25093) found +(25094) found +[13394] Forked 25095 +[13393] Forked 25096 +(25095) found +(25096) found +[13392] Forked 25097 +[13391] Forked 25098 +(25097) found +(25098) found +[13390] Forked 25099 +[13389] Forked 25100 +(25099) found +(25100) found +[13388] Forked 25101 +[13387] Forked 25102 +(25101) found +(25102) found +[13386] Forked 25103 +[13385] Forked 25104 +(25103) found +(25104) found +[13384] Forked 25105 +[13383] Forked 25106 +(25105) found +(25106) found +[13382] Forked 25107 +[13381] Forked 25108 +(25107) found +(25108) found +[13380] Forked 25109 +[13379] Forked 25110 +(25109) found +(25110) found +[13378] Forked 25111 +[13377] Forked 25112 +(25111) found +(25112) found +[13376] Forked 25113 +[13375] Forked 25114 +(25113) found +(25114) found +[13374] Forked 25115 +[13373] Forked 25116 +(25115) found +(25116) found +[13372] Forked 25117 +[13371] Forked 25118 +(25117) found +(25118) found +[13370] Forked 25119 +[13369] Forked 25120 +(25119) found +(25120) found +[13368] Forked 25121 +[13367] Forked 25122 +(25121) found +(25122) found +[13366] Forked 25123 +[13365] Forked 25124 +(25123) found +(25124) found +[13364] Forked 25125 +[13363] Forked 25126 +(25125) found +(25126) found +[13362] Forked 25127 +[13361] Forked 25128 +(25127) found +(25128) found +[13360] Forked 25129 +[13359] Forked 25130 +(25129) found +(25130) found +[13358] Forked 25131 +[13357] Forked 25132 +(25131) found +(25132) found +[13356] Forked 25133 +[13355] Forked 25134 +(25133) found +(25134) found +[13354] Forked 25135 +[13353] Forked 25136 +(25135) found +(25136) found +[13352] Forked 25137 +[13351] Forked 25138 +(25137) found +(25138) found +[13350] Forked 25139 +[13349] Forked 25140 +(25139) found +(25140) found +[13348] Forked 25141 +[13347] Forked 25142 +(25141) found +(25142) found +[13346] Forked 25143 +[13345] Forked 25144 +(25143) found +(25144) found +[13344] Forked 25145 +[13343] Forked 25146 +(25145) found +(25146) found +[13342] Forked 25147 +[13341] Forked 25148 +(25147) found +(25148) found +[13340] Forked 25149 +[13339] Forked 25150 +(25149) found +(25150) found +[13338] Forked 25151 +[13337] Forked 25152 +(25151) found +(25152) found +[13336] Forked 25153 +[13335] Forked 25154 +(25153) found +(25154) found +[13334] Forked 25155 +[13333] Forked 25156 +(25155) found +(25156) found +[13332] Forked 25157 +[13331] Forked 25158 +(25157) found +(25158) found +[13330] Forked 25159 +[13329] Forked 25160 +(25159) found +(25160) found +[13328] Forked 25161 +[13327] Forked 25162 +(25161) found +(25162) found +[13326] Forked 25163 +[13325] Forked 25164 +(25163) found +(25164) found +[13324] Forked 25165 +[13323] Forked 25166 +(25165) found +(25166) found +[13322] Forked 25167 +[13321] Forked 25168 +(25167) found +(25168) found +[13320] Forked 25169 +[13319] Forked 25170 +(25169) found +(25170) found +[13318] Forked 25171 +[13317] Forked 25172 +(25171) found +(25172) found +[13316] Forked 25173 +[13315] Forked 25174 +(25173) found +(25174) found +[13314] Forked 25175 +[13313] Forked 25176 +(25175) found +(25176) found +[13312] Forked 25177 +[13311] Forked 25178 +(25177) found +(25178) found +[13310] Forked 25179 +[13309] Forked 25180 +(25179) found +(25180) found +[13308] Forked 25181 +[13307] Forked 25182 +(25181) found +(25182) found +[13306] Forked 25183 +[13305] Forked 25184 +(25183) found +(25184) found +[13304] Forked 25185 +[13303] Forked 25186 +(25185) found +(25186) found +[13302] Forked 25187 +[13301] Forked 25188 +(25187) found +(25188) found +[13300] Forked 25189 +[13299] Forked 25190 +(25189) found +(25190) found +[13298] Forked 25191 +[13297] Forked 25192 +(25191) found +(25192) found +[13296] Forked 25193 +[13295] Forked 25194 +(25193) found +(25194) found +[13294] Forked 25195 +[13293] Forked 25196 +(25195) found +(25196) found +[13292] Forked 25197 +[13291] Forked 25198 +(25197) found +(25198) found +[13290] Forked 25199 +[13289] Forked 25200 +(25199) found +(25200) found +[13288] Forked 25201 +[13287] Forked 25202 +(25201) found +(25202) found +[13286] Forked 25203 +[13285] Forked 25204 +(25203) found +(25204) found +[13284] Forked 25205 +[13283] Forked 25206 +(25205) found +(25206) found +[13282] Forked 25207 +[13281] Forked 25208 +(25207) found +(25208) found +[13280] Forked 25209 +[13279] Forked 25210 +(25209) found +(25210) found +[13278] Forked 25211 +[13277] Forked 25212 +(25211) found +(25212) found +[13276] Forked 25213 +[13275] Forked 25214 +(25213) found +(25214) found +[13274] Forked 25215 +[13273] Forked 25216 +(25215) found +(25216) found +[13272] Forked 25217 +[13271] Forked 25218 +(25217) found +(25218) found +[13270] Forked 25219 +[13269] Forked 25220 +(25219) found +(25220) found +[13268] Forked 25221 +[13267] Forked 25222 +(25221) found +(25222) found +[13266] Forked 25223 +[13265] Forked 25224 +(25223) found +(25224) found +[13264] Forked 25225 +[13263] Forked 25226 +(25225) found +(25226) found +[13262] Forked 25227 +[13261] Forked 25228 +(25227) found +(25228) found +[13260] Forked 25229 +[13259] Forked 25230 +(25229) found +(25230) found +[13258] Forked 25231 +[13257] Forked 25232 +(25231) found +(25232) found +[13256] Forked 25233 +[13255] Forked 25234 +(25233) found +(25234) found +[13254] Forked 25235 +[13253] Forked 25236 +(25235) found +(25236) found +[13252] Forked 25237 +[13251] Forked 25238 +(25237) found +(25238) found +[13250] Forked 25239 +[13249] Forked 25240 +(25239) found +(25240) found +[13248] Forked 25241 +[13247] Forked 25242 +(25241) found +(25242) found +[13246] Forked 25243 +[13245] Forked 25244 +(25243) found +(25244) found +[13244] Forked 25245 +[13243] Forked 25246 +(25245) found +(25246) found +[13242] Forked 25247 +[13241] Forked 25248 +(25247) found +(25248) found +[13240] Forked 25249 +[13239] Forked 25250 +(25249) found +(25250) found +[13238] Forked 25251 +[13237] Forked 25252 +(25251) found +(25252) found +[13236] Forked 25253 +[13235] Forked 25254 +(25253) found +(25254) found +[13234] Forked 25255 +[13233] Forked 25256 +(25255) found +(25256) found +[13232] Forked 25257 +[13231] Forked 25258 +(25257) found +(25258) found +[13230] Forked 25259 +[13229] Forked 25260 +(25259) found +(25260) found +[13228] Forked 25261 +(25261) found +[13227] Forked 25262 +(25262) found +[13226] Forked 25263 +(25263) found +[13225] Forked 25264 +(25264) found +[13224] Forked 25265 +(25265) found +[13223] Forked 25266 +(25266) found +[13222] Forked 25267 +(25267) found +[13221] Forked 25268 +(25268) found +[13220] Forked 25269 +(25269) found +[13219] Forked 25270 +(25270) found +[13218] Forked 25271 +(25271) found +[13217] Forked 25272 +(25272) found +[13216] Forked 25273 +(25273) found +[13215] Forked 25274 +(25274) found +[13214] Forked 25275 +(25275) found +[13213] Forked 25276 +(25276) found +[13212] Forked 25277 +(25277) found +[13211] Forked 25278 +(25278) found +[13210] Forked 25279 +(25279) found +[13209] Forked 25280 +(25280) found +[13208] Forked 25281 +(25281) found +[13207] Forked 25282 +(25282) found +[13206] Forked 25283 +(25283) found +[13205] Forked 25284 +(25284) found +[13204] Forked 25285 +(25285) found +[13203] Forked 25286 +(25286) found +[13202] Forked 25287 +(25287) found +[13201] Forked 25288 +(25288) found +[13200] Forked 25289 +(25289) found +[13199] Forked 25290 +(25290) found +[13198] Forked 25291 +(25291) found +[13197] Forked 25292 +(25292) found +[13196] Forked 25293 +(25293) found +[13195] Forked 25294 +(25294) found +[13194] Forked 25295 +[13193] Forked 25296 +(25295) found +(25296) found +[13192] Forked 25297 +[13191] Forked 25298 +(25297) found +(25298) found +[13190] Forked 25299 +[13189] Forked 25300 +(25299) found +(25300) found +[13188] Forked 25301 +[13187] Forked 25302 +(25301) found +(25302) found +[13186] Forked 25303 +[13185] Forked 25304 +(25303) found +(25304) found +[13184] Forked 25305 +[13183] Forked 25306 +(25305) found +(25306) found +[13182] Forked 25307 +[13181] Forked 25308 +(25307) found +(25308) found +[13180] Forked 25309 +[13179] Forked 25310 +(25309) found +(25310) found +[13178] Forked 25311 +[13177] Forked 25312 +(25311) found +(25312) found +[13176] Forked 25313 +[13175] Forked 25314 +(25313) found +(25314) found +[13174] Forked 25315 +[13173] Forked 25316 +(25315) found +(25316) found +[13172] Forked 25317 +[13171] Forked 25318 +(25317) found +(25318) found +[13170] Forked 25319 +[13169] Forked 25320 +(25319) found +(25320) found +[13168] Forked 25321 +[13167] Forked 25322 +(25321) found +(25322) found +[13166] Forked 25323 +[13165] Forked 25324 +(25323) found +(25324) found +[13164] Forked 25325 +[13163] Forked 25326 +(25325) found +(25326) found +[13162] Forked 25327 +[13161] Forked 25328 +(25327) found +(25328) found +[13160] Forked 25329 +[13159] Forked 25330 +(25329) found +(25330) found +[13158] Forked 25331 +[13157] Forked 25332 +(25331) found +(25332) found +[13156] Forked 25333 +(25333) found +[13155] Forked 25334 +[13154] Forked 25335 +(25334) found +(25335) found +[13153] Forked 25336 +[13152] Forked 25337 +(25336) found +(25337) found +[13151] Forked 25338 +[13150] Forked 25339 +(25338) found +(25339) found +[13149] Forked 25340 +[13148] Forked 25341 +(25340) found +(25341) found +[13147] Forked 25342 +[13146] Forked 25343 +(25342) found +(25343) found +[13145] Forked 25344 +[13144] Forked 25345 +(25344) found +(25345) found +[13143] Forked 25346 +[13142] Forked 25347 +(25346) found +(25347) found +[13141] Forked 25348 +[13140] Forked 25349 +(25348) found +(25349) found +[13139] Forked 25350 +[13138] Forked 25351 +(25350) found +(25351) found +[13137] Forked 25352 +[13136] Forked 25353 +(25352) found +(25353) found +[13135] Forked 25354 +[13134] Forked 25355 +(25354) found +(25355) found +[13133] Forked 25356 +[13132] Forked 25357 +(25356) found +(25357) found +[13131] Forked 25358 +[13130] Forked 25359 +(25358) found +(25359) found +[13129] Forked 25360 +[13128] Forked 25361 +(25360) found +(25361) found +[13127] Forked 25362 +[13126] Forked 25363 +(25362) found +(25363) found +[13125] Forked 25364 +[13124] Forked 25365 +(25364) found +(25365) found +[13123] Forked 25366 +[13122] Forked 25367 +(25366) found +(25367) found +[13121] Forked 25368 +[13120] Forked 25369 +(25368) found +(25369) found +[13119] Forked 25370 +[13118] Forked 25371 +(25370) found +(25371) found +[13117] Forked 25372 +[13116] Forked 25373 +(25372) found +(25373) found +[13115] Forked 25374 +[13114] Forked 25375 +(25374) found +(25375) found +[13113] Forked 25376 +[13112] Forked 25377 +(25376) found +(25377) found +[13111] Forked 25378 +[13110] Forked 25379 +(25378) found +(25379) found +[13109] Forked 25380 +[13108] Forked 25381 +(25380) found +(25381) found +[13107] Forked 25382 +[13106] Forked 25383 +(25382) found +(25383) found +[13105] Forked 25384 +[13104] Forked 25385 +(25384) found +(25385) found +[13103] Forked 25386 +[13102] Forked 25387 +(25386) found +(25387) found +[13101] Forked 25388 +[13100] Forked 25389 +(25388) found +(25389) found +[13099] Forked 25390 +[13098] Forked 25391 +(25390) found +(25391) found +[13097] Forked 25392 +[13096] Forked 25393 +(25392) found +(25393) found +[13095] Forked 25394 +[13094] Forked 25396 +(25394) found +(25396) found +[13093] Forked 25397 +(25397) found +[13092] Forked 25398 +(25398) found +[13091] Forked 25399 +(25399) found +[13090] Forked 25400 +(25400) found +[13089] Forked 25401 +(25401) found +[13088] Forked 25402 +(25402) found +[13087] Forked 25403 +(25403) found +[13086] Forked 25404 +(25404) found +[13085] Forked 25405 +(25405) found +[13084] Forked 25406 +(25406) found +[13083] Forked 25407 +(25407) found +[13082] Forked 25408 +(25408) found +[13081] Forked 25409 +(25409) found +[13080] Forked 25410 +(25410) found +[13079] Forked 25411 +(25411) found +[13078] Forked 25412 +(25412) found +[13077] Forked 25413 +(25413) found +[13076] Forked 25414 +(25414) found +[13075] Forked 25416 +(25416) found +[13074] Forked 25417 +(25417) found +[13073] Forked 25418 +(25418) found +[13072] Forked 25419 +(25419) found +[13071] Forked 25420 +(25420) found +[13070] Forked 25421 +(25421) found +[13069] Forked 25422 +(25422) found +[13068] Forked 25423 +(25423) found +[13067] Forked 25424 +(25424) found +[13066] Forked 25426 +(25426) found +[13065] Forked 25428 +(25428) found +[13064] Forked 25430 +(25430) found +[13063] Forked 25431 +(25431) found +[13062] Forked 25432 +(25432) found +[13061] Forked 25433 +(25433) found +[13060] Forked 25434 +(25434) found +[13059] Forked 25435 +(25435) found +[13058] Forked 25436 +(25436) found +[13057] Forked 25437 +(25437) found +[13056] Forked 25438 +(25438) found +[13055] Forked 25439 +(25439) found +[13054] Forked 25440 +(25440) found +[13053] Forked 25441 +(25441) found +[13052] Forked 25442 +(25442) found +[13051] Forked 25443 +(25443) found +[13050] Forked 25444 +(25444) found +[13049] Forked 25445 +(25445) found +[13048] Forked 25446 +(25446) found +[13047] Forked 25447 +(25447) found +[13046] Forked 25448 +(25448) found +[13045] Forked 25449 +(25449) found +[13044] Forked 25450 +(25450) found +[13043] Forked 25451 +(25451) found +[13042] Forked 25452 +(25452) found +[13041] Forked 25453 +(25453) found +[13040] Forked 25454 +(25454) found +[13039] Forked 25455 +(25455) found +[13038] Forked 25456 +(25456) found +[13037] Forked 25457 +(25457) found +[13036] Forked 25458 +(25458) found +[13035] Forked 25459 +(25459) found +[13034] Forked 25460 +(25460) found +[13033] Forked 25461 +[13032] Forked 25462 +(25461) found +(25462) found +[13031] Forked 25463 +[13030] Forked 25464 +(25463) found +(25464) found +[13029] Forked 25465 +[13028] Forked 25466 +(25465) found +(25466) found +[13027] Forked 25467 +[13026] Forked 25468 +(25467) found +(25468) found +[13025] Forked 25469 +[13024] Forked 25470 +(25469) found +(25470) found +[13023] Forked 25471 +[13022] Forked 25472 +(25471) found +(25472) found +[13021] Forked 25473 +[13020] Forked 25474 +(25473) found +(25474) found +[13019] Forked 25475 +[13018] Forked 25476 +(25475) found +(25476) found +[13017] Forked 25477 +[13016] Forked 25478 +(25477) found +(25478) found +[13015] Forked 25479 +[13014] Forked 25480 +(25479) found +(25480) found +[13013] Forked 25481 +[13012] Forked 25482 +(25481) found +(25482) found +[13011] Forked 25483 +[13010] Forked 25484 +(25483) found +(25484) found +[13009] Forked 25485 +[13008] Forked 25486 +(25485) found +(25486) found +[13007] Forked 25487 +[13006] Forked 25488 +(25487) found +(25488) found +[13005] Forked 25489 +[13004] Forked 25490 +(25489) found +(25490) found +[13003] Forked 25491 +[13002] Forked 25492 +(25491) found +(25492) found +[13001] Forked 25493 +[13000] Forked 25494 +(25493) found +(25494) found +[12999] Forked 25495 +[12998] Forked 25496 +(25495) found +(25496) found +[12997] Forked 25497 +[12996] Forked 25498 +(25497) found +(25498) found +[12995] Forked 25499 +[12994] Forked 25500 +(25499) found +(25500) found +[12993] Forked 25501 +[12992] Forked 25502 +(25501) found +(25502) found +[12991] Forked 25503 +[12990] Forked 25504 +(25503) found +(25504) found +[12989] Forked 25505 +[12988] Forked 25506 +(25505) found +(25506) found +[12987] Forked 25507 +[12986] Forked 25508 +(25507) found +(25508) found +[12985] Forked 25509 +[12984] Forked 25510 +(25509) found +(25510) found +[12983] Forked 25511 +[12982] Forked 25512 +(25511) found +(25512) found +[12981] Forked 25513 +[12980] Forked 25514 +(25513) found +(25514) found +[12979] Forked 25515 +[12978] Forked 25516 +(25515) found +(25516) found +[12977] Forked 25517 +[12976] Forked 25518 +(25517) found +(25518) found +[12975] Forked 25519 +[12974] Forked 25520 +(25519) found +(25520) found +[12973] Forked 25521 +[12972] Forked 25522 +(25521) found +(25522) found +[12971] Forked 25523 +[12970] Forked 25524 +(25523) found +(25524) found +[12969] Forked 25525 +[12968] Forked 25526 +(25525) found +(25526) found +[12967] Forked 25527 +[12966] Forked 25528 +(25527) found +(25528) found +[12965] Forked 25529 +[12964] Forked 25530 +(25529) found +(25530) found +[12963] Forked 25531 +[12962] Forked 25532 +(25531) found +(25532) found +[12961] Forked 25533 +[12960] Forked 25534 +(25533) found +(25534) found +[12959] Forked 25535 +[12958] Forked 25536 +(25535) found +(25536) found +[12957] Forked 25537 +[12956] Forked 25538 +(25537) found +(25538) found +[12955] Forked 25539 +[12954] Forked 25540 +(25539) found +(25540) found +[12953] Forked 25541 +[12952] Forked 25542 +(25541) found +(25542) found +[12951] Forked 25543 +[12950] Forked 25544 +(25543) found +(25544) found +[12949] Forked 25545 +[12948] Forked 25546 +(25545) found +(25546) found +[12947] Forked 25547 +[12946] Forked 25548 +(25547) found +(25548) found +[12945] Forked 25549 +[12944] Forked 25550 +(25549) found +(25550) found +[12943] Forked 25551 +[12942] Forked 25552 +(25551) found +(25552) found +[12941] Forked 25553 +[12940] Forked 25554 +(25553) found +(25554) found +[12939] Forked 25555 +[12938] Forked 25556 +(25555) found +(25556) found +[12937] Forked 25557 +[12936] Forked 25558 +(25557) found +(25558) found +[12935] Forked 25559 +[12934] Forked 25560 +(25559) found +(25560) found +[12933] Forked 25561 +[12932] Forked 25562 +(25561) found +(25562) found +[12931] Forked 25563 +[12930] Forked 25564 +(25563) found +(25564) found +[12929] Forked 25565 +[12928] Forked 25566 +(25565) found +(25566) found +[12927] Forked 25567 +[12926] Forked 25568 +(25567) found +(25568) found +[12925] Forked 25569 +[12924] Forked 25570 +(25569) found +(25570) found +[12923] Forked 25571 +[12922] Forked 25572 +(25571) found +(25572) found +[12921] Forked 25573 +[12920] Forked 25574 +(25573) found +(25574) found +[12919] Forked 25575 +[12918] Forked 25576 +(25575) found +(25576) found +[12917] Forked 25577 +[12916] Forked 25578 +(25577) found +(25578) found +[12915] Forked 25579 +[12914] Forked 25580 +(25579) found +(25580) found +[12913] Forked 25581 +[12912] Forked 25582 +(25581) found +(25582) found +[12911] Forked 25583 +[12910] Forked 25584 +(25583) found +(25584) found +[12909] Forked 25585 +[12908] Forked 25586 +(25585) found +(25586) found +[12907] Forked 25587 +[12906] Forked 25588 +(25587) found +(25588) found +[12905] Forked 25589 +[12904] Forked 25590 +(25589) found +(25590) found +[12903] Forked 25591 +[12902] Forked 25592 +(25591) found +(25592) found +[12901] Forked 25593 +[12900] Forked 25595 +(25593) found +(25595) found +[12899] Forked 25596 +[12898] Forked 25597 +(25596) found +(25597) found +[12897] Forked 25598 +[12896] Forked 25599 +(25599) found +(25598) found +[12895] Forked 25600 +(25600) found +[12894] Forked 25601 +[12893] Forked 25602 +(25601) found +(25602) found +[12892] Forked 25603 +[12891] Forked 25604 +(25603) found +(25604) found +[12890] Forked 25605 +[12889] Forked 25606 +(25605) found +(25606) found +[12888] Forked 25607 +[12887] Forked 25608 +(25607) found +(25608) found +[12886] Forked 25609 +[12885] Forked 25610 +(25609) found +(25610) found +[12884] Forked 25611 +[12883] Forked 25612 +(25611) found +(25612) found +[12882] Forked 25613 +[12881] Forked 25614 +(25613) found +(25614) found +[12880] Forked 25615 +[12879] Forked 25616 +(25615) found +(25616) found +[12878] Forked 25617 +[12877] Forked 25618 +(25617) found +(25618) found +[12876] Forked 25619 +[12875] Forked 25620 +(25619) found +(25620) found +[12874] Forked 25621 +[12873] Forked 25622 +(25621) found +(25622) found +[12872] Forked 25623 +[12871] Forked 25624 +(25623) found +(25624) found +[12870] Forked 25625 +(25625) found +[12869] Forked 25626 +[12868] Forked 25627 +(25626) found +(25627) found +[12867] Forked 25628 +[12866] Forked 25629 +(25628) found +(25629) found +[12865] Forked 25630 +[12864] Forked 25631 +(25630) found +(25631) found +[12863] Forked 25632 +[12862] Forked 25633 +(25632) found +(25633) found +[12861] Forked 25634 +[12860] Forked 25635 +(25634) found +(25635) found +[12859] Forked 25636 +[12858] Forked 25637 +(25636) found +(25637) found +[12857] Forked 25638 +[12856] Forked 25639 +(25638) found +(25639) found +[12855] Forked 25640 +[12854] Forked 25641 +(25640) found +(25641) found +[12853] Forked 25642 +[12852] Forked 25643 +(25642) found +(25643) found +[12851] Forked 25644 +[12850] Forked 25645 +(25644) found +(25645) found +[12849] Forked 25646 +[12848] Forked 25647 +(25646) found +(25647) found +[12847] Forked 25648 +[12846] Forked 25649 +(25648) found +(25649) found +[12845] Forked 25650 +[12844] Forked 25651 +(25650) found +(25651) found +[12843] Forked 25652 +[12842] Forked 25653 +(25652) found +(25653) found +[12841] Forked 25654 +[12840] Forked 25655 +(25654) found +(25655) found +[12839] Forked 25656 +[12838] Forked 25657 +(25656) found +(25657) found +[12837] Forked 25658 +[12836] Forked 25659 +(25658) found +(25659) found +[12835] Forked 25660 +[12834] Forked 25661 +(25660) found +(25661) found +[12833] Forked 25662 +[12832] Forked 25663 +(25662) found +(25663) found +[12831] Forked 25664 +[12830] Forked 25665 +(25664) found +(25665) found +[12829] Forked 25666 +[12828] Forked 25667 +(25666) found +(25667) found +[12827] Forked 25668 +[12826] Forked 25669 +(25668) found +(25669) found +[12825] Forked 25670 +[12824] Forked 25671 +(25670) found +(25671) found +[12823] Forked 25672 +[12822] Forked 25673 +(25672) found +(25673) found +[12821] Forked 25674 +[12820] Forked 25675 +(25674) found +(25675) found +[12819] Forked 25676 +[12818] Forked 25677 +(25676) found +(25677) found +[12817] Forked 25678 +[12816] Forked 25679 +(25678) found +(25679) found +[12815] Forked 25680 +[12814] Forked 25681 +(25680) found +(25681) found +[12813] Forked 25682 +[12812] Forked 25683 +(25682) found +(25683) found +[12811] Forked 25684 +[12810] Forked 25685 +(25684) found +(25685) found +[12809] Forked 25686 +[12808] Forked 25687 +(25686) found +(25687) found +[12807] Forked 25688 +[12806] Forked 25689 +(25688) found +(25689) found +[12805] Forked 25690 +[12804] Forked 25691 +(25690) found +(25691) found +[12803] Forked 25692 +[12802] Forked 25693 +(25692) found +(25693) found +[12801] Forked 25694 +[12800] Forked 25695 +(25694) found +(25695) found +[12799] Forked 25696 +[12798] Forked 25697 +(25696) found +(25697) found +[12797] Forked 25698 +[12796] Forked 25699 +(25698) found +(25699) found +[12795] Forked 25700 +[12794] Forked 25701 +(25700) found +(25701) found +[12793] Forked 25702 +[12792] Forked 25703 +(25702) found +(25703) found +[12791] Forked 25704 +[12790] Forked 25705 +(25704) found +(25705) found +[12789] Forked 25706 +[12788] Forked 25707 +(25706) found +(25707) found +[12787] Forked 25708 +[12786] Forked 25709 +(25708) found +(25709) found +[12785] Forked 25710 +[12784] Forked 25711 +(25710) found +(25711) found +[12783] Forked 25712 +[12782] Forked 25713 +(25712) found +(25713) found +[12781] Forked 25714 +[12780] Forked 25715 +(25714) found +(25715) found +[12779] Forked 25716 +[12778] Forked 25717 +(25716) found +(25717) found +[12777] Forked 25718 +[12776] Forked 25719 +(25718) found +(25719) found +[12775] Forked 25720 +[12774] Forked 25721 +(25720) found +(25721) found +[12773] Forked 25722 +[12772] Forked 25723 +(25722) found +(25723) found +[12771] Forked 25724 +[12770] Forked 25725 +(25724) found +(25725) found +[12769] Forked 25726 +[12768] Forked 25727 +(25727) found +(25726) found +[12767] Forked 25728 +(25728) found +[12766] Forked 25729 +(25729) found +[12765] Forked 25730 +(25730) found +[12764] Forked 25731 +(25731) found +[12763] Forked 25732 +(25732) found +[12762] Forked 25733 +(25733) found +[12761] Forked 25734 +(25734) found +[12760] Forked 25735 +(25735) found +[12759] Forked 25736 +(25736) found +[12758] Forked 25737 +(25737) found +[12757] Forked 25738 +(25738) found +[12756] Forked 25739 +(25739) found +[12755] Forked 25740 +(25740) found +[12754] Forked 25741 +(25741) found +[12753] Forked 25742 +(25742) found +[12752] Forked 25743 +(25743) found +[12751] Forked 25744 +(25744) found +[12750] Forked 25745 +(25745) found +[12749] Forked 25746 +(25746) found +[12748] Forked 25747 +(25747) found +[12747] Forked 25748 +(25748) found +[12746] Forked 25749 +(25749) found +[12745] Forked 25750 +(25750) found +[12744] Forked 25751 +(25751) found +[12743] Forked 25752 +(25752) found +[12742] Forked 25753 +(25753) found +[12741] Forked 25754 +(25754) found +[12740] Forked 25755 +(25755) found +[12739] Forked 25756 +(25756) found +[12738] Forked 25757 +(25757) found +[12737] Forked 25758 +(25758) found +[12736] Forked 25759 +(25759) found +[12735] Forked 25760 +(25760) found +[12734] Forked 25761 +(25761) found +[12733] Forked 25762 +(25762) found +[12732] Forked 25763 +(25763) found +[12731] Forked 25764 +(25764) found +[12730] Forked 25765 +(25765) found +[12729] Forked 25766 +(25766) found +[12728] Forked 25767 +(25767) found +[12727] Forked 25768 +(25768) found +[12726] Forked 25769 +(25769) found +[12725] Forked 25770 +(25770) found +[12724] Forked 25771 +(25771) found +[12723] Forked 25772 +(25772) found +[12722] Forked 25774 +(25774) found +[12721] Forked 25775 +(25775) found +[12720] Forked 25776 +(25776) found +[12719] Forked 25777 +(25777) found +[12718] Forked 25778 +(25778) found +[12717] Forked 25779 +(25779) found +[12716] Forked 25780 +(25780) found +[12715] Forked 25781 +(25781) found +[12714] Forked 25782 +(25782) found +[12713] Forked 25783 +(25783) found +[12712] Forked 25784 +(25784) found +[12711] Forked 25785 +(25785) found +[12710] Forked 25786 +(25786) found +[12709] Forked 25787 +(25787) found +[12708] Forked 25788 +(25788) found +[12707] Forked 25789 +(25789) found +[12706] Forked 25790 +(25790) found +[12705] Forked 25791 +(25791) found +[12704] Forked 25792 +(25792) found +[12703] Forked 25793 +(25793) found +[12702] Forked 25794 +(25794) found +[12701] Forked 25795 +(25795) found +[12700] Forked 25796 +[12699] Forked 25797 +(25796) found +(25797) found +[12698] Forked 25798 +[12697] Forked 25799 +(25798) found +(25799) found +[12696] Forked 25800 +[12695] Forked 25801 +(25800) found +(25801) found +[12694] Forked 25802 +[12693] Forked 25803 +(25802) found +(25803) found +[12692] Forked 25804 +[12691] Forked 25805 +(25804) found +(25805) found +[12690] Forked 25806 +[12689] Forked 25807 +(25806) found +(25807) found +[12688] Forked 25808 +[12687] Forked 25809 +(25808) found +(25809) found +[12686] Forked 25810 +[12685] Forked 25811 +(25810) found +(25811) found +[12684] Forked 25812 +[12683] Forked 25813 +(25812) found +(25813) found +[12682] Forked 25814 +[12681] Forked 25815 +(25814) found +(25815) found +[12680] Forked 25816 +[12679] Forked 25817 +(25816) found +(25817) found +[12678] Forked 25818 +[12677] Forked 25819 +(25818) found +(25819) found +[12676] Forked 25820 +[12675] Forked 25821 +(25820) found +(25821) found +[12674] Forked 25822 +[12673] Forked 25823 +(25822) found +(25823) found +[12672] Forked 25824 +[12671] Forked 25825 +(25824) found +(25825) found +[12670] Forked 25826 +[12669] Forked 25827 +(25826) found +(25827) found +[12668] Forked 25828 +[12667] Forked 25829 +(25828) found +(25829) found +[12666] Forked 25830 +[12665] Forked 25831 +(25830) found +(25831) found +[12664] Forked 25832 +[12663] Forked 25833 +(25832) found +(25833) found +[12662] Forked 25834 +[12661] Forked 25835 +(25834) found +(25835) found +[12660] Forked 25836 +[12659] Forked 25837 +(25836) found +(25837) found +[12658] Forked 25838 +[12657] Forked 25839 +(25838) found +(25839) found +[12656] Forked 25840 +[12655] Forked 25841 +(25840) found +(25841) found +[12654] Forked 25842 +[12653] Forked 25843 +(25842) found +(25843) found +[12652] Forked 25844 +[12651] Forked 25845 +(25844) found +(25845) found +[12650] Forked 25846 +[12649] Forked 25847 +(25846) found +(25847) found +[12648] Forked 25848 +[12647] Forked 25849 +(25848) found +(25849) found +[12646] Forked 25850 +[12645] Forked 25851 +(25850) found +(25851) found +[12644] Forked 25852 +[12643] Forked 25853 +(25852) found +(25853) found +[12642] Forked 25854 +[12641] Forked 25855 +(25854) found +(25855) found +[12640] Forked 25856 +[12639] Forked 25857 +(25856) found +(25857) found +[12638] Forked 25858 +[12637] Forked 25859 +(25858) found +(25859) found +[12636] Forked 25860 +[12635] Forked 25861 +(25860) found +(25861) found +[12634] Forked 25862 +[12633] Forked 25863 +(25862) found +(25863) found +[12632] Forked 25864 +[12631] Forked 25865 +(25864) found +(25865) found +[12630] Forked 25866 +[12629] Forked 25867 +(25866) found +(25867) found +[12628] Forked 25868 +[12627] Forked 25869 +(25868) found +(25869) found +[12626] Forked 25870 +[12625] Forked 25871 +(25870) found +(25871) found +[12624] Forked 25872 +[12623] Forked 25873 +(25872) found +(25873) found +[12622] Forked 25874 +[12621] Forked 25875 +(25874) found +(25875) found +[12620] Forked 25876 +[12619] Forked 25877 +(25876) found +(25877) found +[12618] Forked 25878 +[12617] Forked 25879 +(25878) found +(25879) found +[12616] Forked 25880 +[12615] Forked 25881 +(25880) found +(25881) found +[12614] Forked 25882 +[12613] Forked 25883 +(25882) found +(25883) found +[12612] Forked 25884 +[12611] Forked 25885 +(25884) found +(25885) found +[12610] Forked 25886 +[12609] Forked 25887 +(25886) found +(25887) found +[12608] Forked 25888 +[12607] Forked 25889 +(25888) found +(25889) found +[12606] Forked 25890 +[12605] Forked 25891 +(25890) found +(25891) found +[12604] Forked 25892 +[12603] Forked 25893 +(25892) found +(25893) found +[12602] Forked 25894 +[12601] Forked 25895 +(25894) found +(25895) found +[12600] Forked 25896 +[12599] Forked 25897 +(25896) found +(25897) found +[12598] Forked 25898 +[12597] Forked 25899 +(25898) found +(25899) found +[12596] Forked 25900 +[12595] Forked 25901 +(25900) found +(25901) found +[12594] Forked 25902 +[12593] Forked 25903 +(25902) found +(25903) found +[12592] Forked 25904 +[12591] Forked 25905 +(25904) found +(25905) found +[12590] Forked 25906 +[12589] Forked 25907 +(25906) found +(25907) found +[12588] Forked 25908 +[12587] Forked 25909 +(25908) found +(25909) found +[12586] Forked 25910 +[12585] Forked 25911 +(25910) found +(25911) found +[12584] Forked 25912 +[12583] Forked 25913 +(25912) found +(25913) found +[12582] Forked 25914 +[12581] Forked 25915 +(25914) found +(25915) found +[12580] Forked 25916 +[12579] Forked 25917 +(25916) found +(25917) found +[12578] Forked 25918 +[12577] Forked 25919 +(25918) found +(25919) found +[12576] Forked 25920 +[12575] Forked 25921 +(25920) found +(25921) found +[12574] Forked 25922 +[12573] Forked 25923 +(25922) found +(25923) found +[12572] Forked 25924 +[12571] Forked 25925 +(25924) found +(25925) found +[12570] Forked 25926 +[12569] Forked 25927 +(25926) found +(25927) found +[12568] Forked 25928 +[12567] Forked 25929 +(25928) found +(25929) found +[12566] Forked 25930 +[12565] Forked 25931 +(25930) found +(25931) found +[12564] Forked 25932 +[12563] Forked 25933 +(25932) found +(25933) found +[12562] Forked 25934 +(25934) found +[12561] Forked 25935 +(25935) found +[12560] Forked 25936 +(25936) found +[12559] Forked 25937 +(25937) found +[12558] Forked 25938 +(25938) found +[12557] Forked 25939 +(25939) found +[12556] Forked 25940 +(25940) found +[12555] Forked 25941 +(25941) found +[12554] Forked 25942 +(25942) found +[12553] Forked 25943 +(25943) found +[12552] Forked 25944 +(25944) found +[12551] Forked 25945 +(25945) found +[12550] Forked 25946 +(25946) found +[12549] Forked 25947 +(25947) found +[12548] Forked 25948 +(25948) found +[12547] Forked 25949 +(25949) found +[12546] Forked 25950 +(25950) found +[12545] Forked 25951 +(25951) found +[12544] Forked 25952 +(25952) found +[12543] Forked 25953 +(25953) found +[12542] Forked 25954 +(25954) found +[12541] Forked 25955 +(25955) found +[12540] Forked 25956 +(25956) found +[12539] Forked 25957 +(25957) found +[12538] Forked 25958 +(25958) found +[12537] Forked 25959 +(25959) found +[12536] Forked 25960 +(25960) found +[12535] Forked 25961 +(25961) found +[12534] Forked 25962 +(25962) found +[12533] Forked 25963 +(25963) found +[12532] Forked 25964 +(25964) found +[12531] Forked 25965 +(25965) found +[12530] Forked 25966 +(25966) found +[12529] Forked 25967 +(25967) found +[12528] Forked 25968 +(25968) found +[12527] Forked 25969 +[12526] Forked 25970 +(25969) found +(25970) found +[12525] Forked 25971 +[12524] Forked 25972 +(25971) found +(25972) found +[12523] Forked 25973 +[12522] Forked 25974 +(25973) found +(25974) found +[12521] Forked 25975 +[12520] Forked 25976 +(25975) found +(25976) found +[12519] Forked 25977 +[12518] Forked 25978 +(25977) found +(25978) found +[12517] Forked 25979 +[12516] Forked 25980 +(25979) found +(25980) found +[12515] Forked 25981 +[12514] Forked 25982 +(25981) found +(25982) found +[12513] Forked 25983 +[12512] Forked 25984 +(25983) found +(25984) found +[12511] Forked 25985 +[12510] Forked 25986 +(25985) found +(25986) found +[12509] Forked 25987 +[12508] Forked 25988 +(25987) found +(25988) found +[12507] Forked 25989 +[12506] Forked 25990 +(25989) found +(25990) found +[12505] Forked 25991 +[12504] Forked 25992 +(25991) found +(25992) found +[12503] Forked 25993 +[12502] Forked 25994 +(25993) found +(25994) found +[12501] Forked 25995 +[12500] Forked 25996 +(25995) found +(25996) found +[12499] Forked 25997 +[12498] Forked 25998 +(25997) found +(25998) found +[12497] Forked 25999 +[12496] Forked 26000 +(25999) found +(26000) found +[12495] Forked 26001 +[12494] Forked 26002 +(26001) found +(26002) found +[12493] Forked 26003 +[12492] Forked 26004 +(26003) found +(26004) found +[12491] Forked 26005 +[12490] Forked 26006 +(26005) found +(26006) found +[12489] Forked 26007 +[12488] Forked 26008 +(26007) found +(26008) found +[12487] Forked 26009 +[12486] Forked 26010 +(26009) found +(26010) found +[12485] Forked 26011 +[12484] Forked 26012 +(26011) found +(26012) found +[12483] Forked 26013 +[12482] Forked 26014 +(26013) found +(26014) found +[12481] Forked 26015 +(26015) found +[12480] Forked 26016 +(26016) found +[12479] Forked 26017 +(26017) found +[12478] Forked 26018 +(26018) found +[12477] Forked 26019 +(26019) found +[12476] Forked 26020 +(26020) found +[12475] Forked 26021 +(26021) found +[12474] Forked 26022 +(26022) found +[12473] Forked 26023 +(26023) found +[12472] Forked 26024 +(26024) found +[12471] Forked 26025 +(26025) found +[12470] Forked 26026 +(26026) found +[12469] Forked 26027 +(26027) found +[12468] Forked 26028 +(26028) found +[12467] Forked 26029 +(26029) found +[12466] Forked 26030 +(26030) found +[12465] Forked 26031 +(26031) found +[12464] Forked 26032 +(26032) found +[12463] Forked 26033 +(26033) found +[12462] Forked 26034 +(26034) found +[12461] Forked 26035 +(26035) found +[12460] Forked 26036 +(26036) found +[12459] Forked 26037 +(26037) found +[12458] Forked 26038 +(26038) found +[12457] Forked 26039 +(26039) found +[12456] Forked 26040 +(26040) found +[12455] Forked 26041 +(26041) found +[12454] Forked 26042 +(26042) found +[12453] Forked 26043 +(26043) found +[12452] Forked 26044 +(26044) found +[12451] Forked 26045 +(26045) found +[12450] Forked 26046 +(26046) found +[12449] Forked 26047 +(26047) found +[12448] Forked 26048 +(26048) found +[12447] Forked 26049 +(26049) found +[12446] Forked 26050 +[12445] Forked 26051 +(26050) found +(26051) found +[12444] Forked 26052 +[12443] Forked 26053 +(26052) found +(26053) found +[12442] Forked 26054 +[12441] Forked 26055 +(26054) found +(26055) found +[12440] Forked 26056 +[12439] Forked 26057 +(26056) found +(26057) found +[12438] Forked 26058 +[12437] Forked 26059 +(26058) found +(26059) found +[12436] Forked 26060 +[12435] Forked 26061 +(26060) found +(26061) found +[12434] Forked 26062 +[12433] Forked 26063 +(26062) found +(26063) found +[12432] Forked 26064 +[12431] Forked 26065 +(26064) found +(26065) found +[12430] Forked 26066 +[12429] Forked 26067 +(26066) found +(26067) found +[12428] Forked 26068 +[12427] Forked 26069 +(26068) found +(26069) found +[12426] Forked 26070 +[12425] Forked 26071 +(26070) found +(26071) found +[12424] Forked 26072 +[12423] Forked 26073 +(26072) found +(26073) found +[12422] Forked 26074 +[12421] Forked 26075 +(26074) found +(26075) found +[12420] Forked 26076 +[12419] Forked 26077 +(26076) found +(26077) found +[12418] Forked 26078 +[12417] Forked 26079 +(26078) found +(26079) found +[12416] Forked 26080 +[12415] Forked 26081 +(26080) found +(26081) found +[12414] Forked 26082 +[12413] Forked 26083 +(26082) found +(26083) found +[12412] Forked 26084 +[12411] Forked 26085 +(26084) found +(26085) found +[12410] Forked 26086 +[12409] Forked 26087 +(26086) found +(26087) found +[12408] Forked 26088 +[12407] Forked 26089 +(26088) found +(26089) found +[12406] Forked 26090 +[12405] Forked 26091 +(26090) found +(26091) found +[12404] Forked 26092 +[12403] Forked 26093 +(26092) found +(26093) found +[12402] Forked 26094 +[12401] Forked 26095 +(26094) found +(26095) found +[12400] Forked 26096 +[12399] Forked 26097 +(26096) found +(26097) found +[12398] Forked 26098 +[12397] Forked 26099 +(26098) found +(26099) found +[12396] Forked 26100 +[12395] Forked 26101 +(26100) found +(26101) found +[12394] Forked 26102 +[12393] Forked 26103 +(26102) found +(26103) found +[12392] Forked 26104 +[12391] Forked 26105 +(26104) found +(26105) found +[12390] Forked 26106 +[12389] Forked 26107 +(26106) found +(26107) found +[12388] Forked 26108 +[12387] Forked 26109 +(26108) found +(26109) found +[12386] Forked 26110 +[12385] Forked 26111 +(26110) found +(26111) found +[12384] Forked 26112 +[12383] Forked 26113 +(26112) found +(26113) found +[12382] Forked 26114 +[12381] Forked 26115 +(26114) found +(26115) found +[12380] Forked 26116 +[12379] Forked 26117 +(26116) found +(26117) found +[12378] Forked 26118 +[12377] Forked 26119 +(26118) found +(26119) found +[12376] Forked 26120 +[12375] Forked 26121 +(26120) found +(26121) found +[12374] Forked 26122 +[12373] Forked 26123 +(26122) found +(26123) found +[12372] Forked 26124 +[12371] Forked 26125 +(26124) found +(26125) found +[12370] Forked 26126 +[12369] Forked 26127 +(26126) found +(26127) found +[12368] Forked 26128 +[12367] Forked 26129 +(26128) found +(26129) found +[12366] Forked 26130 +[12365] Forked 26131 +(26130) found +(26131) found +[12364] Forked 26132 +[12363] Forked 26133 +(26132) found +(26133) found +[12362] Forked 26134 +[12361] Forked 26135 +(26134) found +(26135) found +[12360] Forked 26136 +[12359] Forked 26137 +(26136) found +(26137) found +[12358] Forked 26138 +[12357] Forked 26139 +(26138) found +(26139) found +[12356] Forked 26140 +[12355] Forked 26141 +(26140) found +(26141) found +[12354] Forked 26142 +[12353] Forked 26143 +(26142) found +(26143) found +[12352] Forked 26144 +[12351] Forked 26145 +(26144) found +(26145) found +[12350] Forked 26146 +[12349] Forked 26147 +(26146) found +(26147) found +[12348] Forked 26148 +[12347] Forked 26149 +(26148) found +(26149) found +[12346] Forked 26150 +[12345] Forked 26151 +(26150) found +(26151) found +[12344] Forked 26152 +[12343] Forked 26153 +(26152) found +(26153) found +[12342] Forked 26154 +[12341] Forked 26155 +(26154) found +(26155) found +[12340] Forked 26156 +[12339] Forked 26157 +(26156) found +(26157) found +[12338] Forked 26158 +[12337] Forked 26159 +(26158) found +(26159) found +[12336] Forked 26160 +[12335] Forked 26161 +(26160) found +(26161) found +[12334] Forked 26162 +[12333] Forked 26163 +(26162) found +(26163) found +[12332] Forked 26164 +[12331] Forked 26165 +(26164) found +(26165) found +[12330] Forked 26166 +[12329] Forked 26167 +(26166) found +(26167) found +[12328] Forked 26168 +[12327] Forked 26169 +(26168) found +(26169) found +[12326] Forked 26170 +[12325] Forked 26171 +(26170) found +(26171) found +[12324] Forked 26172 +[12323] Forked 26173 +(26172) found +(26173) found +[12322] Forked 26174 +[12321] Forked 26175 +(26174) found +(26175) found +[12320] Forked 26176 +[12319] Forked 26177 +(26176) found +(26177) found +[12318] Forked 26178 +[12317] Forked 26179 +(26178) found +(26179) found +[12316] Forked 26180 +[12315] Forked 26181 +(26180) found +(26181) found +[12314] Forked 26182 +(26182) found +[12313] Forked 26183 +[12312] Forked 26184 +(26183) found +(26184) found +[12311] Forked 26185 +[12310] Forked 26186 +(26185) found +(26186) found +[12309] Forked 26187 +[12308] Forked 26188 +(26187) found +(26188) found +[12307] Forked 26189 +[12306] Forked 26190 +(26189) found +(26190) found +[12305] Forked 26191 +[12304] Forked 26192 +(26191) found +(26192) found +[12303] Forked 26193 +[12302] Forked 26194 +(26193) found +(26194) found +[12301] Forked 26195 +[12300] Forked 26196 +(26195) found +(26196) found +[12299] Forked 26197 +[12298] Forked 26198 +(26197) found +(26198) found +[12297] Forked 26199 +[12296] Forked 26200 +(26199) found +(26200) found +[12295] Forked 26201 +[12294] Forked 26202 +(26201) found +(26202) found +[12293] Forked 26203 +[12292] Forked 26204 +(26203) found +(26204) found +[12291] Forked 26205 +[12290] Forked 26206 +(26205) found +(26206) found +[12289] Forked 26207 +[12288] Forked 26208 +(26207) found +(26208) found +[12287] Forked 26209 +[12286] Forked 26210 +(26209) found +(26210) found +[12285] Forked 26211 +[12284] Forked 26212 +(26211) found +(26212) found +[12283] Forked 26213 +[12282] Forked 26214 +(26213) found +(26214) found +[12281] Forked 26215 +[12280] Forked 26216 +(26215) found +(26216) found +[12279] Forked 26217 +[12278] Forked 26218 +(26217) found +(26218) found +[12277] Forked 26219 +[12276] Forked 26220 +(26219) found +(26220) found +[12275] Forked 26221 +[12274] Forked 26222 +(26221) found +(26222) found +[12273] Forked 26223 +[12272] Forked 26224 +(26223) found +(26224) found +[12271] Forked 26225 +[12270] Forked 26226 +(26225) found +(26226) found +[12269] Forked 26227 +[12268] Forked 26228 +(26227) found +(26228) found +[12267] Forked 26229 +[12266] Forked 26230 +(26229) found +(26230) found +[12265] Forked 26231 +[12264] Forked 26232 +(26231) found +(26232) found +[12263] Forked 26233 +[12262] Forked 26234 +(26233) found +(26234) found +[12261] Forked 26235 +[12260] Forked 26236 +(26235) found +(26236) found +[12259] Forked 26237 +[12258] Forked 26238 +(26237) found +(26238) found +[12257] Forked 26239 +[12256] Forked 26240 +(26239) found +(26240) found +[12255] Forked 26241 +[12254] Forked 26242 +(26241) found +(26242) found +[12253] Forked 26243 +[12252] Forked 26244 +(26243) found +(26244) found +[12251] Forked 26245 +[12250] Forked 26246 +(26245) found +(26246) found +[12249] Forked 26247 +[12248] Forked 26248 +(26247) found +(26248) found +[12247] Forked 26249 +[12246] Forked 26250 +(26249) found +(26250) found +[12245] Forked 26251 +[12244] Forked 26252 +(26251) found +(26252) found +[12243] Forked 26253 +[12242] Forked 26254 +(26253) found +(26254) found +[12241] Forked 26255 +[12240] Forked 26256 +(26255) found +(26256) found +[12239] Forked 26257 +[12238] Forked 26258 +(26257) found +(26258) found +[12237] Forked 26259 +[12236] Forked 26260 +(26259) found +(26260) found +[12235] Forked 26261 +[12234] Forked 26262 +(26261) found +(26262) found +[12233] Forked 26263 +[12232] Forked 26264 +(26263) found +(26264) found +[12231] Forked 26265 +[12230] Forked 26266 +(26265) found +(26266) found +[12229] Forked 26267 +[12228] Forked 26268 +(26267) found +(26268) found +[12227] Forked 26269 +[12226] Forked 26270 +(26269) found +(26270) found +[12225] Forked 26271 +[12224] Forked 26272 +(26271) found +(26272) found +[12223] Forked 26273 +[12222] Forked 26274 +(26273) found +(26274) found +[12221] Forked 26275 +[12220] Forked 26276 +(26275) found +(26276) found +[12219] Forked 26277 +[12218] Forked 26278 +(26277) found +(26278) found +[12217] Forked 26279 +[12216] Forked 26280 +(26279) found +(26280) found +[12215] Forked 26281 +[12214] Forked 26282 +(26281) found +(26282) found +[12213] Forked 26283 +[12212] Forked 26284 +(26283) found +(26284) found +[12211] Forked 26285 +[12210] Forked 26286 +(26285) found +(26286) found +[12209] Forked 26287 +[12208] Forked 26288 +(26287) found +(26288) found +[12207] Forked 26289 +[12206] Forked 26290 +(26289) found +(26290) found +[12205] Forked 26291 +[12204] Forked 26292 +(26291) found +(26292) found +[12203] Forked 26293 +[12202] Forked 26294 +(26293) found +(26294) found +[12201] Forked 26295 +[12200] Forked 26296 +(26295) found +(26296) found +[12199] Forked 26297 +[12198] Forked 26298 +(26297) found +(26298) found +[12197] Forked 26299 +[12196] Forked 26300 +(26299) found +(26300) found +[12195] Forked 26301 +[12194] Forked 26302 +(26301) found +(26302) found +[12193] Forked 26303 +[12192] Forked 26304 +(26303) found +(26304) found +[12191] Forked 26305 +[12190] Forked 26306 +(26305) found +(26306) found +[12189] Forked 26307 +[12188] Forked 26308 +(26307) found +(26308) found +[12187] Forked 26309 +[12186] Forked 26310 +(26309) found +(26310) found +[12185] Forked 26311 +[12184] Forked 26312 +(26311) found +(26312) found +[12183] Forked 26313 +[12182] Forked 26314 +(26313) found +(26314) found +[12181] Forked 26315 +[12180] Forked 26316 +(26315) found +(26316) found +[12179] Forked 26317 +[12178] Forked 26318 +(26317) found +(26318) found +[12177] Forked 26319 +[12176] Forked 26320 +(26319) found +(26320) found +[12175] Forked 26321 +[12174] Forked 26322 +(26321) found +(26322) found +[12173] Forked 26323 +[12172] Forked 26324 +(26323) found +(26324) found +[12171] Forked 26325 +[12170] Forked 26326 +(26325) found +(26326) found +[12169] Forked 26327 +[12168] Forked 26328 +(26327) found +(26328) found +[12167] Forked 26329 +[12166] Forked 26330 +(26329) found +(26330) found +[12165] Forked 26331 +[12164] Forked 26332 +(26331) found +(26332) found +[12163] Forked 26333 +[12162] Forked 26334 +(26333) found +(26334) found +[12161] Forked 26335 +[12160] Forked 26336 +(26335) found +(26336) found +[12159] Forked 26337 +[12158] Forked 26338 +(26337) found +(26338) found +[12157] Forked 26339 +[12156] Forked 26340 +(26339) found +(26340) found +[12155] Forked 26341 +[12154] Forked 26342 +(26341) found +(26342) found +[12153] Forked 26343 +[12152] Forked 26344 +(26343) found +(26344) found +[12151] Forked 26345 +[12150] Forked 26346 +(26345) found +(26346) found +[12149] Forked 26347 +[12148] Forked 26348 +(26347) found +(26348) found +[12147] Forked 26349 +[12146] Forked 26350 +(26349) found +(26350) found +[12145] Forked 26351 +[12144] Forked 26352 +(26351) found +(26352) found +[12143] Forked 26353 +[12142] Forked 26354 +(26353) found +(26354) found +[12141] Forked 26355 +[12140] Forked 26356 +(26355) found +(26356) found +[12139] Forked 26357 +[12138] Forked 26358 +(26357) found +(26358) found +[12137] Forked 26359 +[12136] Forked 26360 +(26359) found +(26360) found +[12135] Forked 26361 +[12134] Forked 26362 +(26361) found +(26362) found +[12133] Forked 26363 +[12132] Forked 26364 +(26363) found +(26364) found +[12131] Forked 26365 +[12130] Forked 26366 +(26365) found +(26366) found +[12129] Forked 26367 +(26367) found +[12128] Forked 26368 +(26368) found +[12127] Forked 26369 +(26369) found +[12126] Forked 26370 +(26370) found +[12125] Forked 26371 +(26371) found +[12124] Forked 26372 +(26372) found +[12123] Forked 26373 +(26373) found +[12122] Forked 26374 +(26374) found +[12121] Forked 26375 +(26375) found +[12120] Forked 26376 +(26376) found +[12119] Forked 26377 +(26377) found +[12118] Forked 26378 +(26378) found +[12117] Forked 26379 +(26379) found +[12116] Forked 26380 +(26380) found +[12115] Forked 26381 +(26381) found +[12114] Forked 26382 +(26382) found +[12113] Forked 26383 +(26383) found +[12112] Forked 26384 +(26384) found +[12111] Forked 26385 +(26385) found +[12110] Forked 26386 +(26386) found +[12109] Forked 26387 +(26387) found +[12108] Forked 26388 +(26388) found +[12107] Forked 26389 +(26389) found +[12106] Forked 26390 +(26390) found +[12105] Forked 26391 +(26391) found +[12104] Forked 26392 +(26392) found +[12103] Forked 26393 +(26393) found +[12102] Forked 26394 +(26394) found +[12101] Forked 26395 +(26395) found +[12100] Forked 26396 +(26396) found +[12099] Forked 26397 +(26397) found +[12098] Forked 26398 +(26398) found +[12097] Forked 26399 +(26399) found +[12096] Forked 26400 +(26400) found +[12095] Forked 26401 +[12094] Forked 26402 +(26401) found +(26402) found +[12093] Forked 26403 +[12092] Forked 26404 +(26403) found +(26404) found +[12091] Forked 26405 +[12090] Forked 26406 +(26405) found +(26406) found +[12089] Forked 26407 +[12088] Forked 26408 +(26407) found +(26408) found +[12087] Forked 26409 +[12086] Forked 26410 +(26409) found +(26410) found +[12085] Forked 26411 +[12084] Forked 26412 +(26411) found +(26412) found +[12083] Forked 26413 +[12082] Forked 26414 +(26413) found +(26414) found +[12081] Forked 26415 +[12080] Forked 26416 +(26415) found +(26416) found +[12079] Forked 26417 +[12078] Forked 26418 +(26417) found +(26418) found +[12077] Forked 26419 +[12076] Forked 26420 +(26419) found +(26420) found +[12075] Forked 26421 +[12074] Forked 26422 +(26421) found +(26422) found +[12073] Forked 26423 +[12072] Forked 26424 +(26423) found +(26424) found +[12071] Forked 26425 +[12070] Forked 26426 +(26425) found +(26426) found +[12069] Forked 26427 +[12068] Forked 26428 +(26427) found +(26428) found +[12067] Forked 26429 +[12066] Forked 26430 +(26429) found +(26430) found +[12065] Forked 26431 +[12064] Forked 26432 +(26431) found +(26432) found +[12063] Forked 26433 +[12062] Forked 26434 +(26433) found +(26434) found +[12061] Forked 26435 +[12060] Forked 26436 +(26435) found +(26436) found +[12059] Forked 26437 +[12058] Forked 26438 +(26437) found +(26438) found +[12057] Forked 26439 +[12056] Forked 26440 +(26439) found +(26440) found +[12055] Forked 26441 +[12054] Forked 26442 +(26441) found +(26442) found +[12053] Forked 26443 +[12052] Forked 26444 +(26443) found +(26444) found +[12051] Forked 26445 +[12050] Forked 26446 +(26445) found +(26446) found +[12049] Forked 26447 +[12048] Forked 26448 +(26447) found +(26448) found +[12047] Forked 26449 +[12046] Forked 26450 +(26449) found +(26450) found +[12045] Forked 26451 +[12044] Forked 26452 +(26451) found +(26452) found +[12043] Forked 26453 +[12042] Forked 26454 +(26453) found +(26454) found +[12041] Forked 26455 +[12040] Forked 26456 +(26455) found +(26456) found +[12039] Forked 26457 +[12038] Forked 26458 +(26457) found +(26458) found +[12037] Forked 26459 +[12036] Forked 26460 +(26459) found +(26460) found +[12035] Forked 26461 +[12034] Forked 26462 +(26461) found +(26462) found +[12033] Forked 26463 +[12032] Forked 26464 +(26463) found +(26464) found +[12031] Forked 26465 +[12030] Forked 26466 +(26465) found +(26466) found +[12029] Forked 26467 +[12028] Forked 26468 +(26467) found +(26468) found +[12027] Forked 26469 +[12026] Forked 26470 +(26469) found +(26470) found +[12025] Forked 26471 +[12024] Forked 26472 +(26471) found +(26472) found +[12023] Forked 26473 +[12022] Forked 26474 +(26473) found +(26474) found +[12021] Forked 26475 +[12020] Forked 26476 +(26475) found +(26476) found +[12019] Forked 26477 +[12018] Forked 26478 +(26477) found +(26478) found +[12017] Forked 26479 +[12016] Forked 26480 +(26479) found +(26480) found +[12015] Forked 26481 +[12014] Forked 26482 +(26481) found +(26482) found +[12013] Forked 26483 +[12012] Forked 26484 +(26483) found +(26484) found +[12011] Forked 26485 +[12010] Forked 26486 +(26485) found +(26486) found +[12009] Forked 26487 +[12008] Forked 26488 +(26487) found +(26488) found +[12007] Forked 26489 +[12006] Forked 26490 +(26489) found +(26490) found +[12005] Forked 26491 +[12004] Forked 26492 +(26491) found +(26492) found +[12003] Forked 26493 +[12002] Forked 26494 +(26493) found +(26494) found +[12001] Forked 26495 +[12000] Forked 26496 +(26495) found +(26496) found +[11999] Forked 26497 +[11998] Forked 26498 +(26497) found +(26498) found +[11997] Forked 26499 +[11996] Forked 26500 +(26499) found +(26500) found +[11995] Forked 26501 +[11994] Forked 26502 +(26501) found +(26502) found +[11993] Forked 26503 +[11992] Forked 26504 +(26503) found +(26504) found +[11991] Forked 26505 +[11990] Forked 26506 +(26505) found +(26506) found +[11989] Forked 26507 +[11988] Forked 26508 +(26507) found +(26508) found +[11987] Forked 26509 +[11986] Forked 26510 +(26509) found +(26510) found +[11985] Forked 26511 +[11984] Forked 26512 +(26511) found +(26512) found +[11983] Forked 26513 +[11982] Forked 26514 +(26513) found +(26514) found +[11981] Forked 26515 +[11980] Forked 26516 +(26515) found +(26516) found +[11979] Forked 26517 +[11978] Forked 26518 +(26517) found +(26518) found +[11977] Forked 26519 +[11976] Forked 26520 +(26519) found +(26520) found +[11975] Forked 26521 +[11974] Forked 26522 +(26521) found +(26522) found +[11973] Forked 26523 +[11972] Forked 26524 +(26523) found +(26524) found +[11971] Forked 26525 +[11970] Forked 26526 +(26525) found +(26526) found +[11969] Forked 26527 +[11968] Forked 26528 +(26527) found +(26528) found +[11967] Forked 26529 +[11966] Forked 26530 +(26529) found +(26530) found +[11965] Forked 26531 +[11964] Forked 26532 +(26531) found +(26532) found +[11963] Forked 26533 +[11962] Forked 26534 +(26533) found +(26534) found +[11961] Forked 26535 +[11960] Forked 26536 +(26535) found +(26536) found +[11959] Forked 26537 +(26537) found +[11958] Forked 26538 +(26538) found +[11957] Forked 26539 +(26539) found +[11956] Forked 26540 +(26540) found +[11955] Forked 26541 +(26541) found +[11954] Forked 26542 +(26542) found +[11953] Forked 26543 +(26543) found +[11952] Forked 26544 +(26544) found +[11951] Forked 26545 +(26545) found +[11950] Forked 26546 +(26546) found +[11949] Forked 26547 +(26547) found +[11948] Forked 26548 +(26548) found +[11947] Forked 26549 +(26549) found +[11946] Forked 26550 +(26550) found +[11945] Forked 26551 +(26551) found +[11944] Forked 26552 +(26552) found +[11943] Forked 26553 +(26553) found +[11942] Forked 26554 +(26554) found +[11941] Forked 26555 +(26555) found +[11940] Forked 26556 +(26556) found +[11939] Forked 26557 +(26557) found +[11938] Forked 26558 +(26558) found +[11937] Forked 26559 +(26559) found +[11936] Forked 26560 +(26560) found +[11935] Forked 26561 +(26561) found +[11934] Forked 26562 +(26562) found +[11933] Forked 26563 +(26563) found +[11932] Forked 26564 +(26564) found +[11931] Forked 26565 +(26565) found +[11930] Forked 26566 +(26566) found +[11929] Forked 26567 +(26567) found +[11928] Forked 26568 +(26568) found +[11927] Forked 26569 +(26569) found +[11926] Forked 26570 +(26570) found +[11925] Forked 26571 +(26571) found +[11924] Forked 26572 +(26572) found +[11923] Forked 26573 +(26573) found +[11922] Forked 26574 +(26574) found +[11921] Forked 26575 +(26575) found +[11920] Forked 26576 +(26576) found +[11919] Forked 26577 +(26577) found +[11918] Forked 26578 +(26578) found +[11917] Forked 26579 +(26579) found +[11916] Forked 26580 +(26580) found +[11915] Forked 26581 +(26581) found +[11914] Forked 26582 +(26582) found +[11913] Forked 26583 +(26583) found +[11912] Forked 26584 +(26584) found +[11911] Forked 26585 +(26585) found +[11910] Forked 26586 +(26586) found +[11909] Forked 26587 +(26587) found +[11908] Forked 26588 +(26588) found +[11907] Forked 26589 +(26589) found +[11906] Forked 26590 +(26590) found +[11905] Forked 26591 +(26591) found +[11904] Forked 26592 +(26592) found +[11903] Forked 26593 +(26593) found +[11902] Forked 26594 +(26594) found +[11901] Forked 26595 +(26595) found +[11900] Forked 26596 +(26596) found +[11899] Forked 26597 +(26597) found +[11898] Forked 26598 +(26598) found +[11897] Forked 26599 +(26599) found +[11896] Forked 26600 +(26600) found +[11895] Forked 26601 +(26601) found +[11894] Forked 26602 +(26602) found +[11893] Forked 26603 +(26603) found +[11892] Forked 26604 +(26604) found +[11891] Forked 26605 +(26605) found +[11890] Forked 26606 +(26606) found +[11889] Forked 26607 +(26607) found +[11888] Forked 26608 +(26608) found +[11887] Forked 26609 +[11886] Forked 26610 +(26609) found +(26610) found +[11885] Forked 26611 +[11884] Forked 26612 +(26611) found +(26612) found +[11883] Forked 26613 +[11882] Forked 26614 +(26613) found +(26614) found +[11881] Forked 26615 +[11880] Forked 26616 +(26615) found +(26616) found +[11879] Forked 26617 +[11878] Forked 26618 +(26617) found +(26618) found +[11877] Forked 26619 +[11876] Forked 26620 +(26619) found +(26620) found +[11875] Forked 26621 +[11874] Forked 26622 +(26621) found +(26622) found +[11873] Forked 26623 +[11872] Forked 26624 +(26623) found +(26624) found +[11871] Forked 26625 +[11870] Forked 26626 +(26625) found +(26626) found +[11869] Forked 26627 +[11868] Forked 26628 +(26627) found +(26628) found +[11867] Forked 26629 +[11866] Forked 26630 +(26629) found +(26630) found +[11865] Forked 26631 +[11864] Forked 26632 +(26631) found +(26632) found +[11863] Forked 26633 +[11862] Forked 26634 +(26633) found +(26634) found +[11861] Forked 26635 +[11860] Forked 26636 +(26635) found +(26636) found +[11859] Forked 26637 +[11858] Forked 26638 +(26637) found +(26638) found +[11857] Forked 26639 +[11856] Forked 26640 +(26639) found +(26640) found +[11855] Forked 26641 +[11854] Forked 26642 +(26641) found +(26642) found +[11853] Forked 26643 +[11852] Forked 26644 +(26643) found +(26644) found +[11851] Forked 26645 +[11850] Forked 26646 +(26645) found +(26646) found +[11849] Forked 26647 +[11848] Forked 26648 +(26647) found +(26648) found +[11847] Forked 26649 +[11846] Forked 26650 +(26649) found +(26650) found +[11845] Forked 26651 +[11844] Forked 26652 +(26651) found +(26652) found +[11843] Forked 26653 +(26653) found +[11842] Forked 26654 +(26654) found +[11841] Forked 26655 +(26655) found +[11840] Forked 26656 +(26656) found +[11839] Forked 26657 +(26657) found +[11838] Forked 26658 +(26658) found +[11837] Forked 26659 +(26659) found +[11836] Forked 26660 +(26660) found +[11835] Forked 26661 +(26661) found +[11834] Forked 26662 +(26662) found +[11833] Forked 26663 +(26663) found +[11832] Forked 26664 +(26664) found +[11831] Forked 26665 +(26665) found +[11830] Forked 26666 +(26666) found +[11829] Forked 26667 +(26667) found +[11828] Forked 26668 +(26668) found +[11827] Forked 26669 +(26669) found +[11826] Forked 26670 +(26670) found +[11825] Forked 26671 +(26671) found +[11824] Forked 26672 +(26672) found +[11823] Forked 26673 +(26673) found +[11822] Forked 26674 +(26674) found +[11821] Forked 26675 +(26675) found +[11820] Forked 26676 +(26676) found +[11819] Forked 26677 +(26677) found +[11818] Forked 26678 +(26678) found +[11817] Forked 26679 +(26679) found +[11816] Forked 26680 +(26680) found +[11815] Forked 26681 +(26681) found +[11814] Forked 26682 +(26682) found +[11813] Forked 26683 +(26683) found +[11812] Forked 26684 +(26684) found +[11811] Forked 26685 +(26685) found +[11810] Forked 26686 +(26686) found +[11809] Forked 26687 +(26687) found +[11808] Forked 26688 +(26688) found +[11807] Forked 26689 +[11806] Forked 26690 +(26689) found +(26690) found +[11805] Forked 26691 +[11804] Forked 26692 +(26691) found +(26692) found +[11803] Forked 26693 +[11802] Forked 26694 +(26693) found +(26694) found +[11801] Forked 26695 +[11800] Forked 26696 +(26695) found +(26696) found +[11799] Forked 26697 +[11798] Forked 26698 +(26697) found +(26698) found +[11797] Forked 26699 +[11796] Forked 26700 +(26699) found +(26700) found +[11795] Forked 26701 +[11794] Forked 26702 +(26701) found +(26702) found +[11793] Forked 26703 +[11792] Forked 26704 +(26703) found +(26704) found +[11791] Forked 26705 +[11790] Forked 26706 +(26705) found +(26706) found +[11789] Forked 26707 +[11788] Forked 26708 +(26707) found +(26708) found +[11787] Forked 26709 +[11786] Forked 26710 +(26709) found +(26710) found +[11785] Forked 26711 +[11784] Forked 26712 +(26711) found +(26712) found +[11783] Forked 26713 +[11782] Forked 26714 +(26713) found +(26714) found +[11781] Forked 26715 +[11780] Forked 26716 +(26715) found +(26716) found +[11779] Forked 26717 +[11778] Forked 26718 +(26717) found +(26718) found +[11777] Forked 26719 +[11776] Forked 26720 +(26719) found +(26720) found +[11775] Forked 26721 +[11774] Forked 26722 +(26721) found +(26722) found +[11773] Forked 26723 +[11772] Forked 26724 +(26723) found +(26724) found +[11771] Forked 26725 +[11770] Forked 26726 +(26725) found +(26726) found +[11769] Forked 26727 +[11768] Forked 26728 +(26727) found +(26728) found +[11767] Forked 26729 +[11766] Forked 26730 +(26729) found +(26730) found +[11765] Forked 26731 +[11764] Forked 26732 +(26731) found +(26732) found +[11763] Forked 26733 +(26733) found +[11762] Forked 26734 +(26734) found +[11761] Forked 26735 +(26735) found +[11760] Forked 26736 +(26736) found +[11759] Forked 26737 +(26737) found +[11758] Forked 26738 +(26738) found +[11757] Forked 26739 +(26739) found +[11756] Forked 26740 +(26740) found +[11755] Forked 26741 +(26741) found +[11754] Forked 26742 +(26742) found +[11753] Forked 26743 +(26743) found +[11752] Forked 26744 +(26744) found +[11751] Forked 26745 +(26745) found +[11750] Forked 26746 +(26746) found +[11749] Forked 26747 +(26747) found +[11748] Forked 26748 +(26748) found +[11747] Forked 26749 +(26749) found +[11746] Forked 26750 +(26750) found +[11745] Forked 26751 +(26751) found +[11744] Forked 26752 +(26752) found +[11743] Forked 26753 +(26753) found +[11742] Forked 26754 +(26754) found +[11741] Forked 26755 +(26755) found +[11740] Forked 26756 +(26756) found +[11739] Forked 26757 +(26757) found +[11738] Forked 26758 +(26758) found +[11737] Forked 26759 +(26759) found +[11736] Forked 26760 +(26760) found +[11735] Forked 26761 +(26761) found +[11734] Forked 26762 +(26762) found +[11733] Forked 26763 +(26763) found +[11732] Forked 26764 +(26764) found +[11731] Forked 26765 +(26765) found +[11730] Forked 26766 +(26766) found +[11729] Forked 26767 +(26767) found +[11728] Forked 26768 +(26768) found +[11727] Forked 26769 +[11726] Forked 26770 +(26769) found +(26770) found +[11725] Forked 26771 +[11724] Forked 26772 +(26771) found +(26772) found +[11723] Forked 26773 +(26773) found +[11722] Forked 26774 +[11721] Forked 26775 +(26774) found +(26775) found +[11720] Forked 26776 +[11719] Forked 26777 +(26776) found +(26777) found +[11718] Forked 26778 +[11717] Forked 26779 +(26778) found +(26779) found +[11716] Forked 26780 +[11715] Forked 26781 +(26780) found +(26781) found +[11714] Forked 26782 +[11713] Forked 26783 +(26782) found +(26783) found +[11712] Forked 26784 +[11711] Forked 26785 +(26784) found +(26785) found +[11710] Forked 26786 +[11709] Forked 26787 +(26786) found +(26787) found +[11708] Forked 26788 +[11707] Forked 26789 +(26788) found +(26789) found +[11706] Forked 26790 +[11705] Forked 26791 +(26790) found +(26791) found +[11704] Forked 26792 +[11703] Forked 26793 +(26792) found +(26793) found +[11702] Forked 26794 +[11701] Forked 26795 +(26794) found +(26795) found +[11700] Forked 26796 +[11699] Forked 26797 +(26796) found +(26797) found +[11698] Forked 26798 +[11697] Forked 26799 +(26798) found +(26799) found +[11696] Forked 26800 +[11695] Forked 26801 +(26800) found +(26801) found +[11694] Forked 26802 +[11693] Forked 26803 +(26802) found +(26803) found +[11692] Forked 26804 +[11691] Forked 26805 +(26804) found +(26805) found +[11690] Forked 26806 +[11689] Forked 26807 +(26806) found +(26807) found +[11688] Forked 26808 +[11687] Forked 26809 +(26808) found +(26809) found +[11686] Forked 26810 +[11685] Forked 26811 +(26810) found +(26811) found +[11684] Forked 26812 +(26812) found +[11683] Forked 26813 +(26813) found +[11682] Forked 26814 +(26814) found +[11681] Forked 26815 +(26815) found +[11680] Forked 26816 +(26816) found +[11679] Forked 26817 +(26817) found +[11678] Forked 26818 +(26818) found +[11677] Forked 26819 +(26819) found +[11676] Forked 26820 +(26820) found +[11675] Forked 26822 +(26822) found +[11674] Forked 26823 +(26823) found +[11673] Forked 26824 +(26824) found +[11672] Forked 26825 +(26825) found +[11671] Forked 26826 +(26826) found +[11670] Forked 26827 +(26827) found +[11669] Forked 26828 +(26828) found +[11668] Forked 26829 +(26829) found +[11667] Forked 26830 +(26830) found +[11666] Forked 26831 +(26831) found +[11665] Forked 26832 +(26832) found +[11664] Forked 26833 +(26833) found +[11663] Forked 26834 +(26834) found +[11662] Forked 26835 +(26835) found +[11661] Forked 26836 +(26836) found +[11660] Forked 26837 +(26837) found +[11659] Forked 26838 +(26838) found +[11658] Forked 26839 +(26839) found +[11657] Forked 26840 +(26840) found +[11656] Forked 26841 +(26841) found +[11655] Forked 26842 +(26842) found +[11654] Forked 26843 +(26843) found +[11653] Forked 26844 +(26844) found +[11652] Forked 26845 +(26845) found +[11651] Forked 26846 +(26846) found +[11650] Forked 26847 +(26847) found +[11649] Forked 26848 +(26848) found +[11648] Forked 26849 +[11647] Forked 26850 +(26849) found +(26850) found +[11646] Forked 26851 +[11645] Forked 26852 +(26851) found +(26852) found +[11644] Forked 26853 +[11643] Forked 26854 +(26853) found +(26854) found +[11642] Forked 26855 +[11641] Forked 26856 +(26855) found +(26856) found +[11640] Forked 26857 +[11639] Forked 26858 +(26857) found +(26858) found +[11638] Forked 26859 +[11637] Forked 26860 +(26859) found +(26860) found +[11636] Forked 26861 +[11635] Forked 26862 +(26861) found +(26862) found +[11634] Forked 26863 +[11633] Forked 26864 +(26863) found +(26864) found +[11632] Forked 26865 +[11631] Forked 26866 +(26865) found +(26866) found +[11630] Forked 26867 +[11629] Forked 26868 +(26867) found +(26868) found +[11628] Forked 26869 +[11627] Forked 26870 +(26869) found +(26870) found +[11626] Forked 26871 +[11625] Forked 26872 +(26871) found +(26872) found +[11624] Forked 26873 +[11623] Forked 26874 +(26873) found +(26874) found +[11622] Forked 26875 +[11621] Forked 26876 +(26875) found +(26876) found +[11620] Forked 26877 +[11619] Forked 26878 +(26877) found +(26878) found +[11618] Forked 26879 +[11617] Forked 26880 +(26879) found +(26880) found +[11616] Forked 26881 +[11615] Forked 26882 +(26881) found +(26882) found +[11614] Forked 26883 +[11613] Forked 26884 +(26883) found +(26884) found +[11612] Forked 26885 +[11611] Forked 26886 +(26885) found +(26886) found +[11610] Forked 26887 +[11609] Forked 26888 +(26887) found +(26888) found +[11608] Forked 26889 +[11607] Forked 26890 +(26889) found +(26890) found +[11606] Forked 26891 +[11605] Forked 26892 +(26891) found +(26892) found +[11604] Forked 26893 +(26893) found +[11603] Forked 26894 +(26894) found +[11602] Forked 26895 +(26895) found +[11601] Forked 26896 +(26896) found +[11600] Forked 26897 +(26897) found +[11599] Forked 26898 +(26898) found +[11598] Forked 26899 +(26899) found +[11597] Forked 26900 +(26900) found +[11596] Forked 26901 +(26901) found +[11595] Forked 26902 +(26902) found +[11594] Forked 26903 +(26903) found +[11593] Forked 26904 +(26904) found +[11592] Forked 26905 +(26905) found +[11591] Forked 26906 +(26906) found +[11590] Forked 26907 +(26907) found +[11589] Forked 26908 +(26908) found +[11588] Forked 26909 +(26909) found +[11587] Forked 26910 +(26910) found +[11586] Forked 26911 +(26911) found +[11585] Forked 26912 +(26912) found +[11584] Forked 26913 +(26913) found +[11583] Forked 26914 +(26914) found +[11582] Forked 26915 +(26915) found +[11581] Forked 26916 +(26916) found +[11580] Forked 26917 +(26917) found +[11579] Forked 26918 +(26918) found +[11578] Forked 26919 +(26919) found +[11577] Forked 26920 +(26920) found +[11576] Forked 26921 +(26921) found +[11575] Forked 26922 +(26922) found +[11574] Forked 26923 +(26923) found +[11573] Forked 26924 +(26924) found +[11572] Forked 26925 +(26925) found +[11571] Forked 26926 +(26926) found +[11570] Forked 26927 +(26927) found +[11569] Forked 26928 +(26928) found +[11568] Forked 26929 +(26929) found +[11567] Forked 26930 +[11566] Forked 26931 +(26930) found +(26931) found +[11565] Forked 26932 +[11564] Forked 26933 +(26932) found +(26933) found +[11563] Forked 26934 +[11562] Forked 26935 +(26934) found +(26935) found +[11561] Forked 26936 +[11560] Forked 26937 +(26936) found +(26937) found +[11559] Forked 26938 +[11558] Forked 26939 +(26938) found +(26939) found +[11557] Forked 26940 +[11556] Forked 26941 +(26940) found +(26941) found +[11555] Forked 26942 +[11554] Forked 26943 +(26942) found +(26943) found +[11553] Forked 26944 +[11552] Forked 26945 +(26944) found +(26945) found +[11551] Forked 26946 +[11550] Forked 26947 +(26946) found +(26947) found +[11549] Forked 26948 +[11548] Forked 26949 +(26948) found +(26949) found +[11547] Forked 26950 +[11546] Forked 26951 +(26950) found +(26951) found +[11545] Forked 26952 +[11544] Forked 26953 +(26952) found +(26953) found +[11543] Forked 26954 +[11542] Forked 26955 +(26954) found +(26955) found +[11541] Forked 26956 +[11540] Forked 26957 +(26957) found +(26956) found +[11539] Forked 26958 +(26958) found +[11538] Forked 26959 +(26959) found +[11537] Forked 26960 +(26960) found +[11536] Forked 26961 +(26961) found +[11535] Forked 26962 +(26962) found +[11534] Forked 26963 +[11533] Forked 26964 +(26963) found +(26964) found +[11532] Forked 26965 +[11531] Forked 26966 +(26965) found +(26966) found +[11530] Forked 26967 +[11529] Forked 26968 +(26967) found +(26968) found +[11528] Forked 26969 +[11527] Forked 26970 +(26969) found +(26970) found +[11526] Forked 26971 +[11525] Forked 26972 +(26971) found +(26972) found +[11524] Forked 26973 +[11523] Forked 26974 +(26973) found +(26974) found +[11522] Forked 26975 +[11521] Forked 26976 +(26975) found +(26976) found +[11520] Forked 26977 +[11519] Forked 26978 +(26977) found +(26978) found +[11518] Forked 26979 +[11517] Forked 26980 +(26979) found +(26980) found +[11516] Forked 26981 +[11515] Forked 26982 +(26981) found +(26982) found +[11514] Forked 26983 +[11513] Forked 26984 +(26983) found +(26984) found +[11512] Forked 26985 +[11511] Forked 26986 +(26985) found +(26986) found +[11510] Forked 26987 +[11509] Forked 26988 +(26987) found +(26988) found +[11508] Forked 26989 +[11507] Forked 26990 +(26989) found +(26990) found +[11506] Forked 26991 +[11505] Forked 26992 +(26991) found +(26992) found +[11504] Forked 26993 +[11503] Forked 26994 +(26993) found +(26994) found +[11502] Forked 26995 +[11501] Forked 26996 +(26995) found +(26996) found +[11500] Forked 26997 +[11499] Forked 26998 +(26997) found +(26998) found +[11498] Forked 26999 +[11497] Forked 27000 +(26999) found +(27000) found +[11496] Forked 27001 +[11495] Forked 27002 +(27001) found +(27002) found +[11494] Forked 27003 +[11493] Forked 27004 +(27003) found +(27004) found +[11492] Forked 27005 +[11491] Forked 27006 +(27005) found +(27006) found +[11490] Forked 27007 +[11489] Forked 27008 +(27007) found +(27008) found +[11488] Forked 27009 +[11487] Forked 27010 +(27009) found +(27010) found +[11486] Forked 27011 +[11485] Forked 27012 +(27011) found +(27012) found +[11484] Forked 27013 +[11483] Forked 27014 +(27013) found +(27014) found +[11482] Forked 27015 +(27015) found +[11481] Forked 27016 +(27016) found +[11480] Forked 27017 +(27017) found +[11479] Forked 27018 +(27018) found +[11478] Forked 27019 +(27019) found +[11477] Forked 27020 +(27020) found +[11476] Forked 27021 +(27021) found +[11475] Forked 27022 +(27022) found +[11474] Forked 27023 +(27023) found +[11473] Forked 27024 +(27024) found +[11472] Forked 27025 +(27025) found +[11471] Forked 27026 +(27026) found +[11470] Forked 27027 +(27027) found +[11469] Forked 27028 +(27028) found +[11468] Forked 27029 +(27029) found +[11467] Forked 27030 +(27030) found +[11466] Forked 27031 +(27031) found +[11465] Forked 27032 +(27032) found +[11464] Forked 27033 +(27033) found +[11463] Forked 27034 +(27034) found +[11462] Forked 27035 +(27035) found +[11461] Forked 27036 +(27036) found +[11460] Forked 27037 +(27037) found +[11459] Forked 27038 +(27038) found +[11458] Forked 27039 +(27039) found +[11457] Forked 27040 +(27040) found +[11456] Forked 27041 +(27041) found +[11455] Forked 27042 +(27042) found +[11454] Forked 27043 +(27043) found +[11453] Forked 27044 +(27044) found +[11452] Forked 27045 +(27045) found +[11451] Forked 27046 +(27046) found +[11450] Forked 27047 +(27047) found +[11449] Forked 27048 +(27048) found +[11448] Forked 27049 +[11447] Forked 27050 +(27049) found +(27050) found +[11446] Forked 27051 +[11445] Forked 27052 +(27051) found +(27052) found +[11444] Forked 27053 +[11443] Forked 27054 +(27053) found +(27054) found +[11442] Forked 27055 +[11441] Forked 27056 +(27055) found +(27056) found +[11440] Forked 27057 +[11439] Forked 27058 +(27057) found +(27058) found +[11438] Forked 27059 +[11437] Forked 27060 +(27059) found +(27060) found +[11436] Forked 27061 +[11435] Forked 27062 +(27061) found +(27062) found +[11434] Forked 27063 +[11433] Forked 27064 +(27063) found +(27064) found +[11432] Forked 27065 +[11431] Forked 27066 +(27065) found +(27066) found +[11430] Forked 27067 +[11429] Forked 27068 +(27067) found +(27068) found +[11428] Forked 27069 +[11427] Forked 27070 +(27069) found +(27070) found +[11426] Forked 27071 +[11425] Forked 27072 +(27071) found +(27072) found +[11424] Forked 27073 +[11423] Forked 27074 +(27073) found +(27074) found +[11422] Forked 27075 +[11421] Forked 27076 +(27075) found +(27076) found +[11420] Forked 27077 +[11419] Forked 27078 +(27078) found +(27077) found +[11418] Forked 27079 +(27079) found +[11417] Forked 27080 +(27080) found +[11416] Forked 27081 +(27081) found +[11415] Forked 27082 +(27082) found +[11414] Forked 27083 +(27083) found +[11413] Forked 27084 +(27084) found +[11412] Forked 27085 +(27085) found +[11411] Forked 27086 +(27086) found +[11410] Forked 27087 +(27087) found +[11409] Forked 27088 +(27088) found +[11408] Forked 27089 +(27089) found +[11407] Forked 27090 +(27090) found +[11406] Forked 27091 +(27091) found +[11405] Forked 27092 +(27092) found +[11404] Forked 27093 +(27093) found +[11403] Forked 27094 +(27094) found +[11402] Forked 27095 +(27095) found +[11401] Forked 27096 +(27096) found +[11400] Forked 27097 +(27097) found +[11399] Forked 27098 +(27098) found +[11398] Forked 27099 +(27099) found +[11397] Forked 27100 +(27100) found +[11396] Forked 27101 +(27101) found +[11395] Forked 27102 +(27102) found +[11394] Forked 27103 +(27103) found +[11393] Forked 27104 +(27104) found +[11392] Forked 27105 +(27105) found +[11391] Forked 27106 +(27106) found +[11390] Forked 27107 +(27107) found +[11389] Forked 27108 +(27108) found +[11388] Forked 27109 +(27109) found +[11387] Forked 27110 +(27110) found +[11386] Forked 27111 +(27111) found +[11385] Forked 27112 +(27112) found +[11384] Forked 27113 +(27113) found +[11383] Forked 27114 +(27114) found +[11382] Forked 27115 +(27115) found +[11381] Forked 27116 +(27116) found +[11380] Forked 27117 +(27117) found +[11379] Forked 27118 +(27118) found +[11378] Forked 27119 +(27119) found +[11377] Forked 27120 +(27120) found +[11376] Forked 27121 +(27121) found +[11375] Forked 27122 +(27122) found +[11374] Forked 27123 +(27123) found +[11373] Forked 27124 +(27124) found +[11372] Forked 27125 +(27125) found +[11371] Forked 27126 +[11370] Forked 27127 +(27126) found +(27127) found +[11369] Forked 27128 +[11368] Forked 27129 +(27128) found +(27129) found +[11367] Forked 27130 +[11366] Forked 27131 +(27130) found +(27131) found +[11365] Forked 27132 +[11364] Forked 27133 +(27132) found +(27133) found +[11363] Forked 27134 +[11362] Forked 27135 +(27134) found +(27135) found +[11361] Forked 27136 +[11360] Forked 27137 +(27136) found +(27137) found +[11359] Forked 27138 +[11358] Forked 27139 +(27138) found +(27139) found +[11357] Forked 27140 +[11356] Forked 27141 +(27140) found +(27141) found +[11355] Forked 27142 +[11354] Forked 27143 +(27142) found +(27143) found +[11353] Forked 27144 +[11352] Forked 27145 +(27144) found +(27145) found +[11351] Forked 27146 +[11350] Forked 27147 +(27146) found +(27147) found +[11349] Forked 27148 +[11348] Forked 27149 +(27148) found +(27149) found +[11347] Forked 27150 +[11346] Forked 27151 +(27150) found +(27151) found +[11345] Forked 27152 +[11344] Forked 27153 +(27152) found +(27153) found +[11343] Forked 27154 +[11342] Forked 27155 +(27154) found +(27155) found +[11341] Forked 27156 +[11340] Forked 27157 +(27156) found +(27157) found +[11339] Forked 27158 +[11338] Forked 27159 +(27158) found +(27159) found +[11337] Forked 27160 +[11336] Forked 27161 +(27160) found +(27161) found +[11335] Forked 27162 +[11334] Forked 27163 +(27162) found +(27163) found +[11333] Forked 27164 +[11332] Forked 27165 +(27164) found +(27165) found +[11331] Forked 27166 +[11330] Forked 27167 +(27166) found +(27167) found +[11329] Forked 27168 +[11328] Forked 27169 +(27168) found +(27169) found +[11327] Forked 27170 +[11326] Forked 27171 +(27170) found +(27171) found +[11325] Forked 27172 +(27172) found +[11324] Forked 27173 +(27173) found +[11323] Forked 27174 +(27174) found +[11322] Forked 27175 +(27175) found +[11321] Forked 27176 +(27176) found +[11320] Forked 27177 +(27177) found +[11319] Forked 27178 +(27178) found +[11318] Forked 27179 +(27179) found +[11317] Forked 27180 +(27180) found +[11316] Forked 27181 +(27181) found +[11315] Forked 27182 +(27182) found +[11314] Forked 27183 +(27183) found +[11313] Forked 27184 +(27184) found +[11312] Forked 27185 +(27185) found +[11311] Forked 27186 +(27186) found +[11310] Forked 27187 +(27187) found +[11309] Forked 27188 +(27188) found +[11308] Forked 27189 +(27189) found +[11307] Forked 27190 +(27190) found +[11306] Forked 27191 +(27191) found +[11305] Forked 27192 +(27192) found +[11304] Forked 27193 +(27193) found +[11303] Forked 27194 +(27194) found +[11302] Forked 27195 +(27195) found +[11301] Forked 27196 +(27196) found +[11300] Forked 27197 +(27197) found +[11299] Forked 27198 +(27198) found +[11298] Forked 27199 +(27199) found +[11297] Forked 27200 +(27200) found +[11296] Forked 27201 +(27201) found +[11295] Forked 27202 +(27202) found +[11294] Forked 27203 +(27203) found +[11293] Forked 27204 +(27204) found +[11292] Forked 27205 +(27205) found +[11291] Forked 27206 +[11290] Forked 27207 +(27206) found +(27207) found +[11289] Forked 27208 +[11288] Forked 27209 +(27208) found +(27209) found +[11287] Forked 27210 +[11286] Forked 27211 +(27210) found +(27211) found +[11285] Forked 27212 +[11284] Forked 27213 +(27212) found +(27213) found +[11283] Forked 27214 +[11282] Forked 27215 +(27214) found +(27215) found +[11281] Forked 27216 +[11280] Forked 27217 +(27216) found +(27217) found +[11279] Forked 27218 +[11278] Forked 27219 +(27218) found +(27219) found +[11277] Forked 27220 +[11276] Forked 27221 +(27220) found +(27221) found +[11275] Forked 27222 +[11274] Forked 27223 +(27222) found +(27223) found +[11273] Forked 27224 +[11272] Forked 27225 +(27224) found +(27225) found +[11271] Forked 27226 +[11270] Forked 27227 +(27226) found +(27227) found +[11269] Forked 27228 +[11268] Forked 27229 +(27228) found +(27229) found +[11267] Forked 27230 +[11266] Forked 27231 +(27230) found +(27231) found +[11265] Forked 27232 +[11264] Forked 27233 +(27232) found +(27233) found +[11263] Forked 27234 +[11262] Forked 27235 +(27234) found +(27235) found +[11261] Forked 27236 +[11260] Forked 27237 +(27236) found +(27237) found +[11259] Forked 27238 +[11258] Forked 27239 +(27238) found +(27239) found +[11257] Forked 27240 +[11256] Forked 27241 +(27240) found +(27241) found +[11255] Forked 27242 +[11254] Forked 27243 +(27242) found +(27243) found +[11253] Forked 27244 +[11252] Forked 27245 +(27244) found +(27245) found +[11251] Forked 27246 +[11250] Forked 27247 +(27246) found +(27247) found +[11249] Forked 27248 +[11248] Forked 27249 +(27248) found +(27249) found +[11247] Forked 27250 +[11246] Forked 27251 +(27250) found +(27251) found +[11245] Forked 27252 +(27252) found +[11244] Forked 27253 +(27253) found +[11243] Forked 27254 +(27254) found +[11242] Forked 27255 +(27255) found +[11241] Forked 27256 +(27256) found +[11240] Forked 27257 +(27257) found +[11239] Forked 27258 +(27258) found +[11238] Forked 27259 +(27259) found +[11237] Forked 27260 +(27260) found +[11236] Forked 27261 +(27261) found +[11235] Forked 27262 +(27262) found +[11234] Forked 27263 +(27263) found +[11233] Forked 27264 +(27264) found +[11232] Forked 27265 +(27265) found +[11231] Forked 27266 +(27266) found +[11230] Forked 27267 +(27267) found +[11229] Forked 27268 +(27268) found +[11228] Forked 27269 +(27269) found +[11227] Forked 27270 +(27270) found +[11226] Forked 27271 +(27271) found +[11225] Forked 27272 +(27272) found +[11224] Forked 27273 +(27273) found +[11223] Forked 27274 +(27274) found +[11222] Forked 27275 +(27275) found +[11221] Forked 27276 +(27276) found +[11220] Forked 27277 +(27277) found +[11219] Forked 27278 +(27278) found +[11218] Forked 27279 +(27279) found +[11217] Forked 27280 +(27280) found +[11216] Forked 27281 +(27281) found +[11215] Forked 27282 +(27282) found +[11214] Forked 27283 +(27283) found +[11213] Forked 27284 +(27284) found +[11212] Forked 27285 +(27285) found +[11211] Forked 27286 +(27286) found +[11210] Forked 27287 +[11209] Forked 27288 +(27287) found +(27288) found +[11208] Forked 27289 +[11207] Forked 27290 +(27289) found +(27290) found +[11206] Forked 27291 +[11205] Forked 27292 +(27291) found +(27292) found +[11204] Forked 27293 +[11203] Forked 27294 +(27293) found +(27294) found +[11202] Forked 27295 +[11201] Forked 27296 +(27295) found +(27296) found +[11200] Forked 27297 +[11199] Forked 27298 +(27297) found +(27298) found +[11198] Forked 27299 +[11197] Forked 27300 +(27299) found +(27300) found +[11196] Forked 27301 +[11195] Forked 27302 +(27301) found +(27302) found +[11194] Forked 27303 +[11193] Forked 27304 +(27303) found +(27304) found +[11192] Forked 27305 +[11191] Forked 27306 +(27305) found +(27306) found +[11190] Forked 27307 +[11189] Forked 27308 +(27307) found +(27308) found +[11188] Forked 27309 +[11187] Forked 27310 +(27309) found +(27310) found +[11186] Forked 27311 +[11185] Forked 27312 +(27311) found +(27312) found +[11184] Forked 27313 +[11183] Forked 27314 +(27313) found +(27314) found +[11182] Forked 27315 +[11181] Forked 27316 +(27315) found +(27316) found +[11180] Forked 27317 +[11179] Forked 27318 +(27317) found +(27318) found +[11178] Forked 27319 +[11177] Forked 27320 +(27319) found +(27320) found +[11176] Forked 27321 +[11175] Forked 27322 +(27321) found +(27322) found +[11174] Forked 27323 +[11173] Forked 27324 +(27323) found +(27324) found +[11172] Forked 27325 +[11171] Forked 27326 +(27325) found +(27326) found +[11170] Forked 27327 +[11169] Forked 27328 +(27327) found +(27328) found +[11168] Forked 27329 +[11167] Forked 27330 +(27329) found +(27330) found +[11166] Forked 27331 +[11165] Forked 27332 +(27331) found +(27332) found +[11164] Forked 27333 +[11163] Forked 27334 +(27333) found +(27334) found +[11162] Forked 27335 +[11161] Forked 27336 +(27335) found +(27336) found +[11160] Forked 27337 +[11159] Forked 27338 +(27337) found +(27338) found +[11158] Forked 27339 +[11157] Forked 27340 +(27339) found +(27340) found +[11156] Forked 27341 +[11155] Forked 27342 +(27341) found +(27342) found +[11154] Forked 27343 +[11153] Forked 27344 +(27343) found +(27344) found +[11152] Forked 27345 +[11151] Forked 27346 +(27345) found +(27346) found +[11150] Forked 27347 +[11149] Forked 27348 +(27347) found +(27348) found +[11148] Forked 27349 +[11147] Forked 27350 +(27349) found +(27350) found +[11146] Forked 27351 +[11145] Forked 27352 +(27351) found +(27352) found +[11144] Forked 27353 +[11143] Forked 27354 +(27353) found +(27354) found +[11142] Forked 27355 +[11141] Forked 27356 +(27355) found +(27356) found +[11140] Forked 27357 +[11139] Forked 27358 +(27357) found +(27358) found +[11138] Forked 27359 +[11137] Forked 27360 +(27359) found +(27360) found +[11136] Forked 27361 +[11135] Forked 27362 +(27361) found +(27362) found +[11134] Forked 27363 +[11133] Forked 27364 +(27363) found +(27364) found +[11132] Forked 27365 +[11131] Forked 27366 +(27365) found +(27366) found +[11130] Forked 27367 +[11129] Forked 27368 +(27367) found +(27368) found +[11128] Forked 27369 +[11127] Forked 27370 +(27369) found +(27370) found +[11126] Forked 27371 +[11125] Forked 27372 +(27371) found +(27372) found +[11124] Forked 27373 +[11123] Forked 27374 +(27373) found +(27374) found +[11122] Forked 27375 +[11121] Forked 27376 +(27375) found +(27376) found +[11120] Forked 27377 +[11119] Forked 27378 +(27377) found +(27378) found +[11118] Forked 27379 +[11117] Forked 27380 +(27379) found +(27380) found +[11116] Forked 27381 +[11115] Forked 27382 +(27381) found +(27382) found +[11114] Forked 27383 +[11113] Forked 27384 +(27383) found +(27384) found +[11112] Forked 27385 +[11111] Forked 27386 +(27385) found +(27386) found +[11110] Forked 27387 +[11109] Forked 27388 +(27387) found +(27388) found +[11108] Forked 27389 +[11107] Forked 27390 +(27389) found +(27390) found +[11106] Forked 27391 +[11105] Forked 27392 +(27391) found +(27392) found +[11104] Forked 27393 +[11103] Forked 27394 +(27393) found +(27394) found +[11102] Forked 27395 +[11101] Forked 27396 +(27395) found +(27396) found +[11100] Forked 27397 +[11099] Forked 27398 +(27397) found +(27398) found +[11098] Forked 27399 +[11097] Forked 27400 +(27399) found +(27400) found +[11096] Forked 27401 +[11095] Forked 27402 +(27401) found +(27402) found +[11094] Forked 27403 +[11093] Forked 27404 +(27403) found +(27404) found +[11092] Forked 27405 +[11091] Forked 27406 +(27405) found +(27406) found +[11090] Forked 27407 +[11089] Forked 27408 +(27407) found +(27408) found +[11088] Forked 27409 +[11087] Forked 27410 +(27409) found +(27410) found +[11086] Forked 27411 +[11085] Forked 27412 +(27411) found +(27412) found +[11084] Forked 27413 +[11083] Forked 27414 +(27413) found +(27414) found +[11082] Forked 27415 +[11081] Forked 27416 +(27415) found +(27416) found +[11080] Forked 27417 +[11079] Forked 27418 +(27417) found +(27418) found +[11078] Forked 27419 +[11077] Forked 27420 +(27419) found +(27420) found +[11076] Forked 27421 +[11075] Forked 27422 +(27421) found +(27422) found +[11074] Forked 27423 +(27423) found +[11073] Forked 27424 +(27424) found +[11072] Forked 27425 +(27425) found +[11071] Forked 27426 +(27426) found +[11070] Forked 27427 +(27427) found +[11069] Forked 27428 +(27428) found +[11068] Forked 27429 +(27429) found +[11067] Forked 27430 +(27430) found +[11066] Forked 27431 +(27431) found +[11065] Forked 27432 +(27432) found +[11064] Forked 27433 +(27433) found +[11063] Forked 27434 +(27434) found +[11062] Forked 27435 +(27435) found +[11061] Forked 27436 +(27436) found +[11060] Forked 27437 +(27437) found +[11059] Forked 27438 +(27438) found +[11058] Forked 27439 +(27439) found +[11057] Forked 27440 +(27440) found +[11056] Forked 27441 +(27441) found +[11055] Forked 27442 +(27442) found +[11054] Forked 27443 +(27443) found +[11053] Forked 27444 +(27444) found +[11052] Forked 27445 +(27445) found +[11051] Forked 27446 +(27446) found +[11050] Forked 27447 +(27447) found +[11049] Forked 27448 +(27448) found +[11048] Forked 27449 +(27449) found +[11047] Forked 27450 +(27450) found +[11046] Forked 27451 +(27451) found +[11045] Forked 27452 +(27452) found +[11044] Forked 27453 +(27453) found +[11043] Forked 27454 +(27454) found +[11042] Forked 27455 +(27455) found +[11041] Forked 27456 +(27456) found +[11040] Forked 27457 +[11039] Forked 27458 +(27457) found +(27458) found +[11038] Forked 27459 +[11037] Forked 27460 +(27459) found +(27460) found +[11036] Forked 27461 +[11035] Forked 27462 +(27461) found +(27462) found +[11034] Forked 27463 +[11033] Forked 27464 +(27463) found +(27464) found +[11032] Forked 27465 +[11031] Forked 27466 +(27465) found +(27466) found +[11030] Forked 27467 +[11029] Forked 27468 +(27467) found +(27468) found +[11028] Forked 27469 +[11027] Forked 27470 +(27469) found +(27470) found +[11026] Forked 27471 +[11025] Forked 27472 +(27471) found +(27472) found +[11024] Forked 27473 +[11023] Forked 27474 +(27473) found +(27474) found +[11022] Forked 27475 +[11021] Forked 27476 +(27475) found +(27476) found +[11020] Forked 27477 +[11019] Forked 27478 +(27477) found +(27478) found +[11018] Forked 27479 +[11017] Forked 27480 +(27479) found +(27480) found +[11016] Forked 27481 +[11015] Forked 27482 +(27481) found +(27482) found +[11014] Forked 27483 +[11013] Forked 27484 +(27483) found +(27484) found +[11012] Forked 27485 +[11011] Forked 27486 +(27485) found +(27486) found +[11010] Forked 27487 +[11009] Forked 27488 +(27487) found +(27488) found +[11008] Forked 27489 +[11007] Forked 27490 +(27489) found +(27490) found +[11006] Forked 27491 +[11005] Forked 27492 +(27491) found +(27492) found +[11004] Forked 27493 +[11003] Forked 27494 +(27493) found +(27494) found +[11002] Forked 27495 +[11001] Forked 27496 +(27495) found +(27496) found +[11000] Forked 27497 +[10999] Forked 27498 +(27497) found +(27498) found +[10998] Forked 27499 +[10997] Forked 27500 +(27499) found +(27500) found +[10996] Forked 27501 +[10995] Forked 27502 +(27501) found +(27502) found +[10994] Forked 27503 +(27503) found +[10993] Forked 27504 +(27504) found +[10992] Forked 27505 +(27505) found +[10991] Forked 27506 +(27506) found +[10990] Forked 27507 +(27507) found +[10989] Forked 27508 +(27508) found +[10988] Forked 27509 +(27509) found +[10987] Forked 27510 +(27510) found +[10986] Forked 27511 +(27511) found +[10985] Forked 27512 +(27512) found +[10984] Forked 27513 +(27513) found +[10983] Forked 27514 +(27514) found +[10982] Forked 27515 +(27515) found +[10981] Forked 27516 +(27516) found +[10980] Forked 27517 +(27517) found +[10979] Forked 27518 +(27518) found +[10978] Forked 27519 +(27519) found +[10977] Forked 27520 +(27520) found +[10976] Forked 27521 +(27521) found +[10975] Forked 27522 +(27522) found +[10974] Forked 27523 +(27523) found +[10973] Forked 27524 +(27524) found +[10972] Forked 27525 +(27525) found +[10971] Forked 27526 +(27526) found +[10970] Forked 27527 +(27527) found +[10969] Forked 27528 +(27528) found +[10968] Forked 27529 +(27529) found +[10967] Forked 27530 +(27530) found +[10966] Forked 27531 +(27531) found +[10965] Forked 27532 +(27532) found +[10964] Forked 27533 +(27533) found +[10963] Forked 27534 +(27534) found +[10962] Forked 27535 +(27535) found +[10961] Forked 27536 +(27536) found +[10960] Forked 27537 +[10959] Forked 27538 +(27537) found +(27538) found +[10958] Forked 27539 +[10957] Forked 27540 +(27539) found +(27540) found +[10956] Forked 27541 +[10955] Forked 27542 +(27541) found +(27542) found +[10954] Forked 27543 +[10953] Forked 27544 +(27543) found +(27544) found +[10952] Forked 27545 +[10951] Forked 27546 +(27545) found +(27546) found +[10950] Forked 27547 +[10949] Forked 27548 +(27547) found +(27548) found +[10948] Forked 27549 +[10947] Forked 27550 +(27549) found +(27550) found +[10946] Forked 27551 +[10945] Forked 27552 +(27551) found +(27552) found +[10944] Forked 27553 +[10943] Forked 27554 +(27553) found +(27554) found +[10942] Forked 27555 +[10941] Forked 27556 +(27555) found +(27556) found +[10940] Forked 27557 +[10939] Forked 27558 +(27557) found +(27558) found +[10938] Forked 27559 +[10937] Forked 27560 +(27559) found +(27560) found +[10936] Forked 27561 +[10935] Forked 27562 +(27561) found +(27562) found +[10934] Forked 27563 +[10933] Forked 27564 +(27563) found +(27564) found +[10932] Forked 27565 +[10931] Forked 27566 +(27565) found +(27566) found +[10930] Forked 27567 +[10929] Forked 27568 +(27567) found +(27568) found +[10928] Forked 27569 +[10927] Forked 27570 +(27569) found +(27570) found +[10926] Forked 27571 +[10925] Forked 27572 +(27571) found +(27572) found +[10924] Forked 27573 +[10923] Forked 27574 +(27573) found +(27574) found +[10922] Forked 27575 +[10921] Forked 27576 +(27575) found +(27576) found +[10920] Forked 27577 +[10919] Forked 27578 +(27577) found +(27578) found +[10918] Forked 27579 +[10917] Forked 27580 +(27579) found +(27580) found +[10916] Forked 27581 +[10915] Forked 27582 +(27581) found +(27582) found +[10914] Forked 27583 +(27583) found +[10913] Forked 27584 +(27584) found +[10912] Forked 27585 +(27585) found +[10911] Forked 27586 +(27586) found +[10910] Forked 27587 +(27587) found +[10909] Forked 27588 +(27588) found +[10908] Forked 27589 +(27589) found +[10907] Forked 27590 +(27590) found +[10906] Forked 27591 +(27591) found +[10905] Forked 27592 +(27592) found +[10904] Forked 27593 +(27593) found +[10903] Forked 27594 +(27594) found +[10902] Forked 27595 +(27595) found +[10901] Forked 27596 +(27596) found +[10900] Forked 27597 +(27597) found +[10899] Forked 27598 +(27598) found +[10898] Forked 27599 +(27599) found +[10897] Forked 27600 +(27600) found +[10896] Forked 27601 +(27601) found +[10895] Forked 27602 +(27602) found +[10894] Forked 27603 +(27603) found +[10893] Forked 27604 +(27604) found +[10892] Forked 27605 +(27605) found +[10891] Forked 27606 +(27606) found +[10890] Forked 27607 +(27607) found +[10889] Forked 27608 +(27608) found +[10888] Forked 27609 +(27609) found +[10887] Forked 27610 +(27610) found +[10886] Forked 27611 +(27611) found +[10885] Forked 27612 +(27612) found +[10884] Forked 27613 +(27613) found +[10883] Forked 27614 +(27614) found +[10882] Forked 27615 +(27615) found +[10881] Forked 27616 +(27616) found +[10880] Forked 27617 +(27617) found +[10879] Forked 27618 +[10878] Forked 27619 +(27618) found +(27619) found +[10877] Forked 27620 +[10876] Forked 27621 +(27620) found +(27621) found +[10875] Forked 27622 +[10874] Forked 27623 +(27622) found +(27623) found +[10873] Forked 27624 +[10872] Forked 27625 +(27624) found +(27625) found +[10871] Forked 27626 +[10870] Forked 27627 +(27626) found +(27627) found +[10869] Forked 27628 +[10868] Forked 27629 +(27628) found +(27629) found +[10867] Forked 27630 +[10866] Forked 27631 +(27630) found +(27631) found +[10865] Forked 27632 +[10864] Forked 27633 +(27632) found +(27633) found +[10863] Forked 27634 +[10862] Forked 27635 +(27634) found +(27635) found +[10861] Forked 27636 +[10860] Forked 27637 +(27636) found +(27637) found +[10859] Forked 27638 +[10858] Forked 27639 +(27638) found +(27639) found +[10857] Forked 27640 +[10856] Forked 27641 +(27640) found +(27641) found +[10855] Forked 27642 +[10854] Forked 27643 +(27642) found +(27643) found +[10853] Forked 27644 +[10852] Forked 27645 +(27644) found +(27645) found +[10851] Forked 27646 +[10850] Forked 27647 +(27646) found +(27647) found +[10849] Forked 27648 +[10848] Forked 27649 +(27648) found +(27649) found +[10847] Forked 27650 +[10846] Forked 27651 +(27650) found +(27651) found +[10845] Forked 27652 +[10844] Forked 27653 +(27652) found +(27653) found +[10843] Forked 27654 +[10842] Forked 27655 +(27654) found +(27655) found +[10841] Forked 27656 +[10840] Forked 27657 +(27656) found +(27657) found +[10839] Forked 27658 +[10838] Forked 27659 +(27658) found +(27659) found +[10837] Forked 27660 +[10836] Forked 27661 +(27660) found +(27661) found +[10835] Forked 27662 +[10834] Forked 27663 +(27662) found +(27663) found +[10833] Forked 27664 +[10832] Forked 27665 +(27664) found +(27665) found +[10831] Forked 27666 +[10830] Forked 27667 +(27666) found +(27667) found +[10829] Forked 27668 +[10828] Forked 27669 +(27668) found +(27669) found +[10827] Forked 27670 +[10826] Forked 27671 +(27670) found +(27671) found +[10825] Forked 27672 +[10824] Forked 27673 +(27672) found +(27673) found +[10823] Forked 27674 +[10822] Forked 27675 +(27674) found +(27675) found +[10821] Forked 27676 +[10820] Forked 27677 +(27676) found +(27677) found +[10819] Forked 27678 +[10818] Forked 27679 +(27678) found +(27679) found +[10817] Forked 27680 +[10816] Forked 27681 +(27680) found +(27681) found +[10815] Forked 27682 +[10814] Forked 27683 +(27682) found +(27683) found +[10813] Forked 27684 +[10812] Forked 27685 +(27684) found +(27685) found +[10811] Forked 27686 +[10810] Forked 27687 +(27686) found +(27687) found +[10809] Forked 27688 +[10808] Forked 27689 +(27688) found +(27689) found +[10807] Forked 27691 +[10806] Forked 27692 +(27691) found +(27692) found +[10805] Forked 27693 +[10804] Forked 27694 +(27693) found +(27694) found +[10803] Forked 27695 +[10802] Forked 27696 +(27695) found +(27696) found +[10801] Forked 27697 +[10800] Forked 27698 +(27697) found +(27698) found +[10799] Forked 27699 +[10798] Forked 27700 +(27699) found +(27700) found +[10797] Forked 27701 +[10796] Forked 27702 +(27701) found +(27702) found +[10795] Forked 27703 +[10794] Forked 27704 +(27703) found +(27704) found +[10793] Forked 27705 +[10792] Forked 27706 +(27705) found +(27706) found +[10791] Forked 27707 +[10790] Forked 27708 +(27707) found +(27708) found +[10789] Forked 27709 +(27709) found +[10788] Forked 27710 +(27710) found +[10787] Forked 27711 +(27711) found +[10786] Forked 27712 +(27712) found +[10785] Forked 27713 +(27713) found +[10784] Forked 27714 +(27714) found +[10783] Forked 27715 +(27715) found +[10782] Forked 27716 +(27716) found +[10781] Forked 27717 +(27717) found +[10780] Forked 27718 +(27718) found +[10779] Forked 27719 +(27719) found +[10778] Forked 27720 +(27720) found +[10777] Forked 27721 +(27721) found +[10776] Forked 27722 +(27722) found +[10775] Forked 27723 +(27723) found +[10774] Forked 27724 +(27724) found +[10773] Forked 27725 +(27725) found +[10772] Forked 27726 +(27726) found +[10771] Forked 27727 +(27727) found +[10770] Forked 27728 +(27728) found +[10769] Forked 27729 +(27729) found +[10768] Forked 27730 +(27730) found +[10767] Forked 27731 +(27731) found +[10766] Forked 27732 +(27732) found +[10765] Forked 27733 +(27733) found +[10764] Forked 27734 +(27734) found +[10763] Forked 27735 +(27735) found +[10762] Forked 27736 +(27736) found +[10761] Forked 27737 +(27737) found +[10760] Forked 27738 +(27738) found +[10759] Forked 27739 +(27739) found +[10758] Forked 27740 +(27740) found +[10757] Forked 27741 +(27741) found +[10756] Forked 27742 +(27742) found +[10755] Forked 27743 +(27743) found +[10754] Forked 27744 +(27744) found +[10753] Forked 27745 +[10752] Forked 27746 +(27745) found +(27746) found +[10751] Forked 27747 +[10750] Forked 27748 +(27747) found +(27748) found +[10749] Forked 27749 +(27749) found +[10748] Forked 27750 +[10747] Forked 27751 +(27750) found +(27751) found +[10746] Forked 27752 +[10745] Forked 27753 +(27752) found +(27753) found +[10744] Forked 27754 +[10743] Forked 27755 +(27754) found +(27755) found +[10742] Forked 27756 +[10741] Forked 27757 +(27756) found +(27757) found +[10740] Forked 27758 +[10739] Forked 27759 +(27758) found +(27759) found +[10738] Forked 27760 +[10737] Forked 27761 +(27760) found +(27761) found +[10736] Forked 27762 +[10735] Forked 27763 +(27762) found +(27763) found +[10734] Forked 27764 +[10733] Forked 27765 +(27764) found +(27765) found +[10732] Forked 27766 +[10731] Forked 27767 +(27766) found +(27767) found +[10730] Forked 27768 +[10729] Forked 27769 +(27768) found +(27769) found +[10728] Forked 27770 +[10727] Forked 27771 +(27770) found +(27771) found +[10726] Forked 27772 +[10725] Forked 27773 +(27772) found +(27773) found +[10724] Forked 27774 +[10723] Forked 27775 +(27774) found +(27775) found +[10722] Forked 27776 +[10721] Forked 27777 +(27776) found +(27777) found +[10720] Forked 27778 +[10719] Forked 27779 +(27778) found +(27779) found +[10718] Forked 27780 +[10717] Forked 27781 +(27780) found +(27781) found +[10716] Forked 27782 +[10715] Forked 27783 +(27782) found +(27783) found +[10714] Forked 27784 +[10713] Forked 27785 +(27784) found +(27785) found +[10712] Forked 27786 +[10711] Forked 27787 +(27786) found +(27787) found +[10710] Forked 27788 +[10709] Forked 27789 +(27788) found +(27789) found +[10708] Forked 27790 +[10707] Forked 27791 +(27790) found +(27791) found +[10706] Forked 27792 +[10705] Forked 27793 +(27792) found +(27793) found +[10704] Forked 27794 +[10703] Forked 27795 +(27794) found +(27795) found +[10702] Forked 27796 +[10701] Forked 27797 +(27796) found +(27797) found +[10700] Forked 27798 +(27798) found +[10699] Forked 27799 +[10698] Forked 27800 +(27799) found +(27800) found +[10697] Forked 27801 +[10696] Forked 27802 +(27801) found +(27802) found +[10695] Forked 27803 +[10694] Forked 27804 +(27803) found +(27804) found +[10693] Forked 27805 +[10692] Forked 27806 +(27805) found +(27806) found +[10691] Forked 27807 +[10690] Forked 27808 +(27807) found +(27808) found +[10689] Forked 27809 +[10688] Forked 27810 +(27809) found +(27810) found +[10687] Forked 27811 +[10686] Forked 27812 +(27811) found +(27812) found +[10685] Forked 27813 +[10684] Forked 27814 +(27813) found +(27814) found +[10683] Forked 27815 +[10682] Forked 27816 +(27815) found +(27816) found +[10681] Forked 27817 +[10680] Forked 27818 +(27817) found +(27818) found +[10679] Forked 27819 +[10678] Forked 27820 +(27819) found +(27820) found +[10677] Forked 27821 +[10676] Forked 27822 +(27821) found +(27822) found +[10675] Forked 27823 +[10674] Forked 27824 +(27823) found +(27824) found +[10673] Forked 27825 +[10672] Forked 27826 +(27825) found +(27826) found +[10671] Forked 27827 +[10670] Forked 27828 +(27827) found +(27828) found +[10669] Forked 27829 +[10668] Forked 27831 +(27829) found +(27831) found +[10667] Forked 27832 +[10666] Forked 27833 +(27832) found +(27833) found +[10665] Forked 27834 +[10664] Forked 27835 +(27834) found +(27835) found +[10663] Forked 27836 +(27836) found +[10662] Forked 27837 +(27837) found +[10661] Forked 27838 +(27838) found +[10660] Forked 27839 +(27839) found +[10659] Forked 27840 +(27840) found +[10658] Forked 27841 +(27841) found +[10657] Forked 27842 +(27842) found +[10656] Forked 27843 +(27843) found +[10655] Forked 27844 +(27844) found +[10654] Forked 27845 +(27845) found +[10653] Forked 27846 +(27846) found +[10652] Forked 27847 +(27847) found +[10651] Forked 27848 +(27848) found +[10650] Forked 27849 +(27849) found +[10649] Forked 27850 +(27850) found +[10648] Forked 27851 +(27851) found +[10647] Forked 27852 +(27852) found +[10646] Forked 27853 +(27853) found +[10645] Forked 27854 +(27854) found +[10644] Forked 27855 +(27855) found +[10643] Forked 27856 +(27856) found +[10642] Forked 27857 +(27857) found +[10641] Forked 27858 +(27858) found +[10640] Forked 27859 +(27859) found +[10639] Forked 27860 +(27860) found +[10638] Forked 27861 +(27861) found +[10637] Forked 27862 +(27862) found +[10636] Forked 27863 +(27863) found +[10635] Forked 27864 +(27864) found +[10634] Forked 27865 +(27865) found +[10633] Forked 27866 +(27866) found +[10632] Forked 27867 +(27867) found +[10631] Forked 27868 +(27868) found +[10630] Forked 27869 +(27869) found +[10629] Forked 27870 +[10628] Forked 27871 +(27870) found +(27871) found +[10627] Forked 27872 +[10626] Forked 27873 +(27872) found +(27873) found +[10625] Forked 27874 +[10624] Forked 27875 +(27874) found +(27875) found +[10623] Forked 27876 +[10622] Forked 27877 +(27876) found +(27877) found +[10621] Forked 27878 +[10620] Forked 27879 +(27878) found +(27879) found +[10619] Forked 27880 +[10618] Forked 27881 +(27880) found +(27881) found +[10617] Forked 27882 +[10616] Forked 27883 +(27882) found +(27883) found +[10615] Forked 27884 +[10614] Forked 27885 +(27884) found +(27885) found +[10613] Forked 27886 +[10612] Forked 27887 +(27886) found +(27887) found +[10611] Forked 27888 +[10610] Forked 27889 +(27888) found +(27889) found +[10609] Forked 27890 +[10608] Forked 27891 +(27890) found +(27891) found +[10607] Forked 27892 +[10606] Forked 27893 +(27892) found +(27893) found +[10605] Forked 27894 +[10604] Forked 27895 +(27894) found +(27895) found +[10603] Forked 27896 +[10602] Forked 27897 +(27896) found +(27897) found +[10601] Forked 27898 +[10600] Forked 27899 +(27898) found +(27899) found +[10599] Forked 27900 +[10598] Forked 27901 +(27900) found +(27901) found +[10597] Forked 27902 +[10596] Forked 27903 +(27902) found +(27903) found +[10595] Forked 27904 +[10594] Forked 27905 +(27904) found +(27905) found +[10593] Forked 27906 +[10592] Forked 27907 +(27906) found +(27907) found +[10591] Forked 27908 +[10590] Forked 27909 +(27908) found +(27909) found +[10589] Forked 27910 +[10588] Forked 27911 +(27910) found +(27911) found +[10587] Forked 27912 +[10586] Forked 27913 +(27912) found +(27913) found +[10585] Forked 27914 +(27914) found +[10584] Forked 27915 +[10583] Forked 27916 +(27915) found +(27916) found +[10582] Forked 27917 +[10581] Forked 27918 +(27917) found +(27918) found +[10580] Forked 27919 +(27919) found +[10579] Forked 27920 +[10578] Forked 27921 +(27920) found +(27921) found +[10577] Forked 27922 +[10576] Forked 27923 +(27923) found +(27922) found +[10575] Forked 27924 +(27924) found +[10574] Forked 27925 +(27925) found +[10573] Forked 27926 +(27926) found +[10572] Forked 27927 +(27927) found +[10571] Forked 27928 +(27928) found +[10570] Forked 27929 +(27929) found +[10569] Forked 27930 +(27930) found +[10568] Forked 27931 +(27931) found +[10567] Forked 27932 +(27932) found +[10566] Forked 27933 +(27933) found +[10565] Forked 27934 +(27934) found +[10564] Forked 27935 +(27935) found +[10563] Forked 27936 +(27936) found +[10562] Forked 27937 +(27937) found +[10561] Forked 27938 +(27938) found +[10560] Forked 27939 +(27939) found +[10559] Forked 27940 +(27940) found +[10558] Forked 27941 +(27941) found +[10557] Forked 27942 +(27942) found +[10556] Forked 27943 +(27943) found +[10555] Forked 27944 +(27944) found +[10554] Forked 27945 +(27945) found +[10553] Forked 27946 +(27946) found +[10552] Forked 27947 +(27947) found +[10551] Forked 27948 +(27948) found +[10550] Forked 27949 +(27949) found +[10549] Forked 27950 +(27950) found +[10548] Forked 27951 +(27951) found +[10547] Forked 27952 +(27952) found +[10546] Forked 27953 +(27953) found +[10545] Forked 27954 +(27954) found +[10544] Forked 27955 +(27955) found +[10543] Forked 27956 +(27956) found +[10542] Forked 27957 +(27957) found +[10541] Forked 27958 +(27958) found +[10540] Forked 27959 +(27959) found +[10539] Forked 27960 +(27960) found +[10538] Forked 27961 +(27961) found +[10537] Forked 27962 +(27962) found +[10536] Forked 27963 +(27963) found +[10535] Forked 27964 +(27964) found +[10534] Forked 27965 +(27965) found +[10533] Forked 27966 +(27966) found +[10532] Forked 27967 +(27967) found +[10531] Forked 27968 +(27968) found +[10530] Forked 27969 +(27969) found +[10529] Forked 27970 +(27970) found +[10528] Forked 27971 +(27971) found +[10527] Forked 27972 +(27972) found +[10526] Forked 27973 +(27973) found +[10525] Forked 27974 +(27974) found +[10524] Forked 27975 +(27975) found +[10523] Forked 27976 +(27976) found +[10522] Forked 27977 +(27977) found +[10521] Forked 27978 +(27978) found +[10520] Forked 27979 +(27979) found +[10519] Forked 27980 +(27980) found +[10518] Forked 27981 +(27981) found +[10517] Forked 27982 +(27982) found +[10516] Forked 27983 +(27983) found +[10515] Forked 27984 +(27984) found +[10514] Forked 27985 +(27985) found +[10513] Forked 27986 +[10512] Forked 27988 +(27986) found +(27988) found +[10511] Forked 27989 +[10510] Forked 27990 +(27989) found +(27990) found +[10509] Forked 27991 +[10508] Forked 27992 +(27991) found +(27992) found +[10507] Forked 27993 +[10506] Forked 27994 +(27993) found +(27994) found +[10505] Forked 27995 +[10504] Forked 27996 +(27995) found +(27996) found +[10503] Forked 27997 +[10502] Forked 27998 +(27997) found +(27998) found +[10501] Forked 27999 +[10500] Forked 28000 +(27999) found +(28000) found +[10499] Forked 28001 +[10498] Forked 28002 +(28001) found +(28002) found +[10497] Forked 28003 +[10496] Forked 28004 +(28003) found +(28004) found +[10495] Forked 28005 +[10494] Forked 28006 +(28005) found +(28006) found +[10493] Forked 28007 +[10492] Forked 28008 +(28007) found +(28008) found +[10491] Forked 28009 +[10490] Forked 28010 +(28009) found +(28010) found +[10489] Forked 28011 +[10488] Forked 28012 +(28011) found +(28012) found +[10487] Forked 28013 +[10486] Forked 28014 +(28013) found +(28014) found +[10485] Forked 28015 +[10484] Forked 28016 +(28015) found +(28016) found +[10483] Forked 28017 +[10482] Forked 28018 +(28017) found +(28018) found +[10481] Forked 28019 +[10480] Forked 28020 +(28019) found +(28020) found +[10479] Forked 28021 +[10478] Forked 28022 +(28021) found +(28022) found +[10477] Forked 28023 +[10476] Forked 28024 +(28023) found +(28024) found +[10475] Forked 28025 +[10474] Forked 28026 +(28025) found +(28026) found +[10473] Forked 28027 +[10472] Forked 28028 +(28027) found +(28028) found +[10471] Forked 28029 +[10470] Forked 28030 +(28029) found +(28030) found +[10469] Forked 28031 +(28031) found +[10468] Forked 28032 +(28032) found +[10467] Forked 28033 +(28033) found +[10466] Forked 28034 +(28034) found +[10465] Forked 28035 +(28035) found +[10464] Forked 28036 +(28036) found +[10463] Forked 28037 +(28037) found +[10462] Forked 28038 +(28038) found +[10461] Forked 28039 +(28039) found +[10460] Forked 28040 +(28040) found +[10459] Forked 28041 +(28041) found +[10458] Forked 28042 +(28042) found +[10457] Forked 28043 +(28043) found +[10456] Forked 28044 +(28044) found +[10455] Forked 28045 +(28045) found +[10454] Forked 28047 +(28047) found +[10453] Forked 28048 +(28048) found +[10452] Forked 28049 +(28049) found +[10451] Forked 28050 +(28050) found +[10450] Forked 28051 +(28051) found +[10449] Forked 28052 +(28052) found +[10448] Forked 28053 +(28053) found +[10447] Forked 28054 +(28054) found +[10446] Forked 28055 +(28055) found +[10445] Forked 28056 +(28056) found +[10444] Forked 28057 +(28057) found +[10443] Forked 28058 +(28058) found +[10442] Forked 28059 +(28059) found +[10441] Forked 28060 +(28060) found +[10440] Forked 28061 +(28061) found +[10439] Forked 28062 +(28062) found +[10438] Forked 28063 +(28063) found +[10437] Forked 28064 +(28064) found +[10436] Forked 28065 +(28065) found +[10435] Forked 28066 +(28066) found +[10434] Forked 28067 +(28067) found +[10433] Forked 28068 +[10432] Forked 28069 +(28068) found +(28069) found +[10431] Forked 28070 +[10430] Forked 28071 +(28070) found +(28071) found +[10429] Forked 28072 +[10428] Forked 28073 +(28072) found +(28073) found +[10427] Forked 28074 +[10426] Forked 28075 +(28074) found +(28075) found +[10425] Forked 28076 +[10424] Forked 28077 +(28076) found +(28077) found +[10423] Forked 28078 +[10422] Forked 28079 +(28078) found +(28079) found +[10421] Forked 28080 +[10420] Forked 28081 +(28080) found +(28081) found +[10419] Forked 28082 +[10418] Forked 28083 +(28082) found +(28083) found +[10417] Forked 28084 +[10416] Forked 28085 +(28084) found +(28085) found +[10415] Forked 28086 +[10414] Forked 28087 +(28086) found +(28087) found +[10413] Forked 28088 +[10412] Forked 28089 +(28088) found +(28089) found +[10411] Forked 28090 +[10410] Forked 28091 +(28090) found +(28091) found +[10409] Forked 28092 +[10408] Forked 28093 +(28092) found +(28093) found +[10407] Forked 28094 +[10406] Forked 28095 +(28094) found +(28095) found +[10405] Forked 28096 +[10404] Forked 28097 +(28096) found +(28097) found +[10403] Forked 28098 +[10402] Forked 28100 +(28098) found +(28100) found +[10401] Forked 28101 +(28101) found +[10400] Forked 28102 +(28102) found +[10399] Forked 28103 +(28103) found +[10398] Forked 28104 +(28104) found +[10397] Forked 28105 +(28105) found +[10396] Forked 28106 +(28106) found +[10395] Forked 28107 +(28107) found +[10394] Forked 28108 +(28108) found +[10393] Forked 28109 +(28109) found +[10392] Forked 28110 +(28110) found +[10391] Forked 28111 +(28111) found +[10390] Forked 28112 +(28112) found +[10389] Forked 28113 +(28113) found +[10388] Forked 28114 +(28114) found +[10387] Forked 28115 +(28115) found +[10386] Forked 28116 +(28116) found +[10385] Forked 28117 +(28117) found +[10384] Forked 28118 +(28118) found +[10383] Forked 28119 +(28119) found +[10382] Forked 28120 +(28120) found +[10381] Forked 28121 +(28121) found +[10380] Forked 28122 +(28122) found +[10379] Forked 28123 +(28123) found +[10378] Forked 28124 +(28124) found +[10377] Forked 28125 +(28125) found +[10376] Forked 28126 +(28126) found +[10375] Forked 28127 +(28127) found +[10374] Forked 28128 +(28128) found +[10373] Forked 28129 +(28129) found +[10372] Forked 28130 +(28130) found +[10371] Forked 28131 +(28131) found +[10370] Forked 28132 +(28132) found +[10369] Forked 28133 +(28133) found +[10368] Forked 28134 +(28134) found +[10367] Forked 28135 +(28135) found +[10366] Forked 28136 +(28136) found +[10365] Forked 28137 +(28137) found +[10364] Forked 28138 +(28138) found +[10363] Forked 28139 +(28139) found +[10362] Forked 28140 +(28140) found +[10361] Forked 28141 +(28141) found +[10360] Forked 28142 +(28142) found +[10359] Forked 28143 +(28143) found +[10358] Forked 28144 +(28144) found +[10357] Forked 28145 +(28145) found +[10356] Forked 28146 +(28146) found +[10355] Forked 28147 +(28147) found +[10354] Forked 28148 +(28148) found +[10353] Forked 28149 +(28149) found +[10352] Forked 28150 +(28150) found +[10351] Forked 28151 +(28151) found +[10350] Forked 28152 +(28152) found +[10349] Forked 28153 +(28153) found +[10348] Forked 28154 +(28154) found +[10347] Forked 28155 +(28155) found +[10346] Forked 28156 +(28156) found +[10345] Forked 28157 +(28157) found +[10344] Forked 28158 +(28158) found +[10343] Forked 28159 +(28159) found +[10342] Forked 28160 +(28160) found +[10341] Forked 28161 +(28161) found +[10340] Forked 28162 +(28162) found +[10339] Forked 28163 +(28163) found +[10338] Forked 28164 +(28164) found +[10337] Forked 28165 +(28165) found +[10336] Forked 28166 +(28166) found +[10335] Forked 28167 +(28167) found +[10334] Forked 28168 +(28168) found +[10333] Forked 28169 +(28169) found +[10332] Forked 28170 +(28170) found +[10331] Forked 28171 +(28171) found +[10330] Forked 28172 +(28172) found +[10329] Forked 28173 +(28173) found +[10328] Forked 28174 +(28174) found +[10327] Forked 28175 +(28175) found +[10326] Forked 28176 +(28176) found +[10325] Forked 28177 +(28177) found +[10324] Forked 28178 +(28178) found +[10323] Forked 28179 +(28179) found +[10322] Forked 28180 +(28180) found +[10321] Forked 28181 +(28181) found +[10320] Forked 28182 +(28182) found +[10319] Forked 28183 +[10318] Forked 28184 +(28183) found +(28184) found +[10317] Forked 28185 +[10316] Forked 28186 +(28185) found +(28186) found +[10315] Forked 28187 +[10314] Forked 28188 +(28187) found +(28188) found +[10313] Forked 28189 +[10312] Forked 28190 +(28189) found +(28190) found +[10311] Forked 28191 +[10310] Forked 28192 +(28191) found +(28192) found +[10309] Forked 28193 +[10308] Forked 28194 +(28193) found +(28194) found +[10307] Forked 28195 +[10306] Forked 28196 +(28195) found +(28196) found +[10305] Forked 28197 +[10304] Forked 28198 +(28197) found +(28198) found +[10303] Forked 28199 +[10302] Forked 28200 +(28199) found +(28200) found +[10301] Forked 28201 +[10300] Forked 28202 +(28201) found +(28202) found +[10299] Forked 28203 +[10298] Forked 28204 +(28203) found +(28204) found +[10297] Forked 28205 +[10296] Forked 28206 +(28205) found +(28206) found +[10295] Forked 28207 +[10294] Forked 28208 +(28207) found +(28208) found +[10293] Forked 28209 +[10292] Forked 28210 +(28209) found +(28210) found +[10291] Forked 28211 +[10290] Forked 28212 +(28211) found +(28212) found +[10289] Forked 28213 +[10288] Forked 28214 +(28213) found +(28214) found +[10287] Forked 28215 +[10286] Forked 28216 +(28215) found +(28216) found +[10285] Forked 28217 +[10284] Forked 28218 +(28217) found +(28218) found +[10283] Forked 28219 +[10282] Forked 28220 +(28219) found +(28220) found +[10281] Forked 28221 +[10280] Forked 28222 +(28221) found +(28222) found +[10279] Forked 28223 +[10278] Forked 28224 +(28223) found +(28224) found +[10277] Forked 28225 +[10276] Forked 28226 +(28225) found +(28226) found +[10275] Forked 28227 +[10274] Forked 28228 +(28227) found +(28228) found +[10273] Forked 28229 +(28229) found +[10272] Forked 28230 +(28230) found +[10271] Forked 28231 +(28231) found +[10270] Forked 28232 +(28232) found +[10269] Forked 28233 +(28233) found +[10268] Forked 28234 +(28234) found +[10267] Forked 28235 +(28235) found +[10266] Forked 28236 +(28236) found +[10265] Forked 28237 +(28237) found +[10264] Forked 28238 +(28238) found +[10263] Forked 28239 +(28239) found +[10262] Forked 28240 +(28240) found +[10261] Forked 28241 +(28241) found +[10260] Forked 28242 +(28242) found +[10259] Forked 28243 +(28243) found +[10258] Forked 28244 +(28244) found +[10257] Forked 28245 +(28245) found +[10256] Forked 28246 +(28246) found +[10255] Forked 28247 +(28247) found +[10254] Forked 28248 +(28248) found +[10253] Forked 28249 +(28249) found +[10252] Forked 28250 +(28250) found +[10251] Forked 28251 +(28251) found +[10250] Forked 28252 +(28252) found +[10249] Forked 28253 +(28253) found +[10248] Forked 28254 +(28254) found +[10247] Forked 28255 +(28255) found +[10246] Forked 28256 +(28256) found +[10245] Forked 28257 +(28257) found +[10244] Forked 28258 +(28258) found +[10243] Forked 28259 +(28259) found +[10242] Forked 28260 +(28260) found +[10241] Forked 28261 +(28261) found +[10240] Forked 28262 +(28262) found +[10239] Forked 28263 +(28263) found +[10238] Forked 28264 +(28264) found +[10237] Forked 28265 +[10236] Forked 28266 +(28265) found +(28266) found +[10235] Forked 28267 +[10234] Forked 28268 +(28267) found +(28268) found +[10233] Forked 28269 +[10232] Forked 28270 +(28269) found +(28270) found +[10231] Forked 28271 +[10230] Forked 28272 +(28271) found +(28272) found +[10229] Forked 28273 +[10228] Forked 28274 +(28273) found +(28274) found +[10227] Forked 28275 +[10226] Forked 28276 +(28275) found +(28276) found +[10225] Forked 28277 +(28277) found +[10224] Forked 28278 +(28278) found +[10223] Forked 28279 +(28279) found +[10222] Forked 28280 +(28280) found +[10221] Forked 28281 +(28281) found +[10220] Forked 28282 +(28282) found +[10219] Forked 28283 +(28283) found +[10218] Forked 28284 +[10217] Forked 28285 +(28284) found +(28285) found +[10216] Forked 28286 +[10215] Forked 28287 +(28286) found +(28287) found +[10214] Forked 28288 +[10213] Forked 28289 +(28288) found +(28289) found +[10212] Forked 28290 +[10211] Forked 28291 +(28290) found +(28291) found +[10210] Forked 28292 +[10209] Forked 28293 +(28292) found +(28293) found +[10208] Forked 28294 +[10207] Forked 28295 +(28294) found +(28295) found +[10206] Forked 28296 +[10205] Forked 28297 +(28296) found +(28297) found +[10204] Forked 28298 +[10203] Forked 28299 +(28298) found +(28299) found +[10202] Forked 28300 +[10201] Forked 28301 +(28300) found +(28301) found +[10200] Forked 28302 +[10199] Forked 28303 +(28302) found +(28303) found +[10198] Forked 28304 +[10197] Forked 28305 +(28304) found +(28305) found +[10196] Forked 28306 +[10195] Forked 28307 +(28306) found +(28307) found +[10194] Forked 28308 +[10193] Forked 28309 +(28308) found +(28309) found +[10192] Forked 28310 +[10191] Forked 28311 +(28310) found +(28311) found +[10190] Forked 28312 +[10189] Forked 28313 +(28312) found +(28313) found +[10188] Forked 28314 +[10187] Forked 28315 +(28314) found +(28315) found +[10186] Forked 28316 +[10185] Forked 28317 +(28316) found +(28317) found +[10184] Forked 28318 +[10183] Forked 28319 +(28318) found +(28319) found +[10182] Forked 28320 +[10181] Forked 28321 +(28320) found +(28321) found +[10180] Forked 28322 +[10179] Forked 28323 +(28322) found +(28323) found +[10178] Forked 28324 +[10177] Forked 28325 +(28324) found +(28325) found +[10176] Forked 28326 +[10175] Forked 28327 +(28326) found +(28327) found +[10174] Forked 28328 +[10173] Forked 28329 +(28328) found +(28329) found +[10172] Forked 28330 +[10171] Forked 28331 +(28330) found +(28331) found +[10170] Forked 28332 +[10169] Forked 28333 +(28332) found +(28333) found +[10168] Forked 28334 +[10167] Forked 28335 +(28334) found +(28335) found +[10166] Forked 28336 +[10165] Forked 28337 +(28336) found +(28337) found +[10164] Forked 28338 +[10163] Forked 28339 +(28338) found +(28339) found +[10162] Forked 28340 +[10161] Forked 28341 +(28340) found +(28341) found +[10160] Forked 28342 +[10159] Forked 28343 +(28342) found +(28343) found +[10158] Forked 28344 +[10157] Forked 28345 +(28344) found +(28345) found +[10156] Forked 28346 +[10155] Forked 28347 +(28346) found +(28347) found +[10154] Forked 28348 +[10153] Forked 28349 +(28348) found +(28349) found +[10152] Forked 28350 +[10151] Forked 28351 +(28350) found +(28351) found +[10150] Forked 28352 +(28352) found +[10149] Forked 28353 +(28353) found +[10148] Forked 28354 +(28354) found +[10147] Forked 28355 +(28355) found +[10146] Forked 28356 +(28356) found +[10145] Forked 28357 +(28357) found +[10144] Forked 28358 +(28358) found +[10143] Forked 28359 +(28359) found +[10142] Forked 28360 +(28360) found +[10141] Forked 28361 +(28361) found +[10140] Forked 28362 +(28362) found +[10139] Forked 28363 +(28363) found +[10138] Forked 28364 +(28364) found +[10137] Forked 28365 +(28365) found +[10136] Forked 28366 +(28366) found +[10135] Forked 28367 +(28367) found +[10134] Forked 28368 +(28368) found +[10133] Forked 28369 +(28369) found +[10132] Forked 28370 +(28370) found +[10131] Forked 28371 +(28371) found +[10130] Forked 28372 +(28372) found +[10129] Forked 28373 +(28373) found +[10128] Forked 28374 +(28374) found +[10127] Forked 28375 +(28375) found +[10126] Forked 28376 +(28376) found +[10125] Forked 28377 +(28377) found +[10124] Forked 28378 +(28378) found +[10123] Forked 28379 +(28379) found +[10122] Forked 28380 +(28380) found +[10121] Forked 28381 +(28381) found +[10120] Forked 28382 +(28382) found +[10119] Forked 28383 +(28383) found +[10118] Forked 28384 +(28384) found +[10117] Forked 28385 +(28385) found +[10116] Forked 28386 +(28386) found +[10115] Forked 28387 +(28387) found +[10114] Forked 28388 +[10113] Forked 28389 +(28388) found +(28389) found +[10112] Forked 28390 +[10111] Forked 28391 +(28390) found +(28391) found +[10110] Forked 28392 +[10109] Forked 28393 +(28392) found +(28393) found +[10108] Forked 28394 +[10107] Forked 28395 +(28394) found +(28395) found +[10106] Forked 28396 +[10105] Forked 28397 +(28396) found +(28397) found +[10104] Forked 28398 +[10103] Forked 28399 +(28398) found +(28399) found +[10102] Forked 28400 +[10101] Forked 28401 +(28400) found +(28401) found +[10100] Forked 28402 +[10099] Forked 28403 +(28402) found +(28403) found +[10098] Forked 28404 +[10097] Forked 28405 +(28404) found +(28405) found +[10096] Forked 28406 +[10095] Forked 28407 +(28406) found +(28407) found +[10094] Forked 28408 +[10093] Forked 28409 +(28408) found +(28409) found +[10092] Forked 28410 +[10091] Forked 28411 +(28410) found +(28411) found +[10090] Forked 28412 +[10089] Forked 28413 +(28412) found +(28413) found +[10088] Forked 28414 +[10087] Forked 28415 +(28414) found +(28415) found +[10086] Forked 28416 +[10085] Forked 28417 +(28416) found +(28417) found +[10084] Forked 28418 +[10083] Forked 28419 +(28418) found +(28419) found +[10082] Forked 28420 +[10081] Forked 28421 +(28420) found +(28421) found +[10080] Forked 28422 +[10079] Forked 28423 +(28422) found +(28423) found +[10078] Forked 28424 +[10077] Forked 28425 +(28424) found +(28425) found +[10076] Forked 28426 +[10075] Forked 28427 +(28426) found +(28427) found +[10074] Forked 28428 +[10073] Forked 28429 +(28428) found +(28429) found +[10072] Forked 28430 +[10071] Forked 28431 +(28430) found +(28431) found +[10070] Forked 28432 +[10069] Forked 28433 +(28432) found +(28433) found +[10068] Forked 28434 +[10067] Forked 28435 +(28434) found +(28435) found +[10066] Forked 28436 +[10065] Forked 28437 +(28436) found +(28437) found +[10064] Forked 28438 +[10063] Forked 28439 +(28438) found +(28439) found +[10062] Forked 28440 +[10061] Forked 28441 +(28440) found +(28441) found +[10060] Forked 28442 +[10059] Forked 28443 +(28442) found +(28443) found +[10058] Forked 28444 +[10057] Forked 28445 +(28444) found +(28445) found +[10056] Forked 28446 +[10055] Forked 28447 +(28446) found +(28447) found +[10054] Forked 28448 +[10053] Forked 28449 +(28448) found +(28449) found +[10052] Forked 28450 +[10051] Forked 28452 +(28450) found +(28452) found +[10050] Forked 28453 +(28453) found +[10049] Forked 28454 +(28454) found +[10048] Forked 28455 +(28455) found +[10047] Forked 28456 +(28456) found +[10046] Forked 28457 +(28457) found +[10045] Forked 28458 +(28458) found +[10044] Forked 28459 +(28459) found +[10043] Forked 28460 +(28460) found +[10042] Forked 28461 +(28461) found +[10041] Forked 28462 +(28462) found +[10040] Forked 28463 +(28463) found +[10039] Forked 28464 +(28464) found +[10038] Forked 28465 +(28465) found +[10037] Forked 28466 +(28466) found +[10036] Forked 28467 +(28467) found +[10035] Forked 28468 +(28468) found +[10034] Forked 28469 +(28469) found +[10033] Forked 28470 +(28470) found +[10032] Forked 28471 +(28471) found +[10031] Forked 28472 +(28472) found +[10030] Forked 28473 +(28473) found +[10029] Forked 28474 +(28474) found +[10028] Forked 28475 +(28475) found +[10027] Forked 28476 +(28476) found +[10026] Forked 28477 +(28477) found +[10025] Forked 28478 +(28478) found +[10024] Forked 28479 +(28479) found +[10023] Forked 28480 +(28480) found +[10022] Forked 28481 +(28481) found +[10021] Forked 28482 +(28482) found +[10020] Forked 28483 +(28483) found +[10019] Forked 28484 +(28484) found +[10018] Forked 28485 +(28485) found +[10017] Forked 28486 +(28486) found +[10016] Forked 28487 +(28487) found +[10015] Forked 28488 +(28488) found +[10014] Forked 28489 +(28489) found +[10013] Forked 28490 +(28490) found +[10012] Forked 28491 +(28491) found +[10011] Forked 28492 +(28492) found +[10010] Forked 28493 +(28493) found +[10009] Forked 28494 +(28494) found +[10008] Forked 28495 +(28495) found +[10007] Forked 28496 +(28496) found +[10006] Forked 28497 +(28497) found +[10005] Forked 28498 +(28498) found +[10004] Forked 28499 +(28499) found +[10003] Forked 28500 +(28500) found +[10002] Forked 28501 +(28501) found +[10001] Forked 28502 +(28502) found +[10000] Forked 28503 +(28503) found +[9999] Forked 28504 +(28504) found +[9998] Forked 28505 +(28505) found +[9997] Forked 28506 +(28506) found +[9996] Forked 28507 +(28507) found +[9995] Forked 28508 +(28508) found +[9994] Forked 28509 +(28509) found +[9993] Forked 28510 +(28510) found +[9992] Forked 28511 +(28511) found +[9991] Forked 28512 +(28512) found +[9990] Forked 28513 +(28513) found +[9989] Forked 28514 +(28514) found +[9988] Forked 28515 +(28515) found +[9987] Forked 28516 +(28516) found +[9986] Forked 28517 +(28517) found +[9985] Forked 28518 +(28518) found +[9984] Forked 28519 +(28519) found +[9983] Forked 28520 +(28520) found +[9982] Forked 28521 +(28521) found +[9981] Forked 28522 +(28522) found +[9980] Forked 28523 +(28523) found +[9979] Forked 28524 +(28524) found +[9978] Forked 28525 +(28525) found +[9977] Forked 28526 +(28526) found +[9976] Forked 28527 +(28527) found +[9975] Forked 28528 +(28528) found +[9974] Forked 28529 +(28529) found +[9973] Forked 28530 +(28530) found +[9972] Forked 28531 +(28531) found +[9971] Forked 28532 +(28532) found +[9970] Forked 28533 +(28533) found +[9969] Forked 28534 +(28534) found +[9968] Forked 28535 +(28535) found +[9967] Forked 28536 +(28536) found +[9966] Forked 28537 +(28537) found +[9965] Forked 28538 +(28538) found +[9964] Forked 28539 +(28539) found +[9963] Forked 28540 +(28540) found +[9962] Forked 28541 +(28541) found +[9961] Forked 28542 +[9960] Forked 28543 +(28542) found +(28543) found +[9959] Forked 28544 +[9958] Forked 28545 +(28544) found +(28545) found +[9957] Forked 28546 +[9956] Forked 28547 +(28546) found +(28547) found +[9955] Forked 28548 +[9954] Forked 28549 +(28548) found +(28549) found +[9953] Forked 28550 +[9952] Forked 28551 +(28550) found +(28551) found +[9951] Forked 28552 +[9950] Forked 28553 +(28552) found +(28553) found +[9949] Forked 28554 +[9948] Forked 28555 +(28554) found +(28555) found +[9947] Forked 28556 +[9946] Forked 28557 +(28556) found +(28557) found +[9945] Forked 28558 +[9944] Forked 28559 +(28558) found +(28559) found +[9943] Forked 28560 +[9942] Forked 28561 +(28560) found +(28561) found +[9941] Forked 28562 +[9940] Forked 28563 +(28562) found +(28563) found +[9939] Forked 28564 +[9938] Forked 28565 +(28564) found +(28565) found +[9937] Forked 28566 +[9936] Forked 28567 +(28566) found +(28567) found +[9935] Forked 28568 +[9934] Forked 28569 +(28568) found +(28569) found +[9933] Forked 28570 +[9932] Forked 28572 +(28570) found +(28572) found +[9931] Forked 28573 +(28573) found +[9930] Forked 28574 +(28574) found +[9929] Forked 28575 +(28575) found +[9928] Forked 28576 +(28576) found +[9927] Forked 28577 +(28577) found +[9926] Forked 28578 +(28578) found +[9925] Forked 28579 +(28579) found +[9924] Forked 28580 +(28580) found +[9923] Forked 28581 +(28581) found +[9922] Forked 28582 +(28582) found +[9921] Forked 28583 +(28583) found +[9920] Forked 28584 +(28584) found +[9919] Forked 28585 +(28585) found +[9918] Forked 28586 +(28586) found +[9917] Forked 28587 +(28587) found +[9916] Forked 28588 +(28588) found +[9915] Forked 28589 +(28589) found +[9914] Forked 28590 +(28590) found +[9913] Forked 28591 +(28591) found +[9912] Forked 28592 +(28592) found +[9911] Forked 28593 +(28593) found +[9910] Forked 28594 +(28594) found +[9909] Forked 28595 +(28595) found +[9908] Forked 28596 +(28596) found +[9907] Forked 28597 +(28597) found +[9906] Forked 28598 +(28598) found +[9905] Forked 28599 +(28599) found +[9904] Forked 28600 +(28600) found +[9903] Forked 28601 +(28601) found +[9902] Forked 28602 +(28602) found +[9901] Forked 28603 +(28603) found +[9900] Forked 28604 +(28604) found +[9899] Forked 28605 +(28605) found +[9898] Forked 28606 +(28606) found +[9897] Forked 28607 +(28607) found +[9896] Forked 28608 +(28608) found +[9895] Forked 28609 +(28609) found +[9894] Forked 28610 +(28610) found +[9893] Forked 28611 +(28611) found +[9892] Forked 28612 +(28612) found +[9891] Forked 28613 +(28613) found +[9890] Forked 28614 +(28614) found +[9889] Forked 28615 +(28615) found +[9888] Forked 28616 +(28616) found +[9887] Forked 28617 +(28617) found +[9886] Forked 28618 +(28618) found +[9885] Forked 28619 +(28619) found +[9884] Forked 28620 +(28620) found +[9883] Forked 28621 +(28621) found +[9882] Forked 28622 +(28622) found +[9881] Forked 28623 +(28623) found +[9880] Forked 28624 +(28624) found +[9879] Forked 28625 +(28625) found +[9878] Forked 28626 +(28626) found +[9877] Forked 28627 +(28627) found +[9876] Forked 28628 +(28628) found +[9875] Forked 28629 +(28629) found +[9874] Forked 28630 +(28630) found +[9873] Forked 28631 +(28631) found +[9872] Forked 28632 +(28632) found +[9871] Forked 28633 +(28633) found +[9870] Forked 28634 +(28634) found +[9869] Forked 28635 +(28635) found +[9868] Forked 28636 +(28636) found +[9867] Forked 28637 +(28637) found +[9866] Forked 28638 +(28638) found +[9865] Forked 28639 +(28639) found +[9864] Forked 28640 +(28640) found +[9863] Forked 28641 +(28641) found +[9862] Forked 28642 +(28642) found +[9861] Forked 28643 +(28643) found +[9860] Forked 28644 +(28644) found +[9859] Forked 28645 +(28645) found +[9858] Forked 28646 +(28646) found +[9857] Forked 28647 +(28647) found +[9856] Forked 28648 +(28648) found +[9855] Forked 28649 +(28649) found +[9854] Forked 28650 +(28650) found +[9853] Forked 28651 +(28651) found +[9852] Forked 28652 +(28652) found +[9851] Forked 28653 +(28653) found +[9850] Forked 28654 +(28654) found +[9849] Forked 28655 +[9848] Forked 28656 +(28655) found +(28656) found +[9847] Forked 28657 +[9846] Forked 28658 +(28657) found +(28658) found +[9845] Forked 28659 +[9844] Forked 28660 +(28659) found +(28660) found +[9843] Forked 28661 +[9842] Forked 28662 +(28661) found +(28662) found +[9841] Forked 28663 +[9840] Forked 28664 +(28663) found +(28664) found +[9839] Forked 28665 +[9838] Forked 28666 +(28665) found +(28666) found +[9837] Forked 28667 +[9836] Forked 28668 +(28667) found +(28668) found +[9835] Forked 28669 +[9834] Forked 28670 +(28669) found +(28670) found +[9833] Forked 28671 +[9832] Forked 28672 +(28671) found +(28672) found +[9831] Forked 28673 +[9830] Forked 28674 +(28673) found +(28674) found +[9829] Forked 28675 +[9828] Forked 28676 +(28675) found +(28676) found +[9827] Forked 28677 +[9826] Forked 28678 +(28677) found +(28678) found +[9825] Forked 28679 +[9824] Forked 28680 +(28679) found +(28680) found +[9823] Forked 28681 +[9822] Forked 28682 +(28681) found +(28682) found +[9821] Forked 28683 +[9820] Forked 28684 +(28683) found +(28684) found +[9819] Forked 28685 +[9818] Forked 28686 +(28685) found +(28686) found +[9817] Forked 28687 +[9816] Forked 28688 +(28687) found +(28688) found +[9815] Forked 28689 +[9814] Forked 28690 +(28689) found +(28690) found +[9813] Forked 28691 +[9812] Forked 28692 +(28691) found +(28692) found +[9811] Forked 28693 +[9810] Forked 28694 +(28693) found +(28694) found +[9809] Forked 28696 +[9808] Forked 28697 +(28696) found +(28697) found +[9807] Forked 28698 +[9806] Forked 28699 +(28698) found +(28699) found +[9805] Forked 28700 +[9804] Forked 28701 +(28700) found +(28701) found +[9803] Forked 28702 +(28702) found +[9802] Forked 28703 +(28703) found +[9801] Forked 28704 +(28704) found +[9800] Forked 28705 +(28705) found +[9799] Forked 28706 +(28706) found +[9798] Forked 28707 +(28707) found +[9797] Forked 28708 +(28708) found +[9796] Forked 28709 +(28709) found +[9795] Forked 28710 +(28710) found +[9794] Forked 28711 +(28711) found +[9793] Forked 28712 +(28712) found +[9792] Forked 28713 +(28713) found +[9791] Forked 28714 +(28714) found +[9790] Forked 28715 +(28715) found +[9789] Forked 28716 +(28716) found +[9788] Forked 28717 +(28717) found +[9787] Forked 28718 +(28718) found +[9786] Forked 28719 +(28719) found +[9785] Forked 28720 +(28720) found +[9784] Forked 28721 +(28721) found +[9783] Forked 28722 +(28722) found +[9782] Forked 28723 +(28723) found +[9781] Forked 28724 +(28724) found +[9780] Forked 28725 +(28725) found +[9779] Forked 28726 +(28726) found +[9778] Forked 28727 +(28727) found +[9777] Forked 28728 +(28728) found +[9776] Forked 28729 +(28729) found +[9775] Forked 28730 +(28730) found +[9774] Forked 28731 +(28731) found +[9773] Forked 28732 +(28732) found +[9772] Forked 28733 +(28733) found +[9771] Forked 28734 +(28734) found +[9770] Forked 28735 +(28735) found +[9769] Forked 28736 +(28736) found +[9768] Forked 28737 +[9767] Forked 28738 +(28737) found +(28738) found +[9766] Forked 28739 +[9765] Forked 28740 +(28739) found +(28740) found +[9764] Forked 28741 +[9763] Forked 28742 +(28741) found +(28742) found +[9762] Forked 28743 +[9761] Forked 28744 +(28743) found +(28744) found +[9760] Forked 28745 +[9759] Forked 28746 +(28745) found +(28746) found +[9758] Forked 28747 +[9757] Forked 28748 +(28747) found +(28748) found +[9756] Forked 28749 +[9755] Forked 28750 +(28749) found +(28750) found +[9754] Forked 28751 +[9753] Forked 28752 +(28751) found +(28752) found +[9752] Forked 28753 +[9751] Forked 28754 +(28753) found +(28754) found +[9750] Forked 28755 +[9749] Forked 28756 +(28755) found +(28756) found +[9748] Forked 28757 +[9747] Forked 28758 +(28757) found +(28758) found +[9746] Forked 28759 +[9745] Forked 28760 +(28759) found +(28760) found +[9744] Forked 28761 +[9743] Forked 28762 +(28761) found +(28762) found +[9742] Forked 28763 +[9741] Forked 28764 +(28763) found +(28764) found +[9740] Forked 28765 +[9739] Forked 28766 +(28765) found +(28766) found +[9738] Forked 28767 +[9737] Forked 28768 +(28767) found +(28768) found +[9736] Forked 28769 +[9735] Forked 28770 +(28769) found +(28770) found +[9734] Forked 28771 +[9733] Forked 28772 +(28771) found +(28772) found +[9732] Forked 28773 +[9731] Forked 28774 +(28773) found +(28774) found +[9730] Forked 28775 +[9729] Forked 28776 +(28775) found +(28776) found +[9728] Forked 28777 +[9727] Forked 28778 +(28777) found +(28778) found +[9726] Forked 28779 +[9725] Forked 28780 +(28779) found +(28780) found +[9724] Forked 28781 +[9723] Forked 28782 +(28781) found +(28782) found +[9722] Forked 28783 +(28783) found +[9721] Forked 28784 +(28784) found +[9720] Forked 28785 +(28785) found +[9719] Forked 28786 +(28786) found +[9718] Forked 28787 +(28787) found +[9717] Forked 28788 +(28788) found +[9716] Forked 28789 +(28789) found +[9715] Forked 28790 +(28790) found +[9714] Forked 28791 +(28791) found +[9713] Forked 28792 +(28792) found +[9712] Forked 28793 +(28793) found +[9711] Forked 28794 +(28794) found +[9710] Forked 28795 +(28795) found +[9709] Forked 28796 +(28796) found +[9708] Forked 28797 +(28797) found +[9707] Forked 28798 +(28798) found +[9706] Forked 28799 +(28799) found +[9705] Forked 28800 +(28800) found +[9704] Forked 28801 +(28801) found +[9703] Forked 28802 +(28802) found +[9702] Forked 28803 +(28803) found +[9701] Forked 28804 +(28804) found +[9700] Forked 28805 +(28805) found +[9699] Forked 28806 +(28806) found +[9698] Forked 28807 +(28807) found +[9697] Forked 28808 +(28808) found +[9696] Forked 28809 +(28809) found +[9695] Forked 28810 +(28810) found +[9694] Forked 28811 +(28811) found +[9693] Forked 28812 +(28812) found +[9692] Forked 28813 +(28813) found +[9691] Forked 28814 +(28814) found +[9690] Forked 28815 +(28815) found +[9689] Forked 28816 +(28816) found +[9688] Forked 28817 +[9687] Forked 28818 +(28817) found +(28818) found +[9686] Forked 28819 +[9685] Forked 28820 +(28819) found +(28820) found +[9684] Forked 28821 +[9683] Forked 28822 +(28821) found +(28822) found +[9682] Forked 28823 +[9681] Forked 28824 +(28823) found +(28824) found +[9680] Forked 28825 +[9679] Forked 28826 +(28825) found +(28826) found +[9678] Forked 28827 +[9677] Forked 28828 +(28827) found +(28828) found +[9676] Forked 28829 +[9675] Forked 28830 +(28829) found +(28830) found +[9674] Forked 28831 +[9673] Forked 28832 +(28831) found +(28832) found +[9672] Forked 28833 +[9671] Forked 28834 +(28833) found +(28834) found +[9670] Forked 28835 +[9669] Forked 28836 +(28835) found +(28836) found +[9668] Forked 28837 +[9667] Forked 28838 +(28837) found +(28838) found +[9666] Forked 28839 +[9665] Forked 28840 +(28839) found +(28840) found +[9664] Forked 28841 +[9663] Forked 28842 +(28841) found +(28842) found +[9662] Forked 28843 +[9661] Forked 28844 +(28843) found +(28844) found +[9660] Forked 28845 +[9659] Forked 28846 +(28845) found +(28846) found +[9658] Forked 28847 +[9657] Forked 28848 +(28847) found +(28848) found +[9656] Forked 28849 +[9655] Forked 28850 +(28849) found +(28850) found +[9654] Forked 28851 +[9653] Forked 28852 +(28851) found +(28852) found +[9652] Forked 28853 +[9651] Forked 28854 +(28853) found +(28854) found +[9650] Forked 28855 +[9649] Forked 28856 +(28855) found +(28856) found +[9648] Forked 28857 +[9647] Forked 28858 +(28857) found +(28858) found +[9646] Forked 28859 +[9645] Forked 28860 +(28859) found +(28860) found +[9644] Forked 28861 +[9643] Forked 28862 +(28861) found +(28862) found +[9642] Forked 28863 +(28863) found +[9641] Forked 28864 +(28864) found +[9640] Forked 28865 +(28865) found +[9639] Forked 28866 +(28866) found +[9638] Forked 28867 +(28867) found +[9637] Forked 28868 +(28868) found +[9636] Forked 28869 +(28869) found +[9635] Forked 28870 +(28870) found +[9634] Forked 28871 +(28871) found +[9633] Forked 28872 +(28872) found +[9632] Forked 28873 +(28873) found +[9631] Forked 28874 +(28874) found +[9630] Forked 28875 +(28875) found +[9629] Forked 28876 +(28876) found +[9628] Forked 28877 +(28877) found +[9627] Forked 28878 +(28878) found +[9626] Forked 28879 +(28879) found +[9625] Forked 28880 +(28880) found +[9624] Forked 28881 +(28881) found +[9623] Forked 28882 +(28882) found +[9622] Forked 28883 +(28883) found +[9621] Forked 28884 +(28884) found +[9620] Forked 28885 +(28885) found +[9619] Forked 28886 +(28886) found +[9618] Forked 28887 +(28887) found +[9617] Forked 28888 +(28888) found +[9616] Forked 28889 +(28889) found +[9615] Forked 28890 +(28890) found +[9614] Forked 28891 +(28891) found +[9613] Forked 28892 +(28892) found +[9612] Forked 28893 +(28893) found +[9611] Forked 28894 +(28894) found +[9610] Forked 28895 +(28895) found +[9609] Forked 28896 +(28896) found +[9608] Forked 28897 +(28897) found +[9607] Forked 28898 +[9606] Forked 28899 +(28898) found +(28899) found +[9605] Forked 28900 +[9604] Forked 28901 +(28900) found +(28901) found +[9603] Forked 28902 +[9602] Forked 28903 +(28902) found +(28903) found +[9601] Forked 28904 +[9600] Forked 28905 +(28904) found +(28905) found +[9599] Forked 28906 +[9598] Forked 28907 +(28906) found +(28907) found +[9597] Forked 28908 +[9596] Forked 28909 +(28908) found +(28909) found +[9595] Forked 28910 +[9594] Forked 28911 +(28910) found +(28911) found +[9593] Forked 28912 +[9592] Forked 28913 +(28912) found +(28913) found +[9591] Forked 28914 +[9590] Forked 28915 +(28914) found +(28915) found +[9589] Forked 28916 +[9588] Forked 28917 +(28916) found +(28917) found +[9587] Forked 28918 +[9586] Forked 28919 +(28918) found +(28919) found +[9585] Forked 28920 +[9584] Forked 28921 +(28920) found +(28921) found +[9583] Forked 28922 +[9582] Forked 28923 +(28922) found +(28923) found +[9581] Forked 28924 +[9580] Forked 28925 +(28924) found +(28925) found +[9579] Forked 28926 +[9578] Forked 28927 +(28926) found +(28927) found +[9577] Forked 28928 +[9576] Forked 28929 +(28928) found +(28929) found +[9575] Forked 28930 +[9574] Forked 28931 +(28930) found +(28931) found +[9573] Forked 28932 +[9572] Forked 28933 +(28932) found +(28933) found +[9571] Forked 28934 +[9570] Forked 28935 +(28934) found +(28935) found +[9569] Forked 28936 +[9568] Forked 28937 +(28936) found +(28937) found +[9567] Forked 28938 +[9566] Forked 28939 +(28938) found +(28939) found +[9565] Forked 28940 +[9564] Forked 28941 +(28940) found +(28941) found +[9563] Forked 28942 +[9562] Forked 28943 +(28942) found +(28943) found +[9561] Forked 28944 +[9560] Forked 28945 +(28944) found +(28945) found +[9559] Forked 28946 +[9558] Forked 28947 +(28946) found +(28947) found +[9557] Forked 28948 +[9556] Forked 28949 +(28948) found +(28949) found +[9555] Forked 28950 +[9554] Forked 28951 +(28950) found +(28951) found +[9553] Forked 28952 +[9552] Forked 28953 +(28952) found +(28953) found +[9551] Forked 28954 +[9550] Forked 28955 +(28954) found +(28955) found +[9549] Forked 28956 +[9548] Forked 28957 +(28956) found +(28957) found +[9547] Forked 28958 +[9546] Forked 28959 +(28958) found +(28959) found +[9545] Forked 28960 +[9544] Forked 28961 +(28960) found +(28961) found +[9543] Forked 28962 +[9542] Forked 28963 +(28962) found +(28963) found +[9541] Forked 28964 +[9540] Forked 28965 +(28964) found +(28965) found +[9539] Forked 28966 +[9538] Forked 28967 +(28966) found +(28967) found +[9537] Forked 28968 +[9536] Forked 28969 +(28968) found +(28969) found +[9535] Forked 28970 +[9534] Forked 28971 +(28970) found +(28971) found +[9533] Forked 28972 +[9532] Forked 28973 +(28972) found +(28973) found +[9531] Forked 28974 +[9530] Forked 28975 +(28974) found +(28975) found +[9529] Forked 28976 +[9528] Forked 28977 +(28976) found +(28977) found +[9527] Forked 28978 +[9526] Forked 28979 +(28978) found +(28979) found +[9525] Forked 28980 +[9524] Forked 28981 +(28980) found +(28981) found +[9523] Forked 28982 +[9522] Forked 28983 +(28982) found +(28983) found +[9521] Forked 28984 +[9520] Forked 28985 +(28984) found +(28985) found +[9519] Forked 28986 +[9518] Forked 28987 +(28986) found +(28987) found +[9517] Forked 28988 +(28988) found +[9516] Forked 28989 +(28989) found +[9515] Forked 28990 +(28990) found +[9514] Forked 28991 +(28991) found +[9513] Forked 28992 +(28992) found +[9512] Forked 28993 +(28993) found +[9511] Forked 28994 +(28994) found +[9510] Forked 28995 +(28995) found +[9509] Forked 28996 +(28996) found +[9508] Forked 28997 +(28997) found +[9507] Forked 28998 +(28998) found +[9506] Forked 28999 +(28999) found +[9505] Forked 29000 +(29000) found +[9504] Forked 29001 +(29001) found +[9503] Forked 29002 +(29002) found +[9502] Forked 29003 +(29003) found +[9501] Forked 29004 +(29004) found +[9500] Forked 29005 +(29005) found +[9499] Forked 29006 +(29006) found +[9498] Forked 29007 +(29007) found +[9497] Forked 29008 +(29008) found +[9496] Forked 29009 +(29009) found +[9495] Forked 29010 +(29010) found +[9494] Forked 29011 +(29011) found +[9493] Forked 29012 +(29012) found +[9492] Forked 29013 +(29013) found +[9491] Forked 29014 +(29014) found +[9490] Forked 29015 +(29015) found +[9489] Forked 29016 +(29016) found +[9488] Forked 29017 +(29017) found +[9487] Forked 29018 +(29018) found +[9486] Forked 29019 +(29019) found +[9485] Forked 29020 +(29020) found +[9484] Forked 29021 +(29021) found +[9483] Forked 29022 +(29022) found +[9482] Forked 29023 +(29023) found +[9481] Forked 29024 +[9480] Forked 29025 +(29024) found +(29025) found +[9479] Forked 29026 +[9478] Forked 29027 +(29026) found +(29027) found +[9477] Forked 29028 +[9476] Forked 29029 +(29028) found +(29029) found +[9475] Forked 29030 +(29030) found +[9474] Forked 29031 +[9473] Forked 29032 +(29031) found +(29032) found +[9472] Forked 29033 +[9471] Forked 29034 +(29033) found +(29034) found +[9470] Forked 29035 +[9469] Forked 29036 +(29035) found +(29036) found +[9468] Forked 29037 +[9467] Forked 29038 +(29037) found +(29038) found +[9466] Forked 29039 +[9465] Forked 29040 +(29039) found +(29040) found +[9464] Forked 29041 +[9463] Forked 29042 +(29041) found +(29042) found +[9462] Forked 29043 +[9461] Forked 29044 +(29043) found +(29044) found +[9460] Forked 29045 +[9459] Forked 29046 +(29045) found +(29046) found +[9458] Forked 29047 +[9457] Forked 29048 +(29047) found +(29048) found +[9456] Forked 29049 +[9455] Forked 29050 +(29049) found +(29050) found +[9454] Forked 29051 +[9453] Forked 29052 +(29051) found +(29052) found +[9452] Forked 29053 +[9451] Forked 29054 +(29053) found +(29054) found +[9450] Forked 29055 +[9449] Forked 29056 +(29055) found +(29056) found +[9448] Forked 29057 +[9447] Forked 29058 +(29057) found +(29058) found +[9446] Forked 29059 +[9445] Forked 29060 +(29059) found +(29060) found +[9444] Forked 29061 +[9443] Forked 29062 +(29061) found +(29062) found +[9442] Forked 29063 +[9441] Forked 29064 +(29063) found +(29064) found +[9440] Forked 29065 +[9439] Forked 29066 +(29065) found +(29066) found +[9438] Forked 29067 +(29067) found +[9437] Forked 29068 +(29068) found +[9436] Forked 29069 +(29069) found +[9435] Forked 29070 +(29070) found +[9434] Forked 29071 +(29071) found +[9433] Forked 29072 +(29072) found +[9432] Forked 29073 +(29073) found +[9431] Forked 29074 +(29074) found +[9430] Forked 29075 +(29075) found +[9429] Forked 29076 +(29076) found +[9428] Forked 29077 +(29077) found +[9427] Forked 29078 +(29078) found +[9426] Forked 29079 +(29079) found +[9425] Forked 29080 +(29080) found +[9424] Forked 29081 +(29081) found +[9423] Forked 29082 +(29082) found +[9422] Forked 29083 +(29083) found +[9421] Forked 29084 +(29084) found +[9420] Forked 29085 +(29085) found +[9419] Forked 29086 +(29086) found +[9418] Forked 29087 +(29087) found +[9417] Forked 29088 +(29088) found +[9416] Forked 29089 +(29089) found +[9415] Forked 29090 +(29090) found +[9414] Forked 29091 +(29091) found +[9413] Forked 29092 +(29092) found +[9412] Forked 29093 +(29093) found +[9411] Forked 29094 +(29094) found +[9410] Forked 29095 +(29095) found +[9409] Forked 29096 +(29096) found +[9408] Forked 29097 +(29097) found +[9407] Forked 29098 +(29098) found +[9406] Forked 29099 +(29099) found +[9405] Forked 29100 +(29100) found +[9404] Forked 29101 +(29101) found +[9403] Forked 29102 +(29102) found +[9402] Forked 29103 +[9401] Forked 29104 +(29103) found +(29104) found +[9400] Forked 29105 +[9399] Forked 29106 +(29105) found +(29106) found +[9398] Forked 29107 +(29107) found +[9397] Forked 29108 +[9396] Forked 29109 +(29108) found +(29109) found +[9395] Forked 29110 +[9394] Forked 29111 +(29110) found +(29111) found +[9393] Forked 29112 +[9392] Forked 29113 +(29112) found +(29113) found +[9391] Forked 29114 +[9390] Forked 29115 +(29114) found +(29115) found +[9389] Forked 29116 +[9388] Forked 29117 +(29116) found +(29117) found +[9387] Forked 29118 +[9386] Forked 29119 +(29118) found +(29119) found +[9385] Forked 29120 +[9384] Forked 29121 +(29120) found +(29121) found +[9383] Forked 29122 +[9382] Forked 29123 +(29122) found +(29123) found +[9381] Forked 29124 +[9380] Forked 29125 +(29124) found +(29125) found +[9379] Forked 29126 +[9378] Forked 29127 +(29126) found +(29127) found +[9377] Forked 29128 +[9376] Forked 29129 +(29128) found +(29129) found +[9375] Forked 29130 +[9374] Forked 29131 +(29130) found +(29131) found +[9373] Forked 29132 +[9372] Forked 29133 +(29132) found +(29133) found +[9371] Forked 29134 +[9370] Forked 29135 +(29134) found +(29135) found +[9369] Forked 29136 +[9368] Forked 29137 +(29136) found +(29137) found +[9367] Forked 29138 +[9366] Forked 29139 +(29138) found +(29139) found +[9365] Forked 29140 +[9364] Forked 29141 +(29140) found +(29141) found +[9363] Forked 29142 +[9362] Forked 29143 +(29142) found +(29143) found +[9361] Forked 29144 +[9360] Forked 29145 +(29144) found +(29145) found +[9359] Forked 29146 +[9358] Forked 29147 +(29146) found +(29147) found +[9357] Forked 29148 +[9356] Forked 29149 +(29148) found +(29149) found +[9355] Forked 29150 +[9354] Forked 29151 +(29150) found +(29151) found +[9353] Forked 29152 +[9352] Forked 29153 +(29152) found +(29153) found +[9351] Forked 29154 +[9350] Forked 29155 +(29154) found +(29155) found +[9349] Forked 29156 +[9348] Forked 29157 +(29156) found +(29157) found +[9347] Forked 29158 +[9346] Forked 29159 +(29158) found +(29159) found +[9345] Forked 29160 +[9344] Forked 29161 +(29160) found +(29161) found +[9343] Forked 29162 +[9342] Forked 29163 +(29162) found +(29163) found +[9341] Forked 29164 +[9340] Forked 29165 +(29164) found +(29165) found +[9339] Forked 29166 +[9338] Forked 29167 +(29166) found +(29167) found +[9337] Forked 29168 +[9336] Forked 29169 +(29168) found +(29169) found +[9335] Forked 29170 +[9334] Forked 29171 +(29170) found +(29171) found +[9333] Forked 29172 +[9332] Forked 29173 +(29172) found +(29173) found +[9331] Forked 29174 +[9330] Forked 29176 +(29174) found +(29176) found +[9329] Forked 29177 +(29177) found +[9328] Forked 29178 +(29178) found +[9327] Forked 29179 +(29179) found +[9326] Forked 29180 +(29180) found +[9325] Forked 29181 +(29181) found +[9324] Forked 29182 +(29182) found +[9323] Forked 29183 +(29183) found +[9322] Forked 29184 +(29184) found +[9321] Forked 29185 +(29185) found +[9320] Forked 29186 +(29186) found +[9319] Forked 29187 +(29187) found +[9318] Forked 29188 +(29188) found +[9317] Forked 29189 +(29189) found +[9316] Forked 29190 +(29190) found +[9315] Forked 29191 +(29191) found +[9314] Forked 29192 +(29192) found +[9313] Forked 29193 +(29193) found +[9312] Forked 29194 +(29194) found +[9311] Forked 29195 +(29195) found +[9310] Forked 29196 +(29196) found +[9309] Forked 29197 +(29197) found +[9308] Forked 29198 +(29198) found +[9307] Forked 29199 +(29199) found +[9306] Forked 29200 +(29200) found +[9305] Forked 29201 +(29201) found +[9304] Forked 29202 +(29202) found +[9303] Forked 29203 +(29203) found +[9302] Forked 29204 +(29204) found +[9301] Forked 29205 +(29205) found +[9300] Forked 29206 +(29206) found +[9299] Forked 29207 +(29207) found +[9298] Forked 29208 +(29208) found +[9297] Forked 29209 +(29209) found +[9296] Forked 29210 +(29210) found +[9295] Forked 29211 +(29211) found +[9294] Forked 29212 +(29212) found +[9293] Forked 29213 +(29213) found +[9292] Forked 29214 +(29214) found +[9291] Forked 29215 +(29215) found +[9290] Forked 29216 +(29216) found +[9289] Forked 29217 +(29217) found +[9288] Forked 29218 +(29218) found +[9287] Forked 29219 +(29219) found +[9286] Forked 29220 +(29220) found +[9285] Forked 29221 +(29221) found +[9284] Forked 29222 +(29222) found +[9283] Forked 29223 +(29223) found +[9282] Forked 29224 +(29224) found +[9281] Forked 29225 +(29225) found +[9280] Forked 29226 +[9279] Forked 29227 +(29226) found +(29227) found +[9278] Forked 29228 +[9277] Forked 29229 +(29228) found +(29229) found +[9276] Forked 29230 +[9275] Forked 29231 +(29230) found +(29231) found +[9274] Forked 29232 +[9273] Forked 29233 +(29232) found +(29233) found +[9272] Forked 29234 +[9271] Forked 29235 +(29234) found +(29235) found +[9270] Forked 29236 +[9269] Forked 29237 +(29236) found +(29237) found +[9268] Forked 29238 +[9267] Forked 29239 +(29238) found +(29239) found +[9266] Forked 29240 +[9265] Forked 29241 +(29240) found +(29241) found +[9264] Forked 29242 +[9263] Forked 29243 +(29242) found +(29243) found +[9262] Forked 29244 +[9261] Forked 29245 +(29244) found +(29245) found +[9260] Forked 29246 +[9259] Forked 29247 +(29246) found +(29247) found +[9258] Forked 29248 +[9257] Forked 29249 +(29248) found +(29249) found +[9256] Forked 29250 +[9255] Forked 29251 +(29250) found +(29251) found +[9254] Forked 29252 +[9253] Forked 29253 +(29252) found +(29253) found +[9252] Forked 29254 +[9251] Forked 29255 +(29254) found +(29255) found +[9250] Forked 29256 +[9249] Forked 29257 +(29256) found +(29257) found +[9248] Forked 29258 +[9247] Forked 29259 +(29258) found +(29259) found +[9246] Forked 29260 +[9245] Forked 29261 +(29260) found +(29261) found +[9244] Forked 29262 +[9243] Forked 29263 +(29262) found +(29263) found +[9242] Forked 29264 +[9241] Forked 29265 +(29264) found +(29265) found +[9240] Forked 29266 +[9239] Forked 29267 +(29266) found +(29267) found +[9238] Forked 29268 +[9237] Forked 29269 +(29268) found +(29269) found +[9236] Forked 29270 +[9235] Forked 29271 +(29270) found +(29271) found +[9234] Forked 29272 +(29272) found +[9233] Forked 29273 +(29273) found +[9232] Forked 29274 +(29274) found +[9231] Forked 29275 +(29275) found +[9230] Forked 29276 +(29276) found +[9229] Forked 29277 +(29277) found +[9228] Forked 29278 +(29278) found +[9227] Forked 29279 +(29279) found +[9226] Forked 29280 +(29280) found +[9225] Forked 29281 +(29281) found +[9224] Forked 29282 +(29282) found +[9223] Forked 29283 +(29283) found +[9222] Forked 29284 +(29284) found +[9221] Forked 29285 +(29285) found +[9220] Forked 29286 +(29286) found +[9219] Forked 29287 +(29287) found +[9218] Forked 29288 +(29288) found +[9217] Forked 29289 +(29289) found +[9216] Forked 29290 +(29290) found +[9215] Forked 29291 +(29291) found +[9214] Forked 29292 +(29292) found +[9213] Forked 29293 +(29293) found +[9212] Forked 29294 +(29294) found +[9211] Forked 29295 +(29295) found +[9210] Forked 29296 +(29296) found +[9209] Forked 29297 +(29297) found +[9208] Forked 29298 +(29298) found +[9207] Forked 29299 +(29299) found +[9206] Forked 29300 +(29300) found +[9205] Forked 29301 +(29301) found +[9204] Forked 29302 +(29302) found +[9203] Forked 29303 +(29303) found +[9202] Forked 29304 +(29304) found +[9201] Forked 29305 +(29305) found +[9200] Forked 29306 +[9199] Forked 29307 +(29306) found +(29307) found +[9198] Forked 29308 +[9197] Forked 29309 +(29308) found +(29309) found +[9196] Forked 29310 +[9195] Forked 29311 +(29310) found +(29311) found +[9194] Forked 29312 +[9193] Forked 29313 +(29312) found +(29313) found +[9192] Forked 29314 +[9191] Forked 29315 +(29314) found +(29315) found +[9190] Forked 29316 +[9189] Forked 29317 +(29316) found +(29317) found +[9188] Forked 29318 +[9187] Forked 29319 +(29318) found +(29319) found +[9186] Forked 29320 +[9185] Forked 29321 +(29320) found +(29321) found +[9184] Forked 29322 +[9183] Forked 29323 +(29322) found +(29323) found +[9182] Forked 29324 +[9181] Forked 29325 +(29324) found +(29325) found +[9180] Forked 29326 +[9179] Forked 29327 +(29326) found +(29327) found +[9178] Forked 29328 +[9177] Forked 29329 +(29328) found +(29329) found +[9176] Forked 29330 +[9175] Forked 29331 +(29330) found +(29331) found +[9174] Forked 29332 +[9173] Forked 29333 +(29332) found +(29333) found +[9172] Forked 29334 +[9171] Forked 29335 +(29334) found +(29335) found +[9170] Forked 29336 +[9169] Forked 29337 +(29336) found +(29337) found +[9168] Forked 29338 +[9167] Forked 29339 +(29338) found +(29339) found +[9166] Forked 29340 +[9165] Forked 29341 +(29340) found +(29341) found +[9164] Forked 29342 +[9163] Forked 29343 +(29342) found +(29343) found +[9162] Forked 29344 +[9161] Forked 29345 +(29344) found +(29345) found +[9160] Forked 29346 +[9159] Forked 29347 +(29346) found +(29347) found +[9158] Forked 29348 +[9157] Forked 29349 +(29348) found +(29349) found +[9156] Forked 29350 +[9155] Forked 29351 +(29350) found +(29351) found +[9154] Forked 29352 +[9153] Forked 29353 +(29352) found +(29353) found +[9152] Forked 29354 +[9151] Forked 29355 +(29354) found +(29355) found +[9150] Forked 29356 +[9149] Forked 29357 +(29356) found +(29357) found +[9148] Forked 29358 +[9147] Forked 29359 +(29358) found +(29359) found +[9146] Forked 29360 +[9145] Forked 29361 +(29360) found +(29361) found +[9144] Forked 29362 +[9143] Forked 29363 +(29362) found +(29363) found +[9142] Forked 29364 +[9141] Forked 29365 +(29364) found +(29365) found +[9140] Forked 29366 +[9139] Forked 29367 +(29366) found +(29367) found +[9138] Forked 29368 +[9137] Forked 29369 +(29368) found +(29369) found +[9136] Forked 29370 +[9135] Forked 29371 +(29370) found +(29371) found +[9134] Forked 29372 +[9133] Forked 29373 +(29372) found +(29373) found +[9132] Forked 29374 +[9131] Forked 29375 +(29374) found +(29375) found +[9130] Forked 29376 +[9129] Forked 29377 +(29376) found +(29377) found +[9128] Forked 29378 +[9127] Forked 29379 +(29378) found +(29379) found +[9126] Forked 29380 +[9125] Forked 29381 +(29380) found +(29381) found +[9124] Forked 29382 +[9123] Forked 29383 +(29382) found +(29383) found +[9122] Forked 29384 +[9121] Forked 29385 +(29384) found +(29385) found +[9120] Forked 29386 +[9119] Forked 29387 +(29386) found +(29387) found +[9118] Forked 29388 +[9117] Forked 29389 +(29388) found +(29389) found +[9116] Forked 29390 +[9115] Forked 29391 +(29390) found +(29391) found +[9114] Forked 29392 +[9113] Forked 29393 +(29392) found +(29393) found +[9112] Forked 29394 +[9111] Forked 29395 +(29394) found +(29395) found +[9110] Forked 29396 +(29396) found +[9109] Forked 29397 +(29397) found +[9108] Forked 29398 +(29398) found +[9107] Forked 29399 +(29399) found +[9106] Forked 29400 +(29400) found +[9105] Forked 29401 +(29401) found +[9104] Forked 29402 +(29402) found +[9103] Forked 29403 +(29403) found +[9102] Forked 29404 +(29404) found +[9101] Forked 29405 +(29405) found +[9100] Forked 29406 +(29406) found +[9099] Forked 29407 +(29407) found +[9098] Forked 29408 +(29408) found +[9097] Forked 29409 +(29409) found +[9096] Forked 29410 +(29410) found +[9095] Forked 29411 +(29411) found +[9094] Forked 29412 +(29412) found +[9093] Forked 29413 +(29413) found +[9092] Forked 29414 +(29414) found +[9091] Forked 29415 +(29415) found +[9090] Forked 29416 +(29416) found +[9089] Forked 29417 +(29417) found +[9088] Forked 29418 +(29418) found +[9087] Forked 29419 +(29419) found +[9086] Forked 29420 +(29420) found +[9085] Forked 29421 +(29421) found +[9084] Forked 29422 +(29422) found +[9083] Forked 29423 +(29423) found +[9082] Forked 29424 +(29424) found +[9081] Forked 29425 +(29425) found +[9080] Forked 29426 +(29426) found +[9079] Forked 29427 +(29427) found +[9078] Forked 29428 +(29428) found +[9077] Forked 29429 +(29429) found +[9076] Forked 29430 +(29430) found +[9075] Forked 29431 +(29431) found +[9074] Forked 29432 +[9073] Forked 29433 +(29432) found +(29433) found +[9072] Forked 29434 +[9071] Forked 29435 +(29434) found +(29435) found +[9070] Forked 29436 +(29436) found +[9069] Forked 29437 +[9068] Forked 29438 +(29437) found +(29438) found +[9067] Forked 29439 +[9066] Forked 29440 +(29439) found +(29440) found +[9065] Forked 29441 +[9064] Forked 29442 +(29441) found +(29442) found +[9063] Forked 29443 +[9062] Forked 29444 +(29443) found +(29444) found +[9061] Forked 29445 +[9060] Forked 29446 +(29445) found +(29446) found +[9059] Forked 29447 +[9058] Forked 29448 +(29447) found +(29448) found +[9057] Forked 29449 +[9056] Forked 29450 +(29449) found +(29450) found +[9055] Forked 29451 +[9054] Forked 29452 +(29451) found +(29452) found +[9053] Forked 29453 +[9052] Forked 29454 +(29453) found +(29454) found +[9051] Forked 29455 +[9050] Forked 29456 +(29455) found +(29456) found +[9049] Forked 29457 +[9048] Forked 29458 +(29457) found +(29458) found +[9047] Forked 29459 +[9046] Forked 29460 +(29459) found +(29460) found +[9045] Forked 29461 +[9044] Forked 29462 +(29461) found +(29462) found +[9043] Forked 29463 +[9042] Forked 29464 +(29463) found +(29464) found +[9041] Forked 29465 +[9040] Forked 29466 +(29465) found +(29466) found +[9039] Forked 29467 +[9038] Forked 29468 +(29467) found +(29468) found +[9037] Forked 29469 +[9036] Forked 29470 +(29469) found +(29470) found +[9035] Forked 29471 +[9034] Forked 29472 +(29471) found +(29472) found +[9033] Forked 29473 +[9032] Forked 29474 +(29473) found +(29474) found +[9031] Forked 29475 +[9030] Forked 29476 +(29475) found +(29476) found +[9029] Forked 29477 +[9028] Forked 29478 +(29477) found +(29478) found +[9027] Forked 29479 +[9026] Forked 29480 +(29479) found +(29480) found +[9025] Forked 29481 +[9024] Forked 29482 +(29481) found +(29482) found +[9023] Forked 29483 +[9022] Forked 29484 +(29483) found +(29484) found +[9021] Forked 29485 +[9020] Forked 29486 +(29485) found +(29486) found +[9019] Forked 29487 +[9018] Forked 29488 +(29487) found +(29488) found +[9017] Forked 29489 +[9016] Forked 29490 +(29489) found +(29490) found +[9015] Forked 29491 +[9014] Forked 29492 +(29491) found +(29492) found +[9013] Forked 29493 +[9012] Forked 29494 +(29493) found +(29494) found +[9011] Forked 29495 +[9010] Forked 29496 +(29495) found +(29496) found +[9009] Forked 29497 +[9008] Forked 29498 +(29497) found +(29498) found +[9007] Forked 29499 +[9006] Forked 29500 +(29499) found +(29500) found +[9005] Forked 29501 +[9004] Forked 29502 +(29501) found +(29502) found +[9003] Forked 29503 +[9002] Forked 29504 +(29503) found +(29504) found +[9001] Forked 29505 +[9000] Forked 29506 +(29505) found +(29506) found +[8999] Forked 29507 +[8998] Forked 29508 +(29507) found +(29508) found +[8997] Forked 29509 +[8996] Forked 29510 +(29509) found +(29510) found +[8995] Forked 29511 +[8994] Forked 29512 +(29511) found +(29512) found +[8993] Forked 29513 +[8992] Forked 29514 +(29513) found +(29514) found +[8991] Forked 29515 +[8990] Forked 29516 +(29515) found +(29516) found +[8989] Forked 29517 +[8988] Forked 29518 +(29517) found +(29518) found +[8987] Forked 29519 +[8986] Forked 29520 +(29519) found +(29520) found +[8985] Forked 29521 +[8984] Forked 29522 +(29521) found +(29522) found +[8983] Forked 29523 +[8982] Forked 29524 +(29523) found +(29524) found +[8981] Forked 29525 +[8980] Forked 29526 +(29525) found +(29526) found +[8979] Forked 29527 +[8978] Forked 29528 +(29527) found +(29528) found +[8977] Forked 29529 +[8976] Forked 29530 +(29529) found +(29530) found +[8975] Forked 29531 +[8974] Forked 29532 +(29531) found +(29532) found +[8973] Forked 29533 +[8972] Forked 29534 +(29533) found +(29534) found +[8971] Forked 29535 +[8970] Forked 29536 +(29535) found +(29536) found +[8969] Forked 29537 +[8968] Forked 29538 +(29537) found +(29538) found +[8967] Forked 29539 +[8966] Forked 29540 +(29539) found +(29540) found +[8965] Forked 29541 +[8964] Forked 29542 +(29541) found +(29542) found +[8963] Forked 29543 +[8962] Forked 29544 +(29543) found +(29544) found +[8961] Forked 29545 +[8960] Forked 29546 +(29545) found +(29546) found +[8959] Forked 29547 +(29547) found +[8958] Forked 29548 +(29548) found +[8957] Forked 29549 +[8956] Forked 29550 +(29549) found +(29550) found +[8955] Forked 29551 +[8954] Forked 29552 +(29551) found +(29552) found +[8953] Forked 29553 +[8952] Forked 29554 +(29553) found +(29554) found +[8951] Forked 29555 +[8950] Forked 29556 +(29555) found +(29556) found +[8949] Forked 29557 +[8948] Forked 29558 +(29557) found +(29558) found +[8947] Forked 29559 +[8946] Forked 29560 +(29559) found +(29560) found +[8945] Forked 29561 +[8944] Forked 29562 +(29561) found +(29562) found +[8943] Forked 29563 +[8942] Forked 29564 +(29563) found +(29564) found +[8941] Forked 29565 +(29565) found +[8940] Forked 29566 +(29566) found +[8939] Forked 29567 +(29567) found +[8938] Forked 29568 +(29568) found +[8937] Forked 29569 +(29569) found +[8936] Forked 29570 +(29570) found +[8935] Forked 29571 +(29571) found +[8934] Forked 29572 +(29572) found +[8933] Forked 29573 +(29573) found +[8932] Forked 29574 +(29574) found +[8931] Forked 29575 +(29575) found +[8930] Forked 29576 +(29576) found +[8929] Forked 29577 +(29577) found +[8928] Forked 29578 +(29578) found +[8927] Forked 29579 +(29579) found +[8926] Forked 29580 +(29580) found +[8925] Forked 29581 +(29581) found +[8924] Forked 29582 +(29582) found +[8923] Forked 29583 +(29583) found +[8922] Forked 29584 +(29584) found +[8921] Forked 29585 +(29585) found +[8920] Forked 29586 +(29586) found +[8919] Forked 29587 +(29587) found +[8918] Forked 29588 +(29588) found +[8917] Forked 29589 +(29589) found +[8916] Forked 29590 +(29590) found +[8915] Forked 29591 +(29591) found +[8914] Forked 29592 +(29592) found +[8913] Forked 29593 +(29593) found +[8912] Forked 29594 +(29594) found +[8911] Forked 29595 +(29595) found +[8910] Forked 29596 +(29596) found +[8909] Forked 29597 +(29597) found +[8908] Forked 29598 +(29598) found +[8907] Forked 29599 +(29599) found +[8906] Forked 29600 +(29600) found +[8905] Forked 29601 +(29601) found +[8904] Forked 29602 +(29602) found +[8903] Forked 29603 +(29603) found +[8902] Forked 29604 +(29604) found +[8901] Forked 29605 +(29605) found +[8900] Forked 29606 +(29606) found +[8899] Forked 29607 +(29607) found +[8898] Forked 29608 +(29608) found +[8897] Forked 29609 +(29609) found +[8896] Forked 29610 +(29610) found +[8895] Forked 29611 +(29611) found +[8894] Forked 29612 +(29612) found +[8893] Forked 29613 +(29613) found +[8892] Forked 29614 +(29614) found +[8891] Forked 29615 +(29615) found +[8890] Forked 29616 +(29616) found +[8889] Forked 29617 +(29617) found +[8888] Forked 29618 +(29618) found +[8887] Forked 29619 +(29619) found +[8886] Forked 29620 +(29620) found +[8885] Forked 29621 +(29621) found +[8884] Forked 29622 +(29622) found +[8883] Forked 29623 +(29623) found +[8882] Forked 29624 +(29624) found +[8881] Forked 29625 +(29625) found +[8880] Forked 29626 +(29626) found +[8879] Forked 29627 +(29627) found +[8878] Forked 29628 +(29628) found +[8877] Forked 29629 +(29629) found +[8876] Forked 29630 +(29630) found +[8875] Forked 29631 +(29631) found +[8874] Forked 29632 +(29632) found +[8873] Forked 29633 +(29633) found +[8872] Forked 29634 +(29634) found +[8871] Forked 29635 +(29635) found +[8870] Forked 29636 +(29636) found +[8869] Forked 29637 +[8868] Forked 29638 +(29637) found +(29638) found +[8867] Forked 29639 +[8866] Forked 29640 +(29639) found +(29640) found +[8865] Forked 29641 +[8864] Forked 29642 +(29641) found +(29642) found +[8863] Forked 29643 +[8862] Forked 29644 +(29643) found +(29644) found +[8861] Forked 29645 +[8860] Forked 29646 +(29645) found +(29646) found +[8859] Forked 29647 +[8858] Forked 29648 +(29647) found +(29648) found +[8857] Forked 29649 +[8856] Forked 29650 +(29649) found +(29650) found +[8855] Forked 29651 +[8854] Forked 29652 +(29651) found +(29652) found +[8853] Forked 29653 +[8852] Forked 29654 +(29653) found +(29654) found +[8851] Forked 29655 +[8850] Forked 29656 +(29655) found +(29656) found +[8849] Forked 29657 +[8848] Forked 29659 +(29657) found +(29659) found +[8847] Forked 29660 +(29660) found +[8846] Forked 29661 +(29661) found +[8845] Forked 29662 +(29662) found +[8844] Forked 29663 +(29663) found +[8843] Forked 29664 +(29664) found +[8842] Forked 29665 +(29665) found +[8841] Forked 29666 +(29666) found +[8840] Forked 29667 +(29667) found +[8839] Forked 29668 +(29668) found +[8838] Forked 29669 +(29669) found +[8837] Forked 29670 +(29670) found +[8836] Forked 29671 +(29671) found +[8835] Forked 29672 +(29672) found +[8834] Forked 29673 +(29673) found +[8833] Forked 29674 +(29674) found +[8832] Forked 29675 +(29675) found +[8831] Forked 29676 +(29676) found +[8830] Forked 29677 +(29677) found +[8829] Forked 29678 +(29678) found +[8828] Forked 29679 +(29679) found +[8827] Forked 29680 +(29680) found +[8826] Forked 29681 +(29681) found +[8825] Forked 29682 +(29682) found +[8824] Forked 29683 +(29683) found +[8823] Forked 29684 +(29684) found +[8822] Forked 29685 +(29685) found +[8821] Forked 29686 +(29686) found +[8820] Forked 29687 +(29687) found +[8819] Forked 29688 +(29688) found +[8818] Forked 29689 +(29689) found +[8817] Forked 29690 +(29690) found +[8816] Forked 29691 +(29691) found +[8815] Forked 29692 +(29692) found +[8814] Forked 29693 +(29693) found +[8813] Forked 29694 +(29694) found +[8812] Forked 29695 +(29695) found +[8811] Forked 29696 +(29696) found +[8810] Forked 29697 +(29697) found +[8809] Forked 29698 +(29698) found +[8808] Forked 29699 +(29699) found +[8807] Forked 29700 +(29700) found +[8806] Forked 29701 +(29701) found +[8805] Forked 29702 +(29702) found +[8804] Forked 29703 +(29703) found +[8803] Forked 29704 +(29704) found +[8802] Forked 29705 +(29705) found +[8801] Forked 29706 +(29706) found +[8800] Forked 29707 +(29707) found +[8799] Forked 29708 +(29708) found +[8798] Forked 29709 +(29709) found +[8797] Forked 29710 +(29710) found +[8796] Forked 29711 +(29711) found +[8795] Forked 29712 +(29712) found +[8794] Forked 29713 +(29713) found +[8793] Forked 29714 +(29714) found +[8792] Forked 29715 +(29715) found +[8791] Forked 29716 +(29716) found +[8790] Forked 29717 +(29717) found +[8789] Forked 29718 +(29718) found +[8788] Forked 29719 +(29719) found +[8787] Forked 29720 +(29720) found +[8786] Forked 29721 +(29721) found +[8785] Forked 29722 +(29722) found +[8784] Forked 29723 +(29723) found +[8783] Forked 29724 +(29724) found +[8782] Forked 29725 +(29725) found +[8781] Forked 29726 +(29726) found +[8780] Forked 29727 +(29727) found +[8779] Forked 29728 +(29728) found +[8778] Forked 29729 +(29729) found +[8777] Forked 29730 +(29730) found +[8776] Forked 29731 +(29731) found +[8775] Forked 29732 +(29732) found +[8774] Forked 29733 +(29733) found +[8773] Forked 29734 +(29734) found +[8772] Forked 29735 +(29735) found +[8771] Forked 29736 +(29736) found +[8770] Forked 29737 +(29737) found +[8769] Forked 29738 +(29738) found +[8768] Forked 29739 +(29739) found +[8767] Forked 29740 +(29740) found +[8766] Forked 29741 +(29741) found +[8765] Forked 29742 +(29742) found +[8764] Forked 29743 +(29743) found +[8763] Forked 29744 +(29744) found +[8762] Forked 29745 +(29745) found +[8761] Forked 29746 +(29746) found +[8760] Forked 29747 +(29747) found +[8759] Forked 29748 +(29748) found +[8758] Forked 29749 +[8757] Forked 29750 +(29749) found +(29750) found +[8756] Forked 29751 +[8755] Forked 29752 +(29751) found +(29752) found +[8754] Forked 29753 +[8753] Forked 29755 +(29753) found +(29755) found +[8752] Forked 29756 +(29756) found +[8751] Forked 29757 +(29757) found +[8750] Forked 29758 +(29758) found +[8749] Forked 29759 +(29759) found +[8748] Forked 29760 +(29760) found +[8747] Forked 29761 +(29761) found +[8746] Forked 29762 +(29762) found +[8745] Forked 29763 +(29763) found +[8744] Forked 29764 +(29764) found +[8743] Forked 29765 +(29765) found +[8742] Forked 29766 +(29766) found +[8741] Forked 29767 +(29767) found +[8740] Forked 29768 +(29768) found +[8739] Forked 29769 +(29769) found +[8738] Forked 29770 +(29770) found +[8737] Forked 29771 +(29771) found +[8736] Forked 29772 +(29772) found +[8735] Forked 29773 +(29773) found +[8734] Forked 29774 +(29774) found +[8733] Forked 29775 +(29775) found +[8732] Forked 29776 +(29776) found +[8731] Forked 29777 +(29777) found +[8730] Forked 29778 +(29778) found +[8729] Forked 29779 +(29779) found +[8728] Forked 29780 +(29780) found +[8727] Forked 29781 +(29781) found +[8726] Forked 29782 +(29782) found +[8725] Forked 29783 +(29783) found +[8724] Forked 29784 +(29784) found +[8723] Forked 29785 +(29785) found +[8722] Forked 29786 +(29786) found +[8721] Forked 29787 +(29787) found +[8720] Forked 29788 +(29788) found +[8719] Forked 29789 +(29789) found +[8718] Forked 29790 +(29790) found +[8717] Forked 29791 +(29791) found +[8716] Forked 29792 +(29792) found +[8715] Forked 29793 +(29793) found +[8714] Forked 29794 +(29794) found +[8713] Forked 29795 +(29795) found +[8712] Forked 29796 +(29796) found +[8711] Forked 29797 +(29797) found +[8710] Forked 29798 +(29798) found +[8709] Forked 29799 +(29799) found +[8708] Forked 29800 +(29800) found +[8707] Forked 29801 +(29801) found +[8706] Forked 29802 +(29802) found +[8705] Forked 29803 +(29803) found +[8704] Forked 29804 +(29804) found +[8703] Forked 29805 +(29805) found +[8702] Forked 29806 +(29806) found +[8701] Forked 29807 +(29807) found +[8700] Forked 29808 +(29808) found +[8699] Forked 29809 +(29809) found +[8698] Forked 29810 +(29810) found +[8697] Forked 29811 +(29811) found +[8696] Forked 29812 +(29812) found +[8695] Forked 29813 +(29813) found +[8694] Forked 29814 +(29814) found +[8693] Forked 29815 +(29815) found +[8692] Forked 29816 +(29816) found +[8691] Forked 29817 +(29817) found +[8690] Forked 29818 +(29818) found +[8689] Forked 29819 +(29819) found +[8688] Forked 29820 +(29820) found +[8687] Forked 29821 +(29821) found +[8686] Forked 29822 +(29822) found +[8685] Forked 29823 +(29823) found +[8684] Forked 29824 +(29824) found +[8683] Forked 29825 +(29825) found +[8682] Forked 29826 +(29826) found +[8681] Forked 29827 +(29827) found +[8680] Forked 29828 +(29828) found +[8679] Forked 29829 +(29829) found +[8678] Forked 29830 +(29830) found +[8677] Forked 29831 +(29831) found +[8676] Forked 29832 +(29832) found +[8675] Forked 29833 +(29833) found +[8674] Forked 29834 +(29834) found +[8673] Forked 29835 +(29835) found +[8672] Forked 29836 +(29836) found +[8671] Forked 29837 +(29837) found +[8670] Forked 29838 +(29838) found +[8669] Forked 29839 +(29839) found +[8668] Forked 29840 +(29840) found +[8667] Forked 29841 +(29841) found +[8666] Forked 29842 +(29842) found +[8665] Forked 29843 +(29843) found +[8664] Forked 29844 +(29844) found +[8663] Forked 29845 +(29845) found +[8662] Forked 29846 +(29846) found +[8661] Forked 29847 +(29847) found +[8660] Forked 29848 +(29848) found +[8659] Forked 29849 +(29849) found +[8658] Forked 29850 +(29850) found +[8657] Forked 29851 +(29851) found +[8656] Forked 29852 +(29852) found +[8655] Forked 29853 +(29853) found +[8654] Forked 29854 +(29854) found +[8653] Forked 29855 +(29855) found +[8652] Forked 29856 +(29856) found +[8651] Forked 29857 +(29857) found +[8650] Forked 29858 +[8649] Forked 29859 +(29858) found +(29859) found +[8648] Forked 29860 +[8647] Forked 29861 +(29860) found +(29861) found +[8646] Forked 29862 +[8645] Forked 29863 +(29862) found +(29863) found +[8644] Forked 29864 +[8643] Forked 29865 +(29864) found +(29865) found +[8642] Forked 29866 +[8641] Forked 29867 +(29866) found +(29867) found +[8640] Forked 29868 +[8639] Forked 29869 +(29868) found +(29869) found +[8638] Forked 29870 +[8637] Forked 29871 +(29870) found +(29871) found +[8636] Forked 29872 +[8635] Forked 29873 +(29872) found +(29873) found +[8634] Forked 29874 +[8633] Forked 29875 +(29874) found +(29875) found +[8632] Forked 29876 +[8631] Forked 29877 +(29876) found +(29877) found +[8630] Forked 29878 +[8629] Forked 29879 +(29878) found +(29879) found +[8628] Forked 29880 +[8627] Forked 29881 +(29880) found +(29881) found +[8626] Forked 29882 +[8625] Forked 29883 +(29882) found +(29883) found +[8624] Forked 29884 +[8623] Forked 29885 +(29884) found +(29885) found +[8622] Forked 29886 +[8621] Forked 29887 +(29886) found +(29887) found +[8620] Forked 29888 +[8619] Forked 29889 +(29888) found +(29889) found +[8618] Forked 29890 +[8617] Forked 29891 +(29890) found +(29891) found +[8616] Forked 29892 +[8615] Forked 29893 +(29892) found +(29893) found +[8614] Forked 29894 +[8613] Forked 29895 +(29894) found +(29895) found +[8612] Forked 29896 +[8611] Forked 29897 +(29896) found +(29897) found +[8610] Forked 29898 +[8609] Forked 29899 +(29899) found +(29898) found +[8608] Forked 29900 +(29900) found +[8607] Forked 29901 +(29901) found +[8606] Forked 29902 +(29902) found +[8605] Forked 29903 +(29903) found +[8604] Forked 29904 +(29904) found +[8603] Forked 29905 +(29905) found +[8602] Forked 29906 +(29906) found +[8601] Forked 29907 +[8600] Forked 29908 +(29907) found +(29908) found +[8599] Forked 29909 +[8598] Forked 29910 +(29909) found +(29910) found +[8597] Forked 29911 +[8596] Forked 29912 +(29911) found +(29912) found +[8595] Forked 29913 +[8594] Forked 29914 +(29913) found +(29914) found +[8593] Forked 29915 +[8592] Forked 29916 +(29915) found +(29916) found +[8591] Forked 29917 +[8590] Forked 29918 +(29917) found +(29918) found +[8589] Forked 29919 +[8588] Forked 29920 +(29919) found +(29920) found +[8587] Forked 29921 +[8586] Forked 29922 +(29921) found +(29922) found +[8585] Forked 29923 +[8584] Forked 29924 +(29923) found +(29924) found +[8583] Forked 29925 +[8582] Forked 29926 +(29925) found +(29926) found +[8581] Forked 29927 +[8580] Forked 29928 +(29927) found +(29928) found +[8579] Forked 29929 +[8578] Forked 29930 +(29929) found +(29930) found +[8577] Forked 29931 +[8576] Forked 29932 +(29931) found +(29932) found +[8575] Forked 29933 +[8574] Forked 29934 +(29933) found +(29934) found +[8573] Forked 29935 +[8572] Forked 29936 +(29935) found +(29936) found +[8571] Forked 29937 +[8570] Forked 29938 +(29937) found +(29938) found +[8569] Forked 29939 +[8568] Forked 29940 +(29939) found +(29940) found +[8567] Forked 29941 +[8566] Forked 29942 +(29941) found +(29942) found +[8565] Forked 29943 +[8564] Forked 29944 +(29943) found +(29944) found +[8563] Forked 29945 +[8562] Forked 29946 +(29945) found +(29946) found +[8561] Forked 29947 +(29947) found +[8560] Forked 29948 +(29948) found +[8559] Forked 29949 +(29949) found +[8558] Forked 29950 +(29950) found +[8557] Forked 29951 +(29951) found +[8556] Forked 29952 +(29952) found +[8555] Forked 29953 +(29953) found +[8554] Forked 29954 +(29954) found +[8553] Forked 29955 +(29955) found +[8552] Forked 29956 +(29956) found +[8551] Forked 29957 +(29957) found +[8550] Forked 29958 +(29958) found +[8549] Forked 29959 +(29959) found +[8548] Forked 29960 +(29960) found +[8547] Forked 29961 +(29961) found +[8546] Forked 29962 +(29962) found +[8545] Forked 29963 +(29963) found +[8544] Forked 29964 +(29964) found +[8543] Forked 29965 +(29965) found +[8542] Forked 29966 +(29966) found +[8541] Forked 29967 +(29967) found +[8540] Forked 29968 +(29968) found +[8539] Forked 29969 +(29969) found +[8538] Forked 29970 +(29970) found +[8537] Forked 29971 +(29971) found +[8536] Forked 29972 +(29972) found +[8535] Forked 29973 +(29973) found +[8534] Forked 29974 +(29974) found +[8533] Forked 29975 +(29975) found +[8532] Forked 29976 +(29976) found +[8531] Forked 29977 +(29977) found +[8530] Forked 29978 +(29978) found +[8529] Forked 29979 +(29979) found +[8528] Forked 29980 +(29980) found +[8527] Forked 29981 +(29981) found +[8526] Forked 29982 +(29982) found +[8525] Forked 29983 +[8524] Forked 29984 +(29983) found +(29984) found +[8523] Forked 29985 +[8522] Forked 29986 +(29985) found +(29986) found +[8521] Forked 29987 +[8520] Forked 29988 +(29987) found +(29988) found +[8519] Forked 29989 +[8518] Forked 29990 +(29989) found +(29990) found +[8517] Forked 29991 +[8516] Forked 29992 +(29991) found +(29992) found +[8515] Forked 29993 +[8514] Forked 29994 +(29993) found +(29994) found +[8513] Forked 29995 +[8512] Forked 29996 +(29995) found +(29996) found +[8511] Forked 29997 +[8510] Forked 29998 +(29997) found +(29998) found +[8509] Forked 29999 +[8508] Forked 30000 +(29999) found +(30000) found +[8507] Forked 30001 +[8506] Forked 30002 +(30001) found +(30002) found +[8505] Forked 30003 +[8504] Forked 30004 +(30003) found +(30004) found +[8503] Forked 30005 +[8502] Forked 30006 +(30005) found +(30006) found +[8501] Forked 30007 +[8500] Forked 30008 +(30007) found +(30008) found +[8499] Forked 30009 +[8498] Forked 30010 +(30009) found +(30010) found +[8497] Forked 30011 +[8496] Forked 30012 +(30011) found +(30012) found +[8495] Forked 30013 +[8494] Forked 30014 +(30013) found +(30014) found +[8493] Forked 30015 +[8492] Forked 30016 +(30015) found +(30016) found +[8491] Forked 30017 +[8490] Forked 30018 +(30017) found +(30018) found +[8489] Forked 30019 +[8488] Forked 30020 +(30019) found +(30020) found +[8487] Forked 30021 +[8486] Forked 30022 +(30021) found +(30022) found +[8485] Forked 30023 +[8484] Forked 30024 +(30023) found +(30024) found +[8483] Forked 30025 +[8482] Forked 30026 +(30025) found +(30026) found +[8481] Forked 30027 +(30027) found +[8480] Forked 30028 +(30028) found +[8479] Forked 30029 +(30029) found +[8478] Forked 30030 +(30030) found +[8477] Forked 30031 +(30031) found +[8476] Forked 30032 +(30032) found +[8475] Forked 30033 +(30033) found +[8474] Forked 30034 +(30034) found +[8473] Forked 30035 +(30035) found +[8472] Forked 30036 +(30036) found +[8471] Forked 30037 +(30037) found +[8470] Forked 30038 +(30038) found +[8469] Forked 30039 +(30039) found +[8468] Forked 30040 +(30040) found +[8467] Forked 30041 +(30041) found +[8466] Forked 30042 +(30042) found +[8465] Forked 30043 +(30043) found +[8464] Forked 30044 +(30044) found +[8463] Forked 30045 +(30045) found +[8462] Forked 30046 +(30046) found +[8461] Forked 30047 +(30047) found +[8460] Forked 30048 +(30048) found +[8459] Forked 30049 +(30049) found +[8458] Forked 30050 +(30050) found +[8457] Forked 30051 +(30051) found +[8456] Forked 30052 +(30052) found +[8455] Forked 30053 +(30053) found +[8454] Forked 30054 +(30054) found +[8453] Forked 30055 +(30055) found +[8452] Forked 30056 +(30056) found +[8451] Forked 30057 +(30057) found +[8450] Forked 30058 +(30058) found +[8449] Forked 30059 +(30059) found +[8448] Forked 30060 +(30060) found +[8447] Forked 30061 +(30061) found +[8446] Forked 30062 +(30062) found +[8445] Forked 30063 +(30063) found +[8444] Forked 30064 +[8443] Forked 30065 +(30064) found +(30065) found +[8442] Forked 30066 +[8441] Forked 30067 +(30066) found +(30067) found +[8440] Forked 30068 +[8439] Forked 30069 +(30068) found +(30069) found +[8438] Forked 30070 +[8437] Forked 30071 +(30070) found +(30071) found +[8436] Forked 30072 +[8435] Forked 30073 +(30072) found +(30073) found +[8434] Forked 30074 +[8433] Forked 30075 +(30074) found +(30075) found +[8432] Forked 30076 +[8431] Forked 30077 +(30076) found +(30077) found +[8430] Forked 30078 +[8429] Forked 30079 +(30078) found +(30079) found +[8428] Forked 30080 +[8427] Forked 30081 +(30080) found +(30081) found +[8426] Forked 30082 +[8425] Forked 30083 +(30082) found +(30083) found +[8424] Forked 30084 +[8423] Forked 30085 +(30084) found +(30085) found +[8422] Forked 30086 +[8421] Forked 30087 +(30086) found +(30087) found +[8420] Forked 30088 +[8419] Forked 30089 +(30088) found +(30089) found +[8418] Forked 30090 +[8417] Forked 30091 +(30090) found +(30091) found +[8416] Forked 30092 +[8415] Forked 30093 +(30092) found +(30093) found +[8414] Forked 30094 +[8413] Forked 30095 +(30094) found +(30095) found +[8412] Forked 30096 +[8411] Forked 30097 +(30096) found +(30097) found +[8410] Forked 30098 +[8409] Forked 30099 +(30098) found +(30099) found +[8408] Forked 30100 +[8407] Forked 30101 +(30100) found +(30101) found +[8406] Forked 30102 +[8405] Forked 30103 +(30102) found +(30103) found +[8404] Forked 30104 +[8403] Forked 30105 +(30104) found +(30105) found +[8402] Forked 30106 +[8401] Forked 30107 +(30106) found +(30107) found +[8400] Forked 30108 +[8399] Forked 30109 +(30108) found +(30109) found +[8398] Forked 30110 +[8397] Forked 30111 +(30110) found +(30111) found +[8396] Forked 30112 +[8395] Forked 30113 +(30112) found +(30113) found +[8394] Forked 30114 +[8393] Forked 30115 +(30114) found +(30115) found +[8392] Forked 30116 +[8391] Forked 30117 +(30116) found +(30117) found +[8390] Forked 30118 +[8389] Forked 30119 +(30118) found +(30119) found +[8388] Forked 30120 +[8387] Forked 30121 +(30120) found +(30121) found +[8386] Forked 30122 +[8385] Forked 30123 +(30122) found +(30123) found +[8384] Forked 30124 +[8383] Forked 30125 +(30124) found +(30125) found +[8382] Forked 30126 +[8381] Forked 30127 +(30126) found +(30127) found +[8380] Forked 30128 +[8379] Forked 30129 +(30128) found +(30129) found +[8378] Forked 30130 +[8377] Forked 30131 +(30130) found +(30131) found +[8376] Forked 30132 +[8375] Forked 30133 +(30132) found +(30133) found +[8374] Forked 30134 +[8373] Forked 30135 +(30134) found +(30135) found +[8372] Forked 30136 +[8371] Forked 30137 +(30136) found +(30137) found +[8370] Forked 30138 +[8369] Forked 30139 +(30138) found +(30139) found +[8368] Forked 30140 +[8367] Forked 30141 +(30140) found +(30141) found +[8366] Forked 30142 +[8365] Forked 30143 +(30142) found +(30143) found +[8364] Forked 30144 +[8363] Forked 30145 +(30144) found +(30145) found +[8362] Forked 30146 +[8361] Forked 30147 +(30146) found +(30147) found +[8360] Forked 30148 +[8359] Forked 30149 +(30148) found +(30149) found +[8358] Forked 30150 +[8357] Forked 30151 +(30150) found +(30151) found +[8356] Forked 30152 +[8355] Forked 30153 +(30152) found +(30153) found +[8354] Forked 30154 +[8353] Forked 30155 +(30154) found +(30155) found +[8352] Forked 30156 +(30156) found +[8351] Forked 30157 +(30157) found +[8350] Forked 30158 +(30158) found +[8349] Forked 30159 +(30159) found +[8348] Forked 30160 +(30160) found +[8347] Forked 30161 +[8346] Forked 30162 +(30161) found +(30162) found +[8345] Forked 30163 +[8344] Forked 30164 +(30163) found +(30164) found +[8343] Forked 30165 +[8342] Forked 30166 +(30165) found +(30166) found +[8341] Forked 30167 +[8340] Forked 30168 +(30167) found +(30168) found +[8339] Forked 30169 +[8338] Forked 30170 +(30169) found +(30170) found +[8337] Forked 30171 +[8336] Forked 30172 +(30171) found +(30172) found +[8335] Forked 30173 +[8334] Forked 30174 +(30173) found +(30174) found +[8333] Forked 30175 +[8332] Forked 30176 +(30175) found +(30176) found +[8331] Forked 30177 +[8330] Forked 30178 +(30177) found +(30178) found +[8329] Forked 30179 +[8328] Forked 30180 +(30179) found +(30180) found +[8327] Forked 30181 +[8326] Forked 30182 +(30181) found +(30182) found +[8325] Forked 30183 +[8324] Forked 30184 +(30183) found +(30184) found +[8323] Forked 30185 +[8322] Forked 30186 +(30185) found +(30186) found +[8321] Forked 30187 +[8320] Forked 30188 +(30187) found +(30188) found +[8319] Forked 30189 +[8318] Forked 30190 +(30189) found +(30190) found +[8317] Forked 30191 +[8316] Forked 30192 +(30191) found +(30192) found +[8315] Forked 30193 +[8314] Forked 30194 +(30193) found +(30194) found +[8313] Forked 30195 +[8312] Forked 30196 +(30195) found +(30196) found +[8311] Forked 30197 +[8310] Forked 30198 +(30197) found +(30198) found +[8309] Forked 30199 +[8308] Forked 30201 +(30199) found +(30201) found +[8307] Forked 30202 +(30202) found +[8306] Forked 30203 +(30203) found +[8305] Forked 30204 +(30204) found +[8304] Forked 30205 +(30205) found +[8303] Forked 30206 +(30206) found +[8302] Forked 30207 +(30207) found +[8301] Forked 30208 +(30208) found +[8300] Forked 30209 +(30209) found +[8299] Forked 30210 +(30210) found +[8298] Forked 30211 +(30211) found +[8297] Forked 30212 +(30212) found +[8296] Forked 30213 +(30213) found +[8295] Forked 30214 +(30214) found +[8294] Forked 30215 +(30215) found +[8293] Forked 30216 +(30216) found +[8292] Forked 30217 +(30217) found +[8291] Forked 30218 +(30218) found +[8290] Forked 30219 +(30219) found +[8289] Forked 30220 +(30220) found +[8288] Forked 30221 +(30221) found +[8287] Forked 30222 +(30222) found +[8286] Forked 30223 +(30223) found +[8285] Forked 30224 +(30224) found +[8284] Forked 30225 +(30225) found +[8283] Forked 30226 +(30226) found +[8282] Forked 30227 +(30227) found +[8281] Forked 30228 +(30228) found +[8280] Forked 30229 +(30229) found +[8279] Forked 30230 +(30230) found +[8278] Forked 30231 +(30231) found +[8277] Forked 30232 +(30232) found +[8276] Forked 30233 +(30233) found +[8275] Forked 30234 +(30234) found +[8274] Forked 30235 +(30235) found +[8273] Forked 30236 +(30236) found +[8272] Forked 30237 +(30237) found +[8271] Forked 30238 +(30238) found +[8270] Forked 30239 +(30239) found +[8269] Forked 30240 +(30240) found +[8268] Forked 30241 +(30241) found +[8267] Forked 30242 +[8266] Forked 30243 +(30243) found +(30242) found +[8265] Forked 30244 +(30244) found +[8264] Forked 30245 +(30245) found +[8263] Forked 30246 +(30246) found +[8262] Forked 30247 +(30247) found +[8261] Forked 30248 +(30248) found +[8260] Forked 30249 +(30249) found +[8259] Forked 30250 +(30250) found +[8258] Forked 30251 +(30251) found +[8257] Forked 30252 +(30252) found +[8256] Forked 30253 +(30253) found +[8255] Forked 30254 +(30254) found +[8254] Forked 30255 +(30255) found +[8253] Forked 30256 +(30256) found +[8252] Forked 30257 +(30257) found +[8251] Forked 30258 +(30258) found +[8250] Forked 30259 +(30259) found +[8249] Forked 30260 +(30260) found +[8248] Forked 30261 +(30261) found +[8247] Forked 30262 +(30262) found +[8246] Forked 30263 +(30263) found +[8245] Forked 30264 +(30264) found +[8244] Forked 30265 +(30265) found +[8243] Forked 30266 +(30266) found +[8242] Forked 30267 +(30267) found +[8241] Forked 30268 +(30268) found +[8240] Forked 30269 +(30269) found +[8239] Forked 30270 +(30270) found +[8238] Forked 30271 +(30271) found +[8237] Forked 30272 +(30272) found +[8236] Forked 30273 +(30273) found +[8235] Forked 30274 +(30274) found +[8234] Forked 30275 +(30275) found +[8233] Forked 30276 +(30276) found +[8232] Forked 30277 +(30277) found +[8231] Forked 30278 +(30278) found +[8230] Forked 30279 +(30279) found +[8229] Forked 30280 +(30280) found +[8228] Forked 30281 +(30281) found +[8227] Forked 30282 +(30282) found +[8226] Forked 30283 +(30283) found +[8225] Forked 30284 +(30284) found +[8224] Forked 30285 +(30285) found +[8223] Forked 30286 +(30286) found +[8222] Forked 30287 +(30287) found +[8221] Forked 30288 +(30288) found +[8220] Forked 30289 +(30289) found +[8219] Forked 30290 +(30290) found +[8218] Forked 30291 +(30291) found +[8217] Forked 30292 +(30292) found +[8216] Forked 30293 +(30293) found +[8215] Forked 30294 +(30294) found +[8214] Forked 30295 +(30295) found +[8213] Forked 30296 +(30296) found +[8212] Forked 30297 +(30297) found +[8211] Forked 30298 +(30298) found +[8210] Forked 30299 +(30299) found +[8209] Forked 30300 +(30300) found +[8208] Forked 30301 +(30301) found +[8207] Forked 30302 +(30302) found +[8206] Forked 30303 +(30303) found +[8205] Forked 30304 +(30304) found +[8204] Forked 30305 +(30305) found +[8203] Forked 30306 +(30306) found +[8202] Forked 30307 +(30307) found +[8201] Forked 30308 +(30308) found +[8200] Forked 30309 +(30309) found +[8199] Forked 30310 +(30310) found +[8198] Forked 30311 +(30311) found +[8197] Forked 30312 +(30312) found +[8196] Forked 30313 +(30313) found +[8195] Forked 30314 +(30314) found +[8194] Forked 30315 +[8193] Forked 30316 +(30315) found +(30316) found +[8192] Forked 30317 +[8191] Forked 30318 +(30317) found +(30318) found +[8190] Forked 30319 +[8189] Forked 30320 +(30319) found +(30320) found +[8188] Forked 30321 +[8187] Forked 30322 +(30321) found +(30322) found +[8186] Forked 30323 +[8185] Forked 30324 +(30323) found +(30324) found +[8184] Forked 30325 +[8183] Forked 30326 +(30325) found +(30326) found +[8182] Forked 30327 +[8181] Forked 30328 +(30327) found +(30328) found +[8180] Forked 30329 +[8179] Forked 30330 +(30329) found +(30330) found +[8178] Forked 30331 +[8177] Forked 30332 +(30331) found +(30332) found +[8176] Forked 30333 +[8175] Forked 30334 +(30333) found +(30334) found +[8174] Forked 30335 +[8173] Forked 30336 +(30335) found +(30336) found +[8172] Forked 30337 +[8171] Forked 30338 +(30337) found +(30338) found +[8170] Forked 30339 +(30339) found +[8169] Forked 30340 +[8168] Forked 30341 +(30340) found +(30341) found +[8167] Forked 30342 +[8166] Forked 30343 +(30342) found +(30343) found +[8165] Forked 30344 +[8164] Forked 30345 +(30344) found +(30345) found +[8163] Forked 30346 +[8162] Forked 30347 +(30346) found +(30347) found +[8161] Forked 30348 +[8160] Forked 30349 +(30348) found +(30349) found +[8159] Forked 30350 +[8158] Forked 30351 +(30350) found +(30351) found +[8157] Forked 30352 +[8156] Forked 30353 +(30352) found +(30353) found +[8155] Forked 30354 +[8154] Forked 30355 +(30355) found +(30354) found +[8153] Forked 30356 +(30356) found +[8152] Forked 30357 +(30357) found +[8151] Forked 30358 +(30358) found +[8150] Forked 30359 +(30359) found +[8149] Forked 30360 +(30360) found +[8148] Forked 30361 +(30361) found +[8147] Forked 30362 +(30362) found +[8146] Forked 30363 +(30363) found +[8145] Forked 30364 +(30364) found +[8144] Forked 30365 +(30365) found +[8143] Forked 30366 +(30366) found +[8142] Forked 30367 +(30367) found +[8141] Forked 30368 +(30368) found +[8140] Forked 30369 +(30369) found +[8139] Forked 30370 +(30370) found +[8138] Forked 30371 +(30371) found +[8137] Forked 30372 +(30372) found +[8136] Forked 30373 +(30373) found +[8135] Forked 30374 +(30374) found +[8134] Forked 30375 +(30375) found +[8133] Forked 30376 +(30376) found +[8132] Forked 30377 +(30377) found +[8131] Forked 30378 +(30378) found +[8130] Forked 30379 +(30379) found +[8129] Forked 30380 +(30380) found +[8128] Forked 30381 +(30381) found +[8127] Forked 30382 +(30382) found +[8126] Forked 30383 +(30383) found +[8125] Forked 30384 +(30384) found +[8124] Forked 30385 +(30385) found +[8123] Forked 30386 +(30386) found +[8122] Forked 30387 +(30387) found +[8121] Forked 30388 +(30388) found +[8120] Forked 30389 +(30389) found +[8119] Forked 30390 +(30390) found +[8118] Forked 30391 +[8117] Forked 30392 +(30391) found +(30392) found +[8116] Forked 30393 +[8115] Forked 30394 +(30393) found +(30394) found +[8114] Forked 30395 +[8113] Forked 30396 +(30395) found +(30396) found +[8112] Forked 30397 +[8111] Forked 30398 +(30397) found +(30398) found +[8110] Forked 30399 +[8109] Forked 30400 +(30399) found +(30400) found +[8108] Forked 30401 +[8107] Forked 30402 +(30401) found +(30402) found +[8106] Forked 30403 +[8105] Forked 30404 +(30403) found +(30404) found +[8104] Forked 30405 +[8103] Forked 30406 +(30405) found +(30406) found +[8102] Forked 30407 +[8101] Forked 30408 +(30407) found +(30408) found +[8100] Forked 30409 +[8099] Forked 30410 +(30409) found +(30410) found +[8098] Forked 30411 +[8097] Forked 30412 +(30411) found +(30412) found +[8096] Forked 30413 +[8095] Forked 30414 +(30413) found +(30414) found +[8094] Forked 30415 +[8093] Forked 30416 +(30415) found +(30416) found +[8092] Forked 30417 +[8091] Forked 30418 +(30417) found +(30418) found +[8090] Forked 30419 +[8089] Forked 30420 +(30419) found +(30420) found +[8088] Forked 30421 +[8087] Forked 30422 +(30421) found +(30422) found +[8086] Forked 30423 +[8085] Forked 30424 +(30423) found +(30424) found +[8084] Forked 30425 +[8083] Forked 30426 +(30425) found +(30426) found +[8082] Forked 30427 +[8081] Forked 30428 +(30427) found +(30428) found +[8080] Forked 30429 +[8079] Forked 30430 +(30429) found +(30430) found +[8078] Forked 30431 +[8077] Forked 30433 +(30431) found +(30433) found +[8076] Forked 30434 +(30434) found +[8075] Forked 30435 +(30435) found +[8074] Forked 30436 +(30436) found +[8073] Forked 30437 +(30437) found +[8072] Forked 30438 +(30438) found +[8071] Forked 30439 +(30439) found +[8070] Forked 30440 +(30440) found +[8069] Forked 30441 +(30441) found +[8068] Forked 30442 +(30442) found +[8067] Forked 30443 +(30443) found +[8066] Forked 30444 +(30444) found +[8065] Forked 30445 +(30445) found +[8064] Forked 30446 +(30446) found +[8063] Forked 30447 +(30447) found +[8062] Forked 30448 +(30448) found +[8061] Forked 30449 +(30449) found +[8060] Forked 30450 +(30450) found +[8059] Forked 30451 +(30451) found +[8058] Forked 30452 +(30452) found +[8057] Forked 30453 +(30453) found +[8056] Forked 30454 +(30454) found +[8055] Forked 30455 +(30455) found +[8054] Forked 30456 +(30456) found +[8053] Forked 30457 +(30457) found +[8052] Forked 30458 +(30458) found +[8051] Forked 30459 +(30459) found +[8050] Forked 30460 +(30460) found +[8049] Forked 30461 +(30461) found +[8048] Forked 30462 +(30462) found +[8047] Forked 30463 +(30463) found +[8046] Forked 30464 +(30464) found +[8045] Forked 30465 +(30465) found +[8044] Forked 30466 +(30466) found +[8043] Forked 30467 +(30467) found +[8042] Forked 30468 +(30468) found +[8041] Forked 30469 +(30469) found +[8040] Forked 30470 +(30470) found +[8039] Forked 30471 +(30471) found +[8038] Forked 30472 +(30472) found +[8037] Forked 30473 +(30473) found +[8036] Forked 30474 +(30474) found +[8035] Forked 30475 +(30475) found +[8034] Forked 30476 +(30476) found +[8033] Forked 30477 +(30477) found +[8032] Forked 30478 +(30478) found +[8031] Forked 30479 +(30479) found +[8030] Forked 30480 +(30480) found +[8029] Forked 30481 +(30481) found +[8028] Forked 30482 +(30482) found +[8027] Forked 30483 +(30483) found +[8026] Forked 30484 +(30484) found +[8025] Forked 30485 +(30485) found +[8024] Forked 30486 +(30486) found +[8023] Forked 30487 +(30487) found +[8022] Forked 30488 +(30488) found +[8021] Forked 30489 +(30489) found +[8020] Forked 30490 +(30490) found +[8019] Forked 30491 +(30491) found +[8018] Forked 30492 +(30492) found +[8017] Forked 30493 +(30493) found +[8016] Forked 30494 +(30494) found +[8015] Forked 30495 +(30495) found +[8014] Forked 30496 +(30496) found +[8013] Forked 30497 +(30497) found +[8012] Forked 30498 +(30498) found +[8011] Forked 30499 +(30499) found +[8010] Forked 30500 +(30500) found +[8009] Forked 30501 +(30501) found +[8008] Forked 30502 +(30502) found +[8007] Forked 30503 +(30503) found +[8006] Forked 30504 +(30504) found +[8005] Forked 30505 +(30505) found +[8004] Forked 30506 +(30506) found +[8003] Forked 30507 +(30507) found +[8002] Forked 30509 +(30509) found +[8001] Forked 30510 +(30510) found +[8000] Forked 30511 +[7999] Forked 30512 +(30511) found +(30512) found +[7998] Forked 30513 +[7997] Forked 30515 +(30513) found +(30515) found +[7996] Forked 30516 +[7995] Forked 30517 +(30516) found +(30517) found +[7994] Forked 30518 +[7993] Forked 30519 +(30518) found +(30519) found +[7992] Forked 30521 +[7991] Forked 30522 +(30521) found +(30522) found +[7990] Forked 30523 +[7989] Forked 30524 +(30523) found +(30524) found +[7988] Forked 30525 +[7987] Forked 30526 +(30525) found +(30526) found +[7986] Forked 30528 +[7985] Forked 30529 +(30528) found +(30529) found +[7984] Forked 30530 +[7983] Forked 30531 +(30530) found +(30531) found +[7982] Forked 30532 +[7981] Forked 30534 +(30532) found +(30534) found +[7980] Forked 30535 +[7979] Forked 30536 +(30535) found +(30536) found +[7978] Forked 30537 +[7977] Forked 30538 +(30537) found +(30538) found +[7976] Forked 30540 +[7975] Forked 30541 +(30540) found +(30541) found +[7974] Forked 30542 +[7973] Forked 30543 +(30542) found +(30543) found +[7972] Forked 30544 +[7971] Forked 30545 +(30544) found +(30545) found +[7970] Forked 30546 +[7969] Forked 30547 +(30546) found +(30547) found +[7968] Forked 30548 +[7967] Forked 30549 +(30548) found +(30549) found +[7966] Forked 30550 +[7965] Forked 30551 +(30550) found +(30551) found +[7964] Forked 30552 +[7963] Forked 30553 +(30552) found +(30553) found +[7962] Forked 30554 +[7961] Forked 30555 +(30554) found +(30555) found +[7960] Forked 30556 +[7959] Forked 30557 +(30556) found +(30557) found +[7958] Forked 30558 +[7957] Forked 30559 +(30558) found +(30559) found +[7956] Forked 30560 +[7955] Forked 30561 +(30560) found +(30561) found +[7954] Forked 30562 +(30562) found +[7953] Forked 30563 +(30563) found +[7952] Forked 30564 +(30564) found +[7951] Forked 30565 +(30565) found +[7950] Forked 30566 +(30566) found +[7949] Forked 30567 +(30567) found +[7948] Forked 30568 +(30568) found +[7947] Forked 30569 +(30569) found +[7946] Forked 30570 +(30570) found +[7945] Forked 30571 +(30571) found +[7944] Forked 30572 +(30572) found +[7943] Forked 30573 +(30573) found +[7942] Forked 30574 +(30574) found +[7941] Forked 30575 +(30575) found +[7940] Forked 30576 +(30576) found +[7939] Forked 30577 +(30577) found +[7938] Forked 30578 +(30578) found +[7937] Forked 30579 +(30579) found +[7936] Forked 30580 +(30580) found +[7935] Forked 30581 +(30581) found +[7934] Forked 30582 +(30582) found +[7933] Forked 30583 +(30583) found +[7932] Forked 30584 +(30584) found +[7931] Forked 30585 +(30585) found +[7930] Forked 30586 +(30586) found +[7929] Forked 30587 +(30587) found +[7928] Forked 30588 +(30588) found +[7927] Forked 30589 +(30589) found +[7926] Forked 30590 +(30590) found +[7925] Forked 30591 +(30591) found +[7924] Forked 30592 +(30592) found +[7923] Forked 30593 +(30593) found +[7922] Forked 30594 +(30594) found +[7921] Forked 30595 +(30595) found +[7920] Forked 30596 +(30596) found +[7919] Forked 30597 +(30597) found +[7918] Forked 30598 +(30598) found +[7917] Forked 30599 +[7916] Forked 30600 +(30599) found +(30600) found +[7915] Forked 30601 +[7914] Forked 30602 +(30601) found +(30602) found +[7913] Forked 30603 +[7912] Forked 30604 +(30603) found +(30604) found +[7911] Forked 30605 +[7910] Forked 30606 +(30605) found +(30606) found +[7909] Forked 30607 +[7908] Forked 30608 +(30607) found +(30608) found +[7907] Forked 30609 +[7906] Forked 30610 +(30609) found +(30610) found +[7905] Forked 30611 +[7904] Forked 30612 +(30611) found +(30612) found +[7903] Forked 30613 +[7902] Forked 30614 +(30613) found +(30614) found +[7901] Forked 30615 +[7900] Forked 30616 +(30615) found +(30616) found +[7899] Forked 30617 +[7898] Forked 30618 +(30617) found +(30618) found +[7897] Forked 30619 +[7896] Forked 30620 +(30619) found +(30620) found +[7895] Forked 30621 +[7894] Forked 30622 +(30621) found +(30622) found +[7893] Forked 30623 +[7892] Forked 30624 +(30623) found +(30624) found +[7891] Forked 30625 +[7890] Forked 30626 +(30625) found +(30626) found +[7889] Forked 30627 +[7888] Forked 30628 +(30627) found +(30628) found +[7887] Forked 30629 +[7886] Forked 30630 +(30629) found +(30630) found +[7885] Forked 30631 +[7884] Forked 30633 +(30631) found +(30633) found +[7883] Forked 30634 +(30634) found +[7882] Forked 30635 +(30635) found +[7881] Forked 30636 +(30636) found +[7880] Forked 30637 +[7879] Forked 30638 +(30637) found +(30638) found +[7878] Forked 30639 +[7877] Forked 30640 +(30639) found +(30640) found +[7876] Forked 30641 +(30641) found +[7875] Forked 30642 +[7874] Forked 30643 +(30642) found +(30643) found +[7873] Forked 30644 +[7872] Forked 30645 +(30644) found +(30645) found +[7871] Forked 30646 +[7870] Forked 30647 +(30646) found +(30647) found +[7869] Forked 30648 +[7868] Forked 30649 +(30648) found +(30649) found +[7867] Forked 30650 +[7866] Forked 30651 +(30650) found +(30651) found +[7865] Forked 30652 +[7864] Forked 30653 +(30652) found +(30653) found +[7863] Forked 30654 +[7862] Forked 30655 +(30654) found +(30655) found +[7861] Forked 30656 +[7860] Forked 30657 +(30656) found +(30657) found +[7859] Forked 30658 +[7858] Forked 30659 +(30658) found +(30659) found +[7857] Forked 30660 +[7856] Forked 30661 +(30660) found +(30661) found +[7855] Forked 30662 +[7854] Forked 30663 +(30662) found +(30663) found +[7853] Forked 30664 +[7852] Forked 30665 +(30664) found +(30665) found +[7851] Forked 30666 +[7850] Forked 30667 +(30666) found +(30667) found +[7849] Forked 30668 +[7848] Forked 30669 +(30668) found +(30669) found +[7847] Forked 30670 +[7846] Forked 30671 +(30670) found +(30671) found +[7845] Forked 30672 +[7844] Forked 30673 +(30672) found +(30673) found +[7843] Forked 30674 +[7842] Forked 30675 +(30674) found +(30675) found +[7841] Forked 30676 +[7840] Forked 30677 +(30676) found +(30677) found +[7839] Forked 30678 +[7838] Forked 30679 +(30678) found +(30679) found +[7837] Forked 30680 +[7836] Forked 30681 +(30680) found +(30681) found +[7835] Forked 30682 +[7834] Forked 30683 +(30682) found +(30683) found +[7833] Forked 30684 +[7832] Forked 30685 +(30684) found +(30685) found +[7831] Forked 30686 +[7830] Forked 30687 +(30686) found +(30687) found +[7829] Forked 30688 +[7828] Forked 30689 +(30688) found +(30689) found +[7827] Forked 30690 +[7826] Forked 30691 +(30690) found +(30691) found +[7825] Forked 30692 +[7824] Forked 30693 +(30692) found +(30693) found +[7823] Forked 30694 +[7822] Forked 30695 +(30694) found +(30695) found +[7821] Forked 30696 +[7820] Forked 30697 +(30696) found +(30697) found +[7819] Forked 30698 +[7818] Forked 30699 +(30698) found +(30699) found +[7817] Forked 30700 +[7816] Forked 30701 +(30700) found +(30701) found +[7815] Forked 30702 +[7814] Forked 30703 +(30702) found +(30703) found +[7813] Forked 30704 +[7812] Forked 30705 +(30704) found +(30705) found +[7811] Forked 30706 +[7810] Forked 30707 +(30706) found +(30707) found +[7809] Forked 30708 +[7808] Forked 30709 +(30708) found +(30709) found +[7807] Forked 30710 +[7806] Forked 30711 +(30710) found +(30711) found +[7805] Forked 30712 +[7804] Forked 30713 +(30712) found +(30713) found +[7803] Forked 30714 +[7802] Forked 30715 +(30714) found +(30715) found +[7801] Forked 30716 +[7800] Forked 30717 +(30716) found +(30717) found +[7799] Forked 30718 +[7798] Forked 30719 +(30718) found +(30719) found +[7797] Forked 30720 +[7796] Forked 30721 +(30720) found +(30721) found +[7795] Forked 30722 +[7794] Forked 30723 +(30722) found +(30723) found +[7793] Forked 30724 +[7792] Forked 30725 +(30724) found +(30725) found +[7791] Forked 30726 +[7790] Forked 30727 +(30726) found +(30727) found +[7789] Forked 30728 +[7788] Forked 30729 +(30728) found +(30729) found +[7787] Forked 30730 +[7786] Forked 30731 +(30730) found +(30731) found +[7785] Forked 30732 +[7784] Forked 30733 +(30732) found +(30733) found +[7783] Forked 30734 +(30734) found +[7782] Forked 30735 +(30735) found +[7781] Forked 30736 +(30736) found +[7780] Forked 30737 +(30737) found +[7779] Forked 30738 +(30738) found +[7778] Forked 30739 +(30739) found +[7777] Forked 30740 +(30740) found +[7776] Forked 30741 +(30741) found +[7775] Forked 30742 +(30742) found +[7774] Forked 30743 +(30743) found +[7773] Forked 30744 +(30744) found +[7772] Forked 30745 +(30745) found +[7771] Forked 30746 +(30746) found +[7770] Forked 30747 +(30747) found +[7769] Forked 30748 +(30748) found +[7768] Forked 30749 +(30749) found +[7767] Forked 30750 +(30750) found +[7766] Forked 30751 +(30751) found +[7765] Forked 30752 +(30752) found +[7764] Forked 30753 +(30753) found +[7763] Forked 30754 +(30754) found +[7762] Forked 30755 +(30755) found +[7761] Forked 30756 +(30756) found +[7760] Forked 30757 +(30757) found +[7759] Forked 30758 +(30758) found +[7758] Forked 30759 +(30759) found +[7757] Forked 30760 +(30760) found +[7756] Forked 30761 +(30761) found +[7755] Forked 30762 +(30762) found +[7754] Forked 30763 +(30763) found +[7753] Forked 30764 +(30764) found +[7752] Forked 30765 +(30765) found +[7751] Forked 30766 +(30766) found +[7750] Forked 30767 +(30767) found +[7749] Forked 30768 +(30768) found +[7748] Forked 30769 +(30769) found +[7747] Forked 30770 +(30770) found +[7746] Forked 30771 +[7745] Forked 30772 +(30771) found +(30772) found +[7744] Forked 30773 +[7743] Forked 30774 +(30773) found +(30774) found +[7742] Forked 30775 +[7741] Forked 30776 +(30775) found +(30776) found +[7740] Forked 30777 +[7739] Forked 30778 +(30777) found +(30778) found +[7738] Forked 30779 +[7737] Forked 30780 +(30779) found +(30780) found +[7736] Forked 30781 +[7735] Forked 30782 +(30781) found +(30782) found +[7734] Forked 30783 +[7733] Forked 30784 +(30783) found +(30784) found +[7732] Forked 30785 +[7731] Forked 30786 +(30785) found +(30786) found +[7730] Forked 30787 +[7729] Forked 30788 +(30787) found +(30788) found +[7728] Forked 30789 +[7727] Forked 30790 +(30789) found +(30790) found +[7726] Forked 30791 +[7725] Forked 30792 +(30791) found +(30792) found +[7724] Forked 30793 +[7723] Forked 30794 +(30793) found +(30794) found +[7722] Forked 30795 +[7721] Forked 30796 +(30795) found +(30796) found +[7720] Forked 30797 +[7719] Forked 30798 +(30797) found +(30798) found +[7718] Forked 30799 +[7717] Forked 30800 +(30799) found +(30800) found +[7716] Forked 30801 +[7715] Forked 30802 +(30801) found +(30802) found +[7714] Forked 30803 +[7713] Forked 30804 +(30803) found +(30804) found +[7712] Forked 30805 +[7711] Forked 30806 +(30805) found +(30806) found +[7710] Forked 30807 +[7709] Forked 30808 +(30807) found +(30808) found +[7708] Forked 30809 +[7707] Forked 30810 +(30809) found +(30810) found +[7706] Forked 30811 +[7705] Forked 30812 +(30811) found +(30812) found +[7704] Forked 30813 +[7703] Forked 30814 +(30813) found +(30814) found +[7702] Forked 30815 +(30815) found +[7701] Forked 30816 +(30816) found +[7700] Forked 30817 +(30817) found +[7699] Forked 30818 +(30818) found +[7698] Forked 30819 +(30819) found +[7697] Forked 30820 +(30820) found +[7696] Forked 30821 +(30821) found +[7695] Forked 30822 +(30822) found +[7694] Forked 30823 +(30823) found +[7693] Forked 30824 +(30824) found +[7692] Forked 30825 +(30825) found +[7691] Forked 30826 +(30826) found +[7690] Forked 30827 +(30827) found +[7689] Forked 30828 +(30828) found +[7688] Forked 30829 +(30829) found +[7687] Forked 30831 +(30831) found +[7686] Forked 30832 +(30832) found +[7685] Forked 30833 +(30833) found +[7684] Forked 30834 +(30834) found +[7683] Forked 30835 +(30835) found +[7682] Forked 30837 +(30837) found +[7681] Forked 30838 +(30838) found +[7680] Forked 30839 +(30839) found +[7679] Forked 30840 +(30840) found +[7678] Forked 30841 +(30841) found +[7677] Forked 30843 +(30843) found +[7676] Forked 30844 +(30844) found +[7675] Forked 30845 +(30845) found +[7674] Forked 30846 +(30846) found +[7673] Forked 30847 +(30847) found +[7672] Forked 30849 +(30849) found +[7671] Forked 30850 +(30850) found +[7670] Forked 30851 +(30851) found +[7669] Forked 30852 +(30852) found +[7668] Forked 30853 +[7667] Forked 30855 +(30853) found +(30855) found +[7666] Forked 30856 +[7665] Forked 30857 +(30856) found +(30857) found +[7664] Forked 30858 +[7663] Forked 30859 +(30858) found +(30859) found +[7662] Forked 30861 +[7661] Forked 30862 +(30861) found +(30862) found +[7660] Forked 30863 +[7659] Forked 30864 +(30863) found +(30864) found +[7658] Forked 30865 +[7657] Forked 30866 +(30865) found +(30866) found +[7656] Forked 30867 +[7655] Forked 30868 +(30867) found +(30868) found +[7654] Forked 30869 +[7653] Forked 30870 +(30869) found +(30870) found +[7652] Forked 30871 +[7651] Forked 30872 +(30871) found +(30872) found +[7650] Forked 30873 +[7649] Forked 30874 +(30873) found +(30874) found +[7648] Forked 30875 +[7647] Forked 30876 +(30875) found +(30876) found +[7646] Forked 30877 +[7645] Forked 30878 +(30877) found +(30878) found +[7644] Forked 30879 +[7643] Forked 30881 +(30879) found +(30881) found +[7642] Forked 30882 +(30882) found +[7641] Forked 30883 +(30883) found +[7640] Forked 30884 +(30884) found +[7639] Forked 30885 +(30885) found +[7638] Forked 30886 +(30886) found +[7637] Forked 30887 +(30887) found +[7636] Forked 30888 +(30888) found +[7635] Forked 30889 +(30889) found +[7634] Forked 30890 +(30890) found +[7633] Forked 30891 +(30891) found +[7632] Forked 30892 +(30892) found +[7631] Forked 30893 +(30893) found +[7630] Forked 30894 +(30894) found +[7629] Forked 30895 +(30895) found +[7628] Forked 30896 +(30896) found +[7627] Forked 30897 +(30897) found +[7626] Forked 30898 +(30898) found +[7625] Forked 30899 +(30899) found +[7624] Forked 30900 +(30900) found +[7623] Forked 30901 +(30901) found +[7622] Forked 30902 +(30902) found +[7621] Forked 30903 +(30903) found +[7620] Forked 30904 +(30904) found +[7619] Forked 30905 +(30905) found +[7618] Forked 30906 +(30906) found +[7617] Forked 30907 +(30907) found +[7616] Forked 30908 +(30908) found +[7615] Forked 30909 +(30909) found +[7614] Forked 30910 +(30910) found +[7613] Forked 30911 +(30911) found +[7612] Forked 30912 +(30912) found +[7611] Forked 30913 +(30913) found +[7610] Forked 30914 +(30914) found +[7609] Forked 30915 +(30915) found +[7608] Forked 30916 +(30916) found +[7607] Forked 30917 +(30917) found +[7606] Forked 30918 +(30918) found +[7605] Forked 30919 +(30919) found +[7604] Forked 30920 +(30920) found +[7603] Forked 30921 +(30921) found +[7602] Forked 30922 +(30922) found +[7601] Forked 30923 +(30923) found +[7600] Forked 30924 +[7599] Forked 30925 +(30924) found +(30925) found +[7598] Forked 30926 +[7597] Forked 30927 +(30926) found +(30927) found +[7596] Forked 30928 +[7595] Forked 30929 +(30928) found +(30929) found +[7594] Forked 30930 +[7593] Forked 30931 +(30930) found +(30931) found +[7592] Forked 30932 +[7591] Forked 30933 +(30932) found +(30933) found +[7590] Forked 30934 +[7589] Forked 30935 +(30934) found +(30935) found +[7588] Forked 30936 +[7587] Forked 30937 +(30936) found +(30937) found +[7586] Forked 30938 +[7585] Forked 30939 +(30938) found +(30939) found +[7584] Forked 30940 +[7583] Forked 30941 +(30940) found +(30941) found +[7582] Forked 30942 +[7581] Forked 30943 +(30942) found +(30943) found +[7580] Forked 30944 +[7579] Forked 30945 +(30944) found +(30945) found +[7578] Forked 30946 +[7577] Forked 30947 +(30946) found +(30947) found +[7576] Forked 30948 +[7575] Forked 30949 +(30948) found +(30949) found +[7574] Forked 30950 +[7573] Forked 30951 +(30950) found +(30951) found +[7572] Forked 30952 +[7571] Forked 30953 +(30952) found +(30953) found +[7570] Forked 30954 +[7569] Forked 30955 +(30954) found +(30955) found +[7568] Forked 30956 +[7567] Forked 30957 +(30956) found +(30957) found +[7566] Forked 30958 +[7565] Forked 30959 +(30958) found +(30959) found +[7564] Forked 30960 +[7563] Forked 30961 +(30960) found +(30961) found +[7562] Forked 30962 +(30962) found +[7561] Forked 30963 +[7560] Forked 30964 +(30963) found +(30964) found +[7559] Forked 30965 +[7558] Forked 30966 +(30965) found +(30966) found +[7557] Forked 30967 +(30967) found +[7556] Forked 30968 +(30968) found +[7555] Forked 30969 +(30969) found +[7554] Forked 30970 +(30970) found +[7553] Forked 30971 +(30971) found +[7552] Forked 30972 +(30972) found +[7551] Forked 30973 +(30973) found +[7550] Forked 30974 +(30974) found +[7549] Forked 30975 +(30975) found +[7548] Forked 30976 +(30976) found +[7547] Forked 30977 +(30977) found +[7546] Forked 30978 +(30978) found +[7545] Forked 30979 +(30979) found +[7544] Forked 30980 +(30980) found +[7543] Forked 30981 +(30981) found +[7542] Forked 30982 +(30982) found +[7541] Forked 30983 +(30983) found +[7540] Forked 30984 +(30984) found +[7539] Forked 30985 +(30985) found +[7538] Forked 30986 +(30986) found +[7537] Forked 30987 +(30987) found +[7536] Forked 30988 +(30988) found +[7535] Forked 30989 +(30989) found +[7534] Forked 30990 +(30990) found +[7533] Forked 30991 +(30991) found +[7532] Forked 30992 +(30992) found +[7531] Forked 30993 +(30993) found +[7530] Forked 30994 +(30994) found +[7529] Forked 30995 +(30995) found +[7528] Forked 30996 +(30996) found +[7527] Forked 30997 +(30997) found +[7526] Forked 30998 +(30998) found +[7525] Forked 30999 +(30999) found +[7524] Forked 31000 +(31000) found +[7523] Forked 31001 +(31001) found +[7522] Forked 31002 +(31002) found +[7521] Forked 31003 +(31003) found +[7520] Forked 31004 +[7519] Forked 31005 +(31004) found +(31005) found +[7518] Forked 31006 +[7517] Forked 31007 +(31006) found +(31007) found +[7516] Forked 31008 +[7515] Forked 31009 +(31008) found +(31009) found +[7514] Forked 31010 +[7513] Forked 31011 +(31010) found +(31011) found +[7512] Forked 31012 +[7511] Forked 31013 +(31012) found +(31013) found +[7510] Forked 31014 +[7509] Forked 31015 +(31014) found +(31015) found +[7508] Forked 31016 +[7507] Forked 31017 +(31016) found +(31017) found +[7506] Forked 31018 +[7505] Forked 31019 +(31018) found +(31019) found +[7504] Forked 31020 +[7503] Forked 31021 +(31020) found +(31021) found +[7502] Forked 31022 +[7501] Forked 31023 +(31022) found +(31023) found +[7500] Forked 31024 +[7499] Forked 31025 +(31024) found +(31025) found +[7498] Forked 31026 +[7497] Forked 31027 +(31026) found +(31027) found +[7496] Forked 31028 +[7495] Forked 31029 +(31028) found +(31029) found +[7494] Forked 31030 +[7493] Forked 31031 +(31030) found +(31031) found +[7492] Forked 31032 +[7491] Forked 31033 +(31032) found +(31033) found +[7490] Forked 31034 +[7489] Forked 31035 +(31034) found +(31035) found +[7488] Forked 31036 +[7487] Forked 31037 +(31036) found +(31037) found +[7486] Forked 31038 +[7485] Forked 31039 +(31038) found +(31039) found +[7484] Forked 31040 +[7483] Forked 31041 +(31040) found +(31041) found +[7482] Forked 31042 +[7481] Forked 31043 +(31042) found +(31043) found +[7480] Forked 31044 +[7479] Forked 31045 +(31044) found +(31045) found +[7478] Forked 31046 +[7477] Forked 31047 +(31046) found +(31047) found +[7476] Forked 31048 +(31048) found +[7475] Forked 31049 +(31049) found +[7474] Forked 31050 +(31050) found +[7473] Forked 31051 +(31051) found +[7472] Forked 31052 +(31052) found +[7471] Forked 31053 +(31053) found +[7470] Forked 31054 +(31054) found +[7469] Forked 31055 +(31055) found +[7468] Forked 31056 +(31056) found +[7467] Forked 31057 +(31057) found +[7466] Forked 31058 +(31058) found +[7465] Forked 31059 +(31059) found +[7464] Forked 31060 +(31060) found +[7463] Forked 31061 +(31061) found +[7462] Forked 31062 +(31062) found +[7461] Forked 31064 +(31064) found +[7460] Forked 31065 +(31065) found +[7459] Forked 31066 +(31066) found +[7458] Forked 31067 +(31067) found +[7457] Forked 31068 +(31068) found +[7456] Forked 31069 +(31069) found +[7455] Forked 31070 +(31070) found +[7454] Forked 31071 +(31071) found +[7453] Forked 31072 +(31072) found +[7452] Forked 31073 +(31073) found +[7451] Forked 31074 +(31074) found +[7450] Forked 31075 +(31075) found +[7449] Forked 31076 +(31076) found +[7448] Forked 31077 +(31077) found +[7447] Forked 31078 +(31078) found +[7446] Forked 31079 +(31079) found +[7445] Forked 31080 +(31080) found +[7444] Forked 31081 +(31081) found +[7443] Forked 31082 +(31082) found +[7442] Forked 31083 +(31083) found +[7441] Forked 31084 +(31084) found +[7440] Forked 31085 +(31085) found +[7439] Forked 31086 +[7438] Forked 31087 +(31086) found +(31087) found +[7437] Forked 31088 +[7436] Forked 31089 +(31088) found +(31089) found +[7435] Forked 31090 +[7434] Forked 31091 +(31090) found +(31091) found +[7433] Forked 31092 +[7432] Forked 31093 +(31092) found +(31093) found +[7431] Forked 31094 +[7430] Forked 31095 +(31094) found +(31095) found +[7429] Forked 31096 +[7428] Forked 31097 +(31096) found +(31097) found +[7427] Forked 31098 +[7426] Forked 31099 +(31098) found +(31099) found +[7425] Forked 31100 +[7424] Forked 31101 +(31100) found +(31101) found +[7423] Forked 31102 +[7422] Forked 31103 +(31102) found +(31103) found +[7421] Forked 31104 +[7420] Forked 31105 +(31104) found +(31105) found +[7419] Forked 31106 +[7418] Forked 31107 +(31106) found +(31107) found +[7417] Forked 31108 +[7416] Forked 31109 +(31108) found +(31109) found +[7415] Forked 31110 +[7414] Forked 31111 +(31110) found +(31111) found +[7413] Forked 31112 +[7412] Forked 31113 +(31112) found +(31113) found +[7411] Forked 31114 +[7410] Forked 31115 +(31114) found +(31115) found +[7409] Forked 31116 +[7408] Forked 31117 +(31116) found +(31117) found +[7407] Forked 31118 +[7406] Forked 31119 +(31118) found +(31119) found +[7405] Forked 31120 +[7404] Forked 31121 +(31120) found +(31121) found +[7403] Forked 31122 +[7402] Forked 31123 +(31122) found +(31123) found +[7401] Forked 31124 +[7400] Forked 31125 +(31124) found +(31125) found +[7399] Forked 31126 +[7398] Forked 31127 +(31126) found +(31127) found +[7397] Forked 31128 +[7396] Forked 31129 +(31128) found +(31129) found +[7395] Forked 31130 +(31130) found +[7394] Forked 31131 +(31131) found +[7393] Forked 31132 +(31132) found +[7392] Forked 31133 +(31133) found +[7391] Forked 31134 +(31134) found +[7390] Forked 31135 +(31135) found +[7389] Forked 31136 +(31136) found +[7388] Forked 31137 +(31137) found +[7387] Forked 31138 +(31138) found +[7386] Forked 31139 +(31139) found +[7385] Forked 31140 +(31140) found +[7384] Forked 31141 +(31141) found +[7383] Forked 31142 +(31142) found +[7382] Forked 31143 +(31143) found +[7381] Forked 31144 +(31144) found +[7380] Forked 31145 +(31145) found +[7379] Forked 31146 +(31146) found +[7378] Forked 31147 +(31147) found +[7377] Forked 31148 +(31148) found +[7376] Forked 31149 +(31149) found +[7375] Forked 31150 +(31150) found +[7374] Forked 31151 +(31151) found +[7373] Forked 31152 +(31152) found +[7372] Forked 31153 +(31153) found +[7371] Forked 31154 +(31154) found +[7370] Forked 31155 +(31155) found +[7369] Forked 31156 +(31156) found +[7368] Forked 31157 +(31157) found +[7367] Forked 31158 +(31158) found +[7366] Forked 31159 +(31159) found +[7365] Forked 31160 +(31160) found +[7364] Forked 31161 +(31161) found +[7363] Forked 31162 +(31162) found +[7362] Forked 31163 +(31163) found +[7361] Forked 31164 +[7360] Forked 31165 +(31164) found +(31165) found +[7359] Forked 31166 +[7358] Forked 31167 +(31166) found +(31167) found +[7357] Forked 31168 +[7356] Forked 31169 +(31168) found +(31169) found +[7355] Forked 31170 +[7354] Forked 31171 +(31170) found +(31171) found +[7353] Forked 31172 +[7352] Forked 31173 +(31172) found +(31173) found +[7351] Forked 31174 +[7350] Forked 31175 +(31174) found +(31175) found +[7349] Forked 31176 +[7348] Forked 31177 +(31176) found +(31177) found +[7347] Forked 31178 +[7346] Forked 31179 +(31178) found +(31179) found +[7345] Forked 31180 +[7344] Forked 31181 +(31180) found +(31181) found +[7343] Forked 31182 +[7342] Forked 31183 +(31182) found +(31183) found +[7341] Forked 31184 +[7340] Forked 31185 +(31184) found +(31185) found +[7339] Forked 31186 +[7338] Forked 31187 +(31186) found +(31187) found +[7337] Forked 31188 +[7336] Forked 31189 +(31188) found +(31189) found +[7335] Forked 31190 +[7334] Forked 31191 +(31190) found +(31191) found +[7333] Forked 31192 +[7332] Forked 31193 +(31192) found +(31193) found +[7331] Forked 31194 +[7330] Forked 31195 +(31194) found +(31195) found +[7329] Forked 31196 +[7328] Forked 31197 +(31196) found +(31197) found +[7327] Forked 31198 +[7326] Forked 31199 +(31198) found +(31199) found +[7325] Forked 31200 +[7324] Forked 31201 +(31200) found +(31201) found +[7323] Forked 31202 +[7322] Forked 31203 +(31202) found +(31203) found +[7321] Forked 31204 +[7320] Forked 31205 +(31204) found +(31205) found +[7319] Forked 31206 +[7318] Forked 31207 +(31206) found +(31207) found +[7317] Forked 31208 +[7316] Forked 31209 +(31208) found +(31209) found +[7315] Forked 31210 +(31210) found +[7314] Forked 31211 +(31211) found +[7313] Forked 31212 +(31212) found +[7312] Forked 31213 +(31213) found +[7311] Forked 31214 +(31214) found +[7310] Forked 31215 +(31215) found +[7309] Forked 31216 +(31216) found +[7308] Forked 31217 +(31217) found +[7307] Forked 31218 +(31218) found +[7306] Forked 31219 +(31219) found +[7305] Forked 31220 +(31220) found +[7304] Forked 31221 +(31221) found +[7303] Forked 31222 +(31222) found +[7302] Forked 31223 +(31223) found +[7301] Forked 31224 +(31224) found +[7300] Forked 31225 +(31225) found +[7299] Forked 31226 +(31226) found +[7298] Forked 31227 +(31227) found +[7297] Forked 31228 +(31228) found +[7296] Forked 31229 +(31229) found +[7295] Forked 31230 +(31230) found +[7294] Forked 31231 +(31231) found +[7293] Forked 31232 +(31232) found +[7292] Forked 31233 +(31233) found +[7291] Forked 31234 +(31234) found +[7290] Forked 31235 +(31235) found +[7289] Forked 31236 +(31236) found +[7288] Forked 31237 +(31237) found +[7287] Forked 31238 +(31238) found +[7286] Forked 31239 +(31239) found +[7285] Forked 31240 +[7284] Forked 31241 +(31240) found +(31241) found +[7283] Forked 31242 +[7282] Forked 31243 +(31242) found +(31243) found +[7281] Forked 31244 +[7280] Forked 31245 +(31244) found +(31245) found +[7279] Forked 31246 +[7278] Forked 31247 +(31246) found +(31247) found +[7277] Forked 31248 +[7276] Forked 31249 +(31248) found +(31249) found +[7275] Forked 31250 +[7274] Forked 31251 +(31250) found +(31251) found +[7273] Forked 31252 +[7272] Forked 31253 +(31252) found +(31253) found +[7271] Forked 31254 +[7270] Forked 31255 +(31254) found +(31255) found +[7269] Forked 31256 +[7268] Forked 31257 +(31256) found +(31257) found +[7267] Forked 31258 +[7266] Forked 31259 +(31258) found +(31259) found +[7265] Forked 31260 +[7264] Forked 31261 +(31260) found +(31261) found +[7263] Forked 31262 +[7262] Forked 31263 +(31262) found +(31263) found +[7261] Forked 31264 +[7260] Forked 31265 +(31264) found +(31265) found +[7259] Forked 31266 +[7258] Forked 31267 +(31266) found +(31267) found +[7257] Forked 31268 +[7256] Forked 31269 +(31268) found +(31269) found +[7255] Forked 31270 +[7254] Forked 31271 +(31270) found +(31271) found +[7253] Forked 31272 +[7252] Forked 31273 +(31272) found +(31273) found +[7251] Forked 31274 +[7250] Forked 31275 +(31274) found +(31275) found +[7249] Forked 31276 +[7248] Forked 31277 +(31276) found +(31277) found +[7247] Forked 31278 +[7246] Forked 31279 +(31278) found +(31279) found +[7245] Forked 31280 +[7244] Forked 31281 +(31280) found +(31281) found +[7243] Forked 31282 +[7242] Forked 31283 +(31282) found +(31283) found +[7241] Forked 31284 +[7240] Forked 31285 +(31285) found +(31284) found +[7239] Forked 31286 +(31286) found +[7238] Forked 31287 +(31287) found +[7237] Forked 31288 +(31288) found +[7236] Forked 31289 +(31289) found +[7235] Forked 31290 +(31290) found +[7234] Forked 31291 +(31291) found +[7233] Forked 31292 +(31292) found +[7232] Forked 31293 +(31293) found +[7231] Forked 31294 +(31294) found +[7230] Forked 31295 +(31295) found +[7229] Forked 31296 +(31296) found +[7228] Forked 31297 +(31297) found +[7227] Forked 31298 +(31298) found +[7226] Forked 31299 +(31299) found +[7225] Forked 31300 +(31300) found +[7224] Forked 31301 +(31301) found +[7223] Forked 31302 +(31302) found +[7222] Forked 31303 +(31303) found +[7221] Forked 31304 +(31304) found +[7220] Forked 31305 +(31305) found +[7219] Forked 31306 +(31306) found +[7218] Forked 31307 +(31307) found +[7217] Forked 31308 +(31308) found +[7216] Forked 31309 +(31309) found +[7215] Forked 31310 +(31310) found +[7214] Forked 31311 +(31311) found +[7213] Forked 31312 +(31312) found +[7212] Forked 31313 +(31313) found +[7211] Forked 31314 +(31314) found +[7210] Forked 31315 +(31315) found +[7209] Forked 31316 +(31316) found +[7208] Forked 31317 +(31317) found +[7207] Forked 31318 +(31318) found +[7206] Forked 31319 +(31319) found +[7205] Forked 31320 +[7204] Forked 31321 +(31320) found +(31321) found +[7203] Forked 31322 +[7202] Forked 31323 +(31323) found +(31322) found +[7201] Forked 31324 +(31324) found +[7200] Forked 31325 +(31325) found +[7199] Forked 31326 +(31326) found +[7198] Forked 31327 +(31327) found +[7197] Forked 31328 +(31328) found +[7196] Forked 31329 +(31329) found +[7195] Forked 31330 +(31330) found +[7194] Forked 31331 +(31331) found +[7193] Forked 31332 +(31332) found +[7192] Forked 31333 +(31333) found +[7191] Forked 31334 +(31334) found +[7190] Forked 31335 +(31335) found +[7189] Forked 31336 +(31336) found +[7188] Forked 31337 +(31337) found +[7187] Forked 31338 +(31338) found +[7186] Forked 31339 +(31339) found +[7185] Forked 31340 +(31340) found +[7184] Forked 31341 +(31341) found +[7183] Forked 31342 +(31342) found +[7182] Forked 31343 +(31343) found +[7181] Forked 31344 +(31344) found +[7180] Forked 31345 +(31345) found +[7179] Forked 31346 +(31346) found +[7178] Forked 31347 +(31347) found +[7177] Forked 31348 +(31348) found +[7176] Forked 31349 +(31349) found +[7175] Forked 31350 +(31350) found +[7174] Forked 31351 +(31351) found +[7173] Forked 31352 +(31352) found +[7172] Forked 31353 +(31353) found +[7171] Forked 31354 +(31354) found +[7170] Forked 31355 +(31355) found +[7169] Forked 31356 +(31356) found +[7168] Forked 31357 +(31357) found +[7167] Forked 31358 +(31358) found +[7166] Forked 31359 +(31359) found +[7165] Forked 31360 +(31360) found +[7164] Forked 31361 +(31361) found +[7163] Forked 31362 +(31362) found +[7162] Forked 31363 +(31363) found +[7161] Forked 31364 +(31364) found +[7160] Forked 31365 +(31365) found +[7159] Forked 31366 +(31366) found +[7158] Forked 31367 +(31367) found +[7157] Forked 31368 +(31368) found +[7156] Forked 31369 +(31369) found +[7155] Forked 31370 +(31370) found +[7154] Forked 31371 +(31371) found +[7153] Forked 31372 +(31372) found +[7152] Forked 31373 +(31373) found +[7151] Forked 31374 +(31374) found +[7150] Forked 31375 +(31375) found +[7149] Forked 31376 +(31376) found +[7148] Forked 31377 +(31377) found +[7147] Forked 31378 +(31378) found +[7146] Forked 31379 +(31379) found +[7145] Forked 31380 +(31380) found +[7144] Forked 31381 +(31381) found +[7143] Forked 31382 +(31382) found +[7142] Forked 31383 +(31383) found +[7141] Forked 31384 +(31384) found +[7140] Forked 31385 +(31385) found +[7139] Forked 31386 +(31386) found +[7138] Forked 31387 +(31387) found +[7137] Forked 31388 +(31388) found +[7136] Forked 31389 +(31389) found +[7135] Forked 31390 +(31390) found +[7134] Forked 31391 +(31391) found +[7133] Forked 31392 +(31392) found +[7132] Forked 31393 +(31393) found +[7131] Forked 31394 +(31394) found +[7130] Forked 31395 +(31395) found +[7129] Forked 31396 +(31396) found +[7128] Forked 31397 +(31397) found +[7127] Forked 31398 +(31398) found +[7126] Forked 31399 +(31399) found +[7125] Forked 31400 +(31400) found +[7124] Forked 31401 +(31401) found +[7123] Forked 31402 +(31402) found +[7122] Forked 31403 +(31403) found +[7121] Forked 31404 +(31404) found +[7120] Forked 31405 +(31405) found +[7119] Forked 31406 +(31406) found +[7118] Forked 31407 +(31407) found +[7117] Forked 31408 +(31408) found +[7116] Forked 31409 +(31409) found +[7115] Forked 31410 +(31410) found +[7114] Forked 31411 +(31411) found +[7113] Forked 31412 +(31412) found +[7112] Forked 31413 +(31413) found +[7111] Forked 31414 +(31414) found +[7110] Forked 31415 +(31415) found +[7109] Forked 31416 +(31416) found +[7108] Forked 31417 +(31417) found +[7107] Forked 31418 +(31418) found +[7106] Forked 31419 +(31419) found +[7105] Forked 31420 +(31420) found +[7104] Forked 31421 +(31421) found +[7103] Forked 31422 +(31422) found +[7102] Forked 31423 +(31423) found +[7101] Forked 31424 +(31424) found +[7100] Forked 31425 +(31425) found +[7099] Forked 31426 +[7098] Forked 31427 +(31426) found +(31427) found +[7097] Forked 31428 +[7096] Forked 31429 +(31428) found +(31429) found +[7095] Forked 31430 +[7094] Forked 31431 +(31430) found +(31431) found +[7093] Forked 31432 +[7092] Forked 31433 +(31432) found +(31433) found +[7091] Forked 31434 +[7090] Forked 31435 +(31434) found +(31435) found +[7089] Forked 31436 +[7088] Forked 31437 +(31436) found +(31437) found +[7087] Forked 31438 +[7086] Forked 31439 +(31438) found +(31439) found +[7085] Forked 31440 +[7084] Forked 31441 +(31440) found +(31441) found +[7083] Forked 31442 +[7082] Forked 31443 +(31442) found +(31443) found +[7081] Forked 31444 +[7080] Forked 31445 +(31444) found +(31445) found +[7079] Forked 31446 +[7078] Forked 31447 +(31446) found +(31447) found +[7077] Forked 31448 +[7076] Forked 31449 +(31448) found +(31449) found +[7075] Forked 31450 +[7074] Forked 31451 +(31450) found +(31451) found +[7073] Forked 31452 +[7072] Forked 31453 +(31452) found +(31453) found +[7071] Forked 31454 +[7070] Forked 31455 +(31454) found +(31455) found +[7069] Forked 31456 +[7068] Forked 31457 +(31456) found +(31457) found +[7067] Forked 31458 +[7066] Forked 31459 +(31458) found +(31459) found +[7065] Forked 31460 +[7064] Forked 31461 +(31460) found +(31461) found +[7063] Forked 31462 +[7062] Forked 31463 +(31462) found +(31463) found +[7061] Forked 31464 +[7060] Forked 31465 +(31464) found +(31465) found +[7059] Forked 31466 +[7058] Forked 31467 +(31466) found +(31467) found +[7057] Forked 31468 +[7056] Forked 31469 +(31468) found +(31469) found +[7055] Forked 31470 +[7054] Forked 31471 +(31470) found +(31471) found +[7053] Forked 31472 +[7052] Forked 31473 +(31472) found +(31473) found +[7051] Forked 31474 +[7050] Forked 31475 +(31474) found +(31475) found +[7049] Forked 31476 +[7048] Forked 31477 +(31476) found +(31477) found +[7047] Forked 31478 +[7046] Forked 31479 +(31478) found +(31479) found +[7045] Forked 31480 +[7044] Forked 31481 +(31480) found +(31481) found +[7043] Forked 31482 +[7042] Forked 31483 +(31482) found +(31483) found +[7041] Forked 31484 +[7040] Forked 31485 +(31484) found +(31485) found +[7039] Forked 31486 +[7038] Forked 31487 +(31486) found +(31487) found +[7037] Forked 31488 +[7036] Forked 31489 +(31488) found +(31489) found +[7035] Forked 31490 +[7034] Forked 31491 +(31490) found +(31491) found +[7033] Forked 31492 +[7032] Forked 31493 +(31492) found +(31493) found +[7031] Forked 31494 +[7030] Forked 31495 +(31494) found +(31495) found +[7029] Forked 31496 +[7028] Forked 31497 +(31496) found +(31497) found +[7027] Forked 31498 +[7026] Forked 31499 +(31498) found +(31499) found +[7025] Forked 31500 +[7024] Forked 31501 +(31500) found +(31501) found +[7023] Forked 31502 +[7022] Forked 31503 +(31502) found +(31503) found +[7021] Forked 31504 +[7020] Forked 31505 +(31504) found +(31505) found +[7019] Forked 31506 +[7018] Forked 31507 +(31506) found +(31507) found +[7017] Forked 31508 +[7016] Forked 31509 +(31508) found +(31509) found +[7015] Forked 31510 +[7014] Forked 31511 +(31510) found +(31511) found +[7013] Forked 31512 +[7012] Forked 31513 +(31512) found +(31513) found +[7011] Forked 31514 +[7010] Forked 31515 +(31514) found +(31515) found +[7009] Forked 31516 +[7008] Forked 31517 +(31516) found +(31517) found +[7007] Forked 31518 +[7006] Forked 31519 +(31518) found +(31519) found +[7005] Forked 31520 +[7004] Forked 31521 +(31520) found +(31521) found +[7003] Forked 31522 +[7002] Forked 31523 +(31522) found +(31523) found +[7001] Forked 31524 +[7000] Forked 31525 +(31524) found +(31525) found +[6999] Forked 31526 +[6998] Forked 31527 +(31526) found +(31527) found +[6997] Forked 31528 +[6996] Forked 31529 +(31528) found +(31529) found +[6995] Forked 31530 +[6994] Forked 31531 +(31530) found +(31531) found +[6993] Forked 31532 +[6992] Forked 31533 +(31532) found +(31533) found +[6991] Forked 31534 +[6990] Forked 31535 +(31534) found +(31535) found +[6989] Forked 31536 +[6988] Forked 31537 +(31536) found +(31537) found +[6987] Forked 31538 +[6986] Forked 31539 +(31538) found +(31539) found +[6985] Forked 31540 +[6984] Forked 31541 +(31540) found +(31541) found +[6983] Forked 31542 +[6982] Forked 31543 +(31542) found +(31543) found +[6981] Forked 31544 +[6980] Forked 31545 +(31544) found +(31545) found +[6979] Forked 31546 +[6978] Forked 31547 +(31546) found +(31547) found +[6977] Forked 31548 +[6976] Forked 31549 +(31548) found +(31549) found +[6975] Forked 31550 +[6974] Forked 31551 +(31550) found +(31551) found +[6973] Forked 31552 +[6972] Forked 31553 +(31552) found +(31553) found +[6971] Forked 31554 +[6970] Forked 31555 +(31554) found +(31555) found +[6969] Forked 31556 +[6968] Forked 31557 +(31556) found +(31557) found +[6967] Forked 31558 +[6966] Forked 31559 +(31558) found +(31559) found +[6965] Forked 31560 +[6964] Forked 31561 +(31560) found +(31561) found +[6963] Forked 31562 +[6962] Forked 31563 +(31562) found +(31563) found +[6961] Forked 31564 +[6960] Forked 31565 +(31564) found +(31565) found +[6959] Forked 31566 +[6958] Forked 31567 +(31566) found +(31567) found +[6957] Forked 31568 +[6956] Forked 31569 +(31568) found +(31569) found +[6955] Forked 31570 +[6954] Forked 31571 +(31570) found +(31571) found +[6953] Forked 31572 +[6952] Forked 31573 +(31572) found +(31573) found +[6951] Forked 31574 +[6950] Forked 31575 +(31574) found +(31575) found +[6949] Forked 31576 +[6948] Forked 31577 +(31576) found +(31577) found +[6947] Forked 31578 +[6946] Forked 31579 +(31578) found +(31579) found +[6945] Forked 31580 +[6944] Forked 31581 +(31580) found +(31581) found +[6943] Forked 31582 +[6942] Forked 31583 +(31582) found +(31583) found +[6941] Forked 31584 +[6940] Forked 31585 +(31584) found +(31585) found +[6939] Forked 31586 +[6938] Forked 31587 +(31586) found +(31587) found +[6937] Forked 31588 +[6936] Forked 31589 +(31588) found +(31589) found +[6935] Forked 31590 +[6934] Forked 31591 +(31590) found +(31591) found +[6933] Forked 31592 +[6932] Forked 31593 +(31592) found +(31593) found +[6931] Forked 31594 +[6930] Forked 31595 +(31594) found +(31595) found +[6929] Forked 31596 +[6928] Forked 31597 +(31596) found +(31597) found +[6927] Forked 31598 +[6926] Forked 31599 +(31598) found +(31599) found +[6925] Forked 31600 +[6924] Forked 31601 +(31600) found +(31601) found +[6923] Forked 31602 +[6922] Forked 31603 +(31602) found +(31603) found +[6921] Forked 31604 +[6920] Forked 31605 +(31604) found +(31605) found +[6919] Forked 31606 +[6918] Forked 31607 +(31606) found +(31607) found +[6917] Forked 31608 +[6916] Forked 31609 +(31608) found +(31609) found +[6915] Forked 31610 +(31610) found +[6914] Forked 31611 +(31611) found +[6913] Forked 31612 +(31612) found +[6912] Forked 31613 +(31613) found +[6911] Forked 31614 +(31614) found +[6910] Forked 31615 +[6909] Forked 31616 +(31615) found +(31616) found +[6908] Forked 31617 +[6907] Forked 31618 +(31617) found +(31618) found +[6906] Forked 31619 +[6905] Forked 31620 +(31619) found +(31620) found +[6904] Forked 31621 +[6903] Forked 31622 +(31621) found +(31622) found +[6902] Forked 31623 +[6901] Forked 31624 +(31623) found +(31624) found +[6900] Forked 31625 +[6899] Forked 31626 +(31625) found +(31626) found +[6898] Forked 31627 +[6897] Forked 31628 +(31627) found +(31628) found +[6896] Forked 31629 +[6895] Forked 31630 +(31629) found +(31630) found +[6894] Forked 31631 +[6893] Forked 31632 +(31631) found +(31632) found +[6892] Forked 31633 +[6891] Forked 31634 +(31633) found +(31634) found +[6890] Forked 31635 +[6889] Forked 31636 +(31635) found +(31636) found +[6888] Forked 31637 +[6887] Forked 31638 +(31637) found +(31638) found +[6886] Forked 31639 +[6885] Forked 31640 +(31639) found +(31640) found +[6884] Forked 31641 +[6883] Forked 31642 +(31641) found +(31642) found +[6882] Forked 31643 +[6881] Forked 31644 +(31643) found +(31644) found +[6880] Forked 31645 +[6879] Forked 31646 +(31645) found +(31646) found +[6878] Forked 31647 +[6877] Forked 31648 +(31647) found +(31648) found +[6876] Forked 31649 +[6875] Forked 31650 +(31649) found +(31650) found +[6874] Forked 31651 +[6873] Forked 31652 +(31651) found +(31652) found +[6872] Forked 31653 +[6871] Forked 31654 +(31653) found +(31654) found +[6870] Forked 31655 +[6869] Forked 31656 +(31655) found +(31656) found +[6868] Forked 31657 +[6867] Forked 31658 +(31657) found +(31658) found +[6866] Forked 31659 +[6865] Forked 31660 +(31659) found +(31660) found +[6864] Forked 31661 +[6863] Forked 31662 +(31661) found +(31662) found +[6862] Forked 31663 +[6861] Forked 31664 +(31663) found +(31664) found +[6860] Forked 31665 +[6859] Forked 31666 +(31665) found +(31666) found +[6858] Forked 31667 +[6857] Forked 31668 +(31667) found +(31668) found +[6856] Forked 31669 +[6855] Forked 31670 +(31669) found +(31670) found +[6854] Forked 31671 +[6853] Forked 31672 +(31671) found +(31672) found +[6852] Forked 31673 +[6851] Forked 31674 +(31673) found +(31674) found +[6850] Forked 31675 +[6849] Forked 31676 +(31675) found +(31676) found +[6848] Forked 31677 +[6847] Forked 31678 +(31677) found +(31678) found +[6846] Forked 31679 +[6845] Forked 31680 +(31679) found +(31680) found +[6844] Forked 31681 +[6843] Forked 31682 +(31681) found +(31682) found +[6842] Forked 31683 +[6841] Forked 31684 +(31683) found +(31684) found +[6840] Forked 31685 +[6839] Forked 31686 +(31685) found +(31686) found +[6838] Forked 31687 +[6837] Forked 31688 +(31687) found +(31688) found +[6836] Forked 31689 +[6835] Forked 31690 +(31689) found +(31690) found +[6834] Forked 31691 +[6833] Forked 31692 +(31691) found +(31692) found +[6832] Forked 31693 +[6831] Forked 31694 +(31693) found +(31694) found +[6830] Forked 31695 +[6829] Forked 31696 +(31695) found +(31696) found +[6828] Forked 31697 +[6827] Forked 31698 +(31697) found +(31698) found +[6826] Forked 31699 +[6825] Forked 31700 +(31699) found +(31700) found +[6824] Forked 31701 +[6823] Forked 31702 +(31701) found +(31702) found +[6822] Forked 31703 +[6821] Forked 31704 +(31703) found +(31704) found +[6820] Forked 31705 +[6819] Forked 31706 +(31706) found +(31705) found +[6818] Forked 31707 +(31707) found +[6817] Forked 31708 +(31708) found +[6816] Forked 31709 +(31709) found +[6815] Forked 31710 +(31710) found +[6814] Forked 31711 +(31711) found +[6813] Forked 31712 +(31712) found +[6812] Forked 31713 +(31713) found +[6811] Forked 31714 +(31714) found +[6810] Forked 31715 +(31715) found +[6809] Forked 31716 +(31716) found +[6808] Forked 31717 +(31717) found +[6807] Forked 31718 +(31718) found +[6806] Forked 31719 +(31719) found +[6805] Forked 31720 +(31720) found +[6804] Forked 31721 +(31721) found +[6803] Forked 31722 +(31722) found +[6802] Forked 31723 +(31723) found +[6801] Forked 31724 +(31724) found +[6800] Forked 31725 +(31725) found +[6799] Forked 31726 +(31726) found +[6798] Forked 31727 +(31727) found +[6797] Forked 31728 +(31728) found +[6796] Forked 31729 +(31729) found +[6795] Forked 31730 +(31730) found +[6794] Forked 31731 +(31731) found +[6793] Forked 31732 +(31732) found +[6792] Forked 31733 +(31733) found +[6791] Forked 31734 +(31734) found +[6790] Forked 31735 +(31735) found +[6789] Forked 31736 +(31736) found +[6788] Forked 31737 +(31737) found +[6787] Forked 31738 +(31738) found +[6786] Forked 31739 +(31739) found +[6785] Forked 31740 +(31740) found +[6784] Forked 31741 +(31741) found +[6783] Forked 31742 +[6782] Forked 31743 +(31742) found +(31743) found +[6781] Forked 31744 +[6780] Forked 31745 +(31744) found +(31745) found +[6779] Forked 31746 +[6778] Forked 31747 +(31746) found +(31747) found +[6777] Forked 31748 +[6776] Forked 31749 +(31748) found +(31749) found +[6775] Forked 31750 +[6774] Forked 31751 +(31750) found +(31751) found +[6773] Forked 31752 +[6772] Forked 31753 +(31752) found +(31753) found +[6771] Forked 31754 +[6770] Forked 31755 +(31754) found +(31755) found +[6769] Forked 31756 +[6768] Forked 31757 +(31756) found +(31757) found +[6767] Forked 31758 +[6766] Forked 31759 +(31758) found +(31759) found +[6765] Forked 31760 +[6764] Forked 31761 +(31760) found +(31761) found +[6763] Forked 31762 +[6762] Forked 31763 +(31762) found +(31763) found +[6761] Forked 31764 +[6760] Forked 31765 +(31764) found +(31765) found +[6759] Forked 31766 +[6758] Forked 31767 +(31766) found +(31767) found +[6757] Forked 31768 +[6756] Forked 31769 +(31768) found +(31769) found +[6755] Forked 31770 +[6754] Forked 31771 +(31770) found +(31771) found +[6753] Forked 31772 +[6752] Forked 31773 +(31772) found +(31773) found +[6751] Forked 31774 +[6750] Forked 31775 +(31774) found +(31775) found +[6749] Forked 31776 +[6748] Forked 31777 +(31776) found +(31777) found +[6747] Forked 31778 +[6746] Forked 31779 +(31778) found +(31779) found +[6745] Forked 31780 +[6744] Forked 31781 +(31780) found +(31781) found +[6743] Forked 31782 +[6742] Forked 31783 +(31782) found +(31783) found +[6741] Forked 31784 +[6740] Forked 31785 +(31784) found +(31785) found +[6739] Forked 31786 +[6738] Forked 31787 +(31786) found +(31787) found +[6737] Forked 31788 +[6736] Forked 31789 +(31788) found +(31789) found +[6735] Forked 31790 +[6734] Forked 31791 +(31790) found +(31791) found +[6733] Forked 31792 +[6732] Forked 31793 +(31792) found +(31793) found +[6731] Forked 31794 +[6730] Forked 31795 +(31794) found +(31795) found +[6729] Forked 31796 +[6728] Forked 31797 +(31796) found +(31797) found +[6727] Forked 31798 +[6726] Forked 31799 +(31798) found +(31799) found +[6725] Forked 31800 +[6724] Forked 31801 +(31800) found +(31801) found +[6723] Forked 31802 +[6722] Forked 31803 +(31802) found +(31803) found +[6721] Forked 31804 +[6720] Forked 31805 +(31804) found +(31805) found +[6719] Forked 31806 +[6718] Forked 31807 +(31806) found +(31807) found +[6717] Forked 31808 +[6716] Forked 31809 +(31808) found +(31809) found +[6715] Forked 31810 +[6714] Forked 31811 +(31810) found +(31811) found +[6713] Forked 31812 +[6712] Forked 31813 +(31812) found +(31813) found +[6711] Forked 31814 +[6710] Forked 31815 +(31814) found +(31815) found +[6709] Forked 31816 +[6708] Forked 31817 +(31816) found +(31817) found +[6707] Forked 31818 +[6706] Forked 31819 +(31818) found +(31819) found +[6705] Forked 31820 +[6704] Forked 31821 +(31820) found +(31821) found +[6703] Forked 31822 +[6702] Forked 31823 +(31822) found +(31823) found +[6701] Forked 31824 +[6700] Forked 31825 +(31824) found +(31825) found +[6699] Forked 31826 +[6698] Forked 31827 +(31826) found +(31827) found +[6697] Forked 31828 +[6696] Forked 31829 +(31828) found +(31829) found +[6695] Forked 31830 +[6694] Forked 31831 +(31830) found +(31831) found +[6693] Forked 31832 +[6692] Forked 31833 +(31832) found +(31833) found +[6691] Forked 31834 +[6690] Forked 31835 +(31834) found +(31835) found +[6689] Forked 31836 +[6688] Forked 31837 +(31836) found +(31837) found +[6687] Forked 31838 +[6686] Forked 31839 +(31838) found +(31839) found +[6685] Forked 31840 +[6684] Forked 31842 +(31840) found +(31842) found +[6683] Forked 31843 +(31843) found +[6682] Forked 31844 +(31844) found +[6681] Forked 31845 +(31845) found +[6680] Forked 31846 +(31846) found +[6679] Forked 31847 +(31847) found +[6678] Forked 31848 +(31848) found +[6677] Forked 31849 +(31849) found +[6676] Forked 31850 +(31850) found +[6675] Forked 31851 +(31851) found +[6674] Forked 31852 +(31852) found +[6673] Forked 31853 +(31853) found +[6672] Forked 31854 +(31854) found +[6671] Forked 31855 +(31855) found +[6670] Forked 31856 +(31856) found +[6669] Forked 31857 +(31857) found +[6668] Forked 31858 +(31858) found +[6667] Forked 31859 +(31859) found +[6666] Forked 31860 +(31860) found +[6665] Forked 31861 +(31861) found +[6664] Forked 31862 +(31862) found +[6663] Forked 31863 +(31863) found +[6662] Forked 31864 +(31864) found +[6661] Forked 31865 +(31865) found +[6660] Forked 31866 +(31866) found +[6659] Forked 31867 +(31867) found +[6658] Forked 31868 +(31868) found +[6657] Forked 31869 +(31869) found +[6656] Forked 31870 +(31870) found +[6655] Forked 31871 +(31871) found +[6654] Forked 31872 +(31872) found +[6653] Forked 31873 +(31873) found +[6652] Forked 31874 +(31874) found +[6651] Forked 31875 +(31875) found +[6650] Forked 31876 +(31876) found +[6649] Forked 31877 +(31877) found +[6648] Forked 31878 +(31878) found +[6647] Forked 31879 +(31879) found +[6646] Forked 31880 +(31880) found +[6645] Forked 31881 +(31881) found +[6644] Forked 31882 +(31882) found +[6643] Forked 31883 +(31883) found +[6642] Forked 31884 +(31884) found +[6641] Forked 31885 +(31885) found +[6640] Forked 31886 +(31886) found +[6639] Forked 31887 +(31887) found +[6638] Forked 31888 +(31888) found +[6637] Forked 31889 +(31889) found +[6636] Forked 31890 +(31890) found +[6635] Forked 31891 +(31891) found +[6634] Forked 31892 +(31892) found +[6633] Forked 31893 +(31893) found +[6632] Forked 31894 +(31894) found +[6631] Forked 31895 +(31895) found +[6630] Forked 31896 +(31896) found +[6629] Forked 31897 +(31897) found +[6628] Forked 31898 +(31898) found +[6627] Forked 31899 +(31899) found +[6626] Forked 31900 +(31900) found +[6625] Forked 31901 +(31901) found +[6624] Forked 31902 +(31902) found +[6623] Forked 31903 +(31903) found +[6622] Forked 31904 +[6621] Forked 31905 +(31904) found +(31905) found +[6620] Forked 31906 +[6619] Forked 31907 +(31906) found +(31907) found +[6618] Forked 31908 +[6617] Forked 31909 +(31908) found +(31909) found +[6616] Forked 31910 +[6615] Forked 31911 +(31910) found +(31911) found +[6614] Forked 31912 +[6613] Forked 31913 +(31912) found +(31913) found +[6612] Forked 31914 +[6611] Forked 31915 +(31914) found +(31915) found +[6610] Forked 31916 +[6609] Forked 31917 +(31916) found +(31917) found +[6608] Forked 31918 +[6607] Forked 31919 +(31918) found +(31919) found +[6606] Forked 31920 +[6605] Forked 31921 +(31920) found +(31921) found +[6604] Forked 31922 +[6603] Forked 31923 +(31922) found +(31923) found +[6602] Forked 31924 +[6601] Forked 31925 +(31924) found +(31925) found +[6600] Forked 31926 +[6599] Forked 31927 +(31926) found +(31927) found +[6598] Forked 31928 +[6597] Forked 31929 +(31928) found +(31929) found +[6596] Forked 31930 +[6595] Forked 31931 +(31930) found +(31931) found +[6594] Forked 31932 +[6593] Forked 31933 +(31932) found +(31933) found +[6592] Forked 31934 +[6591] Forked 31935 +(31934) found +(31935) found +[6590] Forked 31936 +[6589] Forked 31937 +(31936) found +(31937) found +[6588] Forked 31938 +[6587] Forked 31939 +(31938) found +(31939) found +[6586] Forked 31940 +[6585] Forked 31941 +(31940) found +(31941) found +[6584] Forked 31942 +[6583] Forked 31943 +(31942) found +(31943) found +[6582] Forked 31944 +[6581] Forked 31945 +(31944) found +(31945) found +[6580] Forked 31946 +[6579] Forked 31947 +(31946) found +(31947) found +[6578] Forked 31948 +[6577] Forked 31949 +(31948) found +(31949) found +[6576] Forked 31950 +(31950) found +[6575] Forked 31951 +(31951) found +[6574] Forked 31952 +(31952) found +[6573] Forked 31953 +(31953) found +[6572] Forked 31954 +(31954) found +[6571] Forked 31955 +(31955) found +[6570] Forked 31956 +(31956) found +[6569] Forked 31957 +(31957) found +[6568] Forked 31958 +(31958) found +[6567] Forked 31959 +(31959) found +[6566] Forked 31960 +(31960) found +[6565] Forked 31961 +(31961) found +[6564] Forked 31962 +(31962) found +[6563] Forked 31963 +(31963) found +[6562] Forked 31964 +(31964) found +[6561] Forked 31965 +(31965) found +[6560] Forked 31966 +(31966) found +[6559] Forked 31967 +(31967) found +[6558] Forked 31968 +(31968) found +[6557] Forked 31969 +(31969) found +[6556] Forked 31970 +(31970) found +[6555] Forked 31971 +(31971) found +[6554] Forked 31972 +(31972) found +[6553] Forked 31973 +(31973) found +[6552] Forked 31974 +(31974) found +[6551] Forked 31975 +(31975) found +[6550] Forked 31976 +(31976) found +[6549] Forked 31977 +(31977) found +[6548] Forked 31978 +(31978) found +[6547] Forked 31979 +(31979) found +[6546] Forked 31980 +(31980) found +[6545] Forked 31981 +(31981) found +[6544] Forked 31982 +(31982) found +[6543] Forked 31983 +(31983) found +[6542] Forked 31984 +(31984) found +[6541] Forked 31985 +[6540] Forked 31986 +(31985) found +(31986) found +[6539] Forked 31987 +[6538] Forked 31988 +(31987) found +(31988) found +[6537] Forked 31989 +[6536] Forked 31990 +(31989) found +(31990) found +[6535] Forked 31991 +[6534] Forked 31992 +(31991) found +(31992) found +[6533] Forked 31993 +[6532] Forked 31994 +(31993) found +(31994) found +[6531] Forked 31995 +[6530] Forked 31996 +(31995) found +(31996) found +[6529] Forked 31997 +[6528] Forked 31998 +(31997) found +(31998) found +[6527] Forked 31999 +[6526] Forked 32000 +(31999) found +(32000) found +[6525] Forked 32001 +[6524] Forked 32002 +(32001) found +(32002) found +[6523] Forked 32003 +[6522] Forked 32004 +(32003) found +(32004) found +[6521] Forked 32005 +[6520] Forked 32006 +(32005) found +(32006) found +[6519] Forked 32007 +[6518] Forked 32008 +(32007) found +(32008) found +[6517] Forked 32009 +[6516] Forked 32010 +(32009) found +(32010) found +[6515] Forked 32011 +[6514] Forked 32012 +(32011) found +(32012) found +[6513] Forked 32013 +[6512] Forked 32014 +(32013) found +(32014) found +[6511] Forked 32015 +[6510] Forked 32016 +(32015) found +(32016) found +[6509] Forked 32017 +[6508] Forked 32018 +(32017) found +(32018) found +[6507] Forked 32019 +[6506] Forked 32020 +(32019) found +(32020) found +[6505] Forked 32021 +[6504] Forked 32022 +(32021) found +(32022) found +[6503] Forked 32023 +[6502] Forked 32024 +(32023) found +(32024) found +[6501] Forked 32025 +[6500] Forked 32026 +(32025) found +(32026) found +[6499] Forked 32027 +[6498] Forked 32028 +(32027) found +(32028) found +[6497] Forked 32029 +[6496] Forked 32030 +(32029) found +(32030) found +[6495] Forked 32031 +[6494] Forked 32032 +(32031) found +(32032) found +[6493] Forked 32033 +[6492] Forked 32034 +(32033) found +(32034) found +[6491] Forked 32035 +[6490] Forked 32036 +(32035) found +(32036) found +[6489] Forked 32037 +[6488] Forked 32038 +(32037) found +(32038) found +[6487] Forked 32039 +[6486] Forked 32040 +(32039) found +(32040) found +[6485] Forked 32041 +[6484] Forked 32042 +(32041) found +(32042) found +[6483] Forked 32043 +[6482] Forked 32044 +(32043) found +(32044) found +[6481] Forked 32045 +[6480] Forked 32046 +(32045) found +(32046) found +[6479] Forked 32047 +[6478] Forked 32048 +(32047) found +(32048) found +[6477] Forked 32049 +[6476] Forked 32050 +(32049) found +(32050) found +[6475] Forked 32051 +[6474] Forked 32052 +(32051) found +(32052) found +[6473] Forked 32053 +[6472] Forked 32054 +(32053) found +(32054) found +[6471] Forked 32055 +[6470] Forked 32056 +(32055) found +(32056) found +[6469] Forked 32057 +[6468] Forked 32058 +(32057) found +(32058) found +[6467] Forked 32059 +[6466] Forked 32060 +(32059) found +(32060) found +[6465] Forked 32061 +[6464] Forked 32062 +(32061) found +(32062) found +[6463] Forked 32063 +[6462] Forked 32064 +(32063) found +(32064) found +[6461] Forked 32065 +[6460] Forked 32066 +(32065) found +(32066) found +[6459] Forked 32067 +[6458] Forked 32068 +(32067) found +(32068) found +[6457] Forked 32069 +[6456] Forked 32070 +(32069) found +(32070) found +[6455] Forked 32071 +[6454] Forked 32072 +(32071) found +(32072) found +[6453] Forked 32073 +[6452] Forked 32074 +(32073) found +(32074) found +[6451] Forked 32075 +[6450] Forked 32076 +(32075) found +(32076) found +[6449] Forked 32077 +[6448] Forked 32078 +(32077) found +(32078) found +[6447] Forked 32079 +[6446] Forked 32080 +(32079) found +(32080) found +[6445] Forked 32081 +[6444] Forked 32082 +(32081) found +(32082) found +[6443] Forked 32083 +[6442] Forked 32084 +(32083) found +(32084) found +[6441] Forked 32085 +[6440] Forked 32086 +(32085) found +(32086) found +[6439] Forked 32087 +[6438] Forked 32088 +(32087) found +(32088) found +[6437] Forked 32089 +[6436] Forked 32090 +(32089) found +(32090) found +[6435] Forked 32091 +[6434] Forked 32092 +(32091) found +(32092) found +[6433] Forked 32093 +[6432] Forked 32094 +(32093) found +(32094) found +[6431] Forked 32095 +[6430] Forked 32096 +(32095) found +(32096) found +[6429] Forked 32097 +[6428] Forked 32098 +(32097) found +(32098) found +[6427] Forked 32099 +[6426] Forked 32100 +(32099) found +(32100) found +[6425] Forked 32101 +[6424] Forked 32102 +(32101) found +(32102) found +[6423] Forked 32103 +[6422] Forked 32104 +(32103) found +(32104) found +[6421] Forked 32105 +[6420] Forked 32106 +(32105) found +(32106) found +[6419] Forked 32107 +[6418] Forked 32108 +(32107) found +(32108) found +[6417] Forked 32109 +[6416] Forked 32110 +(32109) found +(32110) found +[6415] Forked 32111 +[6414] Forked 32112 +(32111) found +(32112) found +[6413] Forked 32113 +[6412] Forked 32115 +(32113) found +(32115) found +[6411] Forked 32116 +(32116) found +[6410] Forked 32117 +[6409] Forked 32118 +(32117) found +(32118) found +[6408] Forked 32119 +[6407] Forked 32120 +(32119) found +(32120) found +[6406] Forked 32121 +[6405] Forked 32122 +(32121) found +(32122) found +[6404] Forked 32123 +[6403] Forked 32124 +(32123) found +(32124) found +[6402] Forked 32125 +[6401] Forked 32126 +(32125) found +(32126) found +[6400] Forked 32127 +[6399] Forked 32128 +(32127) found +(32128) found +[6398] Forked 32129 +[6397] Forked 32130 +(32129) found +(32130) found +[6396] Forked 32131 +[6395] Forked 32132 +(32131) found +(32132) found +[6394] Forked 32133 +[6393] Forked 32134 +(32133) found +(32134) found +[6392] Forked 32135 +[6391] Forked 32136 +(32135) found +(32136) found +[6390] Forked 32137 +[6389] Forked 32138 +(32137) found +(32138) found +[6388] Forked 32139 +[6387] Forked 32140 +(32139) found +(32140) found +[6386] Forked 32141 +[6385] Forked 32142 +(32141) found +(32142) found +[6384] Forked 32143 +[6383] Forked 32144 +(32143) found +(32144) found +[6382] Forked 32145 +[6381] Forked 32146 +(32145) found +(32146) found +[6380] Forked 32147 +[6379] Forked 32148 +(32147) found +(32148) found +[6378] Forked 32149 +[6377] Forked 32150 +(32149) found +(32150) found +[6376] Forked 32151 +[6375] Forked 32152 +(32151) found +(32152) found +[6374] Forked 32153 +[6373] Forked 32154 +(32153) found +(32154) found +[6372] Forked 32155 +[6371] Forked 32156 +(32155) found +(32156) found +[6370] Forked 32157 +[6369] Forked 32158 +(32157) found +(32158) found +[6368] Forked 32159 +[6367] Forked 32160 +(32159) found +(32160) found +[6366] Forked 32161 +[6365] Forked 32162 +(32161) found +(32162) found +[6364] Forked 32163 +[6363] Forked 32164 +(32163) found +(32164) found +[6362] Forked 32165 +[6361] Forked 32166 +(32165) found +(32166) found +[6360] Forked 32167 +[6359] Forked 32168 +(32167) found +(32168) found +[6358] Forked 32169 +(32169) found +[6357] Forked 32170 +(32170) found +[6356] Forked 32171 +(32171) found +[6355] Forked 32172 +(32172) found +[6354] Forked 32173 +(32173) found +[6353] Forked 32174 +(32174) found +[6352] Forked 32175 +(32175) found +[6351] Forked 32176 +(32176) found +[6350] Forked 32177 +(32177) found +[6349] Forked 32178 +(32178) found +[6348] Forked 32179 +(32179) found +[6347] Forked 32180 +(32180) found +[6346] Forked 32181 +(32181) found +[6345] Forked 32182 +(32182) found +[6344] Forked 32183 +(32183) found +[6343] Forked 32184 +(32184) found +[6342] Forked 32185 +(32185) found +[6341] Forked 32186 +(32186) found +[6340] Forked 32187 +(32187) found +[6339] Forked 32188 +(32188) found +[6338] Forked 32189 +(32189) found +[6337] Forked 32190 +(32190) found +[6336] Forked 32191 +(32191) found +[6335] Forked 32192 +(32192) found +[6334] Forked 32193 +(32193) found +[6333] Forked 32194 +(32194) found +[6332] Forked 32195 +(32195) found +[6331] Forked 32196 +(32196) found +[6330] Forked 32197 +(32197) found +[6329] Forked 32198 +(32198) found +[6328] Forked 32199 +(32199) found +[6327] Forked 32200 +(32200) found +[6326] Forked 32201 +(32201) found +[6325] Forked 32202 +(32202) found +[6324] Forked 32203 +(32203) found +[6323] Forked 32204 +[6322] Forked 32205 +(32204) found +(32205) found +[6321] Forked 32206 +[6320] Forked 32207 +(32206) found +(32207) found +[6319] Forked 32208 +[6318] Forked 32209 +(32208) found +(32209) found +[6317] Forked 32210 +[6316] Forked 32211 +(32210) found +(32211) found +[6315] Forked 32212 +[6314] Forked 32213 +(32212) found +(32213) found +[6313] Forked 32214 +[6312] Forked 32215 +(32214) found +(32215) found +[6311] Forked 32216 +[6310] Forked 32217 +(32216) found +(32217) found +[6309] Forked 32218 +[6308] Forked 32219 +(32218) found +(32219) found +[6307] Forked 32220 +[6306] Forked 32221 +(32220) found +(32221) found +[6305] Forked 32222 +[6304] Forked 32223 +(32222) found +(32223) found +[6303] Forked 32224 +[6302] Forked 32225 +(32224) found +(32225) found +[6301] Forked 32226 +[6300] Forked 32227 +(32226) found +(32227) found +[6299] Forked 32228 +[6298] Forked 32229 +(32228) found +(32229) found +[6297] Forked 32230 +[6296] Forked 32231 +(32230) found +(32231) found +[6295] Forked 32232 +[6294] Forked 32233 +(32232) found +(32233) found +[6293] Forked 32234 +[6292] Forked 32235 +(32234) found +(32235) found +[6291] Forked 32236 +[6290] Forked 32237 +(32236) found +(32237) found +[6289] Forked 32238 +[6288] Forked 32239 +(32238) found +(32239) found +[6287] Forked 32240 +[6286] Forked 32241 +(32240) found +(32241) found +[6285] Forked 32242 +[6284] Forked 32243 +(32242) found +(32243) found +[6283] Forked 32244 +[6282] Forked 32245 +(32244) found +(32245) found +[6281] Forked 32246 +[6280] Forked 32247 +(32246) found +(32247) found +[6279] Forked 32248 +[6278] Forked 32249 +(32248) found +(32249) found +[6277] Forked 32250 +(32250) found +[6276] Forked 32251 +(32251) found +[6275] Forked 32252 +(32252) found +[6274] Forked 32253 +(32253) found +[6273] Forked 32254 +(32254) found +[6272] Forked 32255 +(32255) found +[6271] Forked 32256 +(32256) found +[6270] Forked 32257 +(32257) found +[6269] Forked 32258 +(32258) found +[6268] Forked 32259 +(32259) found +[6267] Forked 32260 +(32260) found +[6266] Forked 32261 +(32261) found +[6265] Forked 32262 +(32262) found +[6264] Forked 32263 +(32263) found +[6263] Forked 32264 +(32264) found +[6262] Forked 32265 +(32265) found +[6261] Forked 32266 +(32266) found +[6260] Forked 32267 +(32267) found +[6259] Forked 32268 +(32268) found +[6258] Forked 32269 +(32269) found +[6257] Forked 32270 +(32270) found +[6256] Forked 32271 +(32271) found +[6255] Forked 32272 +(32272) found +[6254] Forked 32273 +(32273) found +[6253] Forked 32274 +(32274) found +[6252] Forked 32275 +[6251] Forked 32276 +(32275) found +(32276) found +[6250] Forked 32277 +[6249] Forked 32278 +(32277) found +(32278) found +[6248] Forked 32279 +[6247] Forked 32280 +(32279) found +(32280) found +[6246] Forked 32281 +[6245] Forked 32282 +(32281) found +(32282) found +[6244] Forked 32283 +[6243] Forked 32284 +(32283) found +(32284) found +[6242] Forked 32285 +[6241] Forked 32286 +(32285) found +(32286) found +[6240] Forked 32287 +[6239] Forked 32288 +(32287) found +(32288) found +[6238] Forked 32289 +[6237] Forked 32290 +(32289) found +(32290) found +[6236] Forked 32291 +[6235] Forked 32292 +(32291) found +(32292) found +[6234] Forked 32293 +[6233] Forked 32294 +(32293) found +(32294) found +[6232] Forked 32295 +[6231] Forked 32296 +(32295) found +(32296) found +[6230] Forked 32297 +[6229] Forked 32298 +(32297) found +(32298) found +[6228] Forked 32299 +[6227] Forked 32300 +(32299) found +(32300) found +[6226] Forked 32301 +[6225] Forked 32302 +(32301) found +(32302) found +[6224] Forked 32303 +[6223] Forked 32304 +(32303) found +(32304) found +[6222] Forked 32305 +[6221] Forked 32306 +(32305) found +(32306) found +[6220] Forked 32307 +[6219] Forked 32308 +(32307) found +(32308) found +[6218] Forked 32309 +[6217] Forked 32310 +(32309) found +(32310) found +[6216] Forked 32311 +[6215] Forked 32312 +(32311) found +(32312) found +[6214] Forked 32313 +[6213] Forked 32314 +(32313) found +(32314) found +[6212] Forked 32315 +[6211] Forked 32316 +(32315) found +(32316) found +[6210] Forked 32317 +[6209] Forked 32318 +(32317) found +(32318) found +[6208] Forked 32319 +[6207] Forked 32320 +(32319) found +(32320) found +[6206] Forked 32321 +(32321) found +[6205] Forked 32322 +(32322) found +[6204] Forked 32323 +(32323) found +[6203] Forked 32324 +(32324) found +[6202] Forked 32325 +(32325) found +[6201] Forked 32326 +(32326) found +[6200] Forked 32327 +(32327) found +[6199] Forked 32328 +(32328) found +[6198] Forked 32329 +(32329) found +[6197] Forked 32330 +(32330) found +[6196] Forked 32331 +(32331) found +[6195] Forked 32332 +(32332) found +[6194] Forked 32333 +(32333) found +[6193] Forked 32334 +(32334) found +[6192] Forked 32335 +(32335) found +[6191] Forked 32336 +(32336) found +[6190] Forked 32337 +(32337) found +[6189] Forked 32338 +(32338) found +[6188] Forked 32339 +(32339) found +[6187] Forked 32340 +(32340) found +[6186] Forked 32341 +(32341) found +[6185] Forked 32342 +(32342) found +[6184] Forked 32343 +(32343) found +[6183] Forked 32344 +(32344) found +[6182] Forked 32345 +(32345) found +[6181] Forked 32346 +(32346) found +[6180] Forked 32347 +(32347) found +[6179] Forked 32348 +(32348) found +[6178] Forked 32349 +(32349) found +[6177] Forked 32350 +(32350) found +[6176] Forked 32351 +(32351) found +[6175] Forked 32352 +(32352) found +[6174] Forked 32353 +(32353) found +[6173] Forked 32354 +(32354) found +[6172] Forked 32355 +(32355) found +[6171] Forked 32356 +[6170] Forked 32357 +(32356) found +(32357) found +[6169] Forked 32358 +[6168] Forked 32359 +(32358) found +(32359) found +[6167] Forked 32360 +[6166] Forked 32361 +(32360) found +(32361) found +[6165] Forked 32362 +[6164] Forked 32363 +(32362) found +(32363) found +[6163] Forked 32364 +[6162] Forked 32365 +(32364) found +(32365) found +[6161] Forked 32366 +[6160] Forked 32367 +(32366) found +(32367) found +[6159] Forked 32368 +[6158] Forked 32369 +(32368) found +(32369) found +[6157] Forked 32370 +[6156] Forked 32371 +(32370) found +(32371) found +[6155] Forked 32372 +[6154] Forked 32373 +(32372) found +(32373) found +[6153] Forked 32374 +[6152] Forked 32375 +(32374) found +(32375) found +[6151] Forked 32376 +[6150] Forked 32377 +(32376) found +(32377) found +[6149] Forked 32378 +[6148] Forked 32379 +(32378) found +(32379) found +[6147] Forked 32380 +[6146] Forked 32381 +(32380) found +(32381) found +[6145] Forked 32382 +[6144] Forked 32383 +(32382) found +(32383) found +[6143] Forked 32384 +[6142] Forked 32385 +(32384) found +(32385) found +[6141] Forked 32386 +[6140] Forked 32387 +(32386) found +(32387) found +[6139] Forked 32388 +[6138] Forked 32389 +(32388) found +(32389) found +[6137] Forked 32390 +[6136] Forked 32391 +(32390) found +(32391) found +[6135] Forked 32392 +[6134] Forked 32393 +(32392) found +(32393) found +[6133] Forked 32394 +[6132] Forked 32396 +(32394) found +(32396) found +[6131] Forked 32397 +(32397) found +[6130] Forked 32398 +(32398) found +[6129] Forked 32399 +(32399) found +[6128] Forked 32400 +(32400) found +[6127] Forked 32401 +(32401) found +[6126] Forked 32402 +(32402) found +[6125] Forked 32403 +(32403) found +[6124] Forked 32404 +(32404) found +[6123] Forked 32405 +(32405) found +[6122] Forked 32406 +(32406) found +[6121] Forked 32407 +(32407) found +[6120] Forked 32408 +(32408) found +[6119] Forked 32409 +(32409) found +[6118] Forked 32410 +(32410) found +[6117] Forked 32411 +(32411) found +[6116] Forked 32412 +(32412) found +[6115] Forked 32413 +(32413) found +[6114] Forked 32414 +(32414) found +[6113] Forked 32415 +(32415) found +[6112] Forked 32416 +(32416) found +[6111] Forked 32417 +(32417) found +[6110] Forked 32418 +(32418) found +[6109] Forked 32419 +(32419) found +[6108] Forked 32420 +(32420) found +[6107] Forked 32421 +(32421) found +[6106] Forked 32422 +(32422) found +[6105] Forked 32423 +(32423) found +[6104] Forked 32424 +(32424) found +[6103] Forked 32425 +(32425) found +[6102] Forked 32426 +(32426) found +[6101] Forked 32427 +(32427) found +[6100] Forked 32428 +(32428) found +[6099] Forked 32429 +(32429) found +[6098] Forked 32430 +(32430) found +[6097] Forked 32431 +(32431) found +[6096] Forked 32432 +(32432) found +[6095] Forked 32433 +(32433) found +[6094] Forked 32434 +(32434) found +[6093] Forked 32435 +(32435) found +[6092] Forked 32436 +[6091] Forked 32437 +(32436) found +(32437) found +[6090] Forked 32438 +[6089] Forked 32439 +(32438) found +(32439) found +[6088] Forked 32440 +[6087] Forked 32441 +(32440) found +(32441) found +[6086] Forked 32442 +[6085] Forked 32443 +(32442) found +(32443) found +[6084] Forked 32444 +[6083] Forked 32445 +(32444) found +(32445) found +[6082] Forked 32446 +[6081] Forked 32447 +(32446) found +(32447) found +[6080] Forked 32448 +[6079] Forked 32449 +(32448) found +(32449) found +[6078] Forked 32450 +[6077] Forked 32452 +(32450) found +(32452) found +[6076] Forked 32453 +(32453) found +[6075] Forked 32454 +(32454) found +[6074] Forked 32455 +(32455) found +[6073] Forked 32456 +(32456) found +[6072] Forked 32457 +(32457) found +[6071] Forked 32458 +(32458) found +[6070] Forked 32459 +(32459) found +[6069] Forked 32460 +(32460) found +[6068] Forked 32461 +(32461) found +[6067] Forked 32462 +(32462) found +[6066] Forked 32463 +(32463) found +[6065] Forked 32464 +(32464) found +[6064] Forked 32465 +(32465) found +[6063] Forked 32466 +(32466) found +[6062] Forked 32467 +(32467) found +[6061] Forked 32468 +(32468) found +[6060] Forked 32469 +(32469) found +[6059] Forked 32470 +(32470) found +[6058] Forked 32471 +(32471) found +[6057] Forked 32472 +(32472) found +[6056] Forked 32473 +(32473) found +[6055] Forked 32474 +(32474) found +[6054] Forked 32475 +(32475) found +[6053] Forked 32476 +(32476) found +[6052] Forked 32477 +(32477) found +[6051] Forked 32478 +(32478) found +[6050] Forked 32479 +(32479) found +[6049] Forked 32480 +(32480) found +[6048] Forked 32481 +(32481) found +[6047] Forked 32482 +(32482) found +[6046] Forked 32483 +(32483) found +[6045] Forked 32484 +(32484) found +[6044] Forked 32485 +(32485) found +[6043] Forked 32486 +(32486) found +[6042] Forked 32487 +(32487) found +[6041] Forked 32488 +(32488) found +[6040] Forked 32489 +(32489) found +[6039] Forked 32490 +(32490) found +[6038] Forked 32491 +(32491) found +[6037] Forked 32492 +(32492) found +[6036] Forked 32493 +(32493) found +[6035] Forked 32494 +(32494) found +[6034] Forked 32495 +(32495) found +[6033] Forked 32496 +(32496) found +[6032] Forked 32497 +(32497) found +[6031] Forked 32498 +(32498) found +[6030] Forked 32499 +(32499) found +[6029] Forked 32500 +(32500) found +[6028] Forked 32501 +(32501) found +[6027] Forked 32502 +(32502) found +[6026] Forked 32503 +(32503) found +[6025] Forked 32504 +(32504) found +[6024] Forked 32505 +(32505) found +[6023] Forked 32506 +(32506) found +[6022] Forked 32507 +(32507) found +[6021] Forked 32508 +(32508) found +[6020] Forked 32509 +(32509) found +[6019] Forked 32510 +(32510) found +[6018] Forked 32511 +[6017] Forked 32512 +(32511) found +(32512) found +[6016] Forked 32513 +[6015] Forked 32514 +(32513) found +(32514) found +[6014] Forked 32515 +[6013] Forked 32516 +(32515) found +(32516) found +[6012] Forked 32517 +[6011] Forked 32518 +(32517) found +(32518) found +[6010] Forked 32519 +[6009] Forked 32520 +(32519) found +(32520) found +[6008] Forked 32521 +[6007] Forked 32522 +(32521) found +(32522) found +[6006] Forked 32523 +[6005] Forked 32524 +(32523) found +(32524) found +[6004] Forked 32525 +[6003] Forked 32526 +(32525) found +(32526) found +[6002] Forked 32527 +[6001] Forked 32528 +(32527) found +(32528) found +[6000] Forked 32529 +[5999] Forked 32530 +(32529) found +(32530) found +[5998] Forked 32531 +[5997] Forked 32532 +(32531) found +(32532) found +[5996] Forked 32533 +[5995] Forked 32534 +(32533) found +(32534) found +[5994] Forked 32535 +[5993] Forked 32536 +(32535) found +(32536) found +[5992] Forked 32537 +[5991] Forked 32538 +(32537) found +(32538) found +[5990] Forked 32539 +[5989] Forked 32540 +(32539) found +(32540) found +[5988] Forked 32541 +[5987] Forked 32542 +(32541) found +(32542) found +[5986] Forked 32543 +[5985] Forked 32544 +(32543) found +(32544) found +[5984] Forked 32545 +[5983] Forked 32546 +(32545) found +(32546) found +[5982] Forked 32547 +[5981] Forked 32548 +(32547) found +(32548) found +[5980] Forked 32549 +[5979] Forked 32550 +(32549) found +(32550) found +[5978] Forked 32551 +[5977] Forked 32552 +(32551) found +(32552) found +[5976] Forked 32553 +[5975] Forked 32554 +(32553) found +(32554) found +[5974] Forked 32555 +[5973] Forked 32556 +(32555) found +(32556) found +[5972] Forked 32557 +[5971] Forked 32558 +(32557) found +(32558) found +[5970] Forked 32559 +[5969] Forked 32560 +(32559) found +(32560) found +[5968] Forked 32561 +[5967] Forked 32562 +(32561) found +(32562) found +[5966] Forked 32563 +[5965] Forked 32564 +(32563) found +(32564) found +[5964] Forked 32565 +[5963] Forked 32566 +(32565) found +(32566) found +[5962] Forked 32567 +[5961] Forked 32568 +(32567) found +(32568) found +[5960] Forked 32569 +[5959] Forked 32570 +(32569) found +(32570) found +[5958] Forked 32571 +[5957] Forked 32572 +(32571) found +(32572) found +[5956] Forked 32573 +[5955] Forked 32574 +(32573) found +(32574) found +[5954] Forked 32575 +[5953] Forked 32576 +(32575) found +(32576) found +[5952] Forked 32577 +[5951] Forked 32578 +(32577) found +(32578) found +[5950] Forked 32579 +[5949] Forked 32580 +(32579) found +(32580) found +[5948] Forked 32581 +[5947] Forked 32582 +(32581) found +(32582) found +[5946] Forked 32583 +[5945] Forked 32584 +(32583) found +(32584) found +[5944] Forked 32585 +[5943] Forked 32586 +(32585) found +(32586) found +[5942] Forked 32587 +[5941] Forked 32588 +(32587) found +(32588) found +[5940] Forked 32589 +[5939] Forked 32590 +(32589) found +(32590) found +[5938] Forked 32591 +[5937] Forked 32592 +(32591) found +(32592) found +[5936] Forked 32593 +[5935] Forked 32594 +(32593) found +(32594) found +[5934] Forked 32595 +[5933] Forked 32596 +(32595) found +(32596) found +[5932] Forked 32597 +[5931] Forked 32599 +(32597) found +(32599) found +[5930] Forked 32600 +(32600) found +[5929] Forked 32601 +(32601) found +[5928] Forked 32602 +(32602) found +[5927] Forked 32603 +(32603) found +[5926] Forked 32604 +(32604) found +[5925] Forked 32605 +(32605) found +[5924] Forked 32606 +(32606) found +[5923] Forked 32607 +(32607) found +[5922] Forked 32608 +(32608) found +[5921] Forked 32609 +(32609) found +[5920] Forked 32610 +(32610) found +[5919] Forked 32611 +(32611) found +[5918] Forked 32612 +(32612) found +[5917] Forked 32613 +(32613) found +[5916] Forked 32614 +(32614) found +[5915] Forked 32615 +(32615) found +[5914] Forked 32616 +(32616) found +[5913] Forked 32617 +(32617) found +[5912] Forked 32618 +(32618) found +[5911] Forked 32619 +(32619) found +[5910] Forked 32620 +(32620) found +[5909] Forked 32621 +(32621) found +[5908] Forked 32622 +(32622) found +[5907] Forked 32623 +(32623) found +[5906] Forked 32624 +(32624) found +[5905] Forked 32625 +(32625) found +[5904] Forked 32626 +(32626) found +[5903] Forked 32627 +(32627) found +[5902] Forked 32628 +(32628) found +[5901] Forked 32629 +(32629) found +[5900] Forked 32630 +(32630) found +[5899] Forked 32631 +(32631) found +[5898] Forked 32632 +(32632) found +[5897] Forked 32633 +(32633) found +[5896] Forked 32634 +(32634) found +[5895] Forked 32635 +(32635) found +[5894] Forked 32636 +(32636) found +[5893] Forked 32637 +(32637) found +[5892] Forked 32638 +(32638) found +[5891] Forked 32639 +[5890] Forked 32640 +(32639) found +(32640) found +[5889] Forked 32641 +[5888] Forked 32642 +(32641) found +(32642) found +[5887] Forked 32643 +[5886] Forked 32644 +(32643) found +(32644) found +[5885] Forked 32645 +[5884] Forked 32646 +(32645) found +(32646) found +[5883] Forked 32647 +[5882] Forked 32648 +(32647) found +(32648) found +[5881] Forked 32649 +[5880] Forked 32650 +(32649) found +(32650) found +[5879] Forked 32651 +[5878] Forked 32652 +(32651) found +(32652) found +[5877] Forked 32653 +[5876] Forked 32654 +(32653) found +(32654) found +[5875] Forked 32655 +[5874] Forked 32656 +(32655) found +(32656) found +[5873] Forked 32657 +[5872] Forked 32658 +(32657) found +(32658) found +[5871] Forked 32659 +[5870] Forked 32660 +(32659) found +(32660) found +[5869] Forked 32661 +[5868] Forked 32662 +(32661) found +(32662) found +[5867] Forked 32663 +[5866] Forked 32664 +(32663) found +(32664) found +[5865] Forked 32665 +[5864] Forked 32666 +(32665) found +(32666) found +[5863] Forked 32667 +[5862] Forked 32668 +(32667) found +(32668) found +[5861] Forked 32669 +[5860] Forked 32670 +(32669) found +(32670) found +[5859] Forked 32671 +[5858] Forked 32672 +(32671) found +(32672) found +[5857] Forked 32673 +[5856] Forked 32674 +(32673) found +(32674) found +[5855] Forked 32675 +[5854] Forked 32676 +(32675) found +(32676) found +[5853] Forked 32677 +[5852] Forked 32678 +(32677) found +(32678) found +[5851] Forked 32679 +[5850] Forked 32680 +(32679) found +(32680) found +[5849] Forked 32681 +[5848] Forked 32682 +(32681) found +(32682) found +[5847] Forked 32683 +(32683) found +[5846] Forked 32684 +(32684) found +[5845] Forked 32685 +(32685) found +[5844] Forked 32686 +(32686) found +[5843] Forked 32687 +(32687) found +[5842] Forked 32688 +(32688) found +[5841] Forked 32689 +(32689) found +[5840] Forked 32690 +(32690) found +[5839] Forked 32691 +(32691) found +[5838] Forked 32692 +(32692) found +[5837] Forked 32693 +(32693) found +[5836] Forked 32694 +(32694) found +[5835] Forked 32695 +(32695) found +[5834] Forked 32696 +(32696) found +[5833] Forked 32697 +(32697) found +[5832] Forked 32698 +(32698) found +[5831] Forked 32699 +(32699) found +[5830] Forked 32700 +(32700) found +[5829] Forked 32701 +(32701) found +[5828] Forked 32702 +(32702) found +[5827] Forked 32703 +(32703) found +[5826] Forked 32704 +(32704) found +[5825] Forked 32705 +(32705) found +[5824] Forked 32706 +(32706) found +[5823] Forked 32707 +(32707) found +[5822] Forked 32708 +(32708) found +[5821] Forked 32709 +(32709) found +[5820] Forked 32710 +(32710) found +[5819] Forked 32711 +(32711) found +[5818] Forked 32712 +(32712) found +[5817] Forked 32713 +(32713) found +[5816] Forked 32714 +(32714) found +[5815] Forked 32715 +(32715) found +[5814] Forked 32716 +(32716) found +[5813] Forked 32717 +(32717) found +[5812] Forked 32718 +(32718) found +[5811] Forked 32719 +[5810] Forked 32720 +(32719) found +(32720) found +[5809] Forked 32721 +[5808] Forked 32722 +(32721) found +(32722) found +[5807] Forked 32723 +[5806] Forked 32724 +(32723) found +(32724) found +[5805] Forked 32725 +[5804] Forked 32726 +(32725) found +(32726) found +[5803] Forked 32727 +[5802] Forked 32728 +(32727) found +(32728) found +[5801] Forked 32729 +[5800] Forked 32730 +(32729) found +(32730) found +[5799] Forked 32731 +[5798] Forked 32732 +(32731) found +(32732) found +[5797] Forked 32733 +[5796] Forked 32734 +(32733) found +(32734) found +[5795] Forked 32735 +[5794] Forked 32736 +(32735) found +(32736) found +[5793] Forked 32737 +[5792] Forked 32738 +(32737) found +(32738) found +[5791] Forked 32739 +[5790] Forked 32740 +(32739) found +(32740) found +[5789] Forked 32741 +[5788] Forked 32742 +(32741) found +(32742) found +[5787] Forked 32743 +[5786] Forked 32744 +(32743) found +(32744) found +[5785] Forked 32745 +[5784] Forked 32746 +(32745) found +(32746) found +[5783] Forked 32747 +[5782] Forked 32748 +(32747) found +(32748) found +[5781] Forked 32749 +[5780] Forked 32750 +(32749) found +(32750) found +[5779] Forked 32751 +[5778] Forked 32752 +(32751) found +(32752) found +[5777] Forked 32753 +[5776] Forked 32754 +(32753) found +(32754) found +[5775] Forked 32755 +[5774] Forked 32756 +(32755) found +(32756) found +[5773] Forked 32757 +[5772] Forked 32758 +(32757) found +(32758) found +[5771] Forked 32759 +[5770] Forked 32760 +(32759) found +(32760) found +[5769] Forked 32761 +(32761) found +[5768] Forked 32762 +(32762) found +[5767] Forked 32763 +(32763) found +[5766] Forked 32764 +(32764) found +[5765] Forked 32765 +(32765) found +[5764] Forked 32766 +(32766) found +[5763] Forked 32767 +(32767) found +[5762] Forked 300 +(300) found +[5761] Forked 301 +(301) found +[5760] Forked 302 +(302) found +[5759] Forked 303 +(303) found +[5758] Forked 304 +(304) found +[5757] Forked 305 +(305) found +[5756] Forked 306 +(306) found +[5755] Forked 307 +(307) found +[5754] Forked 308 +(308) found +[5753] Forked 309 +(309) found +[5752] Forked 310 +(310) found +[5751] Forked 311 +(311) found +[5750] Forked 312 +(312) found +[5749] Forked 313 +(313) found +[5748] Forked 314 +(314) found +[5747] Forked 315 +(315) found +[5746] Forked 316 +(316) found +[5745] Forked 317 +(317) found +[5744] Forked 318 +(318) found +[5743] Forked 319 +(319) found +[5742] Forked 320 +(320) found +[5741] Forked 321 +(321) found +[5740] Forked 322 +(322) found +[5739] Forked 323 +(323) found +[5738] Forked 324 +(324) found +[5737] Forked 325 +(325) found +[5736] Forked 328 +(328) found +[5735] Forked 330 +(330) found +[5734] Forked 331 +[5733] Forked 332 +(331) found +(332) found +[5732] Forked 333 +[5731] Forked 334 +(333) found +(334) found +[5730] Forked 335 +[5729] Forked 336 +(335) found +(336) found +[5728] Forked 337 +[5727] Forked 338 +(337) found +(338) found +[5726] Forked 339 +[5725] Forked 340 +(339) found +(340) found +[5724] Forked 341 +[5723] Forked 342 +(341) found +(342) found +[5722] Forked 343 +[5721] Forked 344 +(343) found +(344) found +[5720] Forked 345 +[5719] Forked 346 +(345) found +(346) found +[5718] Forked 347 +[5717] Forked 348 +(347) found +(348) found +[5716] Forked 349 +[5715] Forked 350 +(349) found +(350) found +[5714] Forked 351 +[5713] Forked 352 +(351) found +(352) found +[5712] Forked 353 +[5711] Forked 354 +(353) found +(354) found +[5710] Forked 355 +[5709] Forked 356 +(355) found +(356) found +[5708] Forked 357 +[5707] Forked 358 +(357) found +(358) found +[5706] Forked 359 +[5705] Forked 360 +(359) found +(360) found +[5704] Forked 361 +[5703] Forked 362 +(361) found +(362) found +[5702] Forked 363 +[5701] Forked 364 +(363) found +(364) found +[5700] Forked 365 +[5699] Forked 366 +(365) found +(366) found +[5698] Forked 367 +[5697] Forked 368 +(367) found +(368) found +[5696] Forked 369 +[5695] Forked 370 +(369) found +(370) found +[5694] Forked 371 +[5693] Forked 372 +(371) found +(372) found +[5692] Forked 373 +[5691] Forked 374 +(373) found +(374) found +[5690] Forked 375 +(375) found +[5689] Forked 376 +(376) found +[5688] Forked 377 +(377) found +[5687] Forked 378 +(378) found +[5686] Forked 379 +(379) found +[5685] Forked 380 +(380) found +[5684] Forked 381 +(381) found +[5683] Forked 383 +(383) found +[5682] Forked 384 +(384) found +[5681] Forked 385 +(385) found +[5680] Forked 386 +(386) found +[5679] Forked 387 +(387) found +[5678] Forked 388 +(388) found +[5677] Forked 389 +(389) found +[5676] Forked 390 +(390) found +[5675] Forked 391 +(391) found +[5674] Forked 392 +(392) found +[5673] Forked 393 +(393) found +[5672] Forked 394 +(394) found +[5671] Forked 395 +(395) found +[5670] Forked 396 +(396) found +[5669] Forked 397 +(397) found +[5668] Forked 398 +(398) found +[5667] Forked 399 +(399) found +[5666] Forked 401 +(401) found +[5665] Forked 402 +(402) found +[5664] Forked 403 +(403) found +[5663] Forked 404 +(404) found +[5662] Forked 405 +(405) found +[5661] Forked 407 +(407) found +[5660] Forked 408 +(408) found +[5659] Forked 409 +(409) found +[5658] Forked 410 +(410) found +[5657] Forked 411 +(411) found +[5656] Forked 412 +(412) found +[5655] Forked 413 +[5654] Forked 414 +(413) found +(414) found +[5653] Forked 415 +[5652] Forked 416 +(415) found +(416) found +[5651] Forked 417 +[5650] Forked 418 +(417) found +(418) found +[5649] Forked 419 +[5648] Forked 420 +(419) found +(420) found +[5647] Forked 421 +[5646] Forked 422 +(421) found +(422) found +[5645] Forked 423 +[5644] Forked 424 +(423) found +(424) found +[5643] Forked 425 +[5642] Forked 426 +(425) found +(426) found +[5641] Forked 427 +[5640] Forked 429 +(427) found +(429) found +[5639] Forked 430 +[5638] Forked 431 +(430) found +(431) found +[5637] Forked 432 +[5636] Forked 433 +(432) found +(433) found +[5635] Forked 434 +[5634] Forked 435 +(434) found +(435) found +[5633] Forked 436 +[5632] Forked 437 +(436) found +(437) found +[5631] Forked 438 +[5630] Forked 439 +(438) found +(439) found +[5629] Forked 440 +[5628] Forked 441 +(440) found +(441) found +[5627] Forked 442 +[5626] Forked 443 +(442) found +(443) found +[5625] Forked 444 +[5624] Forked 445 +(444) found +(445) found +[5623] Forked 446 +[5622] Forked 447 +(446) found +(447) found +[5621] Forked 448 +[5620] Forked 449 +(448) found +(449) found +[5619] Forked 450 +[5618] Forked 451 +(450) found +(451) found +[5617] Forked 452 +[5616] Forked 453 +(452) found +(453) found +[5615] Forked 454 +[5614] Forked 455 +(454) found +(455) found +[5613] Forked 456 +[5612] Forked 457 +(456) found +(457) found +[5611] Forked 458 +[5610] Forked 459 +(458) found +(459) found +[5609] Forked 460 +[5608] Forked 461 +(460) found +(461) found +[5607] Forked 462 +[5606] Forked 463 +(462) found +(463) found +[5605] Forked 464 +[5604] Forked 465 +(464) found +(465) found +[5603] Forked 466 +[5602] Forked 467 +(466) found +(467) found +[5601] Forked 468 +[5600] Forked 469 +(468) found +(469) found +[5599] Forked 470 +[5598] Forked 471 +(470) found +(471) found +[5597] Forked 472 +[5596] Forked 473 +(472) found +(473) found +[5595] Forked 474 +[5594] Forked 475 +(474) found +(475) found +[5593] Forked 476 +[5592] Forked 477 +(476) found +(477) found +[5591] Forked 478 +[5590] Forked 479 +(478) found +(479) found +[5589] Forked 480 +[5588] Forked 481 +(480) found +(481) found +[5587] Forked 482 +[5586] Forked 483 +(482) found +(483) found +[5585] Forked 484 +[5584] Forked 485 +(484) found +(485) found +[5583] Forked 486 +[5582] Forked 487 +(486) found +(487) found +[5581] Forked 488 +[5580] Forked 489 +(488) found +(489) found +[5579] Forked 490 +[5578] Forked 491 +(490) found +(491) found +[5577] Forked 492 +[5576] Forked 493 +(492) found +(493) found +[5575] Forked 494 +[5574] Forked 495 +(494) found +(495) found +[5573] Forked 496 +[5572] Forked 497 +(496) found +(497) found +[5571] Forked 498 +[5570] Forked 499 +(498) found +(499) found +[5569] Forked 500 +[5568] Forked 501 +(500) found +(501) found +[5567] Forked 502 +[5566] Forked 503 +(502) found +(503) found +[5565] Forked 504 +[5564] Forked 505 +(504) found +(505) found +[5563] Forked 506 +(506) found +[5562] Forked 507 +(507) found +[5561] Forked 508 +(508) found +[5560] Forked 509 +(509) found +[5559] Forked 510 +(510) found +[5558] Forked 511 +(511) found +[5557] Forked 512 +(512) found +[5556] Forked 513 +(513) found +[5555] Forked 514 +(514) found +[5554] Forked 515 +(515) found +[5553] Forked 516 +(516) found +[5552] Forked 517 +(517) found +[5551] Forked 518 +(518) found +[5550] Forked 519 +(519) found +[5549] Forked 520 +(520) found +[5548] Forked 521 +(521) found +[5547] Forked 522 +(522) found +[5546] Forked 523 +(523) found +[5545] Forked 524 +(524) found +[5544] Forked 525 +(525) found +[5543] Forked 526 +(526) found +[5542] Forked 527 +(527) found +[5541] Forked 528 +(528) found +[5540] Forked 529 +(529) found +[5539] Forked 530 +(530) found +[5538] Forked 531 +(531) found +[5537] Forked 532 +(532) found +[5536] Forked 533 +(533) found +[5535] Forked 534 +(534) found +[5534] Forked 535 +(535) found +[5533] Forked 536 +(536) found +[5532] Forked 537 +(537) found +[5531] Forked 538 +(538) found +[5530] Forked 539 +(539) found +[5529] Forked 540 +[5528] Forked 541 +(540) found +(541) found +[5527] Forked 542 +[5526] Forked 543 +(542) found +(543) found +[5525] Forked 544 +[5524] Forked 545 +(544) found +(545) found +[5523] Forked 546 +[5522] Forked 547 +(546) found +(547) found +[5521] Forked 548 +[5520] Forked 549 +(548) found +(549) found +[5519] Forked 550 +[5518] Forked 551 +(550) found +(551) found +[5517] Forked 552 +[5516] Forked 553 +(552) found +(553) found +[5515] Forked 554 +[5514] Forked 555 +(554) found +(555) found +[5513] Forked 556 +[5512] Forked 557 +(556) found +(557) found +[5511] Forked 558 +[5510] Forked 559 +(558) found +(559) found +[5509] Forked 560 +[5508] Forked 561 +(560) found +(561) found +[5507] Forked 562 +[5506] Forked 563 +(562) found +(563) found +[5505] Forked 564 +[5504] Forked 565 +(564) found +(565) found +[5503] Forked 566 +[5502] Forked 567 +(566) found +(567) found +[5501] Forked 568 +[5500] Forked 569 +(568) found +(569) found +[5499] Forked 570 +[5498] Forked 571 +(570) found +(571) found +[5497] Forked 572 +[5496] Forked 573 +(572) found +(573) found +[5495] Forked 574 +[5494] Forked 575 +(574) found +(575) found +[5493] Forked 576 +[5492] Forked 577 +(576) found +(577) found +[5491] Forked 578 +[5490] Forked 579 +(578) found +(579) found +[5489] Forked 580 +[5488] Forked 581 +(580) found +(581) found +[5487] Forked 582 +[5486] Forked 583 +(582) found +(583) found +[5485] Forked 584 +[5484] Forked 585 +(584) found +(585) found +[5483] Forked 586 +[5482] Forked 587 +(586) found +(587) found +[5481] Forked 588 +[5480] Forked 589 +(588) found +(589) found +[5479] Forked 590 +[5478] Forked 591 +(590) found +(591) found +[5477] Forked 592 +[5476] Forked 593 +(592) found +(593) found +[5475] Forked 594 +[5474] Forked 595 +(594) found +(595) found +[5473] Forked 596 +[5472] Forked 597 +(596) found +(597) found +[5471] Forked 598 +[5470] Forked 599 +(598) found +(599) found +[5469] Forked 600 +[5468] Forked 601 +(600) found +(601) found +[5467] Forked 602 +[5466] Forked 603 +(602) found +(603) found +[5465] Forked 604 +[5464] Forked 606 +(604) found +(606) found +[5463] Forked 607 +[5462] Forked 609 +(607) found +(609) found +[5461] Forked 610 +[5460] Forked 612 +(610) found +(612) found +[5459] Forked 613 +[5458] Forked 615 +(613) found +(615) found +[5457] Forked 616 +[5456] Forked 617 +(616) found +(617) found +[5455] Forked 618 +[5454] Forked 619 +(618) found +(619) found +[5453] Forked 620 +[5452] Forked 621 +(620) found +(621) found +[5451] Forked 622 +[5450] Forked 623 +(622) found +(623) found +[5449] Forked 624 +[5448] Forked 625 +(624) found +(625) found +[5447] Forked 626 +[5446] Forked 627 +(626) found +(627) found +[5445] Forked 628 +[5444] Forked 629 +(628) found +(629) found +[5443] Forked 630 +[5442] Forked 631 +(630) found +(631) found +[5441] Forked 632 +[5440] Forked 633 +(632) found +(633) found +[5439] Forked 634 +[5438] Forked 635 +(634) found +(635) found +[5437] Forked 636 +(636) found +[5436] Forked 637 +(637) found +[5435] Forked 638 +(638) found +[5434] Forked 639 +(639) found +[5433] Forked 640 +(640) found +[5432] Forked 641 +(641) found +[5431] Forked 642 +(642) found +[5430] Forked 643 +(643) found +[5429] Forked 644 +(644) found +[5428] Forked 645 +(645) found +[5427] Forked 646 +(646) found +[5426] Forked 647 +(647) found +[5425] Forked 648 +(648) found +[5424] Forked 649 +(649) found +[5423] Forked 650 +(650) found +[5422] Forked 651 +(651) found +[5421] Forked 652 +(652) found +[5420] Forked 653 +(653) found +[5419] Forked 654 +(654) found +[5418] Forked 655 +(655) found +[5417] Forked 656 +(656) found +[5416] Forked 657 +(657) found +[5415] Forked 658 +(658) found +[5414] Forked 659 +(659) found +[5413] Forked 660 +(660) found +[5412] Forked 661 +(661) found +[5411] Forked 662 +(662) found +[5410] Forked 663 +(663) found +[5409] Forked 664 +(664) found +[5408] Forked 665 +(665) found +[5407] Forked 666 +(666) found +[5406] Forked 667 +(667) found +[5405] Forked 668 +(668) found +[5404] Forked 669 +(669) found +[5403] Forked 670 +(670) found +[5402] Forked 671 +(671) found +[5401] Forked 672 +[5400] Forked 673 +(672) found +(673) found +[5399] Forked 674 +[5398] Forked 675 +(674) found +(675) found +[5397] Forked 677 +[5396] Forked 678 +(677) found +(678) found +[5395] Forked 679 +[5394] Forked 680 +(679) found +(680) found +[5393] Forked 681 +[5392] Forked 682 +(681) found +(682) found +[5391] Forked 683 +[5390] Forked 684 +(683) found +(684) found +[5389] Forked 685 +[5388] Forked 686 +(685) found +(686) found +[5387] Forked 687 +[5386] Forked 688 +(687) found +(688) found +[5385] Forked 689 +[5384] Forked 690 +(689) found +(690) found +[5383] Forked 691 +[5382] Forked 692 +(691) found +(692) found +[5381] Forked 693 +[5380] Forked 694 +(693) found +(694) found +[5379] Forked 695 +[5378] Forked 696 +(695) found +(696) found +[5377] Forked 697 +[5376] Forked 698 +(697) found +(698) found +[5375] Forked 699 +[5374] Forked 700 +(699) found +(700) found +[5373] Forked 701 +[5372] Forked 702 +(701) found +(702) found +[5371] Forked 703 +[5370] Forked 704 +(703) found +(704) found +[5369] Forked 705 +[5368] Forked 706 +(705) found +(706) found +[5367] Forked 707 +[5366] Forked 708 +(707) found +(708) found +[5365] Forked 709 +[5364] Forked 710 +(709) found +(710) found +[5363] Forked 711 +[5362] Forked 712 +(711) found +(712) found +[5361] Forked 713 +(713) found +[5360] Forked 714 +[5359] Forked 715 +(714) found +(715) found +[5358] Forked 716 +[5357] Forked 717 +(716) found +(717) found +[5356] Forked 718 +[5355] Forked 719 +(718) found +(719) found +[5354] Forked 720 +[5353] Forked 721 +(720) found +(721) found +[5352] Forked 722 +[5351] Forked 723 +(722) found +(723) found +[5350] Forked 724 +[5349] Forked 725 +(724) found +(725) found +[5348] Forked 726 +[5347] Forked 727 +(726) found +(727) found +[5346] Forked 728 +[5345] Forked 729 +(728) found +(729) found +[5344] Forked 730 +[5343] Forked 731 +(730) found +(731) found +[5342] Forked 732 +[5341] Forked 734 +(732) found +(734) found +[5340] Forked 735 +[5339] Forked 737 +(735) found +(737) found +[5338] Forked 740 +[5337] Forked 742 +(740) found +(742) found +[5336] Forked 744 +[5335] Forked 745 +(744) found +(745) found +[5334] Forked 746 +[5333] Forked 747 +(746) found +(747) found +[5332] Forked 748 +[5331] Forked 749 +(748) found +(749) found +[5330] Forked 750 +[5329] Forked 751 +(750) found +(751) found +[5328] Forked 752 +[5327] Forked 753 +(752) found +(753) found +[5326] Forked 754 +[5325] Forked 755 +(754) found +(755) found +[5324] Forked 756 +[5323] Forked 757 +(756) found +(757) found +[5322] Forked 758 +[5321] Forked 759 +(758) found +(759) found +[5320] Forked 760 +[5319] Forked 761 +(760) found +(761) found +[5318] Forked 762 +[5317] Forked 763 +(762) found +(763) found +[5316] Forked 764 +[5315] Forked 765 +(764) found +(765) found +[5314] Forked 766 +[5313] Forked 767 +(766) found +(767) found +[5312] Forked 768 +[5311] Forked 769 +(768) found +(769) found +[5310] Forked 770 +[5309] Forked 771 +(770) found +(771) found +[5308] Forked 772 +(772) found +[5307] Forked 773 +(773) found +[5306] Forked 774 +(774) found +[5305] Forked 775 +(775) found +[5304] Forked 776 +(776) found +[5303] Forked 777 +(777) found +[5302] Forked 778 +(778) found +[5301] Forked 780 +(780) found +[5300] Forked 781 +(781) found +[5299] Forked 782 +(782) found +[5298] Forked 783 +(783) found +[5297] Forked 784 +(784) found +[5296] Forked 785 +(785) found +[5295] Forked 786 +(786) found +[5294] Forked 787 +(787) found +[5293] Forked 788 +(788) found +[5292] Forked 789 +(789) found +[5291] Forked 790 +(790) found +[5290] Forked 791 +(791) found +[5289] Forked 792 +(792) found +[5288] Forked 793 +(793) found +[5287] Forked 794 +(794) found +[5286] Forked 795 +(795) found +[5285] Forked 796 +(796) found +[5284] Forked 797 +(797) found +[5283] Forked 798 +(798) found +[5282] Forked 799 +(799) found +[5281] Forked 800 +(800) found +[5280] Forked 801 +(801) found +[5279] Forked 802 +(802) found +[5278] Forked 803 +(803) found +[5277] Forked 804 +(804) found +[5276] Forked 805 +(805) found +[5275] Forked 806 +(806) found +[5274] Forked 807 +[5273] Forked 808 +(807) found +(808) found +[5272] Forked 809 +(809) found +[5271] Forked 810 +(810) found +[5270] Forked 811 +(811) found +[5269] Forked 812 +(812) found +[5268] Forked 813 +(813) found +[5267] Forked 814 +(814) found +[5266] Forked 815 +(815) found +[5265] Forked 816 +(816) found +[5264] Forked 817 +(817) found +[5263] Forked 818 +(818) found +[5262] Forked 819 +(819) found +[5261] Forked 820 +(820) found +[5260] Forked 821 +(821) found +[5259] Forked 822 +(822) found +[5258] Forked 823 +(823) found +[5257] Forked 824 +(824) found +[5256] Forked 825 +(825) found +[5255] Forked 826 +(826) found +[5254] Forked 827 +(827) found +[5253] Forked 828 +(828) found +[5252] Forked 829 +(829) found +[5251] Forked 830 +(830) found +[5250] Forked 831 +(831) found +[5249] Forked 832 +(832) found +[5248] Forked 833 +(833) found +[5247] Forked 834 +(834) found +[5246] Forked 835 +(835) found +[5245] Forked 836 +(836) found +[5244] Forked 837 +(837) found +[5243] Forked 838 +(838) found +[5242] Forked 839 +[5241] Forked 840 +(839) found +(840) found +[5240] Forked 841 +[5239] Forked 842 +(841) found +(842) found +[5238] Forked 843 +[5237] Forked 844 +(843) found +(844) found +[5236] Forked 845 +[5235] Forked 847 +(845) found +(847) found +[5234] Forked 848 +[5233] Forked 849 +(848) found +(849) found +[5232] Forked 850 +[5231] Forked 851 +(850) found +(851) found +[5230] Forked 852 +[5229] Forked 853 +(852) found +(853) found +[5228] Forked 854 +[5227] Forked 855 +(854) found +(855) found +[5226] Forked 856 +[5225] Forked 857 +(856) found +(857) found +[5224] Forked 858 +[5223] Forked 859 +(858) found +(859) found +[5222] Forked 860 +[5221] Forked 861 +(860) found +(861) found +[5220] Forked 862 +[5219] Forked 863 +(862) found +(863) found +[5218] Forked 864 +[5217] Forked 865 +(864) found +(865) found +[5216] Forked 866 +[5215] Forked 867 +(866) found +(867) found +[5214] Forked 868 +[5213] Forked 869 +(868) found +(869) found +[5212] Forked 870 +[5211] Forked 871 +(870) found +(871) found +[5210] Forked 872 +[5209] Forked 873 +(872) found +(873) found +[5208] Forked 874 +[5207] Forked 875 +(874) found +(875) found +[5206] Forked 876 +[5205] Forked 877 +(876) found +(877) found +[5204] Forked 878 +[5203] Forked 879 +(878) found +(879) found +[5202] Forked 880 +[5201] Forked 881 +(880) found +(881) found +[5200] Forked 882 +[5199] Forked 883 +(882) found +(883) found +[5198] Forked 884 +[5197] Forked 885 +(885) found +(884) found +[5196] Forked 886 +(886) found +[5195] Forked 887 +(887) found +[5194] Forked 888 +(888) found +[5193] Forked 889 +(889) found +[5192] Forked 890 +(890) found +[5191] Forked 891 +(891) found +[5190] Forked 892 +(892) found +[5189] Forked 893 +(893) found +[5188] Forked 894 +(894) found +[5187] Forked 895 +(895) found +[5186] Forked 896 +(896) found +[5185] Forked 897 +(897) found +[5184] Forked 898 +(898) found +[5183] Forked 899 +(899) found +[5182] Forked 900 +(900) found +[5181] Forked 901 +(901) found +[5180] Forked 902 +(902) found +[5179] Forked 903 +(903) found +[5178] Forked 904 +(904) found +[5177] Forked 905 +(905) found +[5176] Forked 906 +(906) found +[5175] Forked 907 +(907) found +[5174] Forked 908 +(908) found +[5173] Forked 909 +(909) found +[5172] Forked 910 +(910) found +[5171] Forked 911 +(911) found +[5170] Forked 912 +(912) found +[5169] Forked 913 +(913) found +[5168] Forked 914 +(914) found +[5167] Forked 915 +(915) found +[5166] Forked 916 +(916) found +[5165] Forked 917 +(917) found +[5164] Forked 918 +(918) found +[5163] Forked 919 +(919) found +[5162] Forked 920 +[5161] Forked 921 +(920) found +(921) found +[5160] Forked 922 +[5159] Forked 923 +(922) found +(923) found +[5158] Forked 924 +[5157] Forked 925 +(924) found +(925) found +[5156] Forked 926 +[5155] Forked 927 +(926) found +(927) found +[5154] Forked 928 +[5153] Forked 929 +(928) found +(929) found +[5152] Forked 930 +[5151] Forked 931 +(930) found +(931) found +[5150] Forked 932 +[5149] Forked 933 +(932) found +(933) found +[5148] Forked 934 +[5147] Forked 935 +(934) found +(935) found +[5146] Forked 936 +[5145] Forked 937 +(936) found +(937) found +[5144] Forked 938 +[5143] Forked 939 +(938) found +(939) found +[5142] Forked 940 +[5141] Forked 941 +(940) found +(941) found +[5140] Forked 942 +[5139] Forked 943 +(942) found +(943) found +[5138] Forked 944 +[5137] Forked 945 +(944) found +(945) found +[5136] Forked 946 +[5135] Forked 947 +(946) found +(947) found +[5134] Forked 948 +[5133] Forked 949 +(948) found +(949) found +[5132] Forked 950 +[5131] Forked 951 +(950) found +(951) found +[5130] Forked 952 +[5129] Forked 953 +(952) found +(953) found +[5128] Forked 954 +[5127] Forked 955 +(954) found +(955) found +[5126] Forked 956 +[5125] Forked 957 +(956) found +(957) found +[5124] Forked 958 +[5123] Forked 959 +(958) found +(959) found +[5122] Forked 960 +[5121] Forked 961 +(960) found +(961) found +[5120] Forked 962 +[5119] Forked 963 +(962) found +(963) found +[5118] Forked 964 +[5117] Forked 965 +(965) found +(964) found +[5116] Forked 966 +(966) found +[5115] Forked 967 +(967) found +[5114] Forked 968 +(968) found +[5113] Forked 969 +(969) found +[5112] Forked 970 +(970) found +[5111] Forked 971 +(971) found +[5110] Forked 972 +(972) found +[5109] Forked 973 +(973) found +[5108] Forked 974 +(974) found +[5107] Forked 975 +(975) found +[5106] Forked 976 +(976) found +[5105] Forked 977 +(977) found +[5104] Forked 978 +(978) found +[5103] Forked 979 +(979) found +[5102] Forked 980 +(980) found +[5101] Forked 981 +(981) found +[5100] Forked 982 +(982) found +[5099] Forked 983 +(983) found +[5098] Forked 984 +(984) found +[5097] Forked 985 +(985) found +[5096] Forked 986 +(986) found +[5095] Forked 987 +(987) found +[5094] Forked 988 +(988) found +[5093] Forked 989 +(989) found +[5092] Forked 990 +(990) found +[5091] Forked 991 +(991) found +[5090] Forked 992 +(992) found +[5089] Forked 993 +(993) found +[5088] Forked 994 +(994) found +[5087] Forked 995 +(995) found +[5086] Forked 996 +(996) found +[5085] Forked 997 +(997) found +[5084] Forked 998 +(998) found +[5083] Forked 999 +(999) found +[5082] Forked 1000 +(1000) found +[5081] Forked 1001 +(1001) found +[5080] Forked 1002 +(1002) found +[5079] Forked 1003 +(1003) found +[5078] Forked 1004 +(1004) found +[5077] Forked 1005 +(1005) found +[5076] Forked 1006 +(1006) found +[5075] Forked 1007 +(1007) found +[5074] Forked 1008 +(1008) found +[5073] Forked 1009 +(1009) found +[5072] Forked 1010 +(1010) found +[5071] Forked 1011 +(1011) found +[5070] Forked 1012 +(1012) found +[5069] Forked 1013 +(1013) found +[5068] Forked 1014 +(1014) found +[5067] Forked 1015 +(1015) found +[5066] Forked 1016 +(1016) found +[5065] Forked 1017 +(1017) found +[5064] Forked 1018 +(1018) found +[5063] Forked 1019 +(1019) found +[5062] Forked 1020 +(1020) found +[5061] Forked 1021 +(1021) found +[5060] Forked 1022 +(1022) found +[5059] Forked 1023 +(1023) found +[5058] Forked 1024 +(1024) found +[5057] Forked 1025 +(1025) found +[5056] Forked 1026 +(1026) found +[5055] Forked 1027 +(1027) found +[5054] Forked 1028 +(1028) found +[5053] Forked 1029 +(1029) found +[5052] Forked 1030 +(1030) found +[5051] Forked 1031 +(1031) found +[5050] Forked 1032 +(1032) found +[5049] Forked 1033 +(1033) found +[5048] Forked 1034 +(1034) found +[5047] Forked 1035 +(1035) found +[5046] Forked 1036 +[5045] Forked 1037 +(1036) found +(1037) found +[5044] Forked 1038 +[5043] Forked 1039 +(1038) found +(1039) found +[5042] Forked 1040 +[5041] Forked 1041 +(1040) found +(1041) found +[5040] Forked 1042 +[5039] Forked 1043 +(1042) found +(1043) found +[5038] Forked 1044 +[5037] Forked 1045 +(1044) found +(1045) found +[5036] Forked 1046 +[5035] Forked 1047 +(1046) found +(1047) found +[5034] Forked 1048 +[5033] Forked 1049 +(1048) found +(1049) found +[5032] Forked 1050 +[5031] Forked 1051 +(1050) found +(1051) found +[5030] Forked 1052 +[5029] Forked 1053 +(1052) found +(1053) found +[5028] Forked 1054 +[5027] Forked 1055 +(1054) found +(1055) found +[5026] Forked 1056 +[5025] Forked 1057 +(1056) found +(1057) found +[5024] Forked 1058 +[5023] Forked 1059 +(1058) found +(1059) found +[5022] Forked 1060 +[5021] Forked 1061 +(1060) found +(1061) found +[5020] Forked 1062 +[5019] Forked 1063 +(1062) found +(1063) found +[5018] Forked 1064 +[5017] Forked 1065 +(1064) found +(1065) found +[5016] Forked 1066 +[5015] Forked 1067 +(1066) found +(1067) found +[5014] Forked 1068 +[5013] Forked 1069 +(1068) found +(1069) found +[5012] Forked 1070 +[5011] Forked 1071 +(1070) found +(1071) found +[5010] Forked 1072 +[5009] Forked 1073 +(1072) found +(1073) found +[5008] Forked 1074 +[5007] Forked 1075 +(1074) found +(1075) found +[5006] Forked 1076 +[5005] Forked 1077 +(1076) found +(1077) found +[5004] Forked 1078 +[5003] Forked 1079 +(1078) found +(1079) found +[5002] Forked 1080 +[5001] Forked 1081 +(1080) found +(1081) found +[5000] Forked 1082 +[4999] Forked 1083 +(1082) found +(1083) found +[4998] Forked 1084 +[4997] Forked 1085 +(1084) found +(1085) found +[4996] Forked 1086 +[4995] Forked 1087 +(1086) found +(1087) found +[4994] Forked 1088 +[4993] Forked 1089 +(1088) found +(1089) found +[4992] Forked 1090 +[4991] Forked 1091 +(1090) found +(1091) found +[4990] Forked 1092 +[4989] Forked 1093 +(1092) found +(1093) found +[4988] Forked 1094 +[4987] Forked 1095 +(1094) found +(1095) found +[4986] Forked 1096 +[4985] Forked 1097 +(1096) found +(1097) found +[4984] Forked 1098 +[4983] Forked 1099 +(1098) found +(1099) found +[4982] Forked 1100 +[4981] Forked 1101 +(1100) found +(1101) found +[4980] Forked 1102 +[4979] Forked 1103 +(1102) found +(1103) found +[4978] Forked 1104 +[4977] Forked 1105 +(1104) found +(1105) found +[4976] Forked 1106 +[4975] Forked 1108 +(1106) found +(1108) found +[4974] Forked 1109 +[4973] Forked 1110 +(1109) found +(1110) found +[4972] Forked 1111 +[4971] Forked 1112 +(1111) found +(1112) found +[4970] Forked 1113 +[4969] Forked 1114 +(1113) found +(1114) found +[4968] Forked 1115 +[4967] Forked 1116 +(1115) found +(1116) found +[4966] Forked 1117 +[4965] Forked 1118 +(1117) found +(1118) found +[4964] Forked 1119 +[4963] Forked 1120 +(1119) found +(1120) found +[4962] Forked 1121 +[4961] Forked 1122 +(1121) found +(1122) found +[4960] Forked 1123 +[4959] Forked 1124 +(1123) found +(1124) found +[4958] Forked 1125 +(1125) found +[4957] Forked 1126 +(1126) found +[4956] Forked 1127 +(1127) found +[4955] Forked 1128 +(1128) found +[4954] Forked 1129 +(1129) found +[4953] Forked 1130 +(1130) found +[4952] Forked 1131 +(1131) found +[4951] Forked 1132 +(1132) found +[4950] Forked 1133 +[4949] Forked 1134 +(1133) found +(1134) found +[4948] Forked 1135 +[4947] Forked 1136 +(1135) found +(1136) found +[4946] Forked 1137 +[4945] Forked 1138 +(1137) found +(1138) found +[4944] Forked 1139 +[4943] Forked 1140 +(1139) found +(1140) found +[4942] Forked 1141 +[4941] Forked 1142 +(1141) found +(1142) found +[4940] Forked 1143 +[4939] Forked 1144 +(1143) found +(1144) found +[4938] Forked 1145 +[4937] Forked 1146 +(1145) found +(1146) found +[4936] Forked 1147 +[4935] Forked 1148 +(1147) found +(1148) found +[4934] Forked 1149 +[4933] Forked 1150 +(1149) found +(1150) found +[4932] Forked 1151 +[4931] Forked 1152 +(1151) found +(1152) found +[4930] Forked 1153 +[4929] Forked 1154 +(1153) found +(1154) found +[4928] Forked 1155 +[4927] Forked 1156 +(1155) found +(1156) found +[4926] Forked 1157 +[4925] Forked 1158 +(1157) found +(1158) found +[4924] Forked 1159 +[4923] Forked 1160 +(1159) found +(1160) found +[4922] Forked 1161 +[4921] Forked 1162 +(1161) found +(1162) found +[4920] Forked 1163 +[4919] Forked 1164 +(1163) found +(1164) found +[4918] Forked 1165 +[4917] Forked 1166 +(1165) found +(1166) found +[4916] Forked 1167 +(1167) found +[4915] Forked 1168 +(1168) found +[4914] Forked 1169 +(1169) found +[4913] Forked 1170 +(1170) found +[4912] Forked 1171 +(1171) found +[4911] Forked 1172 +(1172) found +[4910] Forked 1173 +(1173) found +[4909] Forked 1174 +(1174) found +[4908] Forked 1175 +(1175) found +[4907] Forked 1176 +(1176) found +[4906] Forked 1177 +(1177) found +[4905] Forked 1178 +(1178) found +[4904] Forked 1179 +(1179) found +[4903] Forked 1180 +(1180) found +[4902] Forked 1181 +(1181) found +[4901] Forked 1182 +(1182) found +[4900] Forked 1183 +(1183) found +[4899] Forked 1184 +(1184) found +[4898] Forked 1185 +(1185) found +[4897] Forked 1186 +(1186) found +[4896] Forked 1187 +(1187) found +[4895] Forked 1188 +(1188) found +[4894] Forked 1190 +(1190) found +[4893] Forked 1191 +(1191) found +[4892] Forked 1192 +(1192) found +[4891] Forked 1193 +(1193) found +[4890] Forked 1194 +(1194) found +[4889] Forked 1195 +(1195) found +[4888] Forked 1196 +(1196) found +[4887] Forked 1197 +(1197) found +[4886] Forked 1198 +(1198) found +[4885] Forked 1199 +(1199) found +[4884] Forked 1200 +(1200) found +[4883] Forked 1201 +(1201) found +[4882] Forked 1202 +(1202) found +[4881] Forked 1203 +(1203) found +[4880] Forked 1204 +[4879] Forked 1205 +(1204) found +(1205) found +[4878] Forked 1206 +[4877] Forked 1207 +(1206) found +(1207) found +[4876] Forked 1208 +[4875] Forked 1209 +(1208) found +(1209) found +[4874] Forked 1210 +[4873] Forked 1211 +(1210) found +(1211) found +[4872] Forked 1212 +[4871] Forked 1213 +(1212) found +(1213) found +[4870] Forked 1214 +[4869] Forked 1215 +(1214) found +(1215) found +[4868] Forked 1216 +[4867] Forked 1217 +(1216) found +(1217) found +[4866] Forked 1218 +[4865] Forked 1219 +(1218) found +(1219) found +[4864] Forked 1220 +[4863] Forked 1221 +(1220) found +(1221) found +[4862] Forked 1222 +[4861] Forked 1223 +(1222) found +(1223) found +[4860] Forked 1224 +[4859] Forked 1225 +(1224) found +(1225) found +[4858] Forked 1226 +[4857] Forked 1227 +(1226) found +(1227) found +[4856] Forked 1228 +[4855] Forked 1229 +(1228) found +(1229) found +[4854] Forked 1230 +[4853] Forked 1231 +(1230) found +(1231) found +[4852] Forked 1232 +[4851] Forked 1233 +(1232) found +(1233) found +[4850] Forked 1234 +[4849] Forked 1235 +(1234) found +(1235) found +[4848] Forked 1236 +[4847] Forked 1237 +(1236) found +(1237) found +[4846] Forked 1238 +[4845] Forked 1239 +(1238) found +(1239) found +[4844] Forked 1240 +[4843] Forked 1241 +(1240) found +(1241) found +[4842] Forked 1242 +[4841] Forked 1243 +(1242) found +(1243) found +[4840] Forked 1244 +[4839] Forked 1245 +(1244) found +(1245) found +[4838] Forked 1246 +[4837] Forked 1247 +(1246) found +(1247) found +[4836] Forked 1248 +[4835] Forked 1249 +(1248) found +(1249) found +[4834] Forked 1250 +[4833] Forked 1251 +(1250) found +(1251) found +[4832] Forked 1252 +(1252) found +[4831] Forked 1253 +[4830] Forked 1254 +(1253) found +(1254) found +[4829] Forked 1255 +[4828] Forked 1256 +(1255) found +(1256) found +[4827] Forked 1257 +[4826] Forked 1258 +(1257) found +(1258) found +[4825] Forked 1259 +[4824] Forked 1260 +(1259) found +(1260) found +[4823] Forked 1261 +[4822] Forked 1262 +(1261) found +(1262) found +[4821] Forked 1263 +[4820] Forked 1264 +(1263) found +(1264) found +[4819] Forked 1265 +[4818] Forked 1266 +(1265) found +(1266) found +[4817] Forked 1267 +[4816] Forked 1268 +(1267) found +(1268) found +[4815] Forked 1269 +[4814] Forked 1270 +(1269) found +(1270) found +[4813] Forked 1271 +[4812] Forked 1272 +(1271) found +(1272) found +[4811] Forked 1273 +[4810] Forked 1274 +(1273) found +(1274) found +[4809] Forked 1275 +[4808] Forked 1276 +(1275) found +(1276) found +[4807] Forked 1277 +[4806] Forked 1278 +(1277) found +(1278) found +[4805] Forked 1279 +[4804] Forked 1280 +(1279) found +(1280) found +[4803] Forked 1281 +[4802] Forked 1282 +(1281) found +(1282) found +[4801] Forked 1283 +[4800] Forked 1284 +(1283) found +(1284) found +[4799] Forked 1285 +[4798] Forked 1286 +(1285) found +(1286) found +[4797] Forked 1287 +[4796] Forked 1288 +(1287) found +(1288) found +[4795] Forked 1289 +[4794] Forked 1290 +(1289) found +(1290) found +[4793] Forked 1291 +(1291) found +[4792] Forked 1292 +(1292) found +[4791] Forked 1293 +(1293) found +[4790] Forked 1294 +(1294) found +[4789] Forked 1295 +(1295) found +[4788] Forked 1296 +(1296) found +[4787] Forked 1297 +(1297) found +[4786] Forked 1298 +(1298) found +[4785] Forked 1299 +(1299) found +[4784] Forked 1300 +(1300) found +[4783] Forked 1301 +(1301) found +[4782] Forked 1302 +(1302) found +[4781] Forked 1303 +(1303) found +[4780] Forked 1304 +(1304) found +[4779] Forked 1305 +(1305) found +[4778] Forked 1306 +(1306) found +[4777] Forked 1307 +(1307) found +[4776] Forked 1308 +(1308) found +[4775] Forked 1309 +(1309) found +[4774] Forked 1310 +(1310) found +[4773] Forked 1312 +(1312) found +[4772] Forked 1313 +(1313) found +[4771] Forked 1314 +(1314) found +[4770] Forked 1315 +(1315) found +[4769] Forked 1316 +(1316) found +[4768] Forked 1317 +(1317) found +[4767] Forked 1318 +(1318) found +[4766] Forked 1319 +(1319) found +[4765] Forked 1320 +(1320) found +[4764] Forked 1321 +(1321) found +[4763] Forked 1322 +(1322) found +[4762] Forked 1323 +(1323) found +[4761] Forked 1324 +(1324) found +[4760] Forked 1325 +(1325) found +[4759] Forked 1326 +[4758] Forked 1327 +(1326) found +(1327) found +[4757] Forked 1328 +[4756] Forked 1329 +(1328) found +(1329) found +[4755] Forked 1330 +[4754] Forked 1331 +(1330) found +(1331) found +[4753] Forked 1332 +[4752] Forked 1333 +(1332) found +(1333) found +[4751] Forked 1334 +[4750] Forked 1335 +(1334) found +(1335) found +[4749] Forked 1336 +[4748] Forked 1337 +(1336) found +(1337) found +[4747] Forked 1338 +[4746] Forked 1339 +(1338) found +(1339) found +[4745] Forked 1340 +[4744] Forked 1341 +(1340) found +(1341) found +[4743] Forked 1342 +[4742] Forked 1343 +(1342) found +(1343) found +[4741] Forked 1344 +[4740] Forked 1345 +(1344) found +(1345) found +[4739] Forked 1346 +[4738] Forked 1347 +(1346) found +(1347) found +[4737] Forked 1348 +[4736] Forked 1349 +(1348) found +(1349) found +[4735] Forked 1350 +[4734] Forked 1351 +(1350) found +(1351) found +[4733] Forked 1352 +[4732] Forked 1353 +(1352) found +(1353) found +[4731] Forked 1354 +[4730] Forked 1355 +(1354) found +(1355) found +[4729] Forked 1356 +[4728] Forked 1357 +(1356) found +(1357) found +[4727] Forked 1358 +[4726] Forked 1359 +(1358) found +(1359) found +[4725] Forked 1360 +[4724] Forked 1361 +(1360) found +(1361) found +[4723] Forked 1362 +[4722] Forked 1363 +(1362) found +(1363) found +[4721] Forked 1364 +[4720] Forked 1365 +(1364) found +(1365) found +[4719] Forked 1366 +[4718] Forked 1367 +(1366) found +(1367) found +[4717] Forked 1368 +[4716] Forked 1369 +(1368) found +(1369) found +[4715] Forked 1370 +[4714] Forked 1371 +(1370) found +(1371) found +[4713] Forked 1372 +(1372) found +[4712] Forked 1373 +(1373) found +[4711] Forked 1374 +(1374) found +[4710] Forked 1375 +(1375) found +[4709] Forked 1376 +(1376) found +[4708] Forked 1377 +(1377) found +[4707] Forked 1378 +(1378) found +[4706] Forked 1379 +(1379) found +[4705] Forked 1380 +(1380) found +[4704] Forked 1381 +(1381) found +[4703] Forked 1382 +(1382) found +[4702] Forked 1383 +(1383) found +[4701] Forked 1384 +(1384) found +[4700] Forked 1385 +(1385) found +[4699] Forked 1386 +(1386) found +[4698] Forked 1387 +(1387) found +[4697] Forked 1388 +(1388) found +[4696] Forked 1389 +(1389) found +[4695] Forked 1390 +(1390) found +[4694] Forked 1391 +(1391) found +[4693] Forked 1392 +(1392) found +[4692] Forked 1393 +(1393) found +[4691] Forked 1394 +(1394) found +[4690] Forked 1395 +(1395) found +[4689] Forked 1396 +(1396) found +[4688] Forked 1397 +(1397) found +[4687] Forked 1398 +(1398) found +[4686] Forked 1399 +(1399) found +[4685] Forked 1400 +(1400) found +[4684] Forked 1401 +(1401) found +[4683] Forked 1402 +(1402) found +[4682] Forked 1403 +(1403) found +[4681] Forked 1404 +(1404) found +[4680] Forked 1405 +(1405) found +[4679] Forked 1406 +[4678] Forked 1407 +(1406) found +(1407) found +[4677] Forked 1408 +[4676] Forked 1409 +(1408) found +(1409) found +[4675] Forked 1410 +[4674] Forked 1411 +(1410) found +(1411) found +[4673] Forked 1412 +[4672] Forked 1413 +(1412) found +(1413) found +[4671] Forked 1414 +[4670] Forked 1415 +(1414) found +(1415) found +[4669] Forked 1416 +[4668] Forked 1417 +(1416) found +(1417) found +[4667] Forked 1418 +[4666] Forked 1419 +(1418) found +(1419) found +[4665] Forked 1420 +[4664] Forked 1421 +(1420) found +(1421) found +[4663] Forked 1422 +[4662] Forked 1423 +(1422) found +(1423) found +[4661] Forked 1424 +[4660] Forked 1425 +(1424) found +(1425) found +[4659] Forked 1426 +[4658] Forked 1427 +(1426) found +(1427) found +[4657] Forked 1428 +[4656] Forked 1429 +(1428) found +(1429) found +[4655] Forked 1430 +[4654] Forked 1431 +(1431) found +(1430) found +[4653] Forked 1432 +(1432) found +[4652] Forked 1433 +(1433) found +[4651] Forked 1434 +(1434) found +[4650] Forked 1435 +(1435) found +[4649] Forked 1436 +(1436) found +[4648] Forked 1437 +(1437) found +[4647] Forked 1438 +(1438) found +[4646] Forked 1440 +(1440) found +[4645] Forked 1441 +(1441) found +[4644] Forked 1442 +(1442) found +[4643] Forked 1443 +(1443) found +[4642] Forked 1444 +(1444) found +[4641] Forked 1445 +(1445) found +[4640] Forked 1446 +(1446) found +[4639] Forked 1447 +(1447) found +[4638] Forked 1448 +(1448) found +[4637] Forked 1449 +(1449) found +[4636] Forked 1450 +(1450) found +[4635] Forked 1451 +(1451) found +[4634] Forked 1452 +(1452) found +[4633] Forked 1453 +(1453) found +[4632] Forked 1454 +(1454) found +[4631] Forked 1455 +(1455) found +[4630] Forked 1456 +(1456) found +[4629] Forked 1457 +(1457) found +[4628] Forked 1458 +(1458) found +[4627] Forked 1459 +(1459) found +[4626] Forked 1460 +(1460) found +[4625] Forked 1461 +(1461) found +[4624] Forked 1462 +(1462) found +[4623] Forked 1463 +(1463) found +[4622] Forked 1464 +(1464) found +[4621] Forked 1465 +(1465) found +[4620] Forked 1466 +(1466) found +[4619] Forked 1467 +(1467) found +[4618] Forked 1468 +(1468) found +[4617] Forked 1469 +(1469) found +[4616] Forked 1470 +(1470) found +[4615] Forked 1471 +(1471) found +[4614] Forked 1472 +(1472) found +[4613] Forked 1473 +(1473) found +[4612] Forked 1474 +(1474) found +[4611] Forked 1475 +(1475) found +[4610] Forked 1476 +(1476) found +[4609] Forked 1477 +(1477) found +[4608] Forked 1478 +(1478) found +[4607] Forked 1479 +(1479) found +[4606] Forked 1480 +(1480) found +[4605] Forked 1481 +(1481) found +[4604] Forked 1482 +(1482) found +[4603] Forked 1483 +(1483) found +[4602] Forked 1484 +(1484) found +[4601] Forked 1485 +(1485) found +[4600] Forked 1486 +(1486) found +[4599] Forked 1487 +(1487) found +[4598] Forked 1488 +(1488) found +[4597] Forked 1489 +(1489) found +[4596] Forked 1490 +(1490) found +[4595] Forked 1491 +(1491) found +[4594] Forked 1492 +(1492) found +[4593] Forked 1493 +(1493) found +[4592] Forked 1494 +(1494) found +[4591] Forked 1495 +(1495) found +[4590] Forked 1496 +(1496) found +[4589] Forked 1497 +(1497) found +[4588] Forked 1498 +(1498) found +[4587] Forked 1499 +(1499) found +[4586] Forked 1500 +(1500) found +[4585] Forked 1501 +(1501) found +[4584] Forked 1502 +(1502) found +[4583] Forked 1503 +(1503) found +[4582] Forked 1504 +(1504) found +[4581] Forked 1505 +(1505) found +[4580] Forked 1506 +(1506) found +[4579] Forked 1507 +(1507) found +[4578] Forked 1508 +(1508) found +[4577] Forked 1509 +(1509) found +[4576] Forked 1510 +(1510) found +[4575] Forked 1511 +(1511) found +[4574] Forked 1512 +(1512) found +[4573] Forked 1513 +(1513) found +[4572] Forked 1514 +(1514) found +[4571] Forked 1515 +[4570] Forked 1516 +(1515) found +(1516) found +[4569] Forked 1517 +[4568] Forked 1518 +(1517) found +(1518) found +[4567] Forked 1519 +(1519) found +[4566] Forked 1520 +[4565] Forked 1521 +(1520) found +(1521) found +[4564] Forked 1522 +[4563] Forked 1523 +(1522) found +(1523) found +[4562] Forked 1524 +[4561] Forked 1525 +(1524) found +(1525) found +[4560] Forked 1526 +[4559] Forked 1527 +(1526) found +(1527) found +[4558] Forked 1528 +[4557] Forked 1529 +(1528) found +(1529) found +[4556] Forked 1530 +[4555] Forked 1531 +(1530) found +(1531) found +[4554] Forked 1532 +[4553] Forked 1533 +(1532) found +(1533) found +[4552] Forked 1534 +[4551] Forked 1535 +(1534) found +(1535) found +[4550] Forked 1536 +[4549] Forked 1537 +(1536) found +(1537) found +[4548] Forked 1538 +[4547] Forked 1539 +(1538) found +(1539) found +[4546] Forked 1540 +[4545] Forked 1541 +(1540) found +(1541) found +[4544] Forked 1542 +[4543] Forked 1543 +(1542) found +(1543) found +[4542] Forked 1544 +[4541] Forked 1545 +(1544) found +(1545) found +[4540] Forked 1546 +[4539] Forked 1547 +(1546) found +(1547) found +[4538] Forked 1548 +[4537] Forked 1549 +(1548) found +(1549) found +[4536] Forked 1550 +[4535] Forked 1551 +(1550) found +(1551) found +[4534] Forked 1552 +[4533] Forked 1553 +(1552) found +(1553) found +[4532] Forked 1554 +[4531] Forked 1555 +(1554) found +(1555) found +[4530] Forked 1556 +[4529] Forked 1557 +(1556) found +(1557) found +[4528] Forked 1558 +[4527] Forked 1559 +(1558) found +(1559) found +[4526] Forked 1560 +[4525] Forked 1561 +(1560) found +(1561) found +[4524] Forked 1562 +[4523] Forked 1563 +(1562) found +(1563) found +[4522] Forked 1564 +[4521] Forked 1565 +(1564) found +(1565) found +[4520] Forked 1566 +[4519] Forked 1567 +(1566) found +(1567) found +[4518] Forked 1568 +[4517] Forked 1569 +(1568) found +(1569) found +[4516] Forked 1570 +[4515] Forked 1571 +(1570) found +(1571) found +[4514] Forked 1572 +[4513] Forked 1573 +(1572) found +(1573) found +[4512] Forked 1574 +[4511] Forked 1575 +(1574) found +(1575) found +[4510] Forked 1576 +[4509] Forked 1577 +(1576) found +(1577) found +[4508] Forked 1578 +[4507] Forked 1579 +(1578) found +(1579) found +[4506] Forked 1580 +[4505] Forked 1581 +(1580) found +(1581) found +[4504] Forked 1582 +[4503] Forked 1583 +(1582) found +(1583) found +[4502] Forked 1584 +[4501] Forked 1585 +(1584) found +(1585) found +[4500] Forked 1586 +[4499] Forked 1587 +(1586) found +(1587) found +[4498] Forked 1588 +[4497] Forked 1589 +(1588) found +(1589) found +[4496] Forked 1590 +[4495] Forked 1591 +(1590) found +(1591) found +[4494] Forked 1592 +[4493] Forked 1593 +(1592) found +(1593) found +[4492] Forked 1595 +[4491] Forked 1596 +(1595) found +(1596) found +[4490] Forked 1597 +[4489] Forked 1598 +(1597) found +(1598) found +[4488] Forked 1599 +[4487] Forked 1600 +(1599) found +(1600) found +[4486] Forked 1601 +[4485] Forked 1602 +(1601) found +(1602) found +[4484] Forked 1603 +[4483] Forked 1604 +(1603) found +(1604) found +[4482] Forked 1605 +[4481] Forked 1606 +(1605) found +(1606) found +[4480] Forked 1607 +[4479] Forked 1608 +(1607) found +(1608) found +[4478] Forked 1609 +[4477] Forked 1611 +(1609) found +(1611) found +[4476] Forked 1612 +(1612) found +[4475] Forked 1613 +(1613) found +[4474] Forked 1614 +(1614) found +[4473] Forked 1615 +(1615) found +[4472] Forked 1616 +(1616) found +[4471] Forked 1617 +(1617) found +[4470] Forked 1618 +(1618) found +[4469] Forked 1619 +(1619) found +[4468] Forked 1620 +(1620) found +[4467] Forked 1621 +(1621) found +[4466] Forked 1622 +(1622) found +[4465] Forked 1623 +(1623) found +[4464] Forked 1624 +(1624) found +[4463] Forked 1625 +(1625) found +[4462] Forked 1626 +(1626) found +[4461] Forked 1627 +(1627) found +[4460] Forked 1628 +(1628) found +[4459] Forked 1629 +(1629) found +[4458] Forked 1630 +(1630) found +[4457] Forked 1631 +(1631) found +[4456] Forked 1632 +(1632) found +[4455] Forked 1633 +(1633) found +[4454] Forked 1634 +(1634) found +[4453] Forked 1635 +(1635) found +[4452] Forked 1636 +(1636) found +[4451] Forked 1637 +(1637) found +[4450] Forked 1638 +(1638) found +[4449] Forked 1639 +(1639) found +[4448] Forked 1640 +(1640) found +[4447] Forked 1641 +(1641) found +[4446] Forked 1642 +(1642) found +[4445] Forked 1643 +(1643) found +[4444] Forked 1644 +(1644) found +[4443] Forked 1645 +(1645) found +[4442] Forked 1646 +(1646) found +[4441] Forked 1647 +(1647) found +[4440] Forked 1648 +(1648) found +[4439] Forked 1649 +(1649) found +[4438] Forked 1650 +(1650) found +[4437] Forked 1651 +(1651) found +[4436] Forked 1652 +(1652) found +[4435] Forked 1653 +(1653) found +[4434] Forked 1654 +(1654) found +[4433] Forked 1655 +(1655) found +[4432] Forked 1656 +(1656) found +[4431] Forked 1657 +(1657) found +[4430] Forked 1658 +(1658) found +[4429] Forked 1659 +(1659) found +[4428] Forked 1660 +(1660) found +[4427] Forked 1661 +(1661) found +[4426] Forked 1662 +(1662) found +[4425] Forked 1663 +(1663) found +[4424] Forked 1664 +(1664) found +[4423] Forked 1665 +(1665) found +[4422] Forked 1666 +(1666) found +[4421] Forked 1668 +(1668) found +[4420] Forked 1669 +(1669) found +[4419] Forked 1670 +(1670) found +[4418] Forked 1671 +(1671) found +[4417] Forked 1672 +(1672) found +[4416] Forked 1673 +(1673) found +[4415] Forked 1674 +(1674) found +[4414] Forked 1675 +(1675) found +[4413] Forked 1676 +(1676) found +[4412] Forked 1677 +(1677) found +[4411] Forked 1679 +(1679) found +[4410] Forked 1680 +[4409] Forked 1681 +(1680) found +(1681) found +[4408] Forked 1682 +[4407] Forked 1683 +(1682) found +(1683) found +[4406] Forked 1684 +[4405] Forked 1685 +(1684) found +(1685) found +[4404] Forked 1686 +[4403] Forked 1687 +(1686) found +(1687) found +[4402] Forked 1688 +[4401] Forked 1689 +(1688) found +(1689) found +[4400] Forked 1690 +[4399] Forked 1691 +(1690) found +(1691) found +[4398] Forked 1692 +[4397] Forked 1693 +(1692) found +(1693) found +[4396] Forked 1694 +[4395] Forked 1695 +(1694) found +(1695) found +[4394] Forked 1696 +[4393] Forked 1697 +(1696) found +(1697) found +[4392] Forked 1698 +[4391] Forked 1699 +(1698) found +(1699) found +[4390] Forked 1700 +[4389] Forked 1701 +(1700) found +(1701) found +[4388] Forked 1702 +[4387] Forked 1703 +(1702) found +(1703) found +[4386] Forked 1704 +[4385] Forked 1705 +(1704) found +(1705) found +[4384] Forked 1706 +[4383] Forked 1707 +(1706) found +(1707) found +[4382] Forked 1708 +[4381] Forked 1709 +(1708) found +(1709) found +[4380] Forked 1710 +[4379] Forked 1711 +(1710) found +(1711) found +[4378] Forked 1712 +[4377] Forked 1713 +(1712) found +(1713) found +[4376] Forked 1714 +[4375] Forked 1715 +(1714) found +(1715) found +[4374] Forked 1716 +[4373] Forked 1717 +(1716) found +(1717) found +[4372] Forked 1718 +[4371] Forked 1719 +(1718) found +(1719) found +[4370] Forked 1720 +[4369] Forked 1721 +(1720) found +(1721) found +[4368] Forked 1722 +[4367] Forked 1723 +(1722) found +(1723) found +[4366] Forked 1724 +(1724) found +[4365] Forked 1725 +(1725) found +[4364] Forked 1726 +(1726) found +[4363] Forked 1727 +(1727) found +[4362] Forked 1728 +(1728) found +[4361] Forked 1729 +(1729) found +[4360] Forked 1730 +(1730) found +[4359] Forked 1731 +(1731) found +[4358] Forked 1732 +(1732) found +[4357] Forked 1733 +(1733) found +[4356] Forked 1734 +(1734) found +[4355] Forked 1735 +(1735) found +[4354] Forked 1736 +(1736) found +[4353] Forked 1737 +(1737) found +[4352] Forked 1738 +(1738) found +[4351] Forked 1739 +(1739) found +[4350] Forked 1740 +(1740) found +[4349] Forked 1741 +(1741) found +[4348] Forked 1742 +(1742) found +[4347] Forked 1743 +(1743) found +[4346] Forked 1744 +(1744) found +[4345] Forked 1745 +(1745) found +[4344] Forked 1746 +(1746) found +[4343] Forked 1747 +(1747) found +[4342] Forked 1748 +(1748) found +[4341] Forked 1749 +(1749) found +[4340] Forked 1750 +(1750) found +[4339] Forked 1751 +(1751) found +[4338] Forked 1752 +(1752) found +[4337] Forked 1753 +(1753) found +[4336] Forked 1754 +(1754) found +[4335] Forked 1755 +(1755) found +[4334] Forked 1756 +(1756) found +[4333] Forked 1757 +(1757) found +[4332] Forked 1758 +(1758) found +[4331] Forked 1760 +[4330] Forked 1761 +(1760) found +(1761) found +[4329] Forked 1762 +[4328] Forked 1763 +(1762) found +(1763) found +[4327] Forked 1764 +[4326] Forked 1765 +(1764) found +(1765) found +[4325] Forked 1766 +[4324] Forked 1767 +(1766) found +(1767) found +[4323] Forked 1768 +[4322] Forked 1769 +(1768) found +(1769) found +[4321] Forked 1770 +[4320] Forked 1771 +(1770) found +(1771) found +[4319] Forked 1772 +[4318] Forked 1773 +(1772) found +(1773) found +[4317] Forked 1774 +[4316] Forked 1775 +(1774) found +(1775) found +[4315] Forked 1776 +[4314] Forked 1777 +(1776) found +(1777) found +[4313] Forked 1778 +[4312] Forked 1779 +(1778) found +(1779) found +[4311] Forked 1780 +[4310] Forked 1781 +(1780) found +(1781) found +[4309] Forked 1782 +[4308] Forked 1783 +(1782) found +(1783) found +[4307] Forked 1784 +[4306] Forked 1785 +(1784) found +(1785) found +[4305] Forked 1786 +[4304] Forked 1787 +(1786) found +(1787) found +[4303] Forked 1788 +[4302] Forked 1789 +(1788) found +(1789) found +[4301] Forked 1790 +[4300] Forked 1791 +(1790) found +(1791) found +[4299] Forked 1792 +[4298] Forked 1793 +(1792) found +(1793) found +[4297] Forked 1794 +[4296] Forked 1795 +(1794) found +(1795) found +[4295] Forked 1796 +[4294] Forked 1797 +(1796) found +(1797) found +[4293] Forked 1798 +[4292] Forked 1799 +(1798) found +(1799) found +[4291] Forked 1800 +[4290] Forked 1801 +(1800) found +(1801) found +[4289] Forked 1802 +[4288] Forked 1803 +(1802) found +(1803) found +[4287] Forked 1804 +[4286] Forked 1805 +(1804) found +(1805) found +[4285] Forked 1806 +[4284] Forked 1807 +(1806) found +(1807) found +[4283] Forked 1808 +[4282] Forked 1809 +(1808) found +(1809) found +[4281] Forked 1810 +[4280] Forked 1811 +(1810) found +(1811) found +[4279] Forked 1812 +[4278] Forked 1813 +(1812) found +(1813) found +[4277] Forked 1814 +[4276] Forked 1815 +(1814) found +(1815) found +[4275] Forked 1816 +[4274] Forked 1817 +(1816) found +(1817) found +[4273] Forked 1818 +[4272] Forked 1819 +(1818) found +(1819) found +[4271] Forked 1820 +[4270] Forked 1821 +(1820) found +(1821) found +[4269] Forked 1822 +[4268] Forked 1823 +(1822) found +(1823) found +[4267] Forked 1824 +[4266] Forked 1825 +(1824) found +(1825) found +[4265] Forked 1826 +[4264] Forked 1827 +(1826) found +(1827) found +[4263] Forked 1828 +[4262] Forked 1829 +(1828) found +(1829) found +[4261] Forked 1830 +[4260] Forked 1831 +(1830) found +(1831) found +[4259] Forked 1832 +[4258] Forked 1833 +(1832) found +(1833) found +[4257] Forked 1834 +[4256] Forked 1835 +(1834) found +(1835) found +[4255] Forked 1836 +[4254] Forked 1837 +(1836) found +(1837) found +[4253] Forked 1838 +[4252] Forked 1839 +(1838) found +(1839) found +[4251] Forked 1840 +[4250] Forked 1841 +(1840) found +(1841) found +[4249] Forked 1842 +[4248] Forked 1843 +(1842) found +(1843) found +[4247] Forked 1844 +[4246] Forked 1845 +(1844) found +(1845) found +[4245] Forked 1846 +[4244] Forked 1847 +(1846) found +(1847) found +[4243] Forked 1848 +[4242] Forked 1849 +(1848) found +(1849) found +[4241] Forked 1850 +[4240] Forked 1851 +(1850) found +(1851) found +[4239] Forked 1852 +[4238] Forked 1853 +(1852) found +(1853) found +[4237] Forked 1854 +[4236] Forked 1855 +(1854) found +(1855) found +[4235] Forked 1856 +[4234] Forked 1857 +(1856) found +(1857) found +[4233] Forked 1858 +[4232] Forked 1859 +(1858) found +(1859) found +[4231] Forked 1860 +[4230] Forked 1861 +(1860) found +(1861) found +[4229] Forked 1862 +[4228] Forked 1863 +(1862) found +(1863) found +[4227] Forked 1864 +[4226] Forked 1865 +(1864) found +(1865) found +[4225] Forked 1866 +[4224] Forked 1867 +(1866) found +(1867) found +[4223] Forked 1868 +[4222] Forked 1869 +(1868) found +(1869) found +[4221] Forked 1870 +[4220] Forked 1871 +(1870) found +(1871) found +[4219] Forked 1872 +[4218] Forked 1873 +(1872) found +(1873) found +[4217] Forked 1874 +[4216] Forked 1875 +(1874) found +(1875) found +[4215] Forked 1876 +[4214] Forked 1877 +(1876) found +(1877) found +[4213] Forked 1878 +[4212] Forked 1879 +(1878) found +(1879) found +[4211] Forked 1880 +[4210] Forked 1881 +(1880) found +(1881) found +[4209] Forked 1882 +[4208] Forked 1883 +(1882) found +(1883) found +[4207] Forked 1884 +[4206] Forked 1885 +(1884) found +(1885) found +[4205] Forked 1886 +[4204] Forked 1887 +(1886) found +(1887) found +[4203] Forked 1888 +[4202] Forked 1889 +(1888) found +(1889) found +[4201] Forked 1890 +[4200] Forked 1891 +(1890) found +(1891) found +[4199] Forked 1892 +[4198] Forked 1893 +(1892) found +(1893) found +[4197] Forked 1894 +(1894) found +[4196] Forked 1895 +[4195] Forked 1896 +(1895) found +(1896) found +[4194] Forked 1897 +[4193] Forked 1898 +(1897) found +(1898) found +[4192] Forked 1899 +[4191] Forked 1900 +(1899) found +(1900) found +[4190] Forked 1901 +[4189] Forked 1902 +(1901) found +(1902) found +[4188] Forked 1903 +[4187] Forked 1904 +(1903) found +(1904) found +[4186] Forked 1905 +[4185] Forked 1906 +(1905) found +(1906) found +[4184] Forked 1907 +[4183] Forked 1908 +(1907) found +(1908) found +[4182] Forked 1909 +[4181] Forked 1910 +(1909) found +(1910) found +[4180] Forked 1911 +[4179] Forked 1912 +(1911) found +(1912) found +[4178] Forked 1913 +[4177] Forked 1914 +(1913) found +(1914) found +[4176] Forked 1915 +[4175] Forked 1916 +(1915) found +(1916) found +[4174] Forked 1917 +[4173] Forked 1918 +(1917) found +(1918) found +[4172] Forked 1919 +[4171] Forked 1920 +(1919) found +(1920) found +[4170] Forked 1921 +[4169] Forked 1922 +(1921) found +(1922) found +[4168] Forked 1923 +[4167] Forked 1924 +(1923) found +(1924) found +[4166] Forked 1925 +[4165] Forked 1926 +(1925) found +(1926) found +[4164] Forked 1927 +[4163] Forked 1928 +(1927) found +(1928) found +[4162] Forked 1929 +[4161] Forked 1930 +(1929) found +(1930) found +[4160] Forked 1931 +[4159] Forked 1932 +(1931) found +(1932) found +[4158] Forked 1933 +[4157] Forked 1934 +(1933) found +(1934) found +[4156] Forked 1935 +[4155] Forked 1936 +(1935) found +(1936) found +[4154] Forked 1937 +[4153] Forked 1938 +(1937) found +(1938) found +[4152] Forked 1939 +[4151] Forked 1940 +(1939) found +(1940) found +[4150] Forked 1941 +(1941) found +[4149] Forked 1942 +(1942) found +[4148] Forked 1943 +(1943) found +[4147] Forked 1944 +(1944) found +[4146] Forked 1945 +(1945) found +[4145] Forked 1946 +(1946) found +[4144] Forked 1947 +(1947) found +[4143] Forked 1948 +(1948) found +[4142] Forked 1949 +(1949) found +[4141] Forked 1950 +(1950) found +[4140] Forked 1951 +(1951) found +[4139] Forked 1952 +(1952) found +[4138] Forked 1953 +(1953) found +[4137] Forked 1954 +(1954) found +[4136] Forked 1955 +(1955) found +[4135] Forked 1956 +(1956) found +[4134] Forked 1957 +(1957) found +[4133] Forked 1958 +(1958) found +[4132] Forked 1959 +(1959) found +[4131] Forked 1960 +(1960) found +[4130] Forked 1961 +(1961) found +[4129] Forked 1962 +(1962) found +[4128] Forked 1963 +(1963) found +[4127] Forked 1964 +(1964) found +[4126] Forked 1965 +(1965) found +[4125] Forked 1966 +(1966) found +[4124] Forked 1967 +(1967) found +[4123] Forked 1968 +(1968) found +[4122] Forked 1969 +(1969) found +[4121] Forked 1970 +(1970) found +[4120] Forked 1971 +(1971) found +[4119] Forked 1972 +(1972) found +[4118] Forked 1973 +(1973) found +[4117] Forked 1974 +(1974) found +[4116] Forked 1975 +[4115] Forked 1976 +(1975) found +(1976) found +[4114] Forked 1977 +[4113] Forked 1978 +(1977) found +(1978) found +[4112] Forked 1979 +(1979) found +[4111] Forked 1980 +(1980) found +[4110] Forked 1981 +[4109] Forked 1982 +(1981) found +(1982) found +[4108] Forked 1983 +[4107] Forked 1984 +(1983) found +(1984) found +[4106] Forked 1985 +[4105] Forked 1986 +(1985) found +(1986) found +[4104] Forked 1987 +[4103] Forked 1988 +(1987) found +(1988) found +[4102] Forked 1989 +[4101] Forked 1990 +(1989) found +(1990) found +[4100] Forked 1991 +[4099] Forked 1992 +(1991) found +(1992) found +[4098] Forked 1993 +[4097] Forked 1994 +(1993) found +(1994) found +[4096] Forked 1995 +[4095] Forked 1996 +(1995) found +(1996) found +[4094] Forked 1997 +[4093] Forked 1998 +(1997) found +(1998) found +[4092] Forked 1999 +[4091] Forked 2000 +(1999) found +(2000) found +[4090] Forked 2001 +[4089] Forked 2002 +(2001) found +(2002) found +[4088] Forked 2003 +[4087] Forked 2004 +(2003) found +(2004) found +[4086] Forked 2005 +[4085] Forked 2006 +(2005) found +(2006) found +[4084] Forked 2007 +[4083] Forked 2008 +(2007) found +(2008) found +[4082] Forked 2009 +[4081] Forked 2010 +(2009) found +(2010) found +[4080] Forked 2011 +[4079] Forked 2012 +(2011) found +(2012) found +[4078] Forked 2013 +[4077] Forked 2014 +(2013) found +(2014) found +[4076] Forked 2015 +[4075] Forked 2016 +(2015) found +(2016) found +[4074] Forked 2017 +[4073] Forked 2018 +(2017) found +(2018) found +[4072] Forked 2019 +[4071] Forked 2020 +(2019) found +(2020) found +[4070] Forked 2021 +[4069] Forked 2022 +(2021) found +(2022) found +[4068] Forked 2023 +[4067] Forked 2024 +(2023) found +(2024) found +[4066] Forked 2025 +[4065] Forked 2026 +(2025) found +(2026) found +[4064] Forked 2027 +[4063] Forked 2028 +(2027) found +(2028) found +[4062] Forked 2029 +[4061] Forked 2030 +(2029) found +(2030) found +[4060] Forked 2031 +[4059] Forked 2032 +(2031) found +(2032) found +[4058] Forked 2033 +[4057] Forked 2034 +(2033) found +(2034) found +[4056] Forked 2035 +[4055] Forked 2036 +(2035) found +(2036) found +[4054] Forked 2037 +[4053] Forked 2038 +(2037) found +(2038) found +[4052] Forked 2039 +[4051] Forked 2040 +(2039) found +(2040) found +[4050] Forked 2041 +[4049] Forked 2042 +(2041) found +(2042) found +[4048] Forked 2043 +[4047] Forked 2044 +(2043) found +(2044) found +[4046] Forked 2045 +[4045] Forked 2046 +(2045) found +(2046) found +[4044] Forked 2047 +[4043] Forked 2048 +(2047) found +(2048) found +[4042] Forked 2049 +[4041] Forked 2050 +(2049) found +(2050) found +[4040] Forked 2051 +[4039] Forked 2052 +(2051) found +(2052) found +[4038] Forked 2053 +[4037] Forked 2054 +(2053) found +(2054) found +[4036] Forked 2055 +[4035] Forked 2056 +(2055) found +(2056) found +[4034] Forked 2057 +[4033] Forked 2058 +(2057) found +(2058) found +[4032] Forked 2059 +[4031] Forked 2060 +(2059) found +(2060) found +[4030] Forked 2061 +[4029] Forked 2062 +(2061) found +(2062) found +[4028] Forked 2063 +[4027] Forked 2064 +(2063) found +(2064) found +[4026] Forked 2065 +[4025] Forked 2066 +(2065) found +(2066) found +[4024] Forked 2067 +[4023] Forked 2068 +(2067) found +(2068) found +[4022] Forked 2070 +[4021] Forked 2071 +(2070) found +(2071) found +[4020] Forked 2072 +[4019] Forked 2073 +(2072) found +(2073) found +[4018] Forked 2074 +[4017] Forked 2075 +(2074) found +(2075) found +[4016] Forked 2076 +[4015] Forked 2077 +(2076) found +(2077) found +[4014] Forked 2078 +[4013] Forked 2079 +(2078) found +(2079) found +[4012] Forked 2080 +[4011] Forked 2081 +(2080) found +(2081) found +[4010] Forked 2082 +[4009] Forked 2083 +(2082) found +(2083) found +[4008] Forked 2084 +[4007] Forked 2085 +(2084) found +(2085) found +[4006] Forked 2086 +[4005] Forked 2087 +(2086) found +(2087) found +[4004] Forked 2088 +[4003] Forked 2089 +(2088) found +(2089) found +[4002] Forked 2090 +[4001] Forked 2091 +(2090) found +(2091) found +[4000] Forked 2092 +[3999] Forked 2093 +(2092) found +(2093) found +[3998] Forked 2094 +[3997] Forked 2095 +(2094) found +(2095) found +[3996] Forked 2096 +[3995] Forked 2097 +(2096) found +(2097) found +[3994] Forked 2098 +[3993] Forked 2099 +(2098) found +(2099) found +[3992] Forked 2100 +[3991] Forked 2101 +(2100) found +(2101) found +[3990] Forked 2102 +[3989] Forked 2103 +(2102) found +(2103) found +[3988] Forked 2104 +[3987] Forked 2105 +(2104) found +(2105) found +[3986] Forked 2106 +[3985] Forked 2109 +(2106) found +(2109) found +[3984] Forked 2110 +[3983] Forked 2111 +(2110) found +(2111) found +[3982] Forked 2112 +[3981] Forked 2113 +(2112) found +(2113) found +[3980] Forked 2114 +[3979] Forked 2115 +(2114) found +(2115) found +[3978] Forked 2116 +[3977] Forked 2117 +(2116) found +(2117) found +[3976] Forked 2118 +[3975] Forked 2119 +(2118) found +(2119) found +[3974] Forked 2120 +[3973] Forked 2121 +(2120) found +(2121) found +[3972] Forked 2122 +[3971] Forked 2123 +(2122) found +(2123) found +[3970] Forked 2124 +[3969] Forked 2125 +(2124) found +(2125) found +[3968] Forked 2126 +[3967] Forked 2127 +(2126) found +(2127) found +[3966] Forked 2128 +[3965] Forked 2129 +(2128) found +(2129) found +[3964] Forked 2130 +[3963] Forked 2131 +(2130) found +(2131) found +[3962] Forked 2132 +[3961] Forked 2133 +(2132) found +(2133) found +[3960] Forked 2134 +[3959] Forked 2135 +(2134) found +(2135) found +[3958] Forked 2136 +[3957] Forked 2137 +(2136) found +(2137) found +[3956] Forked 2138 +[3955] Forked 2139 +(2138) found +(2139) found +[3954] Forked 2140 +[3953] Forked 2141 +(2140) found +(2141) found +[3952] Forked 2142 +[3951] Forked 2143 +(2142) found +(2143) found +[3950] Forked 2144 +[3949] Forked 2145 +(2144) found +(2145) found +[3948] Forked 2146 +[3947] Forked 2147 +(2146) found +(2147) found +[3946] Forked 2148 +[3945] Forked 2149 +(2148) found +(2149) found +[3944] Forked 2150 +[3943] Forked 2151 +(2150) found +(2151) found +[3942] Forked 2152 +[3941] Forked 2153 +(2152) found +(2153) found +[3940] Forked 2154 +[3939] Forked 2155 +(2154) found +(2155) found +[3938] Forked 2156 +[3937] Forked 2157 +(2156) found +(2157) found +[3936] Forked 2158 +[3935] Forked 2159 +(2158) found +(2159) found +[3934] Forked 2160 +[3933] Forked 2161 +(2160) found +(2161) found +[3932] Forked 2162 +[3931] Forked 2163 +(2162) found +(2163) found +[3930] Forked 2164 +[3929] Forked 2165 +(2164) found +(2165) found +[3928] Forked 2166 +[3927] Forked 2167 +(2166) found +(2167) found +[3926] Forked 2168 +[3925] Forked 2169 +(2168) found +(2169) found +[3924] Forked 2170 +[3923] Forked 2171 +(2170) found +(2171) found +[3922] Forked 2172 +[3921] Forked 2173 +(2172) found +(2173) found +[3920] Forked 2174 +[3919] Forked 2175 +(2174) found +(2175) found +[3918] Forked 2176 +[3917] Forked 2177 +(2176) found +(2177) found +[3916] Forked 2178 +[3915] Forked 2179 +(2178) found +(2179) found +[3914] Forked 2180 +[3913] Forked 2181 +(2180) found +(2181) found +[3912] Forked 2182 +[3911] Forked 2183 +(2182) found +(2183) found +[3910] Forked 2184 +[3909] Forked 2185 +(2184) found +(2185) found +[3908] Forked 2186 +[3907] Forked 2187 +(2186) found +(2187) found +[3906] Forked 2188 +[3905] Forked 2189 +(2188) found +(2189) found +[3904] Forked 2190 +[3903] Forked 2191 +(2190) found +(2191) found +[3902] Forked 2192 +[3901] Forked 2193 +(2192) found +(2193) found +[3900] Forked 2194 +[3899] Forked 2195 +(2194) found +(2195) found +[3898] Forked 2196 +[3897] Forked 2197 +(2196) found +(2197) found +[3896] Forked 2198 +[3895] Forked 2199 +(2198) found +(2199) found +[3894] Forked 2200 +[3893] Forked 2201 +(2200) found +(2201) found +[3892] Forked 2202 +(2202) found +[3891] Forked 2203 +[3890] Forked 2204 +(2203) found +(2204) found +[3889] Forked 2205 +[3888] Forked 2206 +(2205) found +(2206) found +[3887] Forked 2207 +[3886] Forked 2208 +(2207) found +(2208) found +[3885] Forked 2209 +[3884] Forked 2210 +(2209) found +(2210) found +[3883] Forked 2211 +[3882] Forked 2212 +(2211) found +(2212) found +[3881] Forked 2213 +[3880] Forked 2214 +(2213) found +(2214) found +[3879] Forked 2215 +[3878] Forked 2216 +(2215) found +(2216) found +[3877] Forked 2217 +[3876] Forked 2218 +(2217) found +(2218) found +[3875] Forked 2219 +[3874] Forked 2220 +(2219) found +(2220) found +[3873] Forked 2221 +[3872] Forked 2222 +(2221) found +(2222) found +[3871] Forked 2223 +[3870] Forked 2224 +(2223) found +(2224) found +[3869] Forked 2225 +[3868] Forked 2226 +(2225) found +(2226) found +[3867] Forked 2227 +[3866] Forked 2228 +(2227) found +(2228) found +[3865] Forked 2229 +[3864] Forked 2230 +(2229) found +(2230) found +[3863] Forked 2231 +[3862] Forked 2232 +(2231) found +(2232) found +[3861] Forked 2233 +[3860] Forked 2234 +(2233) found +(2234) found +[3859] Forked 2235 +[3858] Forked 2236 +(2235) found +(2236) found +[3857] Forked 2237 +[3856] Forked 2238 +(2237) found +(2238) found +[3855] Forked 2239 +[3854] Forked 2240 +(2239) found +(2240) found +[3853] Forked 2241 +[3852] Forked 2242 +(2241) found +(2242) found +[3851] Forked 2243 +[3850] Forked 2244 +(2243) found +(2244) found +[3849] Forked 2245 +[3848] Forked 2246 +(2245) found +(2246) found +[3847] Forked 2247 +[3846] Forked 2248 +(2247) found +(2248) found +[3845] Forked 2249 +[3844] Forked 2250 +(2249) found +(2250) found +[3843] Forked 2251 +[3842] Forked 2252 +(2251) found +(2252) found +[3841] Forked 2253 +[3840] Forked 2254 +(2253) found +(2254) found +[3839] Forked 2255 +[3838] Forked 2256 +(2255) found +(2256) found +[3837] Forked 2257 +[3836] Forked 2258 +(2257) found +(2258) found +[3835] Forked 2259 +[3834] Forked 2260 +(2259) found +(2260) found +[3833] Forked 2261 +[3832] Forked 2265 +(2261) found +(2265) found +[3831] Forked 2266 +[3830] Forked 2267 +(2266) found +(2267) found +[3829] Forked 2268 +[3828] Forked 2269 +(2268) found +(2269) found +[3827] Forked 2270 +[3826] Forked 2271 +(2270) found +(2271) found +[3825] Forked 2272 +[3824] Forked 2273 +(2272) found +(2273) found +[3823] Forked 2274 +[3822] Forked 2275 +(2274) found +(2275) found +[3821] Forked 2276 +[3820] Forked 2277 +(2276) found +(2277) found +[3819] Forked 2278 +[3818] Forked 2279 +(2278) found +(2279) found +[3817] Forked 2280 +[3816] Forked 2281 +(2280) found +(2281) found +[3815] Forked 2282 +[3814] Forked 2283 +(2282) found +(2283) found +[3813] Forked 2284 +[3812] Forked 2285 +(2284) found +(2285) found +[3811] Forked 2286 +[3810] Forked 2287 +(2286) found +(2287) found +[3809] Forked 2288 +[3808] Forked 2289 +(2288) found +(2289) found +[3807] Forked 2290 +[3806] Forked 2291 +(2290) found +(2291) found +[3805] Forked 2292 +[3804] Forked 2293 +(2292) found +(2293) found +[3803] Forked 2294 +[3802] Forked 2295 +(2294) found +(2295) found +[3801] Forked 2296 +(2296) found +[3800] Forked 2297 +(2297) found +[3799] Forked 2298 +(2298) found +[3798] Forked 2299 +(2299) found +[3797] Forked 2300 +(2300) found +[3796] Forked 2301 +(2301) found +[3795] Forked 2302 +(2302) found +[3794] Forked 2303 +(2303) found +[3793] Forked 2304 +(2304) found +[3792] Forked 2305 +(2305) found +[3791] Forked 2306 +(2306) found +[3790] Forked 2307 +(2307) found +[3789] Forked 2308 +(2308) found +[3788] Forked 2309 +(2309) found +[3787] Forked 2310 +(2310) found +[3786] Forked 2311 +(2311) found +[3785] Forked 2312 +(2312) found +[3784] Forked 2313 +(2313) found +[3783] Forked 2314 +(2314) found +[3782] Forked 2315 +(2315) found +[3781] Forked 2316 +(2316) found +[3780] Forked 2317 +(2317) found +[3779] Forked 2318 +(2318) found +[3778] Forked 2319 +(2319) found +[3777] Forked 2320 +(2320) found +[3776] Forked 2321 +(2321) found +[3775] Forked 2322 +(2322) found +[3774] Forked 2323 +(2323) found +[3773] Forked 2324 +(2324) found +[3772] Forked 2325 +(2325) found +[3771] Forked 2326 +(2326) found +[3770] Forked 2327 +(2327) found +[3769] Forked 2328 +(2328) found +[3768] Forked 2329 +(2329) found +[3767] Forked 2330 +[3766] Forked 2331 +(2330) found +(2331) found +[3765] Forked 2332 +[3764] Forked 2333 +(2332) found +(2333) found +[3763] Forked 2334 +[3762] Forked 2335 +(2334) found +(2335) found +[3761] Forked 2336 +[3760] Forked 2337 +(2336) found +(2337) found +[3759] Forked 2338 +[3758] Forked 2339 +(2338) found +(2339) found +[3757] Forked 2340 +[3756] Forked 2341 +(2340) found +(2341) found +[3755] Forked 2342 +[3754] Forked 2343 +(2342) found +(2343) found +[3753] Forked 2344 +[3752] Forked 2345 +(2344) found +(2345) found +[3751] Forked 2346 +[3750] Forked 2347 +(2346) found +(2347) found +[3749] Forked 2348 +[3748] Forked 2349 +(2348) found +(2349) found +[3747] Forked 2350 +[3746] Forked 2351 +(2350) found +(2351) found +[3745] Forked 2352 +[3744] Forked 2353 +(2352) found +(2353) found +[3743] Forked 2354 +[3742] Forked 2355 +(2354) found +(2355) found +[3741] Forked 2356 +[3740] Forked 2357 +(2356) found +(2357) found +[3739] Forked 2358 +[3738] Forked 2359 +(2358) found +(2359) found +[3737] Forked 2360 +[3736] Forked 2361 +(2360) found +(2361) found +[3735] Forked 2362 +[3734] Forked 2363 +(2362) found +(2363) found +[3733] Forked 2364 +[3732] Forked 2365 +(2364) found +(2365) found +[3731] Forked 2366 +[3730] Forked 2367 +(2366) found +(2367) found +[3729] Forked 2368 +[3728] Forked 2369 +(2368) found +(2369) found +[3727] Forked 2370 +[3726] Forked 2371 +(2370) found +(2371) found +[3725] Forked 2372 +[3724] Forked 2373 +(2372) found +(2373) found +[3723] Forked 2374 +[3722] Forked 2375 +(2374) found +(2375) found +[3721] Forked 2376 +(2376) found +[3720] Forked 2377 +(2377) found +[3719] Forked 2378 +(2378) found +[3718] Forked 2379 +(2379) found +[3717] Forked 2380 +(2380) found +[3716] Forked 2381 +(2381) found +[3715] Forked 2382 +(2382) found +[3714] Forked 2383 +(2383) found +[3713] Forked 2384 +(2384) found +[3712] Forked 2385 +(2385) found +[3711] Forked 2386 +(2386) found +[3710] Forked 2387 +(2387) found +[3709] Forked 2388 +(2388) found +[3708] Forked 2389 +(2389) found +[3707] Forked 2390 +(2390) found +[3706] Forked 2391 +(2391) found +[3705] Forked 2392 +(2392) found +[3704] Forked 2393 +(2393) found +[3703] Forked 2394 +(2394) found +[3702] Forked 2395 +(2395) found +[3701] Forked 2396 +(2396) found +[3700] Forked 2397 +(2397) found +[3699] Forked 2398 +(2398) found +[3698] Forked 2399 +(2399) found +[3697] Forked 2400 +(2400) found +[3696] Forked 2401 +(2401) found +[3695] Forked 2402 +(2402) found +[3694] Forked 2404 +(2404) found +[3693] Forked 2405 +(2405) found +[3692] Forked 2406 +(2406) found +[3691] Forked 2407 +(2407) found +[3690] Forked 2408 +(2408) found +[3689] Forked 2409 +(2409) found +[3688] Forked 2410 +(2410) found +[3687] Forked 2411 +[3686] Forked 2412 +(2411) found +(2412) found +[3685] Forked 2413 +[3684] Forked 2414 +(2413) found +(2414) found +[3683] Forked 2415 +[3682] Forked 2416 +(2415) found +(2416) found +[3681] Forked 2417 +[3680] Forked 2418 +(2417) found +(2418) found +[3679] Forked 2419 +[3678] Forked 2420 +(2419) found +(2420) found +[3677] Forked 2421 +[3676] Forked 2422 +(2421) found +(2422) found +[3675] Forked 2423 +[3674] Forked 2424 +(2423) found +(2424) found +[3673] Forked 2425 +[3672] Forked 2426 +(2425) found +(2426) found +[3671] Forked 2427 +[3670] Forked 2428 +(2427) found +(2428) found +[3669] Forked 2429 +[3668] Forked 2430 +(2429) found +(2430) found +[3667] Forked 2431 +[3666] Forked 2432 +(2431) found +(2432) found +[3665] Forked 2433 +[3664] Forked 2434 +(2433) found +(2434) found +[3663] Forked 2435 +[3662] Forked 2436 +(2435) found +(2436) found +[3661] Forked 2437 +[3660] Forked 2438 +(2437) found +(2438) found +[3659] Forked 2439 +[3658] Forked 2440 +(2439) found +(2440) found +[3657] Forked 2441 +[3656] Forked 2442 +(2441) found +(2442) found +[3655] Forked 2443 +[3654] Forked 2444 +(2443) found +(2444) found +[3653] Forked 2445 +[3652] Forked 2446 +(2445) found +(2446) found +[3651] Forked 2447 +[3650] Forked 2448 +(2447) found +(2448) found +[3649] Forked 2449 +[3648] Forked 2450 +(2449) found +(2450) found +[3647] Forked 2451 +[3646] Forked 2452 +(2451) found +(2452) found +[3645] Forked 2453 +[3644] Forked 2454 +(2453) found +(2454) found +[3643] Forked 2455 +[3642] Forked 2456 +(2455) found +(2456) found +[3641] Forked 2457 +(2457) found +[3640] Forked 2458 +(2458) found +[3639] Forked 2459 +(2459) found +[3638] Forked 2460 +(2460) found +[3637] Forked 2461 +(2461) found +[3636] Forked 2462 +(2462) found +[3635] Forked 2463 +(2463) found +[3634] Forked 2464 +(2464) found +[3633] Forked 2465 +(2465) found +[3632] Forked 2466 +(2466) found +[3631] Forked 2467 +(2467) found +[3630] Forked 2468 +(2468) found +[3629] Forked 2469 +(2469) found +[3628] Forked 2470 +(2470) found +[3627] Forked 2471 +(2471) found +[3626] Forked 2472 +(2472) found +[3625] Forked 2473 +(2473) found +[3624] Forked 2474 +(2474) found +[3623] Forked 2475 +(2475) found +[3622] Forked 2476 +(2476) found +[3621] Forked 2477 +(2477) found +[3620] Forked 2478 +(2478) found +[3619] Forked 2479 +(2479) found +[3618] Forked 2480 +(2480) found +[3617] Forked 2481 +(2481) found +[3616] Forked 2482 +(2482) found +[3615] Forked 2483 +(2483) found +[3614] Forked 2484 +(2484) found +[3613] Forked 2485 +(2485) found +[3612] Forked 2486 +(2486) found +[3611] Forked 2487 +(2487) found +[3610] Forked 2488 +(2488) found +[3609] Forked 2489 +(2489) found +[3608] Forked 2490 +(2490) found +[3607] Forked 2491 +[3606] Forked 2492 +(2491) found +(2492) found +[3605] Forked 2493 +[3604] Forked 2494 +(2493) found +(2494) found +[3603] Forked 2495 +[3602] Forked 2496 +(2495) found +(2496) found +[3601] Forked 2497 +[3600] Forked 2498 +(2497) found +(2498) found +[3599] Forked 2499 +[3598] Forked 2500 +(2499) found +(2500) found +[3597] Forked 2501 +[3596] Forked 2502 +(2501) found +(2502) found +[3595] Forked 2503 +[3594] Forked 2504 +(2503) found +(2504) found +[3593] Forked 2505 +[3592] Forked 2506 +(2505) found +(2506) found +[3591] Forked 2507 +[3590] Forked 2508 +(2507) found +(2508) found +[3589] Forked 2509 +[3588] Forked 2510 +(2509) found +(2510) found +[3587] Forked 2512 +[3586] Forked 2513 +(2512) found +(2513) found +[3585] Forked 2514 +[3584] Forked 2515 +(2514) found +(2515) found +[3583] Forked 2516 +[3582] Forked 2517 +(2516) found +(2517) found +[3581] Forked 2518 +[3580] Forked 2519 +(2518) found +(2519) found +[3579] Forked 2520 +[3578] Forked 2521 +(2520) found +(2521) found +[3577] Forked 2522 +[3576] Forked 2523 +(2522) found +(2523) found +[3575] Forked 2525 +[3574] Forked 2526 +(2525) found +(2526) found +[3573] Forked 2527 +[3572] Forked 2528 +(2527) found +(2528) found +[3571] Forked 2529 +[3570] Forked 2530 +(2529) found +(2530) found +[3569] Forked 2531 +[3568] Forked 2532 +(2531) found +(2532) found +[3567] Forked 2533 +[3566] Forked 2534 +(2533) found +(2534) found +[3565] Forked 2535 +[3564] Forked 2536 +(2535) found +(2536) found +[3563] Forked 2537 +[3562] Forked 2538 +(2537) found +(2538) found +[3561] Forked 2539 +[3560] Forked 2541 +(2539) found +(2541) found +[3559] Forked 2542 +[3558] Forked 2543 +(2542) found +(2543) found +[3557] Forked 2544 +[3556] Forked 2545 +(2544) found +(2545) found +[3555] Forked 2546 +[3554] Forked 2547 +(2546) found +(2547) found +[3553] Forked 2548 +[3552] Forked 2549 +(2548) found +(2549) found +[3551] Forked 2550 +[3550] Forked 2551 +(2550) found +(2551) found +[3549] Forked 2552 +[3548] Forked 2553 +(2552) found +(2553) found +[3547] Forked 2554 +[3546] Forked 2555 +(2554) found +(2555) found +[3545] Forked 2556 +[3544] Forked 2557 +(2556) found +(2557) found +[3543] Forked 2558 +[3542] Forked 2559 +(2558) found +(2559) found +[3541] Forked 2560 +[3540] Forked 2561 +(2560) found +(2561) found +[3539] Forked 2562 +[3538] Forked 2563 +(2562) found +(2563) found +[3537] Forked 2564 +[3536] Forked 2565 +(2564) found +(2565) found +[3535] Forked 2566 +[3534] Forked 2567 +(2566) found +(2567) found +[3533] Forked 2568 +[3532] Forked 2569 +(2568) found +(2569) found +[3531] Forked 2570 +[3530] Forked 2571 +(2570) found +(2571) found +[3529] Forked 2572 +[3528] Forked 2573 +(2572) found +(2573) found +[3527] Forked 2574 +[3526] Forked 2575 +(2574) found +(2575) found +[3525] Forked 2576 +[3524] Forked 2577 +(2576) found +(2577) found +[3523] Forked 2578 +[3522] Forked 2579 +(2578) found +(2579) found +[3521] Forked 2580 +[3520] Forked 2581 +(2580) found +(2581) found +[3519] Forked 2582 +(2582) found +[3518] Forked 2583 +(2583) found +[3517] Forked 2584 +(2584) found +[3516] Forked 2585 +(2585) found +[3515] Forked 2586 +(2586) found +[3514] Forked 2587 +(2587) found +[3513] Forked 2588 +(2588) found +[3512] Forked 2589 +(2589) found +[3511] Forked 2590 +(2590) found +[3510] Forked 2591 +(2591) found +[3509] Forked 2592 +(2592) found +[3508] Forked 2593 +(2593) found +[3507] Forked 2594 +(2594) found +[3506] Forked 2595 +(2595) found +[3505] Forked 2596 +(2596) found +[3504] Forked 2597 +(2597) found +[3503] Forked 2598 +(2598) found +[3502] Forked 2599 +(2599) found +[3501] Forked 2600 +(2600) found +[3500] Forked 2601 +(2601) found +[3499] Forked 2602 +(2602) found +[3498] Forked 2603 +(2603) found +[3497] Forked 2604 +(2604) found +[3496] Forked 2605 +(2605) found +[3495] Forked 2606 +(2606) found +[3494] Forked 2607 +(2607) found +[3493] Forked 2608 +(2608) found +[3492] Forked 2609 +(2609) found +[3491] Forked 2610 +(2610) found +[3490] Forked 2611 +(2611) found +[3489] Forked 2612 +(2612) found +[3488] Forked 2613 +(2613) found +[3487] Forked 2614 +(2614) found +[3486] Forked 2615 +(2615) found +[3485] Forked 2616 +(2616) found +[3484] Forked 2617 +(2617) found +[3483] Forked 2618 +[3482] Forked 2619 +(2618) found +(2619) found +[3481] Forked 2620 +[3480] Forked 2621 +(2620) found +(2621) found +[3479] Forked 2622 +(2622) found +[3478] Forked 2623 +[3477] Forked 2624 +(2623) found +(2624) found +[3476] Forked 2625 +[3475] Forked 2626 +(2625) found +(2626) found +[3474] Forked 2627 +[3473] Forked 2628 +(2627) found +(2628) found +[3472] Forked 2629 +[3471] Forked 2630 +(2629) found +(2630) found +[3470] Forked 2631 +[3469] Forked 2632 +(2631) found +(2632) found +[3468] Forked 2633 +[3467] Forked 2634 +(2633) found +(2634) found +[3466] Forked 2635 +[3465] Forked 2636 +(2635) found +(2636) found +[3464] Forked 2637 +[3463] Forked 2638 +(2637) found +(2638) found +[3462] Forked 2639 +[3461] Forked 2640 +(2639) found +(2640) found +[3460] Forked 2641 +[3459] Forked 2642 +(2641) found +(2642) found +[3458] Forked 2643 +[3457] Forked 2644 +(2643) found +(2644) found +[3456] Forked 2645 +[3455] Forked 2646 +(2645) found +(2646) found +[3454] Forked 2647 +[3453] Forked 2648 +(2647) found +(2648) found +[3452] Forked 2649 +[3451] Forked 2650 +(2649) found +(2650) found +[3450] Forked 2651 +[3449] Forked 2652 +(2651) found +(2652) found +[3448] Forked 2653 +[3447] Forked 2654 +(2653) found +(2654) found +[3446] Forked 2655 +[3445] Forked 2659 +(2655) found +(2659) found +[3444] Forked 2662 +[3443] Forked 2663 +(2662) found +(2663) found +[3442] Forked 2664 +[3441] Forked 2665 +(2664) found +(2665) found +[3440] Forked 2666 +(2666) found +[3439] Forked 2668 +(2668) found +[3438] Forked 2669 +(2669) found +[3437] Forked 2670 +(2670) found +[3436] Forked 2671 +(2671) found +[3435] Forked 2672 +(2672) found +[3434] Forked 2673 +(2673) found +[3433] Forked 2674 +(2674) found +[3432] Forked 2675 +(2675) found +[3431] Forked 2676 +(2676) found +[3430] Forked 2677 +(2677) found +[3429] Forked 2678 +(2678) found +[3428] Forked 2679 +(2679) found +[3427] Forked 2680 +(2680) found +[3426] Forked 2681 +(2681) found +[3425] Forked 2682 +(2682) found +[3424] Forked 2683 +(2683) found +[3423] Forked 2684 +(2684) found +[3422] Forked 2685 +(2685) found +[3421] Forked 2686 +(2686) found +[3420] Forked 2687 +(2687) found +[3419] Forked 2688 +(2688) found +[3418] Forked 2689 +(2689) found +[3417] Forked 2690 +(2690) found +[3416] Forked 2691 +(2691) found +[3415] Forked 2692 +(2692) found +[3414] Forked 2693 +(2693) found +[3413] Forked 2694 +(2694) found +[3412] Forked 2695 +(2695) found +[3411] Forked 2696 +(2696) found +[3410] Forked 2697 +(2697) found +[3409] Forked 2698 +(2698) found +[3408] Forked 2699 +(2699) found +[3407] Forked 2700 +(2700) found +[3406] Forked 2701 +(2701) found +[3405] Forked 2703 +(2703) found +[3404] Forked 2704 +[3403] Forked 2705 +(2704) found +(2705) found +[3402] Forked 2706 +(2706) found +[3401] Forked 2707 +(2707) found +[3400] Forked 2708 +(2708) found +[3399] Forked 2709 +(2709) found +[3398] Forked 2710 +[3397] Forked 2711 +(2710) found +(2711) found +[3396] Forked 2712 +[3395] Forked 2713 +(2712) found +(2713) found +[3394] Forked 2714 +[3393] Forked 2715 +(2714) found +(2715) found +[3392] Forked 2716 +[3391] Forked 2717 +(2716) found +(2717) found +[3390] Forked 2718 +[3389] Forked 2719 +(2718) found +(2719) found +[3388] Forked 2720 +[3387] Forked 2723 +(2720) found +(2723) found +[3386] Forked 2725 +[3385] Forked 2728 +(2725) found +(2728) found +[3384] Forked 2729 +[3383] Forked 2730 +(2729) found +(2730) found +[3382] Forked 2731 +[3381] Forked 2732 +(2731) found +(2732) found +[3380] Forked 2733 +[3379] Forked 2734 +(2733) found +(2734) found +[3378] Forked 2735 +[3377] Forked 2736 +(2735) found +(2736) found +[3376] Forked 2737 +[3375] Forked 2738 +(2737) found +(2738) found +[3374] Forked 2739 +[3373] Forked 2740 +(2739) found +(2740) found +[3372] Forked 2741 +[3371] Forked 2742 +(2741) found +(2742) found +[3370] Forked 2743 +[3369] Forked 2745 +(2743) found +(2745) found +[3368] Forked 2746 +(2746) found +[3367] Forked 2747 +(2747) found +[3366] Forked 2748 +(2748) found +[3365] Forked 2749 +(2749) found +[3364] Forked 2750 +(2750) found +[3363] Forked 2751 +(2751) found +[3362] Forked 2752 +(2752) found +[3361] Forked 2753 +(2753) found +[3360] Forked 2754 +(2754) found +[3359] Forked 2755 +(2755) found +[3358] Forked 2756 +(2756) found +[3357] Forked 2757 +(2757) found +[3356] Forked 2758 +(2758) found +[3355] Forked 2760 +(2760) found +[3354] Forked 2761 +(2761) found +[3353] Forked 2762 +(2762) found +[3352] Forked 2763 +(2763) found +[3351] Forked 2764 +(2764) found +[3350] Forked 2765 +(2765) found +[3349] Forked 2766 +(2766) found +[3348] Forked 2767 +(2767) found +[3347] Forked 2768 +(2768) found +[3346] Forked 2769 +(2769) found +[3345] Forked 2770 +(2770) found +[3344] Forked 2771 +(2771) found +[3343] Forked 2772 +(2772) found +[3342] Forked 2773 +(2773) found +[3341] Forked 2774 +(2774) found +[3340] Forked 2775 +(2775) found +[3339] Forked 2776 +(2776) found +[3338] Forked 2777 +(2777) found +[3337] Forked 2778 +(2778) found +[3336] Forked 2779 +(2779) found +[3335] Forked 2780 +(2780) found +[3334] Forked 2781 +(2781) found +[3333] Forked 2782 +(2782) found +[3332] Forked 2783 +(2783) found +[3331] Forked 2784 +(2784) found +[3330] Forked 2785 +(2785) found +[3329] Forked 2786 +(2786) found +[3328] Forked 2787 +(2787) found +[3327] Forked 2788 +(2788) found +[3326] Forked 2789 +(2789) found +[3325] Forked 2790 +(2790) found +[3324] Forked 2791 +(2791) found +[3323] Forked 2792 +(2792) found +[3322] Forked 2793 +(2793) found +[3321] Forked 2794 +[3320] Forked 2795 +(2795) found +(2794) found +[3319] Forked 2796 +(2796) found +[3318] Forked 2797 +(2797) found +[3317] Forked 2798 +(2798) found +[3316] Forked 2799 +(2799) found +[3315] Forked 2800 +(2800) found +[3314] Forked 2801 +(2801) found +[3313] Forked 2802 +(2802) found +[3312] Forked 2803 +(2803) found +[3311] Forked 2804 +(2804) found +[3310] Forked 2805 +(2805) found +[3309] Forked 2806 +(2806) found +[3308] Forked 2807 +(2807) found +[3307] Forked 2808 +(2808) found +[3306] Forked 2809 +(2809) found +[3305] Forked 2810 +(2810) found +[3304] Forked 2811 +(2811) found +[3303] Forked 2812 +(2812) found +[3302] Forked 2813 +(2813) found +[3301] Forked 2814 +(2814) found +[3300] Forked 2815 +(2815) found +[3299] Forked 2816 +(2816) found +[3298] Forked 2817 +(2817) found +[3297] Forked 2818 +(2818) found +[3296] Forked 2819 +(2819) found +[3295] Forked 2820 +(2820) found +[3294] Forked 2821 +(2821) found +[3293] Forked 2822 +(2822) found +[3292] Forked 2823 +(2823) found +[3291] Forked 2824 +(2824) found +[3290] Forked 2825 +(2825) found +[3289] Forked 2826 +(2826) found +[3288] Forked 2827 +(2827) found +[3287] Forked 2830 +(2830) found +[3286] Forked 2831 +(2831) found +[3285] Forked 2832 +(2832) found +[3284] Forked 2833 +(2833) found +[3283] Forked 2834 +(2834) found +[3282] Forked 2835 +(2835) found +[3281] Forked 2836 +(2836) found +[3280] Forked 2837 +(2837) found +[3279] Forked 2838 +(2838) found +[3278] Forked 2839 +(2839) found +[3277] Forked 2840 +(2840) found +[3276] Forked 2841 +(2841) found +[3275] Forked 2843 +(2843) found +[3274] Forked 2844 +(2844) found +[3273] Forked 2845 +(2845) found +[3272] Forked 2846 +(2846) found +[3271] Forked 2847 +(2847) found +[3270] Forked 2848 +(2848) found +[3269] Forked 2849 +(2849) found +[3268] Forked 2850 +(2850) found +[3267] Forked 2851 +(2851) found +[3266] Forked 2852 +(2852) found +[3265] Forked 2853 +(2853) found +[3264] Forked 2854 +(2854) found +[3263] Forked 2855 +(2855) found +[3262] Forked 2856 +(2856) found +[3261] Forked 2857 +(2857) found +[3260] Forked 2858 +(2858) found +[3259] Forked 2859 +(2859) found +[3258] Forked 2860 +(2860) found +[3257] Forked 2861 +(2861) found +[3256] Forked 2862 +(2862) found +[3255] Forked 2863 +(2863) found +[3254] Forked 2864 +(2864) found +[3253] Forked 2865 +(2865) found +[3252] Forked 2866 +(2866) found +[3251] Forked 2867 +(2867) found +[3250] Forked 2868 +[3249] Forked 2869 +(2868) found +(2869) found +[3248] Forked 2870 +[3247] Forked 2871 +(2870) found +(2871) found +[3246] Forked 2872 +[3245] Forked 2873 +(2872) found +(2873) found +[3244] Forked 2874 +[3243] Forked 2875 +(2874) found +(2875) found +[3242] Forked 2876 +[3241] Forked 2877 +(2876) found +(2877) found +[3240] Forked 2878 +[3239] Forked 2879 +(2878) found +(2879) found +[3238] Forked 2880 +[3237] Forked 2881 +(2880) found +(2881) found +[3236] Forked 2882 +[3235] Forked 2883 +(2882) found +(2883) found +[3234] Forked 2884 +[3233] Forked 2885 +(2884) found +(2885) found +[3232] Forked 2886 +[3231] Forked 2887 +(2886) found +(2887) found +[3230] Forked 2888 +[3229] Forked 2889 +(2888) found +(2889) found +[3228] Forked 2890 +[3227] Forked 2891 +(2890) found +(2891) found +[3226] Forked 2892 +[3225] Forked 2893 +(2892) found +(2893) found +[3224] Forked 2894 +[3223] Forked 2895 +(2894) found +(2895) found +[3222] Forked 2896 +[3221] Forked 2897 +(2896) found +(2897) found +[3220] Forked 2898 +[3219] Forked 2899 +(2898) found +(2899) found +[3218] Forked 2900 +[3217] Forked 2901 +(2900) found +(2901) found +[3216] Forked 2902 +[3215] Forked 2903 +(2902) found +(2903) found +[3214] Forked 2904 +[3213] Forked 2905 +(2904) found +(2905) found +[3212] Forked 2906 +[3211] Forked 2908 +(2906) found +(2908) found +[3210] Forked 2909 +(2909) found +[3209] Forked 2910 +(2910) found +[3208] Forked 2911 +(2911) found +[3207] Forked 2912 +(2912) found +[3206] Forked 2913 +(2913) found +[3205] Forked 2914 +(2914) found +[3204] Forked 2915 +(2915) found +[3203] Forked 2916 +(2916) found +[3202] Forked 2917 +(2917) found +[3201] Forked 2918 +(2918) found +[3200] Forked 2919 +(2919) found +[3199] Forked 2920 +(2920) found +[3198] Forked 2921 +(2921) found +[3197] Forked 2922 +(2922) found +[3196] Forked 2923 +(2923) found +[3195] Forked 2924 +(2924) found +[3194] Forked 2925 +(2925) found +[3193] Forked 2926 +(2926) found +[3192] Forked 2927 +(2927) found +[3191] Forked 2928 +(2928) found +[3190] Forked 2929 +(2929) found +[3189] Forked 2930 +(2930) found +[3188] Forked 2932 +(2932) found +[3187] Forked 2933 +(2933) found +[3186] Forked 2934 +(2934) found +[3185] Forked 2935 +(2935) found +[3184] Forked 2936 +(2936) found +[3183] Forked 2937 +(2937) found +[3182] Forked 2938 +(2938) found +[3181] Forked 2939 +(2939) found +[3180] Forked 2940 +(2940) found +[3179] Forked 2941 +(2941) found +[3178] Forked 2942 +(2942) found +[3177] Forked 2943 +(2943) found +[3176] Forked 2944 +(2944) found +[3175] Forked 2945 +(2945) found +[3174] Forked 2946 +[3173] Forked 2947 +(2946) found +(2947) found +[3172] Forked 2948 +[3171] Forked 2949 +(2948) found +(2949) found +[3170] Forked 2950 +[3169] Forked 2951 +(2950) found +(2951) found +[3168] Forked 2952 +[3167] Forked 2953 +(2952) found +(2953) found +[3166] Forked 2956 +[3165] Forked 2957 +(2956) found +(2957) found +[3164] Forked 2958 +[3163] Forked 2959 +(2958) found +(2959) found +[3162] Forked 2960 +[3161] Forked 2961 +(2960) found +(2961) found +[3160] Forked 2962 +[3159] Forked 2963 +(2962) found +(2963) found +[3158] Forked 2964 +[3157] Forked 2965 +(2964) found +(2965) found +[3156] Forked 2966 +[3155] Forked 2967 +(2966) found +(2967) found +[3154] Forked 2968 +[3153] Forked 2969 +(2968) found +(2969) found +[3152] Forked 2970 +[3151] Forked 2971 +(2970) found +(2971) found +[3150] Forked 2972 +[3149] Forked 2973 +(2972) found +(2973) found +[3148] Forked 2974 +[3147] Forked 2975 +(2974) found +(2975) found +[3146] Forked 2976 +[3145] Forked 2977 +(2976) found +(2977) found +[3144] Forked 2978 +[3143] Forked 2979 +(2978) found +(2979) found +[3142] Forked 2980 +[3141] Forked 2981 +(2980) found +(2981) found +[3140] Forked 2983 +[3139] Forked 2984 +(2983) found +(2984) found +[3138] Forked 2987 +[3137] Forked 2992 +(2987) found +(2992) found +[3136] Forked 3049 +[3135] Forked 3050 +(3049) found +(3050) found +[3134] Forked 3051 +[3133] Forked 3052 +(3051) found +(3052) found +[3132] Forked 3053 +[3131] Forked 3054 +(3053) found +(3054) found +[3130] Forked 3055 +[3129] Forked 3056 +(3055) found +(3056) found +[3128] Forked 3057 +[3127] Forked 3058 +(3057) found +(3058) found +[3126] Forked 3059 +(3059) found +[3125] Forked 3060 +(3060) found +[3124] Forked 3061 +(3061) found +[3123] Forked 3062 +(3062) found +[3122] Forked 3063 +(3063) found +[3121] Forked 3064 +(3064) found +[3120] Forked 3065 +(3065) found +[3119] Forked 3066 +(3066) found +[3118] Forked 3067 +(3067) found +[3117] Forked 3068 +(3068) found +[3116] Forked 3069 +(3069) found +[3115] Forked 3070 +(3070) found +[3114] Forked 3071 +(3071) found +[3113] Forked 3072 +(3072) found +[3112] Forked 3073 +(3073) found +[3111] Forked 3074 +(3074) found +[3110] Forked 3075 +(3075) found +[3109] Forked 3076 +(3076) found +[3108] Forked 3077 +(3077) found +[3107] Forked 3078 +(3078) found +[3106] Forked 3079 +(3079) found +[3105] Forked 3080 +(3080) found +[3104] Forked 3081 +(3081) found +[3103] Forked 3082 +(3082) found +[3102] Forked 3083 +(3083) found +[3101] Forked 3085 +(3085) found +[3100] Forked 3086 +(3086) found +[3099] Forked 3087 +(3087) found +[3098] Forked 3088 +(3088) found +[3097] Forked 3089 +(3089) found +[3096] Forked 3090 +(3090) found +[3095] Forked 3091 +(3091) found +[3094] Forked 3093 +(3093) found +[3093] Forked 3094 +(3094) found +[3092] Forked 3095 +(3095) found +[3091] Forked 3096 +[3090] Forked 3097 +(3096) found +(3097) found +[3089] Forked 3098 +[3088] Forked 3099 +(3098) found +(3099) found +[3087] Forked 3101 +[3086] Forked 3102 +(3101) found +(3102) found +[3085] Forked 3103 +[3084] Forked 3104 +(3103) found +(3104) found +[3083] Forked 3105 +[3082] Forked 3106 +(3105) found +(3106) found +[3081] Forked 3107 +[3080] Forked 3108 +(3107) found +(3108) found +[3079] Forked 3109 +[3078] Forked 3110 +(3109) found +(3110) found +[3077] Forked 3112 +[3076] Forked 3113 +(3112) found +(3113) found +[3075] Forked 3114 +[3074] Forked 3115 +(3114) found +(3115) found +[3073] Forked 3116 +[3072] Forked 3117 +(3116) found +(3117) found +[3071] Forked 3118 +[3070] Forked 3119 +(3118) found +(3119) found +[3069] Forked 3120 +[3068] Forked 3121 +(3120) found +(3121) found +[3067] Forked 3123 +[3066] Forked 3124 +(3123) found +(3124) found +[3065] Forked 3126 +[3064] Forked 3128 +(3126) found +(3128) found +[3063] Forked 3129 +[3062] Forked 3130 +(3129) found +(3130) found +[3061] Forked 3131 +[3060] Forked 3132 +(3131) found +(3132) found +[3059] Forked 3133 +[3058] Forked 3134 +(3133) found +(3134) found +[3057] Forked 3135 +[3056] Forked 3136 +(3135) found +(3136) found +[3055] Forked 3137 +[3054] Forked 3138 +(3137) found +(3138) found +[3053] Forked 3139 +[3052] Forked 3140 +(3139) found +(3140) found +[3051] Forked 3141 +[3050] Forked 3142 +(3141) found +(3142) found +[3049] Forked 3143 +[3048] Forked 3144 +(3143) found +(3144) found +[3047] Forked 3145 +[3046] Forked 3147 +(3145) found +(3147) found +[3045] Forked 3148 +[3044] Forked 3149 +(3148) found +(3149) found +[3043] Forked 3150 +(3150) found +[3042] Forked 3151 +(3151) found +[3041] Forked 3152 +(3152) found +[3040] Forked 3153 +(3153) found +[3039] Forked 3154 +(3154) found +[3038] Forked 3155 +(3155) found +[3037] Forked 3156 +(3156) found +[3036] Forked 3157 +(3157) found +[3035] Forked 3158 +(3158) found +[3034] Forked 3159 +(3159) found +[3033] Forked 3160 +(3160) found +[3032] Forked 3163 +(3163) found +[3031] Forked 3164 +(3164) found +[3030] Forked 3165 +(3165) found +[3029] Forked 3166 +(3166) found +[3028] Forked 3167 +(3167) found +[3027] Forked 3168 +(3168) found +[3026] Forked 3169 +(3169) found +[3025] Forked 3170 +(3170) found +[3024] Forked 3171 +(3171) found +[3023] Forked 3172 +(3172) found +[3022] Forked 3173 +(3173) found +[3021] Forked 3174 +(3174) found +[3020] Forked 3175 +(3175) found +[3019] Forked 3176 +(3176) found +[3018] Forked 3177 +(3177) found +[3017] Forked 3178 +(3178) found +[3016] Forked 3179 +(3179) found +[3015] Forked 3180 +(3180) found +[3014] Forked 3181 +(3181) found +[3013] Forked 3182 +(3182) found +[3012] Forked 3183 +(3183) found +[3011] Forked 3184 +(3184) found +[3010] Forked 3185 +(3185) found +[3009] Forked 3186 +(3186) found +[3008] Forked 3187 +[3007] Forked 3188 +(3187) found +(3188) found +[3006] Forked 3189 +[3005] Forked 3190 +(3189) found +(3190) found +[3004] Forked 3191 +[3003] Forked 3192 +(3191) found +(3192) found +[3002] Forked 3195 +[3001] Forked 3196 +(3195) found +(3196) found +[3000] Forked 3197 +[2999] Forked 3198 +(3197) found +(3198) found +[2998] Forked 3199 +[2997] Forked 3200 +(3199) found +(3200) found +[2996] Forked 3201 +[2995] Forked 3202 +(3201) found +(3202) found +[2994] Forked 3203 +[2993] Forked 3204 +(3203) found +(3204) found +[2992] Forked 3205 +[2991] Forked 3206 +(3205) found +(3206) found +[2990] Forked 3207 +[2989] Forked 3208 +(3207) found +(3208) found +[2988] Forked 3209 +[2987] Forked 3210 +(3209) found +(3210) found +[2986] Forked 3211 +[2985] Forked 3212 +(3211) found +(3212) found +[2984] Forked 3213 +[2983] Forked 3214 +(3213) found +(3214) found +[2982] Forked 3215 +[2981] Forked 3216 +(3215) found +(3216) found +[2980] Forked 3217 +[2979] Forked 3218 +(3217) found +(3218) found +[2978] Forked 3219 +[2977] Forked 3220 +(3219) found +(3220) found +[2976] Forked 3221 +[2975] Forked 3222 +(3221) found +(3222) found +[2974] Forked 3223 +[2973] Forked 3224 +(3223) found +(3224) found +[2972] Forked 3225 +[2971] Forked 3227 +(3225) found +(3227) found +[2970] Forked 3228 +[2969] Forked 3229 +(3228) found +(3229) found +[2968] Forked 3230 +[2967] Forked 3231 +(3230) found +(3231) found +[2966] Forked 3232 +[2965] Forked 3233 +(3232) found +(3233) found +[2964] Forked 3234 +[2963] Forked 3235 +(3234) found +(3235) found +[2962] Forked 3236 +(3236) found +[2961] Forked 3237 +(3237) found +[2960] Forked 3238 +(3238) found +[2959] Forked 3239 +(3239) found +[2958] Forked 3240 +(3240) found +[2957] Forked 3241 +(3241) found +[2956] Forked 3242 +(3242) found +[2955] Forked 3243 +(3243) found +[2954] Forked 3244 +(3244) found +[2953] Forked 3245 +(3245) found +[2952] Forked 3246 +(3246) found +[2951] Forked 3247 +(3247) found +[2950] Forked 3249 +(3249) found +[2949] Forked 3250 +(3250) found +[2948] Forked 3251 +(3251) found +[2947] Forked 3252 +(3252) found +[2946] Forked 3253 +(3253) found +[2945] Forked 3254 +(3254) found +[2944] Forked 3255 +(3255) found +[2943] Forked 3256 +(3256) found +[2942] Forked 3257 +(3257) found +[2941] Forked 3258 +(3258) found +[2940] Forked 3259 +(3259) found +[2939] Forked 3260 +(3260) found +[2938] Forked 3261 +(3261) found +[2937] Forked 3262 +(3262) found +[2936] Forked 3263 +(3263) found +[2935] Forked 3264 +(3264) found +[2934] Forked 3265 +(3265) found +[2933] Forked 3266 +(3266) found +[2932] Forked 3267 +(3267) found +[2931] Forked 3268 +(3268) found +[2930] Forked 3269 +(3269) found +[2929] Forked 3270 +(3270) found +[2928] Forked 3271 +[2927] Forked 3272 +(3271) found +(3272) found +[2926] Forked 3273 +[2925] Forked 3274 +(3273) found +(3274) found +[2924] Forked 3275 +[2923] Forked 3276 +(3275) found +(3276) found +[2922] Forked 3277 +[2921] Forked 3278 +(3277) found +(3278) found +[2920] Forked 3279 +[2919] Forked 3280 +(3279) found +(3280) found +[2918] Forked 3281 +[2917] Forked 3282 +(3281) found +(3282) found +[2916] Forked 3283 +[2915] Forked 3284 +(3283) found +(3284) found +[2914] Forked 3285 +[2913] Forked 3286 +(3285) found +(3286) found +[2912] Forked 3287 +[2911] Forked 3288 +(3287) found +(3288) found +[2910] Forked 3289 +[2909] Forked 3290 +(3289) found +(3290) found +[2908] Forked 3291 +[2907] Forked 3292 +(3291) found +(3292) found +[2906] Forked 3293 +[2905] Forked 3294 +(3293) found +(3294) found +[2904] Forked 3295 +[2903] Forked 3296 +(3295) found +(3296) found +[2902] Forked 3297 +[2901] Forked 3298 +(3297) found +(3298) found +[2900] Forked 3299 +[2899] Forked 3300 +(3299) found +(3300) found +[2898] Forked 3301 +[2897] Forked 3302 +(3301) found +(3302) found +[2896] Forked 3303 +[2895] Forked 3304 +(3303) found +(3304) found +[2894] Forked 3305 +[2893] Forked 3306 +(3305) found +(3306) found +[2892] Forked 3307 +[2891] Forked 3308 +(3307) found +(3308) found +[2890] Forked 3309 +[2889] Forked 3310 +(3309) found +(3310) found +[2888] Forked 3311 +[2887] Forked 3312 +(3311) found +(3312) found +[2886] Forked 3313 +[2885] Forked 3314 +(3313) found +(3314) found +[2884] Forked 3315 +[2883] Forked 3317 +(3315) found +(3317) found +[2882] Forked 3318 +[2881] Forked 3319 +(3318) found +(3319) found +[2880] Forked 3320 +[2879] Forked 3321 +(3320) found +(3321) found +[2878] Forked 3322 +[2877] Forked 3323 +(3322) found +(3323) found +[2876] Forked 3324 +[2875] Forked 3325 +(3324) found +(3325) found +[2874] Forked 3326 +[2873] Forked 3327 +(3326) found +(3327) found +[2872] Forked 3333 +[2871] Forked 3334 +(3333) found +(3334) found +[2870] Forked 3335 +[2869] Forked 3336 +(3335) found +(3336) found +[2868] Forked 3337 +[2867] Forked 3338 +(3337) found +(3338) found +[2866] Forked 3339 +[2865] Forked 3340 +(3339) found +(3340) found +[2864] Forked 3341 +[2863] Forked 3342 +(3341) found +(3342) found +[2862] Forked 3343 +[2861] Forked 3344 +(3343) found +(3344) found +[2860] Forked 3345 +[2859] Forked 3347 +(3345) found +(3347) found +[2858] Forked 3348 +[2857] Forked 3349 +(3348) found +(3349) found +[2856] Forked 3350 +[2855] Forked 3351 +(3350) found +(3351) found +[2854] Forked 3352 +[2853] Forked 3353 +(3352) found +(3353) found +[2852] Forked 3354 +[2851] Forked 3355 +(3354) found +(3355) found +[2850] Forked 3356 +[2849] Forked 3357 +(3356) found +(3357) found +[2848] Forked 3358 +[2847] Forked 3359 +(3358) found +(3359) found +[2846] Forked 3360 +[2845] Forked 3361 +(3360) found +(3361) found +[2844] Forked 3362 +[2843] Forked 3363 +(3362) found +(3363) found +[2842] Forked 3364 +[2841] Forked 3366 +(3364) found +(3366) found +[2840] Forked 3367 +(3367) found +[2839] Forked 3368 +(3368) found +[2838] Forked 3369 +(3369) found +[2837] Forked 3370 +(3370) found +[2836] Forked 3371 +(3371) found +[2835] Forked 3372 +(3372) found +[2834] Forked 3373 +(3373) found +[2833] Forked 3382 +(3382) found +[2832] Forked 3383 +(3383) found +[2831] Forked 3384 +(3384) found +[2830] Forked 3385 +(3385) found +[2829] Forked 3386 +(3386) found +[2828] Forked 3387 +(3387) found +[2827] Forked 3388 +(3388) found +[2826] Forked 3389 +(3389) found +[2825] Forked 3390 +(3390) found +[2824] Forked 3391 +(3391) found +[2823] Forked 3392 +(3392) found +[2822] Forked 3393 +(3393) found +[2821] Forked 3394 +(3394) found +[2820] Forked 3395 +(3395) found +[2819] Forked 3396 +(3396) found +[2818] Forked 3397 +(3397) found +[2817] Forked 3398 +(3398) found +[2816] Forked 3399 +(3399) found +[2815] Forked 3401 +(3401) found +[2814] Forked 3402 +(3402) found +[2813] Forked 3403 +(3403) found +[2812] Forked 3404 +(3404) found +[2811] Forked 3405 +(3405) found +[2810] Forked 3406 +(3406) found +[2809] Forked 3407 +(3407) found +[2808] Forked 3408 +(3408) found +[2807] Forked 3409 +(3409) found +[2806] Forked 3410 +(3410) found +[2805] Forked 3411 +(3411) found +[2804] Forked 3412 +(3412) found +[2803] Forked 3413 +(3413) found +[2802] Forked 3414 +(3414) found +[2801] Forked 3415 +[2800] Forked 3416 +(3415) found +(3416) found +[2799] Forked 3417 +[2798] Forked 3418 +(3417) found +(3418) found +[2797] Forked 3419 +[2796] Forked 3420 +(3419) found +(3420) found +[2795] Forked 3421 +[2794] Forked 3422 +(3421) found +(3422) found +[2793] Forked 3423 +[2792] Forked 3424 +(3423) found +(3424) found +[2791] Forked 3425 +[2790] Forked 3426 +(3425) found +(3426) found +[2789] Forked 3427 +[2788] Forked 3428 +(3427) found +(3428) found +[2787] Forked 3429 +[2786] Forked 3430 +(3429) found +(3430) found +[2785] Forked 3431 +[2784] Forked 3432 +(3431) found +(3432) found +[2783] Forked 3433 +[2782] Forked 3434 +(3433) found +(3434) found +[2781] Forked 3435 +[2780] Forked 3436 +(3435) found +(3436) found +[2779] Forked 3437 +[2778] Forked 3438 +(3437) found +(3438) found +[2777] Forked 3439 +[2776] Forked 3440 +(3439) found +(3440) found +[2775] Forked 3441 +[2774] Forked 3442 +(3441) found +(3442) found +[2773] Forked 3443 +[2772] Forked 3444 +(3443) found +(3444) found +[2771] Forked 3445 +[2770] Forked 3446 +(3445) found +(3446) found +[2769] Forked 3447 +[2768] Forked 3448 +(3447) found +(3448) found +[2767] Forked 3449 +[2766] Forked 3450 +(3449) found +(3450) found +[2765] Forked 3451 +[2764] Forked 3452 +(3451) found +(3452) found +[2763] Forked 3453 +[2762] Forked 3454 +(3453) found +(3454) found +[2761] Forked 3455 +[2760] Forked 3456 +(3455) found +(3456) found +[2759] Forked 3457 +[2758] Forked 3458 +(3457) found +(3458) found +[2757] Forked 3459 +(3459) found +[2756] Forked 3460 +(3460) found +[2755] Forked 3461 +(3461) found +[2754] Forked 3462 +(3462) found +[2753] Forked 3463 +(3463) found +[2752] Forked 3464 +(3464) found +[2751] Forked 3465 +(3465) found +[2750] Forked 3466 +(3466) found +[2749] Forked 3467 +(3467) found +[2748] Forked 3468 +(3468) found +[2747] Forked 3469 +(3469) found +[2746] Forked 3470 +(3470) found +[2745] Forked 3471 +(3471) found +[2744] Forked 3472 +(3472) found +[2743] Forked 3473 +(3473) found +[2742] Forked 3474 +(3474) found +[2741] Forked 3475 +(3475) found +[2740] Forked 3476 +(3476) found +[2739] Forked 3477 +(3477) found +[2738] Forked 3478 +(3478) found +[2737] Forked 3479 +(3479) found +[2736] Forked 3480 +(3480) found +[2735] Forked 3481 +(3481) found +[2734] Forked 3482 +(3482) found +[2733] Forked 3483 +(3483) found +[2732] Forked 3484 +(3484) found +[2731] Forked 3485 +(3485) found +[2730] Forked 3486 +(3486) found +[2729] Forked 3487 +(3487) found +[2728] Forked 3488 +(3488) found +[2727] Forked 3489 +(3489) found +[2726] Forked 3490 +(3490) found +[2725] Forked 3491 +(3491) found +[2724] Forked 3492 +(3492) found +[2723] Forked 3493 +(3493) found +[2722] Forked 3494 +(3494) found +[2721] Forked 3495 +(3495) found +[2720] Forked 3496 +[2719] Forked 3497 +(3496) found +(3497) found +[2718] Forked 3498 +[2717] Forked 3499 +(3498) found +(3499) found +[2716] Forked 3500 +[2715] Forked 3501 +(3500) found +(3501) found +[2714] Forked 3502 +[2713] Forked 3503 +(3502) found +(3503) found +[2712] Forked 3504 +[2711] Forked 3505 +(3504) found +(3505) found +[2710] Forked 3506 +[2709] Forked 3507 +(3506) found +(3507) found +[2708] Forked 3508 +[2707] Forked 3509 +(3508) found +(3509) found +[2706] Forked 3510 +[2705] Forked 3511 +(3510) found +(3511) found +[2704] Forked 3512 +[2703] Forked 3513 +(3512) found +(3513) found +[2702] Forked 3514 +[2701] Forked 3515 +(3514) found +(3515) found +[2700] Forked 3516 +[2699] Forked 3517 +(3516) found +(3517) found +[2698] Forked 3518 +[2697] Forked 3519 +(3518) found +(3519) found +[2696] Forked 3520 +[2695] Forked 3521 +(3520) found +(3521) found +[2694] Forked 3522 +[2693] Forked 3523 +(3522) found +(3523) found +[2692] Forked 3524 +[2691] Forked 3525 +(3524) found +(3525) found +[2690] Forked 3526 +[2689] Forked 3527 +(3526) found +(3527) found +[2688] Forked 3528 +[2687] Forked 3529 +(3528) found +(3529) found +[2686] Forked 3530 +[2685] Forked 3531 +(3530) found +(3531) found +[2684] Forked 3532 +[2683] Forked 3533 +(3532) found +(3533) found +[2682] Forked 3534 +[2681] Forked 3535 +(3534) found +(3535) found +[2680] Forked 3536 +[2679] Forked 3537 +(3536) found +(3537) found +[2678] Forked 3538 +[2677] Forked 3539 +(3538) found +(3539) found +[2676] Forked 3540 +(3540) found +[2675] Forked 3541 +(3541) found +[2674] Forked 3542 +(3542) found +[2673] Forked 3543 +(3543) found +[2672] Forked 3544 +(3544) found +[2671] Forked 3545 +(3545) found +[2670] Forked 3546 +(3546) found +[2669] Forked 3547 +(3547) found +[2668] Forked 3548 +(3548) found +[2667] Forked 3549 +(3549) found +[2666] Forked 3550 +(3550) found +[2665] Forked 3551 +(3551) found +[2664] Forked 3552 +(3552) found +[2663] Forked 3553 +(3553) found +[2662] Forked 3554 +(3554) found +[2661] Forked 3555 +(3555) found +[2660] Forked 3556 +(3556) found +[2659] Forked 3557 +(3557) found +[2658] Forked 3558 +(3558) found +[2657] Forked 3559 +(3559) found +[2656] Forked 3560 +(3560) found +[2655] Forked 3561 +(3561) found +[2654] Forked 3562 +(3562) found +[2653] Forked 3563 +(3563) found +[2652] Forked 3564 +(3564) found +[2651] Forked 3565 +(3565) found +[2650] Forked 3566 +(3566) found +[2649] Forked 3567 +(3567) found +[2648] Forked 3568 +(3568) found +[2647] Forked 3569 +(3569) found +[2646] Forked 3570 +(3570) found +[2645] Forked 3571 +(3571) found +[2644] Forked 3572 +(3572) found +[2643] Forked 3573 +(3573) found +[2642] Forked 3574 +(3574) found +[2641] Forked 3575 +(3575) found +[2640] Forked 3576 +(3576) found +[2639] Forked 3577 +[2638] Forked 3578 +(3577) found +(3578) found +[2637] Forked 3579 +[2636] Forked 3580 +(3579) found +(3580) found +[2635] Forked 3581 +[2634] Forked 3582 +(3581) found +(3582) found +[2633] Forked 3583 +[2632] Forked 3584 +(3583) found +(3584) found +[2631] Forked 3585 +[2630] Forked 3586 +(3585) found +(3586) found +[2629] Forked 3587 +[2628] Forked 3588 +(3587) found +(3588) found +[2627] Forked 3589 +[2626] Forked 3590 +(3589) found +(3590) found +[2625] Forked 3591 +[2624] Forked 3592 +(3591) found +(3592) found +[2623] Forked 3593 +[2622] Forked 3594 +(3593) found +(3594) found +[2621] Forked 3595 +[2620] Forked 3596 +(3595) found +(3596) found +[2619] Forked 3597 +[2618] Forked 3598 +(3597) found +(3598) found +[2617] Forked 3599 +[2616] Forked 3600 +(3599) found +(3600) found +[2615] Forked 3601 +[2614] Forked 3602 +(3601) found +(3602) found +[2613] Forked 3603 +[2612] Forked 3604 +(3603) found +(3604) found +[2611] Forked 3605 +[2610] Forked 3606 +(3605) found +(3606) found +[2609] Forked 3607 +[2608] Forked 3608 +(3607) found +(3608) found +[2607] Forked 3609 +[2606] Forked 3610 +(3609) found +(3610) found +[2605] Forked 3611 +[2604] Forked 3612 +(3611) found +(3612) found +[2603] Forked 3613 +[2602] Forked 3614 +(3613) found +(3614) found +[2601] Forked 3615 +[2600] Forked 3616 +(3615) found +(3616) found +[2599] Forked 3617 +[2598] Forked 3618 +(3617) found +(3618) found +[2597] Forked 3619 +[2596] Forked 3620 +(3619) found +(3620) found +[2595] Forked 3621 +(3621) found +[2594] Forked 3622 +(3622) found +[2593] Forked 3623 +(3623) found +[2592] Forked 3624 +(3624) found +[2591] Forked 3625 +(3625) found +[2590] Forked 3626 +(3626) found +[2589] Forked 3627 +(3627) found +[2588] Forked 3628 +(3628) found +[2587] Forked 3629 +(3629) found +[2586] Forked 3630 +(3630) found +[2585] Forked 3631 +(3631) found +[2584] Forked 3632 +(3632) found +[2583] Forked 3633 +(3633) found +[2582] Forked 3634 +(3634) found +[2581] Forked 3635 +(3635) found +[2580] Forked 3636 +(3636) found +[2579] Forked 3637 +(3637) found +[2578] Forked 3638 +(3638) found +[2577] Forked 3639 +(3639) found +[2576] Forked 3640 +(3640) found +[2575] Forked 3641 +(3641) found +[2574] Forked 3642 +(3642) found +[2573] Forked 3643 +(3643) found +[2572] Forked 3644 +(3644) found +[2571] Forked 3645 +(3645) found +[2570] Forked 3646 +(3646) found +[2569] Forked 3647 +(3647) found +[2568] Forked 3648 +(3648) found +[2567] Forked 3649 +(3649) found +[2566] Forked 3650 +(3650) found +[2565] Forked 3651 +(3651) found +[2564] Forked 3652 +(3652) found +[2563] Forked 3653 +(3653) found +[2562] Forked 3654 +(3654) found +[2561] Forked 3655 +(3655) found +[2560] Forked 3656 +(3656) found +[2559] Forked 3658 +(3658) found +[2558] Forked 3659 +[2557] Forked 3660 +(3659) found +(3660) found +[2556] Forked 3661 +[2555] Forked 3662 +(3661) found +(3662) found +[2554] Forked 3663 +[2553] Forked 3664 +(3663) found +(3664) found +[2552] Forked 3665 +[2551] Forked 3666 +(3665) found +(3666) found +[2550] Forked 3667 +[2549] Forked 3669 +(3667) found +(3669) found +[2548] Forked 3670 +[2547] Forked 3671 +(3670) found +(3671) found +[2546] Forked 3672 +[2545] Forked 3673 +(3672) found +(3673) found +[2544] Forked 3674 +[2543] Forked 3675 +(3674) found +(3675) found +[2542] Forked 3676 +[2541] Forked 3677 +(3676) found +(3677) found +[2540] Forked 3678 +[2539] Forked 3679 +(3678) found +(3679) found +[2538] Forked 3680 +[2537] Forked 3681 +(3680) found +(3681) found +[2536] Forked 3682 +[2535] Forked 3683 +(3682) found +(3683) found +[2534] Forked 3684 +[2533] Forked 3685 +(3684) found +(3685) found +[2532] Forked 3686 +[2531] Forked 3687 +(3686) found +(3687) found +[2530] Forked 3688 +[2529] Forked 3689 +(3688) found +(3689) found +[2528] Forked 3690 +[2527] Forked 3691 +(3690) found +(3691) found +[2526] Forked 3692 +[2525] Forked 3693 +(3692) found +(3693) found +[2524] Forked 3694 +[2523] Forked 3695 +(3694) found +(3695) found +[2522] Forked 3696 +[2521] Forked 3697 +(3696) found +(3697) found +[2520] Forked 3698 +[2519] Forked 3700 +(3698) found +(3700) found +[2518] Forked 3701 +(3701) found +[2517] Forked 3702 +(3702) found +[2516] Forked 3703 +(3703) found +[2515] Forked 3704 +(3704) found +[2514] Forked 3705 +(3705) found +[2513] Forked 3706 +(3706) found +[2512] Forked 3707 +(3707) found +[2511] Forked 3708 +(3708) found +[2510] Forked 3709 +(3709) found +[2509] Forked 3710 +(3710) found +[2508] Forked 3711 +(3711) found +[2507] Forked 3712 +(3712) found +[2506] Forked 3713 +(3713) found +[2505] Forked 3714 +(3714) found +[2504] Forked 3715 +(3715) found +[2503] Forked 3716 +(3716) found +[2502] Forked 3717 +(3717) found +[2501] Forked 3718 +(3718) found +[2500] Forked 3719 +(3719) found +[2499] Forked 3720 +(3720) found +[2498] Forked 3721 +(3721) found +[2497] Forked 3722 +(3722) found +[2496] Forked 3723 +(3723) found +[2495] Forked 3724 +(3724) found +[2494] Forked 3725 +(3725) found +[2493] Forked 3726 +(3726) found +[2492] Forked 3727 +(3727) found +[2491] Forked 3728 +(3728) found +[2490] Forked 3729 +(3729) found +[2489] Forked 3730 +(3730) found +[2488] Forked 3731 +(3731) found +[2487] Forked 3732 +(3732) found +[2486] Forked 3733 +(3733) found +[2485] Forked 3734 +(3734) found +[2484] Forked 3735 +(3735) found +[2483] Forked 3736 +(3736) found +[2482] Forked 3737 +(3737) found +[2481] Forked 3738 +(3738) found +[2480] Forked 3739 +(3739) found +[2479] Forked 3740 +[2478] Forked 3741 +(3740) found +(3741) found +[2477] Forked 3742 +[2476] Forked 3743 +(3742) found +(3743) found +[2475] Forked 3744 +[2474] Forked 3745 +(3744) found +(3745) found +[2473] Forked 3746 +[2472] Forked 3747 +(3746) found +(3747) found +[2471] Forked 3748 +[2470] Forked 3749 +(3748) found +(3749) found +[2469] Forked 3750 +[2468] Forked 3751 +(3750) found +(3751) found +[2467] Forked 3752 +[2466] Forked 3753 +(3752) found +(3753) found +[2465] Forked 3754 +[2464] Forked 3755 +(3754) found +(3755) found +[2463] Forked 3756 +[2462] Forked 3757 +(3756) found +(3757) found +[2461] Forked 3758 +[2460] Forked 3759 +(3758) found +(3759) found +[2459] Forked 3760 +[2458] Forked 3761 +(3760) found +(3761) found +[2457] Forked 3762 +[2456] Forked 3763 +(3762) found +(3763) found +[2455] Forked 3764 +[2454] Forked 3765 +(3764) found +(3765) found +[2453] Forked 3766 +[2452] Forked 3767 +(3766) found +(3767) found +[2451] Forked 3768 +[2450] Forked 3769 +(3768) found +(3769) found +[2449] Forked 3770 +[2448] Forked 3771 +(3770) found +(3771) found +[2447] Forked 3772 +[2446] Forked 3773 +(3772) found +(3773) found +[2445] Forked 3774 +[2444] Forked 3775 +(3774) found +(3775) found +[2443] Forked 3776 +[2442] Forked 3778 +(3776) found +(3778) found +[2441] Forked 3779 +(3779) found +[2440] Forked 3780 +(3780) found +[2439] Forked 3781 +(3781) found +[2438] Forked 3782 +(3782) found +[2437] Forked 3783 +(3783) found +[2436] Forked 3784 +(3784) found +[2435] Forked 3785 +(3785) found +[2434] Forked 3786 +(3786) found +[2433] Forked 3787 +(3787) found +[2432] Forked 3788 +(3788) found +[2431] Forked 3789 +(3789) found +[2430] Forked 3790 +(3790) found +[2429] Forked 3791 +(3791) found +[2428] Forked 3792 +(3792) found +[2427] Forked 3793 +(3793) found +[2426] Forked 3794 +(3794) found +[2425] Forked 3795 +(3795) found +[2424] Forked 3796 +(3796) found +[2423] Forked 3797 +(3797) found +[2422] Forked 3798 +(3798) found +[2421] Forked 3799 +(3799) found +[2420] Forked 3800 +(3800) found +[2419] Forked 3801 +(3801) found +[2418] Forked 3802 +(3802) found +[2417] Forked 3803 +(3803) found +[2416] Forked 3804 +(3804) found +[2415] Forked 3805 +(3805) found +[2414] Forked 3806 +(3806) found +[2413] Forked 3807 +(3807) found +[2412] Forked 3808 +(3808) found +[2411] Forked 3809 +(3809) found +[2410] Forked 3810 +(3810) found +[2409] Forked 3811 +(3811) found +[2408] Forked 3812 +(3812) found +[2407] Forked 3813 +(3813) found +[2406] Forked 3814 +(3814) found +[2405] Forked 3815 +(3815) found +[2404] Forked 3816 +(3816) found +[2403] Forked 3817 +[2402] Forked 3818 +(3817) found +(3818) found +[2401] Forked 3819 +[2400] Forked 3820 +(3819) found +(3820) found +[2399] Forked 3821 +[2398] Forked 3822 +(3821) found +(3822) found +[2397] Forked 3823 +[2396] Forked 3824 +(3823) found +(3824) found +[2395] Forked 3825 +[2394] Forked 3826 +(3825) found +(3826) found +[2393] Forked 3827 +[2392] Forked 3828 +(3827) found +(3828) found +[2391] Forked 3829 +[2390] Forked 3830 +(3829) found +(3830) found +[2389] Forked 3831 +[2388] Forked 3832 +(3831) found +(3832) found +[2387] Forked 3833 +[2386] Forked 3834 +(3833) found +(3834) found +[2385] Forked 3835 +[2384] Forked 3836 +(3835) found +(3836) found +[2383] Forked 3837 +[2382] Forked 3838 +(3837) found +(3838) found +[2381] Forked 3839 +[2380] Forked 3840 +(3839) found +(3840) found +[2379] Forked 3841 +[2378] Forked 3842 +(3841) found +(3842) found +[2377] Forked 3843 +[2376] Forked 3844 +(3843) found +(3844) found +[2375] Forked 3845 +[2374] Forked 3846 +(3845) found +(3846) found +[2373] Forked 3847 +[2372] Forked 3848 +(3847) found +(3848) found +[2371] Forked 3849 +[2370] Forked 3850 +(3849) found +(3850) found +[2369] Forked 3851 +[2368] Forked 3852 +(3851) found +(3852) found +[2367] Forked 3853 +[2366] Forked 3854 +(3853) found +(3854) found +[2365] Forked 3855 +[2364] Forked 3856 +(3855) found +(3856) found +[2363] Forked 3857 +[2362] Forked 3858 +(3857) found +(3858) found +[2361] Forked 3859 +[2360] Forked 3860 +(3859) found +(3860) found +[2359] Forked 3861 +(3861) found +[2358] Forked 3862 +(3862) found +[2357] Forked 3863 +(3863) found +[2356] Forked 3864 +(3864) found +[2355] Forked 3865 +(3865) found +[2354] Forked 3866 +(3866) found +[2353] Forked 3867 +(3867) found +[2352] Forked 3868 +(3868) found +[2351] Forked 3869 +(3869) found +[2350] Forked 3870 +(3870) found +[2349] Forked 3871 +(3871) found +[2348] Forked 3872 +(3872) found +[2347] Forked 3873 +(3873) found +[2346] Forked 3874 +(3874) found +[2345] Forked 3875 +(3875) found +[2344] Forked 3876 +(3876) found +[2343] Forked 3877 +(3877) found +[2342] Forked 3878 +(3878) found +[2341] Forked 3879 +(3879) found +[2340] Forked 3880 +(3880) found +[2339] Forked 3881 +(3881) found +[2338] Forked 3882 +(3882) found +[2337] Forked 3883 +(3883) found +[2336] Forked 3884 +(3884) found +[2335] Forked 3885 +(3885) found +[2334] Forked 3886 +(3886) found +[2333] Forked 3887 +(3887) found +[2332] Forked 3888 +(3888) found +[2331] Forked 3889 +(3889) found +[2330] Forked 3890 +(3890) found +[2329] Forked 3891 +(3891) found +[2328] Forked 3892 +(3892) found +[2327] Forked 3893 +(3893) found +[2326] Forked 3894 +(3894) found +[2325] Forked 3895 +(3895) found +[2324] Forked 3896 +(3896) found +[2323] Forked 3897 +(3897) found +[2322] Forked 3898 +[2321] Forked 3899 +(3898) found +(3899) found +[2320] Forked 3900 +[2319] Forked 3901 +(3900) found +(3901) found +[2318] Forked 3902 +[2317] Forked 3903 +(3902) found +(3903) found +[2316] Forked 3904 +[2315] Forked 3905 +(3904) found +(3905) found +[2314] Forked 3906 +[2313] Forked 3907 +(3906) found +(3907) found +[2312] Forked 3908 +[2311] Forked 3909 +(3908) found +(3909) found +[2310] Forked 3910 +[2309] Forked 3911 +(3910) found +(3911) found +[2308] Forked 3912 +[2307] Forked 3913 +(3912) found +(3913) found +[2306] Forked 3914 +[2305] Forked 3915 +(3914) found +(3915) found +[2304] Forked 3916 +[2303] Forked 3917 +(3916) found +(3917) found +[2302] Forked 3918 +[2301] Forked 3919 +(3918) found +(3919) found +[2300] Forked 3920 +[2299] Forked 3921 +(3920) found +(3921) found +[2298] Forked 3922 +[2297] Forked 3923 +(3922) found +(3923) found +[2296] Forked 3924 +[2295] Forked 3926 +(3924) found +(3926) found +[2294] Forked 3927 +(3927) found +[2293] Forked 3928 +(3928) found +[2292] Forked 3929 +(3929) found +[2291] Forked 3930 +(3930) found +[2290] Forked 3931 +(3931) found +[2289] Forked 3932 +(3932) found +[2288] Forked 3933 +(3933) found +[2287] Forked 3934 +(3934) found +[2286] Forked 3935 +(3935) found +[2285] Forked 3936 +(3936) found +[2284] Forked 3937 +(3937) found +[2283] Forked 3938 +(3938) found +[2282] Forked 3939 +(3939) found +[2281] Forked 3940 +(3940) found +[2280] Forked 3941 +(3941) found +[2279] Forked 3942 +(3942) found +[2278] Forked 3943 +(3943) found +[2277] Forked 3944 +(3944) found +[2276] Forked 3945 +(3945) found +[2275] Forked 3946 +(3946) found +[2274] Forked 3947 +(3947) found +[2273] Forked 3948 +(3948) found +[2272] Forked 3949 +(3949) found +[2271] Forked 3950 +(3950) found +[2270] Forked 3951 +(3951) found +[2269] Forked 3952 +(3952) found +[2268] Forked 3953 +(3953) found +[2267] Forked 3954 +(3954) found +[2266] Forked 3955 +(3955) found +[2265] Forked 3956 +(3956) found +[2264] Forked 3957 +(3957) found +[2263] Forked 3958 +(3958) found +[2262] Forked 3959 +(3959) found +[2261] Forked 3960 +(3960) found +[2260] Forked 3961 +(3961) found +[2259] Forked 3962 +(3962) found +[2258] Forked 3963 +(3963) found +[2257] Forked 3964 +(3964) found +[2256] Forked 3965 +(3965) found +[2255] Forked 3966 +(3966) found +[2254] Forked 3967 +(3967) found +[2253] Forked 3968 +(3968) found +[2252] Forked 3969 +(3969) found +[2251] Forked 3970 +(3970) found +[2250] Forked 3971 +(3971) found +[2249] Forked 3972 +(3972) found +[2248] Forked 3973 +(3973) found +[2247] Forked 3974 +(3974) found +[2246] Forked 3975 +(3975) found +[2245] Forked 3976 +(3976) found +[2244] Forked 3977 +(3977) found +[2243] Forked 3978 +(3978) found +[2242] Forked 3979 +(3979) found +[2241] Forked 3980 +(3980) found +[2240] Forked 3981 +(3981) found +[2239] Forked 3982 +(3982) found +[2238] Forked 3983 +(3983) found +[2237] Forked 3984 +(3984) found +[2236] Forked 3985 +(3985) found +[2235] Forked 3986 +(3986) found +[2234] Forked 3987 +(3987) found +[2233] Forked 3988 +(3988) found +[2232] Forked 3989 +(3989) found +[2231] Forked 3990 +(3990) found +[2230] Forked 3991 +(3991) found +[2229] Forked 3992 +(3992) found +[2228] Forked 3993 +(3993) found +[2227] Forked 3994 +(3994) found +[2226] Forked 3995 +(3995) found +[2225] Forked 3996 +(3996) found +[2224] Forked 3997 +(3997) found +[2223] Forked 3998 +(3998) found +[2222] Forked 3999 +[2221] Forked 4000 +(3999) found +(4000) found +[2220] Forked 4001 +[2219] Forked 4002 +(4001) found +(4002) found +[2218] Forked 4003 +[2217] Forked 4004 +(4003) found +(4004) found +[2216] Forked 4005 +[2215] Forked 4006 +(4005) found +(4006) found +[2214] Forked 4007 +[2213] Forked 4008 +(4007) found +(4008) found +[2212] Forked 4009 +[2211] Forked 4010 +(4009) found +(4010) found +[2210] Forked 4011 +[2209] Forked 4012 +(4011) found +(4012) found +[2208] Forked 4013 +[2207] Forked 4014 +(4013) found +(4014) found +[2206] Forked 4015 +[2205] Forked 4016 +(4015) found +(4016) found +[2204] Forked 4017 +[2203] Forked 4018 +(4017) found +(4018) found +[2202] Forked 4019 +[2201] Forked 4020 +(4019) found +(4020) found +[2200] Forked 4021 +[2199] Forked 4022 +(4021) found +(4022) found +[2198] Forked 4023 +[2197] Forked 4024 +(4023) found +(4024) found +[2196] Forked 4025 +[2195] Forked 4026 +(4025) found +(4026) found +[2194] Forked 4028 +[2193] Forked 4029 +(4028) found +(4029) found +[2192] Forked 4030 +[2191] Forked 4031 +(4030) found +(4031) found +[2190] Forked 4032 +[2189] Forked 4034 +(4032) found +(4034) found +[2188] Forked 4035 +[2187] Forked 4037 +(4035) found +(4037) found +[2186] Forked 4038 +(4038) found +[2185] Forked 4039 +(4039) found +[2184] Forked 4040 +(4040) found +[2183] Forked 4041 +(4041) found +[2182] Forked 4042 +(4042) found +[2181] Forked 4043 +(4043) found +[2180] Forked 4044 +(4044) found +[2179] Forked 4045 +(4045) found +[2178] Forked 4046 +(4046) found +[2177] Forked 4047 +(4047) found +[2176] Forked 4048 +(4048) found +[2175] Forked 4049 +(4049) found +[2174] Forked 4052 +(4052) found +[2173] Forked 4053 +(4053) found +[2172] Forked 4054 +(4054) found +[2171] Forked 4055 +(4055) found +[2170] Forked 4056 +(4056) found +[2169] Forked 4057 +(4057) found +[2168] Forked 4058 +(4058) found +[2167] Forked 4059 +(4059) found +[2166] Forked 4060 +(4060) found +[2165] Forked 4061 +(4061) found +[2164] Forked 4062 +(4062) found +[2163] Forked 4063 +(4063) found +[2162] Forked 4064 +(4064) found +[2161] Forked 4065 +(4065) found +[2160] Forked 4066 +(4066) found +[2159] Forked 4067 +(4067) found +[2158] Forked 4068 +(4068) found +[2157] Forked 4069 +(4069) found +[2156] Forked 4070 +(4070) found +[2155] Forked 4071 +(4071) found +[2154] Forked 4072 +(4072) found +[2153] Forked 4074 +(4074) found +[2152] Forked 4075 +(4075) found +[2151] Forked 4076 +(4076) found +[2150] Forked 4077 +(4077) found +[2149] Forked 4078 +(4078) found +[2148] Forked 4079 +(4079) found +[2147] Forked 4080 +(4080) found +[2146] Forked 4081 +(4081) found +[2145] Forked 4082 +(4082) found +[2144] Forked 4083 +[2143] Forked 4086 +(4083) found +(4086) found +[2142] Forked 4088 +[2141] Forked 4089 +(4088) found +(4089) found +[2140] Forked 4090 +[2139] Forked 4093 +(4090) found +(4093) found +[2138] Forked 4095 +[2137] Forked 4096 +(4095) found +(4096) found +[2136] Forked 4097 +[2135] Forked 4098 +(4097) found +(4098) found +[2134] Forked 4099 +[2133] Forked 4100 +(4099) found +(4100) found +[2132] Forked 4101 +[2131] Forked 4102 +(4101) found +(4102) found +[2130] Forked 4103 +[2129] Forked 4104 +(4103) found +(4104) found +[2128] Forked 4105 +[2127] Forked 4106 +(4105) found +(4106) found +[2126] Forked 4107 +[2125] Forked 4108 +(4107) found +(4108) found +[2124] Forked 4109 +[2123] Forked 4110 +(4109) found +(4110) found +[2122] Forked 4111 +[2121] Forked 4112 +(4111) found +(4112) found +[2120] Forked 4113 +[2119] Forked 4114 +(4113) found +(4114) found +[2118] Forked 4115 +[2117] Forked 4116 +(4115) found +(4116) found +[2116] Forked 4117 +[2115] Forked 4118 +(4117) found +(4118) found +[2114] Forked 4119 +[2113] Forked 4120 +(4119) found +(4120) found +[2112] Forked 4121 +[2111] Forked 4122 +(4121) found +(4122) found +[2110] Forked 4123 +[2109] Forked 4124 +(4123) found +(4124) found +[2108] Forked 4125 +[2107] Forked 4126 +(4125) found +(4126) found +[2106] Forked 4127 +[2105] Forked 4128 +(4127) found +(4128) found +[2104] Forked 4129 +[2103] Forked 4130 +(4129) found +(4130) found +[2102] Forked 4131 +[2101] Forked 4132 +(4131) found +(4132) found +[2100] Forked 4133 +[2099] Forked 4134 +(4133) found +(4134) found +[2098] Forked 4135 +[2097] Forked 4136 +(4135) found +(4136) found +[2096] Forked 4137 +[2095] Forked 4138 +(4137) found +(4138) found +[2094] Forked 4139 +[2093] Forked 4140 +(4139) found +(4140) found +[2092] Forked 4141 +[2091] Forked 4142 +(4141) found +(4142) found +[2090] Forked 4143 +[2089] Forked 4144 +(4143) found +(4144) found +[2088] Forked 4145 +[2087] Forked 4146 +(4145) found +(4146) found +[2086] Forked 4147 +[2085] Forked 4148 +(4147) found +(4148) found +[2084] Forked 4149 +[2083] Forked 4150 +(4149) found +(4150) found +[2082] Forked 4151 +[2081] Forked 4152 +(4151) found +(4152) found +[2080] Forked 4153 +[2079] Forked 4154 +(4153) found +(4154) found +[2078] Forked 4155 +[2077] Forked 4156 +(4155) found +(4156) found +[2076] Forked 4157 +[2075] Forked 4158 +(4157) found +(4158) found +[2074] Forked 4159 +[2073] Forked 4160 +(4159) found +(4160) found +[2072] Forked 4161 +[2071] Forked 4162 +(4161) found +(4162) found +[2070] Forked 4163 +[2069] Forked 4164 +(4163) found +(4164) found +[2068] Forked 4165 +[2067] Forked 4166 +(4165) found +(4166) found +[2066] Forked 4167 +[2065] Forked 4168 +(4167) found +(4168) found +[2064] Forked 4169 +[2063] Forked 4170 +(4169) found +(4170) found +[2062] Forked 4171 +[2061] Forked 4172 +(4171) found +(4172) found +[2060] Forked 4173 +[2059] Forked 4174 +(4173) found +(4174) found +[2058] Forked 4175 +[2057] Forked 4176 +(4175) found +(4176) found +[2056] Forked 4177 +[2055] Forked 4178 +(4177) found +(4178) found +[2054] Forked 4179 +[2053] Forked 4180 +(4179) found +(4180) found +[2052] Forked 4181 +(4181) found +[2051] Forked 4182 +(4182) found +[2050] Forked 4183 +(4183) found +[2049] Forked 4184 +(4184) found +[2048] Forked 4185 +(4185) found +[2047] Forked 4186 +(4186) found +[2046] Forked 4187 +(4187) found +[2045] Forked 4188 +(4188) found +[2044] Forked 4189 +(4189) found +[2043] Forked 4190 +(4190) found +[2042] Forked 4191 +(4191) found +[2041] Forked 4192 +(4192) found +[2040] Forked 4193 +(4193) found +[2039] Forked 4194 +(4194) found +[2038] Forked 4195 +(4195) found +[2037] Forked 4196 +(4196) found +[2036] Forked 4197 +(4197) found +[2035] Forked 4198 +(4198) found +[2034] Forked 4199 +(4199) found +[2033] Forked 4200 +(4200) found +[2032] Forked 4201 +(4201) found +[2031] Forked 4202 +(4202) found +[2030] Forked 4203 +(4203) found +[2029] Forked 4204 +(4204) found +[2028] Forked 4205 +(4205) found +[2027] Forked 4206 +(4206) found +[2026] Forked 4207 +(4207) found +[2025] Forked 4208 +(4208) found +[2024] Forked 4209 +(4209) found +[2023] Forked 4210 +(4210) found +[2022] Forked 4211 +(4211) found +[2021] Forked 4212 +(4212) found +[2020] Forked 4213 +(4213) found +[2019] Forked 4214 +(4214) found +[2018] Forked 4215 +(4215) found +[2017] Forked 4216 +(4216) found +[2016] Forked 4217 +[2015] Forked 4218 +(4217) found +(4218) found +[2014] Forked 4219 +[2013] Forked 4220 +(4219) found +(4220) found +[2012] Forked 4221 +[2011] Forked 4222 +(4221) found +(4222) found +[2010] Forked 4223 +[2009] Forked 4224 +(4223) found +(4224) found +[2008] Forked 4225 +[2007] Forked 4226 +(4225) found +(4226) found +[2006] Forked 4227 +[2005] Forked 4228 +(4227) found +(4228) found +[2004] Forked 4229 +[2003] Forked 4230 +(4229) found +(4230) found +[2002] Forked 4231 +[2001] Forked 4232 +(4231) found +(4232) found +[2000] Forked 4233 +[1999] Forked 4234 +(4233) found +(4234) found +[1998] Forked 4235 +[1997] Forked 4236 +(4235) found +(4236) found +[1996] Forked 4237 +[1995] Forked 4238 +(4237) found +(4238) found +[1994] Forked 4239 +[1993] Forked 4240 +(4239) found +(4240) found +[1992] Forked 4242 +[1991] Forked 4243 +(4242) found +(4243) found +[1990] Forked 4244 +[1989] Forked 4245 +(4244) found +(4245) found +[1988] Forked 4247 +[1987] Forked 4248 +(4247) found +(4248) found +[1986] Forked 4249 +[1985] Forked 4250 +(4249) found +(4250) found +[1984] Forked 4251 +[1983] Forked 4252 +(4251) found +(4252) found +[1982] Forked 4254 +[1981] Forked 4255 +(4254) found +(4255) found +[1980] Forked 4256 +[1979] Forked 4257 +(4256) found +(4257) found +[1978] Forked 4258 +[1977] Forked 4259 +(4258) found +(4259) found +[1976] Forked 4260 +[1975] Forked 4261 +(4260) found +(4261) found +[1974] Forked 4262 +[1973] Forked 4263 +(4262) found +(4263) found +[1972] Forked 4264 +(4264) found +[1971] Forked 4265 +(4265) found +[1970] Forked 4266 +(4266) found +[1969] Forked 4267 +(4267) found +[1968] Forked 4268 +(4268) found +[1967] Forked 4269 +(4269) found +[1966] Forked 4270 +(4270) found +[1965] Forked 4271 +(4271) found +[1964] Forked 4272 +(4272) found +[1963] Forked 4273 +(4273) found +[1962] Forked 4274 +(4274) found +[1961] Forked 4275 +(4275) found +[1960] Forked 4276 +(4276) found +[1959] Forked 4277 +(4277) found +[1958] Forked 4278 +(4278) found +[1957] Forked 4279 +(4279) found +[1956] Forked 4280 +(4280) found +[1955] Forked 4281 +(4281) found +[1954] Forked 4282 +(4282) found +[1953] Forked 4284 +(4284) found +[1952] Forked 4285 +(4285) found +[1951] Forked 4286 +(4286) found +[1950] Forked 4287 +(4287) found +[1949] Forked 4288 +(4288) found +[1948] Forked 4289 +(4289) found +[1947] Forked 4290 +(4290) found +[1946] Forked 4291 +(4291) found +[1945] Forked 4292 +(4292) found +[1944] Forked 4293 +(4293) found +[1943] Forked 4294 +(4294) found +[1942] Forked 4295 +(4295) found +[1941] Forked 4296 +(4296) found +[1940] Forked 4297 +(4297) found +[1939] Forked 4298 +(4298) found +[1938] Forked 4299 +(4299) found +[1937] Forked 4300 +(4300) found +[1936] Forked 4301 +(4301) found +[1935] Forked 4302 +[1934] Forked 4303 +(4302) found +(4303) found +[1933] Forked 4304 +[1932] Forked 4305 +(4304) found +(4305) found +[1931] Forked 4306 +[1930] Forked 4307 +(4306) found +(4307) found +[1929] Forked 4308 +[1928] Forked 4309 +(4308) found +(4309) found +[1927] Forked 4310 +[1926] Forked 4311 +(4310) found +(4311) found +[1925] Forked 4312 +[1924] Forked 4313 +(4312) found +(4313) found +[1923] Forked 4314 +[1922] Forked 4315 +(4314) found +(4315) found +[1921] Forked 4316 +[1920] Forked 4317 +(4316) found +(4317) found +[1919] Forked 4318 +[1918] Forked 4319 +(4318) found +(4319) found +[1917] Forked 4320 +[1916] Forked 4321 +(4320) found +(4321) found +[1915] Forked 4322 +[1914] Forked 4323 +(4322) found +(4323) found +[1913] Forked 4324 +[1912] Forked 4325 +(4324) found +(4325) found +[1911] Forked 4326 +[1910] Forked 4327 +(4326) found +(4327) found +[1909] Forked 4328 +[1908] Forked 4329 +(4328) found +(4329) found +[1907] Forked 4330 +[1906] Forked 4331 +(4330) found +(4331) found +[1905] Forked 4332 +[1904] Forked 4333 +(4332) found +(4333) found +[1903] Forked 4334 +[1902] Forked 4335 +(4334) found +(4335) found +[1901] Forked 4336 +[1900] Forked 4337 +(4336) found +(4337) found +[1899] Forked 4338 +[1898] Forked 4339 +(4338) found +(4339) found +[1897] Forked 4340 +[1896] Forked 4342 +(4340) found +(4342) found +[1895] Forked 4343 +(4343) found +[1894] Forked 4344 +(4344) found +[1893] Forked 4345 +(4345) found +[1892] Forked 4346 +(4346) found +[1891] Forked 4347 +(4347) found +[1890] Forked 4348 +(4348) found +[1889] Forked 4349 +(4349) found +[1888] Forked 4350 +(4350) found +[1887] Forked 4351 +(4351) found +[1886] Forked 4352 +(4352) found +[1885] Forked 4353 +(4353) found +[1884] Forked 4354 +(4354) found +[1883] Forked 4355 +(4355) found +[1882] Forked 4356 +(4356) found +[1881] Forked 4357 +(4357) found +[1880] Forked 4358 +(4358) found +[1879] Forked 4359 +(4359) found +[1878] Forked 4360 +(4360) found +[1877] Forked 4361 +(4361) found +[1876] Forked 4362 +(4362) found +[1875] Forked 4363 +(4363) found +[1874] Forked 4364 +(4364) found +[1873] Forked 4365 +(4365) found +[1872] Forked 4366 +(4366) found +[1871] Forked 4367 +(4367) found +[1870] Forked 4368 +(4368) found +[1869] Forked 4369 +(4369) found +[1868] Forked 4370 +(4370) found +[1867] Forked 4371 +(4371) found +[1866] Forked 4372 +(4372) found +[1865] Forked 4373 +(4373) found +[1864] Forked 4374 +(4374) found +[1863] Forked 4375 +(4375) found +[1862] Forked 4376 +(4376) found +[1861] Forked 4377 +(4377) found +[1860] Forked 4378 +(4378) found +[1859] Forked 4379 +(4379) found +[1858] Forked 4380 +(4380) found +[1857] Forked 4381 +(4381) found +[1856] Forked 4382 +[1855] Forked 4383 +(4382) found +(4383) found +[1854] Forked 4384 +[1853] Forked 4385 +(4384) found +(4385) found +[1852] Forked 4386 +[1851] Forked 4387 +(4386) found +(4387) found +[1850] Forked 4388 +[1849] Forked 4389 +(4388) found +(4389) found +[1848] Forked 4390 +[1847] Forked 4391 +(4390) found +(4391) found +[1846] Forked 4392 +[1845] Forked 4393 +(4392) found +(4393) found +[1844] Forked 4394 +[1843] Forked 4395 +(4394) found +(4395) found +[1842] Forked 4396 +[1841] Forked 4397 +(4396) found +(4397) found +[1840] Forked 4398 +[1839] Forked 4399 +(4398) found +(4399) found +[1838] Forked 4400 +[1837] Forked 4401 +(4400) found +(4401) found +[1836] Forked 4402 +[1835] Forked 4403 +(4402) found +(4403) found +[1834] Forked 4404 +[1833] Forked 4405 +(4404) found +(4405) found +[1832] Forked 4406 +[1831] Forked 4407 +(4406) found +(4407) found +[1830] Forked 4408 +[1829] Forked 4409 +(4408) found +(4409) found +[1828] Forked 4410 +[1827] Forked 4411 +(4410) found +(4411) found +[1826] Forked 4412 +[1825] Forked 4413 +(4412) found +(4413) found +[1824] Forked 4414 +[1823] Forked 4415 +(4414) found +(4415) found +[1822] Forked 4416 +[1821] Forked 4417 +(4416) found +(4417) found +[1820] Forked 4418 +[1819] Forked 4419 +(4418) found +(4419) found +[1818] Forked 4420 +[1817] Forked 4421 +(4420) found +(4421) found +[1816] Forked 4422 +[1815] Forked 4423 +(4422) found +(4423) found +[1814] Forked 4424 +(4424) found +[1813] Forked 4425 +(4425) found +[1812] Forked 4426 +(4426) found +[1811] Forked 4427 +(4427) found +[1810] Forked 4428 +(4428) found +[1809] Forked 4429 +(4429) found +[1808] Forked 4430 +(4430) found +[1807] Forked 4431 +(4431) found +[1806] Forked 4432 +(4432) found +[1805] Forked 4433 +(4433) found +[1804] Forked 4434 +(4434) found +[1803] Forked 4435 +(4435) found +[1802] Forked 4436 +(4436) found +[1801] Forked 4437 +(4437) found +[1800] Forked 4438 +(4438) found +[1799] Forked 4439 +(4439) found +[1798] Forked 4440 +(4440) found +[1797] Forked 4441 +(4441) found +[1796] Forked 4442 +(4442) found +[1795] Forked 4443 +(4443) found +[1794] Forked 4444 +(4444) found +[1793] Forked 4445 +(4445) found +[1792] Forked 4446 +(4446) found +[1791] Forked 4447 +(4447) found +[1790] Forked 4448 +(4448) found +[1789] Forked 4449 +(4449) found +[1788] Forked 4450 +(4450) found +[1787] Forked 4451 +(4451) found +[1786] Forked 4452 +(4452) found +[1785] Forked 4453 +(4453) found +[1784] Forked 4454 +(4454) found +[1783] Forked 4455 +(4455) found +[1782] Forked 4456 +(4456) found +[1781] Forked 4457 +(4457) found +[1780] Forked 4458 +(4458) found +[1779] Forked 4459 +(4459) found +[1778] Forked 4460 +[1777] Forked 4461 +(4460) found +(4461) found +[1776] Forked 4462 +[1775] Forked 4463 +(4462) found +(4463) found +[1774] Forked 4464 +[1773] Forked 4465 +(4464) found +(4465) found +[1772] Forked 4466 +[1771] Forked 4467 +(4466) found +(4467) found +[1770] Forked 4468 +[1769] Forked 4469 +(4468) found +(4469) found +[1768] Forked 4470 +[1767] Forked 4471 +(4470) found +(4471) found +[1766] Forked 4472 +[1765] Forked 4473 +(4472) found +(4473) found +[1764] Forked 4474 +[1763] Forked 4475 +(4474) found +(4475) found +[1762] Forked 4476 +[1761] Forked 4477 +(4476) found +(4477) found +[1760] Forked 4478 +[1759] Forked 4479 +(4478) found +(4479) found +[1758] Forked 4480 +[1757] Forked 4481 +(4480) found +(4481) found +[1756] Forked 4482 +[1755] Forked 4483 +(4482) found +(4483) found +[1754] Forked 4484 +[1753] Forked 4485 +(4484) found +(4485) found +[1752] Forked 4486 +[1751] Forked 4487 +(4486) found +(4487) found +[1750] Forked 4488 +[1749] Forked 4489 +(4488) found +(4489) found +[1748] Forked 4490 +[1747] Forked 4491 +(4490) found +(4491) found +[1746] Forked 4492 +[1745] Forked 4493 +(4492) found +(4493) found +[1744] Forked 4494 +[1743] Forked 4495 +(4494) found +(4495) found +[1742] Forked 4496 +[1741] Forked 4497 +(4496) found +(4497) found +[1740] Forked 4498 +[1739] Forked 4499 +(4498) found +(4499) found +[1738] Forked 4500 +[1737] Forked 4501 +(4500) found +(4501) found +[1736] Forked 4502 +[1735] Forked 4503 +(4502) found +(4503) found +[1734] Forked 4504 +[1733] Forked 4505 +(4504) found +(4505) found +[1732] Forked 4506 +[1731] Forked 4507 +(4506) found +(4507) found +[1730] Forked 4508 +[1729] Forked 4509 +(4508) found +(4509) found +[1728] Forked 4510 +[1727] Forked 4511 +(4510) found +(4511) found +[1726] Forked 4512 +[1725] Forked 4513 +(4512) found +(4513) found +[1724] Forked 4514 +[1723] Forked 4515 +(4514) found +(4515) found +[1722] Forked 4516 +[1721] Forked 4517 +(4516) found +(4517) found +[1720] Forked 4518 +[1719] Forked 4519 +(4518) found +(4519) found +[1718] Forked 4520 +[1717] Forked 4521 +(4520) found +(4521) found +[1716] Forked 4522 +[1715] Forked 4523 +(4522) found +(4523) found +[1714] Forked 4524 +[1713] Forked 4525 +(4524) found +(4525) found +[1712] Forked 4526 +[1711] Forked 4527 +(4526) found +(4527) found +[1710] Forked 4528 +[1709] Forked 4529 +(4528) found +(4529) found +[1708] Forked 4530 +[1707] Forked 4531 +(4530) found +(4531) found +[1706] Forked 4532 +[1705] Forked 4533 +(4532) found +(4533) found +[1704] Forked 4534 +[1703] Forked 4535 +(4534) found +(4535) found +[1702] Forked 4536 +[1701] Forked 4537 +(4536) found +(4537) found +[1700] Forked 4538 +[1699] Forked 4539 +(4538) found +(4539) found +[1698] Forked 4540 +[1697] Forked 4541 +(4540) found +(4541) found +[1696] Forked 4542 +[1695] Forked 4543 +(4542) found +(4543) found +[1694] Forked 4544 +[1693] Forked 4545 +(4544) found +(4545) found +[1692] Forked 4546 +[1691] Forked 4547 +(4546) found +(4547) found +[1690] Forked 4548 +[1689] Forked 4549 +(4548) found +(4549) found +[1688] Forked 4550 +[1687] Forked 4551 +(4550) found +(4551) found +[1686] Forked 4552 +(4552) found +[1685] Forked 4553 +(4553) found +[1684] Forked 4554 +(4554) found +[1683] Forked 4555 +(4555) found +[1682] Forked 4556 +(4556) found +[1681] Forked 4557 +(4557) found +[1680] Forked 4558 +(4558) found +[1679] Forked 4559 +(4559) found +[1678] Forked 4560 +(4560) found +[1677] Forked 4561 +(4561) found +[1676] Forked 4562 +(4562) found +[1675] Forked 4563 +(4563) found +[1674] Forked 4564 +(4564) found +[1673] Forked 4565 +(4565) found +[1672] Forked 4566 +(4566) found +[1671] Forked 4567 +(4567) found +[1670] Forked 4568 +(4568) found +[1669] Forked 4569 +(4569) found +[1668] Forked 4570 +(4570) found +[1667] Forked 4571 +(4571) found +[1666] Forked 4572 +(4572) found +[1665] Forked 4573 +(4573) found +[1664] Forked 4574 +(4574) found +[1663] Forked 4575 +(4575) found +[1662] Forked 4576 +(4576) found +[1661] Forked 4577 +(4577) found +[1660] Forked 4578 +(4578) found +[1659] Forked 4579 +(4579) found +[1658] Forked 4580 +(4580) found +[1657] Forked 4581 +(4581) found +[1656] Forked 4582 +(4582) found +[1655] Forked 4583 +(4583) found +[1654] Forked 4584 +[1653] Forked 4585 +(4584) found +(4585) found +[1652] Forked 4586 +[1651] Forked 4587 +(4586) found +(4587) found +[1650] Forked 4588 +[1649] Forked 4589 +(4588) found +(4589) found +[1648] Forked 4590 +[1647] Forked 4591 +(4590) found +(4591) found +[1646] Forked 4593 +[1645] Forked 4594 +(4593) found +(4594) found +[1644] Forked 4595 +[1643] Forked 4596 +(4595) found +(4596) found +[1642] Forked 4597 +[1641] Forked 4598 +(4597) found +(4598) found +[1640] Forked 4599 +[1639] Forked 4600 +(4599) found +(4600) found +[1638] Forked 4601 +[1637] Forked 4602 +(4601) found +(4602) found +[1636] Forked 4603 +[1635] Forked 4604 +(4603) found +(4604) found +[1634] Forked 4605 +[1633] Forked 4606 +(4605) found +(4606) found +[1632] Forked 4607 +[1631] Forked 4608 +(4607) found +(4608) found +[1630] Forked 4609 +[1629] Forked 4610 +(4609) found +(4610) found +[1628] Forked 4611 +[1627] Forked 4612 +(4611) found +(4612) found +[1626] Forked 4613 +[1625] Forked 4614 +(4613) found +(4614) found +[1624] Forked 4615 +[1623] Forked 4616 +(4615) found +(4616) found +[1622] Forked 4617 +[1621] Forked 4618 +(4617) found +(4618) found +[1620] Forked 4619 +[1619] Forked 4620 +(4619) found +(4620) found +[1618] Forked 4621 +[1617] Forked 4622 +(4621) found +(4622) found +[1616] Forked 4623 +[1615] Forked 4624 +(4623) found +(4624) found +[1614] Forked 4625 +[1613] Forked 4626 +(4625) found +(4626) found +[1612] Forked 4627 +[1611] Forked 4628 +(4627) found +(4628) found +[1610] Forked 4629 +[1609] Forked 4630 +(4629) found +(4630) found +[1608] Forked 4631 +[1607] Forked 4632 +(4631) found +(4632) found +[1606] Forked 4633 +(4633) found +[1605] Forked 4634 +(4634) found +[1604] Forked 4635 +(4635) found +[1603] Forked 4636 +(4636) found +[1602] Forked 4637 +(4637) found +[1601] Forked 4638 +(4638) found +[1600] Forked 4639 +(4639) found +[1599] Forked 4640 +(4640) found +[1598] Forked 4641 +(4641) found +[1597] Forked 4642 +(4642) found +[1596] Forked 4643 +(4643) found +[1595] Forked 4644 +(4644) found +[1594] Forked 4645 +(4645) found +[1593] Forked 4646 +(4646) found +[1592] Forked 4647 +(4647) found +[1591] Forked 4648 +(4648) found +[1590] Forked 4649 +(4649) found +[1589] Forked 4650 +(4650) found +[1588] Forked 4651 +(4651) found +[1587] Forked 4652 +(4652) found +[1586] Forked 4653 +(4653) found +[1585] Forked 4654 +(4654) found +[1584] Forked 4655 +(4655) found +[1583] Forked 4656 +(4656) found +[1582] Forked 4657 +(4657) found +[1581] Forked 4658 +(4658) found +[1580] Forked 4659 +(4659) found +[1579] Forked 4660 +(4660) found +[1578] Forked 4661 +(4661) found +[1577] Forked 4662 +(4662) found +[1576] Forked 4663 +[1575] Forked 4664 +(4664) found +(4663) found +[1574] Forked 4665 +(4665) found +[1573] Forked 4666 +(4666) found +[1572] Forked 4667 +(4667) found +[1571] Forked 4668 +(4668) found +[1570] Forked 4669 +(4669) found +[1569] Forked 4670 +(4670) found +[1568] Forked 4671 +(4671) found +[1567] Forked 4672 +(4672) found +[1566] Forked 4673 +(4673) found +[1565] Forked 4674 +(4674) found +[1564] Forked 4675 +(4675) found +[1563] Forked 4676 +(4676) found +[1562] Forked 4677 +(4677) found +[1561] Forked 4678 +(4678) found +[1560] Forked 4679 +(4679) found +[1559] Forked 4680 +(4680) found +[1558] Forked 4681 +(4681) found +[1557] Forked 4682 +(4682) found +[1556] Forked 4683 +(4683) found +[1555] Forked 4684 +(4684) found +[1554] Forked 4685 +(4685) found +[1553] Forked 4686 +(4686) found +[1552] Forked 4687 +(4687) found +[1551] Forked 4688 +(4688) found +[1550] Forked 4689 +(4689) found +[1549] Forked 4690 +(4690) found +[1548] Forked 4691 +(4691) found +[1547] Forked 4692 +(4692) found +[1546] Forked 4693 +(4693) found +[1545] Forked 4694 +(4694) found +[1544] Forked 4695 +(4695) found +[1543] Forked 4696 +(4696) found +[1542] Forked 4697 +(4697) found +[1541] Forked 4698 +(4698) found +[1540] Forked 4699 +(4699) found +[1539] Forked 4700 +(4700) found +[1538] Forked 4701 +(4701) found +[1537] Forked 4702 +(4702) found +[1536] Forked 4703 +(4703) found +[1535] Forked 4704 +(4704) found +[1534] Forked 4705 +(4705) found +[1533] Forked 4706 +(4706) found +[1532] Forked 4707 +(4707) found +[1531] Forked 4708 +(4708) found +[1530] Forked 4709 +(4709) found +[1529] Forked 4710 +(4710) found +[1528] Forked 4711 +(4711) found +[1527] Forked 4712 +(4712) found +[1526] Forked 4713 +(4713) found +[1525] Forked 4714 +(4714) found +[1524] Forked 4715 +(4715) found +[1523] Forked 4716 +(4716) found +[1522] Forked 4717 +(4717) found +[1521] Forked 4718 +(4718) found +[1520] Forked 4719 +(4719) found +[1519] Forked 4720 +(4720) found +[1518] Forked 4721 +(4721) found +[1517] Forked 4722 +(4722) found +[1516] Forked 4723 +(4723) found +[1515] Forked 4724 +(4724) found +[1514] Forked 4725 +(4725) found +[1513] Forked 4726 +(4726) found +[1512] Forked 4727 +(4727) found +[1511] Forked 4728 +(4728) found +[1510] Forked 4729 +(4729) found +[1509] Forked 4730 +(4730) found +[1508] Forked 4731 +(4731) found +[1507] Forked 4732 +(4732) found +[1506] Forked 4733 +(4733) found +[1505] Forked 4734 +(4734) found +[1504] Forked 4735 +(4735) found +[1503] Forked 4736 +[1502] Forked 4737 +(4736) found +(4737) found +[1501] Forked 4738 +[1500] Forked 4739 +(4738) found +(4739) found +[1499] Forked 4740 +[1498] Forked 4741 +(4740) found +(4741) found +[1497] Forked 4742 +[1496] Forked 4743 +(4742) found +(4743) found +[1495] Forked 4744 +[1494] Forked 4745 +(4744) found +(4745) found +[1493] Forked 4746 +[1492] Forked 4747 +(4746) found +(4747) found +[1491] Forked 4748 +[1490] Forked 4749 +(4748) found +(4749) found +[1489] Forked 4750 +[1488] Forked 4751 +(4750) found +(4751) found +[1487] Forked 4752 +[1486] Forked 4753 +(4752) found +(4753) found +[1485] Forked 4754 +[1484] Forked 4755 +(4754) found +(4755) found +[1483] Forked 4756 +[1482] Forked 4757 +(4756) found +(4757) found +[1481] Forked 4758 +[1480] Forked 4759 +(4758) found +(4759) found +[1479] Forked 4760 +[1478] Forked 4761 +(4760) found +(4761) found +[1477] Forked 4762 +[1476] Forked 4763 +(4762) found +(4763) found +[1475] Forked 4764 +[1474] Forked 4765 +(4764) found +(4765) found +[1473] Forked 4766 +[1472] Forked 4767 +(4766) found +(4767) found +[1471] Forked 4768 +[1470] Forked 4769 +(4768) found +(4769) found +[1469] Forked 4770 +[1468] Forked 4771 +(4770) found +(4771) found +[1467] Forked 4772 +[1466] Forked 4773 +(4772) found +(4773) found +[1465] Forked 4774 +[1464] Forked 4775 +(4774) found +(4775) found +[1463] Forked 4776 +[1462] Forked 4777 +(4776) found +(4777) found +[1461] Forked 4778 +[1460] Forked 4779 +(4778) found +(4779) found +[1459] Forked 4780 +(4780) found +[1458] Forked 4781 +(4781) found +[1457] Forked 4782 +(4782) found +[1456] Forked 4783 +(4783) found +[1455] Forked 4784 +(4784) found +[1454] Forked 4785 +(4785) found +[1453] Forked 4786 +(4786) found +[1452] Forked 4787 +(4787) found +[1451] Forked 4788 +(4788) found +[1450] Forked 4789 +(4789) found +[1449] Forked 4790 +(4790) found +[1448] Forked 4791 +(4791) found +[1447] Forked 4792 +(4792) found +[1446] Forked 4793 +(4793) found +[1445] Forked 4794 +(4794) found +[1444] Forked 4795 +(4795) found +[1443] Forked 4796 +(4796) found +[1442] Forked 4797 +(4797) found +[1441] Forked 4798 +(4798) found +[1440] Forked 4799 +(4799) found +[1439] Forked 4800 +(4800) found +[1438] Forked 4801 +(4801) found +[1437] Forked 4802 +(4802) found +[1436] Forked 4803 +(4803) found +[1435] Forked 4804 +(4804) found +[1434] Forked 4805 +(4805) found +[1433] Forked 4806 +(4806) found +[1432] Forked 4807 +(4807) found +[1431] Forked 4808 +(4808) found +[1430] Forked 4809 +(4809) found +[1429] Forked 4810 +(4810) found +[1428] Forked 4811 +(4811) found +[1427] Forked 4812 +(4812) found +[1426] Forked 4813 +(4813) found +[1425] Forked 4814 +(4814) found +[1424] Forked 4815 +(4815) found +[1423] Forked 4816 +[1422] Forked 4817 +(4816) found +(4817) found +[1421] Forked 4818 +[1420] Forked 4819 +(4818) found +(4819) found +[1419] Forked 4820 +(4820) found +[1418] Forked 4821 +[1417] Forked 4822 +(4821) found +(4822) found +[1416] Forked 4823 +[1415] Forked 4824 +(4823) found +(4824) found +[1414] Forked 4825 +[1413] Forked 4826 +(4825) found +(4826) found +[1412] Forked 4827 +[1411] Forked 4828 +(4827) found +(4828) found +[1410] Forked 4829 +[1409] Forked 4830 +(4829) found +(4830) found +[1408] Forked 4831 +[1407] Forked 4832 +(4831) found +(4832) found +[1406] Forked 4833 +[1405] Forked 4834 +(4833) found +(4834) found +[1404] Forked 4835 +[1403] Forked 4836 +(4835) found +(4836) found +[1402] Forked 4837 +[1401] Forked 4838 +(4837) found +(4838) found +[1400] Forked 4839 +[1399] Forked 4840 +(4839) found +(4840) found +[1398] Forked 4841 +[1397] Forked 4842 +(4841) found +(4842) found +[1396] Forked 4843 +[1395] Forked 4844 +(4843) found +(4844) found +[1394] Forked 4845 +[1393] Forked 4846 +(4845) found +(4846) found +[1392] Forked 4847 +[1391] Forked 4848 +(4847) found +(4848) found +[1390] Forked 4849 +[1389] Forked 4850 +(4849) found +(4850) found +[1388] Forked 4851 +[1387] Forked 4852 +(4851) found +(4852) found +[1386] Forked 4853 +[1385] Forked 4854 +(4853) found +(4854) found +[1384] Forked 4855 +[1383] Forked 4856 +(4855) found +(4856) found +[1382] Forked 4857 +[1381] Forked 4858 +(4857) found +(4858) found +[1380] Forked 4859 +(4859) found +[1379] Forked 4860 +[1378] Forked 4861 +(4860) found +(4861) found +[1377] Forked 4862 +[1376] Forked 4863 +(4862) found +(4863) found +[1375] Forked 4864 +[1374] Forked 4865 +(4864) found +(4865) found +[1373] Forked 4866 +[1372] Forked 4867 +(4866) found +(4867) found +[1371] Forked 4868 +[1370] Forked 4869 +(4868) found +(4869) found +[1369] Forked 4870 +[1368] Forked 4871 +(4870) found +(4871) found +[1367] Forked 4872 +[1366] Forked 4873 +(4872) found +(4873) found +[1365] Forked 4874 +[1364] Forked 4875 +(4874) found +(4875) found +[1363] Forked 4876 +[1362] Forked 4877 +(4876) found +(4877) found +[1361] Forked 4878 +[1360] Forked 4879 +(4878) found +(4879) found +[1359] Forked 4880 +[1358] Forked 4881 +(4880) found +(4881) found +[1357] Forked 4882 +[1356] Forked 4883 +(4882) found +(4883) found +[1355] Forked 4884 +[1354] Forked 4885 +(4884) found +(4885) found +[1353] Forked 4886 +[1352] Forked 4887 +(4886) found +(4887) found +[1351] Forked 4888 +[1350] Forked 4889 +(4888) found +(4889) found +[1349] Forked 4890 +[1348] Forked 4891 +(4890) found +(4891) found +[1347] Forked 4892 +[1346] Forked 4893 +(4892) found +(4893) found +[1345] Forked 4894 +[1344] Forked 4895 +(4894) found +(4895) found +[1343] Forked 4896 +[1342] Forked 4897 +(4896) found +(4897) found +[1341] Forked 4898 +[1340] Forked 4899 +(4898) found +(4899) found +[1339] Forked 4900 +[1338] Forked 4901 +(4900) found +(4901) found +[1337] Forked 4902 +[1336] Forked 4903 +(4902) found +(4903) found +[1335] Forked 4904 +[1334] Forked 4905 +(4904) found +(4905) found +[1333] Forked 4906 +[1332] Forked 4907 +(4906) found +(4907) found +[1331] Forked 4908 +[1330] Forked 4909 +(4908) found +(4909) found +[1329] Forked 4910 +[1328] Forked 4911 +(4910) found +(4911) found +[1327] Forked 4912 +[1326] Forked 4913 +(4912) found +(4913) found +[1325] Forked 4914 +[1324] Forked 4915 +(4914) found +(4915) found +[1323] Forked 4916 +[1322] Forked 4917 +(4916) found +(4917) found +[1321] Forked 4918 +[1320] Forked 4919 +(4918) found +(4919) found +[1319] Forked 4920 +[1318] Forked 4921 +(4920) found +(4921) found +[1317] Forked 4922 +[1316] Forked 4923 +(4922) found +(4923) found +[1315] Forked 4924 +[1314] Forked 4925 +(4924) found +(4925) found +[1313] Forked 4926 +[1312] Forked 4927 +(4926) found +(4927) found +[1311] Forked 4928 +[1310] Forked 4929 +(4928) found +(4929) found +[1309] Forked 4930 +[1308] Forked 4931 +(4930) found +(4931) found +[1307] Forked 4932 +[1306] Forked 4933 +(4932) found +(4933) found +[1305] Forked 4934 +[1304] Forked 4935 +(4934) found +(4935) found +[1303] Forked 4936 +[1302] Forked 4937 +(4936) found +(4937) found +[1301] Forked 4938 +[1300] Forked 4939 +(4938) found +(4939) found +[1299] Forked 4940 +[1298] Forked 4941 +(4940) found +(4941) found +[1297] Forked 4942 +[1296] Forked 4943 +(4942) found +(4943) found +[1295] Forked 4944 +[1294] Forked 4945 +(4944) found +(4945) found +[1293] Forked 4946 +[1292] Forked 4947 +(4946) found +(4947) found +[1291] Forked 4948 +[1290] Forked 4949 +(4948) found +(4949) found +[1289] Forked 4950 +[1288] Forked 4951 +(4950) found +(4951) found +[1287] Forked 4952 +[1286] Forked 4953 +(4952) found +(4953) found +[1285] Forked 4954 +[1284] Forked 4955 +(4954) found +(4955) found +[1283] Forked 4956 +[1282] Forked 4957 +(4956) found +(4957) found +[1281] Forked 4958 +[1280] Forked 4959 +(4958) found +(4959) found +[1279] Forked 4960 +[1278] Forked 4961 +(4960) found +(4961) found +[1277] Forked 4962 +[1276] Forked 4963 +(4962) found +(4963) found +[1275] Forked 4964 +[1274] Forked 4965 +(4964) found +(4965) found +[1273] Forked 4966 +[1272] Forked 4967 +(4966) found +(4967) found +[1271] Forked 4968 +[1270] Forked 4969 +(4968) found +(4969) found +[1269] Forked 4970 +[1268] Forked 4971 +(4970) found +(4971) found +[1267] Forked 4972 +[1266] Forked 4973 +(4972) found +(4973) found +[1265] Forked 4974 +[1264] Forked 4975 +(4974) found +(4975) found +[1263] Forked 4976 +[1262] Forked 4977 +(4976) found +(4977) found +[1261] Forked 4978 +[1260] Forked 4979 +(4978) found +(4979) found +[1259] Forked 4980 +[1258] Forked 4981 +(4980) found +(4981) found +[1257] Forked 4982 +[1256] Forked 4983 +(4982) found +(4983) found +[1255] Forked 4984 +[1254] Forked 4985 +(4984) found +(4985) found +[1253] Forked 4986 +[1252] Forked 4987 +(4986) found +(4987) found +[1251] Forked 4988 +[1250] Forked 4989 +(4988) found +(4989) found +[1249] Forked 4990 +[1248] Forked 4991 +(4990) found +(4991) found +[1247] Forked 4992 +[1246] Forked 4993 +(4992) found +(4993) found +[1245] Forked 4994 +[1244] Forked 4995 +(4994) found +(4995) found +[1243] Forked 4996 +[1242] Forked 4997 +(4996) found +(4997) found +[1241] Forked 4998 +[1240] Forked 4999 +(4998) found +(4999) found +[1239] Forked 5000 +[1238] Forked 5001 +(5000) found +(5001) found +[1237] Forked 5002 +[1236] Forked 5003 +(5002) found +(5003) found +[1235] Forked 5004 +[1234] Forked 5005 +(5004) found +(5005) found +[1233] Forked 5006 +[1232] Forked 5007 +(5006) found +(5007) found +[1231] Forked 5008 +[1230] Forked 5009 +(5008) found +(5009) found +[1229] Forked 5010 +[1228] Forked 5011 +(5010) found +(5011) found +[1227] Forked 5012 +[1226] Forked 5013 +(5012) found +(5013) found +[1225] Forked 5014 +[1224] Forked 5015 +(5014) found +(5015) found +[1223] Forked 5016 +[1222] Forked 5017 +(5016) found +(5017) found +[1221] Forked 5018 +[1220] Forked 5019 +(5018) found +(5019) found +[1219] Forked 5020 +[1218] Forked 5021 +(5020) found +(5021) found +[1217] Forked 5022 +[1216] Forked 5023 +(5022) found +(5023) found +[1215] Forked 5024 +[1214] Forked 5025 +(5024) found +(5025) found +[1213] Forked 5026 +[1212] Forked 5027 +(5026) found +(5027) found +[1211] Forked 5028 +[1210] Forked 5029 +(5028) found +(5029) found +[1209] Forked 5030 +[1208] Forked 5031 +(5030) found +(5031) found +[1207] Forked 5032 +[1206] Forked 5033 +(5032) found +(5033) found +[1205] Forked 5034 +[1204] Forked 5035 +(5034) found +(5035) found +[1203] Forked 5036 +[1202] Forked 5037 +(5036) found +(5037) found +[1201] Forked 5038 +[1200] Forked 5039 +(5038) found +(5039) found +[1199] Forked 5040 +[1198] Forked 5041 +(5040) found +(5041) found +[1197] Forked 5042 +(5042) found +[1196] Forked 5043 +(5043) found +[1195] Forked 5044 +(5044) found +[1194] Forked 5045 +(5045) found +[1193] Forked 5046 +(5046) found +[1192] Forked 5047 +(5047) found +[1191] Forked 5048 +(5048) found +[1190] Forked 5049 +(5049) found +[1189] Forked 5050 +(5050) found +[1188] Forked 5051 +(5051) found +[1187] Forked 5052 +(5052) found +[1186] Forked 5053 +(5053) found +[1185] Forked 5054 +(5054) found +[1184] Forked 5055 +(5055) found +[1183] Forked 5056 +(5056) found +[1182] Forked 5057 +(5057) found +[1181] Forked 5058 +(5058) found +[1180] Forked 5059 +(5059) found +[1179] Forked 5060 +(5060) found +[1178] Forked 5061 +(5061) found +[1177] Forked 5062 +(5062) found +[1176] Forked 5063 +(5063) found +[1175] Forked 5064 +(5064) found +[1174] Forked 5065 +(5065) found +[1173] Forked 5066 +(5066) found +[1172] Forked 5067 +(5067) found +[1171] Forked 5068 +(5068) found +[1170] Forked 5069 +(5069) found +[1169] Forked 5070 +(5070) found +[1168] Forked 5071 +(5071) found +[1167] Forked 5072 +(5072) found +[1166] Forked 5073 +(5073) found +[1165] Forked 5074 +(5074) found +[1164] Forked 5075 +(5075) found +[1163] Forked 5076 +[1162] Forked 5077 +(5076) found +(5077) found +[1161] Forked 5078 +[1160] Forked 5079 +(5078) found +(5079) found +[1159] Forked 5080 +[1158] Forked 5081 +(5080) found +(5081) found +[1157] Forked 5082 +[1156] Forked 5083 +(5082) found +(5083) found +[1155] Forked 5084 +[1154] Forked 5085 +(5084) found +(5085) found +[1153] Forked 5086 +[1152] Forked 5087 +(5086) found +(5087) found +[1151] Forked 5088 +[1150] Forked 5089 +(5088) found +(5089) found +[1149] Forked 5090 +[1148] Forked 5091 +(5090) found +(5091) found +[1147] Forked 5092 +[1146] Forked 5093 +(5092) found +(5093) found +[1145] Forked 5094 +[1144] Forked 5095 +(5094) found +(5095) found +[1143] Forked 5096 +[1142] Forked 5097 +(5096) found +(5097) found +[1141] Forked 5098 +[1140] Forked 5099 +(5098) found +(5099) found +[1139] Forked 5100 +[1138] Forked 5101 +(5100) found +(5101) found +[1137] Forked 5102 +[1136] Forked 5103 +(5102) found +(5103) found +[1135] Forked 5104 +[1134] Forked 5105 +(5104) found +(5105) found +[1133] Forked 5106 +[1132] Forked 5107 +(5106) found +(5107) found +[1131] Forked 5108 +[1130] Forked 5109 +(5108) found +(5109) found +[1129] Forked 5110 +[1128] Forked 5111 +(5110) found +(5111) found +[1127] Forked 5112 +[1126] Forked 5113 +(5112) found +(5113) found +[1125] Forked 5114 +[1124] Forked 5115 +(5114) found +(5115) found +[1123] Forked 5116 +[1122] Forked 5117 +(5116) found +(5117) found +[1121] Forked 5118 +[1120] Forked 5119 +(5118) found +(5119) found +[1119] Forked 5120 +[1118] Forked 5121 +(5120) found +(5121) found +[1117] Forked 5122 +[1116] Forked 5123 +(5122) found +(5123) found +[1115] Forked 5124 +[1114] Forked 5125 +(5124) found +(5125) found +[1113] Forked 5126 +[1112] Forked 5127 +(5126) found +(5127) found +[1111] Forked 5128 +[1110] Forked 5129 +(5128) found +(5129) found +[1109] Forked 5130 +[1108] Forked 5131 +(5130) found +(5131) found +[1107] Forked 5132 +[1106] Forked 5133 +(5132) found +(5133) found +[1105] Forked 5134 +[1104] Forked 5135 +(5134) found +(5135) found +[1103] Forked 5136 +[1102] Forked 5137 +(5136) found +(5137) found +[1101] Forked 5138 +[1100] Forked 5139 +(5138) found +(5139) found +[1099] Forked 5140 +[1098] Forked 5141 +(5140) found +(5141) found +[1097] Forked 5142 +[1096] Forked 5143 +(5142) found +(5143) found +[1095] Forked 5144 +[1094] Forked 5145 +(5144) found +(5145) found +[1093] Forked 5146 +[1092] Forked 5147 +(5146) found +(5147) found +[1091] Forked 5148 +[1090] Forked 5149 +(5148) found +(5149) found +[1089] Forked 5150 +[1088] Forked 5151 +(5150) found +(5151) found +[1087] Forked 5152 +[1086] Forked 5153 +(5152) found +(5153) found +[1085] Forked 5154 +[1084] Forked 5155 +(5154) found +(5155) found +[1083] Forked 5156 +[1082] Forked 5157 +(5156) found +(5157) found +[1081] Forked 5158 +[1080] Forked 5159 +(5158) found +(5159) found +[1079] Forked 5160 +[1078] Forked 5161 +(5160) found +(5161) found +[1077] Forked 5162 +[1076] Forked 5163 +(5162) found +(5163) found +[1075] Forked 5164 +[1074] Forked 5165 +(5164) found +(5165) found +[1073] Forked 5166 +(5166) found +[1072] Forked 5167 +(5167) found +[1071] Forked 5168 +(5168) found +[1070] Forked 5169 +(5169) found +[1069] Forked 5170 +(5170) found +[1068] Forked 5171 +(5171) found +[1067] Forked 5172 +(5172) found +[1066] Forked 5173 +(5173) found +[1065] Forked 5174 +(5174) found +[1064] Forked 5175 +(5175) found +[1063] Forked 5176 +(5176) found +[1062] Forked 5177 +(5177) found +[1061] Forked 5178 +(5178) found +[1060] Forked 5179 +(5179) found +[1059] Forked 5180 +(5180) found +[1058] Forked 5181 +(5181) found +[1057] Forked 5182 +(5182) found +[1056] Forked 5183 +(5183) found +[1055] Forked 5184 +(5184) found +[1054] Forked 5185 +(5185) found +[1053] Forked 5186 +(5186) found +[1052] Forked 5187 +(5187) found +[1051] Forked 5188 +(5188) found +[1050] Forked 5189 +(5189) found +[1049] Forked 5190 +(5190) found +[1048] Forked 5191 +(5191) found +[1047] Forked 5192 +(5192) found +[1046] Forked 5193 +(5193) found +[1045] Forked 5194 +(5194) found +[1044] Forked 5195 +(5195) found +[1043] Forked 5196 +(5196) found +[1042] Forked 5197 +(5197) found +[1041] Forked 5198 +(5198) found +[1040] Forked 5199 +(5199) found +[1039] Forked 5200 +(5200) found +[1038] Forked 5201 +[1037] Forked 5202 +(5201) found +(5202) found +[1036] Forked 5203 +[1035] Forked 5204 +(5203) found +(5204) found +[1034] Forked 5205 +[1033] Forked 5207 +(5205) found +(5207) found +[1032] Forked 5208 +(5208) found +[1031] Forked 5209 +(5209) found +[1030] Forked 5210 +(5210) found +[1029] Forked 5211 +(5211) found +[1028] Forked 5212 +(5212) found +[1027] Forked 5213 +(5213) found +[1026] Forked 5214 +(5214) found +[1025] Forked 5215 +(5215) found +[1024] Forked 5216 +(5216) found +[1023] Forked 5217 +(5217) found +[1022] Forked 5218 +(5218) found +[1021] Forked 5219 +(5219) found +[1020] Forked 5220 +(5220) found +[1019] Forked 5221 +(5221) found +[1018] Forked 5222 +(5222) found +[1017] Forked 5223 +(5223) found +[1016] Forked 5224 +(5224) found +[1015] Forked 5225 +(5225) found +[1014] Forked 5226 +(5226) found +[1013] Forked 5227 +(5227) found +[1012] Forked 5228 +(5228) found +[1011] Forked 5229 +(5229) found +[1010] Forked 5230 +(5230) found +[1009] Forked 5231 +(5231) found +[1008] Forked 5232 +(5232) found +[1007] Forked 5233 +(5233) found +[1006] Forked 5234 +(5234) found +[1005] Forked 5235 +(5235) found +[1004] Forked 5236 +(5236) found +[1003] Forked 5237 +(5237) found +[1002] Forked 5238 +(5238) found +[1001] Forked 5239 +(5239) found +[1000] Forked 5240 +(5240) found +[999] Forked 5241 +(5241) found +[998] Forked 5242 +(5242) found +[997] Forked 5243 +(5243) found +[996] Forked 5244 +(5244) found +[995] Forked 5245 +(5245) found +[994] Forked 5246 +(5246) found +[993] Forked 5247 +(5247) found +[992] Forked 5248 +(5248) found +[991] Forked 5249 +(5249) found +[990] Forked 5250 +(5250) found +[989] Forked 5251 +(5251) found +[988] Forked 5252 +(5252) found +[987] Forked 5253 +(5253) found +[986] Forked 5254 +(5254) found +[985] Forked 5255 +(5255) found +[984] Forked 5256 +(5256) found +[983] Forked 5257 +(5257) found +[982] Forked 5258 +(5258) found +[981] Forked 5259 +(5259) found +[980] Forked 5260 +(5260) found +[979] Forked 5261 +(5261) found +[978] Forked 5262 +(5262) found +[977] Forked 5263 +(5263) found +[976] Forked 5264 +(5264) found +[975] Forked 5265 +(5265) found +[974] Forked 5266 +(5266) found +[973] Forked 5267 +(5267) found +[972] Forked 5268 +(5268) found +[971] Forked 5269 +(5269) found +[970] Forked 5270 +(5270) found +[969] Forked 5271 +(5271) found +[968] Forked 5272 +(5272) found +[967] Forked 5273 +(5273) found +[966] Forked 5274 +(5274) found +[965] Forked 5275 +[964] Forked 5276 +(5275) found +(5276) found +[963] Forked 5277 +[962] Forked 5278 +(5277) found +(5278) found +[961] Forked 5279 +[960] Forked 5280 +(5279) found +(5280) found +[959] Forked 5281 +[958] Forked 5282 +(5281) found +(5282) found +[957] Forked 5283 +[956] Forked 5284 +(5283) found +(5284) found +[955] Forked 5285 +[954] Forked 5286 +(5285) found +(5286) found +[953] Forked 5287 +[952] Forked 5288 +(5287) found +(5288) found +[951] Forked 5289 +[950] Forked 5290 +(5289) found +(5290) found +[949] Forked 5291 +[948] Forked 5292 +(5291) found +(5292) found +[947] Forked 5293 +[946] Forked 5294 +(5293) found +(5294) found +[945] Forked 5295 +[944] Forked 5296 +(5295) found +(5296) found +[943] Forked 5297 +[942] Forked 5298 +(5297) found +(5298) found +[941] Forked 5299 +[940] Forked 5300 +(5299) found +(5300) found +[939] Forked 5301 +[938] Forked 5302 +(5301) found +(5302) found +[937] Forked 5303 +[936] Forked 5304 +(5303) found +(5304) found +[935] Forked 5305 +[934] Forked 5306 +(5305) found +(5306) found +[933] Forked 5307 +[932] Forked 5308 +(5307) found +(5308) found +[931] Forked 5309 +[930] Forked 5310 +(5309) found +(5310) found +[929] Forked 5311 +[928] Forked 5312 +(5311) found +(5312) found +[927] Forked 5313 +[926] Forked 5314 +(5313) found +(5314) found +[925] Forked 5315 +[924] Forked 5316 +(5315) found +(5316) found +[923] Forked 5317 +(5317) found +[922] Forked 5318 +(5318) found +[921] Forked 5319 +(5319) found +[920] Forked 5320 +(5320) found +[919] Forked 5321 +(5321) found +[918] Forked 5322 +(5322) found +[917] Forked 5323 +(5323) found +[916] Forked 5324 +(5324) found +[915] Forked 5325 +(5325) found +[914] Forked 5326 +(5326) found +[913] Forked 5327 +(5327) found +[912] Forked 5328 +(5328) found +[911] Forked 5329 +(5329) found +[910] Forked 5330 +(5330) found +[909] Forked 5331 +(5331) found +[908] Forked 5332 +(5332) found +[907] Forked 5333 +(5333) found +[906] Forked 5334 +(5334) found +[905] Forked 5335 +(5335) found +[904] Forked 5336 +(5336) found +[903] Forked 5337 +(5337) found +[902] Forked 5338 +(5338) found +[901] Forked 5339 +(5339) found +[900] Forked 5340 +(5340) found +[899] Forked 5341 +(5341) found +[898] Forked 5342 +(5342) found +[897] Forked 5343 +(5343) found +[896] Forked 5344 +(5344) found +[895] Forked 5345 +(5345) found +[894] Forked 5346 +(5346) found +[893] Forked 5347 +(5347) found +[892] Forked 5348 +(5348) found +[891] Forked 5349 +(5349) found +[890] Forked 5350 +(5350) found +[889] Forked 5351 +(5351) found +[888] Forked 5352 +(5352) found +[887] Forked 5353 +[886] Forked 5354 +(5353) found +(5354) found +[885] Forked 5355 +[884] Forked 5356 +(5355) found +(5356) found +[883] Forked 5357 +[882] Forked 5358 +(5357) found +(5358) found +[881] Forked 5359 +[880] Forked 5360 +(5359) found +(5360) found +[879] Forked 5361 +[878] Forked 5362 +(5361) found +(5362) found +[877] Forked 5363 +[876] Forked 5364 +(5363) found +(5364) found +[875] Forked 5365 +[874] Forked 5366 +(5365) found +(5366) found +[873] Forked 5367 +(5367) found +[872] Forked 5368 +(5368) found +[871] Forked 5369 +[870] Forked 5370 +(5369) found +(5370) found +[869] Forked 5371 +[868] Forked 5372 +(5371) found +(5372) found +[867] Forked 5373 +[866] Forked 5374 +(5373) found +(5374) found +[865] Forked 5375 +[864] Forked 5376 +(5375) found +(5376) found +[863] Forked 5377 +[862] Forked 5378 +(5377) found +(5378) found +[861] Forked 5379 +[860] Forked 5380 +(5379) found +(5380) found +[859] Forked 5381 +[858] Forked 5382 +(5381) found +(5382) found +[857] Forked 5383 +[856] Forked 5384 +(5383) found +(5384) found +[855] Forked 5385 +[854] Forked 5386 +(5385) found +(5386) found +[853] Forked 5387 +[852] Forked 5388 +(5387) found +(5388) found +[851] Forked 5389 +[850] Forked 5390 +(5389) found +(5390) found +[849] Forked 5391 +[848] Forked 5392 +(5391) found +(5392) found +[847] Forked 5393 +[846] Forked 5394 +(5393) found +(5394) found +[845] Forked 5395 +[844] Forked 5396 +(5395) found +(5396) found +[843] Forked 5397 +[842] Forked 5398 +(5397) found +(5398) found +[841] Forked 5399 +[840] Forked 5400 +(5399) found +(5400) found +[839] Forked 5401 +[838] Forked 5402 +(5401) found +(5402) found +[837] Forked 5403 +[836] Forked 5404 +(5403) found +(5404) found +[835] Forked 5405 +[834] Forked 5406 +(5405) found +(5406) found +[833] Forked 5407 +[832] Forked 5408 +(5407) found +(5408) found +[831] Forked 5409 +[830] Forked 5410 +(5409) found +(5410) found +[829] Forked 5411 +[828] Forked 5412 +(5411) found +(5412) found +[827] Forked 5413 +[826] Forked 5414 +(5414) found +(5413) found +[825] Forked 5415 +(5415) found +[824] Forked 5416 +(5416) found +[823] Forked 5417 +(5417) found +[822] Forked 5418 +(5418) found +[821] Forked 5419 +(5419) found +[820] Forked 5420 +(5420) found +[819] Forked 5421 +(5421) found +[818] Forked 5422 +(5422) found +[817] Forked 5423 +(5423) found +[816] Forked 5424 +(5424) found +[815] Forked 5425 +(5425) found +[814] Forked 5426 +(5426) found +[813] Forked 5427 +(5427) found +[812] Forked 5428 +(5428) found +[811] Forked 5429 +(5429) found +[810] Forked 5430 +(5430) found +[809] Forked 5431 +(5431) found +[808] Forked 5432 +(5432) found +[807] Forked 5433 +(5433) found +[806] Forked 5434 +(5434) found +[805] Forked 5435 +(5435) found +[804] Forked 5436 +(5436) found +[803] Forked 5437 +(5437) found +[802] Forked 5438 +(5438) found +[801] Forked 5439 +(5439) found +[800] Forked 5440 +(5440) found +[799] Forked 5441 +(5441) found +[798] Forked 5442 +(5442) found +[797] Forked 5443 +(5443) found +[796] Forked 5444 +(5444) found +[795] Forked 5445 +(5445) found +[794] Forked 5446 +(5446) found +[793] Forked 5447 +(5447) found +[792] Forked 5448 +(5448) found +[791] Forked 5449 +(5449) found +[790] Forked 5450 +(5450) found +[789] Forked 5451 +(5451) found +[788] Forked 5452 +(5452) found +[787] Forked 5453 +(5453) found +[786] Forked 5454 +(5454) found +[785] Forked 5455 +(5455) found +[784] Forked 5456 +(5456) found +[783] Forked 5457 +(5457) found +[782] Forked 5458 +(5458) found +[781] Forked 5459 +(5459) found +[780] Forked 5460 +(5460) found +[779] Forked 5461 +(5461) found +[778] Forked 5462 +(5462) found +[777] Forked 5463 +(5463) found +[776] Forked 5464 +(5464) found +[775] Forked 5465 +(5465) found +[774] Forked 5466 +(5466) found +[773] Forked 5467 +(5467) found +[772] Forked 5468 +(5468) found +[771] Forked 5469 +(5469) found +[770] Forked 5470 +(5470) found +[769] Forked 5471 +(5471) found +[768] Forked 5472 +[767] Forked 5473 +(5472) found +(5473) found +[766] Forked 5474 +[765] Forked 5475 +(5474) found +(5475) found +[764] Forked 5476 +[763] Forked 5477 +(5476) found +(5477) found +[762] Forked 5478 +[761] Forked 5479 +(5478) found +(5479) found +[760] Forked 5480 +[759] Forked 5481 +(5480) found +(5481) found +[758] Forked 5482 +[757] Forked 5483 +(5482) found +(5483) found +[756] Forked 5484 +[755] Forked 5485 +(5484) found +(5485) found +[754] Forked 5486 +[753] Forked 5487 +(5486) found +(5487) found +[752] Forked 5488 +[751] Forked 5489 +(5488) found +(5489) found +[750] Forked 5490 +[749] Forked 5491 +(5490) found +(5491) found +[748] Forked 5492 +[747] Forked 5493 +(5492) found +(5493) found +[746] Forked 5494 +[745] Forked 5495 +(5494) found +(5495) found +[744] Forked 5496 +[743] Forked 5497 +(5496) found +(5497) found +[742] Forked 5498 +[741] Forked 5499 +(5498) found +(5499) found +[740] Forked 5500 +[739] Forked 5501 +(5500) found +(5501) found +[738] Forked 5502 +[737] Forked 5503 +(5502) found +(5503) found +[736] Forked 5504 +[735] Forked 5505 +(5504) found +(5505) found +[734] Forked 5506 +[733] Forked 5507 +(5506) found +(5507) found +[732] Forked 5508 +[731] Forked 5509 +(5508) found +(5509) found +[730] Forked 5510 +[729] Forked 5511 +(5510) found +(5511) found +[728] Forked 5512 +[727] Forked 5513 +(5512) found +(5513) found +[726] Forked 5514 +[725] Forked 5515 +(5514) found +(5515) found +[724] Forked 5516 +[723] Forked 5517 +(5516) found +(5517) found +[722] Forked 5518 +[721] Forked 5519 +(5518) found +(5519) found +[720] Forked 5520 +[719] Forked 5521 +(5520) found +(5521) found +[718] Forked 5522 +[717] Forked 5523 +(5522) found +(5523) found +[716] Forked 5524 +[715] Forked 5525 +(5524) found +(5525) found +[714] Forked 5526 +[713] Forked 5527 +(5526) found +(5527) found +[712] Forked 5528 +[711] Forked 5529 +(5528) found +(5529) found +[710] Forked 5530 +[709] Forked 5531 +(5530) found +(5531) found +[708] Forked 5532 +[707] Forked 5533 +(5532) found +(5533) found +[706] Forked 5534 +[705] Forked 5535 +(5534) found +(5535) found +[704] Forked 5536 +[703] Forked 5537 +(5536) found +(5537) found +[702] Forked 5538 +[701] Forked 5539 +(5538) found +(5539) found +[700] Forked 5540 +[699] Forked 5541 +(5540) found +(5541) found +[698] Forked 5542 +[697] Forked 5543 +(5542) found +(5543) found +[696] Forked 5544 +[695] Forked 5545 +(5544) found +(5545) found +[694] Forked 5546 +[693] Forked 5547 +(5546) found +(5547) found +[692] Forked 5548 +[691] Forked 5549 +(5548) found +(5549) found +[690] Forked 5550 +[689] Forked 5551 +(5550) found +(5551) found +[688] Forked 5552 +[687] Forked 5553 +(5552) found +(5553) found +[686] Forked 5554 +[685] Forked 5555 +(5554) found +(5555) found +[684] Forked 5556 +[683] Forked 5557 +(5556) found +(5557) found +[682] Forked 5558 +[681] Forked 5559 +(5558) found +(5559) found +[680] Forked 5560 +[679] Forked 5561 +(5560) found +(5561) found +[678] Forked 5562 +[677] Forked 5563 +(5562) found +(5563) found +[676] Forked 5564 +(5564) found +[675] Forked 5565 +(5565) found +[674] Forked 5566 +(5566) found +[673] Forked 5567 +(5567) found +[672] Forked 5568 +(5568) found +[671] Forked 5569 +(5569) found +[670] Forked 5570 +(5570) found +[669] Forked 5571 +(5571) found +[668] Forked 5572 +(5572) found +[667] Forked 5573 +(5573) found +[666] Forked 5574 +(5574) found +[665] Forked 5575 +(5575) found +[664] Forked 5576 +(5576) found +[663] Forked 5577 +(5577) found +[662] Forked 5578 +(5578) found +[661] Forked 5579 +(5579) found +[660] Forked 5580 +(5580) found +[659] Forked 5581 +(5581) found +[658] Forked 5582 +(5582) found +[657] Forked 5583 +(5583) found +[656] Forked 5584 +(5584) found +[655] Forked 5585 +(5585) found +[654] Forked 5586 +(5586) found +[653] Forked 5587 +(5587) found +[652] Forked 5588 +(5588) found +[651] Forked 5589 +(5589) found +[650] Forked 5590 +(5590) found +[649] Forked 5591 +(5591) found +[648] Forked 5592 +(5592) found +[647] Forked 5593 +(5593) found +[646] Forked 5594 +(5594) found +[645] Forked 5595 +(5595) found +[644] Forked 5596 +(5596) found +[643] Forked 5597 +(5597) found +[642] Forked 5598 +(5598) found +[641] Forked 5599 +(5599) found +[640] Forked 5600 +(5600) found +[639] Forked 5601 +[638] Forked 5602 +(5601) found +(5602) found +[637] Forked 5603 +[636] Forked 5604 +(5603) found +(5604) found +[635] Forked 5605 +[634] Forked 5606 +(5605) found +(5606) found +[633] Forked 5607 +[632] Forked 5608 +(5607) found +(5608) found +[631] Forked 5609 +[630] Forked 5610 +(5609) found +(5610) found +[629] Forked 5611 +[628] Forked 5612 +(5611) found +(5612) found +[627] Forked 5613 +[626] Forked 5614 +(5613) found +(5614) found +[625] Forked 5615 +[624] Forked 5616 +(5615) found +(5616) found +[623] Forked 5617 +[622] Forked 5618 +(5617) found +(5618) found +[621] Forked 5619 +[620] Forked 5620 +(5619) found +(5620) found +[619] Forked 5621 +[618] Forked 5622 +(5621) found +(5622) found +[617] Forked 5623 +[616] Forked 5624 +(5623) found +(5624) found +[615] Forked 5625 +[614] Forked 5626 +(5625) found +(5626) found +[613] Forked 5627 +[612] Forked 5628 +(5627) found +(5628) found +[611] Forked 5629 +[610] Forked 5630 +(5629) found +(5630) found +[609] Forked 5631 +[608] Forked 5632 +(5631) found +(5632) found +[607] Forked 5633 +[606] Forked 5634 +(5633) found +(5634) found +[605] Forked 5635 +[604] Forked 5636 +(5635) found +(5636) found +[603] Forked 5637 +[602] Forked 5638 +(5637) found +(5638) found +[601] Forked 5639 +[600] Forked 5640 +(5639) found +(5640) found +[599] Forked 5641 +[598] Forked 5642 +(5641) found +(5642) found +[597] Forked 5643 +[596] Forked 5644 +(5643) found +(5644) found +[595] Forked 5645 +[594] Forked 5646 +(5645) found +(5646) found +[593] Forked 5647 +[592] Forked 5648 +(5647) found +(5648) found +[591] Forked 5649 +[590] Forked 5650 +(5649) found +(5650) found +[589] Forked 5651 +[588] Forked 5652 +(5651) found +(5652) found +[587] Forked 5653 +[586] Forked 5654 +(5653) found +(5654) found +[585] Forked 5655 +[584] Forked 5656 +(5655) found +(5656) found +[583] Forked 5657 +[582] Forked 5658 +(5657) found +(5658) found +[581] Forked 5659 +[580] Forked 5660 +(5659) found +(5660) found +[579] Forked 5661 +[578] Forked 5662 +(5661) found +(5662) found +[577] Forked 5663 +[576] Forked 5664 +(5663) found +(5664) found +[575] Forked 5665 +[574] Forked 5666 +(5665) found +(5666) found +[573] Forked 5667 +[572] Forked 5668 +(5667) found +(5668) found +[571] Forked 5669 +[570] Forked 5670 +(5669) found +(5670) found +[569] Forked 5671 +[568] Forked 5672 +(5671) found +(5672) found +[567] Forked 5673 +[566] Forked 5674 +(5673) found +(5674) found +[565] Forked 5675 +[564] Forked 5676 +(5675) found +(5676) found +[563] Forked 5677 +[562] Forked 5678 +(5677) found +(5678) found +[561] Forked 5679 +[560] Forked 5680 +(5679) found +(5680) found +[559] Forked 5681 +[558] Forked 5682 +(5681) found +(5682) found +[557] Forked 5683 +[556] Forked 5684 +(5683) found +(5684) found +[555] Forked 5685 +[554] Forked 5686 +(5685) found +(5686) found +[553] Forked 5687 +[552] Forked 5688 +(5687) found +(5688) found +[551] Forked 5689 +[550] Forked 5690 +(5689) found +(5690) found +[549] Forked 5691 +[548] Forked 5692 +(5691) found +(5692) found +[547] Forked 5693 +(5693) found +[546] Forked 5694 +[545] Forked 5695 +(5694) found +(5695) found +[544] Forked 5696 +(5696) found +[543] Forked 5697 +[542] Forked 5698 +(5697) found +(5698) found +[541] Forked 5699 +[540] Forked 5700 +(5699) found +(5700) found +[539] Forked 5701 +[538] Forked 5702 +(5701) found +(5702) found +[537] Forked 5703 +[536] Forked 5705 +(5703) found +(5705) found +[535] Forked 5706 +(5706) found +[534] Forked 5707 +(5707) found +[533] Forked 5708 +(5708) found +[532] Forked 5709 +(5709) found +[531] Forked 5710 +(5710) found +[530] Forked 5711 +(5711) found +[529] Forked 5712 +(5712) found +[528] Forked 5713 +(5713) found +[527] Forked 5714 +(5714) found +[526] Forked 5715 +(5715) found +[525] Forked 5716 +(5716) found +[524] Forked 5717 +(5717) found +[523] Forked 5718 +(5718) found +[522] Forked 5719 +(5719) found +[521] Forked 5720 +(5720) found +[520] Forked 5721 +(5721) found +[519] Forked 5722 +(5722) found +[518] Forked 5723 +(5723) found +[517] Forked 5724 +(5724) found +[516] Forked 5725 +(5725) found +[515] Forked 5726 +(5726) found +[514] Forked 5727 +(5727) found +[513] Forked 5728 +(5728) found +[512] Forked 5729 +(5729) found +[511] Forked 5730 +(5730) found +[510] Forked 5731 +(5731) found +[509] Forked 5732 +(5732) found +[508] Forked 5733 +(5733) found +[507] Forked 5734 +(5734) found +[506] Forked 5735 +(5735) found +[505] Forked 5736 +(5736) found +[504] Forked 5737 +(5737) found +[503] Forked 5738 +(5738) found +[502] Forked 5739 +(5739) found +[501] Forked 5740 +(5740) found +[500] Forked 5741 +(5741) found +[499] Forked 5742 +(5742) found +[498] Forked 5743 +(5743) found +[497] Forked 5744 +(5744) found +[496] Forked 5745 +(5745) found +[495] Forked 5746 +(5746) found +[494] Forked 5747 +(5747) found +[493] Forked 5748 +(5748) found +[492] Forked 5749 +(5749) found +[491] Forked 5750 +(5750) found +[490] Forked 5751 +(5751) found +[489] Forked 5752 +(5752) found +[488] Forked 5753 +(5753) found +[487] Forked 5754 +(5754) found +[486] Forked 5755 +(5755) found +[485] Forked 5756 +(5756) found +[484] Forked 5757 +(5757) found +[483] Forked 5758 +(5758) found +[482] Forked 5759 +(5759) found +[481] Forked 5760 +(5760) found +[480] Forked 5761 +(5761) found +[479] Forked 5762 +(5762) found +[478] Forked 5763 +(5763) found +[477] Forked 5764 +(5764) found +[476] Forked 5765 +(5765) found +[475] Forked 5766 +(5766) found +[474] Forked 5767 +(5767) found +[473] Forked 5768 +(5768) found +[472] Forked 5769 +(5769) found +[471] Forked 5770 +(5770) found +[470] Forked 5771 +(5771) found +[469] Forked 5772 +(5772) found +[468] Forked 5773 +(5773) found +[467] Forked 5774 +(5774) found +[466] Forked 5775 +(5775) found +[465] Forked 5776 +(5776) found +[464] Forked 5777 +(5777) found +[463] Forked 5778 +(5778) found +[462] Forked 5779 +(5779) found +[461] Forked 5780 +(5780) found +[460] Forked 5781 +(5781) found +[459] Forked 5782 +(5782) found +[458] Forked 5783 +(5783) found +[457] Forked 5784 +(5784) found +[456] Forked 5785 +(5785) found +[455] Forked 5786 +(5786) found +[454] Forked 5787 +(5787) found +[453] Forked 5788 +(5788) found +[452] Forked 5789 +(5789) found +[451] Forked 5790 +(5790) found +[450] Forked 5791 +(5791) found +[449] Forked 5792 +(5792) found +[448] Forked 5793 +(5793) found +[447] Forked 5794 +(5794) found +[446] Forked 5795 +(5795) found +[445] Forked 5796 +(5796) found +[444] Forked 5797 +(5797) found +[443] Forked 5798 +(5798) found +[442] Forked 5799 +(5799) found +[441] Forked 5800 +(5800) found +[440] Forked 5801 +(5801) found +[439] Forked 5802 +(5802) found +[438] Forked 5803 +(5803) found +[437] Forked 5804 +[436] Forked 5805 +(5804) found +(5805) found +[435] Forked 5806 +[434] Forked 5807 +(5806) found +(5807) found +[433] Forked 5808 +[432] Forked 5809 +(5808) found +(5809) found +[431] Forked 5810 +[430] Forked 5811 +(5810) found +(5811) found +[429] Forked 5812 +[428] Forked 5813 +(5812) found +(5813) found +[427] Forked 5814 +[426] Forked 5815 +(5814) found +(5815) found +[425] Forked 5816 +[424] Forked 5817 +(5816) found +(5817) found +[423] Forked 5818 +[422] Forked 5819 +(5818) found +(5819) found +[421] Forked 5820 +[420] Forked 5821 +(5820) found +(5821) found +[419] Forked 5822 +[418] Forked 5823 +(5822) found +(5823) found +[417] Forked 5824 +[416] Forked 5825 +(5824) found +(5825) found +[415] Forked 5826 +[414] Forked 5827 +(5826) found +(5827) found +[413] Forked 5828 +[412] Forked 5829 +(5828) found +(5829) found +[411] Forked 5830 +[410] Forked 5831 +(5830) found +(5831) found +[409] Forked 5832 +[408] Forked 5833 +(5832) found +(5833) found +[407] Forked 5834 +[406] Forked 5835 +(5834) found +(5835) found +[405] Forked 5836 +[404] Forked 5838 +(5836) found +(5838) found +[403] Forked 5839 +(5839) found +[402] Forked 5840 +(5840) found +[401] Forked 5841 +(5841) found +[400] Forked 5842 +(5842) found +[399] Forked 5843 +(5843) found +[398] Forked 5844 +(5844) found +[397] Forked 5845 +(5845) found +[396] Forked 5846 +(5846) found +[395] Forked 5847 +(5847) found +[394] Forked 5848 +(5848) found +[393] Forked 5849 +(5849) found +[392] Forked 5850 +(5850) found +[391] Forked 5851 +(5851) found +[390] Forked 5852 +(5852) found +[389] Forked 5853 +(5853) found +[388] Forked 5854 +(5854) found +[387] Forked 5855 +(5855) found +[386] Forked 5856 +(5856) found +[385] Forked 5857 +(5857) found +[384] Forked 5858 +(5858) found +[383] Forked 5859 +(5859) found +[382] Forked 5860 +(5860) found +[381] Forked 5861 +(5861) found +[380] Forked 5862 +(5862) found +[379] Forked 5863 +(5863) found +[378] Forked 5864 +(5864) found +[377] Forked 5865 +(5865) found +[376] Forked 5866 +(5866) found +[375] Forked 5867 +(5867) found +[374] Forked 5868 +(5868) found +[373] Forked 5869 +(5869) found +[372] Forked 5870 +(5870) found +[371] Forked 5871 +(5871) found +[370] Forked 5872 +(5872) found +[369] Forked 5873 +(5873) found +[368] Forked 5874 +(5874) found +[367] Forked 5875 +(5875) found +[366] Forked 5876 +(5876) found +[365] Forked 5877 +(5877) found +[364] Forked 5878 +(5878) found +[363] Forked 5879 +(5879) found +[362] Forked 5880 +(5880) found +[361] Forked 5881 +(5881) found +[360] Forked 5882 +(5882) found +[359] Forked 5883 +(5883) found +[358] Forked 5884 +[357] Forked 5885 +(5884) found +(5885) found +[356] Forked 5886 +(5886) found +[355] Forked 5887 +[354] Forked 5888 +(5887) found +(5888) found +[353] Forked 5889 +[352] Forked 5890 +(5889) found +(5890) found +[351] Forked 5891 +[350] Forked 5892 +(5891) found +(5892) found +[349] Forked 5893 +[348] Forked 5894 +(5893) found +(5894) found +[347] Forked 5895 +[346] Forked 5896 +(5895) found +(5896) found +[345] Forked 5897 +[344] Forked 5898 +(5897) found +(5898) found +[343] Forked 5899 +[342] Forked 5900 +(5899) found +(5900) found +[341] Forked 5901 +[340] Forked 5902 +(5901) found +(5902) found +[339] Forked 5903 +[338] Forked 5904 +(5903) found +(5904) found +[337] Forked 5905 +[336] Forked 5906 +(5905) found +(5906) found +[335] Forked 5907 +[334] Forked 5908 +(5907) found +(5908) found +[333] Forked 5909 +[332] Forked 5910 +(5909) found +(5910) found +[331] Forked 5911 +[330] Forked 5912 +(5911) found +(5912) found +[329] Forked 5913 +[328] Forked 5914 +(5913) found +(5914) found +[327] Forked 5915 +[326] Forked 5916 +(5915) found +(5916) found +[325] Forked 5917 +[324] Forked 5918 +(5917) found +(5918) found +[323] Forked 5919 +[322] Forked 5920 +(5919) found +(5920) found +[321] Forked 5921 +[320] Forked 5922 +(5921) found +(5922) found +[319] Forked 5923 +[318] Forked 5924 +(5923) found +(5924) found +[317] Forked 5925 +[316] Forked 5926 +(5925) found +(5926) found +[315] Forked 5927 +[314] Forked 5928 +(5927) found +(5928) found +[313] Forked 5929 +[312] Forked 5930 +(5929) found +(5930) found +[311] Forked 5931 +[310] Forked 5932 +(5931) found +(5932) found +[309] Forked 5933 +[308] Forked 5934 +(5933) found +(5934) found +[307] Forked 5935 +[306] Forked 5936 +(5935) found +(5936) found +[305] Forked 5937 +[304] Forked 5938 +(5937) found +(5938) found +[303] Forked 5939 +[302] Forked 5940 +(5939) found +(5940) found +[301] Forked 5941 +[300] Forked 5942 +(5941) found +(5942) found +[299] Forked 5943 +[298] Forked 5944 +(5943) found +(5944) found +[297] Forked 5945 +[296] Forked 5946 +(5945) found +(5946) found +[295] Forked 5947 +[294] Forked 5948 +(5947) found +(5948) found +[293] Forked 5949 +[292] Forked 5950 +(5949) found +(5950) found +[291] Forked 5951 +[290] Forked 5952 +(5951) found +(5952) found +[289] Forked 5953 +[288] Forked 5954 +(5953) found +(5954) found +[287] Forked 5955 +[286] Forked 5956 +(5955) found +(5956) found +[285] Forked 5957 +[284] Forked 5958 +(5957) found +(5958) found +[283] Forked 5959 +[282] Forked 5960 +(5959) found +(5960) found +[281] Forked 5961 +[280] Forked 5962 +(5961) found +(5962) found +[279] Forked 5963 +[278] Forked 5964 +(5963) found +(5964) found +[277] Forked 5965 +[276] Forked 5966 +(5965) found +(5966) found +[275] Forked 5967 +[274] Forked 5968 +(5967) found +(5968) found +[273] Forked 5969 +[272] Forked 5970 +(5969) found +(5970) found +[271] Forked 5971 +[270] Forked 5972 +(5971) found +(5972) found +[269] Forked 5973 +[268] Forked 5974 +(5973) found +(5974) found +[267] Forked 5975 +(5975) found +[266] Forked 5976 +(5976) found +[265] Forked 5977 +(5977) found +[264] Forked 5978 +(5978) found +[263] Forked 5979 +(5979) found +[262] Forked 5980 +(5980) found +[261] Forked 5981 +(5981) found +[260] Forked 5982 +(5982) found +[259] Forked 5983 +(5983) found +[258] Forked 5984 +(5984) found +[257] Forked 5985 +(5985) found +[256] Forked 5986 +(5986) found +[255] Forked 5987 +(5987) found +[254] Forked 5988 +(5988) found +[253] Forked 5989 +(5989) found +[252] Forked 5990 +(5990) found +[251] Forked 5991 +(5991) found +[250] Forked 5992 +(5992) found +[249] Forked 5993 +(5993) found +[248] Forked 5994 +(5994) found +[247] Forked 5995 +(5995) found +[246] Forked 5996 +(5996) found +[245] Forked 5997 +(5997) found +[244] Forked 5998 +(5998) found +[243] Forked 5999 +(5999) found +[242] Forked 6000 +(6000) found +[241] Forked 6001 +(6001) found +[240] Forked 6002 +(6002) found +[239] Forked 6003 +(6003) found +[238] Forked 6004 +(6004) found +[237] Forked 6005 +(6005) found +[236] Forked 6006 +(6006) found +[235] Forked 6007 +(6007) found +[234] Forked 6008 +(6008) found +[233] Forked 6009 +(6009) found +[232] Forked 6010 +(6010) found +[231] Forked 6011 +[230] Forked 6012 +(6011) found +(6012) found +[229] Forked 6013 +[228] Forked 6014 +(6013) found +(6014) found +[227] Forked 6015 +[226] Forked 6016 +(6015) found +(6016) found +[225] Forked 6017 +[224] Forked 6018 +(6017) found +(6018) found +[223] Forked 6019 +[222] Forked 6020 +(6019) found +(6020) found +[221] Forked 6021 +[220] Forked 6022 +(6021) found +(6022) found +[219] Forked 6023 +[218] Forked 6024 +(6023) found +(6024) found +[217] Forked 6025 +[216] Forked 6026 +(6025) found +(6026) found +[215] Forked 6027 +[214] Forked 6028 +(6027) found +(6028) found +[213] Forked 6029 +[212] Forked 6030 +(6029) found +(6030) found +[211] Forked 6031 +[210] Forked 6032 +(6031) found +(6032) found +[209] Forked 6033 +[208] Forked 6034 +(6033) found +(6034) found +[207] Forked 6035 +[206] Forked 6036 +(6035) found +(6036) found +[205] Forked 6037 +[204] Forked 6038 +(6037) found +(6038) found +[203] Forked 6039 +[202] Forked 6040 +(6039) found +(6040) found +[201] Forked 6041 +[200] Forked 6042 +(6041) found +(6042) found +[199] Forked 6043 +[198] Forked 6044 +(6043) found +(6044) found +[197] Forked 6045 +[196] Forked 6046 +(6045) found +(6046) found +[195] Forked 6047 +[194] Forked 6048 +(6047) found +(6048) found +[193] Forked 6049 +[192] Forked 6050 +(6049) found +(6050) found +[191] Forked 6051 +[190] Forked 6052 +(6051) found +(6052) found +[189] Forked 6053 +[188] Forked 6054 +(6053) found +(6054) found +[187] Forked 6055 +[186] Forked 6056 +(6055) found +(6056) found +[185] Forked 6057 +[184] Forked 6058 +(6057) found +(6058) found +[183] Forked 6059 +[182] Forked 6060 +(6059) found +(6060) found +[181] Forked 6061 +[180] Forked 6062 +(6061) found +(6062) found +[179] Forked 6063 +[178] Forked 6064 +(6063) found +(6064) found +[177] Forked 6065 +[176] Forked 6066 +(6065) found +(6066) found +[175] Forked 6067 +[174] Forked 6068 +(6067) found +(6068) found +[173] Forked 6069 +[172] Forked 6070 +(6069) found +(6070) found +[171] Forked 6071 +[170] Forked 6072 +(6071) found +(6072) found +[169] Forked 6073 +[168] Forked 6074 +(6073) found +(6074) found +[167] Forked 6075 +[166] Forked 6076 +(6075) found +(6076) found +[165] Forked 6077 +[164] Forked 6078 +(6077) found +(6078) found +[163] Forked 6079 +[162] Forked 6080 +(6079) found +(6080) found +[161] Forked 6081 +[160] Forked 6082 +(6081) found +(6082) found +[159] Forked 6083 +[158] Forked 6084 +(6083) found +(6084) found +[157] Forked 6085 +[156] Forked 6086 +(6085) found +(6086) found +[155] Forked 6087 +[154] Forked 6088 +(6087) found +(6088) found +[153] Forked 6089 +[152] Forked 6090 +(6089) found +(6090) found +[151] Forked 6091 +[150] Forked 6092 +(6091) found +(6092) found +[149] Forked 6093 +[148] Forked 6094 +(6093) found +(6094) found +[147] Forked 6095 +[146] Forked 6096 +(6095) found +(6096) found +[145] Forked 6097 +[144] Forked 6098 +(6097) found +(6098) found +[143] Forked 6099 +[142] Forked 6100 +(6099) found +(6100) found +[141] Forked 6101 +[140] Forked 6102 +(6101) found +(6102) found +[139] Forked 6103 +(6103) found +[138] Forked 6104 +(6104) found +[137] Forked 6105 +(6105) found +[136] Forked 6106 +(6106) found +[135] Forked 6107 +(6107) found +[134] Forked 6108 +(6108) found +[133] Forked 6109 +(6109) found +[132] Forked 6110 +(6110) found +[131] Forked 6111 +(6111) found +[130] Forked 6112 +(6112) found +[129] Forked 6113 +(6113) found +[128] Forked 6114 +(6114) found +[127] Forked 6115 +(6115) found +[126] Forked 6116 +(6116) found +[125] Forked 6117 +(6117) found +[124] Forked 6118 +(6118) found +[123] Forked 6119 +(6119) found +[122] Forked 6120 +(6120) found +[121] Forked 6121 +(6121) found +[120] Forked 6122 +(6122) found +[119] Forked 6123 +(6123) found +[118] Forked 6124 +(6124) found +[117] Forked 6125 +(6125) found +[116] Forked 6126 +(6126) found +[115] Forked 6127 +(6127) found +[114] Forked 6128 +(6128) found +[113] Forked 6129 +(6129) found +[112] Forked 6130 +(6130) found +[111] Forked 6131 +(6131) found +[110] Forked 6132 +(6132) found +[109] Forked 6133 +(6133) found +[108] Forked 6134 +(6134) found +[107] Forked 6135 +(6135) found +[106] Forked 6136 +(6136) found +[105] Forked 6137 +(6137) found +[104] Forked 6138 +[103] Forked 6139 +(6138) found +(6139) found +[102] Forked 6140 +[101] Forked 6141 +(6140) found +(6141) found +[100] Forked 6142 +[99] Forked 6143 +(6142) found +(6143) found +[98] Forked 6144 +[97] Forked 6145 +(6144) found +(6145) found +[96] Forked 6146 +[95] Forked 6147 +(6146) found +(6147) found +[94] Forked 6148 +[93] Forked 6149 +(6148) found +(6149) found +[92] Forked 6150 +[91] Forked 6151 +(6150) found +(6151) found +[90] Forked 6152 +[89] Forked 6153 +(6152) found +(6153) found +[88] Forked 6154 +[87] Forked 6155 +(6154) found +(6155) found +[86] Forked 6156 +[85] Forked 6157 +(6156) found +(6157) found +[84] Forked 6158 +[83] Forked 6159 +(6158) found +(6159) found +[82] Forked 6160 +[81] Forked 6161 +(6160) found +(6161) found +[80] Forked 6162 +[79] Forked 6163 +(6162) found +(6163) found +[78] Forked 6164 +[77] Forked 6165 +(6164) found +(6165) found +[76] Forked 6166 +[75] Forked 6167 +(6166) found +(6167) found +[74] Forked 6168 +[73] Forked 6169 +(6168) found +(6169) found +[72] Forked 6170 +[71] Forked 6171 +(6170) found +(6171) found +[70] Forked 6172 +[69] Forked 6173 +(6172) found +(6173) found +[68] Forked 6174 +[67] Forked 6175 +(6174) found +(6175) found +[66] Forked 6176 +[65] Forked 6177 +(6176) found +(6177) found +[64] Forked 6178 +[63] Forked 6179 +(6178) found +(6179) found +[62] Forked 6180 +[61] Forked 6181 +(6180) found +(6181) found +[60] Forked 6182 +[59] Forked 6183 +(6182) found +(6183) found +[58] Forked 6184 +(6184) found +[57] Forked 6185 +(6185) found +[56] Forked 6186 +(6186) found +[55] Forked 6187 +(6187) found +[54] Forked 6188 +(6188) found +[53] Forked 6189 +(6189) found +[52] Forked 6190 +(6190) found +[51] Forked 6191 +(6191) found +[50] Forked 6192 +(6192) found +[49] Forked 6193 +(6193) found +[48] Forked 6194 +(6194) found +[47] Forked 6195 +(6195) found +[46] Forked 6196 +(6196) found +[45] Forked 6197 +(6197) found +[44] Forked 6198 +(6198) found +[43] Forked 6199 +(6199) found +[42] Forked 6200 +(6200) found +[41] Forked 6201 +(6201) found +[40] Forked 6202 +(6202) found +[39] Forked 6203 +(6203) found +[38] Forked 6204 +(6204) found +[37] Forked 6205 +(6205) found +[36] Forked 6206 +(6206) found +[35] Forked 6207 +(6207) found +[34] Forked 6208 +(6208) found +[33] Forked 6209 +(6209) found +[32] Forked 6210 +(6210) found +[31] Forked 6211 +(6211) found +[30] Forked 6212 +(6212) found +[29] Forked 6213 +(6213) found +[28] Forked 6214 +(6214) found +[27] Forked 6215 +(6215) found +[26] Forked 6216 +(6216) found +[25] Forked 6217 +(6217) found +[24] Forked 6218 +(6218) found +[23] Forked 6219 +(6219) found +[22] Forked 6220 +[21] Forked 6221 +(6220) found +(6221) found +[20] Forked 6222 +(6222) found +[19] Forked 6223 +(6223) found +[18] Forked 6224 +(6224) found +[17] Forked 6225 +[16] Forked 6226 +(6225) found +(6226) found +[15] Forked 6227 +[14] Forked 6228 +(6227) found +(6228) found +[13] Forked 6229 +[12] Forked 6230 +(6229) found +(6230) found +[11] Forked 6231 +[10] Forked 6232 +(6231) found +(6232) found +[9] Forked 6233 +[8] Forked 6234 +(6233) found +(6234) found +[7] Forked 6235 +[6] Forked 6236 +(6235) found +(6236) found +[5] Forked 6237 +[4] Forked 6239 +(6237) found +(6239) found +[3] Forked 6240 +(6240) found +[2] Forked 6241 +(6241) found +[1] Forked 6242 +(6242) found +[0] Forked 6243 +(6243) found diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/memcpy.c b/software/cinit/browse_source/cinit-0.3pre18/src/test/memcpy.c new file mode 100644 index 00000000..3c6cc2ac --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/memcpy.c @@ -0,0 +1,46 @@ +#include /* memcpy() */ +#include + +struct cinit_answer { + int options; + char data[2045]; +}; + +int f1(struct cinit_answer *buf); +int f2(struct cinit_answer *buf); + +int f2(struct cinit_answer *buf) +{ + struct cinit_answer msg; + + printf("f2: %p\n", buf); + + msg.options = 12; + strcpy(msg.data, "stringit"); + + printf("addr= %p\n", memcpy(buf, &msg, sizeof(*buf))); + + printf("ok\n"); + + return 1; +} + +int f1(struct cinit_answer *buf) +{ + printf("f1: %p\n", buf); + printf("ret=%d\n", f2(buf)); + + return 1; +} + +int main() +{ + struct cinit_answer test; + + if(!f1(&test)) + return 1; + + printf("s: %s d: %d\n", test.data, test.options); + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/test-newline.c b/software/cinit/browse_source/cinit-0.3pre18/src/test/test-newline.c new file mode 100644 index 00000000..4cccf535 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/test-newline.c @@ -0,0 +1,30 @@ +#include +#include +#include +#include + +char *strip_final_newline(char *test1); + +int main() +{ + // char *test1 = "zeile1\nzeile2\n"; + // char *test2 = "zeile1\nzeile2\nzeile3"; + char *test1; + char *test2; + + test1 = malloc(50); + test2 = malloc(50); + + strcpy(test1, "zeile1\nzeile2\n"); + strcpy(test2, "zeile1\nzeile2\nzeile3"); + + char *result; + + result = strip_final_newline(test1); + printf("A%sA\n", result); + + result = strip_final_newline(test2); + printf("B%sB\n", result); + + return 0; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/test_build_argv+link.c b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_build_argv+link.c new file mode 100644 index 00000000..87e46293 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_build_argv+link.c @@ -0,0 +1,37 @@ + +/*********************************************************************** + * + * 2006 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * test build_argv + */ + +#include +#include +#include + +#include "build_argv.h" + +int main() +{ + char *file = "./test_exec_link"; + struct ba_argv cargv; + int tmp; + + if((tmp = cinit_build_argv(file, &cargv)) != BA_OK) { + if(tmp != BA_E_MEM) { + perror("fehler:"); + exit(24); + } else + exit(23); + } + + printf("code: %s\n", cargv.argv[0]); + execve((cargv.argv)[0], cargv.argv, cargv.envp); + + perror("execve"); + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/test_build_argv.c b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_build_argv.c new file mode 100644 index 00000000..79ee5a48 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_build_argv.c @@ -0,0 +1,37 @@ + +/*********************************************************************** + * + * 2006 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * test build_argv + */ + +#include +#include +#include + +#include "build_argv.h" + +int main() +{ + char *file = "./test_exec"; + struct ba_argv cargv; + int tmp; + + if((tmp = cinit_build_argv(file, &cargv)) != BA_OK) { + if(tmp != BA_E_MEM) { + perror("fehler:"); + exit(24); + } else + exit(23); + } + + printf("code: %s\n", cargv.argv[0]); + execve((cargv.argv)[0], cargv.argv, cargv.envp); + + perror("execve"); + + return 1; +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec new file mode 100755 index 00000000..e5cf3f01 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec @@ -0,0 +1,7 @@ +#!/bin/sh +# Nico Schottelius +# Test-skript for cinit + +echo '$0': "$0" +echo '$@': "$@" +echo 'cinit_is_great:' $cinit_is_great diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec.env b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec.env new file mode 100644 index 00000000..853e0663 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec.env @@ -0,0 +1 @@ +cinit_is_great=yes diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec.params b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec.params new file mode 100644 index 00000000..afe0f2ef --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec.params @@ -0,0 +1 @@ +Let's see if we read the arguments....YES! diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec_link b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec_link new file mode 120000 index 00000000..c2ec9306 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec_link @@ -0,0 +1 @@ +test_exec \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec_link.env b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec_link.env new file mode 120000 index 00000000..30ea4990 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec_link.env @@ -0,0 +1 @@ +test_exec.env \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec_link.params b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec_link.params new file mode 120000 index 00000000..0b77c256 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_exec_link.params @@ -0,0 +1 @@ +test_exec.params \ No newline at end of file diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/test_gen_svc_tree.c b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_gen_svc_tree.c new file mode 100644 index 00000000..433be536 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_gen_svc_tree.c @@ -0,0 +1,21 @@ + +/*********************************************************************** + * + * 2006 Nico Schottelius (nico-cinit at schottelius.org) + * + * part of cLinux/cinit + * + * test gen_svc_tree + */ + +#include +#include +#include + +#include "build_argv.h" + +int main() +{ + gen_svc_tree("/etc/cinit/svc/init"); + list_display_all(); +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/test_openreadclose.c b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_openreadclose.c new file mode 100644 index 00000000..804a01b6 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/test_openreadclose.c @@ -0,0 +1,16 @@ +#include + +int openreadclose(char *filename, char **where); + +int main() +{ + char *data; + char *file = "test_openreadclose.c"; + + openreadclose(file, &data); + + printf("%s\n", data); + + return 1; + +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/tired.c b/software/cinit/browse_source/cinit-0.3pre18/src/test/tired.c new file mode 100644 index 00000000..b6e33260 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/tired.c @@ -0,0 +1,22 @@ +#include + +struct msgq_server_short { + long mtype; + int mu; +}; + +main() +{ + struct msgq_server_short t1, *t2; + + t2 = &t1; + + int a = sizeof(t1); + int b = sizeof(t2); + int c = sizeof(*t2); + + printf("a=%d,b=%d,c=%d\n", a, b, c); + + return 0; + +} diff --git a/software/cinit/browse_source/cinit-0.3pre18/src/test/transfer_structure.c b/software/cinit/browse_source/cinit-0.3pre18/src/test/transfer_structure.c new file mode 100644 index 00000000..f9755df3 --- /dev/null +++ b/software/cinit/browse_source/cinit-0.3pre18/src/test/transfer_structure.c @@ -0,0 +1,56 @@ +#include +#include +#include +#include + +struct test { + char buf[2048]; + int cmd; +}; + +struct badtest { + char *buf; + int cmd; +}; + +#define PATH "/etc/cinit/svc/local-tuning/udev" + +int main() +{ + struct test cmd; + struct badtest nocmd; + int pfd[2]; + int tmp; + + strcpy(cmd.buf, "/which/service/to/disable"); + cmd.cmd = 42; + + if(pipe(pfd) == -1) + return 1; + nocmd.cmd = 42; + nocmd.buf = malloc(strlen(PATH) + 1); + strcpy(nocmd.buf, PATH); + + if(fork() > 1) { + tmp = write(pfd[1], &cmd, sizeof(cmd)); + printf("PA: tmp=%d\n", tmp); + + tmp = write(pfd[1], &nocmd, sizeof(nocmd)); + printf("PA: tmp2=%d\n", tmp); + } else { + strcpy(cmd.buf, ""); + cmd.cmd = 0; + + tmp = read(pfd[0], &cmd, sizeof(cmd)); + printf("CH: tmp = %d, cmd = %d, buf = %s\n", tmp, cmd.cmd, cmd.buf); + + free(nocmd.buf); + nocmd.cmd = 0; + + tmp = read(pfd[0], &nocmd, sizeof(nocmd)); + printf("CH: tmp = %d, cmd = %d, buf = %s\n", tmp, nocmd.cmd, nocmd.buf); + } + + return 0; + +}