Difference between revisions of "IDroid"

From The iPhone Wiki
Jump to: navigation, search
Line 1: Line 1:
  +
Hacked by Chroniccommand
{{DISPLAYTITLE:iPhoneLinux}}
 
  +
Hacked by Chroniccommand
[[Image:Openiboot.png|thumb|right|200px|Device running the OpeniBoot console.]]
 
  +
Hacked by Chroniccommand
[http://iphonelinux.org iPhonelinux] is a project which goals are to port linux on the iPhone and make a Free (free software) OS alternative to the Apple proprietary "[http://en.wikipedia.org/wiki/IPhone_OS iPhone OS]".
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
iPhonelinux is not actually a hack/exploit neither an unlock, but it is based on the [[Pwnage]] exploit.
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
There are three steps in the iPhonelinux roadmap : OpeniBoot, linux kernel and long term (GUI, phone...)
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
== OpeniBoot ==
 
  +
Hacked by Chroniccommand
The Goals of OpeniBoot is to run low-level code, to have low and critical drivers (nand and nor driver, NVRAM...), debugger and development environment (chainloading, upgrading itself and USB mass storage).
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
== Linux ==
 
  +
Hacked by Chroniccommand
A linux Bootloader, a working linux kernel (just a question of cross-compiler), porting drivers, run wifi and command line thru SSH.
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
== Long-Term Plans ==
 
  +
Hacked by Chroniccommand
Multi-touch driver, Baseband driver, port X server and create an SDK.
 
  +
Hacked by Chroniccommand
Then have a viable alternative of the iPhone OS.
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
== Binaries ==
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
These are utility binaries precompiled on Ubuntu 8.10. They require:
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
- libpthread
 
  +
Hacked by Chroniccommand
- libncurses
 
  +
Hacked by Chroniccommand
- libusb
 
  +
Hacked by Chroniccommand
- libreadline
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
You may elect to build them from source by pulling from
 
  +
Hacked by Chroniccommand
iphonelinux/openiboot's git repository.
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
== Disclaimer ==
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
BE WARNED THAT THESE STEPS ARE NOT INTENDED FOR NOVICES. YOU ATTEMPT THIS AT
 
  +
Hacked by Chroniccommand
YOUR OWN RISK. AT THIS TIME, WE CANNOT AFFORD THE EFFORT REQUIRED TO GIVE
 
  +
Hacked by Chroniccommand
SUPPORT TO NOVICES AND/OR RESCUE THEM FROM THEIR OWN ACTIONS.
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
Although unlikely, if the installation goes wrong, you may have to perform a
 
  +
Hacked by Chroniccommand
DFU restore on your iPhone. If you do not know how to do that, you should not
 
  +
Hacked by Chroniccommand
follow these steps. You should also know how to use iRecovery (or similar) and
 
  +
Hacked by Chroniccommand
the fsboot command to "kick an iPhone out of recovery mode". If you do not
 
  +
Hacked by Chroniccommand
know how to do that, you should not follow these steps.
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
The installation of openiboot itself is safe, but openiboot has the facility
 
  +
Hacked by Chroniccommand
to erase device-specific information from your NOR flash. If you did not make
 
  +
Hacked by Chroniccommand
a backup, and execute the commands necessary to make openiboot erase that
 
  +
Hacked by Chroniccommand
information, it is gone forever and your device may never boot properly again.
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
The instructions below will show you how to make such a backup before any
 
  +
Hacked by Chroniccommand
changes are made.
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
== Installing OpeniBoot ==
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
=== Prerequisites ===
 
  +
Hacked by Chroniccommand
* Having an iPhone (first gen), iPhone 3G or an iPod 1G (the 2G iPod won't work).<br />
 
  +
Hacked by Chroniccommand
* Being on 2.x+ to have support IMG3 (the iPhonelinux-demo provides IMG3 files, not IMG2 files).<br />
 
  +
Hacked by Chroniccommand
* Being Pwned : Pwnage comes with jailbreak on 2.x+, so If you used Pwnage Tool, QuickPwn or xPwn, you are good.
 
  +
Hacked by Chroniccommand
* Required libraries (install as a package for Uuntu).:
 
  +
Hacked by Chroniccommand
** libpthread
 
  +
Hacked by Chroniccommand
** libncurses
 
  +
Hacked by Chroniccommand
** libusb
 
  +
Hacked by Chroniccommand
** libreadline
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
=== Installation ===
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
1. Put your iPhone in [[Recovery Mode]].
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
2. sudo ./loadibec openiboot-2g.img3, or -3g, -ipod, depending on your platform.
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
3. sudo ./oibc
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
4. nor_read 0x09000000 0x0 1048576
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
5. ~norbackup.dump:1048576. This will create a file called norbackup.dump in your current directory. GUARD IT WITH YOUR LIFE.
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
6. install
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
7. After 'install' has finished, type in: reboot.
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
8. You ought to see the openiboot menu.
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
===See===
 
  +
Hacked by Chroniccommand
* [[QuickOIB]]
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
== Booting Linux ==
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
Use the Hold button to navigate the menu. Push the Home button
 
  +
Hacked by Chroniccommand
when openiboot client is selected.
 
  +
Hacked by Chroniccommand
sudo ./oibc
 
  +
Hacked by Chroniccommand
!zImage
 
  +
Hacked by Chroniccommand
kernel
 
  +
Hacked by Chroniccommand
!rootfs.arm.ext2.gz
 
  +
Hacked by Chroniccommand
ramdisk 3588
 
  +
Hacked by Chroniccommand
boot "console=tty console=ttyUSB root=/dev/ram0 rw"
 
  +
Hacked by Chroniccommand
sudo ./linux
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
You should now get a login prompt. Nothing that's happening will show up on
 
  +
Hacked by Chroniccommand
the LCD automatically, but you can redirect it to the display with the
 
  +
Hacked by Chroniccommand
following command:
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
sh 2>&1 > /dev/tty0
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
Enjoy!
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
== iPhone Linux Resources ==
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
- Framebuffer driver
 
  +
Hacked by Chroniccommand
- Serial driver
 
  +
Hacked by Chroniccommand
- Serial over USB driver
 
  +
Hacked by Chroniccommand
- Interrupts, MMU, clock, etc.
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
=== OpeniBoot Resources ===
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
- Read-only support for the NAND
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
=== OpeniBoot Missing Resources ===
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
- Write support for the NAND
 
  +
Hacked by Chroniccommand
- Wireless networking
 
  +
Hacked by Chroniccommand
- Touchscreen
 
  +
Hacked by Chroniccommand
- Sound
 
  +
Hacked by Chroniccommand
- Accelerometer
 
  +
Hacked by Chroniccommand
- Baseband support
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
===QuickOIB===
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
[[QuickOIB]] is a tool that allows the user to temporarily install OpeniBoot in a device.
 
  +
Hacked by Chroniccommand
It was developed by pH and work perfectly with Mac OS X and Ubuntu 8.10
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
=== Support ===
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
The current userland we're using, in the interest of expedience, is a Busybox installation created with buildroot, but glibc works fine as well, and we're going to build a more permanent userland solution.
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
A demonstration video can be seen here: http://www.vimeo.com/2373142
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
Download here: http://localhostr.com/files/b00133/iphonelinux-demo.tar.gz
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
Project leader: '''planetbeing'''
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
Contributors: '''CPICH, cmw, poorlad, ius, saurik'''
 
  +
Hacked by Chroniccommand
 
  +
Hacked by Chroniccommand
If you're experienced with '''hacking/porting Linux''' and especially if you're experienced with porting '''Android''', I'd definitely like to hear from you. Come chill in the ''#iphonelinux'' channel on ''irc.osx86.hu'' . If you're not experienced, and still want to help, you can digg/slashdot this posting to heaven so our little project gets more visibility. Thanks. :)
 
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand
  +
Hacked by Chroniccommand

Revision as of 17:46, 6 November 2009

Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand Hacked by Chroniccommand