non-GC: use generated UUID instead of UIDevice