cross-platform functionality