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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

NEO从源码分析看NEOVM

發(fā)布時間:2025/5/22 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NEO从源码分析看NEOVM 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

2019獨角獸企業(yè)重金招聘Python工程師標準>>>

0x00 前言

這篇文章是為下一篇《NEO從源碼分析看UTXO轉(zhuǎn)賬交易》打前站,為交易的構(gòu)造及執(zhí)行的一些技術(shù)基礎(chǔ)做個探索。由于這個東西實在有點干,干到簡直咽不下,所以我來個自頂向下,從合約代碼開始慢慢深入。此外,文中難免有些不詳盡或者疏漏偏頗的地方,還望大佬們不吝指教。

0x01 鎖倉合約(Lock)

在官方提供的三個合約示例中,這個鎖倉合約是唯一一個不需要Storage的,目前我是感覺可能簡單些。如果這把坑了自己,我無怨無悔,畢竟別的合約遲早也要分析,/(ㄒoㄒ)/~~。 鎖倉合約的代碼和解釋都可以在官方文檔中找到,中文版地址在這里,github地址在這里

public class Lock : SmartContract {public static bool Main(byte[] signature){Header header = Blockchain.GetHeader(Blockchain.GetHeight());if (header.Timestamp < 1520554200) // 2018-3-9 8:10:00return false;return true;} }

我這里把原來的時間戳改了,還把簽名驗證刪了。創(chuàng)建新合約項目的步驟我就不再多說,官網(wǎng)上都有。 這個合約只有最新的區(qū)塊時間戳大于我既定的時間才可以轉(zhuǎn)賬,否則轉(zhuǎn)賬失敗。理論是這樣的,官網(wǎng)解釋也基本就這么言簡意賅。我接下來要做的,就是最苦逼的——追蹤這個合約腳本的生成和執(zhí)行過程。下面涉及的代碼主要是三個項目:

  • neo-vm : https://github.com/neo-project/neo-vm
  • neo-compiler: https://github.com/neo-project/neo-compiler
  • neo-gui-nel: https://github.com/NewEconoLab/neo-gui-nel

0x02 編譯

不得不說NEO開發(fā)團隊這塊做的還是蠻好的,雖然這個編譯的過程灰常復(fù)雜,但是操作起來確實很簡單,直接右鍵項目選擇生成就可以了:

從這里可以看到很多消息,每一步執(zhí)行了什么,生成了什么,結(jié)果是什么。最最重要的是,這里有關(guān)鍵字啊,之前社區(qū)有人問我怎么看源碼的,就這么看的,可憐兮兮的找蛛絲馬跡,一個關(guān)鍵字一個關(guān)鍵字去查引用。 從這個日志里可以看出,編譯的時候是先生成dll動態(tài)鏈接庫,這當(dāng)然是.net的工作了。然后調(diào)用的是Neo.Compiler.MSIL這個東東。我就先找這個東西。

0x03 解析

根據(jù)上小結(jié)的關(guān)鍵字,我定位到neo-compiler項目的Program.cs文件,這個文件里有編譯器的入口函數(shù)Main。不要問我怎么調(diào)用的,不care,就這么傲嬌(實在是沒找到)。Main方法會接收一個參數(shù),就是dll文件的路徑:

源碼位置:neo/Compiler/Program.cs/Main(string[] args)

log.Log("Neo.Compiler.MSIL console app v" + Assembly.GetEntryAssembly().GetName().Version); if (args.Length == 0) {log.Log("need one param for DLL filename.");return; } string filename = args[0]; string onlyname = System.IO.Path.GetFileNameWithoutExtension(filename); string filepdb = onlyname + ".pdb";

說實話我對C#的了解并沒有深入到字節(jié)碼的水平,使用經(jīng)驗也就止于鵝廠實習(xí)做游戲的那幾個月,這從DLL轉(zhuǎn)AVM我只能盡全力而為。 轉(zhuǎn)換的主要函數(shù)是ModuleConverter的Convert,這個方法接收一個ILModule類型的對象作為參數(shù),而這個ILModule對象就是負責(zé)解析dll文件獲取IL指令的。由于我沒找到辦法動態(tài)分析這個compiler,所以我直接將Lock.dll文件進行了逆向,直接對照IL指令靜態(tài)分析compiler。逆向工具我用的是ILSPY,github有售。以下是逆向IL代碼:

.class public auto ansi beforefieldinit Lockextends [Neo.SmartContract.Framework]Neo.SmartContract.Framework.SmartContract {// 方法.method public hidebysig static bool Main (uint8[] signature) cil managed {// 方法起始 RVA 地址 0x2050// 方法起始地址(相對于文件絕對值:0x0250)// 代碼長度 62 (0x3e).maxstack 4.locals init ([0] class [Neo.SmartContract.Framework]Neo.SmartContract.Framework.Services.Neo.Header,[1] bool,[2] bool)// 0x025C: 00IL_0000: nop// 0x025D: 28 10 00 00 0AIL_0001: call uint32 [Neo.SmartContract.Framework]Neo.SmartContract.Framework.Services.Neo.Blockchain::GetHeight()// 0x0262: 28 11 00 00 0AIL_0006: call class [Neo.SmartContract.Framework]Neo.SmartContract.Framework.Services.Neo.Header [Neo.SmartContract.Framework]Neo.SmartContract.Framework.Services.Neo.Blockchain::GetHeader(uint32)// 0x0267: 0AIL_000b: stloc.0// 0x0268: 06IL_000c: ldloc.0// 0x0269: 6F 12 00 00 0AIL_000d: callvirt instance uint32 [Neo.SmartContract.Framework]Neo.SmartContract.Framework.Services.Neo.Header::get_Timestamp()// 0x026E: 20 20 2F A1 5AIL_0012: ldc.i4 1520512800// 0x0273: FE 05IL_0017: clt.un// 0x0275: 0BIL_0019: stloc.1// 0x0276: 07IL_001a: ldloc.1// 0x0277: 2C 04IL_001b: brfalse.s IL_0021// 0x0279: 16IL_001d: ldc.i4.0// 0x027A: 0CIL_001e: stloc.2// 0x027B: 2B 1BIL_001f: br.s IL_003c// 0x027D: 02IL_0021: ldarg.0// 0x027E: 1F 21IL_0022: ldc.i4.s 33// 0x0280: 8D 16 00 00 01IL_0024: newarr [mscorlib]System.Byte// 0x0285: 25IL_0029: dup// 0x0286: D0 01 00 00 04IL_002a: ldtoken field valuetype '<PrivateImplementationDetails>'/'__StaticArrayInitTypeSize=33' '<PrivateImplementationDetails>'::'09B200FB2B3E1BDC14112F99F08AA4576CF64321'// 0x028B: 28 13 00 00 0AIL_002f: call void [mscorlib]System.Runtime.CompilerServices.RuntimeHelpers::InitializeArray(class [mscorlib]System.Array, valuetype [mscorlib]System.RuntimeFieldHandle)// 0x0290: 28 14 00 00 0AIL_0034: call bool [Neo.SmartContract.Framework]Neo.SmartContract.Framework.SmartContract::VerifySignature(uint8[], uint8[])// 0x0295: 0CIL_0039: stloc.2// 0x0296: 2B 00IL_003a: br.s IL_003c// 0x0298: 08IL_003c: ldloc.2// 0x0299: 2AIL_003d: ret} // 方法 Lock::Main 結(jié)束.method public hidebysig specialname rtspecialname instance void .ctor () cil managed {// 方法起始 RVA 地址 0x209a// 方法起始地址(相對于文件絕對值:0x029a)// 代碼長度 8 (0x8).maxstack 8// 0x029B: 02IL_0000: ldarg.0// 0x029C: 28 15 00 00 0AIL_0001: call instance void [Neo.SmartContract.Framework]Neo.SmartContract.Framework.SmartContract::.ctor()// 0x02A1: 00IL_0006: nop// 0x02A2: 2AIL_0007: ret} // 方法 Lock::.ctor 結(jié)束} // 類 Lock 結(jié)束

從上面ILSpy逆向出的IL代碼就可以很清晰的看出來函數(shù)名、參數(shù)、類型、系統(tǒng)調(diào)用等等關(guān)鍵信息,neo-vm對C#字節(jié)碼的解析就是根據(jù)這些東西。Compiler從dll獲取IL指令使用的是mono.cecil,這個工具的代碼github也有售?;旧螻EO-VM定義了自己的一套完整指令集,可以逐條來做翻譯,把IL指令翻譯成avm指令,這個翻譯的結(jié)果就是avm腳本了。翻譯的過程首先是把IL指令中的方法提取出來,提取的部分有些對自動生成代碼及系統(tǒng)調(diào)用的判斷,比較繁瑣,而且對于我們理解這個轉(zhuǎn)換過程幫助也不大,我就不講了。對于每個方法的核心處理代碼如下:

源碼位置:neon/MSIL/Converter.cs/Convert(ILModule _in)

//方法參數(shù)獲取 foreach (var src in m.Value.paramtypes) {nm.paramtypes.Add(new NeoParam(src.name, src.type)); } //是否為neo系統(tǒng)調(diào)用 byte[] outcall; string name; if (IsAppCall(m.Value.method, out outcall))continue; if (IsNonCall(m.Value.method))continue; if (IsOpCall(m.Value.method, out name))continue; if (IsSysCall(m.Value.method, out name))continue; //方法代碼轉(zhuǎn)換為opcode this.ConvertMethod(m.Value, nm);

在每個方法解析完之后會調(diào)用ConvertMethod方法來把方法內(nèi)部的IL指令轉(zhuǎn)換為對應(yīng)的avm指令,指令轉(zhuǎn)換的方法是ConvertCode,這個方法里定義有完整的IL到avm的映射關(guān)系,這里就不一一分析了。 這里我就先假裝這個轉(zhuǎn)換過程已經(jīng)講完了,細節(jié)部分可能以后的博客中還會涉獵到,都以后再說。 前面分析完了,到創(chuàng)建合約的時候我就涼了,這居然涉及到應(yīng)用合約和鑒權(quán)合約(下下篇博客專題介紹),這個東西我簡直一直以來都云里霧里,現(xiàn)在居然直接迎頭撞上了,苦也。這里不明白的可以靜待我接下來專門介紹合約的博客,我就先直接往下走了。鎖倉合約本身是不需要部署在區(qū)塊鏈上的,它跟賬戶合約一樣都是鑒權(quán)合約。我在上一篇文章《從源碼分析看nep2和nep6》中詳細分析過,NEO的賬戶本身其實就是一個合約,一個不需要部署在區(qū)塊鏈上,在每次交易的時候執(zhí)行的鑒權(quán)合約。Lock合約如是。

0x04 轉(zhuǎn)賬

因為這個鎖倉合約是個鑒權(quán)合約,不需要部署到區(qū)塊鏈上,所以我我們只需要在本地進行部署就可以了,這個過程用neo-GUI就可以很方便的完成。為了測試的直觀,我在本地只保留了一個有3.8gas的帳戶: AV5XmH49Gzz8puT5iMdv5ycmhqWGH5VNq7,下文中我們把這個賬戶叫徐崢。 新建的合約地址是 Aaigh8uGWwsmPTWKkxfXx8ZRJNYk6RvnBQ,這個賬戶叫王寶強。除此之外,我還另外有一個賬戶ASCjW4xpfr8kyVHY1J2PgvcgFbPYa1qX7F,我們叫黃渤,用于向徐崢賬戶轉(zhuǎn)賬,以確認徐崢賬戶收款功能正常。 故事背景如下,王寶強向徐崢借了3.8個GAS當(dāng)回家路費,約定 3/9/2018 8:10:00 這個時間之后還。 故事發(fā)展:

  • 第一幕:王寶強回家過年沒路費,向徐崢借3.8個GAS。于是徐崢借給王寶強3.8GAS,并且約定歸還時間為8:10之后。沒辦法,只有回家了之后才有錢還。交易1 id為: 0x7f5be9b212c81958428a416f5afad3ca26d3d032e85330b6837f9fea559e1785
  • 第二幕:徐崢路上和王寶強鬧翻,徐崢強行向王寶強索要3.8GAS??蓱z的寶強無可奈何了么?徐崢索取3.8GAS是交易2 id為: 0xfa17a8d74a8ebf75f839286de21e011209177930551f7b52a09161250a39df66
  • 第三幕:可憐的寶寶是執(zhí)著的,是我的就是我的,不是我的我也不要,說好了8:10以后還就8:10以后還。兔子急了還咬人呢,寶寶堅決不退讓,孩子是我的,GAS也是我的。徐崢百般索要無果,交易2宣告失敗。

  • 第四幕:最終在8:10之后的8:23,徐崢才成功拿走了借給寶寶的3.8GAS。取回GAS交易3 id: 0xfa17a8d74a8ebf75f839286de21e011209177930551f7b52a09161250a39df66

  • 終幕:在囧途歷經(jīng)坎坷共同患難之后,兩人化干戈為玉帛感情更深一步從此不再爭吵,從此幸福美滿的生活在了一起。

在以上小故事中,由于鎖倉合約約定取款時間為8:10之后,在這個時間之前進行資產(chǎn)轉(zhuǎn)出都會失敗。在小故事中的所有交易都是真實的,可以在測試網(wǎng)上查到交易信息。接下來我們分析一下這個交易2是如何執(zhí)行失敗的。

0x05 合約執(zhí)行

當(dāng)我們從鎖倉合約中轉(zhuǎn)出資產(chǎn)的交易廣播出去后,在新一輪共識中會被共識節(jié)點進行驗證(共識部分請移步我的博客《NEO從源碼分析看共識協(xié)議》),如果驗證成功,則會放在緩存中等待寫入新的區(qū)塊中,如果驗證失敗,這個交易就會被丟棄:

源碼位置:neo/Core/Helper/VerifyScripts(this IVerifiable verifiable)

using (StateReader service = new StateReader()) {ApplicationEngine engine = new ApplicationEngine(TriggerType.Verification, verifiable, Blockchain.Default, service, Fixed8.Zero);engine.LoadScript(verification, false);engine.LoadScript(verifiable.Scripts[i].InvocationScript, true);if (!engine.Execute()) return false;if (engine.EvaluationStack.Count != 1 || !engine.EvaluationStack.Pop().GetBoolean()) return false; }

ApplicationEngine是neo-vm中用來執(zhí)行腳本的類。可以看到這里設(shè)置了腳本執(zhí)行引擎的triggertype為驗證,并且傳入了交易的腳本進去。這里我們跟進Execute方法。

源碼位置:neo/SmartContract/ApplicationEngine/Execute()

while (!State.HasFlag(VMState.HALT) && !State.HasFlag(VMState.FAULT)) {if (CurrentContext.InstructionPointer < CurrentContext.Script.Length) {//讀取下一條指令OpCode nextOpcode = CurrentContext.NextInstruction;//按指令收費gas_consumed = checked(gas_consumed + GetPrice(nextOpcode) * ratio);if (!testMode && gas_consumed > gas_amount) {State |= VMState.FAULT;return false;}if (!CheckItemSize(nextOpcode) ||!CheckStackSize(nextOpcode) ||!CheckArraySize(nextOpcode) ||!CheckInvocationStack(nextOpcode) ||!CheckBigIntegers(nextOpcode) ||!CheckDynamicInvoke(nextOpcode)) {State |= VMState.FAULT;return false;}}//執(zhí)行StepInto(); }

不難看出這個engine執(zhí)行avm腳本的方式和cpu差不多,都是每次取一條指令執(zhí)行。由于跟著StepInto一條一條執(zhí)行還不如直接看AVM指令代碼,所以這里我們就跳出源碼,來分析AVM。我的合約腳本是:

54c56b6c766b00527ac4616168184e656f2e426c6f636b636861696e2e4765744865696768746168184e656f2e426c6f636b636861696e2e4765744865616465726c766b51527ac46c766b51c36168174e656f2e4865616465722e47657454696d657374616d7004d8d0a15a9f6c766b52527ac46c766b52c3640e00006c766b53527ac4620e00516c766b53527ac46203006c766b53c3616c7566

經(jīng)過NEL輕錢包工具轉(zhuǎn)ASM代碼如下:

0:PUSH4 1:NEWARRAY 2:TOALTSTACK 3:FROMALTSTACK 4:DUP 5:TOALTSTACK 6:PUSH0(false) 7:PUSH2 8:ROLL 9:SETITEM a:NOP b:NOP c:SYSCALL[781011114666108111991079910497105110467110111672101105103104116] 26:NOP 27:SYSCALL[78101111466610811199107991049710511046711011167210197100101114] 41:FROMALTSTACK 42:DUP 43:TOALTSTACK 44:PUSH1(true) 45:PUSH2 46:ROLL 47:SETITEM 48:FROMALTSTACK 49:DUP 4a:TOALTSTACK 4b:PUSH1(true) 4c:PICKITEM 4d:NOP 4e:SYSCALL[7810111146721019710010111446711011168410510910111511697109112] 67:PUSHBYTES4[0xd8d0a15a] 6c:LT 6d:FROMALTSTACK 6e:DUP 6f:TOALTSTACK 70:PUSH2 71:PUSH2 72:ROLL 73:SETITEM 74:FROMALTSTACK 75:DUP 76:TOALTSTACK 77:PUSH2 78:PICKITEM 79:JMPIFNOT[14] 7c:PUSH0(false) 7d:FROMALTSTACK 7e:DUP 7f:TOALTSTACK 80:PUSH3 81:PUSH2 82:ROLL 83:SETITEM 84:JMP[14] 87:PUSH1(true) 88:FROMALTSTACK 89:DUP 8a:TOALTSTACK 8b:PUSH3 8c:PUSH2 8d:ROLL 8e:SETITEM 8f:JMP[3] 92:FROMALTSTACK 93:DUP 94:TOALTSTACK 95:PUSH3 96:PICKITEM 97:NOP 98:FROMALTSTACK 99:DROP 9a:RET

這個avm2asm工具的地址是 http://sdk.nel.group ,源碼github開放。這個逆向出的asm代碼是不是很像我們的匯編代碼呢,除了這個指令不是像匯編那樣是三元的。這點在官方的文檔也有介紹,說是因為這個虛擬機上操作數(shù)是單獨維護在一個操作數(shù)棧上的,對于數(shù)據(jù)的操作只有簡單的push和pop,所以沒必要指定地址。我說我能一條條對照avm指令把整個合約執(zhí)行流程走一遍你肯定不信,我也不信,如果有人愿意幫我翻譯一遍的話可以從neo-vm/OpCode.cs這個文件中找到每條指令對應(yīng)的定義。我個人的話是感覺既然不想手擼avm腳本,那么知道這個東西是這么個過程就差不多了。

0x06 系統(tǒng)調(diào)用

在上一節(jié)貼出來的avm代碼中有三個syscall指令,分別帶著一個字節(jié)數(shù)組,其實通過IL代碼也能看出來這三個字節(jié)數(shù)組中存放的肯定就是系統(tǒng)調(diào)用的路徑了。可這個東西是如何來的呢?

  • 第一個syscall的地址是:781011114666108111991079910497105110467110111672101105103104116,對應(yīng)16進制的:4e656f2e426c6f636b636861696e2e476574486569676874,這個轉(zhuǎn)換為字符串就是Neo.Blockchain.GetHeight。
  • 第二個syscall的地址是:78101111466610811199107991049710511046711011167210197100101114,對應(yīng)16進制的:4e656f2e426c6f636b636861696e2e476574486561646572,翻譯出來就是Neo.Blockchain.GetHeader。
  • 第三個syscall地址是:7810111146721019710010111446711011168410510910111511697109112,對應(yīng)的16進制是:4e656f2e4865616465722e47657454696d657374616d70,翻譯出來是Neo.Header.GetTimestamp。

可以看出,系統(tǒng)調(diào)用的地址其實就是我們C#中調(diào)用的方法的路徑。這塊的構(gòu)造代碼如下:

源碼位置:neo/Compiler/MSIL/ModuleConverter/_ConverterCall(OpCode src,NeoMethod to)

var bytes = Encoding.UTF8.GetBytes(callname); if (bytes.Length > 252) throw new Exception("string is to long"); byte[] outbytes = new byte[bytes.Length + 1]; outbytes[0] = (byte)bytes.Length; Array.Copy(bytes, 0, outbytes, 1, bytes.Length); //bytes.Prepend 函數(shù)在 dotnet framework 4.6 編譯不過 _Convert1by1(VM.OpCode.SYSCALL, null, to, outbytes);

從代碼中可以看出來,這個syscall指令的地址長度最大只能有252字節(jié)。 調(diào)用這個syscall指令的代碼在nep-vm 的ExecuteEngine類里:

源碼位置:neo/vm/ExecuteEngine/ExecuteOp

case OpCode.SYSCALL:if (!service.Invoke(Encoding.ASCII.GetString(context.OpReader.ReadVarBytes(252)), this))State |= VMState.FAULT;break;

這里是調(diào)用了Invoke方法,并將系統(tǒng)調(diào)用的路徑傳過去,我們跟進去這個Invoke方法:

源碼位置:neo/vm/InteropService

internal bool Invoke(string method, ExecutionEngine engine) {if (!dictionary.ContainsKey(method)) return false;return dictionary[method](engine); }

可以看到這里是將地址作為key來從map中取對應(yīng)的方法來執(zhí)行。這個map里的內(nèi)容定義在智能合約的StateReader類中,這個類繼承了InteropService,并且在構(gòu)造方法中向dictionary中添加了元素:

源碼位置:neo/SmartContract/StateReader

public StateReader() {Register("Neo.Runtime.GetTrigger", Runtime_GetTrigger);Register("Neo.Runtime.CheckWitness", Runtime_CheckWitness);//省略N多RegisterRegister("Neo.Iterator.Next", Iterator_Next);Register("Neo.Iterator.Key", Iterator_Key);Register("Neo.Iterator.Value", Iterator_Value); }

至于這些系統(tǒng)調(diào)用方法的返回值,則由各個系統(tǒng)調(diào)用接收的ExecutionEngine對象獲取。

好啦,以上就是NEO VM的大概流程和原理,由于這個項目涉及的東西實在廣泛,文章不能詳盡之處萬望見諒。

轉(zhuǎn)載于:https://my.oschina.net/u/2276921/blog/1632561

總結(jié)

以上是生活随笔為你收集整理的NEO从源码分析看NEOVM的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

国产黄a三级三级 | 亚洲精选在线 | 成人国产综合 | 综合久久久久久久久 | av黄色在线播放 | 99这里都是精品 | 国产黄色成人av | 五月天久久激情 | 亚州免费视频 | 久久久99精品免费观看乱色 | 午夜a区 | 成人国产精品久久久 | 99久久精品国产欧美主题曲 | 久久精品99国产精品 | 久久久高清 | 日韩理论 | 亚洲精品国产精品国自产观看 | 精品免费观看 | 久久综合欧美 | 日韩中文字幕在线不卡 | 黄色毛片在线观看 | 丁香视频五月 | 奇米影音四色 | 狠狠躁日日躁狂躁夜夜躁av | 久久草在线精品 | 日韩精品一区二区三区免费观看视频 | 精品视频久久 | 日本中文字幕久久 | 天天想夜夜操 | 不卡中文字幕在线 | 色婷婷亚洲综合 | 国产99精品| a级国产乱理论片在线观看 伊人宗合网 | 欧美精品一级视频 | 国产精品免费av | 国产精品第10页 | 中文字幕你懂的 | 免费看的黄色小视频 | 色婷婷综合久久久中文字幕 | 婷婷五综合 | 久久99影院 | 9久久精品| 五月花激情 | 国产 字幕 制服 中文 在线 | 亚洲电影成人 | 天天曰天天射 | 亚洲最大成人免费网站 | 五月天久久久久久 | 日韩专区av| 久久久人| 五月婷婷久草 | 亚洲精品乱码白浆高清久久久久久 | 五月天丁香综合 | 国产中文字幕三区 | 三级av免费观看 | 国产高清亚洲 | 亚洲精品高清一区二区三区四区 | 亚洲另类在线视频 | 很黄很污的视频网站 | 国产原创在线视频 | 97成人超碰 | 色综合天天色综合 | 国产成人精品一区二区三区 | 久草在线免费资源站 | 69精品在线观看 | 91精品国产99久久久久久久 | 天天操天天干天天操天天干 | 欧美日韩在线观看视频 | 国产 在线 高清 精品 | 久久久久久久av | 丁香婷婷久久 | 久久五月天婷婷 | 精品久久久久久久久久久久久久久久久久 | av一级片 | 国产91aaa | 国产日韩欧美在线免费观看 | 色a资源在线 | 最近中文字幕高清字幕免费mv | 精品成人网 | 天天久久夜夜 | 黄色成年| 国产精品久久久久久久免费 | 一级特黄av| 亚洲欧美国内爽妇网 | 欧美性生活久久 | 国产精品毛片 | 二区三区精品 | 亚洲国产激情 | 97免费在线视频 | 1024手机基地在线观看 | 99在线观看 | 国产91学生粉嫩喷水 | 91av电影| 超薄丝袜一二三区 | 99热这里| 色婷婷婷 | 久久国产精彩视频 | 波多野结衣在线观看一区二区三区 | 免费网站色 | 亚洲精品欧美专区 | 日日夜精品 | 成年人免费观看在线视频 | www亚洲精品 | 亚州欧美视频 | 国产 视频 高清 免费 | 最近最新最好看中文视频 | 亚洲专区欧美专区 | 国产一区免费视频 | 亚洲精品男人的天堂 | av片子在线观看 | 99久视频 | 最近日韩中文字幕中文 | 高清不卡一区二区三区 | 精品乱码一区二区三四区 | 色综合久久66 | www.久久色 | 国产免费大片 | 国产色婷婷在线 | 91大片网站 | 国产中文字幕三区 | 四虎成人精品在永久免费 | 麻豆国产精品一区二区三区 | 日韩国产精品久久久久久亚洲 | 久久久综合九色合综国产精品 | 成人毛片在线观看 | 五月天堂网 | 日韩欧美精品一区二区 | www.伊人色.com | 在线免费试看 | 日韩精品久久一区二区 | 国产午夜精品久久久久久久久久 | 99热官网 | 久久亚洲视频 | 人人射人人澡 | 青青射| 欧美aaaxxxx做受视频 | 国产日产亚洲精华av | 韩国三级一区 | 中文字幕中文字幕 | 欧美日本国产在线观看 | 日韩在线视频免费播放 | 亚洲爱爱视频 | 日韩在线小视频 | 日韩不卡高清视频 | 国产精品午夜av | 亚洲高清视频一区二区三区 | 午夜久操| 久久综合婷婷综合 | jizz999| 欧美日韩色婷婷 | 啪啪免费观看网站 | 成人免费网站在线观看 | 91桃色在线观看视频 | 久久久久久久久黄色 | 99色网站 | www.夜夜爱| 日韩欧美综合在线视频 | 99精品视频中文字幕 | 黄色免费在线视频 | 国产99区 | 超碰在线人人97 | 欧美片网站yy | 91精品久久久久久久久 | 美女视频黄免费网站 | 国产精品久久久久久高潮 | 国产在线高清 | 亚洲视频网站在线观看 | 国产精品va视频 | av福利资源| 黄色www| 国产精品亚洲精品 | 欧美日韩一区二区三区在线免费观看 | 免费国产黄线在线观看视频 | 久草国产在线观看 | 欧美激情综合色综合啪啪五月 | 久久黄视频 | 日日干视频 | 中国黄色一级大片 | 偷拍精偷拍精品欧洲亚洲网站 | 亚洲影视九九影院在线观看 | 免费在线观看黄网站 | 久久久久久福利 | 996久久国产精品线观看 | 91九色蝌蚪视频在线 | 国产精品免费久久久 | www久| 国产成人一区三区 | 中文字幕免费久久 | 国产在线播放不卡 | 国产黄av | 在线观看国产区 | 国产精品一区二区免费 | www.99在线观看 | av在线观 | 久久成人精品视频 | 亚洲一区精品二人人爽久久 | 一二三精品视频 | 片黄色毛片黄色毛片 | 中文字幕不卡在线88 | 久久久久久久久久久久久久免费看 | 色婷婷色| 不卡电影一区二区三区 | 日韩电影在线一区二区 | 天天操天天曰 | av在线等 | 深夜国产在线 | 成人小视频在线播放 | 国产亚洲精品久久久久久 | 日韩激情久久 | 国产专区日韩专区 | 日韩黄色免费在线观看 | 亚洲精品视频在线观看免费视频 | 亚洲国产视频在线 | 国产精品亚州 | 欧美91在线 | 国产午夜精品免费一区二区三区视频 | 91av欧美| 久久精精品视频 | 婷婷综合五月天 | 黄色毛片一级片 | 九九九九精品九九九九 | 黄色免费大全 | 欧美专区亚洲专区 | 日韩午夜在线观看 | 一区二区三区在线免费播放 | 久久精品波多野结衣 | 在线播放精品一区二区三区 | 美女福利视频 | 99久久精品日本一区二区免费 | 色狠狠综合天天综合综合 | 手机成人免费视频 | 操操操com | 在线观看国产亚洲 | 免费黄色在线网站 | 成人国产精品免费观看 | 午夜国产在线观看 | 99久久99久久免费精品蜜臀 | 午夜精品麻豆 | 亚洲老妇xxxxxx| 久久久成人精品 | 亚洲精品动漫久久久久 | 久久精品99国产精品酒店日本 | 国产精品久久久亚洲 | 探花视频网站 | 丁香六月天婷婷 | 91精品日韩| 在线观看视频一区二区三区 | 亚洲国产日韩欧美 | 日日干干夜夜 | 九九九热精品免费视频观看网站 | 成年人毛片在线观看 | 午夜精品一区二区三区在线观看 | 国产精品99视频 | 99国产精品一区二区 | 久久人人爽人人 | 黄色大片网 | 狠狠干美女 | 日日天天狠狠 | 成人黄色电影在线观看 | av中文天堂 | 91丨九色丨国产在线观看 | 午夜精品视频一区二区三区在线看 | 国产亚洲精品中文字幕 | 久久亚洲美女 | 久久久久久国产精品亚洲78 | 日韩av影视| 亚洲精品国产精品乱码不99热 | 免费福利视频网 | 久久久久久久久久免费 | 四虎成人av | 91亚洲在线观看 | 一区二区三区免费在线观看视频 | 国产日韩精品在线观看 | 在线精品观看 | 99中文字幕视频 | 国产打女人屁股调教97 | 中文字幕在线观看视频网站 | av电影在线不卡 | 91在线视频免费播放 | 天天干天天草 | 久久久www免费电影网 | 五月婷婷在线视频观看 | 一级免费黄色 | 黄色免费观看网址 | va视频在线| 欧美日韩国产综合一区二区 | 91在线国产观看 | 91av美女| 久久影视一区 | 丁香婷婷综合激情 | 88av视频 | 黄色录像av | 中文一二区 | 国产亚洲精品久久久久久无几年桃 | 九九久久电影 | 精品国产99 | 国产精品theporn | 欧美久久久久 | 欧美韩日在线 | 欧美精品免费在线 | 樱空桃av| www激情网 | 探花视频免费在线观看 | 狠狠88综合久久久久综合网 | 亚洲国产精品一区二区尤物区 | 久久1电影院 | 美女久久 | 四虎国产精品免费观看视频优播 | 91欧美精品| 在线日本看片免费人成视久网 | 国产成人av电影在线观看 | 久久亚洲综合国产精品99麻豆的功能介绍 | 九九久久久久久久久激情 | mm1313亚洲精品国产 | 欧美日韩国产伦理 | 天天碰天天操 | 操久在线 | 夜夜骑日日 | 毛片网站在线看 | 91视频高清 | 欧美一区二区三区免费观看 | 99久久夜色精品国产亚洲96 | 久久精品一区二区三 | 天堂中文在线视频 | 日韩av中文字幕在线 | 久久国产精品免费看 | 国产午夜精品一区二区三区嫩草 | 亚洲精品免费视频 | 国产精品国产亚洲精品看不卡 | 五月婷婷在线综合 | 亚洲国产激情 | 亚洲 欧美日韩 国产 中文 | 欧美乱码精品一区二区 | 免费观看全黄做爰大片国产 | 久久av电影 | 黄色一集片 | 国产亚洲va综合人人澡精品 | 国际精品久久久久 | 国产视频亚洲精品 | 日韩成人看片 | 日日爽 | 亚洲无吗av | 少妇bbbb | 在线观看视频你懂的 | 99热 精品在线 | 中文字幕人成乱码在线观看 | 夜夜躁狠狠躁日日躁 | 91激情小视频 | 免费在线中文字幕 | 97视频亚洲 | 久久久www成人免费精品张筱雨 | 久久久毛片 | 狠狠躁日日躁狂躁夜夜躁 | 成人免费视频网址 | 欧美 日韩精品 | 久久精品99视频 | 天堂av网址| 99久久婷婷国产综合精品 | 亚洲精品动漫成人3d无尽在线 | 麻豆系列在线观看 | 亚洲成人av一区 | 99国产一区二区三精品乱码 | 精品视频免费观看 | av在线电影免费观看 | 久久久久久久久久久久久9999 | 一区二区在线影院 | 国产免费成人av | 麻豆一精品传二传媒短视频 | 伊人天堂网 | 高清中文字幕av | 亚洲精品1区2区3区 超碰成人网 | 色综合久久中文综合久久牛 | 国产免费人人看 | 日日久视频 | 亚洲最快最全在线视频 | 欧美在线视频精品 | 天天操天天射天天爱 | www.久久色| 啪嗒啪嗒免费观看完整版 | 九九久久精品视频 | 亚洲精品777| 丁香花中文在线免费观看 | 麻豆超碰 | 一级黄色片网站 | 国产一级大片在线观看 | 亚洲天堂在线观看完整版 | 中文字幕第一页在线 | 免费在线观看污网站 | 五月激情视频 | 超碰免费公开 | 国产精品久久久久永久免费观看 | 国产精品久久一区二区无卡 | 欧美日韩一区二区三区在线免费观看 | 国产淫片免费看 | 99精品欧美一区二区蜜桃免费 | 国产精品9999久久久久仙踪林 | 日韩电影一区二区三区 | 色.com| 色欧美88888久久久久久影院 | 男女视频久久久 | 日韩在线小视频 | 国产一区二区三区在线 | 九色在线 | 国产人成看黄久久久久久久久 | 国产馆在线播放 | 99久久er热在这里只有精品15 | www最近高清中文国语在线观看 | 在线观看v片 | 免费看片亚洲 | 免费三级a | 亚洲黄色激情小说 | 欧美综合色在线图区 | 狠狠色香婷婷久久亚洲精品 | 韩国av免费观看 | 国内精品在线观看视频 | 色久av | 日韩午夜在线观看 | 成人福利在线 | 日韩午夜一级片 | 日韩系列在线 | 九九热re| 一区二区高清在线 | 色国产视频 | 免费中午字幕无吗 | 婷婷九月激情 | 国产免费观看高清完整版 | 久久免费观看视频 | 亚洲成av| 日韩欧美精品在线视频 | 欧美日韩免费网站 | 91av九色 | 色综合久久综合中文综合网 | 久精品在线观看 | 亚洲免费一级电影 | 免费日韩三级 | 国产精品videoxxxx | 永久黄网站色视频免费观看w | 一区二区三区免费播放 | 日本公妇色中文字幕 | 国产成人av电影在线 | 成人网中文字幕 | 麻豆小视频在线观看 | 国产黄| 色综合亚洲精品激情狠狠 | 国产精品99久久久精品免费观看 | 在线中文字幕av观看 | 人人澡人人爽欧一区 | 久久婷婷久久 | 天天色综合三 | 免费观看日韩av | 久久精彩 | 五月婷婷.com| 18性欧美xxxⅹ性满足 | 国产精品一区二区你懂的 | 五月婷婷在线播放 | 亚洲精品免费在线视频 | 在线观看免费视频你懂的 | 91麻豆视频网站 | 天堂va在线观看 | 99日韩精品 | 日韩剧 | 欧美一区二区免费在线观看 | 91人人爽久久涩噜噜噜 | 一级a毛片高清视频 | www.97视频 | 久久激情精品 | 日日激情 | 国产综合精品一区二区三区 | 亚洲精品乱码久久久久v最新版 | www色com| 女人18毛片a级毛片一区二区 | 久久99国产精品久久99 | 精品国产一区二区三区久久久蜜月 | 岛国大片免费视频 | 日韩一区二区三区视频在线 | 青青草国产成人99久久 | 狠狠搞,com | 日日干综合 | av福利免费 | 伊人久久国产精品 | 亚洲免费在线播放视频 | 一色屋精品视频在线观看 | 久久久免费视频播放 | 成人黄大片 | 国产色女 | 特级毛片在线免费观看 | 国产视频一二三 | 成人av一区二区兰花在线播放 | 久草在线观看资源 | 在线观看91av | 综合久久影院 | 福利一区二区 | 亚洲欧美在线观看视频 | 8x8x在线观看视频 | 国产精品视频一二三 | 91av影视 | 日本久久精 | 超级碰碰免费视频 | 中文有码在线视频 | 精品国产理论 | 久草爱视频| 日本中文字幕网站 | 久久97超碰 | 色五月激情五月 | 天堂网中文在线 | 丁香九月激情 | 国产精品毛片完整版 | 国产精品久久久一区二区三区网站 | 免费精品视频在线观看 | 天堂网在线视频 | 久久久精品网 | 亚洲 欧美日韩 国产 中文 | 国产精品久久久区三区天天噜 | 色综合久久中文综合久久牛 | 久久精品视频18 | 成人在线视频在线观看 | 日韩欧美在线视频一区二区 | 日日摸日日碰 | 日韩av电影网站在线观看 | 国产最新在线观看 | 国产一级精品绿帽视频 | 亚洲激情久久 | 免费a网址 | 精品一区电影 | 西西444www | 99热在线精品观看 | 国产高清视频在线 | 日韩欧美综合 | 成人免费网站视频 | 亚洲成人免费在线观看 | 精品国产大片 | 国产亚洲精品久久久久久 | 在线 视频 亚洲 | 97日日碰人人模人人澡分享吧 | 天天干天天拍天天操天天拍 | 91精品国产高清 | 天天操欧美 | 久久精国产 | 国产午夜激情视频 | 91av小视频| 天天干天天射天天插 | 天天干天天做天天操 | 国产亚洲综合精品 | 国产黄色片免费看 | 日韩精品一区二区三区丰满 | 亚洲电影第一页av | 免费在线中文字幕 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 欧美日韩免费一区 | 欧美一级特黄aaaaaa大片在线观看 | 久久精品91久久久久久再现 | 久久久久国产一区二区三区四区 | 国产午夜精品av一区二区 | av在线一二三区 | 久久综合狠狠综合久久激情 | 欧美精品免费在线观看 | 欧亚日韩精品一区二区在线 | 一区二区精| 天天操偷偷干 | 久久国产系列 | 在线观看国产中文字幕 | 激情欧美xxxx| 中文字幕在线观看日本 | 97看片网| 99在线精品视频 | 婷婷成人亚洲综合国产xv88 | 国产黄色在线网站 | 99热精品免费观看 | 99精品电影 | 夜色资源网 | 丁香视频免费观看 | 麻豆91视频 | 亚洲理论电影 | 日韩精品视频在线观看网址 | 在线之家免费在线观看电影 | 曰韩在线 | 午夜丁香网 | 天天躁天天躁天天躁婷 | 91精品国产成 | 亚洲精品在线资源 | 亚洲最大av网 | 国产精品久久网 | 亚洲精品国产拍在线 | 久久亚洲欧美 | 日韩欧美v | 欧美精品一区二区三区一线天视频 | 91精品国产成人观看 | 精品中文字幕在线播放 | 久久久色| 99精品欧美一区二区三区 | 久久婷婷精品视频 | 黄色精品久久 | 久久久久久久综合色一本 | 日韩高清在线一区二区 | 日韩av一区二区三区在线观看 | 国产a级精品 | 中文字幕在线观看完整版电影 | 亚洲第一中文网 | 日韩欧美在线免费 | 成人欧美日韩国产 | 天天干夜夜 | 天天色天天综合 | 欧美日韩国产色综合一二三四 | 午夜精品一区二区三区在线视频 | 中文av不卡 | 天天草天天操 | 中文久久精品 | 亚洲在线网址 | 日躁夜躁狠狠躁2001 | 亚洲欧美国产精品va在线观看 | 99re8这里有精品热视频免费 | 日本精品视频在线播放 | 一区二区 不卡 | 日韩成人免费电影 | 午夜私人影院久久久久 | 欧美激情精品一区 | 韩国av在线| 日本三级全黄少妇三2023 | 亚洲精品18日本一区app | a在线免费 | 91人人爽久久涩噜噜噜 | 国产精品免费不卡 | 激情在线五月天 | 天堂av影院| 首页中文字幕 | av电影免费 | 日韩激情中文字幕 | 国产偷v国产偷∨精品视频 在线草 | 久草资源免费 | 开心激情五月婷婷 | 日韩高清一区在线 | 成年人视频在线 | 男女激情片在线观看 | 国产一区二区三区高清播放 | 97视频人人 | 一级做a视频 | 福利片视频区 | 久久精品视频在线观看免费 | 成人网在线免费视频 | 日韩欧美在线综合网 | 四虎在线视频免费观看 | 操久久免费视频 | 在线岛国av | 日韩免费一区二区三区 | 美女视频又黄又免费 | 国产日产精品一区二区三区四区的观看方式 | 天天天天色射综合 | 亚洲欧美经典 | 久久久久97国产 | 国产成人精品三级 | 久久久国产精品一区二区中文 | 在线观看黄网站 | 中文字幕在线日亚洲9 | 91精品视频免费 | 超碰在线98 | 国产精品18久久久久久不卡孕妇 | 中文在线最新版天堂 | 天天操天天操一操 | 一区二区三区视频在线 | 国产精品久久久久久久免费观看 | 2019中文在线观看 | 国产天天爽 | 久久天天操 | 欧美激情第一页xxx 午夜性福利 | 五月天久久综合网 | 免费观看视频的网站 | 一二三区高清 | 夜夜操天天 | 91精品视频观看 | 精品久久片 | 成年人视频免费在线播放 | 日韩精品一区二区在线观看视频 | 欧美激情xxxx| 天天色天天射天天干 | 天天爱天天色 | 午夜精品久久久久久久久久久 | 亚洲九九| 欧美91成人网 | 在线观看国产高清视频 | 西西444www大胆高清视频 | 精品国产成人av在线免 | 美女视频黄是免费的 | av久久在线 | 日韩av网站在线播放 | 午夜av电影 | 美女免费视频一区二区 | 国产精品男女啪啪 | 日韩欧美一区二区在线观看 | 欧美天天射 | 国产1区在线 | 亚洲精品午夜视频 | 久久99电影 | 国产精品免费观看网站 | 久久美女高清视频 | 亚洲第一成网站 | av黄色免费网站 | 日韩欧美国产视频 | 婷婷国产在线 | 一区二区欧美在线观看 | 精品国产资源 | 青草视频网 | 欧美日韩视频精品 | 久热电影 | 久久怡红院 | 欧美日韩不卡在线 | 中文字幕人成人 | 99操视频 | 亚洲h在线播放在线观看h | 久久久久久伊人 | 欧美一区三区四区 | 欧美精品在线一区 | 免费看片成人 | 欧美性久久久 | 四虎在线视频免费观看 | 国产一区欧美一区 | 看毛片网站 | 在线观看你懂的网址 | 91在线免费公开视频 | 国产中文字幕在线 | 五月婷丁香 | 99视频这里有精品 | 国产手机在线播放 | 欧美色噜噜噜 | 亚洲最大激情中文字幕 | 久久人91精品久久久久久不卡 | 国产精品视频区 | 国产精品99爱 | 国产亚洲情侣一区二区无 | 激情av一区二区 | 成人久久久久久久久久 | av成人免费观看 | 国产精品资源在线 | 天天操天天摸天天爽 | 色视频网址 | 丁香高清视频在线看看 | 欧美 日韩 性 | 麻豆一精品传二传媒短视频 | 在线观看久久 | www久久久 | 精品中文字幕在线播放 | 九九热免费观看 | 午夜视频在线网站 | 天天爽天天碰狠狠添 | 国产永久免费高清在线观看视频 | 天天干天天操天天入 | 成人免费观看网址 | 成人一级影视 | 婷婷免费在线视频 | 国产精品一区二区精品视频免费看 | 69人人 | 久久久久亚洲精品 | 久久高清免费 | www五月| 午夜狠狠操| 美女视频永久黄网站免费观看国产 | 91av视频免费观看 | 免费看污网站 | 免费一级特黄毛大片 | 亚洲码国产日韩欧美高潮在线播放 | 最新日本中文字幕 | 婷婷色亚洲| 久久高视频 | 麻豆成人在线观看 | 婷婷综合激情 | 97免费 | 国产中文字幕视频在线观看 | 嫩草av影院 | 亚洲高清在线观看视频 | 免费av在线网站 | 91在线视频播放 | 五月婷婷综合在线 | 国产在线观看你懂得 | 日韩sese| avav99| 美女视频又黄又免费 | 中文字幕大全 | 国产成人精品一区二区三区网站观看 | 久久久久久国产精品免费 | 成人午夜电影在线 | 一区免费视频 | 久久91久久久久麻豆精品 | 日韩二区三区在线 | 婷婷激情在线 | 欧美aaa一级 | 96久久精品 | 开心婷婷色 | 激情av资源 | a视频免费 | 日韩有码专区 | 成人aaa毛片 | 久久精品永久免费 | 久久你懂得 | 69精品久久 | 国产在线精品国自产拍影院 | 午夜精品av | 韩日电影在线观看 | 夜夜夜精品 | 成年人在线视频观看 | 国产剧情一区二区在线观看 | 美女免费网视频 | 国产精品久久久久久久久毛片 | 2023天天干 | 国产精品成人a免费观看 | 日韩电影中文字幕在线 | 国产精品久久久久久久久久久久午夜 | 国产99视频在线观看 | 久久综合日 | 亚洲电影一级黄 | 国产成人一区二区精品非洲 | 久草在线在线精品观看 | av福利第一导航 | 一级a性色生活片久久毛片波多野 | 狠狠的操你 | 99热官网| 日本99热 | 亚洲丁香日韩 | 九九在线精品视频 | 国产自制av | 色天天 | 免费一级片在线 | 91网址在线观看 | 亚洲专区在线视频 | 国产精品99蜜臀久久不卡二区 | 中文字幕电影网 | 亚洲成人黄色在线 | 亚洲 综合 国产 精品 | 一区二区电影在线观看 | 婷婷日 | 在线观看黄色免费视频 | 狠狠综合网 | 日韩在线网址 | 欧美激情综合网 | 不卡的av片 | 精品国产伦一区二区三区免费 | www.av在线.com| 欧美巨乳网 | 国产精品入口传媒 | 手机av在线免费观看 | 在线观看完整版免费 | 婷婷丁香六月天 | 99在线视频播放 | 夜夜夜夜夜夜操 | 国产成人一区二区三区久久精品 | 中文视频一区二区 | 97成人在线视频 | 天天综合网~永久入口 | 日韩一级成人av | 三级黄色片子 | 国产综合小视频 | 丁香激情综合国产 | 人人爽夜夜爽 | 大片网站久久 | 国产精品99久久久久久人免费 | 久久夜视频 | 麻豆91精品视频 | .国产精品成人自产拍在线观看6 | 国产精品大片 | 久久不卡国产精品一区二区 | 久久久久99精品国产片 | 欧美大荫蒂xxx | 日韩欧美国产视频 | 操操操操网 | 成人久久18免费网站图片 | 国产视频精品在线 | 手机版av在线 | 国产91学生粉嫩喷水 | 激情av综合 | 免费精品视频在线 | 国产黄色精品视频 | 精品二区久久 | 久久伊人免费视频 | 国产在线a不卡 | 日韩精品91偷拍在线观看 | 亚洲国产经典视频 | 中文字幕美女免费在线 | 正在播放国产91 | 91丨九色丨蝌蚪丨老版 | 一区二区激情 | 美女视频黄免费的 | 久草在线观看 | 极品中文字幕 | 亚洲h色精品 | 色就是色综合 | 91高清免费在线观看 | 香蕉视频久久 | 国产99久久九九精品免费 | av在线超碰 | 久久精品久久精品久久精品 | 女人魂免费观看 | 99久免费精品视频在线观看 | 国产精品18久久久久久久 | 欧美激精品 | 99热这里精品 | 日韩欧美在线第一页 | 97韩国电影 | 日一日干一干 | 免费网址你懂的 | 91人人澡 | 美女网站视频免费黄 | www178ccom视频在线 | 日韩免费在线观看网站 | 美女网站在线免费观看 | 五月婷婷天堂 | 国产精品大片在线观看 | 亚洲欧美日韩精品久久奇米一区 | jizz18欧美18 | 天天干天天干天天色 | 日本黄色免费网站 | 国产午夜在线观看 | 午夜成人免费影院 | 小草av在线播放 | 黄色片网站大全 | 国产精品国产三级在线专区 | 激情网站网址 | 97国产大学生情侣酒店的特点 | 草莓视频在线观看免费观看 | av一二三区 | 免费观看一区二区三区视频 | 97超视频 | 亚洲精品乱码久久久久久蜜桃91 | 色综合五月天 | 操操碰 | 久久亚洲精品电影 | 91精品免费看 | 国产综合小视频 | 九九视频免费 | 久久精品aaa | 二区三区在线视频 | 亚洲第一区在线播放 | 黄色国产在线 | 在线观看成人网 | 午夜a区| 在线v| 狠狠色香婷婷久久亚洲精品 | 亚洲精品乱码久久久久久9色 | 麻豆免费视频 | 国产高清在线观看av | 欧美一级免费黄色片 | 色a网 | 婷婷激情站 | 国产成人黄色在线 | 久久久 精品 | 美女国产在线 | 伊人久久精品久久亚洲一区 | 久久久久久久99精品免费观看 | 国产精品免费久久久 | 激情欧美一区二区免费视频 | 丝袜制服综合网 | 免费精品人在线二线三线 | 中文字幕色站 | 日本精品视频在线观看 | 久久久久国产精品免费免费搜索 | 黄色电影在线免费观看 | 日韩网站免费观看 | 国产视频1区2区3区 久久夜视频 | 色欧美88888久久久久久影院 | 久久久久久久久久久久av | 99精品视频一区二区 | 欧美大荫蒂xxx | 伊人网站 | 国产日本三级 | 亚洲精品天天 | 精品久久久久久国产 | 国产一级久久 | 中文字幕在线观看亚洲 | 婷婷色综合色 | 久久精品免费 | 国产乱对白刺激视频不卡 | 91精品在线观看视频 | 免费在线黄 | 婷婷深爱网 | av网站在线观看免费 | 91视频免费网站 | 久久人人爽人人爽 | 免费无遮挡动漫网站 | 欧美日韩综合在线 | 国产一线二线三线性视频 | 91精品国产乱码在线观看 | 日韩精品免费一区二区在线观看 | 日韩在线首页 | h动漫中文字幕 | 黄色视屏免费在线观看 | 狠狠色狠狠色合久久伊人 | 国产无遮挡猛进猛出免费软件 | 国产精品区在线观看 | 精品视频www | av网站在线免费观看 | 五月黄色 | 免费看一级黄色大全 | 日韩在线 一区二区 | 91精品国产91久久久久福利 | 国产91九色视频 | av免费福利| 久久撸在线视频 | 欧美激情视频一二三区 | 日韩精品一卡 | 国内成人精品视频 | 蜜臀久久99静品久久久久久 |