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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

关于 std::set/std::map 的几个为什么

發布時間:2023/12/18 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于 std::set/std::map 的几个为什么 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


2013-01-20

std::set/std::map (以下用 std::map 代表) 是常用的關聯式容器,也是 ADT(抽象數據類型)。也就是說,其接口(不是 OO 意義下的 interface)不僅規定了操作的功能,還規定了操作的復雜度(代價/cost)。例如 set::insert(iterator first, iterator last) 在通常情況下是 O(N?log?N),N?是區間的長度;但是如果 [first, last) 已經排好序(在 key_compare 意義下),那么復雜度將會是 O(N)。

盡管 C++ 標準沒有強求 std::map 底層的數據結構,但是根據其規定的時間復雜度,現在所有的 STL 實現都采用平衡二叉樹來實現 std::map,而且用的都是紅黑樹。《算法導論(第 2 版)》第 12、13 章介紹了二叉搜索樹和紅黑樹的原理、性質、偽代碼,侯捷先生的《STL 源碼剖析》第 5 章詳細剖析了 SGI STL 的對應實現。本文對 STL 中紅黑樹(rb_tree)的實現問了幾個稍微深入一點的問題,并給出了我的理解。本文剖析的是?G++ 4.7 自帶的這一份 STL 實現及其特定行為,與《STL 源碼剖析》的版本略有區別。為了便于閱讀,文中的變量名和 class 名都略有改寫(例如 _Rb_tree_node 改為 rb_tree_node)。本文不談紅黑樹的平衡算法,在我看來這屬于“旁枝末節”(見陳碩《談一談網絡編程學習經驗》對此的定義),因此也就不關心節點的具體顏色了。

數據結構回顧

先回顧一下數據結構教材上講的二叉搜索樹的結構,節點(Node)一般有三個數據成員(left、right、data),樹(Tree)有一到兩個成員(root 和 node_count)。

用 Python 表示: class Node:def __init__(self, data):self.left = Noneself.right = Noneself.data = dataclass Tree:def __init__(self):self.root = Noneself.node_count = 0

而實際上 STL rb_tree 的結構比這個要略微復雜一些,我整理的代碼見?https://gist.github.com/4574621#file-tree-structure-cc?。

節點

Node 有 5 個成員,除了 left、right、data,還有 color 和 parent。

C++實現,位于bits/stl_tree.h /*** Non-template code**/enum rb_tree_color { kRed, kBlack };struct rb_tree_node_base {rb_tree_color color_;rb_tree_node_base* parent_;rb_tree_node_base* left_;rb_tree_node_base* right_; };/*** template code**/template<typename Value> struct rb_tree_node : public rb_tree_node_base {Value value_field_; };

見下圖。

color 的存在很好理解,紅黑樹每個節點非紅即黑,需要保存其顏色(顏色只需要 1-bit 數據,一種節省內存的優化措施是把顏色嵌入到某個指針的最高位或最低位,Linux 內核里的 rbtree 是嵌入到 parent 的最低位);parent 的存在使得非遞歸遍歷成為可能,后面還將再談到這一點。

Tree 有更多的成員,它包含一個完整的 rb_tree_node_base(color/parent/left/right),還有 node_count 和 key_compare 這兩個額外的成員。

這里省略了一些默認模板參數,如 key_compare 和 allocator。 template<typename Key, typename Value> // key_compare and allocator class rb_tree {public:typedef std::less<Key> key_compare;typedef rb_tree_iterator<Value> iterator;protected:struct rb_tree_impl // : public node_allocator{key_compare key_compare_;rb_tree_node_base header_;size_t node_count_;};rb_tree_impl impl_; };template<typename Key, typename T> // key_compare and allocator class map {public:typedef std::pair<const Key, T> value_type;private:typedef rb_tree<Key, value_type> rep_type;rep_type tree_; };

見下圖。這是一顆空樹,其中陰影部分是 padding bytes,因為 key_compare 通常是 empty class。(allocator 在哪里?)

rb_tree 中的 header 不是 rb_tree_node 類型,而是 rb_tree_node_base,因此 rb_tree 的 size 是 6 * sizeof(void*),與模板類型參數無關。在 32-bit 上是 24 字節,在 64-bit 上是 48 字節,很容易用代碼驗證這一點。另外容易驗證 std::set 和 std::map 的 sizeof() 是一樣的。

注意 rb_tree 中的 header 不是 root 節點,其 left 和 right 成員也不是指向左右子節點,而是指向最左邊節點(left_most)和最右邊節點(right_most),后面將會介紹原因,是為了滿足時間復雜度。header.parent 指向 root 節點,root.parent 指向 header,header 固定是紅色,root 固定是黑色。在插入一個節點后,數據結構如下圖。

繼續插入兩個節點,假設分別位于 root 的左右兩側,那么得到的數據結構如下圖所示(parent 指針沒有全畫出來,因為其指向很明顯),注意 header.left 指向最左側節點,header.right 指向最右側節點。

迭代器

rb_tree 的 iterator 的數據結構很簡單,只包含一個 rb_tree_node_base 指針,但是其++/--操作卻不見得簡單(具體實現函數不在頭文件中,而在 libstdc++ 庫文件中)。

// defined in library, not in header rb_tree_node_base* rb_tree_increment(rb_tree_node_base* node); // others: decrement, reblance, etc.template<typename Value> struct rb_tree_node : public rb_tree_node_base {Value value_field_; };template<typename Value> struct rb_tree_iterator {Value& operator*() const{return static_cast<rb_tree_node<Value>*>(node_)->value_field_;}rb_tree_iterator& operator++(){node_ = rb_tree_increment(node_);return *this;}rb_tree_node_base* node_; };

end() 始終指向 header 節點,begin() 指向第一個節點(如果有的話)。因此對于空樹,begin() 和 end() 都指向 header 節點。對于 1 個元素的樹,迭代器的指向如下。

對于前面 3 個元素的樹,迭代器的指向如下。

思考,對 std::set<int>::end() 做 dereference 會得到什么?(按標準,這屬于undefined behaviour,不過但試無妨。)

rb_tree 的 iterator 的遞增遞減操作并不簡單。考慮下面這棵樹,假設迭代器 iter 指向綠色節點3,那么 ++iter 之后它應該指向灰色節點 4,再 ++iter 之后,它應該指向黃色節點 5,這兩步遞增都各走過了 2 個指針。

對于一顆更大的樹(下圖),假設迭代器 iter 指向綠色節點7,那么 ++iter 之后它應該指向灰色節點 8,再 ++iter 之后,它應該指向黃色節點 9,這兩步遞增都各走過了 3 個指針。

?

由此可見,rb_tree 的迭代器的每次遞增或遞減不能保證是常數時間,最壞情況下可能是對數時間(即與樹的深度成正比)。那么用 begin()/end() 迭代遍歷一棵樹還是不是 O(N)?換言之,迭代器的遞增或遞減是否是分攤后的(amortized)常數時間?

另外注意到,當 iter 指向最右邊節點的時候(7 或 15),++iter 應該指向 header 節點,即 end(),這一步是 O(log N)。同理,對 end() 做--,復雜度也是 O(log N),后面會用到這一事實。

rb_tree 迭代器的遞增遞減操作的實現也不是那么一目了然。要想從頭到尾遍歷一顆二叉樹(前序、中序、后序),教材上給出的辦法是用遞歸(或者用 stack 模擬遞歸,性質一樣),比如:(https://gist.github.com/4574621#file-tree-traversal-py?)

Python: def printTree(node):if node:printTree(node.left)print node.dataprintTree(node.right)

如果考慮通用性,可以把函數作為參數進去,然后通過回調的方式來訪問每個節點,代碼如下。Java XML 的 SAX 解析方式也是這樣。

Python: def visit(node, func):if node:printTree(node.left)func(node.data)printTree(node.right)

要想使用更方便,在調用方用 for 循環就能從頭到尾遍歷 tree,那似乎就不那么容易了。在 Python 這種支持 coroutine 的語言中,可以用 yield 關鍵字配合遞歸來實現,代碼如下,與前面的實現沒有多大區別。

在 Python 3.3 中還可以用 yield from,這里用 Python 2.x 的寫法。 def travel(root):if root.left:for x in travel(root.left):yield xyield root.dataif root.right:for y in travel(root.right):yield y調用方:for y in travel(root):print y

但是在 C++ 中,要想做到最后這種 StAX 的遍歷方式,那么迭代器的實現就麻煩多了,見《STL 源碼剖析》第 5.2.4 節的詳細分析。這也是 node 中 parent 指針存在的原因,因為遞增操作時,如果當前節點沒有右子節點,就需要先回到父節點,再接著找。

空間復雜度

每個 rb_tree_node 直接包含了 value_type,其大小是 4 * sizeof(void*) + sizeof(value_type)。在實際分配內存的時候還要 round up 到 allocator/malloc 的對齊字節數,通常 32-bit 是 8 字節,64-bit 是 16 字節。因此 set<int>每個節點是 24 字節或 48 字節,100 萬個元素的 set<int> 在 x86-64 上將占用 48M 內存。說明用 set<int> 來排序整數是很不明智的行為,無論從時間上還是空間上。

考慮 malloc 對齊的影響,set<int64_t> 和 set<int32_t> 占用相同的空間,set<int> 和 map<int, int> 占用相同的空間,無論 32-bit 還是 64-bit 均如此。

幾個為什么

對于 rb_tree 的數據結構,我們有幾個問題:

1. 為什么 rb_tree 沒有包含 allocator 成員?

2. 為什么 iterator 可以 pass-by-value?

3. 為什么 header 要有 left 成員,并指向 left most 節點?

4. 為什么 header 要有 right 成員,并指向 right most 節點?

5. 為什么 header 要有 color 成員,并且固定是紅色?

6. 為什么要分為 rb_tree_node 和 rb_tree_node_base 兩層結構,引入 node 基類的目的是什么?

7. 為什么 iterator 的遞增遞減是分攤(amortized)常數時間?

8. 為什么 muduo 網絡庫的 Poller 要用 std::map<int, Channel*> 來管理文件描述符?

我認為,在面試的時候能把上面前 7 個問題答得頭頭是道,足以說明對 STL 的 map/set 掌握得很好。下面一一解答。

為什么 rb_tree 沒有包含 allocator 成員?

因為默認的 allocator 是 empty class (沒有數據成員,也沒有虛表指針vptr),為了節約 rb_tree 對象的大小,STL 在實現中用了 empty base class optimization。具體做法是 std::map 以 rb_tree 為成員,rb_tree 以 rb_tree_impl 為成員,而 rb_tree_impl 繼承自 allocator,這樣如果 allocator 是 empty class,那么 rb_tree_impl 的大小就跟沒有基類時一樣。其他 STL 容器也使用了相同的優化措施,因此 std::vector 對象是 3 個 words,std::list 對象是 2 個 words。boost 的 compressed_pair 也使用了相同的優化。

我認為,對于默認的 key_compare,應該也可以實施同樣的優化,這樣每個 rb_tree 只需要 5 個 words,而不是 6 個。

為什么 iterator 可以 pass-by-value?

讀過《Effective C++》的想必記得其中有個條款是 Prefer pass-by-reference-to-const to pass-by-value,即對象盡量以 const reference 方式傳參。這個條款同時指出,對于內置類型、STL 迭代器和 STL 仿函數,pass-by-value 也是可以的,一般沒有性能損失。

在 x86-64 上,對于 rb_tree iterator 這種只有一個 pointer member 且沒有自定義 copy-ctor 的 class,pass-by-value 是可以通過寄存器進行的(例如函數的頭 4 個參數,by-value 返回對象算一個參數),就像傳遞普通 int 和指針那樣。因此實際上可能比 pass-by-const-reference 略快,因為callee 減少了一次 deference。

同樣的道理,muduo 中的 Date class 和 Timestamp class 也是明確設計來 pass-by-value 的,它們都只有一個 int/long 成員,按值拷貝不比 pass reference 慢。如果不分青紅皂白一律對 object 使用 pass-by-const-reference,固然算不上什么錯誤,不免稍微顯得知其然不知其所以然罷了。

為什么 header 要有 left 成員,并指向 left most 節點?

原因很簡單,讓 begin() 函數是 O(1)。假如 header 中只有 parent 沒有 left,begin() 將會是 O(log N),因為要從 root 出發,走 log N 步,才能到達 left most。現在 begin() 只需要用 header.left 構造 iterator 并返回即可。

為什么 header 要有 right 成員,并指向 right most 節點?

這個問題不是那么顯而易見。end() 是 O(1),因為直接用 header 的地址構造 iterator 即可,不必使用 right most 節點。在源碼中有這么一段注釋:

bits/stl_tree.h// Red-black tree class, designed for use in implementing STL// associative containers (set, multiset, map, and multimap). The// insertion and deletion algorithms are based on those in Cormen,// Leiserson, and Rivest, Introduction to Algorithms (MIT Press,// 1990), except that//// (1) the header cell is maintained with links not only to the root// but also to the leftmost node of the tree, to enable constant// time begin(), and to the rightmost node of the tree, to enable// linear time performance when used with the generic set algorithms// (set_union, etc.)//// (2) when a node being deleted has two children its successor node// is relinked into its place, rather than copied, so that the only// iterators invalidated are those referring to the deleted node.

這句話的意思是說,如果按大小順序插入元素,那么將會是線性時間,而非 O(N log N)。即下面這段代碼的運行時間與 N 成正比:

// 在 end() 按大小順序插入元素std::set<int> s;const int N = 1000 * 1000for (int i = 0; i < N; ++i)s.insert(s.end(), i);

在 rb_tree 的實現中,insert(value) 一個元素通常的復雜度是 O(log N)。不過,insert(hint, value) 除了可以直接傳 value_type,還可以再傳一個 iterator 作為 hint,如果實際的插入點恰好位于 hint 左右,那么分攤后的復雜度是 O(1)。對于這里的情況,既然每次都在 end() 插入,而且插入的元素又都比 *(end()-1) 大,那么 insert() 是 O(1)。在具體實現中,如果 hint 等于 end(),而且 value 比 right most 元素大,那么直接在 right most 的右子節點插入新元素即可。這里 header.right 的意義在于讓我們能在常數時間取到 right most 節點的元素,從而保證 insert() 的復雜度(而不需要從 root 出發走 log N 步到達 right most)。具體的運行時間測試見?https://gist.github.com/4574621#file-tree-bench-cc?,測試結果如下,縱坐標是每個元素的耗時(微秒),其中最上面的紅線是普通 insert(value),下面的藍線和黑線是 insert(end(), value),確實可以大致看出 O(log N) 和 O(1) 關系。具體的證明見《算法導論(第 2 版》第 17 章中的思考題 17-4。

但是,根據測試結果,前面引用的那段注釋其實是錯的,std::inserter() 與 set_union() 配合并不能實現 O(N) 復雜度。原因是 std::inserter_iterator 會在每次插入之后做一次 ++iter,而這時 iter 正好指向 right most 節點,其++操作是 O(log N) 復雜度(前面提到過 end() 的遞減是 O(log N),這里反過來也是一樣)。于是把整個算法拖慢到了 O(N log N)。要想 set_union() 是線性復雜度,我們需要自己寫 inserter,見上面代碼中的 end_inserter 和 at_inserter,此處不再贅言。

為什么 header 要有 color 成員,并且固定是紅色?

這是一個實現技巧,對 iterator 做遞減時,如果此刻 iterator 指向 end(),那么應該走到 right most 節點。既然 iterator 只有一個數據成員,要想判斷當前是否指向 end(),就只好判斷 (node_->color_ == kRed && node_->parent_->parent_ == node_) 了。

為什么要分為 rb_tree_node 和 rb_tree_node_base 兩層結構,引入 node 基類的目的是什么?

這是為了把迭代器的遞增遞減、樹的重新平衡等復雜函數從頭文件移到庫文件中,減少模板引起的代碼膨脹(set<int> 和 set<string> 可以共享這些的 rb_tree 基礎函數),也稍微加快編譯速度。引入 rb_tree_node_base 基類之后,這些操作就可以以基類指針(與模板參數類型無關)為參數,因此函數定義不必放在在頭文件中。這也是我們在頭文件里看不到 iterator 的 ++/-- 的具體實現的原因,它們位于 libstdc++ 的庫文件源碼中。注意這里的基類不是為了 OOP,而純粹是一種實現技巧。

為什么 iterator 的遞增遞減是分攤(amortized)常數時間?

嚴格的證明需要用到分攤分析(amortized analysis),一來我不會,二來寫出來也沒多少人看,這里我用一點歸納的辦法來說明這一點。考慮一種特殊情況,對前面圖中的滿二叉樹(perfect binary tree)從頭到尾遍歷,計算迭代器一共走過多少步(即 follow 多少次指針),然后除以節點數 N,就能得到平均每次遞增需要走多少步。既然紅黑樹是平衡的,那么這個數字跟實際的步數也相差不遠。

對于深度為 1 的滿二叉樹,有 1 個元素,從 begin() 到 end() 需要走 1 步,即從 root 到 header。

對于深度為 2 的滿二叉樹,有 3 個元素,從 begin() 到 end() 需要走 4 步,即 1->2->3->header,其中從 3 到 header 是兩步

對于深度為 3 的滿二叉樹,有 7 個元素,從 begin() 到 end() 需要走 11 步,即先遍歷左子樹(4 步)、走 2 步到達右子樹的最左節點,遍歷右子樹(4 步),最后走 1 步到達 end(),4 + 2 + 4 + 1 = 11。

對于深度為 4 的滿二叉樹,有 15 個元素,從 begin() 到 end() 需要走 26 步。即先遍歷左子樹(11 步)、走 3 步到達右子樹的最左節點,遍歷右子樹(11 步),最后走 1 步到達 end(),11 + 3 + 11 + 1 = 26。

后面的幾個數字依次是 57、120、247

對于深度為 n 的滿二叉樹,有 2^n - 1 個元素,從 begin() 到 end() 需要走 f(n) 步。那么 f(n) = 2*f(n-1) + n。

然后,用遞推關系求出 f(n) = sum(i * 2 ^ (n-i)) = 2^(n+1) - n - 2(這個等式可以用歸納法證明)。即對于深度為 n 的滿二叉樹,從頭到尾遍歷的步數小于 2^(n+1) - 2,而元素個數是 2^n - 1,二者一除,得到平均每個元素需要 2 步。因此可以說 rb_tree 的迭代器的遞增遞減是分攤后的常數時間。

似乎還有更簡單的證明方法,在從頭到尾遍歷的過程中,每條邊(edge)最多來回各走一遍,一棵樹有 N 個節點,那么有 N-1 條邊,最多走 2*(N-1)+1 步,也就是說平均每個節點需要 2 步,跟上面的結果相同。

說一點題外話。

為什么 muduo 網絡庫的 Poller 要用 std::map<int, Channel*> 來管理文件描述符?

muduo 在正常使用的時候會用 EPollPoller,是對 epoll(4) 的簡單封裝,其中用 std::map<int, Channel*> channels_ 來保存 fd 到 Channel 對象的映射。我這里沒有用數組,而是用 std::map,原因有幾點:

  • epoll_ctl() 是 O(lg N),因為內核中用紅黑樹來管理 fd。因此用戶態用數組管理 fd 并不能降低時間復雜度,反而有可能增加內存使用(用 hash 倒是不錯)。不過考慮系統調用開銷,map vs. vector 的實際速度差別不明顯。(題外話:總是遇到有人說 epoll 是 O(1) 云云,其實 epoll_wait() 是 O(N),N 是活動fd的數目。poll 和 select 也都是 O(N),不過 N 的意義不同。仔細算下來,恐怕只有 epoll_create() 是 O(1) 的。也有人想把 epoll 改為數組,但是被否決了,因為這是開歷史倒車https://lkml.org/lkml/2008/1/8/205?。)
  • channels_ 只在 Channel 創建和銷毀的時候才會被訪問,其他時候(修改關注的讀寫事件)都是位于 assert() 中,用于 Debug 模式斷言。而 Channel 的創建和銷毀本身就伴隨著 socket 的創建和銷毀,涉及系統調用,channels_ 操作所占的比重極小。因此優化 channels_ 屬于優化 nop,是無意義的。

總結

以上是生活随笔為你收集整理的关于 std::set/std::map 的几个为什么的全部內容,希望文章能夠幫你解決所遇到的問題。

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

av中文天堂在线 | 成人av电影网址 | 在线国产视频一区 | 国产91精品一区二区麻豆亚洲 | 中文不卡视频在线 | 日韩福利在线观看 | 成人一级视频在线观看 | 黄色网www| 欧美性久久久久久 | 国产精品手机播放 | 97狠狠操| 日韩中文字幕在线 | 日日干夜夜操视频 | 久久精品一 | 国产在线精品二区 | 久久九九国产精品 | 亚洲情感电影大片 | 精品999| 婷婷综合成人 | 中文字幕4| 午夜色大片在线观看 | 日韩动漫免费观看高清完整版在线观看 | 2023av在线 | 久久综合婷婷综合 | 成人a级网站 | 久久久久一区二区三区 | 亚洲精品自在在线观看 | 国模视频一区二区 | 国产精品久久久久国产a级 激情综合中文娱乐网 | 久草在线免费播放 | 91热在线 | 成人影片免费 | 天堂va在线观看 | 久久久久亚洲精品成人网小说 | 欧美激情精品久久久 | 色在线亚洲 | 91天天视频| 午夜精品久久久久久久99热影院 | a色视频 | 日韩精品不卡在线观看 | 视频在线观看亚洲 | 国产亚洲精品久久网站 | 欧美成人精品三级在线观看播放 | 精品在线看 | 久久免费99精品久久久久久 | 在线а√天堂中文官网 | 成年人在线免费看片 | 激情小说 五月 | 中文字幕日韩在线播放 | 91福利试看 | 国内精品久久久精品电影院 | 欧洲一区二区在线观看 | 中文字幕在线观看免费高清完整版 | 日韩久久久久久久久久 | 欧美一级久久久久 | 亚洲精品男人天堂 | 91视频免费看 | 九七视频在线观看 | 成人毛片在线观看视频 | 久久国产精品久久w女人spa | 97av超碰| 国产精品久久久久国产a级 激情综合中文娱乐网 | 亚洲欧洲av | 亚洲一区二区精品3399 | 中文字幕在线播放日韩 | www五月天 | 天天精品视频 | 尤物九九久久国产精品的分类 | 久久久久久久影视 | 欧美 激情在线 | 碰天天操天天 | 成人综合免费 | 黄色免费看片网站 | 国产精品久久久久久妇 | 欧美日韩国产一区 | 黄色网大全 | 六月丁香婷 | 婷婷激情在线 | 日韩精品一卡 | 久草在线91 | 亚洲爱av| 99久免费精品视频在线观看 | 精品一区二区在线免费观看 | 韩国在线视频一区 | 99国产一区二区三精品乱码 | 在线观看av麻豆 | 九热在线 | 日韩黄色免费看 | 亚洲成人国产精品 | 在线免费观看麻豆视频 | 免费成人av电影 | 麻豆系列在线观看 | 中文免费在线观看 | 麻豆成人精品视频 | 国产不卡av在线播放 | 欧美少妇xxx| 99精品免费网 | 成人av高清在线观看 | 久久久国产一区二区三区 | 精品国产亚洲日本 | 亚洲一区二区三区miaa149 | 91av免费观看| 五月天婷婷在线视频 | 日韩激情片在线观看 | 在线观看国产 | 18女毛片| 91色影院| 91资源在线播放 | 成年人免费在线播放 | 最新中文在线视频 | 久久久久久久久久影院 | 麻豆94tv免费版 | 丁香婷婷激情国产高清秒播 | 精品999国产 | 日本动漫做毛片一区二区 | av免费观看高清 | 国内精品久久久久久久影视麻豆 | 一区二区三区四区五区在线 | 91精品国产92久久久久 | 亚洲精品色视频 | 91在线最新| 国产精品白浆 | 在线成人av| 国产成人久久精品亚洲 | 911香蕉视频 | 91麻豆精品国产自产在线 | 欧美日韩精品在线观看 | 在线看片一区 | 亚洲永久精品在线观看 | 婷婷在线免费视频 | 国产成人精品女人久久久 | 亚洲欧美视频网站 | 天天综合网入口 | 亚洲精品视频播放 | av线上免费观看 | 91桃花视频 | 福利视频一二区 | 91九色网址| 中文字幕在线乱 | 97视频免费观看2区 亚洲视屏 | 91最新视频 | 亚洲国产精品成人va在线观看 | 91少妇精拍在线播放 | 青青草国产在线 | 福利视频午夜 | 亚洲精品动漫成人3d无尽在线 | 99爱国产精品 | 中文字幕一区二区在线播放 | 国产精品第二页 | 成年性视频 | 99久在线精品99re8热视频 | av888.com| 精品99久久久久久 | 免费男女羞羞的视频网站中文字幕 | www.少妇| 伊人五月在线 | 伊人婷婷激情 | 97国产大学生情侣白嫩酒店 | 精品国产免费看 | 99在线免费观看视频 | 777xxx欧美 | 成人观看 | 伊人小视频 | 免费网站色 | 国产专区一 | 永久免费的啪啪网站免费观看浪潮 | av高清影院| 黄色一集片 | 黄色一集片 | 人人澡人人干 | 精品视频在线免费 | 黄网站污 | 亚洲日韩中文字幕在线播放 | 99在线免费视频 | 成人国产网址 | 天天夜操| 综合伊人久久 | 91精品国产福利在线观看 | 日本狠狠色 | 精品亚洲男同gayvideo网站 | 五月婷婷丁香在线观看 | 99久久综合精品五月天 | 九九视频网 | 国产视频观看 | 国产在线理论片 | 999久久久免费视频 午夜国产在线观看 | 国产视频在线观看一区 | a精品视频 | 在线观看免费 | 国内精品久久久久久久97牛牛 | 九色精品免费永久在线 | 日韩 在线观看 | 在线免费试看 | 久久国产成人午夜av影院宅 | 在线观看爱爱视频 | 91在线视频网址 | 国产视频一区二区在线播放 | 婷婷激情久久 | 四虎4hu永久免费 | 国产精品久久久久久久久久不蜜月 | 免费看黄网站在线 | 亚洲欧美视频网站 | 日韩精品视频免费在线观看 | 在线看中文字幕 | 日本在线观看中文字幕无线观看 | 国产综合香蕉五月婷在线 | 久久免费a | 日本中文字幕视频 | 日韩av在线一区二区 | 婷婷九月丁香 | 日韩三级视频在线观看 | 久热电影| 久草五月 | 日韩欧美精品一区二区 | 成人蜜桃视频 | 色五婷婷 | 亚洲 中文字幕av | 狠狠久久综合 | 成人av电影在线观看 | 色99网| avove黑丝| 福利av影院 | 欧美激精品 | 国产字幕在线播放 | 国产精品久久久久久久av电影 | 在线中文字幕电影 | 99视频免费| 黄色三级网站 | 日韩免费在线视频 | 青青河边草免费视频 | 精品久久久久久久久久 | 三级av小说 | 国产精品亚洲成人 | 天天综合天天综合 | 亚洲狠狠丁香婷婷综合久久久 | 国产成人久久久77777 | 亚洲视频在线观看 | 天天综合色 | 在线观看韩国av | 激情五月婷婷综合网 | 午夜av网站 | 日韩欧美在线观看一区 | 玖玖玖在线 | 国产视频美女 | 日韩精品一区二区三区三炮视频 | 天天操操操操操操 | 天天射天天拍 | 欧美日韩调教 | 激情中文字幕 | 成年人视频免费在线播放 | 成人久久久久久久久久 | 中文区中文字幕免费看 | av一级久久 | 成人网在线免费视频 | 日韩在线网址 | 超碰国产在线播放 | 中文字幕在线日 | 天天摸天天干天天操天天射 | 免费在线电影网址大全 | 高清精品久久 | 亚洲另类交 | 成年人视频在线 | 欧美日韩视频在线播放 | 日韩午夜高清 | 国产午夜精品久久 | 国产精品3区 | 中国一 片免费观看 | a国产精品 | 成人欧美一区二区三区黑人麻豆 | 日韩在线一区二区免费 | 91黄视频在线 | 超碰在线最新网址 | 中文字幕高清 | 五月婷av | 综合网婷婷 | 99国产高清| 国产精品女主播一区二区三区 | 亚洲综合小说 | 久久久久久中文字幕 | 免费看国产黄色 | 97视频网站 | 欧美一级片免费 | 麻豆视频免费播放 | 国产视频1| 中文字幕资源网 国产 | 在线观看午夜 | 精品视频一区在线 | 日本在线观看中文字幕 | 蜜臀aⅴ国产精品久久久国产 | 在线电影中文字幕 | 成年人网站免费观看 | 久久免费片 | 久久中文网 | 人人狠狠综合久久亚洲婷 | 亚洲午夜久久久影院 | 久久精品久久精品久久39 | 国产精品私人影院 | 国产一区二区在线播放 | 精品国产欧美 | 国产精品黑丝在线观看 | 国产高清久久 | 国产在线不卡视频 | 91精品一区二区三区蜜臀 | 成人全视频免费观看在线看 | 五月婷婷爱 | 夜夜看av| 欧美一区二区三区不卡 | 91看毛片| 欧美激情第28页 | 欧美激情第一页xxx 午夜性福利 | 国产a级免费 | 久久免费视频在线观看30 | 久久久久久久av麻豆果冻 | 国产精品九九九九九 | 视频一区二区免费 | 亚洲精品视频第一页 | 伊人亚洲精品 | 国产特级毛片aaaaaa毛片 | 欧美最爽乱淫视频播放 | 免费观看一区 | 亚洲成人av电影 | 亚在线播放中文视频 | 国产一级做a爱片久久毛片a | 韩国精品一区二区三区六区色诱 | 欧美一级特黄aaaaaa大片在线观看 | 国产一级精品视频 | 成人四虎影院 | 日日日视频 | 一级一片免费观看 | 国内精品久久久久久久 | 亚洲视频专区在线 | 久久久久久久久久免费 | 久久99精品久久久久久 | 狠狠狠操| 玖玖玖国产精品 | 中字幕视频在线永久在线观看免费 | 91视频在线免费下载 | 久久人91精品久久久久久不卡 | 国产精品美女久久久久久久 | 国产综合香蕉五月婷在线 | 国产精品网红直播 | 精品久久网站 | 狠狠干网站 | 久久tv | 色五月色开心色婷婷色丁香 | 在线激情电影 | 久久久久在线观看 | 国产精品视屏 | 国产在线p | 99久久99视频只有精品 | 福利久久久 | 最近2019中文免费高清视频观看www99 | 日韩久久久久久 | 亚洲视频观看 | 国产不卡在线播放 | 成人四虎 | 午夜精品电影一区二区在线 | 天天操人人干 | 日本久久中文 | 日韩av电影手机在线观看 | 成人免费看黄 | 激情综合中文娱乐网 | 91亚洲综合 | 亚洲专区在线播放 | 久久超碰免费 | 天天做天天爱夜夜爽 | 免费h漫在线观看 | 精品主播网红福利资源观看 | 国产一级黄色电影 | 国产一区二区精 | 久久免费电影 | 在线看黄网站 | 精品国产一区二区久久 | 国产一区二区三区在线 | 亚洲精品影院在线观看 | 久草视频免费在线播放 | 午夜私人影院久久久久 | 天天操夜| 又黄又爽又色无遮挡免费 | 毛片视频电影 | 91精品国产欧美一区二区成人 | 日韩免费在线视频 | 又黄又刺激又爽的视频 | 天天操综| 国产精品久久片 | 国产免费久久精品 | www.av免费观看 | 美女黄频免费 | 992tv又爽又黄的免费视频 | 欧美成人精品欧美一级乱 | 国产精品欧美激情在线观看 | 免费进去里的视频 | 亚洲成年人免费网站 | 日韩天天操| 亚洲第一av在线播放 | 久久精品综合一区 | 九九av| 亚洲国产大片 | 二区精品视频 | 丁香影院在线 | 久草在线视频精品 | 成人免费网站在线观看 | 免费亚洲成人 | 国产午夜精品一区 | 韩国av不卡 | 一级欧美一级日韩 | 看污网站| 午夜精品福利一区二区三区蜜桃 | 国产精品理论在线观看 | 亚洲作爱| 久久手机视频 | 久久久久一区 | 午夜精品久久久 | 日韩在线不卡视频 | 欧美久久综合 | 久精品视频 | 国产字幕在线看 | 亚洲精品乱码久久久久久按摩 | 干 操 插| 日本在线免费看 | 久久艹艹 | 欧美日韩精品免费观看视频 | 黄色片免费看 | 黄色片视频在线观看 | 国产999久久久 | 99视频在线播放 | 日韩三级在线观看 | 欧美精品久久久久久久免费 | 国产精品一区二区视频 | 韩国av永久免费 | 久热电影| 日韩av影视 | 成人精品视频久久久久 | 亚洲影视九九影院在线观看 | 人人爱夜夜操 | 伊人五月 | 91日本在线播放 | 国产香蕉久久精品综合网 | 91精品对白一区国产伦 | 精品国产乱码久久久久久三级人 | 奇米网网址 | 亚洲一区久久 | 黄色精品一区二区 | 成人在线网站观看 | 97在线观看免费高清完整版在线观看 | 久久在线视频在线 | 欧美日韩在线观看一区 | 麻花豆传媒一二三产区 | 久久精品女人毛片国产 | 国产成人精品电影久久久 | 天天干,狠狠干 | 亚洲国产精品久久久久久 | 亚洲码国产日韩欧美高潮在线播放 | 国产精品久久久久久久久久不蜜月 | 国产成人福利片 | 国产午夜av| 一色屋精品视频在线观看 | 色中色综合 | 国产精品3 | 国产精品网红直播 | 精品视频免费观看 | 婷婷六月激情 | 午夜精品成人一区二区三区 | 色综合中文综合网 | 九九视频在线播放 | 韩国av一区二区 | 99久久精品国产一区二区成人 | 九九99 | 五月婷婷六月丁香激情 | 超级av在线 | 玖玖在线精品 | 亚洲精选视频免费看 | 成人午夜电影在线观看 | 久久久久欠精品国产毛片国产毛生 | 久久精彩 | 国产精品女教师 | 天天躁日日躁狠狠躁av麻豆 | 播五月综合 | 日本爱爱免费视频 | 中文字幕在线观看视频网站 | 在线观看免费一区 | 在线高清av | 最新日韩在线 | 欧美成年网站 | 久草在线免 | 成人 亚洲 欧美 | 97国产情侣爱久久免费观看 | 一区二区三区四区免费视频 | 日本中文字幕在线观看 | 国产特级毛片aaaaaaa高清 | 欧美国产日韩一区二区三区 | 麻豆免费在线视频 | 亚洲综合丁香 | 亚洲黄色一级电影 | 亚洲国产中文字幕在线 | 高清av中文字幕 | 亚洲自拍av在线 | 美女视频是黄的免费观看 | 色视频在线观看 | 国产精品视频你懂的 | 中文字幕在线不卡国产视频 | 中文字幕观看视频 | 97成人在线视频 | 天天色成人 | 国产美女视频一区 | 国产精品成人国产乱一区 | 亚洲天堂毛片 | 在线欧美小视频 | 不卡日韩av | 欧美一区二区三区激情视频 | 国产美女免费看 | 日韩网站一区 | 久久亚洲美女 | 激情五月综合网 | 在线国产精品视频 | 国产一区二区在线播放 | 精品免费在线视频 | 午夜精品福利一区二区三区蜜桃 | 日韩精品中文字幕在线 | 国产在线视频不卡 | 91av短视频 | 久草在线网址 | 激情丁香婷婷 | 亚洲国产免费网站 | 久久久久久久久久电影 | 天天干天天爽 | 操高跟美女 | 国产欧美日韩精品一区二区免费 | 亚洲视频一区二区三区在线观看 | 探花视频在线观看免费 | 九九热精品视频在线观看 | 久久婷五月 | 96国产精品 | 69国产精品视频免费观看 | 天天躁天天狠天天透 | 国产午夜精品在线 | 精品国产伦一区二区三区观看体验 | 国产精品久久久久久久久久不蜜月 | 亚洲精品美女久久17c | 特级西西444www高清大视频 | 亚洲精品中文字幕视频 | 久久99久久99精品免观看软件 | 黄在线免费观看 | 免费日韩在线 | 久久精品这里都是精品 | av在线免费不卡 | 精品亚洲免费 | 欧美精品在线观看一区 | 在线午夜| 2019中文最近的2019中文在线 | 免费观看av | 久久久伦理 | 免费看网站在线 | 国产高清福利在线 | 一区二区三区免费在线观看视频 | 国产一区二区电影在线观看 | 久草网站 | 久久a视频| 国模精品在线 | 久久综合久久鬼 | 日韩性久久 | 久久久久久免费视频 | 欧美日韩一区二区在线观看 | 一区二区三区在线观看免费视频 | 免费黄色a级毛片 | 92av视频| 国产理论一区二区三区 | 国产精品成人av在线 | 4438全国亚洲精品在线观看视频 | 欧美日韩在线视频一区 | 亚洲 欧洲 国产 日本 综合 | 日b视频在线观看网址 | 1000部国产精品成人观看 | 91精品视频播放 | 免费日韩视 | 免费网址在线播放 | 亚洲国产一区二区精品专区 | 日韩一区二区免费视频 | 免费看色的网站 | 蜜臀av性久久久久蜜臀aⅴ涩爱 | 亚洲视频www | 国产破处在线播放 | 天天操天天艹 | 国产成人一区二区啪在线观看 | 久久综合五月 | 亚洲综合在线一区二区三区 | 国产一级在线视频 | 蜜臀av性久久久久av蜜臀妖精 | 亚洲福利精品 | 国产高清视频 | 成人免费视频在线观看 | 在线观看91精品视频 | 最近中文字幕视频完整版 | 欧美精彩视频在线观看 | 免费久久网 | 91精品国产综合久久久久久久 | 国产99在线免费 | 欧美一级久久 | 天天做综合网 | 日日噜噜噜噜夜夜爽亚洲精品 | www.黄色片网站 | 色av资源网 | 亚洲日本中文字幕在线观看 | 91在线中字 | 国产在线永久 | 亚洲国产中文字幕 | av综合网址| 免费能看的黄色片 | 欧美不卡视频在线 | 欧美日韩国产综合一区二区 | 免费福利片2019潦草影视午夜 | 天天狠狠 | 精品国产亚洲在线 | 亚洲精品国产片 | 日日操网 | 色婷婷一区 | 久久夜色精品亚洲噜噜国4 午夜视频在线观看欧美 | 国产精品一区二区电影 | 婷婷六月综合亚洲 | 欧美福利久久 | 精品一区二区影视 | 免费日韩 精品中文字幕视频在线 | 黄在线免费看 | 深夜免费福利在线 | 国产精品久久久久久麻豆一区 | 国产区av在线 | 狠狠色狠狠色综合日日小说 | 中文字幕美女免费在线 | 黄色毛片视频免费 | 性色av一区二区三区在线观看 | 麻豆mv在线观看 | 久草网站在线 | 久久久精品国产免费观看一区二区 | 亚洲在线a| 久久久国际精品 | 国产精品一区二区中文字幕 | 久久爱综合 | 久久99精品一区二区三区三区 | 免费三级骚 | 国产精品专区h在线观看 | 国产精品精品国产 | 成人黄色电影免费观看 | 久久人视频 | 91成人免费在线视频 | 麻豆一二三精选视频 | 国产成人精品一区二区三区在线观看 | 成人aaa毛片 | 午夜精品一区二区三区视频免费看 | 国产精品av电影 | 日韩精品一区二区三区外面 | 色婷婷免费视频 | 日本精油按摩3 | 欧美性久久久 | 五月婷婷天堂 | 日韩大片在线免费观看 | 中文字幕在线观看网 | 日韩三级久久 | 免费在线观看午夜视频 | 久久久精品午夜 | 欧美日本不卡高清 | 婷婷中文在线 | 国产精品久久久久久久久久妇女 | 日韩精品视频在线免费观看 | www.五月婷 | 成人va视频 | 免费av 在线 | 九九欧美 | 国产亚洲精品成人av久久影院 | 91精品办公室少妇高潮对白 | 99视频国产在线 | 国产特级毛片aaaaaa | 99精品在线视频观看 | 99re久久精品国产 | 色香蕉在线视频 | 人人盈棋牌 | 色在线国产 | 国产韩国精品一区二区三区 | 色久av| 日韩性片 | 精品国产aⅴ一区二区三区 在线直播av | 精品无人国产偷自产在线 | 激情小说久久 | 在线观看一区 | 国产美女视频免费观看的网站 | 中文字幕一二三区 | 日韩a级免费视频 | 中文字幕一区二区三区乱码不卡 | av丝袜在线 | 香蕉视频在线观看免费 | 人人澡人人爽 | 色婷婷激婷婷情综天天 | 国产精品国产自产拍高清av | 五月天久久综合 | 日韩精品一区二区在线视频 | 4438全国亚洲精品观看视频 | 91视频传媒 | 久久女同性恋中文字幕 | 丝袜网站在线观看 | 色综合久久精品 | 久草视频免费观 | 人人添人人澡 | 97视频播放| 91视频a | 国产在线a免费观看 | 亚洲精品视频在线看 | 久久精品伊人 | 国产成人免费精品 | 日韩偷拍精品 | 免费av影视| 91探花在线视频 | 久久日韩精品 | 韩国精品一区二区三区六区色诱 | 高清中文字幕 | 久久狠狠婷婷 | 中文字幕资源在线 | 干狠狠| 丁香五香天综合情 | 亚洲成人中文在线 | 久久国内视频 | 亚洲精品av在线 | 日韩免费三级 | 欧美日韩视频免费 | 亚洲成av人片在线观看www | av天天干| 黄色av播放 | 国产精品久一 | 亚洲三级在线播放 | 久久精品国产亚洲aⅴ | 久久综合色影院 | 天天干天天干天天干 | 香蕉视频亚洲 | 色视频在线免费观看 | 国产精品视频久久久 | 亚洲国产日韩欧美 | 在线亚洲成人 | 爱情影院aqdy鲁丝片二区 | 久久综合久久久 | 国产精品一区电影 | 三级性生活视频 | 国产91精品看黄网站在线观看动漫 | 日本h视频在线观看 | 国内99视频 | 国产精品乱码一区二三区 | 天天色棕合合合合合合 | 国产精品6 | 久久69av | 亚洲高清免费在线 | 国产精品美女毛片真酒店 | 精品女同一区二区三区在线观看 | 91成人精品 | 欧美做受69| 天天爱天天 | 久久精品这里精品 | 久草精品在线播放 | www国产亚洲精品 | 四虎国产永久在线精品 | 四虎免费在线观看 | 亚洲精品午夜久久久 | 国产一级电影在线 | 草久在线观看视频 | 日韩三区在线观看 | 免费av试看 | 视频福利在线观看 | 亚洲网久久 | 国产96精品| 国内精品久久久久久久久久清纯 | 伊人影院99 | 国产美女久久 | 91片网 | 国产久视频 | 手机看片国产日韩 | 久久免费公开视频 | 日韩高清在线一区二区三区 | 中文字幕文字幕一区二区 | 亚洲 成人 一区 | 国产在线视频导航 | 麻豆国产精品视频 | 99国内精品| 五月情婷婷 | 中文字幕超清在线免费 | 黄网站色视频 | 精品91视频 | 色噜噜日韩精品欧美一区二区 | 四虎国产精品成人免费4hu | 激情在线网址 | 久久综合色综合88 | 亚洲免费国产 | 欧美日韩亚洲在线观看 | 人人讲 | 波多野结衣网址 | 亚洲日本激情 | 黄色官网在线观看 | 在线观看网站黄 | 国产视频一区二区在线 | 亚洲精品高清一区二区三区四区 | 色五月成人 | av高清一区二区三区 | www.人人干 | 五月婷婷激情五月 | 日日夜夜av | 99视频国产精品 | 免费在线黄色av | 日韩一级成人av | 午夜国产影院 | 免费在线观看av片 | 欧美一区在线观看视频 | 亚洲精品啊啊啊 | 99精品免费久久久久久日本 | 久久午夜精品影院一区 | 亚洲在线视频播放 | 久久午夜剧场 | 午夜精品视频在线 | 天天操天天操 | av大全在线观看 | av综合av | 成人免费视频播放 | 狠狠成人| 91中文字幕一区 | 91精品啪在线观看国产线免费 | 成人久久综合 | 波多野结衣一区三区 | 超碰在线最新网址 | 一区二区国产精品 | 久久 地址| 黄色av电影在线 | 久久综合久久综合这里只有精品 | 国产日韩欧美在线观看视频 | 一区在线播放 | 免费看一级 | 美女免费视频一区二区 | 欧美另类xxx | www.日韩免费 | 国内成人av | 久久久久福利视频 | 国产九色在线播放九色 | 色香蕉网 | 国产精品精 | 在线观看av麻豆 | www国产亚洲精品久久网站 | av在线播放不卡 | 在线观看视频三级 | 久久你懂得| 色综合婷婷久久 | 久久久免费看片 | 免费色婷婷 | 精品国产三级a∨在线欧美 免费一级片在线观看 | 免费观看一区二区 | 久久免费视频精品 | 国产精品手机在线 | 在线观看韩日电影免费 | 亚洲成人黄色在线 | 国产黄色成人av | 国产亚洲资源 | 9色在线视频 | 亚洲人久久| 欧美色久| 国产精品综合av一区二区国产馆 | 在线一二区 | 91一区啪爱嗯打偷拍欧美 | 色综合婷婷| 91资源在线观看 | 国产91精品看黄网站在线观看动漫 | 五月天婷婷视频 | 中文字幕在线视频网站 | 91人人爽久久涩噜噜噜 | 久久久久国产成人免费精品免费 | 欧美日本三级 | 国产高清视频免费观看 | 国产精品久久久久久久久久 | 久久视频中文字幕 | 欧美视频18 | 日韩网站在线 | 亚洲欧洲中文日韩久久av乱码 | 日韩av一区二区在线 | 中文字幕在线观看第一区 | 91人人爱| 国产精品久久久久久久久软件 | 亚洲成a人片综合在线 | 91免费网| 九九热在线免费观看 | 特级大胆西西4444www | 久草视频国产 | 97综合在线 | 麻豆久久 | 亚洲区另类春色综合小说校园片 | 免费视频一区二区 | 在线视频日韩 | 中文字幕免费高清在线 | 日韩免费一级a毛片在线播放一级 | 在线观看亚洲精品 | 久久精品99北条麻妃 | 国产99久久久国产精品 | 在线精品视频免费播放 | 精品国产乱码久久久久久1区二区 | 国产日韩一区在线 | 国产精品理论片在线观看 | 久久久免费国产 | 免费在线观看的av网站 | 超碰午夜| 九九有精品 | 亚洲国产精品推荐 | 午夜影院先 | 97超碰人 | 一区二区三区视频网站 | 欧美一级电影片 | 国产精品二区三区 | 国产五码一区 | 一区二区三区四区五区在线 | 欧美一区二区三区在线视频观看 | 亚州成人av在线 | 91麻豆精品国产91久久久久久久久 | 国产手机视频在线观看 | 成年人毛片在线观看 | www.一区二区三区 | 国产破处视频在线播放 | 久久99国产综合精品免费 | 久久久久亚洲精品国产 | 亚洲专区欧美 | 日韩视频免费播放 | 欧美国产在线看 | 国产精品久久久久久久久久免费看 | 不卡av在线免费观看 | 国产99色 | 国产一级91 | 日韩在线三区 | 久草新在线 | av大全在线播放 | 免费一级片观看 | 一区二区电影在线观看 | 黄色在线观看www | 亚洲黄色网络 | 色婷av| 欧美一级日韩三级 | 国产成人一区二区三区久久精品 | 日韩电影在线观看一区二区三区 | 五月婷婷激情 | 人人爽人人爽人人片av免 | 免费污片 | 成人在线视| 麻豆传媒视频在线免费观看 | 狠狠色丁香婷婷综合欧美 | 亚洲精品乱码久久久久久蜜桃欧美 | 日韩在线精品视频 | 日本巨乳在线 | 国产日韩亚洲 | 久久亚洲影视 | av电影免费在线 | 亚洲va综合va国产va中文 | 麻豆视频免费在线播放 | 人人爽人人爽 | 在线观看免费福利 | 91亚洲网站| 久久久久国产精品免费免费搜索 | 久久久国际精品 | 婷婷伊人五月天 | 午夜12点 | 91亚色免费视频 | 天堂入口网站 | 亚洲成色777777在线观看影院 | 国产一级二级三级在线观看 | 天天操,夜夜操 | 婷婷成人综合 | 久久久久久中文字幕 | 日韩有码在线观看视频 | 国产精品大尺度 | 久久久久国产精品一区二区 | 国产精品麻豆一区二区三区 | 精品国产一区二区三区四 | 毛片无卡免费无播放器 | 在线电影a | 日日干天夜夜 | 人人干人人爽 | 公与妇乱理三级xxx 在线观看视频在线观看 | 综合五月| 中文在线√天堂 | 天天色天天操综合网 | 色资源网在线观看 | 欧美日韩在线视频一区二区 | 久久天天躁狠狠躁夜夜不卡公司 | 久久色视频 | 国产精品va最新国产精品视频 | 久久成人麻豆午夜电影 | 精品中文字幕视频 | 91精品夜夜 | 国产高清视频在线免费观看 | www.色婷婷 | 久久免费视频网 | 亚洲精品av在线 | 九色精品免费永久在线 | 久久久黄色免费网站 | 久久午夜电影网 | 国产麻豆精品久久一二三 | 亚洲第五色综合网 | 视频福利在线 | 国产91精品看黄网站在线观看动漫 | 中文av网站| 欧美日本在线视频 | 久久激情视频网 |