China

Today's Sun and Moon in Bayi

  • Last updated: Wed, Oct 21, 2026 at 7:19 PM
  • Today's Sunrise: 08:48↑East-Southeast102°
  • Today's Sunset: 20:07↑West-Southwest258°
  • Today's Moonrise: 17:12↑East-Southeast104°
  • Today's Moonset: 03:44↑West-Southwest253°
  • Daylight Hours: 11:18:35 (-01:41)

Today's Sun Position in Bayi

Bayi
Base Date Date Daylight Hours Difference from Today's Daylight Hours
Today Oct 21, 2026 11:18:35 00:00:00
Yesterday Oct 20, 2026 11:20:16 +00:01:41
Winter Solstice Dec 22, 2026 10:14:33 -01:04:02
Summer Solstice Jun 21, 2026 14:03:04 +02:44:29

Today's Daylight Hours in Bayi

Bayi

Upcoming 7 Days of Sun in Bayi

2026 Sunrise/Sunset Daylight Hours Solar Noon
Date Sunrise Sunset Length Difference Time Solar Distance (Million km)
Wed, Oct 21, 2026 08:48 20:07 11:18:35 -01:41 14:27 (49.6°) 148.893
Thu, Oct 22, 2026 08:49 20:06 11:16:55 -01:40 14:26 (49.3°) 148.852
Fri, Oct 23, 2026 08:50 20:05 11:15:15 -01:40 14:27 (48.9°) 148.81
Sat, Oct 24, 2026 08:50 20:04 11:13:36 -01:39 14:26 (48.6°) 148.769
Sun, Oct 25, 2026 08:51 20:03 11:11:57 -01:39 14:26 (48.2°) 148.729
Mon, Oct 26, 2026 08:52 20:02 11:10:19 -01:38 14:26 (47.9°) 148.688
Tue, Oct 27, 2026 08:53 20:01 11:08:42 -01:37 14:26 (47.6°) 148.648

Today's Moon Position in Bayi

Bayi

Upcoming 7 Days of Moon in Bayi

2026 Moonrise/Moonset/Phases Meridian Crossing
Date Moonrise Moonset Moonrise Phases Time Distance (km) Illumination Rate
Wed, Oct 21, 2026 17:12 ↑ (104°) 03:44 ↑ (253°)
22:56 (49.3°) 391,729 79.74%
Thu, Oct 22, 2026 17:42 ↑ (98°) 04:42 ↑ (259°)
23:39 (55.3°) 386,254 86.83%
Fri, Oct 23, 2026 18:11 ↑ (90°) 05:40 ↑ (266°)
00:23 (61.6°) 380,596 92.65%
Sat, Oct 24, 2026 18:42 ↑ (83°) 06:40 ↑ (273°)
01:09 (68.1°) 375,227 97.02%
Sun, Oct 25, 2026 19:14 ↑ (76°) 07:42 ↑ (281°)
01:58 (74.4°) 370,606 99.57%
Mon, Oct 26, 2026 19:52 ↑ (69°) 08:48 ↑ (288°)
Full Moon
02:51 (80.1°) 367,119 99.74%
Tue, Oct 27, 2026 20:35 ↑ (63°) 09:57 ↑ (295°)
On this day, the moon does not cross the meridian.

Sun and Moon by City in China

Country Name City Name Current Time Sunrise Sunset Moonrise Moonset Daylight Hours
ChinaChina Anshan Wed, Oct 21, 2026 at 9:19 PM 07:06↑ESE103° 18:00↑WSW257° 15:31↑ESE107° 01:24↑WSW249° 10:53:34 (-02:36)
ChinaChina Hotan Wed, Oct 21, 2026 at 7:19 PM 09:54↑ESE103° 20:57↑WSW257° 18:20↑ESE105° 04:32↑WSW251° 11:02:52 (-02:14)
ChinaChina Shenyang Wed, Oct 21, 2026 at 9:19 PM 07:05↑ESE104° 17:57↑WSW256° 15:31↑ESE107° 01:21↑WSW249° 10:51:46 (-02:40)
ChinaChina Baoding Wed, Oct 21, 2026 at 9:19 PM 07:34↑ESE103° 18:32↑WSW257° 15:58↑ESE106° 02:00↑WSW250° 10:59:00 (-02:24)
ChinaChina Huaibei Wed, Oct 21, 2026 at 9:19 PM 07:23↑ESE102° 18:33↑WSW258° 15:46↑ESE105° 02:04↑WSW251° 11:10:00 (-02:00)
ChinaChina Shenzhen Wed, Oct 21, 2026 at 9:19 PM 07:23↑E101° 18:55↑W259° 15:43↑ESE104° 02:32↑WSW253° 11:31:34 (-01:13)
ChinaChina Baotou Wed, Oct 21, 2026 at 9:19 PM 07:58↑ESE103° 18:53↑WSW257° 16:24↑ESE107° 02:20↑WSW249° 10:54:34 (-02:33)
ChinaChina Huainan Wed, Oct 21, 2026 at 9:19 PM 07:21↑ESE102° 18:33↑WSW258° 15:43↑ESE105° 02:05↑WSW252° 11:12:44 (-01:54)
ChinaChina Shigatse Wed, Oct 21, 2026 at 7:19 PM 09:10↑ESE102° 20:29↑WSW258° 17:34↑ESE104° 04:07↑WSW253° 11:19:18 (-01:39)
ChinaChina Bayi Wed, Oct 21, 2026 at 7:19 PM 08:48↑ESE102° 20:07↑WSW258° 17:12↑ESE104° 03:44↑WSW253° 11:18:35 (-01:41)
ChinaChina Hulunbuir Wed, Oct 21, 2026 at 9:19 PM 07:31↑ESE105° 18:01↑WSW255° 16:00↑ESE110° 01:17↑WSW246° 10:29:48 (-03:29)
ChinaChina Shijiazhuang Wed, Oct 21, 2026 at 9:19 PM 07:37↑ESE103° 18:37↑WSW257° 16:01↑ESE106° 02:06↑WSW250° 11:00:58 (-02:20)
ChinaChina Beijing Wed, Oct 21, 2026 at 9:19 PM 07:31↑ESE103° 18:27↑WSW257° 15:56↑ESE107° 01:54↑WSW250° 10:56:28 (-02:30)
ChinaChina Jiamusi Wed, Oct 21, 2026 at 9:19 PM 06:45↑ESE105° 17:22↑WSW255° 15:12↑ESE109° 10:37:42 (-03:11)
ChinaChina Suzhou Wed, Oct 21, 2026 at 9:19 PM 07:05↑ESE102° 18:20↑WSW258° 15:27↑ESE105° 01:52↑WSW252° 11:15:26 (-01:48)
ChinaChina Benxi Wed, Oct 21, 2026 at 9:19 PM 07:03↑ESE103° 17:56↑WSW256° 15:28↑ESE107° 01:20↑WSW249° 10:53:04 (-02:36)
ChinaChina Jilin Wed, Oct 21, 2026 at 9:19 PM 06:56↑ESE104° 17:42↑WSW256° 15:22↑ESE108° 01:03↑WSW248° 10:46:17 (-02:52)
ChinaChina Taiyuan Wed, Oct 21, 2026 at 9:19 PM 07:44↑ESE103° 18:45↑WSW257° 16:09↑ESE106° 02:14↑WSW250° 11:01:23 (-02:19)
ChinaChina Chamdo Wed, Oct 21, 2026 at 7:19 PM 08:39↑ESE102° 19:54↑WSW258° 17:02↑ESE104° 03:30↑WSW252° 11:15:41 (-01:48)
ChinaChina Jinan Wed, Oct 21, 2026 at 9:19 PM 07:25↑ESE103° 18:29↑WSW257° 15:49↑ESE106° 01:58↑WSW251° 11:04:07 (-02:13)
ChinaChina Tangshan Wed, Oct 21, 2026 at 9:19 PM 07:24↑ESE103° 18:21↑WSW257° 15:48↑ESE106° 01:47↑WSW250° 10:57:10 (-02:28)
ChinaChina Changchun Wed, Oct 21, 2026 at 9:19 PM 07:01↑ESE104° 17:47↑WSW256° 15:27↑ESE108° 01:08↑WSW248° 10:46:11 (-02:52)
ChinaChina Jinzhou Wed, Oct 21, 2026 at 9:19 PM 07:14↑ESE103° 18:07↑WSW256° 15:39↑ESE107° 01:32↑WSW249° 10:53:30 (-02:36)
ChinaChina Tianjin Wed, Oct 21, 2026 at 9:19 PM 07:27↑ESE103° 18:25↑WSW257° 15:52↑ESE106° 01:52↑WSW250° 10:58:26 (-02:24)
ChinaChina Changde Wed, Oct 21, 2026 at 9:19 PM 07:38↑ESE102° 18:58↑WSW258° 16:01↑ESE105° 02:33↑WSW252° 11:19:51 (-01:38)
ChinaChina Kashgar Wed, Oct 21, 2026 at 7:19 PM 10:12↑ESE103° 21:09↑WSW257° 18:40↑ESE106° 04:44↑WSW251° 10:57:18 (-02:26)
ChinaChina Tianshui Wed, Oct 21, 2026 at 9:19 PM 08:08↑ESE102° 19:16↑WSW258° 16:32↑ESE105° 02:49↑WSW251° 11:08:37 (-02:03)
ChinaChina Changsha Wed, Oct 21, 2026 at 9:19 PM 07:32↑ESE102° 18:54↑WSW258° 15:54↑ESE104° 02:29↑WSW253° 11:21:28 (-01:34)
ChinaChina Korla Wed, Oct 21, 2026 at 7:19 PM 09:35↑ESE104° 20:26↑WSW256° 18:02↑ESE106° 03:57↑WSW250° 10:51:34 (-02:40)
ChinaChina Turpan Wed, Oct 21, 2026 at 7:19 PM 09:24↑ESE104° 20:12↑WSW256° 17:52↑ESE107° 03:41↑WSW249° 10:48:28 (-02:46)
ChinaChina Changzhou Wed, Oct 21, 2026 at 9:19 PM 07:08↑ESE102° 18:22↑WSW258° 15:30↑ESE105° 01:54↑WSW252° 11:14:28 (-01:50)
ChinaChina Kunming Wed, Oct 21, 2026 at 9:19 PM 08:11↑ESE101° 19:38↑WSW259° 16:33↑ESE104° 03:16↑WSW253° 11:27:11 (-01:22)
ChinaChina Ürümqi Wed, Oct 21, 2026 at 7:19 PM 09:32↑ESE104° 20:17↑WSW256° 17:59↑ESE107° 03:46↑WSW249° 10:46:02 (-02:51)
ChinaChina Chengdu Wed, Oct 21, 2026 at 9:19 PM 08:10↑ESE102° 19:27↑WSW258° 16:34↑ESE105° 03:02↑WSW252° 11:16:41 (-01:45)
ChinaChina Lanchow Wed, Oct 21, 2026 at 9:19 PM 08:17↑ESE103° 19:22↑WSW257° 16:42↑ESE106° 02:54↑WSW251° 11:05:23 (-02:09)
ChinaChina Weihai Wed, Oct 21, 2026 at 9:19 PM 07:05↑ESE103° 18:07↑WSW257° 15:29↑ESE106° 01:35↑WSW250° 11:02:16 (-02:16)
ChinaChina Chongqing Wed, Oct 21, 2026 at 9:19 PM 07:59↑ESE102° 19:18↑WSW258° 16:22↑ESE104° 02:53↑WSW252° 11:18:48 (-01:41)
ChinaChina Langfang Wed, Oct 21, 2026 at 9:19 PM 07:30↑ESE103° 18:27↑WSW257° 15:54↑ESE106° 01:54↑WSW250° 10:57:25 (-02:27)
ChinaChina Wuhan Wed, Oct 21, 2026 at 9:19 PM 07:29↑ESE102° 18:46↑WSW258° 15:52↑ESE105° 02:19↑WSW252° 11:16:50 (-01:44)
ChinaChina Dalian Wed, Oct 21, 2026 at 9:19 PM 07:09↑ESE103° 18:08↑WSW257° 15:33↑ESE106° 01:34↑WSW250° 10:58:56 (-02:24)
ChinaChina Leshan Wed, Oct 21, 2026 at 9:19 PM 08:11↑ESE102° 19:29↑WSW258° 16:33↑ESE104° 03:05↑WSW252° 11:18:47 (-01:40)
ChinaChina Wuhu Wed, Oct 21, 2026 at 9:19 PM 07:14↑ESE102° 18:29↑WSW258° 15:36↑ESE105° 02:01↑WSW252° 11:15:22 (-01:48)
ChinaChina Dandong Wed, Oct 21, 2026 at 9:19 PM 06:59↑ESE103° 17:56↑WSW257° 15:24↑ESE107° 01:21↑WSW249° 10:56:20 (-02:29)
ChinaChina Lhasa Wed, Oct 21, 2026 at 7:19 PM 09:01↑ESE102° 20:20↑WSW258° 17:25↑ESE104° 03:57↑WSW253° 11:18:32 (-01:41)
ChinaChina Xainza Wed, Oct 21, 2026 at 7:19 PM 09:12↑ESE102° 20:28↑WSW258° 17:37↑ESE104° 04:05↑WSW252° 11:16:02 (-01:47)
ChinaChina Daqing Wed, Oct 21, 2026 at 9:19 PM 07:05↑ESE105° 17:43↑WSW255° 15:33↑ESE109° 01:02↑WSW247° 10:38:20 (-03:09)
ChinaChina Luoyang Wed, Oct 21, 2026 at 9:19 PM 07:41↑ESE102° 18:49↑WSW257° 16:05↑ESE105° 02:21↑WSW251° 11:08:31 (-02:03)
ChinaChina Xi'an Wed, Oct 21, 2026 at 9:19 PM 07:55↑ESE102° 19:04↑WSW258° 16:18↑ESE105° 02:36↑WSW251° 11:09:09 (-02:01)
ChinaChina Datong Wed, Oct 21, 2026 at 9:19 PM 07:44↑ESE103° 18:40↑WSW257° 16:09↑ESE107° 02:07↑WSW250° 10:56:02 (-02:30)
ChinaChina Mudanjiang Wed, Oct 21, 2026 at 9:19 PM 06:44↑ESE104° 17:28↑WSW256° 15:10↑ESE108° 10:44:21 (-02:56)
ChinaChina Xiamen Wed, Oct 21, 2026 at 9:19 PM 07:09↑ESE101° 18:37↑WSW259° 15:29↑ESE104° 02:13↑WSW253° 11:28:16 (-01:20)
ChinaChina Dunhuang Wed, Oct 21, 2026 at 7:19 PM 08:58↑ESE103° 19:54↑WSW257° 17:25↑ESE106° 03:24↑WSW250° 10:55:47 (-02:30)
ChinaChina NagquTown Wed, Oct 21, 2026 at 7:19 PM 08:59↑ESE102° 20:14↑WSW258° 17:24↑ESE105° 03:51↑WSW252° 11:14:58 (-01:49)
ChinaChina Xianyang Wed, Oct 21, 2026 at 9:19 PM 07:56↑ESE102° 19:05↑WSW258° 16:19↑ESE105° 02:37↑WSW251° 11:09:13 (-02:01)
ChinaChina Foochow Wed, Oct 21, 2026 at 9:19 PM 07:05↑ESE101° 18:30↑WSW258° 15:26↑ESE104° 02:05↑WSW253° 11:25:22 (-01:26)
ChinaChina Nanchang Wed, Oct 21, 2026 at 9:19 PM 07:21↑ESE102° 18:42↑WSW258° 15:43↑ESE105° 02:16↑WSW252° 11:20:34 (-01:36)
ChinaChina Xilinhot Wed, Oct 21, 2026 at 9:19 PM 07:38↑ESE104° 18:23↑WSW256° 16:04↑ESE108° 01:47↑WSW248° 10:45:56 (-02:52)
ChinaChina Foshan Wed, Oct 21, 2026 at 9:19 PM 07:27↑E101° 18:58↑WSW259° 15:48↑ESE104° 02:35↑WSW253° 11:30:45 (-01:15)
ChinaChina Nanjing Wed, Oct 21, 2026 at 9:19 PM 07:13↑ESE102° 18:27↑WSW258° 15:35↑ESE105° 01:58↑WSW252° 11:13:58 (-01:50)
ChinaChina Xilinji Wed, Oct 21, 2026 at 9:19 PM 07:27↑ESE107° 17:43↑WSW253° 15:57↑ESE111° 10:16:03 (-04:00)
ChinaChina Fushun Wed, Oct 21, 2026 at 9:19 PM 07:03↑ESE104° 17:55↑WSW256° 15:29↑ESE107° 01:18↑WSW249° 10:51:34 (-02:39)
ChinaChina Nanning Wed, Oct 21, 2026 at 9:19 PM 07:46↑E101° 19:17↑WSW259° 16:07↑ESE104° 02:56↑WSW253° 11:31:05 (-01:14)
ChinaChina Xining Wed, Oct 21, 2026 at 9:19 PM 08:26↑ESE103° 19:30↑WSW257° 16:51↑ESE106° 03:01↑WSW251° 11:04:09 (-02:12)
ChinaChina Gêrzê Wed, Oct 21, 2026 at 7:19 PM 09:32↑ESE102° 20:45↑WSW258° 17:57↑ESE104° 04:23↑WSW252° 11:13:16 (-01:52)
ChinaChina Nantong Wed, Oct 21, 2026 at 9:19 PM 07:04↑ESE102° 18:18↑WSW258° 15:26↑ESE105° 01:50↑WSW252° 11:14:06 (-01:51)
ChinaChina Xinmi Wed, Oct 21, 2026 at 9:19 PM 07:37↑ESE102° 18:46↑WSW258° 16:01↑ESE105° 02:17↑WSW251° 11:08:46 (-02:02)
ChinaChina Golmud Wed, Oct 21, 2026 at 7:19 PM 08:53↑ESE103° 19:57↑WSW257° 17:18↑ESE105° 03:30↑WSW251° 11:04:35 (-02:11)
ChinaChina Ningbo Wed, Oct 21, 2026 at 9:19 PM 07:00↑ESE102° 18:18↑WSW258° 15:21↑ESE105° 01:50↑WSW252° 11:18:18 (-01:41)
ChinaChina Xinyang Wed, Oct 21, 2026 at 9:19 PM 07:32↑ESE102° 18:45↑WSW258° 15:55↑ESE105° 02:18↑WSW252° 11:13:48 (-01:52)
ChinaChina Guangzhou Wed, Oct 21, 2026 at 9:19 PM 07:27↑E101° 18:57↑WSW259° 15:47↑ESE104° 02:35↑WSW253° 11:30:33 (-01:15)
ChinaChina Pudong Wed, Oct 21, 2026 at 9:19 PM 07:01↑ESE102° 18:16↑WSW258° 15:23↑ESE105° 01:48↑WSW252° 11:15:38 (-01:48)
ChinaChina Xuzhou Wed, Oct 21, 2026 at 9:19 PM 07:22↑ESE102° 18:31↑WSW258° 15:45↑ESE105° 02:01↑WSW251° 11:09:22 (-02:00)
ChinaChina Guilin Wed, Oct 21, 2026 at 9:19 PM 07:41↑ESE101° 19:07↑WSW259° 16:02↑ESE104° 02:44↑WSW253° 11:26:47 (-01:24)
ChinaChina Qiemo Wed, Oct 21, 2026 at 7:19 PM 09:33↑ESE103° 20:33↑WSW257° 17:59↑ESE106° 04:06↑WSW251° 11:00:32 (-02:20)
ChinaChina Yanji Wed, Oct 21, 2026 at 9:19 PM 06:42↑ESE104° 17:31↑WSW256° 15:08↑ESE108° 10:48:54 (-02:47)
ChinaChina Guiyang Wed, Oct 21, 2026 at 9:19 PM 07:56↑ESE101° 19:20↑WSW258° 16:18↑ESE104° 02:57↑WSW253° 11:24:23 (-01:29)
ChinaChina Qingdao Wed, Oct 21, 2026 at 9:19 PM 07:11↑ESE103° 18:16↑WSW257° 15:34↑ESE106° 01:45↑WSW251° 11:05:26 (-02:10)
ChinaChina Yinchuan Wed, Oct 21, 2026 at 9:19 PM 08:10↑ESE103° 19:10↑WSW257° 16:35↑ESE106° 02:39↑WSW250° 10:59:54 (-02:21)
ChinaChina Haikou Wed, Oct 21, 2026 at 9:19 PM 07:36↑E101° 19:11↑W259° 15:56↑ESE103° 02:51↑WSW254° 11:35:47 (-01:04)
ChinaChina Qinhuangdao Wed, Oct 21, 2026 at 9:19 PM 07:18↑ESE103° 18:15↑WSW257° 15:43↑ESE107° 01:41↑WSW250° 10:56:28 (-02:28)
ChinaChina Yumen Wed, Oct 21, 2026 at 9:19 PM 08:49↑ESE103° 19:44↑WSW257° 17:15↑ESE106° 03:14↑WSW250° 10:55:26 (-02:31)
ChinaChina Hami Wed, Oct 21, 2026 at 7:19 PM 09:07↑ESE104° 19:55↑WSW256° 17:34↑ESE107° 03:24↑WSW249° 10:48:48 (-02:46)
ChinaChina Qiqihar Wed, Oct 21, 2026 at 9:19 PM 07:11↑ESE105° 17:47↑WSW255° 15:39↑ESE109° 01:05↑WSW246° 10:36:00 (-03:14)
ChinaChina Zhangjiajie Wed, Oct 21, 2026 at 9:19 PM 07:43↑ESE102° 19:03↑WSW258° 16:06↑ESE105° 02:38↑WSW252° 11:19:41 (-01:39)
ChinaChina Handan Wed, Oct 21, 2026 at 9:19 PM 07:35↑ESE103° 18:39↑WSW257° 15:59↑ESE106° 02:08↑WSW251° 11:04:13 (-02:12)
ChinaChina Saga Wed, Oct 21, 2026 at 7:19 PM 09:25↑ESE102° 20:44↑WSW258° 17:49↑ESE104° 04:22↑WSW253° 11:19:10 (-01:38)
ChinaChina Zhangjiakou Wed, Oct 21, 2026 at 9:19 PM 07:38↑ESE103° 18:32↑WSW256° 16:04↑ESE107° 01:59↑WSW249° 10:54:21 (-02:33)
ChinaChina Hangzhou Wed, Oct 21, 2026 at 9:19 PM 07:06↑ESE102° 18:23↑WSW258° 15:27↑ESE105° 01:56↑WSW252° 11:17:28 (-01:44)
ChinaChina Sanya Wed, Oct 21, 2026 at 9:19 PM 07:38↑E101° 19:16↑W259° 15:58↑ESE103° 02:57↑WSW254° 11:38:45 (-00:58)
ChinaChina Zhanjiang Wed, Oct 21, 2026 at 7:19 PM 07:37↑E101° 19:10↑W259° 15:57↑ESE104° 11:33:45 (-01:08)
ChinaChina Harbin Wed, Oct 21, 2026 at 9:19 PM 06:58↑ESE104° 17:39↑WSW256° 15:25↑ESE108° 10:40:48 (-03:04)
ChinaChina Shanghai Wed, Oct 21, 2026 at 9:19 PM 07:01↑ESE102° 18:17↑WSW258° 15:23↑ESE105° 01:49↑WSW252° 11:15:36 (-01:48)
ChinaChina Zhengzhou Wed, Oct 21, 2026 at 9:19 PM 07:36↑ESE102° 18:44↑WSW257° 16:00↑ESE105° 02:15↑WSW251° 11:08:16 (-02:04)
ChinaChina Hefei Wed, Oct 21, 2026 at 9:19 PM 07:19↑ESE102° 18:33↑WSW258° 15:41↑ESE105° 02:05↑WSW252° 11:14:20 (-01:50)
ChinaChina Shantou Wed, Oct 21, 2026 at 9:19 PM 07:13↑E101° 18:43↑WSW259° 15:34↑ESE104° 02:20↑WSW253° 11:30:10 (-01:16)
ChinaChina Zhuhai Wed, Oct 21, 2026 at 9:19 PM 07:25↑E101° 18:57↑W259° 15:45↑ESE104° 02:35↑WSW253° 11:32:01 (-01:13)
ChinaChina Hohhot Wed, Oct 21, 2026 at 9:19 PM 07:51↑ESE103° 18:45↑WSW256° 16:17↑ESE107° 02:12↑WSW249° 10:54:12 (-02:34)
ChinaChina Shaoxing Wed, Oct 21, 2026 at 9:19 PM 07:04↑ESE102° 18:22↑WSW258° 15:25↑ESE105° 01:54↑WSW252° 11:18:02 (-01:42)
ChinaChina Zibo Wed, Oct 21, 2026 at 9:19 PM 07:21↑ESE103° 18:25↑WSW257° 15:45↑ESE106° 01:53↑WSW250° 11:03:50 (-02:12)


Bootstrap