日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Redis 到底是怎么实现“附近的人”这个功能的?

發布時間:2025/3/20 数据库 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Redis 到底是怎么实现“附近的人”这个功能的? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

??點擊上方?好好學java?,選擇?星標?公眾號

重磅資訊、干貨,第一時間送達 今日推薦:推薦 8 個常用 Spring Boot 項目個人原創+1博客:點擊前往,查看更多

作者簡介:萬汨,餓了么資深開發工程師。iOS,Go,Java均有涉獵。目前主攻大數據開發。喜歡騎行、爬山。

  • https://juejin.im/post/5da40462f265da5baf410a11

前言:針對“附近的人”這一位置服務領域的應用場景,常見的可使用PG、MySQL和MongoDB等多種DB的空間索引進行實現。而Redis另辟蹊徑,結合其有序隊列zset以及geohash編碼,實現了空間搜索功能,且擁有極高的運行效率。

本文將從源碼角度對其算法原理進行解析,并推算查詢時間復雜度。

要提供完整的“附近的人”服務,最基本的是要實現“增”、“刪”、“查”的功能。以下將分別進行介紹,其中會重點對查詢功能進行解析。

操作命令

自Redis 3.2開始,Redis基于geohash和有序集合提供了地理位置相關功能。Redis Geo模塊包含了以下6個命令:

  • GEOADD: 將給定的位置對象(緯度、經度、名字)添加到指定的key;

  • GEOPOS: 從key里面返回所有給定位置對象的位置(經度和緯度);

  • GEODIST: 返回兩個給定位置之間的距離;

  • GEOHASH: 返回一個或多個位置對象的Geohash表示;

  • GEORADIUS: 以給定的經緯度為中心,返回目標集合中與中心的距離不超過給定最大距離的所有位置對象;

  • GEORADIUSBYMEMBER: 以給定的位置對象為中心,返回與其距離不超過給定最大距離的所有位置對象。

附上我歷時三個月總結的?Java 面試 + Java 后端技術學習指南,這是本人這幾年及春招的總結,目前,已經拿到了大廠offer,拿去不謝!

下載方式

1.?首先掃描下方二維碼

2.?后臺回復「Java面試」即可獲取

其中,組合使用GEOADD和GEORADIUS可實現“附近的人”中“增”和“查”的基本功能。

要實現微信中“附近的人”功能,可直接使用GEORADIUSBYMEMBER命令。其中“給定的位置對象”即為用戶本人,搜索的對象為其他用戶。

不過本質上,GEORADIUSBYMEMBER = GEOPOS + GEORADIUS,即先查找用戶位置再通過該位置搜索附近滿足位置相互距離條件的其他用戶對象。


以下會從源碼角度入手對GEOADD和GEORADIUS命令進行分析,剖析其算法原理。

Redis geo操作中只包含了“增”和“查”的操作,并沒有專門的“刪除”命令。主要是因為Redis內部使用有序集合(zset)保存位置對象,可用zrem進行刪除。

在Redis源碼geo.c的文件注釋中,只說明了該文件為GEOADD、GEORADIUS和GEORADIUSBYMEMBER的實現文件(其實在也實現了另三個命令)。從側面看出其他三個命令為輔助命令。

GEOADD

使用方式

GEOADD key longitude latitude member?[longitude latitude member ...]

將給定的位置對象(緯度、經度、名字)添加到指定的key。

其中,key為集合名稱,member為該經緯度所對應的對象。在實際運用中,當所需存儲的對象數量過多時,可通過設置多key(如一個省一個key)的方式對對象集合變相做sharding,避免單集合數量過多。

成功插入后的返回值:

(integer)?N

其中N為成功插入的個數。

源碼分析

/* GEOADD key long lat name [long2 lat2 name2 ... longN latN nameN] */ void?geoaddCommand(client *c)?{//參數校驗/* Check arguments number for sanity. */if?((c->argc -?2) %?3?!=?0) {/* Need an odd number of arguments if we got this far... */addReplyError(c,?"syntax error. Try GEOADD key [x1] [y1] [name1] ""[x2] [y2] [name2] ... ");return;}//參數提取Redisint?elements = (c->argc -?2) /?3;int?argc =?2+elements*2;?/* ZADD key score ele ... */robj **argv = zcalloc(argc*sizeof(robj*));argv[0] = createRawStringObject("zadd",4);argv[1] = c->argv[1];?/* key */incrRefCount(argv[1]);//參數遍歷+轉換/* Create the argument vector to call ZADD in order to add all* the score,value pairs to the requested zset, where score is actually* an encoded version of lat,long. */int?i;for?(i =?0; i < elements; i++) {double?xy[2];//提取經緯度if?(extractLongLatOrReply(c, (c->argv+2)+(i*3),xy) == C_ERR) {for?(i =?0; i < argc; i++)if?(argv[i]) decrRefCount(argv[i]);zfree(argv);return;}//將經緯度轉換為52位的geohash作為分值 & 提取對象名稱/* Turn the coordinates into the score of the element. */GeoHashBits hash;geohashEncodeWGS84(xy[0], xy[1], GEO_STEP_MAX, &hash);GeoHashFix52Bits bits = geohashAlign52Bits(hash);robj *score = createObject(OBJ_STRING, sdsfromlonglong(bits));robj *val = c->argv[2?+ i *?3?+?2];//設置有序集合的對象元素名稱和分值argv[2+i*2] = score;argv[3+i*2] = val;incrRefCount(val);}//調用zadd命令,存儲轉化好的對象/* Finally call ZADD that will do the work for us. */replaceClientCommandVector(c,argc,argv);zaddCommand(c); }

通過源碼分析可以看出Redis內部使用有序集合(zset)保存位置對象,有序集合中每個元素都是一個帶位置的對象,元素的score值為其經緯度對應的52位的geohash值。

double類型精度為52位;
geohash是以base32的方式編碼,52bits最高可存儲10位geohash值,對應地理區域大小為0.6*0.6米的格子。換句話說經Redis geo轉換過的位置理論上會有約0.3*1.414=0.424米的誤差。


算法小結

簡單總結下GEOADD命令都干了啥:
1、參數提取和校驗;
2、將入參經緯度轉換為52位的geohash值(score);
3、調用ZADD命令將member及其對應的score存入集合key中。


GEORADIUS

使用方式

GEORADIUS?key?longitude?latitude?radius?m|km|ft|mi?[WITHCOORD]?[WITHDIST]?[WITHHASH]?[ASC|DESC]?[COUNT count]?[STORE key]?[STORedisT key]以給定的經緯度為中心,返回目標集合中與中心的距離不超過給定最大距離的所有位置對象。

范圍單位:m | km | ft | mi --> 米 | 千米 | 英尺 | 英里

額外參數:

- WITHDIST:在返回位置對象的同時,將位置對象與中心之間的距離也一并返回。距離的單位和用戶給定的范圍單位保持一致。

- WITHCOORD:將位置對象的經度和維度也一并返回。

- WITHHASH:以 52 位有符號整數的形式,返回位置對象經過原始 geohash 編碼的有序集合分值。這個選項主要用于底層應用或者調試,實際中的作用并不大。

- ASC|DESC:從近到遠返回位置對象元素 | 從遠到近返回位置對象元素。- COUNT count:選取前N個匹配位置對象元素。(不設置則返回所有元素) - STORE key:將返回結果的地理位置信息保存到指定key。- STORedisT key:將返回結果離中心點的距離保存到指定key。

由于 STORE 和 STORedisT 兩個選項的存在,GEORADIUS 和 GEORADIUSBYMEMBER 命令在技術上會被標記為寫入命令,從而只會查詢(寫入)主實例,QPS過高時容易造成主實例讀寫壓力過大。

為解決這個問題,在 Redis 3.2.10 和 Redis 4.0.0 中,分別新增了 GEORADIUS_RO 和 GEORADIUSBYMEMBER_RO兩個只讀命令。


不過,在實際開發中筆者發現 在java package?Redis.clients.jedis.params.geo?的 GeoRadiusParam 參數類中并不包含 STORE 和 STORedisT 兩個參數選項,在調用georadius時是否真的只查詢了主實例,還是進行了只讀封裝。感興趣的朋友可以自己研究下。

成功查詢后的返回值:

不帶WITH限定,返回一個member list,如:

["member1","member2","member3"]

帶WITH限定,member list中每個member也是一個嵌套list,如:

[["member1", distance1, [longitude1, latitude1]]["member2", distance2, [longitude2, latitude2]] ]

源碼分析

此段源碼較長,看不下去的可直接看中文注釋,或直接跳到小結部分

/* GEORADIUS key x y radius unit [WITHDIST] [WITHHASH] [WITHCOORD] [ASC|DESC]* [COUNT count] [STORE key] [STORedisT key]* GEORADIUSBYMEMBER key member radius unit ... options ... */ void?georadiusGeneric(client *c,?int?flags)?{robj *key = c->argv[1];robj *storekey =?NULL;int?stoRedist =?0;?/* 0 for STORE, 1 for STORedisT. *///根據key獲取有序集合robj *zobj =?NULL;if?((zobj = lookupKeyReadOrReply(c, key, shared.null[c->resp])) ==?NULL?||checkType(c, zobj, OBJ_ZSET)) {return;}//根據用戶輸入(經緯度/member)確認中心點經緯度int?base_args;double?xy[2] = {?0?};if?(flags & RADIUS_COORDS) {……}//獲取查詢范圍距離double?radius_meters =?0, conversion =?1;if?((radius_meters = extractDistanceOrReply(c, c->argv + base_args -?2,&conversion)) <?0) {return;}//獲取可選參數 (withdist、withhash、withcoords、sort、count)int?withdist =?0, withhash =?0, withcoords =?0;int?sort = SORT_NONE;long?long?count =?0;if?(c->argc > base_args) {... ...}//獲取 STORE 和 STORedisT 參數if?(storekey && (withdist || withhash || withcoords)) {addReplyError(c,"STORE option in GEORADIUS is not compatible with ""WITHDIST, WITHHASH and WITHCOORDS options");return;}//設定排序if?(count !=?0?&& sort == SORT_NONE) sort = SORT_ASC;//利用中心點和半徑計算目標區域范圍GeoHashRadius georadius =geohashGetAreasByRadiusWGS84(xy[0], xy[1], radius_meters);//對中心點及其周圍8個geohash網格區域進行查找,找出范圍內元素對象geoArray *ga = geoArrayCreate();membersOfAllNeighbors(zobj, georadius, xy[0], xy[1], radius_meters, ga);//未匹配返空/* If no matching results, the user gets an empty reply. */if?(ga->used ==?0?&& storekey ==?NULL) {addReplyNull(c);geoArrayFree(ga);return;}//一些返回值的設定和返回……geoArrayFree(ga); }

上文代碼中最核心的步驟有兩個,一是“計算中心點范圍”,二是“對中心點及其周圍8個geohash網格區域進行查找”。

對應的是geohashGetAreasByRadiusWGS84和membersOfAllNeighbors兩個函數。

我們依次來看:

  • 計算中心點范圍:

// geohash_helper.c

GeoHashRadius?geohashGetAreasByRadiusWGS84(double?longitude,?double?latitude,double?radius_meters)?{return?geohashGetAreasByRadius(longitude, latitude, radius_meters); }//返回能夠覆蓋目標區域范圍的9個geohashBox GeoHashRadius?geohashGetAreasByRadius(double?longitude,?double?latitude,?double?radius_meters)?{ //一些參數設置GeoHashRange long_range, lat_range;GeoHashRadius radius;GeoHashBits hash;GeoHashNeighbors neighbors;GeoHashArea area;double?min_lon, max_lon, min_lat, max_lat;double?bounds[4];int?steps;//計算目標區域外接矩形的經緯度范圍(目標區域為:以目標經緯度為中心,半徑為指定距離的圓)geohashBoundingBox(longitude, latitude, radius_meters, bounds);min_lon = bounds[0];min_lat = bounds[1];max_lon = bounds[2];max_lat = bounds[3];//根據目標區域中心點緯度和半徑,計算帶查詢的9個搜索框的geohash精度(位) //這里用到latitude主要是針對極地的情況對精度進行了一些調整(緯度越高,位數越小)steps = geohashEstimateStepsByRadius(radius_meters,latitude);//設置經緯度最大最小值:-180<=longitude<=180, -85<=latitude<=85geohashGetCoordRange(&long_range,&lat_range);//將待查經緯度按指定精度(steps)編碼成geohash值geohashEncode(&long_range,&lat_range,longitude,latitude,steps,&hash);//將geohash值在8個方向上進行擴充,確定周圍8個Box(neighbors)geohashNeighbors(&hash,&neighbors);//根據hash值確定area經緯度范圍geohashDecode(long_range,lat_range,hash,&area);//一些特殊情況處理……//構建并返回結果radius.hash = hash;radius.neighbors = neighbors;radius.area = area;return?radius; }
  • 對中心點及其周圍8個geohash網格區域進行查找:

// geo.c

//在9個hashBox中獲取想要的元素 int?membersOfAllNeighbors(robj *zobj, GeoHashRadius n,?double?lon,?double?lat,?double?radius, geoArray *ga)?{GeoHashBits neighbors[9];unsigned?int?i, count =?0, last_processed =?0;int?debugmsg =?0;//獲取9個搜索hashBoxneighbors[0] = n.hash;……neighbors[8] = n.neighbors.south_west;//在每個hashBox中搜索目標點for?(i =?0; i <?sizeof(neighbors) /?sizeof(*neighbors); i++) {if?(HASHISZERO(neighbors[i])) {if?(debugmsg) D("neighbors[%d] is zero",i);continue;}//剔除可能的重復hashBox (搜索半徑>5000KM時可能出現)if?(last_processed &&neighbors[i].bits == neighbors[last_processed].bits &&neighbors[i].step == neighbors[last_processed].step){continue;}//搜索hashBox中滿足條件的對象count += membersOfGeoHashBox(zobj, neighbors[i], ga, lon, lat, radius);last_processed = i;}return?count; }int?membersOfGeoHashBox(robj *zobj, GeoHashBits hash, geoArray *ga,?double?lon,?double?lat,?double?radius)?{ //獲取hashBox內的最大、最小geohash值(52位)GeoHashFix52Bits min, max;scoresOfGeoHashBox(hash,&min,&max);//根據最大、最小geohash值篩選zobj集合中滿足條件的點return?geoGetPointsInRange(zobj, min, max, lon, lat, radius, ga); }int?geoGetPointsInRange(robj *zobj,?double?min,?double?max,?double?lon,?double?lat,?double?radius, geoArray *ga)?{//搜索Range的參數邊界設置(即9個hashBox其中一個的邊界范圍)zrangespec range = { .min = min, .max = max, .minex =?0, .maxex =?1?};size_t?origincount = ga->used;sds member;//搜索集合zobj可能有ZIPLIST和SKIPLIST兩種編碼方式,這里以SKIPLIST為例,邏輯是一樣的if?(zobj->encoding == OBJ_ENCODING_ZIPLIST) {……}?else?if?(zobj->encoding == OBJ_ENCODING_SKIPLIST) {zset *zs = zobj->ptr;zskiplist *zsl = zs->zsl;zskiplistNode *ln;//獲取在hashBox范圍內的首個元素(跳表數據結構,效率可比擬于二叉查找樹),沒有則返0if?((ln = zslFirstInRange(zsl, &range)) ==?NULL) {/* Nothing exists starting at our min. No results. */return?0;}//從首個元素開始遍歷集合while?(ln) {sds ele = ln->ele;//遍歷元素超出range范圍則break/* Abort when the node is no longer in range. */if?(!zslValueLteMax(ln->score, &range))break;//元素校驗(計算元素與中心點的距離)ele = sdsdup(ele);if?(geoAppendIfWithinRadius(ga,lon,lat,radius,ln->score,ele)== C_ERR) sdsfree(ele);ln = ln->level[0].forward;}}return?ga->used - origincount; }int?geoAppendIfWithinRadius(geoArray *ga,?double?lon,?double?lat,?double?radius,?double?score, sds member)?{double?distance, xy[2];//解碼錯誤, 返回errorif?(!decodeGeohash(score,xy))?return?C_ERR;?/* Can't decode. *///最終距離校驗(計算球面距離distance看是否小于radius)if?(!geohashGetDistanceIfInRadiusWGS84(lon,lat, xy[0], xy[1],radius, &distance)){return?C_ERR;}//構建并返回滿足條件的元素geoPoint *gp = geoArrayAppend(ga);gp->longitude = xy[0];gp->latitude = xy[1];gp->dist = distance;gp->member = member;gp->score = score;return?C_OK; }

算法小結

拋開眾多可選參數不談,簡單總結下GEORADIUS命令是怎么利用geohash獲取目標位置對象的:

1、參數提取和校驗;

2、利用中心點和輸入半徑計算待查區域范圍。這個范圍參數包括滿足條件的最高的geohash網格等級(精度) 以及 對應的能夠覆蓋目標區域的九宮格位置;(后續會有詳細說明)

3、對九宮格進行遍歷,根據每個geohash網格的范圍框選出位置對象。進一步找出與中心點距離小于輸入半徑的對象,進行返回。

直接描述不太好理解,我們通過如下兩張圖在對算法進行簡單的演示:

令左圖的中心為搜索中心,綠色圓形區域為目標區域,所有點為待搜索的位置對象,紅色點則為滿足條件的位置對象。

在實際搜索時,首先會根據搜索半徑計算geohash網格等級(即右圖中網格大小等級),并確定九宮格位置(即紅色九宮格位置信息);再依次查找計算九宮格中的點(藍點和紅點)與中心點的距離,最終篩選出距離范圍內的點(紅點)。

算法分析

為什么要用這種算法策略進行查詢,或者說這種策略的優勢在哪,讓我們以問答的方式進行分析說明。

為什么要找到滿足條件的最高的geohash網格等級?為什么用九宮格?

這其實是一個問題,本質上是對所有的元素對象進行了一次初步篩選。?在多層geohash網格中,每個低等級的geohash網格都是由4個高一級的網格拼接而成(如圖)。

換句話說,geohash網格等級越高,所覆蓋的地理位置范圍就越小。當我們根據輸入半徑和中心點位置計算出的能夠覆蓋目標區域的最高等級的九宮格(網格)時,就已經對九宮格外的元素進行了篩除。

這里之所以使用九宮格,而不用單個網格,主要原因還是為了避免邊界情況,盡可能縮小查詢區域范圍。試想以0經緯度為中心,就算查1米范圍,單個網格覆蓋的話也得查整個地球區域。而向四周八個方向擴展一圈可有效避免這個問題。

如何通過geohash網格的范圍框選出元素對象?效率如何?

首先在每個geohash網格中的geohash值都是連續的,有固定范圍。所以只要找出有序集合中,處在該范圍的位置對象即可。以下是有序集合的跳表數據結構:

其擁有類似二叉查找樹的查詢效率,操作平均時間復雜性為O(log(N))。且最底層的所有元素都以鏈表的形式按序排列。

所以在查詢時,只要找到集合中處在目標geohash網格中的第一個值,后續依次對比即可,不用多次查找。?

九宮格不能一起查,要一個個遍歷的原因也在于九宮格各網格對應的geohash值不具有連續性。只有連續了,查詢效率才會高,不然要多做許多距離運算。

綜上,我們從源碼角度解析了Redis Geo模塊中 “增(GEOADD)” 和 “查(GEORADIUS)” 的詳細過程。并可推算出Redis中GEORADIUS查找附近的人功能,時間復雜度為:O(N+log(M))

其中N為指定半徑范圍內的位置元素數量,而M則是被九宮格圈住計算距離的元素的數量。結合Redis本身基于內存的存儲特性,在實際使用過程中有非常高的運行效率。

最后,再附上我歷時三個月總結的?Java 面試 + Java 后端技術學習指南,這是本人這幾年及春招的總結,目前,已經拿到了大廠offer,拿去不謝!

下載方式

1.?首先掃描下方二維碼

2.?后臺回復「Java面試」即可獲取

總結

以上是生活随笔為你收集整理的Redis 到底是怎么实现“附近的人”这个功能的?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

久久成人一区二区 | 麻豆精品在线视频 | 欧美日韩视频在线观看免费 | 日韩欧美视频免费在线观看 | 日本精a在线观看 | 亚洲成人av一区二区 | 狠狠综合久久 | 成人高清在线 | 亚洲黄色小说网 | 黄色小说免费在线观看 | 激情五月开心 | 超碰电影在线观看 | 中文字幕第一页在线视频 | 国产亚洲综合精品 | 久久久99精品免费观看乱色 | 亚洲精品国产精品国产 | 免费黄色小网站 | 三级免费黄色 | 久久97精品| 亚洲天堂在线观看完整版 | 国产第一页精品 | 久久午夜剧场 | 国产精品一区二区av | 中文字幕亚洲欧美日韩2019 | 国产免费观看高清完整版 | 久草av在线播放 | 久视频在线播放 | 日韩大片免费在线观看 | 成人黄在线观看 | 久久久www成人免费毛片麻豆 | 久久精品国产免费看久久精品 | 在线天堂中文www视软件 | av国产网站 | 精品久久网 | 久久日本视频 | 欧美天堂久久 | 午夜精品久久久久 | 亚洲综合五月 | 成人免费视频网址 | 日日夜夜人人天天 | 亚洲尺码电影av久久 | 日韩字幕在线观看 | 久久久久久久久久国产精品 | 亚洲精品男人天堂 | 成人av网站在线观看 | 日韩成人黄色av | 热久久最新地址 | 97在线免费观看 | 欧美成人精品欧美一级乱 | 亚洲黄色免费在线看 | 91福利视频一区 | 成人97视频一区二区 | www.国产在线观看 | 波多野结衣小视频 | 国产在线精 | 免费观看一级特黄欧美大片 | 久久久久久久国产精品视频 | 久久精品视频网址 | 久久xxxx| 在线观看av免费观看 | 一级片免费观看视频 | 911国产| 亚洲涩涩涩涩涩涩 | 成人国产精品一区二区 | 最近2019好看的中文字幕免费 | 四虎8848免费高清在线观看 | 国产高清在线免费 | 六月色丁香 | 97超碰人人澡人人爱 | 久久久色 | 96国产在线 | 精品国产一区二区三区久久久 | 欧美天堂视频在线 | 免费h视频 | 久久久免费视频播放 | 免费看黄在线看 | 2021国产精品视频 | 国产高清精品在线 | 久久99久久99精品免视看婷婷 | 九九热久久久 | 国产一区二区三区午夜 | 免费在线成人av电影 | 国产精品18videosex性欧美 | 天天操夜夜想 | 久久天天躁狠狠躁夜夜不卡公司 | 中国一级片视频 | 91精品在线免费视频 | 91免费高清观看 | 丁香花在线观看视频在线 | 超碰激情在线 | 九九热有精品 | 午夜黄网 | 久久精品视频播放 | 国产一级片一区二区三区 | 欧美与欧洲交xxxx免费观看 | 中文字幕 第二区 | 国产黄色一级大片 | 最新av网址在线观看 | 欧美大码xxxx | 国产精品岛国久久久久久久久红粉 | 国产精品久久久影视 | 国产精品99爱 | 中文字幕无吗 | 97人人爽| 国产精品mv在线观看 | 福利视频导航网址 | 国产精品一区久久久久 | av资源免费观看 | 亚洲精品播放 | 国产在线视频一区二区 | 中文字幕免费观看 | 国产黄色播放 | 四虎精品成人免费网站 | 欧美一级黄色片 | 99热这里只有精品久久 | 国产精品午夜久久 | 一区二区三区国产欧美 | 国产精品久久久久久久久免费看 | av片免费播放| 日操干| 国产91精品欧美 | 亚洲黄色免费 | 一级片观看 | 日韩性xxx| 久久综合狠狠综合久久狠狠色综合 | 青青久草在线 | 四季av综合网站 | 国产成人精品一区二 | 日韩精品一区二区三区在线播放 | 一区二区三区福利 | 免费国产在线视频 | 国产成人一级电影 | 成人黄色在线看 | 日日爽夜夜操 | 欧美精品在线观看免费 | 波多野结衣在线中文字幕 | 成人午夜黄色 | 亚洲欧美在线观看视频 | 国产亚洲精品bv在线观看 | 日本成人黄色片 | 亚洲黄网站 | 久久久久99精品成人片三人毛片 | 亚洲精品理论片 | 国产精品永久免费 | 四虎5151久久欧美毛片 | 超碰在线观看99 | 欧美天堂影院 | 五月花婷婷 | 97视频在线观看网址 | 午夜a区 | a成人在线| 亚洲国产成人在线观看 | 国产精品第二十页 | 久国产在线播放 | 亚洲在线视频免费观看 | 人人射人人| 中文字幕高清免费日韩视频在线 | av网站在线观看免费 | 天天操天天射天天插 | 国产精品欧美 | 丝袜护士aⅴ在线白丝护士 天天综合精品 | 国产高清视频在线播放一区 | 最新影院| 91精品啪在线观看国产线免费 | www日日 | 久久久久五月天 | 欧美精品三级在线观看 | 亚洲毛片在线观看. | 欧美精品乱码久久久久久按摩 | 日韩中文字幕视频在线观看 | 精品99在线观看 | 日本午夜在线观看 | 日本美女xx | 在线之家免费在线观看电影 | 日韩视频免费在线观看 | 国产精品正在播放 | 日韩欧美精品在线观看视频 | 黄色在线观看免费网站 | 精品国产伦一区二区三区 | 亚洲九九 | 国产高清在线免费观看 | 日女人免费视频 | 91在线看免费 | 天天碰天天操 | 色综合久久久久综合体桃花网 | 日韩精品短视频 | 午夜影院一级片 | 欧美极品xxx | 免费男女羞羞的视频网站中文字幕 | av丝袜在线 | 久久精品免费电影 | 国产在线视频一区 | 久久国产成人午夜av影院宅 | 欧美高清视频不卡网 | 精品成人在线 | 精品视频www | 521色香蕉网站在线观看 | 天天做天天干 | 中文字幕 国产 一区 | 天天av天天 | 色黄www小说 | 久久久久综合 | 日韩网站在线免费观看 | 国产99久久九九精品 | 麻豆影视在线播放 | 成人黄大片视频在线观看 | aaa毛片视频| 菠萝菠萝在线精品视频 | 免费av黄色 | 在线观看午夜 | 国产精品久久久精品 | 99精品视频网站 | 亚洲激情网站免费观看 | www天天操 | 国产免费小视频 | 日韩区在线观看 | 在线精品视频在线观看高清 | 亚洲综合在线一区二区三区 | 欧美日韩一区二区三区免费视频 | 午夜国产一区二区 | 亚洲精品国偷自产在线99热 | 亚洲色图27p | 亚洲劲爆av | 色九九在线 | 精品视频999 | 精品国产乱码一区二 | 精品一区二区精品 | 91在线网址 | 在线免费av观看 | 亚洲伦理电影在线 | 五月婷婷深开心 | 亚洲综合日韩在线 | 中文在线天堂资源 | 最近中文字幕在线播放 | 亚洲国产中文字幕在线观看 | 奇米导航 | 国产五月 | 婷婷av资源| 99精品乱码国产在线观看 | 久久久免费毛片 | 国产精品免费小视频 | 日韩免费一级a毛片在线播放一级 | 国产精品99久久久久 | 福利电影久久 | 97超碰人人澡人人爱学生 | 亚洲精品视频在线观看免费 | 亚洲精品午夜国产va久久成人 | 91亚洲精品国产 | 欧美日本高清视频 | 在线观看免费一区 | 国产精品久久久久久久久久久久午夜 | 国产精品综合久久久久 | 日韩在线播放av | 在线观看91网站 | 日韩精品免费在线视频 | 最新色站| 揉bbb玩bbb少妇bbb | 国产成人精品在线观看 | 国产专区视频在线 | 黄av资源| 欧美一区二区在线免费观看 | 97精品国产91久久久久久 | 久久 地址 | 中文在线字幕免费观 | 亚洲 欧洲 国产 日本 综合 | 99久久毛片 | av成人免费在线观看 | 91最新地址永久入口 | 欧美在线观看禁18 | 91精品国产91久久久久久三级 | 一区二区三区在线影院 | 这里只有精品视频在线观看 | 久久综合九色综合97_ 久久久 | www.国产在线观看 | av在线免费观看网站 | 五月婷婷在线综合 | 日韩欧美国产精品 | 91香蕉视频720p | 精品人人爽 | 美女黄频在线观看 | 天天躁天天狠天天透 | 久久精品女人毛片国产 | 中文字幕黄色av | 久久试看 | 在线影院中文字幕 | 91av视频免费观看 | 亚洲精品久久激情国产片 | 丁香婷婷综合激情 | 正在播放 国产精品 | 亚洲va在线va天堂va偷拍 | 国产精品18久久久久久首页狼 | 久久久精品| 日韩天天操 | 国产精品一区二区久久精品爱微奶 | 欧美精品一区二区在线播放 | 中文字幕在线国产精品 | 新av在线| 天天干天天射天天爽 | 手机av资源| 国产成人精品亚洲精品 | 亚洲午夜精品电影 | 中文字幕在线观看播放 | 91成版人在线观看入口 | av超碰免费在线 | 欧美成人一区二区 | 午夜视频欧美 | 婷婷久月 | 国产一区二区精品久久 | 91精品免费在线 | 日韩毛片在线免费观看 | 午夜美女视频 | 久久久久亚洲精品 | 天天拍天天色 | 一区在线播放 | 日本精品午夜 | 久久全国免费视频 | 六月丁香激情综合色啪小说 | 国内精品久久影院 | 国产精品一区二区免费视频 | 成人黄色电影在线播放 | 欧美精品久久久久久久亚洲调教 | 免费在线观看成人av | 成人在线免费视频 | 欧美综合久久 | 亚洲国产欧美在线看片xxoo | 91av蜜桃 | 国产精品一区二区白浆 | 99国产精品久久久久久久久久 | 欧美日韩综合在线观看 | 精品久久久久一区二区国产 | 欧美日韩视频在线播放 | 就要色综合| 亚洲精品免费看 | 97视频在线播放 | 欧美伦理一区二区 | 五月天婷婷视频 | 西西www4444大胆在线 | 天天躁天天躁天天躁婷 | 狠狠色丁香婷婷综合最新地址 | 久av在线| 99免费看片 | 午夜91在线 | 色99中文字幕 | 欧美激情一区不卡 | 国产高清在线观看 | 成人教育av | 亚洲人成人天堂h久久 | 国产日产精品一区二区三区四区 | 免费人成在线观看 | 精品久久久久一区二区国产 | 久久久国产一区二区三区四区小说 | 亚洲乱码国产乱码精品天美传媒 | 亚洲一区久久 | 五月激情丁香婷婷 | 一区二区三区日韩视频在线观看 | 五月天中文字幕 | 免费看污在线观看 | 久久一线 | 91手机视频 | 在线观看成人小视频 | 久草在线视频在线观看 | 国产美女精品在线 | 久久久91精品国产一区二区精品 | 精品99在线视频 | 中文高清av | 成人蜜桃视频 | 欧美日韩精 | 中文在线中文资源 | 九九av| 99这里只有久久精品视频 | 精品福利视频在线 | 国产精品久久综合 | 国产欧美精品一区二区三区四区 | 久久好看免费视频 | 久久精品视频网站 | 免费黄色a网站 | 国产精品久久久久久久久久99 | 伊人中文在线 | 最新日韩视频在线观看 | 在线观看91| 国产欧美在线一区 | 九七视频在线观看 | 丁香激情五月 | 天天操天天干天天爱 | 亚洲伊人第一页 | 色天天 | 国产麻豆果冻传媒在线观看 | 国产精品美女999 | 一区二区三区四区不卡 | 国产最新视频在线观看 | 狠狠色丁香婷婷综合基地 | 深爱五月激情五月 | 九九99靖品 | 欧美极品久久 | 国产专区一 | 九九在线精品视频 | 99久久婷婷国产综合亚洲 | 蜜桃视频日本 | 国产免费精彩视频 | 午夜精品久久久久久99热明星 | 中文乱码视频在线观看 | 国产视频69 | 国产精品免费观看国产网曝瓜 | 91九色视频在线播放 | 久草在线在线视频 | 久久草在线视频国产 | 天天人人综合 | 亚洲欧美激情插 | 精品久久中文 | 99这里只有精品99 | 天天干夜夜爽 | 久草在线这里只有精品 | 国产网站在线免费观看 | 丁香五月网久久综合 | 国产91电影在线观看 | 最近在线中文字幕 | 久久超碰网 | 久草在线看片 | 美女免费网站 | 欧美一区二区精美视频 | 国产专区视频在线 | 六月婷操| 天天操天天干天天综合网 | 久久精品国产精品亚洲 | 色婷婷国产精品一区在线观看 | 激情丁香 | 日韩精品三区四区 | 久久久久久99精品 | 色全色在线资源网 | 国产精品福利一区 | 丁香六月天 | 91热视频 | 国产精品资源网 | 九九九九色 | 国产 日韩 欧美 中文 在线播放 | 精品国产1区 | 日日综合 | 国产欧美三级 | 国产成人一区二区三区在线观看 | 亚州精品在线视频 | 免费在线成人av | 精品国产伦一区二区三区 | 国产精品一区二区三区在线免费观看 | 亚洲伦理电影在线 | 亚洲欧美日韩国产 | 久久精品之 | 国产精品久久久久久久久久 | 岛国av在线不卡 | 日日添夜夜添 | 在线看成人 | 麻豆一区二区三区视频 | 日本mv大片欧洲mv大片 | 日韩二区在线 | 992tv又爽又黄的免费视频 | 成全在线视频免费观看 | 久久99精品视频 | 国产欧美在线一区二区三区 | 激情五月开心 | 2023年中文无字幕文字 | 激情网站网址 | 久草在线中文视频 | 五月综合婷 | 国产视频一区二区三区在线 | 天天综合五月天 | 91亚洲永久精品 | 97在线观看免费高清完整版在线观看 | 久久久久久久看片 | 久久综合久久综合这里只有精品 | 久久69精品 | 五月色丁香 | 天天干天天干天天干天天干天天干天天干 | 国产91aaa| 豆豆色资源网xfplay | 亚洲japanese制服美女 | 日韩欧美高清不卡 | 四虎影视成人永久免费观看亚洲欧美 | 国产一级免费在线 | 青草草在线 | 久久精品国产免费 | 国产色网站 | 免费能看的黄色片 | 日韩精品一区电影 | 少妇bbw揉bbb欧美 | 这里只有精品视频在线 | 午夜精品一区二区国产 | 91精品国产自产91精品 | 911精品美国片911久久久 | 国产美女免费视频 | 亚洲精选99 | 美女免费视频观看网站 | av专区在线 | 最新av免费在线观看 | 婷婷久草 | 国产色一区 | 人人干狠狠干 | 免费三级在线 | 天天干夜夜操视频 | 国产精品乱码一区二区视频 | 婷婷六月丁香激情 | 国产一区视频在线 | 国产成人精品综合久久久久99 | 亚洲精品午夜国产va久久成人 | 一区二区三区免费 | 在线 视频 一区二区 | 婷婷社区五月天 | 九九久久久久久久久激情 | 亚洲免费精品视频 | 成年人网站免费在线观看 | 五月天色中色 | 日本xxxx.com | 亚洲黄色av网址 | 成人久久18免费网站 | 成人免费在线播放 | 久久久久国产一区二区 | 免费看的国产视频网站 | 999久久久 | 国产精品露脸在线 | 婷婷视频在线播放 | 日韩欧美一区二区三区视频 | 99精品视频在线播放观看 | 日韩电影黄色 | 国产一区二区播放 | 免费黄在线看 | 欧美性色19p | 在线成人高清电影 | 丁香六月在线观看 | 麻豆成人网 | 手机看片国产日韩 | 久久精品亚洲国产 | 91高清免费在线观看 | 99免费看片 | 久久 亚洲视频 | 黄色亚洲大片免费在线观看 | 精品国产不卡 | 18岁免费看片 | 久香蕉| 国产高清在线免费观看 | 午夜精品久久久久 | 日韩三区在线观看 | 久久伊人五月天 | 国产成人99久久亚洲综合精品 | 日韩欧美在线观看一区二区三区 | 91亚洲狠狠婷婷综合久久久 | 久久精品国产亚洲精品 | 97成人免费 | 91九色九色| 色999五月色| 91在线观| 一区在线免费观看 | 欧美日韩免费观看一区=区三区 | 久久久精品久久 | 在线黄av| 日日婷婷夜日日天干 | 中文日韩在线视频 | 成人app在线免费观看 | 欧美成天堂网地址 | 亚洲国产网站 | 怡红院久久 | 亚洲综合在线观看视频 | 日批视频国产 | 在线午夜电影神马影院 | 国产精品久久久久av福利动漫 | 国产免费黄视频在线观看 | 天天添夜夜操 | 欧美精品少妇xxxxx喷水 | 波多野结衣最新 | 在线观看免费黄色 | 成人一区在线观看 | 天天天天天天操 | 91香蕉嫩草 | 不卡精品 | 中文字幕中文字幕在线一区 | 色综合五月 | 亚洲国产mv | 欧美爽爽爽| 午夜久久网站 | av福利资源| 在线亚洲观看 | 99精品国自产在线 | 在线观看视频精品 | 婷婷久久一区二区三区 | 日本视频不卡 | 久久久久免费 | 精品国产一区二区三区久久影院 | 97免费在线视频 | 麻豆精品视频在线观看免费 | 亚洲国产精品成人女人久久 | 一区二区中文字幕在线 | 日本精品视频在线观看 | 国产精品欧美久久 | 国产亚洲婷婷 | 婷婷久久亚洲 | 国产成人免费观看 | 日韩欧美视频免费在线观看 | 亚洲精品小区久久久久久 | 亚洲精品在线观看视频 | 黄av在线| 深夜视频久久 | 国产精品欧美激情在线观看 | 欧美日韩裸体免费视频 | 日本韩国精品在线 | 日韩毛片在线免费观看 | 久久国产精品精品国产色婷婷 | 精品影院 | 日韩丝袜在线观看 | 久久综合九色九九 | 麻豆视频免费在线播放 | 国产精品青青 | 久久精品人人做人人综合老师 | 免费午夜网站 | 天天综合天天做天天综合 | 成年人视频在线免费 | 97超碰色 | 伊人中文网 | 天天射天天色天天干 | 黄色片网站av | 91精品欧美 | 九九久久久久久久久激情 | 国产免费黄视频在线观看 | 日本爱爱免费视频 | 九九在线免费视频 | 蜜桃视频日韩 | 91精品国产网站 | 日韩精品一区二区三区免费观看视频 | 在线观看免费视频你懂的 | 96av麻豆蜜桃一区二区 | 色综合中文综合网 | 国产精品99在线播放 | 不卡av在线 | av电影久久 | 国产精品欧美激情在线观看 | 欧美激情在线网站 | 亚洲免费在线视频 | 热re99久久精品国产66热 | 成人免费视频播放 | 深爱激情站 | 人人揉人人揉人人揉人人揉97 | 国产涩涩网站 | 欧美日韩国产精品一区 | 亚洲一二视频 | 免费电影一区二区三区 | 国产中文视 | 国产美女久久 | 中文字幕视频 | 免费 在线 中文 日本 | 国产精品国产三级国产 | 亚洲另类久久 | 99热在线网站 | av丁香花| 超碰97久久| 一本一本久久a久久精品综合 | av片在线观看免费 | 国产日韩精品一区二区三区 | 久久久久久久久久久久久影院 | 亚洲影视九九影院在线观看 | 亚洲精品国产品国语在线 | 91视频久久久久 | 日本中文字幕一二区观 | 在线观看激情av | 亚洲狠狠| 国内精品一区二区 | 免费成人av网站 | 狠狠狠狠狠狠狠狠干 | 激情偷乱人伦小说视频在线观看 | 国产中文字幕第一页 | 亚洲少妇久久 | 亚洲精品国产综合久久 | 精品久久久久久亚洲综合网 | 久久久久久久久福利 | 天天操 夜夜操 | 国产高清在线看 | 久久综合狠狠综合久久激情 | 久久这里只精品 | 日本久久精 | 国产麻豆精品95视频 | 91视频xxxx| 色婷婷成人 | 成年人免费在线观看网站 | 最新极品jizzhd欧美 | 亚洲丁香久久久 | 国产最新视频在线观看 | 久久99欧美 | 日韩在线视频不卡 | 丁香久久综合 | 人人玩人人添人人澡97 | 日韩三级免费 | 免费福利片 | 国产精品免费久久久 | 中文字幕人成乱码在线观看 | 久久综合狠狠综合久久综合88 | 91精品久久久久久综合五月天 | 国产午夜三级 | 中文字幕日韩有码 | 亚洲精品乱码久久久久久蜜桃动漫 | 天天操操操操操 | 国产一区在线精品 | 综合五月 | 久久美女高清视频 | 超碰人人在线 | 亚洲欧美一区二区三区孕妇写真 | 国产精品无av码在线观看 | 激情综合网在线观看 | 国产精品一区专区欧美日韩 | 9在线观看免费高清完整版在线观看明 | 91精品电影 | 亚洲一区二区三区四区在线视频 | 日韩欧美在线观看一区二区 | 九九亚洲视频 | 欧美日本不卡视频 | 天天爽天天爽 | 日韩在线免费视频观看 | 三级在线播放视频 | 草免费视频 | 日韩免费大片 | 中文字幕在线观看视频网站 | 欧美日本一二三 | 99草视频| 精品一区二区免费在线观看 | 极品国产91在线网站 | 国产精品久久久久影院 | 国产黄色一级大片 | 91网站在线视频 | 少妇资源站 | 一区二区三区av在线 | 国产亚洲精品久久久久久大师 | 久久久视屏| 日韩动漫免费观看高清完整版在线观看 | av中文字幕免费在线观看 | 9999国产| 久久精品中文字幕免费mv | av成人动漫| 毛片黄色一级 | 婷婷5月色 | 国产麻豆精品一区 | 成人一区二区三区中文字幕 | 亚洲狠狠婷婷综合久久久 | 国产精品久久久久亚洲影视 | 亚洲综合网 | www.亚洲视频.com | 中文字幕在线播放视频 | 免费av观看网站 | 首页国产精品 | 亚洲国产精品日韩 | 久久久久久久久久久久久久免费看 | 久久电影网站中文字幕 | 国产精品成人av电影 | 一本一本久久a久久精品综合小说 | av综合av| 人人艹人人 | 最新日韩在线观看 | 亚洲成人av片 | 不卡的av电影在线观看 | 欧美在线观看视频一区二区三区 | 狠狠地日 | 久草在线免费看视频 | 最近更新好看的中文字幕 | 色偷偷97 | 天天操天天舔天天干 | 插综合网 | 在线视频一二三 | 毛片二区 | 99中文字幕在线观看 | 亚洲精品小视频在线观看 | 欧美日韩在线免费观看视频 | 天天av在线播放 | 在线日韩亚洲 | 最近字幕在线观看第一季 | 国产精品毛片一区二区 | 久久y| 亚洲视频 视频在线 | 亚洲每日更新 | 亚洲黄色精品 | 亚洲 av网站 | 亚洲日本va在线观看 | 欧美激情视频一区二区三区免费 | 2019中文在线观看 | 五月婷婷播播 | 国产手机在线播放 | www一起操 | 97香蕉视频 | 欧美日韩不卡一区二区 | 91丨九色丨国产在线观看 | 日日添夜夜添 | 丁香婷婷色综合亚洲电影 | 九九九九九精品 | 亚洲精品白浆高清久久久久久 | 免费日韩视 | 欧美精品黑人性xxxx | 在线观看中文字幕网站 | 女人高潮一级片 | 久久黄色美女 | av天天澡天天爽天天av | 99精品视频免费 | 亚洲高清资源 | 2020天天干夜夜爽 | 久草视频免费播放 | 99热九九这里只有精品10 | 精品一二三四视频 | www.91av在线| 欧美天天综合 | 国产97碰免费视频 | 首页国产精品 | 成人免费观看av | 五月激情婷婷丁香 | 欧美日韩国产一区二区在线观看 | 欧美在线观看视频一区二区三区 | 亚洲狠狠干 | 国产精品mv在线观看 | 欧洲在线免费视频 | 黄色免费在线视频 | 日韩最新av在线 | 国产精品久久久亚洲 | 日韩av在线看 | 久久99视频免费观看 | 欧美一区二区三区特黄 | 国产精品日韩欧美 | 婷婷国产精品 | 中文亚洲欧美日韩 | 午夜影院一级 | 亚洲国产成人高清精品 | 伊人色综合网 | 中文成人字幕 | 亚洲精品美女在线观看播放 | 97超碰在线资源 | 91在线国产观看 | 亚洲丝袜中文 | 免费在线观看av的网站 | 国产精品美女久久久久久网站 | 97精品国产一二三产区 | 福利视频一区二区 | 日韩av一区二区三区四区 | 一区二区三区观看 | 日韩精品短视频 | 成人午夜电影在线 | www.玖玖玖 | 91大神dom调教在线观看 | 久久国产精品一区二区三区四区 | 精品一二三区视频 | 精品视频在线视频 | 日日摸日日爽 | 久久免费视频这里只有精品 | www.一区二区三区 | 国产精品久久久久久久久久了 | 日韩在线观看a | 激情综合交 | 欧美日韩不卡一区二区三区 | 综合成人在线 | 久久国产日韩 | 91香蕉视频黄色 | 日本一区二区三区视频在线播放 | av中文字幕亚洲 | www黄在线 | 国产精品女同一区二区三区久久夜 | 午夜精品电影 | 免费网站黄 | 91网站在线视频 | 福利视频第一页 | 成人h动漫精品一区二 | 一区中文字幕电影 | 欧美日韩精品区 | 午夜久久视频 | 国产区精品区 | 999视频在线观看 | 婷婷在线观看视频 | 伊在线视频 | 欧美日韩中文字幕综合视频 | a爱爱视频 | 亚洲一级免费电影 | 国产精品久久久久久婷婷天堂 | 久久久久看片 | 中文字幕乱码日本亚洲一区二区 | 成人h动漫在线看 | 在线成人免费 | 98超碰人人 | 99久久夜色精品国产亚洲 | 99热超碰在线 | 成人资源在线播放 | 日本性动态图 | 特级黄色片免费看 | 免费观看第二部31集 | 91丨九色丨首页 | 日韩一区二区三区视频在线 | 免费午夜网站 | 成人国产精品久久久 | 免费看片成人 | 欧美日韩视频在线观看免费 | 欧美天天射 | 色播五月婷婷 | 亚洲综合精品视频 | 九九热re | 99热精品免费观看 | 日日爽 | 日韩中文字幕国产精品 | 激情五月婷婷综合网 | 亚洲更新最快 | 久久综合中文字幕 | 91精品视频免费在线观看 | 久久久综合香蕉尹人综合网 | 波多野结衣资源 | 欧美视频一区二 | 国产黄色免费电影 | 久久国产热 | 在线电影av | 在线成人小视频 | 国产精品九九热 | 日韩精品久久中文字幕 | 国产精品wwwwww | 日韩久久久久久久久久久久 | 国内久久精品视频 | 91在线亚洲 | 黄色小说视频在线 | 国产高清在线观看av | 国产一区二区三区视频在线 | 中文字幕在线观看视频免费 | 色网站中文字幕 | 在线观看国产v片 | 亚洲精品国产自产拍在线观看 | 久草在线手机视频 | 色偷偷中文字幕 | 免费在线视频一区二区 | 国产成人精品网站 | 日韩欧美视频一区二区三区 | 久久久久免费电影 | 欧美aa在线 | 午夜国产福利视频 | 亚洲色综合 | 国产高清在线视频 | 久久免费国产电影 | 久久久亚洲精品 | 欧美小视频在线 | 国产日韩欧美精品在线观看 | 成人高清在线 | av在线免费播放 | 成人午夜电影网 | 亚洲国产精品久久久久婷婷884 | 亚洲国产日韩欧美 | 91污在线观看| 久艹在线播放 | 麻豆小视频在线观看 | 337p日本欧洲亚洲大胆裸体艺术 | 国产h片在线观看 | 亚洲欧美视频在线 | 天天色天天色天天色 | 91资源在线播放 | 粉嫩av一区二区三区四区 | 五月天激情视频在线观看 | 在线天堂亚洲 | 欧美坐爱视频 | 日韩激情中文字幕 | 91免费版成人| 99视频在线免费观看 | 天天干天天干天天射 | 九九99| 欧洲av在线| 91中文字幕网| av无限看 | 午夜精品久久久久 | 日韩精品久久久久久中文字幕8 | 午夜三级大片 | 激情婷婷丁香 | 欧美一级日韩免费不卡 | 国产麻豆视频在线观看 | 91精品国产一区二区在线观看 | 91精品啪 | 视频三区 | 日本久久久久久久久久久 | av亚洲产国偷v产偷v自拍小说 | 在线观看91久久久久久 | 国产vs久久| 成年美女黄网站色大片免费看 | 91麻豆操| 亚洲欧美国产日韩在线观看 | 不卡视频国产 | 国产精品美女久久久网av | 国产免费作爱视频 | 天天操天天干天天爱 | 国产精品999久久久 久产久精国产品 | 日韩在线视频不卡 | 四虎永久免费在线观看 | 九九亚洲精品 | av在线短片 | 亚洲激情在线观看 | 美女视频永久黄网站免费观看国产 | 国产精品日韩欧美 | 午夜成人影视 | 久久99国产精品久久99 | 日韩在线视 | 在线观看网站黄 | 欧美亚洲精品在线观看 | 国产在线视频在线观看 | 国产小视频在线观看 | 亚洲女在线 | 丁香在线观看完整电影视频 | 国产精品专区在线观看 | 黄色免费网站 | 中文字幕在线视频精品 | 国产高清一级 | 中文字幕 国产视频 |