• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    語句分裂變更模式的定義及識別

    2020-08-31 06:13:40段衛(wèi)華楊春花
    智能計算機與應用 2020年4期
    關鍵詞:定義

    段衛(wèi)華, 楊春花

    (齊魯工業(yè)大學 計算機科學與技術學院, 濟南250353)

    0 引 言

    現(xiàn)代軟件的開發(fā)一般基于版本管理系統(tǒng)設計實現(xiàn),軟件工程師為了實現(xiàn)開發(fā)和維護的任務,每天都會提交大量的代碼變更,而這些變更往往會遵循一定的修改模式,如重構(gòu)(Refactoring)、缺陷修復(bug-fixing)和一些裝飾型(cosmetic)的修改模式等等。由于變更的日志描述往往反映不了變更的真正行為[1],因此對代碼變更的理解還需要人工審查變更代碼來確定。 日常代碼修改往往存在多種變更模式的重疊,如果將代碼變更模式進行識別,則可將各種模式的變更代碼區(qū)別開來,減少這些代碼之間的耦合,從而方便分析和理解軟件的演化過程。

    對于典型的重構(gòu)模式,M.Fowler[2]對其進行了系統(tǒng)的研究。 重構(gòu)的目的是優(yōu)化代碼中存在的一些不合理結(jié)構(gòu)(即代碼異味),而對代碼異味的檢測主要有人工檢測[3-4]和自動化檢測[5]2 種方式。 對于缺陷修復(bug-fixing)較為重要的研究方向就是對缺陷的檢測。 缺陷的檢測方法有:基于信息檢索技術的缺陷定位方法[6]和利用項目的歷史信息改進的缺陷檢測方法[7]等。 裝飾型修改的目的一般是規(guī)范代碼的編寫,所以不會影響整個軟件的作用,對其研究包括標識符重命名[8]和編程風格[9]的研究等。

    替換算法是將函數(shù)體中復雜的功能塊進行封裝,從而使函數(shù)體結(jié)構(gòu)更為簡潔清晰的重構(gòu)手法。 但在開發(fā)實踐中,常見將一條語句分裂成多條語句的代碼變更模式,即語句分裂變更模式。 該模式在代碼語句層面利用封裝思想優(yōu)化代碼語句結(jié)構(gòu)。 然而有些語句分裂變更類似于重構(gòu),不會改變語句行為,而有時又會像缺陷修復模式一樣改變語句行為。 因此,不能將該模式簡單歸類為重構(gòu)模式或是缺陷修復模式。

    本文對語句分裂變更模式進行了定義及識別研究,通過對大量的語句分裂變更模式實例進行人工觀察,分析總結(jié)出了2 種該模式常見的變更形式,并將其定義命名為拆分形式和替換形式,同時還設計并實現(xiàn)了2 種形式的識別算法。

    1 語句分裂變更模式

    代碼變更是指一個源代碼文件修改前后的兩個版本的差異。 目前,對變更的提取基本是借助于差異化分析工具來實現(xiàn)的,對語句分裂變更模式的定義是基于差異分析工具的輸出結(jié)果而制定的。

    1.1 差異分析工具

    目前使用的差異分析工具主要有:文本差異分析(Textual - Differencing) 和 樹 差 異 分 析(Tree -Differencing)。

    1.1.1 文本差異分析工具

    文本差異分析是將更改前后的源文件視為字符串,通過計算公共子序列來判別發(fā)生變動的文本,并將這些文本信息以及對應的行號以代碼變更塊(hunk)為單位輸出。 所以,hunk 實際上就是不同行的集合,其包括舊版本源文件的刪除行和新版本源文件的增加行,也可以只包含刪除行部分或增加行部分。

    常見的文本差異分析工具是diff。 其中, GNUDiff[10]推出了“合并格式”的Diff,2 個文件的上下文合并在一起顯示,并由“-”表示變動前的文件,“+”表示變動后的文件。 hunk 實例如圖1 所示,hunk 中左邊行號88 行為舊版本的刪除行,右邊行號88-89則為新版本的增加行。

    圖1 hunk 示例Fig.1 hunk example

    1.1.2 樹差異分析工具

    抽象語法樹(abstract syntax tree, AST)是一種源文件語法結(jié)構(gòu)的樹狀表現(xiàn)形式,而樹中的每一個節(jié)點都是由源代碼中的語句映射而來的。 通過對抽象語法樹的遍歷,可以準確獲得源代碼中的每一個節(jié)點信息。

    樹差異分析是通過對比修改前后源文件所對應的抽象語法樹,來獲取結(jié)構(gòu)化的變更信息,這些信息更有利于變更的分析。 最著名的基于抽象語法樹差異分析工具是Change-Distiller[11],其可以獲得一個文件變更前后所有的代碼變更類型。 這是Fluri 等人編寫的一個Tree differ 算法,對變更前后抽象語法樹進行對比,獲取分類的變更。 同時,也可以區(qū)別多種方法類型的變化或類等級上的變化。

    1.2 語句分裂變更模式的定義

    語句分裂變更模式包含拆分和替換兩種形式,而對于這2 種形式的研究是以文本差異分析工具輸出的代碼變更塊(hunk)為單位的,所以要對hunk進行定義。

    定義1代碼變更塊hunk 可以用四元組h =<L-,L+,R-,R+>的形式來表示。 其中, L-和L+分別代表刪除行和增加行的文本內(nèi)容, R-和R+分別代表刪除行和增加行的行號范圍。

    基于上述hunk 的定義并結(jié)合2 種形式的文本特征,來定義拆分形式和替換形式的語句分裂變更模式。

    定義2拆分形式的語句分裂變更模式可以用三元組<h,s,s’1 ~s’n>的形式表示。 在h 中,?語句s∈L-∧語句s’1~s’n∈L+。 在此需滿足:

    (1)s 是一條存在傳遞賦值的賦值語句。

    (2)s’1 ~s’n 是由s 拆分而來的多條賦值語句。 拆分形式實例如圖2 所示。 其中,刪除行872行為傳遞賦值語句,增加行872-873 行為拆分后得到的兩個賦值語句。

    圖2 拆分形式Fig.2 Split form

    定義3替換形式的語句分裂變更模式是一個四元組<h,s,v,s’>。 在一個h 中,?語句s∈L-∧語句v∈L+∧語句s’∈L+。 此時需滿足:

    (1)v 是一條變量賦值語句。

    (2)s’是由語句v 中的變量替換語句s 中部分內(nèi)容或直接添加到語句s 中而得來的。

    替換形式實例如圖3 所示。 其中:刪除行398 為語句s;增加行402 為變量賦值語句v,404 行為語句v中 的 變 量 extensionComponents, 替 換 語 句s 中getPlugExtensionComponents(plugin)而得到的語句s’。

    圖3 替換形式Fig.3 Replacement form

    1.3 語句分裂變更模式的抽象語法樹節(jié)點變化特征

    語句分裂變更模式的識別,要借助于抽象語法樹節(jié)點變化特征的分析。 抽象語法樹的每一層結(jié)構(gòu)被稱做節(jié)點(Node),一個AST 可以由單一節(jié)點或多個節(jié)點構(gòu)成,每個節(jié)點包含了type(類型)和location(位置信息)。 抽象語法樹的節(jié)點類型分為:語句(Statement) 類、 表 達 式(Expression) 類、 聲 明(Declaration)類等。 節(jié)點的位置信息包括起始位置(被解析的源區(qū)域的第一個字符的位置)和結(jié)束位置(被解析的源區(qū)域之后的第一個字符的位置)。

    假設在一個hunk:<L-,L+,R-,R+>中,刪除行L-和增加行L+所包含的全部節(jié)點集合分別為N-與N+。

    根據(jù)定義2 的拆分形式存在以下語法特征:

    (1)N-中一定存在至少一個賦值語句類型的節(jié)點,且其包含賦值語句類型的子節(jié)點(對應上述定義2 中的語句s)。

    (2)N+中一定存在至少2 個賦值語句類型的節(jié)點(對應上述定義2 中的語句s’1 ~s’n),并且這些節(jié)點的子節(jié)點要包含(1)中賦值語句節(jié)點的所有子節(jié)點,以確保N+中的多個賦值語句是由N-中的賦值語句拆分得來的。

    根據(jù)定義3 的替換形式存在以下語法特征:

    (1)N+比N-多一個變量賦值節(jié)點(對應上述定義3 中的語句v);

    (2)N-與N+存在相同類型的語句節(jié)點(對應上述定義3 中的語句s 與s’),并且N+中的語句節(jié)點的子節(jié)點信息中要包含(1)中變量賦值節(jié)點的變量名信息。

    2 語句分裂變更模式識別

    本文根據(jù)語句分裂變更模式所呈現(xiàn)出的語法特征,設計了該模式的識別算法。 該算法首先在文本層面以hunk 為單位,提取出一次更改前后兩個版本源文件之間所有的變更信息;經(jīng)初步篩選后,再根據(jù)hunk 所包含的語法樹節(jié)點信息逐一分析是否包含了語句分裂變更模式的2 種常見形式;最后將包含語句分裂變更模式拆分形式的hunk 以三元組<h,s,s’1~s’n>的形式存入集合PS,將包含替換形式的hunk 以四元組<h,o-,m,c>的形式存入集合PR。算法部分偽代碼如下所示:

    輸入:同一文件的一次更改前后2 個版本的源文件Fileold 和Filenew。

    輸出:拆分形式語句分裂變更模式的hunk 集PS與替換形式的語句分裂變更模式的hunk 集PR。

    算法第1 行使用diff 工具獲得兩個源文件的hunk 集合H;第2 行使用filter() 函數(shù)得到整體范圍較小的hunk 的集合H’;第3 行使用parser 工具分別構(gòu)造兩個目標文件的抽象語法樹(A,A’);第5 行使用fetchNodes() 函數(shù)獲得hunk 的刪除行和增加行包含的節(jié)點信息集合N - 和N +; 第6、7 行使用checkSplit() 函數(shù)識別拆分形式,并以三元組<h,s,s’1~s’n>的形式存入集合PS 中;第8~16 行判斷替換形式。 對判斷替換形式偽代碼部分的說明:首先利用findVarDefine() 函數(shù)獲取hunk 中變量聲明節(jié)點V,并通過getVarName() 函數(shù)獲得新聲明變量的變量名集合M,使用getSameTypeNode() 函數(shù)找出與N -與N +中相同類型節(jié)點的集合(O -,O +);第12 行使用getChildNodesAsString()函數(shù)獲得集合O +中每個節(jié)點的子節(jié)點信息集合C;第13 行使用contains()函數(shù)判斷字符串C 是否至少包含一個集合M 中的字符序列,以確定分裂后的原句中存在新變量的變量名;第14 行滿足上述條件的hunk 以四元組<h,o-,m,c>的形式存入集合PR 中。 此算法的輸出結(jié)果中,變量o-、m 和c 分別替代了定義3 中的語句s、語句v 和語句s’。 變量h 表示一個四元組<L-,L+,R-,R+>;變量o-是集合O-中的元素,代表語句s 的節(jié)點信息;變量m 是集合M 中的元素,代表語句v 的新變量變量名;語句s 被m 替換部分內(nèi)容后變?yōu)檎Z句s’;變量c 是集合C 中的元素,代表語句s’的節(jié)點信息。

    3 算法實現(xiàn)與驗證

    該算法基于Java 編程語言實現(xiàn),算法使用文本差異分析工具Gnu Differ 來提取變更,并使用Java Parser 工具構(gòu)造2 個源文件的抽象語法樹,最后在4個開源項目上進行了驗證。 具體研究內(nèi)容如下。

    3.1 數(shù)據(jù)源

    利用Minigit3 工具從Git Hub 項目托管平臺中抓取一定時間內(nèi)4 個開源項目的版本變更歷史數(shù)據(jù)作為源數(shù)據(jù)集。

    (1)eclipseJDTCore4 開源項目,是針對Java 的集成開發(fā)環(huán)境。

    (2) mavens 開源項目,是通過信息描述來管理項目的構(gòu)建、報告和文檔的開源管理工具。

    (3)jEdit6 開源項目,是跨平臺的文本編輯器。

    (4)google-guice7 是輕量級的依賴注入容器。

    表1 列出了上述4 個源數(shù)據(jù)集各自所包含更改提交的次數(shù)和4 個項目的文件數(shù),每次更改的提交會涉及到對多個文件的更改。

    表1 4 個源數(shù)據(jù)集的提交更改的次數(shù)和文件數(shù)Tab.1 Number of commit changes and files for four source datasets

    3.2 實驗結(jié)果分析

    3.2.1 算法對人工篩選hunk 集的識別

    經(jīng)人工篩選4 個源數(shù)據(jù)集,并且得到包含語句分裂變更模式的hunk 集后,用識別算法去識別人工篩選出的hunk 集,目的是驗證識別算法的準確率,實驗結(jié)果見表2。

    表2 識別算法識別人工數(shù)據(jù)集結(jié)果Tab.2 Experimental results of recognition algorithm identifying artificial data set

    由表2 可見,該識別算法在識別人工篩選數(shù)據(jù)集時的準確率在81%~89%之間波動。 由于在人工篩選過程中,包含語句分裂變更模式的hunk 行數(shù)一般較少,所以識別算法中篩掉了一些行數(shù)較多的hunk,這樣做可提升算法的效率,但導致識別算法的準確率沒有達到最高水平。

    3.2.2 算法對4 個源數(shù)據(jù)集的識別

    在上述實驗結(jié)果的基礎上,利用識別算法對4個源數(shù)據(jù)集進行識別,并將輸出的hunk 集進行人工篩查,去除其中可能存在的非語句分裂變更模式的hunk。 表3 列出了識別算法所檢測到的hunk 的個數(shù),以及人工篩查后留下的真正包含語句分裂變更模式的hunk 的個數(shù)及準確率。

    表3 識別算法識別4 個源數(shù)據(jù)集的實驗結(jié)果Tab.3 Experimental results of identification algorithm identifying four source data sets

    由表3 可見,識別算法識別4 個源數(shù)據(jù)集的準確率在71%~80%之間波動。

    對結(jié)果分析可知,識別算法的輸出結(jié)果中存在非語句分裂變更模式的hunk 的原因主要是:在識別替換模式時,要查找hunk 的刪除行和增加行中相類型的語句,并且增加行中的語句要包含新聲明的變量,但類型相同并不一定能保證增加行的語句是由刪除行的語句變化得來的。 即使增加行的語句包含了新變量,也不能說明其與刪除行語句本質(zhì)上是同一條語句,所以并不能保證一定是替換形式,這種情況多發(fā)生于return 語句的變更中。

    圖4 是一個算法輸出的hunk。 其中刪除行和增加行包含了同種類型的return 語句,且1 841 行的return 語句包含了1 839 行新聲明的變量clone。 但從clone 的賦值內(nèi)容來看,顯然與1 832 行return 語句的內(nèi)容不同。 因而算法識別出的這兩個相同類型的return 語句,從本質(zhì)上并不是同一條語句。 所以,此hunk 不能作為語句分裂變更模式的實例。

    圖4 特例展示Fig.4 Special case display

    3.3 實驗結(jié)論

    (1)由語句分裂變更模式的2 個形式進行比較可知,該模式大多情況都是以替換形式出現(xiàn)的,拆分形式只為極少數(shù)。

    (2)由各項目所包含的語句分裂變更模式的hunk 個數(shù)對比可知,變更提交次數(shù)和文件數(shù)越多的項目,包含該模式的hunk 就越多。 說明語句分裂變更模式的出現(xiàn)次數(shù),與項目屬性和更改提交者的個人習慣等因素關系較小。 項目規(guī)模越是龐大,該模式出現(xiàn)的次數(shù)就越多。

    4 結(jié)束語

    本文通過人工篩選的數(shù)據(jù)歸納,總結(jié)了語句分裂變更模式的特征,制定了該模式的定義,并且設計了基于該模式語法特征和以hunk 為識別單位的語句分裂變更模式的識別算法。 分別在人工篩選的數(shù)據(jù)集和4 個開源項目的源數(shù)據(jù)集上進行了算法的驗證,并由實驗結(jié)果得到了一些結(jié)論。 后續(xù)工作還需要對識別出來的語句分裂變更模式進行更為細致的分類,即對語句分裂變更過程中各個部分伴隨的一些變化進行分析,以便更加深入的了解語句分裂變更模式;另外還需要考慮到行數(shù)較多的hunk 或多個hunk 之間存在語句分裂變更模式的情況,并盡可能的對此類復雜情況進行研究分析。

    猜你喜歡
    定義
    以愛之名,定義成長
    活用定義巧解統(tǒng)計概率解答題
    例談橢圓的定義及其應用
    題在書外 根在書中——圓錐曲線第三定義在教材和高考中的滲透
    永遠不要用“起點”定義自己
    海峽姐妹(2020年9期)2021-01-04 01:35:44
    嚴昊:不定義終點 一直在路上
    華人時刊(2020年13期)2020-09-25 08:21:32
    定義“風格”
    成功的定義
    山東青年(2016年1期)2016-02-28 14:25:25
    有壹手——重新定義快修連鎖
    修辭學的重大定義
    當代修辭學(2014年3期)2014-01-21 02:30:44
    国内久久婷婷六月综合欲色啪| 亚洲国产精品sss在线观看| 变态另类成人亚洲欧美熟女 | 亚洲精品久久成人aⅴ小说| 在线视频色国产色| 1024香蕉在线观看| 欧美老熟妇乱子伦牲交| 丰满的人妻完整版| 欧美日本亚洲视频在线播放| 国产不卡一卡二| 免费看a级黄色片| 亚洲,欧美精品.| 中文字幕另类日韩欧美亚洲嫩草| 国产午夜精品久久久久久| 亚洲精品国产精品久久久不卡| 午夜福利欧美成人| 国产三级在线视频| 波多野结衣高清无吗| 国产三级在线视频| 国产主播在线观看一区二区| 国产精品,欧美在线| 久久久水蜜桃国产精品网| 成人免费观看视频高清| 黑丝袜美女国产一区| 一个人免费在线观看的高清视频| 丝袜美腿诱惑在线| 亚洲狠狠婷婷综合久久图片| 国产高清有码在线观看视频 | 啦啦啦免费观看视频1| 精品国产乱码久久久久久男人| 一区在线观看完整版| 人人澡人人妻人| 国产亚洲精品久久久久久毛片| 婷婷六月久久综合丁香| 亚洲五月婷婷丁香| 免费观看精品视频网站| 一区二区三区高清视频在线| 91成年电影在线观看| 国产极品粉嫩免费观看在线| 国产熟女xx| 乱人伦中国视频| 变态另类丝袜制服| 国产麻豆成人av免费视频| 啦啦啦韩国在线观看视频| 亚洲一区二区三区色噜噜| 免费在线观看完整版高清| 日本 欧美在线| 亚洲精品国产一区二区精华液| 欧美 亚洲 国产 日韩一| 久久久国产欧美日韩av| 叶爱在线成人免费视频播放| 国产97色在线日韩免费| 国产成人精品久久二区二区免费| 欧美一区二区精品小视频在线| 18禁国产床啪视频网站| 亚洲人成电影观看| 国产aⅴ精品一区二区三区波| 在线观看66精品国产| av视频免费观看在线观看| 国产成人精品无人区| 亚洲男人的天堂狠狠| 亚洲午夜精品一区,二区,三区| 精品国产一区二区三区四区第35| 18禁美女被吸乳视频| 欧美中文日本在线观看视频| 美国免费a级毛片| 国产亚洲精品第一综合不卡| 国产精品av久久久久免费| av片东京热男人的天堂| 91在线观看av| 人人妻人人澡欧美一区二区 | 亚洲成人免费电影在线观看| 午夜免费观看网址| 久久亚洲真实| 午夜久久久在线观看| 国产精品一区二区精品视频观看| 亚洲精品久久成人aⅴ小说| 日本 欧美在线| 亚洲精品国产色婷婷电影| 黑人欧美特级aaaaaa片| 两性午夜刺激爽爽歪歪视频在线观看 | 免费看十八禁软件| 国产精品一区二区在线不卡| 亚洲电影在线观看av| 深夜精品福利| tocl精华| 日日夜夜操网爽| 好男人电影高清在线观看| 亚洲av电影在线进入| 免费在线观看亚洲国产| 女人爽到高潮嗷嗷叫在线视频| 午夜福利18| 亚洲精品中文字幕一二三四区| 熟女少妇亚洲综合色aaa.| 九色亚洲精品在线播放| 色综合亚洲欧美另类图片| 大香蕉久久成人网| 精品国产乱子伦一区二区三区| 一区二区三区高清视频在线| 国产精品爽爽va在线观看网站 | 亚洲精品国产一区二区精华液| 国产精品1区2区在线观看.| 国产精品久久久久久精品电影 | 淫妇啪啪啪对白视频| 12—13女人毛片做爰片一| 国产精品日韩av在线免费观看 | 日韩欧美一区视频在线观看| 欧美成人一区二区免费高清观看 | 大陆偷拍与自拍| 国产单亲对白刺激| 老司机在亚洲福利影院| 国产精品久久久人人做人人爽| 午夜免费激情av| 夜夜躁狠狠躁天天躁| 国产欧美日韩一区二区三区在线| 露出奶头的视频| 国产亚洲欧美98| 久久精品亚洲熟妇少妇任你| 精品一品国产午夜福利视频| 久久精品91无色码中文字幕| 两个人看的免费小视频| 欧美一区二区精品小视频在线| 免费高清在线观看日韩| 可以免费在线观看a视频的电影网站| 久久久久国产精品人妻aⅴ院| 一区二区日韩欧美中文字幕| 男人的好看免费观看在线视频 | 久久午夜综合久久蜜桃| 每晚都被弄得嗷嗷叫到高潮| 一个人免费在线观看的高清视频| 欧美日韩福利视频一区二区| 欧美日韩亚洲国产一区二区在线观看| 九色亚洲精品在线播放| 搡老岳熟女国产| 午夜亚洲福利在线播放| www.精华液| 日本黄色视频三级网站网址| 黄色视频不卡| 性少妇av在线| 曰老女人黄片| 欧美老熟妇乱子伦牲交| 一进一出抽搐动态| 老司机深夜福利视频在线观看| 一区二区日韩欧美中文字幕| 后天国语完整版免费观看| 色播在线永久视频| 美女免费视频网站| 18禁裸乳无遮挡免费网站照片 | 久久精品亚洲熟妇少妇任你| 国产精品久久久久久精品电影 | 成人精品一区二区免费| 亚洲欧美日韩无卡精品| 18美女黄网站色大片免费观看| 怎么达到女性高潮| 亚洲精品在线观看二区| а√天堂www在线а√下载| 久久伊人香网站| 身体一侧抽搐| 国产精品精品国产色婷婷| 色av中文字幕| 亚洲精品国产区一区二| 露出奶头的视频| 成人亚洲精品av一区二区| 午夜两性在线视频| 琪琪午夜伦伦电影理论片6080| 在线av久久热| 黄色成人免费大全| 国产三级黄色录像| 久久久久国产一级毛片高清牌| 久热爱精品视频在线9| 变态另类丝袜制服| 大码成人一级视频| 亚洲电影在线观看av| 天天添夜夜摸| www.精华液| 国产精品综合久久久久久久免费 | 波多野结衣巨乳人妻| 一级a爱片免费观看的视频| 午夜免费激情av| 亚洲av成人一区二区三| 欧美黑人精品巨大| 久99久视频精品免费| 亚洲自偷自拍图片 自拍| 18禁国产床啪视频网站| 久久这里只有精品19| 成年版毛片免费区| 天堂√8在线中文| 精品久久蜜臀av无| 成人特级黄色片久久久久久久| 国产成人精品在线电影| 免费久久久久久久精品成人欧美视频| 精品一区二区三区视频在线观看免费| 久久久精品欧美日韩精品| 国产精品永久免费网站| 午夜福利高清视频| 久久久久久久精品吃奶| 可以在线观看毛片的网站| 亚洲国产毛片av蜜桃av| 国产亚洲av嫩草精品影院| 91在线观看av| 国产私拍福利视频在线观看| x7x7x7水蜜桃| 国产精品99久久99久久久不卡| 亚洲精品美女久久av网站| 精品午夜福利视频在线观看一区| 在线观看66精品国产| 一个人免费在线观看的高清视频| 亚洲第一电影网av| 亚洲 国产 在线| 亚洲国产精品成人综合色| 日日夜夜操网爽| av欧美777| 人人妻人人澡人人看| 老司机在亚洲福利影院| 香蕉久久夜色| 宅男免费午夜| 欧美黄色淫秽网站| 欧美成人午夜精品| 精品午夜福利视频在线观看一区| 如日韩欧美国产精品一区二区三区| 19禁男女啪啪无遮挡网站| 国内毛片毛片毛片毛片毛片| 国内精品久久久久久久电影| 亚洲精品av麻豆狂野| 亚洲欧美日韩另类电影网站| 欧美性长视频在线观看| 日韩欧美一区视频在线观看| 欧美乱妇无乱码| 91老司机精品| 精品国产超薄肉色丝袜足j| 免费少妇av软件| 国产高清有码在线观看视频 | 亚洲av成人不卡在线观看播放网| av网站免费在线观看视频| 免费在线观看日本一区| 亚洲国产精品999在线| 亚洲一卡2卡3卡4卡5卡精品中文| 亚洲一区中文字幕在线| 女性生殖器流出的白浆| 欧美国产日韩亚洲一区| av天堂在线播放| 大香蕉久久成人网| 女性被躁到高潮视频| 国产黄a三级三级三级人| 日韩欧美在线二视频| 神马国产精品三级电影在线观看 | 大型av网站在线播放| 亚洲精品av麻豆狂野| 日韩欧美一区二区三区在线观看| av片东京热男人的天堂| 亚洲精品国产区一区二| 久久亚洲真实| 欧美乱码精品一区二区三区| 亚洲成av片中文字幕在线观看| 欧美另类亚洲清纯唯美| 波多野结衣高清无吗| 青草久久国产| 免费无遮挡裸体视频| 亚洲性夜色夜夜综合| 高潮久久久久久久久久久不卡| av在线播放免费不卡| 热99re8久久精品国产| 一区二区三区激情视频| 日日干狠狠操夜夜爽| 麻豆一二三区av精品| 免费av毛片视频| bbb黄色大片| 一级毛片精品| e午夜精品久久久久久久| 国产99久久九九免费精品| 午夜精品国产一区二区电影| 久久久久久大精品| 久久久久久亚洲精品国产蜜桃av| 丁香六月欧美| 一边摸一边做爽爽视频免费| 一进一出好大好爽视频| 国内毛片毛片毛片毛片毛片| 国产97色在线日韩免费| 免费无遮挡裸体视频| 国产免费av片在线观看野外av| 国产av精品麻豆| 精品午夜福利视频在线观看一区| 侵犯人妻中文字幕一二三四区| 国产一卡二卡三卡精品| 久久久久久久精品吃奶| 熟女少妇亚洲综合色aaa.| 老汉色∧v一级毛片| 99国产综合亚洲精品| 97超级碰碰碰精品色视频在线观看| 欧美日本视频| 亚洲第一av免费看| 午夜福利在线观看吧| 黑人欧美特级aaaaaa片| 嫩草影视91久久| 性色av乱码一区二区三区2| 亚洲国产中文字幕在线视频| 亚洲专区国产一区二区| 亚洲成av片中文字幕在线观看| 国产成人一区二区三区免费视频网站| 无限看片的www在线观看| av视频免费观看在线观看| 欧美色视频一区免费| 黑人操中国人逼视频| 精品一品国产午夜福利视频| 一级作爱视频免费观看| 搞女人的毛片| 成人免费观看视频高清| 精品国内亚洲2022精品成人| 国产一卡二卡三卡精品| 欧洲精品卡2卡3卡4卡5卡区| 国产精品久久久av美女十八| 精品国产一区二区久久| 一进一出抽搐gif免费好疼| 黄片大片在线免费观看| 9热在线视频观看99| 91av网站免费观看| 韩国av一区二区三区四区| 在线天堂中文资源库| 黄色丝袜av网址大全| av欧美777| 婷婷丁香在线五月| 波多野结衣av一区二区av| 国产麻豆成人av免费视频| 免费在线观看影片大全网站| 禁无遮挡网站| 少妇 在线观看| 99国产精品一区二区蜜桃av| 免费在线观看视频国产中文字幕亚洲| 叶爱在线成人免费视频播放| 精品久久久久久久人妻蜜臀av | 欧美成狂野欧美在线观看| 国产精品免费视频内射| 国内毛片毛片毛片毛片毛片| 国产亚洲精品av在线| www.999成人在线观看| xxx96com| 国产免费av片在线观看野外av| 亚洲男人的天堂狠狠| 丁香欧美五月| 少妇的丰满在线观看| 男女午夜视频在线观看| 97超级碰碰碰精品色视频在线观看| 亚洲成人免费电影在线观看| 18禁裸乳无遮挡免费网站照片 | 亚洲 欧美 日韩 在线 免费| 麻豆av在线久日| 亚洲av五月六月丁香网| 国产成人精品无人区| 欧美乱色亚洲激情| 俄罗斯特黄特色一大片| 精品卡一卡二卡四卡免费| 国产亚洲欧美在线一区二区| 亚洲欧美日韩高清在线视频| 亚洲av成人av| 日韩大尺度精品在线看网址 | 日日爽夜夜爽网站| 亚洲精品国产精品久久久不卡| 国产99久久九九免费精品| 天堂√8在线中文| 一级毛片女人18水好多| 欧美黑人欧美精品刺激| 精品第一国产精品| 久久精品国产亚洲av香蕉五月| 亚洲国产中文字幕在线视频| 日本 av在线| 国语自产精品视频在线第100页| 久久精品影院6| 免费在线观看日本一区| 亚洲熟妇熟女久久| 日日夜夜操网爽| 国产一区二区激情短视频| 日日爽夜夜爽网站| 欧美日韩中文字幕国产精品一区二区三区 | 麻豆成人av在线观看| 亚洲精华国产精华精| 一级黄色大片毛片| 一区二区三区精品91| 激情视频va一区二区三区| 一区二区三区精品91| 国产午夜福利久久久久久| 欧美成狂野欧美在线观看| 久久婷婷成人综合色麻豆| tocl精华| 纯流量卡能插随身wifi吗| 国产精品美女特级片免费视频播放器 | 香蕉丝袜av| 精品久久久精品久久久| 亚洲九九香蕉| 日韩国内少妇激情av| 一夜夜www| 欧美激情久久久久久爽电影 | 亚洲精品国产区一区二| 99香蕉大伊视频| 午夜福利高清视频| 久久这里只有精品19| 神马国产精品三级电影在线观看 | 亚洲成av人片免费观看| 麻豆一二三区av精品| 亚洲av美国av| 亚洲国产看品久久| 91国产中文字幕| 精品高清国产在线一区| 国产一卡二卡三卡精品| 精品久久久久久成人av| 国产精品久久久久久亚洲av鲁大| 制服诱惑二区| 手机成人av网站| 丝袜美腿诱惑在线| 欧美大码av| 国产三级在线视频| 真人一进一出gif抽搐免费| 亚洲午夜精品一区,二区,三区| videosex国产| 亚洲在线自拍视频| 国产又色又爽无遮挡免费看| 午夜老司机福利片| 精品一区二区三区视频在线观看免费| 亚洲aⅴ乱码一区二区在线播放 | 国产精品爽爽va在线观看网站 | e午夜精品久久久久久久| 中文亚洲av片在线观看爽| 免费人成视频x8x8入口观看| 欧美精品亚洲一区二区| 黄片大片在线免费观看| 国产精品综合久久久久久久免费 | 免费在线观看影片大全网站| 久久久精品国产亚洲av高清涩受| 91成人精品电影| 一卡2卡三卡四卡精品乱码亚洲| 黄色女人牲交| 国产在线精品亚洲第一网站| 天堂√8在线中文| 国产成人精品久久二区二区免费| 欧美激情高清一区二区三区| 免费在线观看日本一区| 国产精品久久久人人做人人爽| 久久久久久人人人人人| 给我免费播放毛片高清在线观看| 午夜精品国产一区二区电影| 国产97色在线日韩免费| 日韩精品免费视频一区二区三区| xxx96com| 精品久久久久久久毛片微露脸| 国产成+人综合+亚洲专区| 色播亚洲综合网| 欧美成人午夜精品| 精品熟女少妇八av免费久了| 村上凉子中文字幕在线| 欧洲精品卡2卡3卡4卡5卡区| 亚洲精品美女久久久久99蜜臀| 一区二区三区国产精品乱码| 满18在线观看网站| 亚洲三区欧美一区| 女警被强在线播放| 亚洲欧美日韩无卡精品| 国内久久婷婷六月综合欲色啪| 男女床上黄色一级片免费看| 色综合婷婷激情| 搡老妇女老女人老熟妇| 精品不卡国产一区二区三区| 中文字幕人妻熟女乱码| 亚洲欧美日韩无卡精品| 国产精品一区二区在线不卡| 久久久久久大精品| 色老头精品视频在线观看| 桃红色精品国产亚洲av| 欧美+亚洲+日韩+国产| 精品欧美一区二区三区在线| 欧美黄色片欧美黄色片| 久久久久久久久中文| 满18在线观看网站| 亚洲国产高清在线一区二区三 | 色综合欧美亚洲国产小说| 国产私拍福利视频在线观看| 久久久久久久久中文| 亚洲av熟女| 久久香蕉精品热| 18禁黄网站禁片午夜丰满| 免费少妇av软件| 久久人妻av系列| 久久久久久大精品| 老熟妇乱子伦视频在线观看| 久久九九热精品免费| 乱人伦中国视频| 免费久久久久久久精品成人欧美视频| 老汉色av国产亚洲站长工具| 日韩国内少妇激情av| 一本久久中文字幕| 国产精品影院久久| 国产av一区在线观看免费| 久久香蕉国产精品| 美女国产高潮福利片在线看| 久久午夜亚洲精品久久| 男人舔女人的私密视频| 精品欧美一区二区三区在线| 中文字幕人妻丝袜一区二区| 欧美绝顶高潮抽搐喷水| 桃红色精品国产亚洲av| 精品人妻1区二区| 午夜成年电影在线免费观看| 女生性感内裤真人,穿戴方法视频| 99国产精品一区二区三区| 丝袜人妻中文字幕| 亚洲伊人色综图| 欧美国产日韩亚洲一区| 色综合站精品国产| 色老头精品视频在线观看| 真人一进一出gif抽搐免费| 波多野结衣av一区二区av| 国产aⅴ精品一区二区三区波| 露出奶头的视频| 亚洲精品一卡2卡三卡4卡5卡| 日韩有码中文字幕| 免费少妇av软件| 国产成人av激情在线播放| 欧美激情高清一区二区三区| 精品国产超薄肉色丝袜足j| 十分钟在线观看高清视频www| 成人国产综合亚洲| av福利片在线| 国产主播在线观看一区二区| 一级毛片高清免费大全| av超薄肉色丝袜交足视频| 欧美一区二区精品小视频在线| 成熟少妇高潮喷水视频| www.999成人在线观看| 日韩国内少妇激情av| 午夜精品在线福利| 日韩成人在线观看一区二区三区| 久久久久久久久免费视频了| 免费看美女性在线毛片视频| 动漫黄色视频在线观看| 国产精品亚洲av一区麻豆| 午夜福利,免费看| 久久精品亚洲精品国产色婷小说| 国产亚洲av嫩草精品影院| 波多野结衣av一区二区av| 精品一区二区三区av网在线观看| 亚洲av第一区精品v没综合| 身体一侧抽搐| 国产亚洲欧美精品永久| 在线天堂中文资源库| 一边摸一边抽搐一进一出视频| 精品熟女少妇八av免费久了| 久久精品aⅴ一区二区三区四区| 国产1区2区3区精品| 一个人观看的视频www高清免费观看 | 男女床上黄色一级片免费看| 国产精品乱码一区二三区的特点 | АⅤ资源中文在线天堂| 两性午夜刺激爽爽歪歪视频在线观看 | 欧美老熟妇乱子伦牲交| 一本综合久久免费| 国产色视频综合| 巨乳人妻的诱惑在线观看| 亚洲色图综合在线观看| a级毛片在线看网站| 欧美一区二区精品小视频在线| 国产成人啪精品午夜网站| 视频区欧美日本亚洲| 在线观看免费视频日本深夜| 首页视频小说图片口味搜索| 欧美黑人欧美精品刺激| 日韩精品中文字幕看吧| 一进一出抽搐动态| 1024香蕉在线观看| 日韩国内少妇激情av| 在线观看日韩欧美| 色综合亚洲欧美另类图片| 亚洲一区二区三区不卡视频| 欧美成狂野欧美在线观看| 午夜福利欧美成人| 亚洲中文日韩欧美视频| 黄片大片在线免费观看| 日本欧美视频一区| 日日摸夜夜添夜夜添小说| 亚洲精华国产精华精| 最好的美女福利视频网| 91老司机精品| 一个人观看的视频www高清免费观看 | 露出奶头的视频| 一区二区三区激情视频| 色综合欧美亚洲国产小说| 视频区欧美日本亚洲| 午夜两性在线视频| 91麻豆av在线| 90打野战视频偷拍视频| 动漫黄色视频在线观看| 一卡2卡三卡四卡精品乱码亚洲| 91成年电影在线观看| 中文字幕精品免费在线观看视频| 亚洲五月天丁香| 一二三四在线观看免费中文在| 国产在线观看jvid| 伦理电影免费视频| 欧美日本中文国产一区发布| 淫妇啪啪啪对白视频| 淫秽高清视频在线观看| 亚洲最大成人中文| 视频在线观看一区二区三区| 亚洲一区二区三区色噜噜| 美女 人体艺术 gogo| 日本 av在线| 精品久久久久久久人妻蜜臀av | 老司机午夜福利在线观看视频| 中文字幕人妻丝袜一区二区| 亚洲自偷自拍图片 自拍| 欧美乱妇无乱码| 丁香欧美五月| 免费在线观看日本一区| 高清黄色对白视频在线免费看| 成人av一区二区三区在线看| 亚洲avbb在线观看| 久久久久久久午夜电影| 亚洲专区国产一区二区|