The Math Behind the Mecca: Building a High-Precision Qibla Compass and Prayer Times Engine