code: func openGeoDB() (*geoDB, error) {
  	// Initiate a geoip database to cross reference locations
  	db, err := freegeoip.OpenURL(freegeoip.MaxMindDB, 24*time.Hour, time.Hour)
  	if err != nil {
  		return nil, err
  	}
  	// Wait until the database is updated to the latest data
  	select {
  	case <-db.NotifyOpen():
  	case err := <-db.NotifyError():
  		return nil, err
  	}
  	// Assemble and return our custom wrapper
  	return &geoDB{geodb: db}, nil
  }
docs: // Open creates a new geoip database with an up-to-date database from the internet.