Anybody using Dropsync with 5.0.x? - Shield Tablet Q&A, Help & Troubleshooting

The app developer hasn't updated it for Lollipop's new folder hierarchy permission, and he seems to be pointing everyone who asks about it to his Kitkat workaround (https://metactrl.com/docs/sdcard-on-kitkat/). I tried to create the necessary directory via ES File Explorer, but it couldn't create it. Consequently, Dropsync has become completely useless for me. Does anybody use it and have advice? I might be willing to root it if it solves the problem entirely... I hadn't had a reason to root prior. Lollipop penetration is so low that I can't find information on it anywhere else, hence why I'm hoping someone with a Shield has figured it out.

Unfortunately the only apps I've seen accessing the file system properly are the ones that have the special lollipop hack that it looks like was begrudgingly added at the last second.
That much being said, it is ENTIRELY possible that if you are not able to write to your SD card, it is because the SD card is not properly formatted. I recently posted an article somewhere in this forum about how I reformatted my SD card and got apps to write to it and everything was peachy keen.
http://forum.xda-developers.com/showthread.php?t=2973307
Disclaimer: I really hope this works for you but given my Thanks it's only been called functional by one other person besides me.

I actually did try formatting as NTFS (after seeing your post) and it was unsuccessful. However, I did quick format and I see now that your post says to format it twice. Perhaps I'll try it again this evening.
Thanks for your input, either way!

Any reason why not to root? DS works fine for me on 2.1 and starkissed kernel

Mathman85 said:
I actually did try formatting as NTFS (after seeing your post) and it was unsuccessful. However, I did quick format and I see now that your post says to format it twice. Perhaps I'll try it again this evening.
Thanks for your input, either way!
Click to expand...
Click to collapse
I'm sorry to hear that. I probably formatted my SD card a couple times too.
berryman13 said:
Any reason why not to root? DS works fine for me on 2.1 and starkissed kernel
Click to expand...
Click to collapse
Because warranty. Because good old days of not needing root.

Regarding root, I simply haven't had a need to with the Shield. With my phones and older tablets, there is functionality that I could only gain through root. But with the Shield, it's not like I'm removing carrier bloat, tethering behind the carrier's back, etc. I'm not necessarily worried about the warranty aspect... I do have microscopic hairline fractures on the corners, but I'm not petty enough to submit for a warranty exchange for cosmetic blemishes that don't affect performance, and I don't foresee other warranty-worthy issues.
Would root allow me to completely resolve the issue, though? As I mentioned, the developer's write-up specifically covers fixing the issue on KitKat, not Lollipop.

berryman13 said:
Any reason why not to root? DS works fine for me on 2.1 and starkissed kernel
Click to expand...
Click to collapse
OFF TOPIC but, what is the starkissed kernel? I searched the shield tablet forum for that keyword and this was the only mention it found....

PSA: If you encounter a problem where an app asks for write permissions for the sd card, but selecting it in the documents menu that pops up causes it to crash, format the drive as NTFS and assign a volume label. I had formatted as NTFS but not assigned a volume label and had this issue... once I assigned a label, it was remedied.
And the dropsync developer is updating the app to support these permissions very soon.

Related

Applications to SD - WITHOUT PARTITONING (BETA TEST)

I'm looking for beta testers for a new App2SD implementation that does not require your MicroSD card to be partitioned which is potentially unsafe and can result in a loss of your data. If you'd like to test this new implementation before it's release here on XDA shoot me an email at [email protected] with what firmware and version you're using.
More information will be released after I get a few positive beta tests out of the way.
loopback device, eh?
I tried that a while back but never could get the loopback driver to load early enough in the boot process reliably.
Hope you have better luck than I did.
As [email protected] pointed out to me a while ago, this is not a good idea for security reasons. If your loopback file sits on the FAT partition, it is accessible by all of the apps, it can be read, overwritten and deleted by a rogue app bypassing the entire android security model. If this is what you intend to do, it's probably not "safer".
Hey, shot you an email. Ready to try it out. But only for beta.
Hit me up, I have no apps to lose.
But security? Idk just let me know whats up.
what happens when you mount the SD card to your computer?
I'd like to try it, but i don't yet have a class6 sd card. Is that necessary?
i'd be willing to give this a shot. I have no data to lose as well.
southsko said:
what happens when you mount the SD card to your computer?
Click to expand...
Click to collapse
That's true. Won't all your apps disappear when you mount the SD?
This smells fishy not many app developers with 1 post can this be someone testing their new exploit/virus?No offense to original poster im just sayin....???
Edit:Sorry to OP clearly not a virus,and good luck on getting it stable I will gladly donate to your cause partitioning is a pain!
don't be a jackass, many people have had great ideas and decided to come to XDA to share them. just because you are a complete idiot who can't program does not mean that the OP is too.
@@OP
you are playing with fire my dear friend. i don't think that mounting your apps on the FAT32 partition is a good idea at all. not only because it would allow any program to access and write without asking android permission first, but because it would allow people to mount the SDcard and steal paid apps even easier. i beg of you please rethink your idea
I imagine the phone would be crashing when the phone is mounted to the computer. lol. just kidding. =]
tubaking182 said:
don't be a jackass, many people have had great ideas and decided to come to XDA to share them. just because you are a complete idiot who can't program does not mean that the OP is too.
Click to expand...
Click to collapse
WTF?Just came back to edit my post and put that its for real cause like I should have done first I found this http://noderat.com/loop2sd/.But as for your insults who the hell are you?How the f**k do you know what I can or can not do?I was posting in the first place to start trying be more active in the forums no reason for you to be a **** anyways,I was tryin to help people not get what I thought may have been a virus was that really that bad?
i'm not sure that is 100% true. when i mount my phone(apps2sd) my phone decides to mount the ext2 partion and the FAT32 partition, i am using ubuntu so my computer is able to read the partition, but my phone doesn't crash(i've yet to try running an app while mounted though)
Android can acces the sdcard while mounted.
Try terminal emulator.
crotalusfreak said:
This smells fishy not many app developers with 1 post can this be someone testing their new exploit/virus?No offense to original poster im just sayin....???
Click to expand...
Click to collapse
Well, take it from someone who has many posts and 15 years of unix experience, it is a bad idea.
Most of the devs here had this same idea, but as I mention in my previous post, this is opening yourself up to many bad security issues. To all those who answer, "I have no data to lose", that's fine as a beta tester. But what's the point in beta testing something that cannot be safely used by anyone who does have data (or apps) to lose?
I should point out to those who perhaps do not realize some the consequences of my original post, that it is not just a potential data loss problem, but a potential arbitrary code execution vulnerability. If an application manages to replace the loopback file with a new loopback file, it could inject altered common applications. If this succeeds, it means that previously trusted applications which have been granted privileges (or root using the various su apps) at install time, could be replaced with trojan versions which can have complete control over your system... steal your passwords... reflash your bootloader and literally install a permanent trojan... brick your phone... <insert other scary things besides data loss here>.
It's your phone, do what you want. I just figured that I would re-post that this not a new idea, but one that has been rejected by those of us with unix experience who realize the consequences. If you are just messing around, go ahead, it's not likely to hurt your phone. But, as a general method to build upon and be depended on, this should not have a future. If this becomes common practice, it is highly likely that exploits will be written to take advantage of this vulnerability.
So, if you are asking yourself if something is fishy, yes something is: it's a logical idea which seems great on the surface, but it has an unfortunate flaw.
Note: I am not suggesting malicious intent on the OP's part, just that they may not have thought of the consequences of suggesting this as a common method to do apps2sd. And if the OP (or someone else) is able to point out a method to avoid the things I warn against I will happily retract my statements (if I agree that this method would indeed work) since this method has some obvious benefits. However sadly, I think that is highly unlikely.
maxisma said:
Android can acces the sdcard while mounted.
Try terminal emulator.
Click to expand...
Click to collapse
No it can't. It can only access the empty mountpoint.
If you want to do this, there IS a way to make it work SAFELY....
Find the functions that control sdcard mounting and unmounting and FIX it so that it will mount an ext2 first partition. Then forget about the whole loopback thing as thats not going to do anyone any good... If you do it like this, then unionfs it, then unmounting the sdcard should safely vanish the apps that are stored on the card (leaving the internally stored apps), might crash the launcher, but that'll restart immediately and won't even error out.
A second step in the right direction would be to find the place where programs are detected from, which currently looks in /data/app, /data/app-private, /system/app, so it can clearly handle loading software from multiple locations -- add in a new path. Or maybe link app-private to /sdcard... A little more challenging would be to allow it look in multiple locations for thing that are ALL currently in /data/data and /data/dalvik-cache.
And then when its done, submit a patch for the source.
Wow what a response. Here's a few key bulletpoints:
I'm not a forum poster, not the kinda person for it but I have been on XDA Dream since I got my pre-launch G1 as a CSR.
There are potential security flaws with the current ext2 method of a2sd, and bypassing root to mount the ext2 partition is possible.
a2sd is not stable in any format, so it's a use at your own risk until android improves kinda deal.
I'm not cool enough to write a virus, but thank you for the ego boost
Anybody using a third-party firmware is not safe nor secure. If you're reading this forum you're not safe nor secure. The idea of homebrew roms is to add extra features that are not in Android to begin with and with that comes security risks. No ROM is ever perfect but I'd trust a Google or T-Mobile rom with my security before any homebrew-anything.So yes it's use at your own risk
This has the same results for mounting on a PC as MarcusMaximus's a2sd.sh
This doesn't really make it any easier to steal paid apps, it's always been easy and always will be but this doesn't change it.
If you guys have other questions shoot me an email, like I said I don't really do much forum-posting (never had much of anything to say, maybe this'll change all that)
[email protected]
JakeEv said:
I'd like to try it, but i don't yet have a class6 sd card. Is that necessary?
Click to expand...
Click to collapse
The faster the better but I've done it with the stock card that came in the G1 as well as a Class 6.
id try it since i can not get apps2sd to work.
[email protected]
using JF 1.51

[APP] Undelete Beta - recover deleted files on rooted devices

Undelete
Welcome to the open beta of our newest root application - Undelete for Android, an application for root users that allows you
to recover deleted files on your SD card or internal storage.
Features:
- Fast scanning logic
- Restore any file that has not been written over
- Securely wipe/shred files
- Works with images, video, music, archives and binaries
Currently, only FAT is supported. On Tegra devices, only the external SD is supported.
We may write a special version supporting EXT4 if this app is successful.
Be warned: this is an early Beta build, provided "as is" with no support of any kind.
We take no responsibility for any issues that may arise from using the app. In some rare cases attempting to restore files may
corrupt the memory entirely (though we have not seen this problem, it is theoretically possible).
That said it has been in development for a while and well tested on the devices we have at the office - Incredible S, Nexus S,
Xoom, Transformer, Sensation, Galaxy S I/II, Galaxy Ace, Desire.
Market:
https://market.android.com/details?id=fahrbot.apps.undelete&feature=search_result
Screens:
You guys make nice apps!
Thanks. We are pretty awesome. And humble too
Really great idea! Looking forward to support for ext3 and ext4
For most people this will be enough. The only ones who will truly suffer will be those with no sd tablets like the galaxy tab family...
I myself build a variant of cm on ext4, but have no need to restore data from the internal memory.
Just took it for a spin and it found one file I deleted. It also showed an asec file. You might want to filter those out or have it for advanced users only.
I can see a need from some users to undelete from /data/app and /data/data. For example, an accidental app install. If you can tie the apk and deleted app data directory together, it would be even more convenient. I know some might have Titanium Backup but this would cover the cases where they don't or only have an older backup. Just an idea
Damn..I'm impressed. Keep up the good work.
One more question . Do you have plans to implement deeper recovery methods?
As mister morden told londo mollari - one thing at a time
Looking forward to it.
OK, you're going to hate me, but I have another suggestion . Since you opened a can of worms with file recovery some of your more paranoid users will want secure deletion (rewriting the file with junk data or 1s and 0s, etc) I think this would go pretty well in this app. So have a section for users to pick the file to be securely deleted and also give them an option to overwrite files that can be recovered.
doesn't seem to work for me,crashes every time I attempt to restore something
You'll have to be more specific. What file system are you using? What phone? Did you send logs?
Has anyone had problems? Lets get some feedback please!
No problems yet. I tried undeleting a few things and it has worked without a hitch.
ftgg99 said:
You'll have to be more specific. What file system are you using? What phone? Did you send logs?
Click to expand...
Click to collapse
incredible,cm7 rom with latest nightly and log was sent
I havent looked at the logs yet, have been avoiding work on my bday. However, there is no guarantee that a file can be recovered, sometimes the data is just corrupted.
If one file doesnt work, another will.
Any issues?
avgjoemomma said:
OK, you're going to hate me, but I have another suggestion . Since you opened a can of worms with file recovery some of your more paranoid users will want secure deletion (rewriting the file with junk data or 1s and 0s, etc) I think this would go pretty well in this app. So have a section for users to pick the file to be securely deleted and also give them an option to overwrite files that can be recovered.
Click to expand...
Click to collapse
There are already apps on the market that do this, look for SHRED, the typical name for this sort thing on PCs. I saw a few, although they all claim that due to journaling it will possibly not work.
Not sure what VFAT they're using, but the ones I know of don't journal So YMMV.
Indeed, deletion may not be right for this application...

Latest Update 5/6/2014

Couple notes:
- Root didn't survive the update. SuperSU's survival mode failed. I did not have to roll back root to update though.
- Powered by Android appears on the start up.
- Gamestreaming connectivity was lost; you'll have to reauthenticate to your PC.
Anyone find anything else "unlisted"?
Shield RAM's ROOT method appears to work fine with this update.
KitKat SD card fix has to be reapplied.
I was hoping this would fix the emulator slowdowns, but has not. The CPU fix impacts battery life and would rather the device work as intended without doing a "fix". Exception being the sd card fix, since that is a Must.
rushless said:
I was hoping this would fix the emulator slowdowns, but has not. The CPU fix impacts battery life and would rather the device work as intended without doing a "fix". Exception being the sd card fix, since that is a Must.
Click to expand...
Click to collapse
what Emulator slowdowns do you mean?
darkuni said:
Shield RAM's ROOT method appears to work fine with this update.
KitKat SD card fix has to be reapplied.
Click to expand...
Click to collapse
I am new to the SHIELD community, could you please link me to the fix and maybe explain in a few words what this fix fixes? Thanks
Martin-Doc said:
I am new to the SHIELD community, could you please link me to the fix and maybe explain in a few words what this fix fixes? Thanks
Click to expand...
Click to collapse
https://play.google.com/store/apps/details?id=nextapp.sdfix
Essentially, KitKat prevents apps from WRITING to the SD card unless the app is the one that created the folder to begin with.
So let's say you have:
\sdcard\roms\n64
... on your SD card where you keep all your Nintendo 64 roms (insert standard piracy disclaimer here).
Your N64 emulator can no longer WRITE to that folder. Why does this bite? Well most emulators use the rom folder to unpack ZIPped roms, store save states, configuration per game - that sort of thing. Suddenly, after installing KitKat - these emulators start acting weird or outright crashing because they can't write where they used to be able to.
You could have a folder of .DOC files in
\sdcard\docs\
Your Polaris Office could open the files there, but if you edit them, you can't save them back.
You can extrapolate this to just about every app.
The KitKat fix linked above will make it work the way it used to work - so you don't have to change, update, or alter anything.
It does require ROOT access of course.
nex86 said:
what Emulator slowdowns do you mean?
Click to expand...
Click to collapse
All of the Broglia emulators slow down. He says it is the Nvidia update, but all I know is they play better than Retroarch and the other options. Better performance and options. They play great as if with 4.2.
Shield does what I need, so no harm no foul as is
Would like console mode though.
oh you mean like snes9xEX?
I will try that one out later.
nex86 said:
oh you mean like snes9xEX?
I will try that one out later.
Click to expand...
Click to collapse
yeah snes9x is one of the best emulators out for SNES imo.
I tried Snes9Xex, MD,emu and GBA.emu and have no slowdown at all, works perfect for me.
I do notice some slight skipping though when camera scrolls in game, but maybe that's just me..

Suddenly lost SD access - S7

Literally two days ago I was playing tunes from my SD. Yesterday "access denied" - effectively the SD ceased to exist. In fact, the data is still there when looking through MTP and, of course, mounted on my Linux machine. Why did this fail overnight???
The one possible gotcha is this is an ex-rooted machine. It lost route when I made the mistake of letting SU update its binary. That was a month(?) ago and the phone's been 100% solid (root aside) until two days ago.
Obviously I now feel some pressure to re-root and obviously the SD will be at least feet away from the S7 while doing the go to stock to root process.
If there's a way to regain r/w access (while not rooted) in the meantime...?
I'd try backing up the MicroSD card to the PC, delete/recreate primary partition > formatting it and testing it back in the phone first, if it's working, copy your files back to it
I only wish. The data's there via MTP, so it's readable through that channel, and the SD's readable on my Linux machine.
The problem is why did read/write permission stop working, while MTP still accesses the data. PowerAmp, for example, can't find the SD and neither can Player Pro. I also tried to read the data with FX - access denied.
The only thing I can think of is either an app update or one installation (app to control a GoPro clone) did something ugly. But that seems, to me, to be "reaching for it".
Meh... the phone is beginning to show other bad habits. Rather than work around the problems, I re-flashed to stock firmware, and will go back to root from there.
RBEmerson said:
I only wish. The data's there via MTP, so it's readable through that channel, and the SD's readable on my Linux machine.
The problem is why did read/write permission stop working, while MTP still accesses the data. PowerAmp, for example, can't find the SD and neither can Player Pro. I also tried to read the data with FX - access denied.
The only thing I can think of is either an app update or one installation (app to control a GoPro clone) did something ugly. But that seems, to me, to be "reaching for it".
Click to expand...
Click to collapse
It's only readable on your Linux machine, you can't copy from it?
---------- Post added at 08:19 ---------- Previous post was at 08:18 ----------
RBEmerson said:
Meh... the phone is beginning to show other bad habits. Rather than work around the problems, I re-flashed to stock firmware, and will go back to root from there.
Click to expand...
Click to collapse
Keep us updated
*Detection* said:
It's only readable on your Linux machine, you can't copy from it?
---------- Post added at 08:19 ---------- Previous post was at 08:18 ----------
Keep us updated
Click to expand...
Click to collapse
Readable - just copied some music folders to my linux box. (now playing Trauma (remix by Workals) by N'to - electrominimal - now about four years old but still works - 3M+ views on YT)
Since the phone seemed to be generally less than 100% stable, I took it back to stock and will re-root it to Nougat.
My guess is something (an update?) flipped permissions.
I've moved to Nougat. When the phone is back to the way I want it, I'll try rooting. There's no explanation for what went sour, but it's moot now.
So long and thanks for the fish!
I rechecked the SD with H2TestW (v. cool SD tester for Windoze) and... flunk. I've captured the contents and they seem to be intact. But there's now no doubt the SD is toast. So this did begin with SD failure. The good news is I moved to rooted Nougat as a result. I can live with that.

Is Android11 w/One UI 3.0-no To Blame For My Micro SD card's recent behavioral changes?

I'm aware, that only a few of my comrades in
XDA'a
R
M
Y may be aware of this issue, and change since the migration to android 11. To help illustrate to you I recently, thru google takeout, downloaded my 45+gb gp music library, all to which it's destiny was sd card storage (as chosen thru my Chrome Browser settings). After all files were unzipped and transferred , the available storage space on my sd card hadn't charged! So yes, my sd card is OK too, as affirmation to one of the replies I received earlier stating since gaining Android 11 rhey hadn't seen any changes. And by ok, you nust mean the sd card doesn't unmount itself at will, or randomly throw-up an error msg like, "sd file corruption detected," just for giggles!
As stated earlier, only a handful of folks I know over on discord's SamCentral are aware of this change, so there's been little discussion of file allocation tables & tweaks, i.e., formatting FAT 32(or that's the current default)idk...this isn't my field but imo, I think they're saying currently everything is being shifted to external stg. '0' which is the common ground for all or most of Android O/S's, thus "arming" their decision with the "no purchase necessary" routine. Fact is, most folks don't require more than half-a-gig or more of on-board mobile device storage. "The needs of the many, outweigh the needs of the few, or the one."(RIP Mr. Spock, Leonard Nimoy). So,, if this smells like a patch of sorts to you, why haven't we heard anything, and when can some of us expect to get our money's worth for our sd card purchase(mine, 256gb = $100, in Spring of '19). Some of the "fake-news" spreaders over there(lol) are saying the most recent samsung shifts to Microsoft based apps/services & cross-syncing is the root of the cause, and they're probably getting closer to plotting a solution now that the big hill has been championed(ref. to And. 11 + One UI 3.0-no project completion)! I miss the functionality of not being able to use an interface I paid for!
(If any of this I've shared here fact-cks.out to be valid, and I become a hero of sorts, does this mean I may gain some of that XDA "street-cred" and snag a couple of likes)?!
tarHeel71 said:
This actually was a thought of mine shortly after being sworn-in as a beta-tester for Samsung's One UI 3.0h-no, last fall.
Is there a different format process for my sd card now with Android 11(and if so, why was I not consulted)?
Any guidance or insight on my query would be great. Carry on!
Click to expand...
Click to collapse
I updated to 11 and UI 3.0 about a week ago and not having any issues with my sdcard. Only problem I have is that my battery usage as more than doubled even after a FDR.
tarHeel71 said:
This actually was a thought of mine shortly after being sworn-in as a beta-tester for Samsung's One UI 3.0h-no, last fall.
Is there a different format process for my sd card now with Android 11(and if so, why was I not consulted)?
Any guidance or insight on my query would be great. Carry on!
Click to expand...
Click to collapse
What exactly is the issue here? Not formatted? Can't see specific data? I went through the whole beta and now on release and my SD card is "exactly" the same as before with the exception that some apps can't see other apps' directories which is a "feature" from Google.
Compusmurf said:
What exactly is the issue here? Not formatted? Can't see specific data? I went through the whole beta and now on release and my SD card is "exactly" the same as before with the exception that some apps can't see other apps' directories which is a "feature" from Google.
Click to expand...
Click to collapse
The real obvious missing link to me was, for instance, when I'm signed in and surfin on my browser(Chrome, Samsung Internet, etc) and I save/download a file, it doesn't actually get saved on the physical sd card like it did before, rather, the o/s leaves the file in a limbo state of sorts, with whatever browser app!? I got my n20u1_5G back in 9/20, so while on Q if I saved, d/led a file i.e., using Chrome, I would go thru my Files then sd, then Android, then data, then find chrome(com.google.shrome), and there she is!
But, since beta school, whilst on 11, I do my Lil routine(as b-4), and when I goto Android then data, there's nothing, no app files(google or Samsung, as there were b-4)!? I hope I'm explaining the deal well enough here, as I couldn't be alone with this issue! Anyone using a stg card knows what I'm saying that isn't to be seen anymore! I'm using the same 250gb (high-end) Samsung card as b4, when I purchased my handset thru b-buy.com last fall(see jpg).
(Sorry 4 delay in my reply)☠
"Android, then data, then find chrome(com.google.shrome), and there she is!"
BINGO. Yeah, that's NOT happening any more. Those folders are now SECURED from any other apps viewing them. Only the owning app can view. The files are probably there, nice and safe.
Right now I know of 3 ways to view them. Total commander file manager in the app store filed the appropriate request to google for "total access" and you can view them if you hook your phone up to a computer. The 3rd way is quite a bit uglier requiring you to make an activity to a legacy file manager that google accidentally left in android 11 but hid. I'd have to dig around a lot to find those instructions again.
It's called "SCOPED STORAGE"... Go read about it and cry.... I know I did.
So, NO, you aren't going nutz based on this. However, that doesn't preclude other ways to go nutz!!!!
Compusmurf said:
"Android, then data, then find chrome(com.google.shrome), and there she is!"
BINGO. Yeah, that's NOT happening any more. Those folders are now SECURED from any other apps viewing them. Only the owning app can view. The files are probably there, nice and safe.
Right now I know of 3 ways to view them. Total commander file manager in the app store filed the appropriate request to google for "total access" and you can view them if you hook your phone up to a computer. The 3rd way is quite a bit uglier requiring you to make an activity to a legacy file manager that google accidentally left in android 11 but hid. I'd have to dig around a lot to find those instructions again.
It's called "SCOPED STORAGE"... Go read about it and cry.... I know I did.
So, NO, you aren't going nutz based on this. However, that doesn't preclude other ways to go nutz!!!!
Click to expand...
Click to collapse
Thanks for the reply...I've heard bits/pieces in talks with geek friends, and I appreciate your expertise here on this topic! But, why aren't the bytes getting gobbled -up(like when viewing sd card stg. available from the pull--down menu or from device care app)? I downloaded nearly 45 gb of audio files to my sd card, with absolutely no change there, but you see the stg reduction to internal storage. For what benefit, to them , google? Or just more of the ongoing sparing the two of 'em are constantly a part of! lol/smh

Categories

Resources