yashsingh1/xdaforums huggingface dataset:
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Topse:
That's the problem!

You need to reboot to system....

Flash ROM and TWRP.

After that reboot to system and setup.

-Reboot to TWRP.

Flash magisk.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] bggold:
I should have mentioned I boot to recovery, so it's flashed.

Thanks
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
You can flash TWRP zip and Magisk after fastbooting and booting into TWRP . I’ve done it many times . You don’t have to boot system first .
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Homeboy76:
'fasting'?
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
Haha, fastbooting .
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Daisymae:
Thanks--did that. TWRP installed successfully but same thing happens when I reboot to installed TWRP. Flash magisk and reboot=hangs on Google logo then boots to TWRP.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
Because it’s a problem with Magisk were a version works for some but doesn’t work for others . Try using the original Magisk from the link i post . If you are still in TWRP do like i said in my post a page back . If you are starting over just try the original Magisk instead of Canary .

I had the same problem where the original Magisk 17.4 beta wouldn’t work for me and it reboots back to TWRP. I tried Canary and it booted up . Since Magisk 18 both original and Canary works for me .
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Daisymae:
Idid reflash the stock boot.img but didn't use --slot all. Could that be the problem?

---------- Post added at 07:34 PM ---------- Previous post was at 07:30 PM ----------

I forgot to mention I tried v18.0 and canary both=same results
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Topse:
I did that. But didn't worked well for me.

Maybe this problems are only with installed TWRP.

But I'm tired of soft bricked phone. a reboot is done quickly.:angel:
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Homeboy76:
Note: install the latest SDK Platform-tools r28.0.1 on your computer.

Yes.

Retry, but install/flash magisk's uninstaller after fastboot boot twrp-3.2.3-3.img

Then ROM, twrp.zip, etc.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Daisymae:
All help appreciated! I have the latest SDK tools. Flashed stock boot.img to both slots. Then I started over--flashed Dec stock. Booted back to bootloader fastboot twrp boot. Installed Magisk and rebooted. Success! Then fastbooted twrp.img again flashed latest TWRP zip followed by magisk again. Rebooted. All Good!!
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
Cool, glad you got it going.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Geekser:
I am having a problem when I try to restore a Nandroid Backup in Twrp. I am getting a failed error message and it says something about was not able to mount vendor.

I am on the Dirty Unicorn Rom but the same thing happened on the Scoropion Rom and on a Rooted Stock Back up I had.

I am not sure why I am having this problem - it has never happened to me before.

Any Thoughts or suggestions? By the way, I am on the latest version of TWRP - 3.2.3.3
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jd1639:
Twrp does not seem to be working restoring a complete nandriod. The only luck I've had is restoring just the data partition to a working system. I'm sure dees_troy and the rest of teamwin will get it working in time.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] joetheshmo:
Do you make changes to system or any other partition?
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Geekser:
Thanks for the heads up -
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jd1639:
The only thing I've successfully done with a nandriod is after flashing the factory image is boot into twrp and then restore the data partition. It's a way to return all the apps and data to the way the phone was prior to flashing the factory image.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Segnale007:
I just realized that on my Pixel 3XL with latest version of TWRP, a full wipe bricks the phone you are forced to flash latest factory image.

You can get into the bootloader, but trying to boot TWRP will result into this

pietro@ThinkPad ~ $ fastboot boot Downloads/twrp-3.2.3-3-crosshatch.img
Downloading 'boot.img' OKAY [ 1.787s]
booting FAILED (remote: 'Error calling AvbLoadAndVerifyBootImages Load Error')
Finished. Total time: 2.183s

Am I the only one?
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Topse:
i faced the same.

someone said you could fix it if you flash system image.

I have not tried this yet.

since I only restore the data partion I do not have this problem anymore.

also flashing magisk directly after flashing rom didnt work for me.

i need to reboot bootloader and fastboot boot twrp again, after that i can flash magisk without error.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Segnale007:
I have been through a great deal of unneeded trouble within the past two hours and I discovered this

If TWTP if failing to flash/restore due to an error with the /vendor partition

1) reflash TWRP via adb sideload and do not reboot
2) adb sideload and flash the rom on top
3) reboot

If phone wont turn on
1) Power on + Volume down until you are in the bootloader
2) fastboot getvar current-slot
3) Try chaning to the other slot to see if a boot img is installed
fastboot set_active a/b
fastboot reboot-bootloader

If all of the above has failed, reflash factory image.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Topse:
what do you mean with this?

"reflash TWRP via adb sideload "
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Homeboy76:
- update SDK Platform-tools (r28.0.1)

- place all files you want to use fastboot or adb with in Platform-tools folder or set enviorment variable for Platform-tools folder

- fastboot flash boot boot.img --slot all (will flash boot img to both slots)

- [Guide] Pixel 3 XL Android 9.0 (Pie) Unlock/Root/Install Images/Kernels/Recovery + December 2018 Security Patch
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Topse:
flashing boot.img didnt worked for me as i had this error :

FAILED (remote: 'Error calling AvbLoadAndVerifyBootImages Load Error').

someone said (in this thread) fastboot flash system.img would work.

the question is what is the reason for this mistake.

I had this error after trying to restore a backup (boot, vendor, system, data).

since I only restore the data partition I do not have this problem.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] NepoRood:
I went back to using TWRP 323-1

I haven't had any problems restoring my backups (excluding stock) and I no longer got the "failed to mount vendor" errors

PS, when backing up, don't select the system partition, use system image instead ;)
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] bigbiff:
Can you guys let us know what you are restoring, are you using a dm-verity rom (stock or otherwise), post recovery.log of the backup and restore etc?
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jd1639:
[MENTION=2638973]bigbiff[/MENTION], I have a pixel 3 so am using twrp-3.2.3-0 for blueline. I backed up boot, system, and data for the dec. firmware with root (magisk 18.0) and ElementalX kernel (P3-1.03). I did the standard wipe and then restored the backup (system, boot, and data). Upon rebooting to system it went to a black screen. I was able to boot to the bootloader and flashed the factory image, without wiping the device. It booted fine and all my apps and app data were there so it did restore the data partition. Recovery logs are as follows:

backup recovery log, https://www.androidfilehost.com/?fid=11410963190603880545

restore recovery log, https://www.androidfilehost.com/?fid=11410963190603880547

Hope this helps and maybe for the pixel 3 xl things work differently.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] bigbiff:
You probably restored a modified system image which dm-verity won't work with. Use system_image and always make sure TWRP is read-only, otherwise system will be modified and you can't boot the kernel because it can't verify system anymore.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jd1639:
So you're saying to backup and restore the system image and not the partition? Would I still restore the boot and data partitions? And do I need to do anything with the vendor image?

And if I keep twrp read only and install the twrp zip, with the stock kernel, I'll lose twrp on a reboot, right? Which is fine as it's easy enough to boot to it.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] bigbiff:
You should backup/restore system_image, data and boot if you are restoring a dm-verity based rom, stock or otherwise.

If you are using a rom with disabled dm-verity, you can back up system as a tar, boot and whatever else. I don't think you need to backup and restore vendor unless something messes it up. If you restore a boot image without TWRP ramdisk, you will have to reinstall TWRP from fastboot to re-inject the TWRP ramdisk.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Homeboy76:
My apologies I misunderstood your question.:(
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] biggiesmalls657:
I had that error too but I just fastbooted back to stock then loaded TWRP
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jd1639:
If you're talking about full wipe in advanced wipe it wipes the OS so there's nothing to boot to.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] biggiesmalls657:
I never wiped System, a factory data reset is enough to install anything. I had an error in twrp about a permission denied for /system then it boots to nothing after I flashed my ROM. Apparently the partition got corrupted cause I fixed it by fastboot and loading TWRP.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jd1639:
[MENTION=2638973]bigbiff[/MENTION], [MENTION=7037416]joetheshmo[/MENTION], [MENTION=321718]geeker[/MENTION]. TWRP backup and restore is working. It was operator error on my part and I apologise for that. If you backup and restore boot, data, and system image it's all working well.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Gordietm:
I would just like to recap here. I am on stock, using twrp 3.2.3-3 and if I want to try a custom rom and don't like it. If I back up data, system image and boot, I should be able to restore with no problem?

When I back up, should I enter my password in twrp or do it as read only?
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Topse:
No need to apologise:eek:
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
I back these up on both December Stock and DU and after restore my phone boot to the Google screen and reboot back to TWRP .
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jd1639:
Yes, it boots for me without a problem. But note that I have a pixel 3, not the xl, so there may be some differences. I used my pin. I also tried with read only but it got to the data partition and got an error and the restore wouldn't complete, error 255I believe. The only problem I had after the restore was TiBu app would force close and I couldn't clear that so something isn't completely right.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] NepoRood:
Flash Magisk again ;)
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
Did you try uninstalling Titanium backup restart your phone and reinstalling it ?. That use to work for me .

---------- Post added at 01:32 PM ---------- Previous post was at 01:31 PM ----------

Have you successfully done this ?.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Eudeferrer:
If I'm not mistaken, After you recover the OS you need to also flash Magisk if you were rooted. Otherwise it won't boot up.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
I think i tried that . Gonna backup December Stock , flash DU and try going back to Stock backup .

---------- Post added at 02:29 PM ---------- Previous post was at 02:29 PM ----------
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] NepoRood:
You'll probably need to flash the stock ROM again, with the -w removed, of course. I haven't tried with latest versions on TWRP though, so YMMV
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
Did you do this on Stock December update ?

Edit: Just tried restoring stock : system.img, boot and data and it just boot back to twrp even after flashing Magisk .
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jd1639:
I did it on rooted Dec update with elementalx kernel and twrp recovery. On restore of boot, system, and data after a wipe of caches, data, and system I had the same.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
You had the same issue i had ?
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] biggiesmalls657:
I did as well so I made it stock. Then booted TWRP
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jd1639:
No, it restored successfully. But i did install dirty unicorns later and in that case I ended up with a non responsive twrp touch screen and couldn't restore without doing some other work arounds. Also, keep in mind I have a pixel 3, not the XL version. Although I don't think that should make a difference.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
I think it's a hit or miss with the Pixel 3 XL . I use to love the option of switching backups at will . I remember when you could even use an app to do so .
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Gordietm:
I know. I remember when you could keep a couple of different backups and switch back and forth.

Now I'm afraid to restore a backup. ?
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Maty360414:
mine is booting to twrp? what can i do
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] lollyjay:
If you had magisk installed then you should flash it again. That is the major reason for your situation
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
That doesn’t fix it for me . Backups are just not working properly with the Pixel 3XL
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] bigbiff:
Are you restoring a modified system on a dm-verity ROM?
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] NepoRood:
I flashed DU the other day and later restored my Scorpion backup without any issues (Boot, System Image and Data)
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Hotdizzle:
Wish I would have read all this 2 days ago. Finally got my phone to boot after 2 days, and 2 PCs. I can't even recount the horrors. This device is "different"
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
I was on DU and tried to restore stock December update . On the stock backup i had substratum theme, didn't theme any UI just apps . I also had Edge sense Module installed in Magisk .
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] bigbiff:
Did you restore system-image instead of the tarred up version of system?
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
Yes i restored System image, Boot and Data .
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] bigbiff:
Can you upload the recovery.log for both the original backup and restore so we can investigate?
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] joetheshmo:
They're just speaking from experiencing the same issue on walleye/taimen where if you had a custom kernel installed the no touch in twrp suddenly fixed itself....
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] quangtran1:
I'm thinking the same. I myself haven't changed ROM in a long while. Currently, I have root just to run TB, substratum, ad blocker, system tuner to remove nav bar, and ElementalX to undervolt to save a little battery, that's about it. I like stock ROM actually.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Golf c:
Twrp automatically flashes to both slots.

---------- Post added at 06:56 PM ---------- Previous post was at 06:38 PM ----------

I don't know if this applies to the Pixel 3XL. But it worked for building a custom kernel for the 2XL. I suspect it will be similar. I hope.

https://plus.google.com/+DeesTroy/posts/9jXf1rF7aic
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] State.of.mind:
Interesting. I don't know why it does that. However, from past experiences with the 2XL which did the same exact thing the only way to get it to work was to flash a custom kernel.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] spaceman860:
Touch drivers are modules on stock kernel that's why you don't get working touch when you reboot into recovery. Been this why on other pixels and will continue to be. A custom kernel will fix this issue.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Balino:
My touch is still not working on my 2XL with stock ROM and kernel lol you have to reboot multiple times then it will work fine for the current session
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] mrjaydee82:
I'll have my Pixel 3XL Tuesday...already started modifying the kernel..I'll test then and share if no one beats me to it. Source will be released once I post, as of now I have it set private
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] matssa:
As you may know, there are several guys out there that can maybe test this out for you ;) But maybe a bit late if you're getting the device tomorrow ^^'
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] janjan:
I was trying to compile kernel for Pixel 3 Xl but it failed due to cam_actuator_i2c_pkt_parse etc...

Did u face the above issue?
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] mrjaydee82:
I got my phone early got it today..I should be home in a couple hours and I'll post source and rebuild
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] TonikJDK:
May I respectfully ask that you start you own thread for it. It is certainly needed and appreciated by us in this thread, but it going to generate a lot of posts unrelated to TWRP.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] mrjaydee82:
Kinda realated to get touch to work properly..but yeah okay
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Geekser:
I am trying to boot into twrp on my Pixel XL 3 so I can flash Magisk - I am somewhat new to adb and not sure what the "Path" needs to be written as in order to boot into twrp.

The Twrp image file is located in my C Drive, Platform-tools folder - what I dont know is how to write the command - using this line - fastboot boot path/to/twrp.img (what do I replace "Path" with ?

Sorry for such a noob question - but I am an old samsung user and just getting used to doing ADB - it is a ittle over my heard but wanting to learn... help is appreciated
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] ridobe:
Path is absolute. You only need to specify path if your doing your work in a different folder. If you're doing this from your platform tools folder the it's just simply:

fastboot boot [TWRP.img]

edit: also assuming the TWRP.img is in that folder.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Geekser:
thank you - very helpful - I was able to accomplish what I wanted - booted into twrp - flashed Magisk 17.3 - now fully rooted. From what I understand flashing TWRP causes issues with touch screen but booting into TWRP like this allows you to use TWRP to flash - thanks for the guidance, I really appreciate the help.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] spotmark:
Coming from the Essential phone and not having permanent TWRP until recently, not to mention Blek's chants of "you don't need permanent TWRP", it's become second nature just to fastboot a temp TWRP each time I need to update/root.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] _LLJY:
i managed to compile and boot my kernel, perhaps we will have 2 kernels on the forums :P
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Geekser:
so, it was said that we needed a CUSTOM Kernel to flash prior to flashing TWRP on the Pixel XL 3.. because without a custom kernel there would be issues with touch resonsponsiveness. There is now a new kernel avaialble and I wonder if anyone has sucessfully flashed the kernel and twrp?

just wanted to know if this fixed the issue and that with this kernel we could now flash TWRP successfully on the 3 XL ?
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] spotmark:
You might want to read the thread about the kernel.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] UltraPower31:
When the phone is using slot A, is there an app that can reboot into slot B? So we could install the regular rom on slot A and the TWRP boot kernel on slot B to have it permanently with touch.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
I already flashed Stock December update and did a complete wipe would have to back up stock and try again to get log. Gonna delete My stratum theme and Edge Sense Modules then backup . I will then factory reset and try to restore backup will on the same stock . The will try restore said stock after installing DU . For the log i should just do copy log in TWRP if didn't work and boots back to TWRP ?.

Edit : So a backup and restore of the same stock Rom went fine after wiping System, data and dalvik . Not sure if it's because i removed Substratum them and Magisk Module. Gonna try with DU soon.

Didn't boot when trying to restore stock after been on DU and i collected the log and lost it after flashing. I flashed the wrong flash.all.bat, flashed the one with -w by mistake. Gonna have to do it when i have time again.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] Gordietm:
Just as a side note, why did you go back to stock instead of staying on DU?
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
No reason, i just love to switch roms, DU runs great . That's why i miss the ability to switch backups without issues.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] bggold:
I was able to successfully restore my backup to my other pixel 3 xl.

Twrp 3.2.3-3 patched with tipatch to include sdcard

Proton v8

Magisk 18.1-r7 kantjer

Backed up.

Boot

System image

Data

Restore to pixel 3 xl

Boot

System image

Data

Before rebooting flashed magisk

Boot up just fine.

Hope this helps others.

Thanks
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
What rom did you restore and what rom where you on when you restoerd ? . I was able to restore a backup of stock and i was on when i did , It seems if the rom you are on is similar to the one you are restoring then restore will boot.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] bggold:
I did stock to stock. Could it be dm-verity causing the non stock restore issue you are having?

I did it as a test. I usually just backup data and restore data to stock. I have not loaded any custom roms yet.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
Not sure
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
I always get this after installing Magisk but it seems to work fine after install :-View attachment 4673216
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] bggold:
I see it too when flashing with twrp. It used to happen a while back and it can be ignored.
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
Yeah restore goes well if the rom are similar . Restored from DU to Scorpion Rom and visa versa without any issues . I think restoring stock from any of those is where the issue arise .
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] swieder711:
Was on TWRP 3.2.3-2 and flashed 3.2.3-3. Got stuck in a TWRP bootloop. Lost touch screen. Slight panic.

Reinstalled Magisk and everything is back to normal
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] jawonder:
Flash a custom kernel e.g. Ex kernel . I think you can use the app to do so .
[Google Pixel 3 XL ROMs, Kernels, Recoveries, & Oth] swieder711:
Already had a custom kernel installed before the TWRP upgrade. Been using Kirisakura with very good performance, memory management and battery.