Hei guys, I'm really, really new to this.
I've just flash andy's port of CM7 based on 2.3.4. I'm having a really though time with the battery, it goes down 50% faster than on my previous 2.2.2 official Froyo from LG.
Anyway, this question is about overclocking.
So, inside CM7 settings there's this "Performance" menu, in which you can go to "CPU", I've set there smartass governor, minimum 122 and maximum 768.
What does that mean? Does that mean I'm overclocking my CPU? Does it mean that smartass will allow or push the CPU to 768 when it's needed? Do I need to do something else in order to achieve that? (i.e - use get the CPU at 122 while screen off and increase it according to demand up to 768). - that's what I'm after.
Any response on the topic(s) much appreciated.
Thanks.
Regarding battery - calibrate it with the app from the market
Regarding OC - yes, when you'll use the phone your cpu will run at 768 mhz (note that you might get kernel panics). Your minimum speed is pretty low and it will take a little longer to get to 768... you will see some skips or lags.
Oh, and yes! You're overclocking and smartass will do what you're looking for (idle-122/in-use-768).
Sent from my LG-P500 using XDA Premium App
I would kick the min up to 480. That usually gives you a good balance.
Sent from my LG-P500 using XDA App
Thanks for the fast response.
As for the battery, I tried calibrating it and still the same.
I'm reporting 10% (exactly) each 2 hours, in idle, screen off, everything turned off except mobile data on EDGE.
At this rate, the phone goes dry in exactly 20 hours with minimal to no use. This isn't normal.
It heats up when charging (more than usual).
In battery stats I have all the four ones (android system, cell, etc.) at 25%.
No apps installed.
Just a few hours ago I tried replacing the stock kernel of andy's with the latest from franco (16) and zram.
Exactly the same.
I don't know what else to do, I already reflashed it twice. Same results. I can't post to the development forum just yet (not enough posts).
I guess I'll just go ahead and try mik's port... although I wouldn't want to, I love this one, everything works perfectly except the battery thing.
Did you use google maps?
"Known bugs
[...]
- Google Maps is eating your battery, kill this app after using in Setting->applications
[...]"
i think smartass does automatically change your cpu's frequency when you need it..but your minimum frequency is too low..change it to 320 Mhz....and are you using 3g all time..??
Yes, used google maps but killed it. Second reflash didn't even install it and still the same problem.
No, I didn't use 3g at all.
I only kept mobile data active on EDGE. and as I said, it was in idle. it's like the phone was used 24/7 even in idle.
and why is my cpu to low? the phone works like a charm with that frequency.
Check the 2 g networks only box in settings-networks- mobile networks....that may be the reason
Sent from my LG-P500 using XDA App
It's checked alright. Like I said, I used it on the EDGE (2G) networks.
Anyway this doesn't matter anymore since I've switched to mik's rom.
you can give void# forever a try too...gives me two days battery life on moderate use...
Okay, I will.
Related
Does anybody know if it's safe to use SetCPU on the D2? The processor is fast enough. I'd just like to see if i can stretch the battery by underclocking it while the screen is off as I've read is commonplace on other phones. Thanks.
I would definitely like to know also cause if you can I would root right away
Sent from my DROID2 using XDA App
I rooted yesterday and setCPU was one of the first apps I installed - just for underclocking when asleep! Seems to have worked fine, no problems yet.
Yea I autodetected speeds and it seems fine. It won't allow you to overclock yet until we are able to either get a new kernel module to do it or a full kernel (bit off still, even droid x can't do that yet). I underclock when screen is off and that works just fine
ok. thanks. i've been running it for about 12 hours now to underclock with the screen off and so far, no issues. this phone is getting better by the day.
I've used SetCPU to underclock while the screen is off. My battery life is much better than before. I've also removed some of the bloat.
Sent from my DROID2 using XDA App
I too have been using SetCPU to underclock when the screen is off or when I'm in class. I haven't had any problems yet.
It's the first app that I've paid for but thats just because I'm cheap, but that's only because I'm a broke college student.
I'm running SetCPU 2.02 no problems. I'm actually running my phone underclocked to 800 and it's running fine. Screen off is set to 600.
What is the best overclock app for a rooted Eris running Froyo 2.2?
What is the best min/max setting too for performance?
I use SetCPU. It really depends on what you want.
I want the best performance possible, without overheating my phone
No matter what you're going to heat up when overclocking. If you use setcpu don't use the widget.
What's the safest maximum performance setting then?
What about overclock widget app (free)? I'm using that now. It seems ok, not sure though compared to setcpu.
ChadZ said:
What's the safest maximum performance setting then?
What about overclock widget app (free)? I'm using that now. It seems ok, not sure though compared to setcpu.
Click to expand...
Click to collapse
that widget app sucks. it's nothing compared to setcpu. I run 768max 19 min, and I have a full day of battery life, using it fairly regularly every day. I rarely have lag, and it's fast too.
using kayosfroyo btw.
Every processor is different. Some people get get to 844mhz, some people can't push past 710mhz. You need to find what's right for you.
I personally get up to 787mhz.
I run 806 all day no problem. But faster is a reboot. All phones seem to be different on their safe max w/o crash. I use setcpu myself. It's free on this fourm for members.
Sent from my Cyno Tazz 3.0 using XDA App
Yes, SetCPU is best. I can clock mine to about 806 and I get about 48 hours of battery... every phone is not the same, remember that!
using setcpu here as well. 825mhz no issues
Im using set cpu as well at 768 max and 245 min. Make sure u dont have set on boot if ur going to test the limit of ur phone, I did and was able to go 806 and past rat my phone locks up and on every reboot the same so I had to uninstall in using command prmpt from pc
Sent from my FroyoEris using XDA App
SicNside, were did you find the info for OCing? I don't quite get the whole "minute" thing. Can you point me in the right direction, as in a guide with explanations and recommended settings? Every post I find about OCing the Eris is old, and says "hasn't been done"
Sent from my FroyoEris using XDA App
Yeah ill type out what my settings r to give u an idea, later when I get home to access a computer.. what I meant for min= minimum
Sent from my FroyoEris using XDA App
Read this page http://forum.xda-developers.com/showthread.php?t=761940 and it will give you a little understanding on setting up for performence and setting up for performence With Higher battery life. This is the place i liked the best only because i needed increse speed with out loosing to much battery power due to not being in a place to set phone on the charger like i work 9 hours a day and i like to listen to music and fiddle on my phone on breaks.. Plus honestly my phone does not seem to be performing any slower than it was with a high performence setup i used to be 480 min with a 787 max, and somtimes higher but 245 min with 748 or 19 min with 748 i still have not noticed anything being slower than when i had it set at 480 min 787 max..
But i cant stress enough that dont have it set on boot when u are trying to find ur phones limits because if u do have it set and find ur phones limits u will have to adb that crap to uninstall it. find the settings u want for your phone before you set on boot
Edit: And i have also been seing people post that after testing they have not found there Eris being any faster than 710 just that higher decreses there battery life. Which is Maybe why kaosfroyo has it alrdy clocked at 710 but i dont know, you cant quote me on that.. I hope i was of some help
Undervolting and profiles.
I have tried a crap ton of different undervolting setting, but none work
Also the profiles in set cpu don't seem to work for me. I have a few of them set and it always sits on the top one I need some guidence with both please!
Another thing my xda premium app isn't pushing my notafications yes its set
Sent from my MB860 using xda premium
Undervolting is a delicate process. It takes time to find the max undervolt that is stable. With that being said, try undervolting everything by the lowest amount which is -25mv. Check to see if that is stable. If so proceed to go further. Remember lower freq will typically undervolt farther than higher frequencies.
As far as profiles go your probably not using the priority values right. The higher priority is what determines which profile setcpu uses. So for instance if you want a safeguard against overheating, you could set the profile for when the cpu goes above 55C to throttle the processor way down. If you set this profile to 100(max) it will overide all other profiles at 98, 99, 75, 50...etc. Also this may be obvious to some but be sure to tick(enable) the profiles button. If thats not ticked then it doesnt matter how many profiles you have set up. It simply wont use them.
jack_slapped said:
Undervolting is a delicate process. It takes time to find the max undervolt that is stable. With that being said, try undervolting everything by the lowest amount which is -25mv. Check to see if that is stable. If so proceed to go further. Remember lower freq will typically undervolt farther than higher frequencies.
As far as profiles go your probably not using the priority values right. The higher priority is what determines which profile setcpu uses. So for instance if you want a safeguard against overheating, you could set the profile for when the cpu goes above 55C to throttle the processor way down. If you set this profile to 100(max) it will overide all other profiles at 98, 99, 75, 50...etc. Also this may be obvious to some but be sure to tick(enable) the profiles button. If thats not ticked then it doesnt matter how many profiles you have set up. It simply wont use them.
Click to expand...
Click to collapse
When I was on alien rom, I tried 25 on all and it restarted after like a minute. What worked for me was 25 25,50,50,75,75,100 fromm bottom to top. I tried it with cm7 and total no go lol
Lemme tryi 25 on all and see what I get and I didn't know that. They all werent working, so I set them all to 100 lmao, I understand that now
Sent from my MB860 using xda premium
Aparently its been running 125,125,50,75,75,75,75bottom to top cm7 with 1.3 kernel.
It did restart a couple min ago randomly. Will keep posted
Sent from my MB860 using xda premium
Glad your getting some results. If it restarts even once it means at least one of your undervolted freq isn't stable. With your settings I would wager its in the uper freq considering your undervolt in the lower freq isn't too extreme. You might try decreasing the undervolt for your upper freq to -50 -50 -50 starting at the top. Might help to stabilize bc higher freq just require more voltage. If that proves to be stable continue trying to reduce the lower freq as much as possible. Mainly bc if you set your profiles right(screen off is the most important really) your phone will spend the majority of its time on the 200mhz freq. Thus the more undervolt on that freq should theoretically give the most benefit from undervolting. This is just all from personal experience. I'm no guru. Just spent way too much time adjusting voltages on phones . And of course having the upper freq undervolted as much as possible cant hurt either.
jack_slapped said:
Glad your getting some results. If it restarts even once it means at least one of your undervolted freq isn't stable. With your settings I would wager its in the uper freq considering your undervolt in the lower freq isn't too extreme. You might try decreasing the undervolt for your upper freq to -50 -50 -50 starting at the top. Might help to stabilize bc higher freq just require more voltage. If that proves to be stable continue trying to reduce the lower freq as much as possible. Mainly bc if you set your profiles right(screen off is the most important really) your phone will spend the majority of its time on the 200mhz freq. Thus the more undervolt on that freq should theoretically give the most benefit from undervolting. This is just all from personal experience. I'm no guru. Just spent way too much time adjusting voltages on phones . And of course having the upper freq undervolted as much as possible cant hurt either.
Click to expand...
Click to collapse
25,50,50,50,50,75,75
Still getting a reboot:'(
Only good thing about the reboot is it turns on instantly
PROFILES CONFIRMED WORKING trying to indwrvolt this thing
I think I'm gonna order another battery too bc this one isn't getting the 16 hours it was, I cant say much bc I'm screwing with the settings hardcore xD I will show.all settings in a sec
Sent from my MB860 using xda premium
Sent from my MB860 using xda premium
Blahhh
Put blah there so it would post lol. Also going to download a stress test or quadrent thing to test the stress and find maximum uv
Sent from my MB860 using xda premium
Undervolting COMPLETE=D
QUAD SCORE! OCED 1.3 CM7
Right now I'm thinking my battery life is going to be amazig and if I turned the data off when not using it... omg I would last like 2 straight days prolly=D
So pumped to test everything morrow!!
Side note:800mhz or above wont go past 75 >:/
Had really important question to ask you but forgot
Also tried putting 215 to 275 that was a no go lol. My question was is there a battery manager and info like the stock one for cm7?!!!
Sent from my MB860 using xda premium
Smittyzz said:
Undervolting COMPLETE=D
QUAD SCORE! OCED 1.3 CM7
Right now I'm thinking my battery life is going to be amazig and if I turned the data off when not using it... omg I would last like 2 straight days prolly=D
So pumped to test everything morrow!!
Side note:800mhz or above wont go past 75 >:/
Had really important question to ask you but forgot
Also tried putting 215 to 275 that was a no go lol. My question was is there a battery manager and info like the stock one for cm7?!!!
Sent from my MB860 using xda premium
Click to expand...
Click to collapse
well my battery was draining mad quick so I am not overclocking It anymore unless I want to show off or play games lol, lost 20% in one hour. Now its stable and undervolted
Sent from my MB860 using xda premium
First off, regarding SetCpu and over / undercloking, dev has said it'll only underclock/overclock ONE core at a time. It's a bug and he's working on it from what I understand. If both cores are needed to be in use at the same time, no over / underclocking will be applied. Secondly, profiles work as they should in SetCpu, so that's a problem on your end. Third, the undervolting can't be more than 100mv differnce between jumps. See screen shot.
http://www.multiupload.com/YUK0KPXZLJ
Phalanx7621 said:
First off, regarding SetCpu and over / undercloking, dev has said it'll only underclock/overclock ONE core at a time. It's a bug and he's working on it from what I understand. If both cores are needed to be in use at the same time, no over / underclocking will be applied. Secondly, profiles work as they should in SetCpu, so that's a problem on your end. Third, the undervolting can't be more than 100mv differnce between jumps. See screen shot.
http://www.multiupload.com/YUK0KPXZLJ
Click to expand...
Click to collapse
I understand the 100 thing and I got the undervolting and profiles done. I hope he gets both cores supported soon and thank you dmfor the reply
Sent from my MB860 using xda premium
Yea Im skeptical about not setcpu not having support for dual cores... Did some searching on the net and couldnt find anything to support that. As far as not the tegra 2 not being able to do over 100mv jumps. That's not true. My lowest frequency is 600mv (-150) and my next frequency is at 750mv. That's a 150mv difference right there... And I'm completely stable. Its entirely dependent on your processor. They are all different and respond differently to undervolting. You just have to find what works for you. Generally though the lesser the jumps in voltage will give you more stability.
a good kernal helps too im useing faux123 v2.0 0C1.3 its undervolts quite well
us/alienv4UL/OC1.3{webtop2sd{fixed}
Okay, I looked at what ziggy and cron247 did over on XDA and tried to make it better.
This kernel is unsecured, meaning adb connects with root.
It OverClock's up to 1.836MHz.
It has the SmartAss V2 governor.
It uses my ramdisk, not the one you have. I cannot forsee this being an issue. If it becomes one, let me know.
Updates:
Version 1.1.3 changes the version of lagfree, the old one was having issues. Also removes forcing the second CPU to be online which was causing choppiness.
Version 1.1.2 adds increased read ahead, writeback tweaks, decreased dirty ratio settings, simple I/O scheduler, and the lagfree governor.
Version 1.0.5 adds mpdecision fix by Mr X, thank you whoever you are, if you removed mpdecision, put it back. Also added voltage control for you UV lovers.
The only control program I have tested to work is AnTuTu CPU Master (Free), I have had issues with SetCPU and a few others. This one does speed, governor, and voltage all very well.
Get it here: AnTuTu CPU Master (Free)
The following problems seem to be fixed at this point: governor and speed settings not sticking, smartass staying at top speed, random reboots or bootloops overnight.
READ THE INSTRUCTIONS, THIS IS A SINGLE FILE
To install this kernel:
Copy the file to the root of your SDcard.
Reboot into recovery (CWR or AmonRa).
Flash the file from the SDcard.
At the end of the flash the phone will reboot to fastboot.
Once fastboot loads, tap PWR to get to HBOOT.
HBOOT will find the update and ask you to install.
Tap Vol Up to begin the install.
When it finishes it will say tap PWR to reboot. Do it.
After the phone boots remove the PH98IMG.zip file from your SDcard.
Use AnTuTu CPU Master (Free) to set min/max/gov/voltage.
Enjoy!
Thanks to ziggy and con247 for getting us started and having stuff out there for me to get ideas from.
Download:
Link: dsb9938 Kernel 1.1.3
MD5: a2558e70f9af572f43e258c9aedb4b40
Source on GitHub.
My favorite Rezound kernel so far. Haven't had one crash, even at max OC. Thanks so much guys at BAMF!
This kernel has been good to me too.
I just wish I could get a handle on thie weird issue. Any of these other than stock kernels seem to have the minimum cpu speed jump up to the max cpu speed, then back down constantly, and I cant figure out the deal.
I can check on mine periodically and my min says 192, than a couple seconds later it says its the same as my max. Ugh.
dccoh said:
This kernel has been good to me too.
I just wish I could get a handle on thie weird issue. Any of these other than stock kernels seem to have the minimum cpu speed jump up to the max cpu speed, then back down constantly, and I cant figure out the deal.
I can check on mine periodically and my min says 192, than a couple seconds later it says its the same as my max. Ugh.
Click to expand...
Click to collapse
I noticed that as well
I also had a problem yesterday morning where my phone locked up when my alarm clock went off - forcing me to pull the battery to turn the sound off - not sure if that's kernel or ROM related (running CleanROM 1.5)
Argent36 said:
I noticed that as well
I also had a problem yesterday morning where my phone locked up when my alarm clock went off - forcing me to pull the battery to turn the sound off - not sure if that's kernel or ROM related (running CleanROM 1.5)
Click to expand...
Click to collapse
It's kernel related; I'm running rezrom and had the same exact issue with my alarm running this kernel.
Do you think ziggys is more stable?.. or do I just need to find the right overclock/underclock settings?
I seem to recall seeing them have that problem on ziggy's - but I never had that problem on earlier versions of dsb's - so maybe it's just something that is fixable for the next release
*wanders off to test it again*
This is no doubt me doing things wrong that led to this, but I downloaded the kernel through the phone browser, then flashed it from the download directory on the internal SD. When I flashed Incredikernel from there it copied the PH98 to the sdcard, but no dice on this kernel until I copied it to the sdcard then flashed it.
I probably should have copied it to the sd card myself first anyway, but I figured I would let you know!
Well this morning - my alarm clock went off - I was able to snooze it - and then a few minutes later the phone went in to boot loops - had been running stable all weekend - once I pulled the battery the phone booted back up just fine.
we'll see if it repeats this behavior tomorrow morning or not...
Call recording support in the kernel?
timp123 said:
Call recording support in the kernel?
Click to expand...
Click to collapse
Nope, only Ziggy's kernel currently supports this.
I only set one alarm at a time usually, but I have one set to go off every morning at 7:30 & it has worked perfectly everyday for a few weeks now.
~John
Curious to see what settings people are using (min/max) as well as voltage control to get best battery life. Downloaded the CPU Master Free and wanted to set it up. Thanks
sandman_nyc_316 said:
Curious to see what settings people are using (min/max) as well as voltage control to get best battery life. Downloaded the CPU Master Free and wanted to set it up. Thanks
Click to expand...
Click to collapse
My default setting is 384 - 1512. I have a charging profile that OC's slightly to 1620. I also have profiles for a hot battery (which I have never had) and power under 20% which UC to 1296 and 1060 respectively. I use sio for scheduler (although that tends not to stick). My minimum UC is 384, nothing lower (I've read of bootloop issues with lower frequencies on the Incredible).
I undervolt everything from 384 to 1404 by -50; and 1512 by 25. Everything else is default.
I have never had a crash or reboot with this kernel on stock ROM.
hgoldner said:
My default setting is 384 - 1512. I have a charging profile that OC's slightly to 1620. I also have profiles for a hot battery (which I have never had) and power under 20% which UC to 1296 and 1060 respectively. I use sio for scheduler (although that tends not to stick). My minimum UC is 384, nothing lower (I've read of bootloop issues with lower frequencies on the Incredible).
I undervolt everything from 384 to 1404 by -50; and 1512 by 25. Everything else is default.
I have never had a crash or reboot with this kernel on stock ROM.
Click to expand...
Click to collapse
Thanks! How's your battery life been with those settings?
sandman_nyc_316 said:
Thanks! How's your battery life been with those settings?
Click to expand...
Click to collapse
Decent. I can get 10 solid hours or more of moderate use when I cannot be near a charger. I can stretch it further by turning off LTE and background data. Heavy data use tends to be the biggest killer. I keep my display at 30%, too, and use smartass v.2 as default.
hgoldner said:
Decent. I can get 10 solid hours or more of moderate use when I cannot be near a charger. I can stretch it further by turning off LTE and background data. Heavy data use tends to be the biggest killer. I keep my display at 30%, too, and use smartass v.2 as default.
Click to expand...
Click to collapse
Appreciate it. Gonna see what happens. Will update with my results. Thanks again!
I wonder what is causing all these boot loops for us all. Do you guys think it's the voltage? Perhaps the software?
zetsumeikuro said:
I wonder what is causing all these boot loops for us all. Do you guys think it's the voltage? Perhaps the software?
Click to expand...
Click to collapse
Good question. I haven't had a single bootloop since flashing this kernel after coming from Ziggy's. Been running this 192min/183max and UV'd -75 across the board and running great.
Hopefully I don't jinx myself.
Guys with bootloops/lockups...are you running any profiles?
Make sure you do a dalvik cache wipe....
Ziggy's would always lock up on me (multiple times per day) so I gave up on it. The only problem I have with this on (and this was a problem with Ziggy's too) is the min jumping to max.
My frequencies bounce on this kernel. It spends about equal time between the highest setting, and lowest setting. It works great other than that. My question is this bad for my CPU? I get great battery life, and performance, just scared the bouncing could be bad for the processor. Any help would be great.....
Sent from my ADR6425LVW using Tapatalk
http://www.tomsguide.com/us/overclock-android-device,review-1762.html#xtor=RSS-998
Opinions from people who really know? I can't imagine that overclocking increases battery life.
It doesn't. At least from my understanding. In fact as I understand it running at higher clock speeds would decrease your battery life no? I usually under clock, so...
Sent from my SGH-I777 using xda premium
The theory is that overclocking allows you to complete processes quicker, which in turn allows the processor to go back to a idle/deep sleep faster. In practice it doesn't really work that way though.
ryude said:
The theory is that overclocking allows you to complete processes quicker, which in turn allows the processor to go back to a idle/deep sleep faster. In practice it doesn't really work that way though.
Click to expand...
Click to collapse
doesn't the increase in voltage also come into effect?
They did talk a little about undervolting to increase battery life. Personally I don't worry about it. I'm not using my phone to sort out heavy algorithims at the moment, so running how it does is fast enough for what I use it at. Just found the article interesting.
K Rich said:
doesn't the increase in voltage also come into effect?
Click to expand...
Click to collapse
They say the undervolting on lower clocks should balance out the higher voltage on overclocks.
stalked_r/t said:
They did talk a little about undervolting to increase battery life. Personally I don't worry about it. I'm not using my phone to sort out heavy algorithims at the moment, so running how it does is fast enough for what I use it at. Just found the article interesting.
Click to expand...
Click to collapse
Undervolting rarely makes a difference on mobile SoC's, but on the desktop/laptop CPUs you can really save a ton of power with undervolting and underclocking.
Why to overclock and understand it?
Here is a good reason to know what you are doing..
and the battery avg's lasting at least through the day, but most of the time, I have a charger near me...
EDITED: because it won't accept my screenshots HTML Probably cause I have n00b status on this account name.
AnTuTu Benchmark v.2.8
Total Score: 7446
RAM: 1201
CPU Int: 2264
CPU Float: 1767
2D: 295
3D: 1148
Database: 450
SD W 11.8MB 118
SD R >50MB 203
1600mhz
2012-05-23 18:17
You can view this SN here: Screenshot
Fluxi Kernel/My own OOM settings/AOKP/my own XXTweaker settings
The article says its not the actual overclocking that is saving battery life. When you put SetCPU on your phone not only can you overlock but you can underclock and set different voltages. I'm not 100% sure how the voltages play into it but you can set the processor to run at really low speeds during certain acts ei. when the screen is off, or any other time you don't necessarily need alot of power. That's and I changed all the voltages (I got them from a post where the guy knew what he was doing and tested them). I get almost 2 days moderate browsing, apps and text. If I talk alot or use my hotspot I only get 1.5 days. It is a little time consuming to get everything just right but when you do you really see it.
icyhandlz said:
The article says its not the actual overclocking that is saving battery life. When you put SetCPU on your phone not only can you overlock but you can underclock and set different voltages.
Click to expand...
Click to collapse
This isn't a SetCpu feature there are other programs that can do this as well. It just so happens SetCpu has it built into the program. I bought SetCpu back in my Atrix days and loved it so it does work great for a simple tuning program.
Sent from my SGH-I777 using Tapatalk 2
Many of the kernels these days have their own tweaks and mod apps as well
Sent from my SGII AOKP Fluxi i777 running Beastmode OOM using Xparent Sky Blue Tapatalk 2
I'm running a kernerl and a custom ROM that allows me to underclock and overclock.
I tried it out both ways and the battery lasted for almost the same amount as on the stock option. As I tend to play games a lot on my phone, the underclocking ran into some issues with stuttering and sometimes force close of a couple of games.
Personally, I've never been a big fan of either .