﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
en_GB{
    %%Parent{"en_001"}
    Version{"2.1.37.22"}
    calendar{
        generic{
            availableFormats{
                Bhm{"h.mm B"}
                Bhms{"h.mm.ss B"}
                EBhm{"E, h.mm B"}
                EBhms{"E, h.mm.ss B"}
                EHm{"E, HH:mm"}
                EHms{"E, HH:mm:ss"}
                Ehm{"E, h.mm a"}
                Ehms{"E, h.mm.ss a"}
                MEd{"E, d/M"}
                hm{"h.mm a"}
                hms{"h.mm.ss a"}
            }
            intervalFormats{
                M{
                    M{"M–M"}
                }
                MMMd{
                    d{"d–d MMM"}
                }
                Md{
                    M{"dd/MM–dd/MM"}
                    d{"dd/MM–dd/MM"}
                }
                d{
                    d{"d–d"}
                }
                y{
                    y{"y–y G"}
                }
                yMMMd{
                    d{"d–d MMM y G"}
                }
            }
        }
        gregorian{
            AmPmMarkers{
                "am",
                "pm",
            }
            AmPmMarkersAbbr{
                "am",
                "pm",
            }
            DateTimePatterns{
                "HH:mm:ss zzzz",
                "HH:mm:ss z",
                "HH:mm:ss",
                "HH:mm",
                "EEEE, d MMMM y",
                "d MMMM y",
                "d MMM y",
                "dd/MM/y",
                "{1}, {0}",
                "{1} 'at' {0}",
                "{1} 'at' {0}",
                "{1}, {0}",
                "{1}, {0}",
            }
            availableFormats{
                Bhm{"h.mm B"}
                Bhms{"h.mm.ss B"}
                EBhm{"E, h.mm B"}
                EBhms{"E, h.mm.ss B"}
                MEd{"E dd/MM"}
                MMMEd{"E d MMM"}
            }
            dayPeriod{
                format{
                    abbreviated{
                        noon{"noon"}
                    }
                    narrow{
                        noon{"n"}
                    }
                    wide{
                        noon{"noon"}
                    }
                }
                stand-alone{
                    abbreviated{
                        am{"am"}
                        pm{"pm"}
                    }
                    narrow{
                        pm{"pm"}
                    }
                    wide{
                        am{"am"}
                        pm{"pm"}
                    }
                }
            }
            intervalFormats{
                H{
                    H{"HH–HH"}
                }
                Hm{
                    H{"HH:mm–HH:mm"}
                    m{"HH:mm–HH:mm"}
                }
                Hmv{
                    H{"HH:mm–HH:mm v"}
                    m{"HH:mm–HH:mm v"}
                }
                Hv{
                    H{"HH–HH v"}
                }
                M{
                    M{"M–M"}
                }
                MMMd{
                    d{"d–d MMM"}
                }
                d{
                    d{"d–d"}
                }
                h{
                    h{"h–h a"}
                }
                hv{
                    h{"h–h a v"}
                }
                y{
                    y{"y–y"}
                }
                yMMMd{
                    d{"d–d MMM y"}
                }
            }
        }
        islamic{
            availableFormats{
                MEd{"E dd/MM"}
                MMMEd{"E d MMM"}
            }
        }
    }
    characterLabel{
        math_symbols{"maths symbol"}
    }
    fields{
        day{
            relative{
                "-1"{"yesterday"}
                "0"{"today"}
                "1"{"tomorrow"}
            }
        }
        day-narrow{
            relative{
                "-1"{"yesterday"}
                "0"{"today"}
                "1"{"tomorrow"}
            }
        }
        day-short{
            relativeTime{
                future{
                    other{"in {0} days"}
                }
                past{
                    other{"{0} days ago"}
                }
            }
        }
        dayOfYear-narrow{
            dn{"day of yr"}
        }
        dayOfYear-short{
            dn{"day of yr"}
        }
        dayperiod-narrow{
            dn{"am/pm"}
        }
        dayperiod-short{
            dn{"am/pm"}
        }
        fri-narrow{
            relativeTime{
                future{
                    one{"in {0} F"}
                    other{"in {0} F"}
                }
                past{
                    one{"{0} F ago"}
                    other{"{0} F ago"}
                }
            }
        }
        fri-short{
            relative{
                "-1"{"last Fri"}
                "0"{"this Fri"}
                "1"{"next Fri"}
            }
            relativeTime{
                future{
                    one{"in {0} Fri"}
                    other{"in {0} Fri"}
                }
                past{
                    one{"{0} Fri ago"}
                    other{"{0} Fri ago"}
                }
            }
        }
        mon-narrow{
            relativeTime{
                future{
                    one{"in {0} M"}
                    other{"in {0} M"}
                }
                past{
                    one{"{0} M ago"}
                    other{"{0} M ago"}
                }
            }
        }
        mon-short{
            relative{
                "-1"{"last Mon"}
                "0"{"this Mon"}
                "1"{"next Mon"}
            }
            relativeTime{
                future{
                    one{"in {0} Mon"}
                    other{"in {0} Mon"}
                }
                past{
                    one{"{0} Mon ago"}
                    other{"{0} Mon ago"}
                }
            }
        }
        sat-narrow{
            relativeTime{
                future{
                    one{"in {0} Sa"}
                    other{"in {0} Sa"}
                }
                past{
                    one{"{0} Sa ago"}
                    other{"{0} Sa ago"}
                }
            }
        }
        sat-short{
            relative{
                "-1"{"last Sat"}
                "0"{"this Sat"}
                "1"{"next Sat"}
            }
            relativeTime{
                future{
                    one{"in {0} Sat"}
                    other{"in {0} Sat"}
                }
                past{
                    one{"{0} Sat ago"}
                    other{"{0} Sat ago"}
                }
            }
        }
        sun-narrow{
            relativeTime{
                future{
                    one{"in {0} Su"}
                    other{"in {0} Su"}
                }
                past{
                    one{"{0} Su ago"}
                    other{"{0} Su ago"}
                }
            }
        }
        sun-short{
            relative{
                "-1"{"last Sun"}
                "0"{"this Sun"}
                "1"{"next Sun"}
            }
            relativeTime{
                future{
                    one{"in {0} Sun"}
                    other{"in {0} Sun"}
                }
                past{
                    one{"{0} Sun ago"}
                    other{"{0} Sun ago"}
                }
            }
        }
        thu-narrow{
            relativeTime{
                future{
                    one{"in {0} Th"}
                    other{"in {0} Th"}
                }
                past{
                    one{"{0} Th ago"}
                    other{"{0} Th ago"}
                }
            }
        }
        thu-short{
            relative{
                "-1"{"last Thu"}
                "0"{"this Thu"}
                "1"{"next Thu"}
            }
            relativeTime{
                future{
                    one{"in {0} Thu"}
                    other{"in {0} Thu"}
                }
                past{
                    one{"{0} Thu ago"}
                    other{"{0} Thu ago"}
                }
            }
        }
        tue-narrow{
            relativeTime{
                future{
                    one{"in {0} Tu"}
                    other{"in {0} Tu"}
                }
                past{
                    one{"{0} Tu ago"}
                    other{"{0} Tu ago"}
                }
            }
        }
        tue-short{
            relative{
                "-1"{"last Tue"}
                "0"{"this Tue"}
                "1"{"next Tue"}
            }
            relativeTime{
                future{
                    one{"in {0} Tue"}
                    other{"in {0} Tue"}
                }
                past{
                    one{"{0} Tue ago"}
                    other{"{0} Tue ago"}
                }
            }
        }
        wed-narrow{
            relativeTime{
                future{
                    one{"in {0} W"}
                    other{"in {0} W"}
                }
                past{
                    one{"{0} W ago"}
                    other{"{0} W ago"}
                }
            }
        }
        wed-short{
            relative{
                "-1"{"last Wed"}
                "0"{"this Wed"}
                "1"{"next Wed"}
            }
            relativeTime{
                future{
                    one{"in {0} Wed"}
                    other{"in {0} Wed"}
                }
                past{
                    one{"{0} Wed ago"}
                    other{"{0} Wed ago"}
                }
            }
        }
        weekOfMonth-narrow{
            dn{"wk of mo"}
        }
        weekOfMonth-short{
            dn{"wk of mo"}
        }
        weekday-narrow{
            dn{"day of wk"}
        }
        weekday-short{
            dn{"day of wk"}
        }
        weekdayOfMonth-narrow{
            dn{"wkday of mo"}
        }
        weekdayOfMonth-short{
            dn{"wkday of mo"}
        }
    }
    listPattern{
        or{
            end{"{0} or {1}"}
        }
        standard{
            end{"{0} and {1}"}
        }
        standard-short{
            end{"{0} and {1}"}
        }
    }
}
