Supporting situation-aware services with virtual macro sensors