[class^="flag-"], [class*=" flag-"] {
    background-image: url(/img/flags.png);
    background-size: 450px 483px;
    background-repeat: no-repeat;
    display: inline-block;
    height: 21px;
    margin-right: 10px;
    vertical-align: sub;
    width: 45px;
}

.flag-wrapper {
    padding-right: 10px;
}
.flag-ad {
    background-position: 0px 0px;
}
.flag-ae {
    background-position: -45px 0px;
}
.flag-af {
    background-position: -90px 0px;
}
.flag-ag {
    background-position: -135px 0px;
}
.flag-ai {
    background-position: -180px 0px;
}
.flag-al {
    background-position: -225px 0px;
}
.flag-am {
    background-position: -270px 0px;
}
.flag-ao {
    background-position: -315px 0px;
}
.flag-ar {
    background-position: -360px 0px;
}
.flag-at {
    background-position: -405px 0px;
}
.flag-au {
    background-position: 0px -21px;
}
.flag-aw {
    background-position: -45px -21px;
}
.flag-az {
    background-position: -90px -21px;
}
.flag-ba {
    background-position: -135px -21px;
}
.flag-bb {
    background-position: -180px -21px;
}
.flag-bd {
    background-position: -225px -21px;
}
.flag-be {
    background-position: -270px -21px;
}
.flag-bf {
    background-position: -315px -21px;
}
.flag-bg {
    background-position: -360px -21px;
}
.flag-bh {
    background-position: -405px -21px;
}
.flag-bi {
    background-position: 0px -42px;
}
.flag-bj {
    background-position: -45px -42px;
}
.flag-bm {
    background-position: -90px -42px;
}
.flag-bn {
    background-position: -135px -42px;
}
.flag-br {
    background-position: -225px -42px;
}
.flag-bo {
    background-position: -180px -42px;
}
.flag-bs {
    background-position: -270px -42px;
}
.flag-bt {
    background-position: -315px -42px;
}
.flag-bu {
    background-position: -360px -42px;
}
.flag-by {
    background-position: -405px -42px;
}
.flag-bw {
    background-position: 0px -63px;
}
.flag-bz {
    background-position: -45px -63px;
}
.flag-ca {
    background-position: -90px -63px;
}
.flag-cd {
    background-position: -135px -63px;
}
.flag-cf {
    background-position: -180px -63px;
}
.flag-cg {
    background-position: -225px -63px;
}
.flag-ch {
    background-position: -270px -63px;
}
.flag-ci {
    background-position: -315px -63px;
}
.flag-ck {
    background-position: -360px -63px;
}
.flag-cl {
    background-position: -405px -63px;
}
.flag-cm {
    background-position: 0px -84px;
}
.flag-cn {
    background-position: -45px -84px;
}
.flag-co {
    background-position: -90px -84px;
}
.flag-cr {
    background-position: -135px -84px;
}
.flag-cu {
    background-position: -180px -84px;
}
.flag-cv {
    background-position: -225px -84px;
}
.flag-cy {
    background-position: -270px -84px;
}
.flag-cz {
    background-position: -315px -84px;
}
.flag-de {
    background-position: -360px -84px;
}
.flag-dj {
    background-position: -405px -84px;
}
.flag-dk {
    background-position: 0px -105px;
}
.flag-dm {
    background-position: -45px -105px;
}
.flag-do {
    background-position: -90px -105px;
}
.flag-dz {
    background-position: -135px -105px;
}
.flag-ec {
    background-position: -180px -105px;
}
.flag-ee {
    background-position: -225px -105px;
}
.flag-eg {
    background-position: -270px -105px;
}
.flag-eh {
    background-position: -315px -105px;
}
.flag-er {
    background-position: -360px -105px;
}
.flag-es {
    background-position: -405px -105px;
}
.flag-et {
    background-position: 0px -126px;
}
.flag-fi {
    background-position: -45px -126px;
}
.flag-fj {
    background-position: -90px -126px;
}
.flag-fo {
    background-position: -135px -126px;
}
.flag-fr {
    background-position: -180px -126px;
}
.flag-ga {
    background-position: -225px -126px;
}
.flag-gb {
    background-position: -270px -126px;
}
.flag-gd {
    background-position: -315px -126px;
}
.flag-ge {
    background-position: -360px -126px;
}
.flag-gf {
    background-position: -405px -126px;
}
.flag-gh {
    background-position: 0px -147px;
}
.flag-gi {
    background-position: -45px -147px;
}
.flag-gl {
    background-position: -90px -147px;
}
.flag-gm {
    background-position: -135px -147px;
}
.flag-gn {
    background-position: -180px -147px;
}
.flag-gp {
    background-position: -225px -147px;
}
.flag-gq {
    background-position: -270px -147px;
}
.flag-gr {
    background-position: -315px -147px;
}
.flag-gt {
    background-position: -360px -147px;
}
.flag-gu {
    background-position: -405px -147px;
}
.flag-gw {
    background-position: 0px -168px;
}
.flag-gy {
    background-position: -45px -168px;
}
.flag-hk {
    background-position: -90px -168px;
}
.flag-hn {
    background-position: -135px -168px;
}
.flag-hr {
    background-position: -180px -168px;
}
.flag-ht {
    background-position: -225px -168px;
}
.flag-hu {
    background-position: -270px -168px;
}
.flag-ic {
    background-position: -315px -168px;
}
.flag-id {
    background-position: -360px -168px;
}
.flag-ie {
    background-position: -405px -168px;
}
.flag-il {
    background-position: 0px -189px;
}
.flag-in {
    background-position: -45px -189px;
}
.flag-io {
    background-position: -90px -189px;
}
.flag-iq {
    background-position: -135px -189px;
}
.flag-ir {
    background-position: -180px -189px;
}
.flag-is {
    background-position: -225px -189px;
}
.flag-it {
    background-position: -270px -189px;
}
.flag-jm {
    background-position: -315px -189px;
}
.flag-jo {
    background-position: -360px -189px;
}
.flag-jp {
    background-position: -405px -189px;
}
.flag-ke {
    background-position: 0px -210px;
}
.flag-kg {
    background-position: -45px -210px;
}
.flag-kh {
    background-position: -90px -210px;
}
.flag-ki {
    background-position: -135px -210px;
}
.flag-km {
    background-position: -180px -210px;
}
.flag-kn {
    background-position: -225px -210px;
}
.flag-kp {
    background-position: -270px -210px;
}
.flag-kr {
    background-position: -315px -210px;
}
.flag-kw {
    background-position: -360px -210px;
}
.flag-ky {
    background-position: -405px -210px;
}
.flag-kz {
    background-position: 0px -231px;
}
.flag-la {
    background-position: -45px -231px;
}
.flag-lb {
    background-position: -90px -231px;
}
.flag-lc {
    background-position: -135px -231px;
}
.flag-li {
    background-position: -180px -231px;
}
.flag-lk {
    background-position: -225px -231px;
}
.flag-lr {
    background-position: -270px -231px;
}
.flag-ls {
    background-position: -315px -231px;
}
.flag-lt {
    background-position: -360px -231px;
}
.flag-lu {
    background-position: -405px -231px;
}
.flag-lv {
    background-position: 0px -252px;
}
.flag-ly {
    background-position: -45px -252px;
}
.flag-ma {
    background-position: -90px -252px;
}
.flag-mc {
    background-position: -135px -252px;
}
.flag-me {
    background-position: -225px -252px;
}
.flag-md {
    background-position: -180px -252px;
}
.flag-mf {
    background-position: -270px -252px;
}
.flag-mg {
    background-position: -315px -252px;
}
.flag-mk {
    background-position: -360px -252px;
}
.flag-ml {
    background-position: -405px -252px;
}
.flag-mm {
    background-position: 0px -273px;
}
.flag-mn {
    background-position: -45px -273px;
}
.flag-mo {
    background-position: -90px -273px;
}
.flag-mq {
    background-position: -135px -273px;
}
.flag-mr {
    background-position: -180px -273px;
}
.flag-mt {
    background-position: -225px -273px;
}
.flag-mu {
    background-position: -270px -273px;
}
.flag-mv {
    background-position: -315px -273px;
}
.flag-mw {
    background-position: -360px -273px;
}
.flag-mx {
    background-position: -405px -273px;
}
.flag-my {
    background-position: 0px -294px;
}
.flag-mz {
    background-position: -45px -294px;
}
.flag-na {
    background-position: -90px -294px;
}
.flag-nc {
    background-position: -135px -294px;
}
.flag-ne {
    background-position: -180px -294px;
}
.flag-ng {
    background-position: -225px -294px;
}
.flag-ni {
    background-position: -270px -294px;
}
.flag-nl {
    background-position: -315px -294px;
}
.flag-no {
    background-position: -360px -294px;
}
.flag-np {
    background-position: -405px -294px;
}
.flag-nr {
    background-position: 0px -315px;
}
.flag-nu {
    background-position: -45px -315px;
}
.flag-nz {
    background-position: -90px -315px;
}
.flag-om {
    background-position: -135px -315px;
}
.flag-pa {
    background-position: -180px -315px;
}
.flag-pe {
    background-position: -225px -315px;
}
.flag-pf {
    background-position: -270px -315px;
}
.flag-pg {
    background-position: -315px -315px;
}
.flag-ph {
    background-position: -360px -315px;
}
.flag-pk {
    background-position: -405px -315px;
}
.flag-pl {
    background-position: 0px -336px;
}
.flag-pm {
    background-position: -45px -336px;
}
.flag-pn {
    background-position: -90px -336px;
}
.flag-pr {
    background-position: -135px -336px;
}
.flag-pt {
    background-position: -180px -336px;
}
.flag-py {
    background-position: -225px -336px;
}
.flag-qa {
    background-position: -270px -336px;
}
.flag-re {
    background-position: -315px -336px;
}
.flag-ro {
    background-position: -360px -336px;
}
.flag-rs {
    background-position: -405px -336px;
}
.flag-ru {
    background-position: 0px -357px;
}
.flag-rw {
    background-position: -45px -357px;
}
.flag-sa {
    background-position: -90px -357px;
}
.flag-sb {
    background-position: -135px -357px;
}
.flag-sc {
    background-position: -180px -357px;
}
.flag-sd {
    background-position: -225px -357px;
}
.flag-se {
    background-position: -270px -357px;
}
.flag-sg {
    background-position: -315px -357px;
}
.flag-sh {
    background-position: -360px -357px;
}
.flag-si {
    background-position: -405px -357px;
}
.flag-sk {
    background-position: 0px -378px;
}
.flag-sl {
    background-position: -45px -378px;
}
.flag-sm {
    background-position: -90px -378px;
}
.flag-sn {
    background-position: -135px -378px;
}
.flag-so {
    background-position: -180px -378px;
}
.flag-sr {
    background-position: -225px -378px;
}
.flag-st {
    background-position: -270px -378px;
}
.flag-sv {
    background-position: -315px -378px;
}
.flag-sy {
    background-position: -360px -378px;
}
.flag-sz {
    background-position: -405px -378px;
}
.flag-tc {
    background-position: 0px -399px;
}
.flag-td {
    background-position: -45px -399px;
}
.flag-tg {
    background-position: -90px -399px;
}
.flag-th {
    background-position: -135px -399px;
}
.flag-tj {
    background-position: -180px -399px;
}
.flag-tl {
    background-position: -225px -399px;
}
.flag-tm {
    background-position: -270px -399px;
}
.flag-tn {
    background-position: -315px -399px;
}
.flag-to {
    background-position: -360px -399px;
}
.flag-tr {
    background-position: -405px -399px;
}
.flag-tt {
    background-position: 0px -420px;
}
.flag-tv {
    background-position: -45px -420px;
}
.flag-tw {
    background-position: -90px -420px;
}
.flag-tz {
    background-position: -135px -420px;
}
.flag-ua {
    background-position: -180px -420px;
}
.flag-ug {
    background-position: -225px -420px;
}
.flag-us {
    background-position: -270px -420px;
}
.flag-uy {
    background-position: -315px -420px;
}
.flag-uz {
    background-position: -360px -420px;
}
.flag-va {
    background-position: -405px -420px;
}
.flag-vc {
    background-position: 0px -441px;
}
.flag-ve {
    background-position: -45px -441px;
}
.flag-vg {
    background-position: -90px -441px;
}
.flag-vn {
    background-position: -135px -441px;
}
.flag-vu {
    background-position: -180px -441px;
}
.flag-wf {
    background-position: -225px -441px;
}
.flag-ws {
    background-position: -270px -441px;
}
.flag-xk {
    background-position: -315px -441px;
}
.flag-ye {
    background-position: -360px -441px;
}
.flag-yu {
    background-position: -405px -441px;
}
.flag-za {
    background-position: 0px -462px;
}
.flag-zm {
    background-position: -45px -462px;
}
.flag-zw {
    background-position: -90px -462px;
}