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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

不变(Invariant), 协变(Covarinat), 逆变(Contravariant) : 一个程序猿进化的故事

發(fā)布時(shí)間:2024/6/21 编程问答 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 不变(Invariant), 协变(Covarinat), 逆变(Contravariant) : 一个程序猿进化的故事 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

阿袁工作的第1天: 不變(Invariant), 協(xié)變(Covarinat), 逆變(Contravariant)的初次約

阿袁,早!開始工作吧。
阿袁在筆記上寫下今天工作清單:

實(shí)現(xiàn)一個(gè)scala類ObjectHelper,帶一個(gè)功能:

  • 函數(shù)1:將一個(gè)對象轉(zhuǎn)換成另一種類型的對象。

這個(gè)似乎是小菜一碟。
雖然不知道如何轉(zhuǎn)換對象,那就定義一個(gè)函數(shù)參數(shù),讓外部把轉(zhuǎn)換邏輯傳進(jìn)來。我真聰明啊!
這樣,阿袁實(shí)現(xiàn)了第一個(gè)函數(shù)convert.

class ObjectHelper[TInput, TOutput] {def convert(x: TInput, f: TInput => TOutput): TOutput = {f(x)} }

本文是用Scala語言寫的示例。(最近開始學(xué)Scala)
Scala語言中的 expression-oriented 編程風(fēng)格中,不寫return, 最后一個(gè)語句的結(jié)果會(huì)被當(dāng)成函數(shù)結(jié)果返回。
f(x) 等價(jià)于 return f(x)。

完成了。
哦,對了!昨天在和阿靜交流后,猿進(jìn)化了 - 知道要寫單元測試。

單元測試

阿袁想考慮一下類的繼承關(guān)系,在調(diào)用convert時(shí),對函數(shù)參數(shù)f的賦值有沒有什么限制。
先定義這幾個(gè)類:

class A1 {} class A2 extends A1 {} class A3 extends A2 {}class B1 {} class B2 extends B1 {} class B3 extends B2 {}

A系列的類,將會(huì)被用于輸入的泛型參數(shù)類型。其關(guān)系為 A3 繼承 A2 繼承 A1。
B系列的類,將會(huì)被用于輸出的泛型參數(shù)類型。其關(guān)系為 B3 繼承 B2 繼承 B1。

它們的笛卡爾乘積是9,就是說有9種組合情況。定義一個(gè)測試類:

object ObjectHelperTest {def convertA1ToB1(x: A1) : B1 = {new B1()}def convertA1ToB2(x: A1) : B2 = {new B2()}def convertA1ToB3(x: A1) : B3 = {new B3()}def convertA2ToB1(x: A2) : B1 = {new B1()}def convertA2ToB2(x: A2) : B2 = {new B2()}def convertA2ToB3(x: A2) : B3 = {new B3()}def convertA3ToB1(x: A3) : B1 = {new B1()}def convertA3ToB2(x: A3) : B2 = {new B2()}def convertA3ToB3(x: A3) : B3 = {new B3()}def test () = {var helper = new ObjectHelper[A2, B2]()var result : B2 = nullresult = helper.convert(, ???)} }
  • 問題:對于一個(gè)ObjectHelper[A2, B2]對象,上面的9個(gè)自定義的convertXtoY函數(shù)中,哪些可以用到convert的第二個(gè)參數(shù)上?
// 對于函數(shù)參數(shù)的輸入?yún)?shù)的數(shù)據(jù)類型TInput,看看是否可以轉(zhuǎn)換成傳入函數(shù)的輸入?yún)?shù)的數(shù)據(jù)類型? TInput ---> f(x: TInputSuperType) // 逆變在輸入中是允許的 TInput ---> f(x: TInput) // 不變在輸入中是允許的 TInput -->X f(x: TInputSubType) // 協(xié)變在輸入中是不允許的// 對于傳入函數(shù)的返回值,看看是否可以轉(zhuǎn)換為調(diào)用函數(shù)的返回值類型TOutput? f(): TOutputSuperType -->X TOutput // 逆變在輸出中是不允許的 f(): TOutput ---> TOutput // 不變在輸出中是允許的 f(): TOutputSubType ---> TOutput // 協(xié)變在輸出中是允許的

注: 因?yàn)椴荒馨岩粋€(gè)子類對象轉(zhuǎn)換成父類對象。
逆變(contravariant),可以理解為: 將一個(gè)對象轉(zhuǎn)換成它的父類對象。
協(xié)變(coavariant),可以理解為: 將一個(gè)對象轉(zhuǎn)換成它的子類對象。

應(yīng)用場景:給一個(gè)函數(shù)參數(shù)(或變量)賦一個(gè)函數(shù)值。
輸入?yún)?shù)類型 - 不變規(guī)則:給一個(gè)函數(shù)參數(shù)賦一個(gè)函數(shù)值時(shí),傳入函數(shù)的輸入?yún)?shù)類型,可以是函數(shù)參數(shù)對應(yīng)的泛型參數(shù)類型。
輸入?yún)?shù)類型 - 逆變規(guī)則:給一個(gè)函數(shù)參數(shù)賦一個(gè)函數(shù)值時(shí),傳入函數(shù)的輸入?yún)?shù)類型,可以是函數(shù)參數(shù)對應(yīng)的泛型參數(shù)類型的父類。
輸入?yún)?shù)類型 - 協(xié)變不能規(guī)則:給一個(gè)函數(shù)參數(shù)賦一個(gè)函數(shù)值時(shí),傳入函數(shù)的輸入?yún)?shù)類型,不能是函數(shù)參數(shù)對應(yīng)的泛型參數(shù)類型的子類。
輸出參數(shù)類型 - 不變規(guī)則:給一個(gè)函數(shù)參數(shù)賦一個(gè)函數(shù)值時(shí),傳入函數(shù)的返回值類型,可以是函數(shù)參數(shù)對應(yīng)的泛型參數(shù)類型。
輸出參數(shù)類型 - 協(xié)變規(guī)則:給一個(gè)函數(shù)參數(shù)賦一個(gè)函數(shù)值時(shí),傳入函數(shù)的返回值類型,可以是函數(shù)參數(shù)對應(yīng)的泛型參數(shù)類型的子類。
輸出參數(shù)類型 - 逆變不能規(guī)則:給一個(gè)函數(shù)參數(shù)賦一個(gè)函數(shù)值時(shí),傳入函數(shù)的返回值類型,不能是函數(shù)參數(shù)對應(yīng)的泛型參數(shù)類型的父類。

根據(jù)上面的發(fā)現(xiàn),傳入函數(shù)的輸入類型不能是A3,輸出類型不能是B1,依次列出下表:

輸入類型輸出類型是否可用
A1B1no
A1B2yes
A1B3yes
A2B1no
A2B2yes
A2B3yes
A3B1no
A3B2no
A3B3no

測試代碼:

class A1 {} class A2 extends A1 {} class A3 extends A2 {}class B1 {} class B2 extends B1 {} class B3 extends B2 {}object ObjectHelperTest {def convertA1ToB1(x: A1) : B1 = {new B1()}def convertA1ToB2(x: A1) : B2 = {new B2()}def convertA1ToB3(x: A1) : B3 = {new B3()}def convertA2ToB1(x: A2) : B1 = {new B1()}def convertA2ToB2(x: A2) : B2 = {new B2()}def convertA2ToB3(x: A2) : B3 = {new B3()}def convertA3ToB1(x: A3) : B1 = {new B1()}def convertA3ToB2(x: A3) : B2 = {new B2()}def convertA3ToB3(x: A3) : B3 = {new B3()}def testConvert() = {var helper = new ObjectHelper[A2, B2]()var result : B2 = nullresult = helper.convert(new A2(), convertA1ToB2)println(result)result = helper.convert(new A2(), convertA1ToB3)println(result)result = helper.convert(new A2(), convertA2ToB2)println(result)result = helper.convert(new A2(), convertA2ToB3)println(result)} }ObjectHelperTest.testConvert()

跑了一遍,都正常輸出。在提交了寫好的代碼之后,阿袁開啟了他的美好的學(xué)習(xí)時(shí)間。

阿袁工作的第2天: 協(xié)變(Covariant)用途的再次理解

第二天,阿靜看到了阿袁的代碼,準(zhǔn)備在自己的工作中使用一下。
不久,阿袁看到阿靜面帶一種奇怪的微笑,走了過來,而目的地明顯是他。讓人興奮,又有種不妙的感覺。
“阿袁,你寫的ObjectHelper有點(diǎn)小問題哦!”
“有什么問題嗎?我這次可是寫了測試用例的。”
“我看了你的測試用例,我需要可以這樣調(diào)用convert。”
阿靜寫出了代碼:

helper.convert(new A2(), convertA3ToB2)

阿袁看到一個(gè)在阿靜面前顯擺的機(jī)會(huì),立刻,毫不保留地向阿靜講解了自己的規(guī)則。
并說明這個(gè)用例違反了輸入?yún)?shù)類型 - 協(xié)變不能規(guī)則
“好吧,這樣寫code,總該可以吧?”,阿靜繼續(xù)問道。

helper.convert(new A3(), convertA3ToB2)

阿靜把代碼中的new A2()改成new A3()。
阿靜繼續(xù)說:
“調(diào)用者傳入子類A3的實(shí)例,后臺(tái)程序只要負(fù)責(zé)把這個(gè)實(shí)例傳給處理函數(shù)convertA3ToB2不就行了。”
阿袁也看出了可能性。
“你說的有些道理。調(diào)用者可以維護(hù)輸入?yún)?shù)和輸入函數(shù)之間的一致性,這樣就可以跳過輸入?yún)?shù)類型 - 協(xié)變不能規(guī)則的約束。”
“我們發(fā)現(xiàn)了一個(gè)新的規(guī)則。”
輸入?yún)?shù)類型 - 調(diào)用者的協(xié)變規(guī)則:調(diào)用者可以維護(hù)這樣一種一致性:輸入值 匹配 輸入函數(shù)的輸入?yún)?shù)類型,這樣可以使用協(xié)變。

阿袁畫出下面的說明草圖:

// 對于函數(shù)參數(shù)的輸入?yún)?shù)的數(shù)據(jù)類型TInput,看看是否可以轉(zhuǎn)換成傳入函數(shù)的輸入?yún)?shù)的數(shù)據(jù)類型? TInput -->X f(x: TInputSubType) // 協(xié)變在輸入中是不允許的// 然而, 如果調(diào)用者輸入一個(gè)TInputSubType實(shí)例, // 并且使用一個(gè)支持TInputSubType的函數(shù)f,造成了前后一致。 // 輸入中的協(xié)變就變得允許了。 TInputSubType ---> convert(x: TInput, f(x: TInputSubType))

“謝謝!我把這個(gè)實(shí)現(xiàn)一下,我的代碼可以進(jìn)化了。”

阿袁使用了協(xié)變語法,代碼變成了:

class ObjectHelper[TInput, TOutput] {def convert[T1 <: TInput](x: T1, f: T1 => TOutput): TOutput = {f(x)} }

使用了[T1 <: TInput],表示T1可以是TInput的子類。

增加了測試代碼:

def testConvert() = {//...// covariantresult = helper.convert(new A3(), convertA3ToB2)println(result)result = helper.convert(new A3(), convertA3ToB3)println(result)}

阿袁工作的第3天: 逆變(Contravariant)用途的再次理解

阿袁昨晚并沒有睡好,一直在考慮昨天的問題,既然,輸入可以允許協(xié)變,那么是否有輸出需要逆變的例子呢?
早上,找到了阿靜,和她商量商量這個(gè)問題。
“關(guān)于昨天那個(gè)問題,你的例子證明了對于輸入,有需要協(xié)變的情況。你覺得有沒有對于輸出,需要逆變的例子呢?”
“我想,我們可以從你的草圖繼續(xù)看下去。”

昨天,輸出逆變的草圖是這樣:

// 對于傳入函數(shù)的返回值,看看是否可以轉(zhuǎn)換為調(diào)用函數(shù)的返回值類型TOutput? f(): TOutputSuperType -->X TOutput // 逆變在輸出中是不允許的

"怎么能變成這樣呢?"

f(): TOutputSuperType ---> TOutput

“我覺得還是需要調(diào)用者,來參與。” 阿靜說。
阿袁突然間醍醐灌頂?shù)恼f道,“我明白了。調(diào)用者可以只接受父類類型。像這樣子。”

// 對于傳入函數(shù)的返回值,看看是否可以轉(zhuǎn)換為調(diào)用函數(shù)的返回值類型TOutput? f(): TOutputSuperType -->X TOutput // 逆變在輸出中是不允許的// 然而, 如果調(diào)用者使用一個(gè)返回值為TOutputSubType的函數(shù)f, // 并且把調(diào)用函數(shù)的返回值賦給一個(gè)TOutputSubType對象。 // 輸出中的逆變就變得允許了。 y: TOutputSubType = convert(x, f(): TOutputSubType): TOutput ---> TOutputSubType

“太好了,阿袁。今天又進(jìn)化了。”
“好,我去把它改好。”

阿袁回去后,使用了逆變的語法,把ObjectHelper代碼改成了:

class ObjectHelper[TInput, TOutput] {def convert[T1 <: TInput, T2 >: TOutput](x: T1, f: T1 => T2): T2 = {f(x)} }

測試用例也補(bǔ)全了:

def testConvert() = {var helper = new ObjectHelper[A2, B2]()var result : B2 = nullresult = helper.convert(new A2(), convertA1ToB2)println(result)result = helper.convert(new A2(), convertA1ToB3)println(result)result = helper.convert(new A2(), convertA2ToB2)println(result)result = helper.convert(new A2(), convertA2ToB3)println(result)// covariantresult = helper.convert(new A3(), convertA3ToB2)println(result)result = helper.convert(new A3(), convertA3ToB3)println(result)// contrvariantvar resultB1 : B1 = nullresultB1 = helper.convert(new A2(), convertA1ToB1)println(resultB1)resultB1 = helper.convert(new A2(), convertA2ToB1)println(resultB1)// covariant & contrvariantresultB1 = helper.convert(new A3(), convertA3ToB1)println(resultB1)}

阿袁工作的第4天:一個(gè)更簡潔的實(shí)現(xiàn)

一個(gè)更簡潔的實(shí)現(xiàn)

今天,阿袁在做了大量嘗試后,發(fā)現(xiàn)一個(gè)簡潔的實(shí)現(xiàn)方案。
似乎scala編譯器,已經(jīng)很好的考慮了這個(gè)問題。不用協(xié)變和逆變的語法也能支持想要的功能,
所有的9個(gè)函數(shù)都可以合理的使用。

def convert[TInput, TOutput](x: TInput, f: TInput => TOutput): TOutput = {f(x)}

也發(fā)現(xiàn)了C#中等價(jià)的實(shí)現(xiàn)方式:

public TOutput Convert<TInput, TOutput>(TInput x, Func<TInput, TOutput> f) {return f(x);}

對一個(gè)函數(shù)變量,會(huì)怎么樣呢?

由于函數(shù)變量不能設(shè)定協(xié)變和逆變約束,因此只有最基本的四種函數(shù)可以設(shè)置。

def testConvertVariable() = {var convertFun : A2 => B2 = null;val convertFunA1ToB2 : A1 => B2 = convertA1ToB2// set a function valueconvertFun = convertFunA1ToB2println(convertFun)// set a functionconvertFun = convertA1ToB2println(convertFun)convertFun = convertA1ToB3println(convertFun)convertFun = convertA2ToB2println(convertFun)convertFun = convertA2ToB3println(convertFun)}

C#中等價(jià)的實(shí)現(xiàn)方式:

delegate T2 ConvertFunc<in T1, out T2>(T1 x);public static void TestDelegateGood() {ConvertFunc<A2, B2> helper = null;// set a function, okhelper = ConvertA1ToB2;// set a function variable, okConvertFunc<A1, B3> helperA1ToB3 = ConvertA1ToB3;helper = helperA1ToB3;

注意: delege中,使用了in/out。C#的逆變,協(xié)變語法。

不帶關(guān)鍵字in/out的實(shí)現(xiàn),有個(gè)小問題:

delegate T2 BadConvertFunc<T1, T2>(T1 x);public static void TestDelegateBad() {BadConvertFunc<A2, B2> helper = null;// set a function, okhelper = ConvertA1ToB2;// set a function variable, errorConvertFunc<A1, B3> helperA1ToB3 = ConvertA1ToB3;// helper = helperA1ToB3; // complie error}

可以看出關(guān)鍵字in/out在賦函數(shù)變量賦值的時(shí)候,會(huì)起到作用。但是不影響直接賦函數(shù)。
總覺得這個(gè)限制,可以繞過去似的。

阿袁工作的第5天:協(xié)變、逆變的一個(gè)真正用途。

昨天的簡潔方案,讓阿袁認(rèn)識到了自己還沒有明白協(xié)變、逆變的真正用途。
它們到底有什么用呢?難道只是編譯器自己玩的把戲嗎?

阿袁設(shè)計(jì)了這樣一個(gè)用例:
這是一個(gè)新的ObjectHelper,提供了一個(gè)比較函數(shù)compare,
這個(gè)函數(shù)可以把比較兩個(gè)對象,并返回一個(gè)比較結(jié)果。

class ObjectHelper[TInput, TOutput] (a: TInput) {def x: TInput = adef compare(y: TInput, f: (TInput, TInput) => TOutput): TOutput = {f(x, y)} }

測試用例是這樣,還是使用了A系列作為輸入類型,B系列作為輸出類型。

class A1 {} class A2 extends A1 {} class A3 extends A2 {}class B1 {} class B2 extends B1 {} class B3 extends B2 {}

測試用例,考慮了這樣一個(gè)case:

期望可以比較兩個(gè)A3類型的數(shù)據(jù),返回一個(gè)B1的比較結(jié)果。
可是我們只有一個(gè)A1對象的比較器,這個(gè)比較器可以返回一個(gè)B3的比較結(jié)果。

object ObjectHelperTest{// 一個(gè)A1對象的比較器,可以返回一個(gè)B3的比較結(jié)果def compareA1ToB3(x: A1, y: A1) : B3 = {new B3()}def test(): Unit = {// helper的類型是ObjectHelper[A2, B2]var helper: ObjectHelper[A2, B2] = null// 我們期望可以比較A3類型的數(shù)據(jù),返回B1的比較結(jié)果。helper = new ObjectHelper[A3, B1](new A3())// 可是我們只有一個(gè)A1對象的比較器,可以返回一個(gè)B3的比較結(jié)果。println(helper.compare(new A3(), compareA1ToB3))} }ObjectHelperTest.test()

第一次測試

  • 失敗:
Line: helper = new ObjectHelper[A3, B1](new A3(), new A3())error: type mismatch;found : this.ObjectHelper[this.A3,this.B1]required: this.ObjectHelper[this.A2,this.B2] Note: this.A3 <: this.A2, but class ObjectHelper is invariant in type TInput. You may wish to define TInput as +TInput instead. (SLS 4.5) Note: this.B1 >: this.B2, but class ObjectHelper is invariant in type TOutput. You may wish to define TOutput as -TOutput instead. (SLS 4.5)helper = new ObjectHelper[A3, B1](new A3())^
  • 失敗原因
    類型匹配不上,錯(cuò)誤信息提示要使用+TInput和-TOutput.

第二次測試

  • 根據(jù)提示,修改代碼為:
class ObjectHelper[+TInput, -TOutput] (a: TInput) {def x: TInput = adef compare(y: TInput, f: (TInput, TInput) => TOutput): TOutput = {f(x, y)} }
  • 再次運(yùn)行,再次失敗:
Line: def compare(y: TInput, f: (TInput, TInput) => TOutput): TOutput = {error: contravariant type TOutput occurs in covariant position in type (y: TInput, f: (TInput, TInput) => TOutput)TOutput of method comparedef compare(y: TInput, f: (TInput, TInput) => TOutput): TOutput = {^ error: covariant type TInput occurs in contravariant position in type TInput of value ydef compare(y: TInput, f: (TInput, TInput) => TOutput): TOutput = {^
  • 失敗原因:
    -TOutput為逆變,卻要使用到協(xié)變的返回值位置上。+TInput為協(xié)變,卻要使用到逆變的位置上。

第三次測試

根據(jù)提示,修改代碼為:

class ObjectHelper[+TInput, -TOutput] (a: TInput) {def x: TInput = adef compare[T1 >: TInput, T2 <: TOutput](y: T1, f: (T1, T1) => T2): T2 = {f(x, y)} }

再次運(yùn)行,成功!

總結(jié):

這個(gè)用例的一個(gè)特點(diǎn)是:在實(shí)際場合下,不能找到一個(gè)類型完全匹配的外部幫助函數(shù)。
一個(gè)糟糕的情況是,外部幫助函數(shù)的輸入?yún)?shù)類型比較弱(就是說,是父類型),
可以使用逆變的方法,調(diào)用這個(gè)弱的外部幫助函數(shù)。

阿袁的日記

2016年9月X日 星期六

這幾天,有了一些協(xié)變和逆變的經(jīng)驗(yàn)。根據(jù)認(rèn)識的高低,分為下面的幾個(gè)Level。

  • Level 0:知道
    • 其實(shí),編譯器和類庫已經(jīng)做好了一切,這些概念只是它們的內(nèi)部把戲。我根本不用考慮它。
  • Level 1:知道
    • 協(xié)變和逆變發(fā)生的場景
      • 給一個(gè)泛型對象賦值
      • 給一個(gè)函數(shù)變量賦值
      • 給一個(gè)泛型函數(shù)傳入一個(gè)函數(shù)參數(shù)
    • 協(xié)變是將對象從父類型轉(zhuǎn)換成子類型
    • 逆變是將對象從子類型轉(zhuǎn)換成父類型
  • Level 2:了解協(xié)變和逆變的語法
    • Scala: +T : class的協(xié)變
    • Scala: -T :class的逆變
    • Scala: T <: S :function的協(xié)變
    • Scala: T >: S : function的逆變
    • C#: out :協(xié)變
    • C#: in : 逆變
  • Level 3:理解協(xié)變和逆變發(fā)生的場景和用例
    • 調(diào)用者對輸入?yún)?shù)的協(xié)變用例
    • 調(diào)用者對輸出參數(shù)的逆變用例
    • 調(diào)用者只有一個(gè)不平配的比較函數(shù)用例
// 對于函數(shù)參數(shù)的輸入?yún)?shù)的數(shù)據(jù)類型TInput,看看是否可以轉(zhuǎn)換成傳入函數(shù)的輸入?yún)?shù)的數(shù)據(jù)類型? TInput ---> f(x: TInputSuperType) // 逆變在輸入中是允許的 TInput ---> f(x: TInput) // 不變在輸入中是允許的 TInput -->X f(x: TInputSubType) // 協(xié)變在輸入中是不允許的// 然而, 如果調(diào)用者輸入一個(gè)TInputSubType實(shí)例, // 并且使用一個(gè)支持TInputSubType的函數(shù)f,造成了前后一致。 // 輸入中的協(xié)變就變得允許了。 TInputSubType ---> convert(x: TInput, f(x: TInputSubType))// 對于傳入函數(shù)的返回值,看看是否可以轉(zhuǎn)換為調(diào)用函數(shù)的返回值類型TOutput? f(): TOutputSuperType -->X TOutput // 逆變在輸出中是不允許的 f(): TOutput ---> TOutput // 不變在輸出中是允許的 f(): TOutputSubType ---> TOutput // 協(xié)變在輸出中是允許的// 然而, 如果調(diào)用者使用一個(gè)返回值為TOutputSubType的函數(shù)f, // 并且把調(diào)用函數(shù)的返回值賦給一個(gè)TOutputSubType對象。 // 輸出中的逆變就變得允許了。 y: TOutputSubType = convert(x, f(): TOutputSubType): TOutput ---> TOutputSubType
  • Level 4:能夠?qū)懗鰠f(xié)變、逆變的代碼和測試用例
    • 針對類的測試用例
    • 針對函數(shù)的測試用例
    • 針對函數(shù)變量的測試用例

最后,阿靜真美!

轉(zhuǎn)載于:https://www.cnblogs.com/steven-yang/p/5877647.html

總結(jié)

以上是生活随笔為你收集整理的不变(Invariant), 协变(Covarinat), 逆变(Contravariant) : 一个程序猿进化的故事的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

免费a视频 | 5月丁香婷婷综合 | 午夜久久影视 | 99超碰在线播放 | 成人免费大片黄在线播放 | 一本到在线| 日韩精品中文字幕在线播放 | 久久久久免费看 | 国产精品一区二区三区久久久 | 天天操狠狠操网站 | 亚洲国产中文在线 | 天天干 天天摸 天天操 | .国产精品成人自产拍在线观看6 | 国产黄色资源 | 超碰个人在线 | 久久人人爽人人片av | 亚洲欧洲中文日韩久久av乱码 | 97人人射| 日韩精品资源 | 国产剧在线观看片 | 99久久综合国产精品二区 | 黄色成人毛片 | 久久综合九色综合欧美就去吻 | 亚洲精品美女久久久久网站 | 国产精品18p | 久热电影 | 久久亚洲免费视频 | 成人a级黄色片 | 亚洲欧美精品一区 | 亚洲伦理一区二区 | 韩国av一区二区三区在线观看 | va视频在线观看 | 久久久久一区二区三区 | 91亚洲成人 | 天天色天天射综合网 | 婷婷丁香社区 | 99热这里只有精品久久 | 免费日韩av电影 | 日韩在线免费小视频 | a黄色大片| 精品久久久久久亚洲综合网站 | 欧美日韩国产精品一区二区亚洲 | 亚洲成人精品影院 | 国产一区视频免费在线观看 | 久久免费99精品久久久久久 | 午夜精品一区二区三区在线 | 深爱婷婷久久综合 | 久草www| 久久久久久国产精品 | 男女拍拍免费视频 | 国产麻豆成人传媒免费观看 | 精品国产一区二区三区男人吃奶 | 一区视频在线 | 国产精品久久久久久麻豆一区 | 欧美一区,二区 | 国产热re99久久6国产精品 | 91视频免费观看 | 日韩电影在线观看中文字幕 | 日韩精品一区二区三区电影 | 四虎在线观看视频 | 色多多在线观看 | 亚洲第一色 | 成年人看片网站 | 欧美一级乱黄 | 中文字幕av有码 | 亚洲国产色一区 | 黄色网址在线播放 | av免费片| 7777xxxx| 免费成人在线观看视频 | 日韩av一区二区三区在线观看 | 日本久久久精品视频 | 天天色成人 | 九九精品久久久 | 亚洲综合视频在线 | 国产香蕉久久精品综合网 | 欧美成年人在线观看 | 国产精品99页 | 91国内在线 | 久草视频99 | 欧洲亚洲国产视频 | 久久久久久久久久电影 | 在线播放视频一区 | 亚洲 欧洲av| 亚洲成人黄色av | 中文字幕一区二区在线播放 | 欧美另类xxx | 97超碰人人看 | 久热这里有精品 | av网站手机在线观看 | 97免费在线观看视频 | 97久久久免费福利网址 | 国产视频观看 | 国模视频一区二区三区 | 日本99久久 | 黄视频网站大全 | 精品一二三四五区 | 97超碰香蕉 | 韩日三级av | 午夜视频导航 | 91视频最新网址 | 婷婷五月色综合 | 久久久久久看片 | 日韩成人免费在线电影 | 亚洲免费国产视频 | 亚洲精品自拍视频在线观看 | 欧美 日韩 国产 成人 在线 | 日韩精品一区二区在线观看视频 | 久草爱视频 | 亚洲视频1| av大片网址 | 国产又粗又猛又黄又爽的视频 | 午夜av一区二区三区 | 日本在线精品视频 | 久草电影免费在线观看 | 免费观看国产视频 | 久久久国产精品久久久 | 亚洲妇女av | 中文字幕视频免费观看 | 2018亚洲男人天堂 | 婷婷色伊人 | 欧美人zozo | 久久精品伊人 | 免费观看www视频 | 国产馆在线播放 | 欧美日韩精品综合 | 国产一级免费播放 | 久久精品系列 | 久久九九影视网 | 久久激情久久 | 91精品国产自产在线观看永久 | 天天操天天摸天天干 | 成人在线中文字幕 | 激情丁香久久 | 色网站中文字幕 | 精品国产成人av在线免 | 亚洲成人精品久久久 | www.久久久.com | 伊人婷婷网 | 国产中文字幕av | 丁香婷婷网 | 欧美整片sss| 日本免费一二三区 | 天天综合视频在线观看 | 久久免费精彩视频 | 欧美激情va永久在线播放 | 亚洲人成网站精品片在线观看 | 成人在线免费av | 中文av日韩 | 亚洲最大在线视频 | 欧美精品在线观看 | 麻豆免费看片 | www激情com | 99热超碰| 日韩欧美在线高清 | 国产天天综合 | 九九综合久久 | 中文视频在线 | 午夜精品久久 | 久久人人爽人人 | 九七视频在线观看 | 国产福利电影网址 | 久草在线视频看看 | 国产91学生粉嫩喷水 | 久久久久久久久久久久久影院 | 欧美一级日韩三级 | 日韩久久精品一区二区 | 国色天香av| 操操日日| 国产精品女人久久久 | 在线а√天堂中文官网 | 久久久久久久久久久久影院 | 麻豆精品国产传媒 | 在线午夜av | 97免费| 久久久久成 | 亚洲九九爱 | 欧美午夜a| 日韩欧美视频在线 | a视频免费看 | 亚洲精品资源在线观看 | 九九精品久久久 | 97超碰在线播放 | 国产老太婆免费交性大片 | 久久 一区 | 亚洲国产激情 | 精品福利网站 | 天堂中文在线视频 | 国产一区私人高清影院 | 天天干天天天 | 亚洲综合在线观看视频 | 97视频在线免费 | 中文国产字幕在线观看 | 久久综合免费视频影院 | 亚洲一区久久久 | 97精品国产一二三产区 | 黄色小说网站在线 | 精品在线观看一区二区 | 97精品国产97久久久久久免费 | 一区二区视频欧美 | 国产精品亚洲a | 伊人宗合网 | 成人在线电影观看 | 久久国产精品久久国产精品 | 中文 一区二区 | 亚洲欧洲国产视频 | 一二三区在线 | 欧美性一级观看 | 超碰久热 | 国产中文在线观看 | 午夜手机电影 | 久久99视频 | 久久艹在线 | 丁香婷婷久久久综合精品国产 | 亚洲国产高清在线 | 182午夜在线观看 | 亚洲国产网站 | 成人va天堂 | 99国产精品免费网站 | 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 国产精品21区 | av官网在线| 国产精品黄网站在线观看 | 国产中文字幕亚洲 | 婷婷色站| 国产精品成人国产乱 | 在线视频你懂得 | 黄色a一级视频 | 免费久久久 | 成人在线免费观看网站 | 国产精品色婷婷视频 | 日韩高清精品免费观看 | 天天曰 | 免费看成人片 | 91人人澡 | 国产明星视频三级a三级点| 亚洲精品国产成人av在线 | 三级av免费| 毛片精品免费在线观看 | 国产精品久久久久av | 免费看三片 | 视频99爱 | 狠狠色伊人亚洲综合网站野外 | 你操综合 | 最近免费中文字幕mv在线视频3 | 欧美午夜精品久久久久久孕妇 | www.99av| 免费在线看v | 免费成人结看片 | 亚洲综合一区二区精品导航 | 狠狠狠色| 人人狠狠综合久久亚洲婷 | 久久a久久 | 91精品视频在线免费观看 | 久久久久久国产一区二区三区 | 国产69久久久欧美一级 | 国产偷v国产偷∨精品视频 在线草 | 精品美女久久久久 | 视频三区在线 | 日本久久高清视频 | 六月婷婷网 | 欧美狠狠色| 精品美女国产在线 | 国产一区在线观看免费 | 欧美a级在线播放 | 精品一二三区视频 | 精品一区二区在线播放 | 国产h在线播放 | 99夜色 | 成人一级影视 | 在线观看视频一区二区 | 免费亚洲一区二区 | 午夜av在线电影 | 国产精品亚洲片夜色在线 | 国产精品成人国产乱 | 黄色网www| 亚洲理论在线观看电影 | 亚洲电影一区二区 | 国产精品片 | 久久精品美女视频网站 | 色狠狠婷婷 | 欧美日韩国产一区二区在线观看 | 亚洲影视九九影院在线观看 | 免费看一及片 | 色视频在线免费 | 欧美日韩精品电影 | 狠狠狠狠狠狠干 | 中文字幕乱码一区二区 | 亚洲日本va午夜在线影院 | 黄av免费在线观看 | 999免费视频 | 夜夜躁狠狠燥 | 欧美日韩国产在线观看 | 51久久成人国产精品麻豆 | 国产高清 不卡 | 五月亚洲婷婷 | 热99在线视频 | 三级黄色网络 | 亚洲免费在线看 | 91精品老司机久久一区啪 | 午夜成人免费影院 | 91久久一区二区 | 丁香六月婷婷激情 | 999久久a精品合区久久久 | 亚洲欧美成人在线 | 国产黄色片一级 | 福利一区视频 | 五月天激情综合网 | 久久久久久国产精品 | 高清一区二区 | 国产精品毛片一区二区在线 | 伊人激情网| 91精品一区二区三区久久久久久 | 日本久久久亚洲精品 | 国产视频一区在线播放 | 国产精品女人久久久久久 | 99九九99九九九视频精品 | 色婷婷成人网 | 色综合色综合久久综合频道88 | 欧美日韩在线视频免费 | 日本中出在线观看 | 亚洲视频999 | 国产成人精品一区二区三区福利 | 中文字幕一区在线 | 奇米影视8888在线观看大全免费 | 亚洲精品欧美专区 | 天天干天天做天天爱 | 日韩精品 在线视频 | 国产福利91精品一区二区三区 | 69久久久久久久 | 日韩亚洲在线 | 国产在线高清 | 欧美极品在线播放 | 黄污视频网站大全 | 国产无套精品久久久久久 | 日韩一区二区久久 | 91喷水| 青草草在线视频 | 亚洲综合一区二区精品导航 | 探花视频免费在线观看 | 欧美另类z0zx| 日韩手机在线 | 欧美性生活小视频 | 日韩精品久久中文字幕 | 日韩免费b | 国产成人av电影在线观看 | 中文字幕国产一区 | 久久综合狠狠综合久久综合88 | 国产美女视频黄a视频免费 久久综合九色欧美综合狠狠 | 1024手机基地在线观看 | 日韩成人不卡 | 99久久网站 | 亚洲精品视频久久 | 在线亚洲播放 | 免费看成人av | 久久久午夜电影 | 超碰个人在线 | 亚洲欧美视频 | 国产手机视频 | 久久久久一区 | 久久久精品欧美 | 亚洲高清91| 免费黄色网址大全 | 久久国产精品免费 | 91精品国产麻豆 | 婷婷精品国产欧美精品亚洲人人爽 | 色中色综合 | 午夜免费在线观看 | 日韩精品在线免费播放 | 久久综合中文色婷婷 | 亚洲精品久久久久久久不卡四虎 | 日韩国产高清在线 | 亚洲精品免费在线 | 欧美国产日韩一区二区三区 | 欧美 日韩 久久 | 免费黄色av. | 狠狠干夜夜操天天爽 | 欧美日韩视频免费看 | 香蕉视频在线观看免费 | 亚洲欧美日韩精品一区二区 | 久久 在线 | 91av蜜桃| 婷婷亚洲五月色综合 | 国产不卡免费 | 综合激情av | 国产一区二区三精品久久久无广告 | 欧美激情片在线观看 | 国际精品久久 | 亚洲精品国产精品国自产 | 国产精品一区二区三区在线看 | 欧美国产日韩一区 | 狠狠狠操| 五月天高清欧美mv | 久久日韩精品 | 日韩手机在线观看 | 色姑娘综合网 | 综合网av | 久久久久女人精品毛片九一 | 国色天香av| 毛片.com | 国产精品免费观看国产网曝瓜 | 久久精品视频网站 | 激情av资源网 | 91超碰免费在线 | 国产一区二区手机在线观看 | 国产成人精品一区二区在线观看 | 久久爱导航 | 久草视频免费 | 视频99爱| 丝袜美腿在线视频 | 亚洲专区欧美专区 | 中日韩三级视频 | 亚洲高清视频一区二区三区 | 中文字幕日本在线观看 | 精品国产一区二 | 91香蕉视频在线下载 | 久热av| 成人免费亚洲 | 激情图片区 | 国产高清不卡在线 | 在线成人高清电影 | 久久精品欧美一 | 干干日日 | www.黄色小说.com | 天堂网一区二区 | 欧美日本日韩aⅴ在线视频 插插插色综合 | 91视频传媒 | 国产精品欧美久久久久无广告 | 国产玖玖精品视频 | 国产大片黄色 | 中文字幕丝袜一区二区 | 日本韩国中文字幕 | 国产成人无码AⅤ片在线观 日韩av不卡在线 | 天堂av网址| 久久久 激情 | 欧美少妇xxx | 天天天天天天操 | 日韩精品中文字幕在线不卡尤物 | 成 人 黄 色 片 在线播放 | 国产欧美在线一区二区三区 | 精品久久久久久久久亚洲 | 久久精品人人做人人综合老师 | 欧美一级片免费 | 综合色播| 中文字幕在线观看视频一区 | 久久免费视频5 | 日日夜夜精品免费观看 | 丁香六月婷婷 | 精品久久久久久久 | 操久在线 | 色婷婷九月 | 成人a在线观看 | 国产精品大片 | 婷婷国产v亚洲v欧美久久 | av线上看| 超薄丝袜一二三区 | 日韩丝袜在线观看 | 日韩二三区| 麻豆传媒视频在线播放 | 9ⅰ精品久久久久久久久中文字幕 | 久久精品国产精品亚洲 | 天天人人综合 | 手机看片1042| 91视频免费看网站 | 国产精品美女久久 | 五月激情姐姐 | 婷婷色 亚洲 | 午夜免费福利片 | 国产专区视频在线观看 | 国产小视频你懂的 | 国产精品久久久久久妇 | 欧美国产大片 | 丁香九月婷婷综合 | 激情久久综合网 | 国产专区在线视频 | 日韩精品一区二区三区第95 | 玖玖精品视频 | 中文字幕美女免费在线 | 亚洲美女视频在线 | 国产精品免费观看网站 | 成人av资源网 | 99精品视频在线免费观看 | 蜜臀av夜夜澡人人爽人人桃色 | 国产精品乱码久久久久 | 中文字幕免费不卡视频 | 999国产精品视频 | 波多野结衣电影久久 | 久久99国产综合精品 | 国产精品久久久久一区二区三区 | 亚洲在线国产 | 日本大片免费观看在线 | av中文在线播放 | 亚洲精品成人av在线 | 午夜视频免费 | av最新资源 | 91精品国产91热久久久做人人 | 午夜精品久久久久久中宇69 | 国产成本人视频在线观看 | 欧美成人h版电影 | 久久精品国产亚洲精品 | 久久久国产一区二区三区四区小说 | 日韩三级精品 | 懂色av一区二区三区蜜臀 | 亚洲成年人免费网站 | 亚州精品天堂中文字幕 | www天天干| 中文字幕资源在线 | 337p日本欧洲亚洲大胆裸体艺术 | 91精品一区二区三区蜜臀 | 国产一级性生活视频 | 国产精品国产三级国产aⅴ入口 | 久久久免费精品 | 黄色电影网站在线观看 | 国产精品福利无圣光在线一区 | 久久深夜 | 欧洲亚洲激情 | 97视频网址 | 91久久国产综合精品女同国语 | 久久久免费观看 | 91视频在线观看下载 | 一区二区三区在线视频111 | 麻豆传媒精品 | 国产精品嫩草69影院 | 丁香六月av | 观看免费av | 欧美视频www | 国产精品成久久久久 | 日韩精品免费一区二区三区 | 日韩欧美在线免费观看 | 97天堂| 亚洲精品免费在线视频 | 91视频在线观看免费 | 久久日本视频 | 久久色在线观看 | 中文字幕在线播放视频 | 亚洲日日夜夜 | 色五月情| 四虎在线免费观看 | 亚洲婷婷在线视频 | 日韩三级.com| 狠狠色丁香久久婷婷综合五月 | 亚洲精品视频在线观看网站 | 中文字幕在线有码 | 欧美最猛性xxxxx免费 | 国产午夜精品久久久久久久久久 | 黄色一级免费网站 | 在线看污网站 | 成 人 a v天堂 | 好看av在线 | 国产在线观看污片 | www最近高清中文国语在线观看 | 国产精品人成电影在线观看 | 亚洲精品视频网址 | 91在线精品秘密一区二区 | 婷婷伊人五月 | 婷婷免费在线视频 | 久久综合狠狠综合 | 在线观看亚洲精品 | 999国产| 狠狠色综合欧美激情 | 欧美精品久久久 | 国产v视频 | 亚洲激情电影在线 | 超碰人人草 | 91精品视频在线观看免费 | 天天干.com | 国产麻豆视频免费观看 | 国产精品久久99精品毛片三a | 播五月婷婷 | 日韩激情av在线 | 免费在线电影网址大全 | 国产久草在线观看 | 黄网站免费大全入口 | 操操操日日日干干干 | 天天操比 | 永久免费观看视频 | 日韩特级片 | 国产精品一区二区美女视频免费看 | a色网站| 天天av在线播放 | 一区二区三区视频网站 | 久久精久久精 | 一级欧美一级日韩 | 久久高清国产视频 | 国产精品理论片在线播放 | 色婷婷激婷婷情综天天 | 国产精品男女 | 香蕉网在线 | 狠狠色丁香久久婷婷综合五月 | 成年人电影毛片 | 99看视频在线观看 | 7777精品伊人久久久大香线蕉 | 69av视频在线观看 | 日韩成人在线免费观看 | 少妇做爰k8经典 | 亚洲婷婷综合色高清在线 | 9999精品| 精品在线视频观看 | 97超碰国产精品女人人人爽 | 国产成人在线免费观看 | 免费日韩视频 | 国产精品免费在线视频 | 国产午夜精品一区二区三区在线观看 | 九色91在线| 欧洲精品码一区二区三区免费看 | 亚洲精品午夜视频 | 国产资源中文字幕 | 免费国产在线精品 | 国产色在线视频 | 8x成人免费视频 | 国产资源中文字幕 | 色资源中文字幕 | 天操夜夜操 | 久久色中文字幕 | 日韩午夜网站 | 久久99深爱久久99精品 | 日韩免费不卡视频 | 亚洲综合成人在线 | 免费看特级毛片 | 欧美一区二视频在线免费观看 | 国产亚洲婷婷免费 | 成人免费看片网址 | 婷婷电影在线观看 | 国产精品久久久久久久午夜片 | 日韩久久网站 | 久久精品99久久久久久2456 | 黄色在线观看网站 | 中文字幕观看在线 | 91麻豆传媒 | 中国一级特黄毛片大片久久 | 久久99久久99精品中文字幕 | 中文字幕在线视频一区二区三区 | 91精品视频在线免费观看 | 日韩免费在线播放 | 久草网在线观看 | 国产成人av一区二区三区在线观看 | www在线观看视频 | 中文字幕在线看视频国产 | 国产精品电影在线 | 欧美激情精品久久久久久 | 久久久美女 | 在线视频观看亚洲 | 久久久久久久久久久电影 | 91在线播放综合 | 亚洲天堂网视频在线观看 | 在线免费观看黄 | 国产精品国产精品 | 国产精品免费不 | 最新国产中文字幕 | 欧美三级高清 | 综合伊人久久 | 香蕉视频网站在线观看 | 亚洲欧洲美洲av | 精品国产伦一区二区三区观看说明 | 91视频在线国产 | 久久久久麻豆 | 国产精品va在线播放 | 婷婷5月激情5月 | 狠狠操精品 | 日p在线观看 | 亚洲黄色在线免费观看 | 亚洲精品在线视频网站 | 色综合婷婷 | www.天天操.com| 欧美日韩性视频在线 | 手机看片中文字幕 | 欧美日韩一区二区三区视频 | 国产精品欧美一区二区三区不卡 | 欧美色图狠狠干 | a级片韩国 | 天天曰天天曰 | 天天天天天天天天操 | 亚洲国产影院av久久久久 | 亚洲成av人片 | 免费看片成年人 | 欧美大码xxxx| 久久国产精品影片 | 激情婷婷丁香 | v片在线看| 国产精品自产拍 | 国产免费一区二区三区最新 | 99久久影院 | 五月天综合网站 | 97国产精品亚洲精品 | a天堂一码二码专区 | 免费av在线网 | 五月色综合 | 日韩在线观看视频一区二区三区 | 在线三级av | 亚洲特级片 | 日韩字幕在线观看 | 国产一级片免费播放 | 亚洲国产精品成人综合 | 国产成人亚洲精品自产在线 | 久久久午夜精品福利内容 | 中文字幕 91 | av成人资源 | 国内99视频 | 天天干夜夜夜 | 国产精品岛国久久久久久久久红粉 | 麻豆一区在线观看 | 免费成人在线观看 | 中文字幕亚洲精品在线观看 | www成人精品| 久久在线 | 一本大道久久精品懂色aⅴ 五月婷社区 | 人人爽人人爽人人爽学生一级 | 欧美a级成人淫片免费看 | 成人在线视频在线观看 | 91精品国产99久久久久久红楼 | 操处女逼 | 在线激情av电影 | 国产成人精品一区二 | 久久久网站 | 91麻豆看国产在线紧急地址 | 18久久久久久 | 国产手机av在线 | 国内精品久久久久久 | 久久亚洲精品电影 | 黄色毛片观看 | 日韩电影一区二区在线观看 | 国产精品久久一区二区三区不卡 | 精品一区二区日韩 | 精品国产一区二区三区日日嗨 | 六月激情婷婷 | 中文字幕av在线电影 | 日本在线精品视频 | 手机看片久久 | 久草新在线| 九九热视频在线播放 | 精品不卡视频 | 中国一级特黄毛片大片久久 | 91精品国产欧美一区二区成人 | 黄色一区二区在线观看 | 视频一区二区视频 | 公与妇乱理三级xxx 在线观看视频在线观看 | 亚洲自拍偷拍色图 | 99亚洲国产 | 欧美日韩中文字幕视频 | 中文字幕乱视频 | 男女拍拍免费视频 | 99热这里只有精品免费 | 免费在线观看午夜视频 | 国产精品乱看 | 国产精品免费久久久久 | 日韩18p| 全久久久久久久久久久电影 | 天天色天天射天天综合网 | 狠狠狠色丁香综合久久天下网 | 亚洲欧洲日韩 | 91视频在线看 | 中文字幕乱码一区二区 | 91久久奴性调教 | 999久久久免费视频 午夜国产在线观看 | 久久成人精品视频 | www.黄色片.com| 91激情视频在线 | 午夜色婷婷 | 亚洲最新在线视频 | 国产中文字幕视频在线观看 | av一区二区三区在线播放 | 天天操婷婷| 中文字幕一区二区三区四区视频 | 手机av电影在线观看 | 激情黄色一级片 | 午夜在线免费观看视频 | 欧美日韩视频在线观看一区二区 | 久久久一本精品99久久精品 | 在线免费观看羞羞视频 | 日日夜夜中文字幕 | 欧美日韩国产二区三区 | 永久免费的啪啪网站免费观看浪潮 | 国产一级黄色电影 | 日韩在线观看a | 17婷婷久久www | 91成人区| 精久久久久 | 久久久久亚洲精品成人网小说 | 精品免费视频123区 午夜久久成人 | 亚洲天堂网在线视频观看 | 91九色蝌蚪视频在线 | 在线小视频你懂得 | bbb搡bbb爽爽爽| 在线视频日韩一区 | 午夜视频色| 久久亚洲影院 | 亚洲久草在线视频 | 激情久久一区二区三区 | 久久久久久久久黄色 | 久久久视屏 | a爱爱视频 | 六月丁香激情综合色啪小说 | 在线观看色网 | 国产99久久久国产精品成人免费 | 亚洲欧美成人网 | 精品亚洲免费 | 国产亚洲激情视频在线 | 在线看免费 | 亚洲 欧美 精品 | 婷婷色中文 | 久久毛片网| 91在线视频精品 | 三级a毛片| 午夜.dj高清免费观看视频 | 97成人啪啪网 | 青青河边草手机免费 | 精品视频专区 | 成人国产精品电影 | 日日躁夜夜躁aaaaxxxx | 久久黄色小说视频 | av网站地址 | 欧美极品一区二区三区 | 九色精品免费永久在线 | 日韩一二三区不卡 | 久青草电影 | 久久精品导航 | 国产精品女同一区二区三区久久夜 | av中文字幕网址 | 国产免费又爽又刺激在线观看 | 欧美一区二区三区在线观看 | 在线视频你懂得 | 午夜 久久 tv | 黄毛片在线观看 | 九九精品在线观看 | 精品欧美小视频在线观看 | 国产精品久久久网站 | 国产精品欧美日韩 | 国产资源中文字幕 | 国产99久久久国产精品成人免费 | 麻豆视频免费播放 | 久久综合视频网 | 97超碰在线久草超碰在线观看 | 成年人视频在线免费播放 | 国产亚洲精品久久久久动 | 麻豆影视网| 粉嫩av一区二区三区四区五区 | 99热在线免费观看 | 极品嫩模被强到高潮呻吟91 | 日韩激情在线视频 | 天堂av网在线 | 亚洲专区一二三 | 久久免费99精品久久久久久 | 久久成人毛片 | 精品福利网 | 日本在线h | 色是在线视频 | 特片网久久 | 激情综合色综合久久 | 久久久久国产精品www | 精品一区二区在线观看 | 久久精品免费看 | 91精品国产91久久久久 | 免费大片黄在线 | 一色av| 久久字幕精品一区 | 天天天操天天天干 | www国产在线 | 日韩欧美在线中文字幕 | 日韩一区在线免费观看 | 黄色资源在线观看 | 久久久免费在线观看 | 亚洲 欧洲 国产 日本 综合 | 五月婷综合 | 国产亚洲精品久久久久久久久久 | 国产一级电影免费观看 | 色五月激情五月 | 精品在线你懂的 | 一级成人在线 | 在线观看 国产 | 免费精品在线视频 | 精品视频久久久久久 | 少妇bbw搡bbbb搡bbb | 国产成人综合在线观看 | 国产无限资源在线观看 | 成 人 黄 色 视频播放1 | 国产中文字幕网 | 91精品国产麻豆国产自产影视 | 色91av| 精品国产欧美一区二区三区不卡 | 国产精品黄色av | 人人爽人人爱 | 欧美贵妇性狂欢 | 在线观看亚洲专区 | 亚洲精品国产综合久久 | www.99久久.com| 在线观看v片 | 欧美污污视频 | 毛片网站免费 | 久操免费视频 | 一级成人免费视频 | 在线观看一区二区视频 | 伊人激情综合 | 国产特级毛片aaaaaa | 免费日韩一级片 | 黄色毛片视频免费观看中文 | 一区二区三区日韩在线观看 | 久久99国产综合精品免费 | 亚洲成av人片在线观看无 | 欧美日韩精品免费观看视频 | 精品国产一区二区久久 | 欧美精品在线观看免费 | 五月天久久久久 | 国产欧美中文字幕 | 四虎在线视频 | 国产色小视频 | 色视频在线观看 | 99爱国产精品 | 超碰免费久久 | 美女网站免费福利视频 | 精品1区2区3区 | 六月婷婷久香在线视频 | 麻豆视频网址 | 欧洲亚洲国产视频 | av高清免费在线 | 亚洲国产日韩一区 | 日韩在线无 | 天天干天天操天天爱 | 欧美日韩视频一区二区 | 国产一级小视频 | 黄色三级免费 | 肉色欧美久久久久久久免费看 | 久久午夜精品视频 | 丁香婷婷久久久综合精品国产 | 国产淫片 | 在线观看中文字幕亚洲 | 色婷婷五 | 亚洲理论片 | 最近日本中文字幕 | 久久高清毛片 | 看毛片的网址 | 国产成人免费在线观看 | 久久草在线免费 | 欧美成人a在线 | 精品主播网红福利资源观看 | 天天搞天天干 | 最近更新的中文字幕 | 日本精品va在线观看 | 国产精品大尺度 | 91在线看网站 | 久久精品三 | 97av在线视频| 色综合人人 | 欧美专区日韩专区 | 成人一区影院 | 亚洲综合涩 | 人人干狠狠干 | 国产一二三四在线视频 | 九九免费观看全部免费视频 | 亚洲欧美日韩一二三区 | 在线观看国产区 | 91香蕉视频黄色 | 久久综合九色综合97婷婷女人 | 免费看黄的视频 | www.久久免费 | 免费男女网站 | 福利一区视频 | 日日干日日操 | 一级黄色片在线观看 | 99久久精品免费看国产免费软件 | 日韩欧美精品在线视频 | 操操操com| 亚洲干视频在线观看 | 婷婷六月天综合 | 在线观看精品一区 | 天天操天天色天天射 | 91污在线 | 婷婷精品国产一区二区三区日韩 | 一区二区三区福利 | 99综合影院在线 | 国产精品久久久久久久久久久久午夜 | 久久久精品小视频 | 婷婷在线视频 | 国产精品网在线观看 | 在线观看久草 | 中文字幕在线观看第三页 | 亚洲无人区小视频 | 国产精品国产三级国产aⅴ无密码 | 91看片网址| 在线影视 一区 二区 三区 | 国产精品一区二区三区在线免费观看 | 丁香九月激情 | 久久综合精品国产一区二区三区 | av一区二区三区在线播放 | 久草免费在线 | 超碰在线9 | 亚洲国产wwwccc36天堂 | 久热免费| 午夜精品一区二区三区在线 | 精品国产乱码久久 | 色综合天 | 91亚洲精品久久久蜜桃 | 超碰人人超碰 | 91精品欧美一区二区三区 | 国产韩国日本高清视频 | 日韩久久一区二区 | 一区二区三区动漫 | 国产精品视频全国免费观看 | 亚洲黄色在线 |