Ref A: 1e20ffe09c38481f8f8a7cde6d9c8ab9 Ref B: AB2B02E7C711212BBAEDEE9D7BEB2B1D Ref C: Sat Apr 25 11:15:46 2015 PST