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

    基于類原型與深度學(xué)習(xí)的類注釋生成方法

    2023-09-06 12:50:56李睿趙逢禹劉亞
    軟件工程 2023年9期
    關(guān)鍵詞:深度學(xué)習(xí)

    李?!≮w逢禹 劉亞

    關(guān)鍵詞:代碼注釋;類注釋模板;類原型;雙編碼器;深度學(xué)習(xí)

    中圖分類號(hào):TP311 文獻(xiàn)標(biāo)志碼:A

    0 引言(Introduction)

    在許多軟件系統(tǒng)中,代碼源文件的注釋經(jīng)常出現(xiàn)不完整、過(guò)時(shí)甚至缺失等情況,對(duì)這些系統(tǒng)代碼進(jìn)行維護(hù)與完善時(shí),開發(fā)人員需要花費(fèi)大量時(shí)間理解代碼[1]。當(dāng)代碼內(nèi)部有較準(zhǔn)確的注釋文本時(shí),開發(fā)人員可以通過(guò)瀏覽注釋文本快速理解相關(guān)代碼片段的含義,從而節(jié)省維護(hù)時(shí)間,提高維護(hù)質(zhì)量。

    自動(dòng)代碼注釋生成技術(shù)是用于提高代碼可讀性和可維護(hù)性的有效方法,目前針對(duì)代碼注釋自動(dòng)生成的研究大致分為以下兩類:基于模板的注釋自動(dòng)生成和基于深度學(xué)習(xí)的注釋自動(dòng)生成?;谀0遄詣?dòng)生成的代碼注釋可讀性較高,但缺乏對(duì)具體代碼結(jié)構(gòu)信息的獲取能力,而基于深度學(xué)習(xí)的代碼注釋生成研究大多應(yīng)用于方法粒度,對(duì)于復(fù)雜的類結(jié)構(gòu)的注釋生成比較困難。

    針對(duì)上述兩類自動(dòng)代碼注釋生成技術(shù)存在的問(wèn)題,本文結(jié)合模板與深度學(xué)習(xí)技術(shù),提出一種為類自動(dòng)生成注釋的方法,首先確定當(dāng)前類所屬的類原型,并選擇對(duì)應(yīng)類注釋模板,提取類中的信息填充到模板中,其次針對(duì)類中方法的注釋生成問(wèn)題,提出構(gòu)建一種基于注意力機(jī)制的雙編碼器模型,實(shí)現(xiàn)代碼到注釋的映射,最后通過(guò)實(shí)驗(yàn)驗(yàn)證了本方法的可行性與實(shí)際應(yīng)用效果。

    1 相關(guān)研究(Related research)

    基于模板的注釋生成方法,首先需要預(yù)定義一組啟發(fā)式規(guī)則,其次提取代碼的關(guān)鍵信息并通過(guò)啟發(fā)式規(guī)則生成自然語(yǔ)言描述。HILL等[2]提出一種基于軟件單詞使用模型(SoftwareWord Usage Model,SWUM)分析Java方法簽名的方法,為Java方法生成自然語(yǔ)言注釋。SRIDHARA等[3]在HILL等研究的基礎(chǔ)上進(jìn)一步考慮了方法體內(nèi)含有的代碼,提出一種基于啟發(fā)式規(guī)則的方法為方法代碼生成注釋,該方法主要分為內(nèi)容選擇和注釋生成兩個(gè)階段。MORENO等[4]將關(guān)注的代碼粒度從方法級(jí)別提升到類級(jí)別,首先確定類和方法的原型,其次通過(guò)結(jié)合原型信息與預(yù)先定義的基于方法和數(shù)據(jù)成員訪問(wèn)級(jí)別的啟發(fā)式規(guī)則,并通過(guò)現(xiàn)有的文本生成工具對(duì)Java類生成描述性摘要。基于規(guī)則模板生成的代碼注釋容易理解,但受限于模板只能為特定的代碼結(jié)構(gòu)生成注釋,對(duì)于模板之外的代碼無(wú)法靈活地生成有效的代碼注釋。

    基于深度學(xué)習(xí)的注釋生成方法通過(guò)神經(jīng)網(wǎng)絡(luò)對(duì)代碼中包含的信息進(jìn)行挖掘,得到其特征向量表示,并通過(guò)模型進(jìn)行訓(xùn)練,最終得到自然語(yǔ)言描述。目前,大量的研究主要采用神經(jīng)機(jī)器翻譯(Neural Machine Translation,NMT)模型,通過(guò)提取不同的代碼特征信息,使用不同的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行訓(xùn)練得到代碼注釋。IYER等[5]率先將深度神經(jīng)網(wǎng)絡(luò)引入自動(dòng)代碼摘要研究,提出代碼-描述嵌入神經(jīng)網(wǎng)絡(luò)(Code-DescriptionEmbedding Neural Network,CODENN)方法,在長(zhǎng)短期記憶網(wǎng)絡(luò)(Long-Short Term Memory,LSTM)的基礎(chǔ)上通過(guò)引入注意力機(jī)制構(gòu)建一個(gè)端到端的學(xué)習(xí)網(wǎng)絡(luò),從而自動(dòng)生成代碼摘要。HUANG等[6]采用門控循環(huán)單元(Gated Recurrent Units,GRU)作為編碼器和解碼器,并為代碼塊生成注釋,GRU是對(duì)LSTM網(wǎng)絡(luò)的一種改進(jìn),能夠保留較長(zhǎng)的上下文信息[7]。CAI等[8]提出使用樹形長(zhǎng)短期記憶網(wǎng)絡(luò)(Tree-LSTM),通過(guò)引入語(yǔ)法類型信息對(duì)程序代碼進(jìn)行結(jié)構(gòu)化編碼,并在解碼時(shí)采用多種策略對(duì)抽象語(yǔ)法樹的節(jié)點(diǎn)進(jìn)行篩選,最終生成代碼注釋?;谏疃葘W(xué)習(xí)的自動(dòng)代碼注釋方法可以較靈活地為代碼片段生成注釋,在面對(duì)復(fù)雜程序代碼時(shí),仍然具有良好的結(jié)構(gòu)學(xué)習(xí)能力,但目前大多只應(yīng)用于方法粒度,針對(duì)類粒度的代碼片段無(wú)法生成較為全面的注釋。

    2 類注釋生成方法(Class annotation generationmethod)

    本文提出的基于類原型與深度學(xué)習(xí)為類生成注釋的方法活動(dòng)圖如圖1所示,主要包括以下幾步:第一步,提取類中方法,確定類中方法原型,并通過(guò)類中方法原型的分布確定類原型;第二步,為不同的類原型選擇不同的類注釋模板;第三步,針對(duì)類注釋模板中各部分的信息設(shè)計(jì)相應(yīng)的提取規(guī)則,并將提取到的信息填充到類注釋模板中;第四步,對(duì)于類中的主要方法通過(guò)深度學(xué)習(xí)模型得到方法注釋,將方法代碼注釋填充到類注釋模板中,得到完整類注釋。

    2.1 類原型分類

    類原型是項(xiàng)目設(shè)計(jì)中類的角色和責(zé)任的簡(jiǎn)單抽象,開發(fā)人員可以通過(guò)類原型較快地了解類在系統(tǒng)中的一般職責(zé)。在軟件的維護(hù)和發(fā)展過(guò)程中,對(duì)類原型的準(zhǔn)確描述是必要的,STARON等[9]驗(yàn)證了類原型信息在程序理解任務(wù)中的有效性。本文首先對(duì)類的原型進(jìn)行識(shí)別,確定類的職責(zé),其次為不同的類原型選擇不同的類注釋模板。

    目前,在類與方法的原型識(shí)別領(lǐng)域已有大量研究,文獻(xiàn)[10]首先提出了一種方法原型的自動(dòng)識(shí)別技術(shù),并給出了方法原型的分類法;文獻(xiàn)[11]在此基礎(chǔ)上提出一種根據(jù)方法原型分布確定類原型的方法,并給出了類原型的分類法。為了構(gòu)建符合類職責(zé)的注釋模板,本文參照文獻(xiàn)[11]對(duì)方法原型和類原型的分類方法進(jìn)行重新定義,將方法原型分類為5類,類原型分類為4類,其中方法原型分布是類原型分類的重要特征。表1給出了本文定義的方法原型分類及原型描述,表2中給出了本文定義的類原型分類、原型描述及分類規(guī)則。

    在表2的類原型分類規(guī)則中,acc 表示類中訪問(wèn)器類型方法的數(shù)量,mut表示類中變換器類型方法的數(shù)量,con 表示類中構(gòu)造方法的數(shù)量,col 代表類中協(xié)作方法的數(shù)量,cont 表示類中控制器類型方法的數(shù)量,mtd 表示類中方法的總數(shù)。

    2.2 類注釋模板

    不同類原型代表不同的職責(zé),代碼注釋主要關(guān)注的信息也不同,例如Entity類型代表實(shí)體類,重點(diǎn)關(guān)注繼承關(guān)系、類中屬性以及類在項(xiàng)目中的使用情況,由于Entity類中方法大多數(shù)為訪問(wèn)器、變換器及創(chuàng)建方法,因此不需要對(duì)類中方法進(jìn)行注釋;Boundary類型代表邊界類,多用于與其他類進(jìn)行通信,因此重點(diǎn)關(guān)注類在項(xiàng)目中的使用情況和類中方法的功能;Controller類型代表控制類,主要負(fù)責(zé)處理外部對(duì)象數(shù)據(jù),重點(diǎn)關(guān)注繼承關(guān)系、實(shí)現(xiàn)關(guān)系、類在項(xiàng)目中的使用情況和類中方法的功能。受篇幅限制,本文以Controller類原型為例,展示其注釋模板(如表3所示)。

    2.3 類中信息提取規(guī)則

    表4給出了類注釋模板中各部分注釋內(nèi)容的提取規(guī)則。首先,通過(guò)代碼抽象語(yǔ)法樹(Abstract Syntax Tree,AST)結(jié)構(gòu)提取父類、接口的實(shí)現(xiàn)類和類中屬性;其次,在項(xiàng)目中進(jìn)行代碼搜索提取其子類及該類在其他類中的使用情況,將上述信息填充到預(yù)定義的類注釋模板中。類中方法是類功能的具體實(shí)現(xiàn),類中方法的注釋生成是類注釋的難點(diǎn)。針對(duì)這一問(wèn)題,本文首先識(shí)別類中的主要方法,對(duì)主要方法使用深度學(xué)習(xí)的技術(shù)建立方法代碼到代碼注釋的映射模型,通過(guò)該模型獲得方法代碼的注釋并填充到類注釋模板中,最終獲得完整的類注釋。

    3 基于注意力機(jī)制的雙編碼器方法代碼注釋生成模型(A model for code annotation generation inbi-encoder method based on attention mechanism)

    由于方法代碼結(jié)構(gòu)復(fù)雜,包含較多的序列信息和結(jié)構(gòu)信息,因此僅使用預(yù)定義規(guī)則提取,無(wú)法為方法代碼生成較為準(zhǔn)確的注釋,而深度學(xué)習(xí)可以捕捉代碼的結(jié)構(gòu)信息,并可以通過(guò)大量訓(xùn)練得到從代碼到注釋的映射,本文使用深度學(xué)習(xí)技術(shù)為方法代碼生成代碼注釋。本文在經(jīng)典編碼器-解碼器模型的基礎(chǔ)上,提出了一種雙編碼器-解碼器的方法代碼注釋生成模型,其中雙編碼器包括一個(gè)序列編碼器和一個(gè)樹結(jié)構(gòu)編碼器,圖2展示了該模型網(wǎng)絡(luò)結(jié)構(gòu)。該模型首先對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,在源碼文件中提取以方法為粒度的代碼,構(gòu)建算法提取代碼序列和代碼抽象語(yǔ)法樹結(jié)構(gòu)信息;其次分別將代碼序列和抽象語(yǔ)法樹序列的向量表示輸入各自對(duì)應(yīng)的編碼器中進(jìn)行訓(xùn)練;最后經(jīng)過(guò)注意力機(jī)制關(guān)注解碼重點(diǎn),將序列向量和抽象語(yǔ)法樹向量進(jìn)行拼接后,由解碼器解碼得到方法代碼注釋序列。

    3.1 序列編碼器

    在經(jīng)典編碼器-解碼器模型中,編碼器通常使用循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)按照時(shí)序提取代碼序列特征,據(jù)目前已有的研究可知,當(dāng)序列較長(zhǎng)時(shí),基于遞歸機(jī)制的RNN可能存在梯度消失或者梯度爆炸問(wèn)題。GERS等[12]提出了一種長(zhǎng)短期記憶網(wǎng)絡(luò)(LSTM),相對(duì)于RNN而言,LSTM在處理長(zhǎng)序列數(shù)據(jù)時(shí)表現(xiàn)更為出色。因此,本文選擇LSTM 作為雙編碼器中的序列編碼器處理代碼序列信息。

    為了構(gòu)造序列編碼器中的輸入方法代碼序列,首先利用Antlr4語(yǔ)法分析器生成工具將方法代碼轉(zhuǎn)化為抽象語(yǔ)法樹(AST),其次對(duì)方法AST進(jìn)行前序遍歷,組成代碼序列。算法1給出了提取方法代碼序列的算法。

    通過(guò)自底向上的遍歷,最終獲取根節(jié)點(diǎn)的輸出作為樹編碼器的輸出,在圖2中通過(guò)結(jié)構(gòu)向量ht 表示該向量。

    3.3 解碼器

    本文采用融合注意力機(jī)制的LSTM 作為解碼器,首先將序列編碼器輸出的序列表示向量hs 和樹編碼器輸出的結(jié)構(gòu)表示向量ht 分別通過(guò)注意力機(jī)制進(jìn)行加權(quán)求和重新計(jì)算權(quán)重。其次將注意力機(jī)制篩選后的向量進(jìn)行拼接,得到綜合編碼向量作為解碼器的輸入向量。至此,解碼器就同時(shí)融合了代碼的序列信息和結(jié)構(gòu)信息。

    4 實(shí)驗(yàn)結(jié)果與分析(Experimental results andanalysis)

    為了全面評(píng)估本文提出的基于類原型與深度學(xué)習(xí)為類自動(dòng)生成注釋的方法,將從以下兩個(gè)方面進(jìn)行實(shí)驗(yàn)驗(yàn)證:一是評(píng)估本文提出的基于注意力機(jī)制的雙編碼器方法代碼注釋生成模型的性能;二是評(píng)估本文提出的結(jié)合類原型與深度學(xué)習(xí)的類粒度注釋生成的準(zhǔn)確性。

    4.1 數(shù)據(jù)集

    本文采用文獻(xiàn)[14]提供的Java-med數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),該數(shù)據(jù)集收集于軟件項(xiàng)目托管平臺(tái)GitHub,包括1 000個(gè)Java頂級(jí)項(xiàng)目。該數(shù)據(jù)集包含約400萬(wàn)個(gè)方法,涵蓋模型需要的源代碼信息和注釋信息。本文將數(shù)據(jù)集按照8∶2的比例劃分訓(xùn)練集和測(cè)試集,其中訓(xùn)練集用于訓(xùn)練雙編碼器-解碼器模型,測(cè)試集用于評(píng)估雙編碼器-解碼器模型性能及Java類注釋生成效果。

    4.2 評(píng)估指標(biāo)

    本文從兩個(gè)方面評(píng)估本文提出方法的應(yīng)用效果。對(duì)于方法代碼注釋自動(dòng)生成的雙編碼器-解碼器模型的評(píng)估問(wèn)題,采用BLEU[15]、ROUGE[16]和METEOR[17]評(píng)估生成方法代碼注釋的質(zhì)量,這些指標(biāo)廣泛應(yīng)用于機(jī)器翻譯領(lǐng)域。其中,BLEU表示生成句子和真實(shí)句子的相似程度,更側(cè)重于準(zhǔn)確率,本文選擇其中的BLEU-4作為評(píng)估指標(biāo);ROUGE與BLEU類似,但更加關(guān)注召回率,ROUGE-L基于生成句子和真實(shí)句子的最長(zhǎng)公共子序列共現(xiàn)統(tǒng)計(jì)召回率和準(zhǔn)確率;METEOR引入了同義詞匹配,在計(jì)算得分時(shí)考慮了詞性變換和同義詞的情況。三種機(jī)器翻譯性能評(píng)估指標(biāo)與生成的自然語(yǔ)言注釋質(zhì)量呈正相關(guān)。

    針對(duì)類粒度注釋的準(zhǔn)確性與完整性評(píng)估問(wèn)題,由于類粒度注釋生成的相關(guān)研究與通用數(shù)據(jù)集較少,因此本實(shí)驗(yàn)采用具有Java軟件領(lǐng)域開發(fā)經(jīng)驗(yàn)的工程師對(duì)類注釋進(jìn)行人工方式的準(zhǔn)確性評(píng)估。

    4.3 實(shí)驗(yàn)結(jié)果分析

    4.3.1 方法粒度的注釋生成模型性能對(duì)比

    本文提出的雙編碼器-解碼器模型基于Python編程語(yǔ)言和PyTorch深度學(xué)習(xí)框架實(shí)現(xiàn),在訓(xùn)練過(guò)程中,使用Adam作為優(yōu)化器,初始學(xué)習(xí)率設(shè)置為0.001。其中,雙編碼器和解碼器均具有兩個(gè)隱藏層,隱藏狀態(tài)設(shè)為256維,嵌入單詞的維度也設(shè)為256維。

    為了評(píng)估本文在方法粒度的注釋自動(dòng)生成中提出的雙編碼器-解碼器模型的有效性,選用方法注釋生成領(lǐng)域中常見的注釋生成模型進(jìn)行實(shí)驗(yàn)對(duì)比。

    (1)Seq2Seq模型+注意力機(jī)制[5]。Seq2Seq模型將源代碼序列信息輸入LSTM中進(jìn)行編碼,引入注意力機(jī)制,最終由解碼器進(jìn)行解碼獲得注釋。

    (2)Code2Seq模型+注意力機(jī)制[14]。Code2Seq模型通過(guò)使用抽象語(yǔ)法樹中組合路徑的集合表示代碼片段,使用BiLSTM作為編碼器,并在解碼時(shí)使用注意力機(jī)制選擇相關(guān)的路徑最終解碼獲得注釋序列。

    (3)Tree2Seq模型+注意力機(jī)制[18]。Tree2Seq模型使用Tree-LSTM作為編碼器,將源代碼轉(zhuǎn)化為抽象語(yǔ)法樹結(jié)構(gòu),使用編碼器自下而上遞歸對(duì)AST節(jié)點(diǎn)進(jìn)行編碼,然后由基于注意力機(jī)制的解碼器進(jìn)行解碼。

    表5展示了4種模型在選定的Java數(shù)據(jù)集上的實(shí)驗(yàn)評(píng)估結(jié)果對(duì)比。從表5中可以看到,本文提出的雙編碼器-解碼器模型的BLEU-4分?jǐn)?shù)達(dá)到35.2,并且在各項(xiàng)指標(biāo)上均優(yōu)于其他三種對(duì)照方法。相對(duì)于其他三種模型,本文模型既融合了代碼的序列信息,又融合了代碼的結(jié)構(gòu)信息,同時(shí)引入了注意力機(jī)制(Attn),能充分地獲取代碼信息,進(jìn)而提升了注釋生成效果。

    4.3.2 類粒度的注釋生成性能評(píng)估

    為了評(píng)估本文結(jié)合類原型與深度學(xué)習(xí)生成類注釋的性能,從類原型識(shí)別的準(zhǔn)確性及類注釋的準(zhǔn)確性兩個(gè)方面進(jìn)行評(píng)估。首先在測(cè)試數(shù)據(jù)集中選擇部分類,通過(guò)人工識(shí)別方式進(jìn)行類原型分類;其次使用本文提出的類原型識(shí)別方法對(duì)這些類進(jìn)行原型識(shí)別。從表6可以看出,本文提出的類原型識(shí)別規(guī)則能較準(zhǔn)確地識(shí)別類的原型。

    為了評(píng)估生成類注釋的準(zhǔn)確性,評(píng)估者閱讀選定類的主要功能和結(jié)構(gòu)并給出對(duì)相應(yīng)類的注釋描述,然后與本文生成的類注釋進(jìn)行對(duì)比。表6展示了對(duì)不同類原型的類注釋準(zhǔn)確性的評(píng)估,評(píng)估者認(rèn)定當(dāng)類原型為實(shí)體類和邊界類時(shí),本文方法能較準(zhǔn)確地生成符合該類職責(zé)的注釋,對(duì)于類中方法數(shù)量較少的控制類能夠較為準(zhǔn)確地描述類的使用情況,但對(duì)于類的功能描述信息較少,對(duì)于大類(Large class)能較為準(zhǔn)確地描述類中具體方法的功能,從而反映類的功能。

    4.4 示例展示

    本文首先通過(guò)確定類的原型選擇類注釋模板,其次提取類中信息填充到模板中,最終生成完整的類注釋,表7展示了實(shí)驗(yàn)中類原型為Controller類最終生成的類注釋結(jié)果。

    5 結(jié)論(Conclusion)

    本文通過(guò)結(jié)合類原型與深度學(xué)習(xí)技術(shù),提出一種為類生成注釋的方法,首先通過(guò)確定類原型選擇類注釋模板,其次提取類中的信息填充模板,對(duì)于類中的方法使用帶有注意力機(jī)制的雙編碼器模型訓(xùn)練后得到方法注釋,最終得到完整的類代碼注釋。實(shí)驗(yàn)表明,本文在方法粒度中提出的雙編碼器模型在性能和效果上優(yōu)于對(duì)比模型,完整的類粒度的注釋經(jīng)人工評(píng)估后確定具有較高的準(zhǔn)確性。未來(lái),可以結(jié)合信息搜索以及其他深度學(xué)習(xí)方法,融合更多的代碼信息與注釋文本,進(jìn)一步提高自動(dòng)生成類注釋的質(zhì)量。

    作者簡(jiǎn)介:

    李 睿(1999-),女,碩士生。研究領(lǐng)域:自然語(yǔ)言處理,深度學(xué)習(xí)。

    趙逢禹(1963-),男,博士,教授。研究領(lǐng)域:計(jì)算機(jī)軟件與軟件系統(tǒng)安全,軟件工程與軟件質(zhì)量控制,軟件可靠性。

    劉 亞(1983-),女,博士,副教授。研究領(lǐng)域:信息安全,密碼學(xué)。

    猜你喜歡
    深度學(xué)習(xí)
    從合坐走向合學(xué):淺議新學(xué)習(xí)模式的構(gòu)建
    面向大數(shù)據(jù)遠(yuǎn)程開放實(shí)驗(yàn)平臺(tái)構(gòu)建研究
    基于自動(dòng)智能分類器的圖書館亂架圖書檢測(cè)
    搭建深度學(xué)習(xí)的三級(jí)階梯
    有體驗(yàn)的學(xué)習(xí)才是有意義的學(xué)習(xí)
    電子商務(wù)中基于深度學(xué)習(xí)的虛假交易識(shí)別研究
    利用網(wǎng)絡(luò)技術(shù)促進(jìn)學(xué)生深度學(xué)習(xí)的幾大策略
    考試周刊(2016年94期)2016-12-12 12:15:04
    MOOC與翻轉(zhuǎn)課堂融合的深度學(xué)習(xí)場(chǎng)域建構(gòu)
    大數(shù)據(jù)技術(shù)在反恐怖主義中的應(yīng)用展望
    深度學(xué)習(xí)算法應(yīng)用于巖石圖像處理的可行性研究
    两人在一起打扑克的视频| or卡值多少钱| 午夜福利视频1000在线观看 | 精品少妇一区二区三区视频日本电影| 国产又爽黄色视频| 久久精品人人爽人人爽视色| 中亚洲国语对白在线视频| 老司机午夜十八禁免费视频| 亚洲中文日韩欧美视频| 在线观看www视频免费| 亚洲片人在线观看| 日日干狠狠操夜夜爽| 人人妻人人澡人人看| 国产成人av激情在线播放| 国产精品一区二区精品视频观看| avwww免费| 丝袜美腿诱惑在线| av福利片在线| 免费在线观看日本一区| 国产精品亚洲一级av第二区| 一进一出好大好爽视频| 满18在线观看网站| 欧美色欧美亚洲另类二区 | 日本免费a在线| 热99re8久久精品国产| 免费观看精品视频网站| 久久香蕉精品热| 两个人免费观看高清视频| 18禁美女被吸乳视频| 极品人妻少妇av视频| 亚洲 欧美一区二区三区| 国产亚洲精品久久久久久毛片| 99re在线观看精品视频| 俄罗斯特黄特色一大片| 国产麻豆69| 免费观看精品视频网站| 久久久久久免费高清国产稀缺| 少妇被粗大的猛进出69影院| 丝袜人妻中文字幕| svipshipincom国产片| www日本在线高清视频| 男女午夜视频在线观看| 成人亚洲精品一区在线观看| 亚洲欧美激情综合另类| 看黄色毛片网站| 日韩免费av在线播放| 中文字幕人妻丝袜一区二区| 在线观看免费午夜福利视频| 亚洲午夜理论影院| 精品电影一区二区在线| 十八禁网站免费在线| 黄片大片在线免费观看| 亚洲国产精品久久男人天堂| 午夜两性在线视频| 欧美在线黄色| 久久天躁狠狠躁夜夜2o2o| 亚洲avbb在线观看| 少妇熟女aⅴ在线视频| 久久久国产欧美日韩av| 天天添夜夜摸| 十分钟在线观看高清视频www| 国产欧美日韩一区二区三区在线| 亚洲视频免费观看视频| 免费在线观看完整版高清| www.www免费av| 亚洲欧洲精品一区二区精品久久久| 香蕉久久夜色| 午夜a级毛片| 久久天躁狠狠躁夜夜2o2o| 午夜久久久久精精品| 一边摸一边做爽爽视频免费| 亚洲中文av在线| bbb黄色大片| 在线国产一区二区在线| 国产精品影院久久| 亚洲九九香蕉| www.精华液| 又紧又爽又黄一区二区| 免费av毛片视频| cao死你这个sao货| svipshipincom国产片| 精品不卡国产一区二区三区| 国产午夜精品久久久久久| 免费在线观看黄色视频的| 成人精品一区二区免费| 村上凉子中文字幕在线| 91av网站免费观看| www国产在线视频色| 欧美 亚洲 国产 日韩一| 日本欧美视频一区| 18禁美女被吸乳视频| 免费久久久久久久精品成人欧美视频| 亚洲精品国产区一区二| 在线天堂中文资源库| 日本一区二区免费在线视频| 欧美 亚洲 国产 日韩一| 国产又色又爽无遮挡免费看| 两性夫妻黄色片| 国产精品野战在线观看| 99国产极品粉嫩在线观看| 香蕉丝袜av| 成年女人毛片免费观看观看9| 欧美精品啪啪一区二区三区| 黄色女人牲交| 18禁黄网站禁片午夜丰满| 国产亚洲精品av在线| 午夜免费成人在线视频| 国内毛片毛片毛片毛片毛片| 久久久久精品国产欧美久久久| 国产视频一区二区在线看| 黄片小视频在线播放| 91国产中文字幕| 午夜免费鲁丝| 天天躁狠狠躁夜夜躁狠狠躁| 亚洲aⅴ乱码一区二区在线播放 | 成人18禁在线播放| 亚洲熟女毛片儿| 长腿黑丝高跟| 中文字幕色久视频| 成人国产综合亚洲| 亚洲第一青青草原| 别揉我奶头~嗯~啊~动态视频| 99久久99久久久精品蜜桃| 亚洲自拍偷在线| 亚洲国产精品成人综合色| 国产精品一区二区在线不卡| 日韩精品青青久久久久久| 欧美日韩亚洲综合一区二区三区_| 老司机午夜福利在线观看视频| 欧美日韩精品网址| 日本精品一区二区三区蜜桃| 中文字幕色久视频| 一级黄色大片毛片| 亚洲熟妇熟女久久| 国产区一区二久久| 国产精品99久久99久久久不卡| 91麻豆精品激情在线观看国产| 真人一进一出gif抽搐免费| 男男h啪啪无遮挡| 国产在线观看jvid| 高清毛片免费观看视频网站| 91精品国产国语对白视频| 色在线成人网| 国产色视频综合| 精品卡一卡二卡四卡免费| 久久国产乱子伦精品免费另类| 国产精品久久久久久人妻精品电影| 国产aⅴ精品一区二区三区波| 少妇粗大呻吟视频| 亚洲九九香蕉| 国产高清videossex| 亚洲一区二区三区色噜噜| 90打野战视频偷拍视频| 欧美另类亚洲清纯唯美| 动漫黄色视频在线观看| 久久精品人人爽人人爽视色| 色av中文字幕| 亚洲 国产 在线| 日本a在线网址| 国产精品一区二区在线不卡| 亚洲国产毛片av蜜桃av| 国产成人影院久久av| 啦啦啦观看免费观看视频高清 | 多毛熟女@视频| 黄色 视频免费看| 丝袜美腿诱惑在线| 伦理电影免费视频| 天天躁夜夜躁狠狠躁躁| 51午夜福利影视在线观看| 正在播放国产对白刺激| 18禁观看日本| 在线观看午夜福利视频| 免费观看精品视频网站| 日韩成人在线观看一区二区三区| 一区在线观看完整版| av电影中文网址| av视频免费观看在线观看| 99香蕉大伊视频| 无限看片的www在线观看| 欧美午夜高清在线| 如日韩欧美国产精品一区二区三区| 午夜日韩欧美国产| 婷婷六月久久综合丁香| 日韩有码中文字幕| 午夜激情av网站| АⅤ资源中文在线天堂| 亚洲免费av在线视频| 一级a爱视频在线免费观看| 久久久久久国产a免费观看| 狂野欧美激情性xxxx| 女同久久另类99精品国产91| 日本免费a在线| 久久午夜综合久久蜜桃| 嫩草影视91久久| 人成视频在线观看免费观看| 丁香六月欧美| 国产私拍福利视频在线观看| 国产区一区二久久| 日本黄色视频三级网站网址| 一夜夜www| 亚洲情色 制服丝袜| 久久久国产欧美日韩av| 国产亚洲av嫩草精品影院| 久久精品国产综合久久久| 精品国产美女av久久久久小说| 18禁黄网站禁片午夜丰满| 亚洲av成人不卡在线观看播放网| 啪啪无遮挡十八禁网站| 怎么达到女性高潮| 精品国产一区二区三区四区第35| 精品国产一区二区久久| 国产精品免费视频内射| 久久中文字幕人妻熟女| 50天的宝宝边吃奶边哭怎么回事| 在线观看一区二区三区| 国产av又大| 欧美性长视频在线观看| 国产精品一区二区三区四区久久 | 国产精品 欧美亚洲| 欧美+亚洲+日韩+国产| 久久天躁狠狠躁夜夜2o2o| 99国产精品99久久久久| 久热这里只有精品99| 国产精品秋霞免费鲁丝片| 精品少妇一区二区三区视频日本电影| 制服丝袜大香蕉在线| 亚洲国产精品久久男人天堂| 久久久国产欧美日韩av| 波多野结衣一区麻豆| 欧美精品啪啪一区二区三区| 亚洲狠狠婷婷综合久久图片| 久久青草综合色| 国产不卡一卡二| 免费在线观看黄色视频的| 国产乱人伦免费视频| 国产精品九九99| 婷婷丁香在线五月| 丝袜在线中文字幕| 久久久久久久久久久久大奶| 日韩国内少妇激情av| 黄色视频不卡| 日本三级黄在线观看| 亚洲av成人不卡在线观看播放网| 久久久久九九精品影院| 久久精品亚洲熟妇少妇任你| 90打野战视频偷拍视频| 两个人看的免费小视频| 亚洲伊人色综图| 国产色视频综合| 欧美性长视频在线观看| 国产精品日韩av在线免费观看 | 亚洲av美国av| 欧美日韩亚洲国产一区二区在线观看| 久久久久亚洲av毛片大全| 一边摸一边抽搐一进一小说| 色婷婷久久久亚洲欧美| 视频区欧美日本亚洲| 九色国产91popny在线| 国产野战对白在线观看| 在线观看日韩欧美| 精品福利观看| 日本a在线网址| 一区二区三区国产精品乱码| 欧美黑人欧美精品刺激| 人妻久久中文字幕网| 每晚都被弄得嗷嗷叫到高潮| 91国产中文字幕| 国产精品乱码一区二三区的特点 | 欧美不卡视频在线免费观看 | 亚洲成av片中文字幕在线观看| 精品久久蜜臀av无| 久久人人97超碰香蕉20202| 午夜福利在线观看吧| 午夜福利影视在线免费观看| 亚洲中文av在线| 正在播放国产对白刺激| 国产xxxxx性猛交| 人人妻人人澡人人看| 妹子高潮喷水视频| 亚洲aⅴ乱码一区二区在线播放 | netflix在线观看网站| 亚洲成人国产一区在线观看| 久久伊人香网站| 美女大奶头视频| 久久香蕉激情| 欧美成人午夜精品| 两个人视频免费观看高清| 成人精品一区二区免费| 一二三四社区在线视频社区8| 精品日产1卡2卡| 亚洲伊人色综图| 好男人在线观看高清免费视频 | 1024香蕉在线观看| 精品日产1卡2卡| 99国产极品粉嫩在线观看| 欧美成狂野欧美在线观看| 九色亚洲精品在线播放| 日本免费a在线| 国产1区2区3区精品| 精品国产美女av久久久久小说| 色综合欧美亚洲国产小说| 久久人人97超碰香蕉20202| 制服诱惑二区| 亚洲三区欧美一区| 亚洲av熟女| 9191精品国产免费久久| 国产亚洲欧美在线一区二区| 可以在线观看毛片的网站| 欧美黄色片欧美黄色片| 国产精品 欧美亚洲| 涩涩av久久男人的天堂| 国产成人av教育| 精品一区二区三区视频在线观看免费| 久久久久九九精品影院| 97人妻天天添夜夜摸| 欧美日韩乱码在线| 久久久久久久久中文| 午夜福利,免费看| √禁漫天堂资源中文www| 国产野战对白在线观看| 欧美丝袜亚洲另类 | 国产亚洲精品综合一区在线观看 | 亚洲男人天堂网一区| 亚洲精品粉嫩美女一区| 91国产中文字幕| 人人澡人人妻人| 黑人巨大精品欧美一区二区蜜桃| www.www免费av| 欧美国产精品va在线观看不卡| or卡值多少钱| 亚洲av片天天在线观看| 欧美激情极品国产一区二区三区| 国产精品一区二区在线不卡| 久久精品aⅴ一区二区三区四区| 中出人妻视频一区二区| 涩涩av久久男人的天堂| 热99re8久久精品国产| 丝袜在线中文字幕| 制服诱惑二区| 身体一侧抽搐| 真人一进一出gif抽搐免费| 黑人巨大精品欧美一区二区mp4| 满18在线观看网站| 欧美精品啪啪一区二区三区| av网站免费在线观看视频| 99国产精品一区二区三区| 丝袜美腿诱惑在线| 亚洲av成人一区二区三| 亚洲人成77777在线视频| 一区二区三区国产精品乱码| 成人亚洲精品一区在线观看| 咕卡用的链子| 国产亚洲欧美在线一区二区| 国产成人免费无遮挡视频| 人人妻人人爽人人添夜夜欢视频| 一级毛片女人18水好多| 欧美激情 高清一区二区三区| 亚洲天堂国产精品一区在线| 亚洲视频免费观看视频| 国产在线精品亚洲第一网站| 午夜福利,免费看| 欧美久久黑人一区二区| 久久中文看片网| 级片在线观看| 欧美激情 高清一区二区三区| 亚洲天堂国产精品一区在线| 99热只有精品国产| 精品福利观看| 午夜亚洲福利在线播放| 久久精品亚洲精品国产色婷小说| 欧美激情高清一区二区三区| 亚洲va日本ⅴa欧美va伊人久久| 叶爱在线成人免费视频播放| 国产免费男女视频| 国产亚洲欧美在线一区二区| 精品高清国产在线一区| 19禁男女啪啪无遮挡网站| 脱女人内裤的视频| 久久精品影院6| 日日夜夜操网爽| 久久久水蜜桃国产精品网| 国产激情欧美一区二区| 国产精品日韩av在线免费观看 | 国产亚洲精品久久久久5区| 熟妇人妻久久中文字幕3abv| 狠狠狠狠99中文字幕| 不卡av一区二区三区| 免费女性裸体啪啪无遮挡网站| 欧美 亚洲 国产 日韩一| 免费女性裸体啪啪无遮挡网站| 色播在线永久视频| 久久中文字幕人妻熟女| 亚洲最大成人中文| 满18在线观看网站| 一级a爱视频在线免费观看| 一级,二级,三级黄色视频| 女同久久另类99精品国产91| 久久九九热精品免费| 亚洲中文字幕一区二区三区有码在线看 | 亚洲黑人精品在线| 欧美激情久久久久久爽电影 | 欧美亚洲日本最大视频资源| 禁无遮挡网站| 久久人人97超碰香蕉20202| 午夜老司机福利片| 在线视频色国产色| 精品欧美一区二区三区在线| 国产精品久久久人人做人人爽| 久久久久精品国产欧美久久久| 亚洲成人国产一区在线观看| 精品国产乱子伦一区二区三区| 国产一区二区三区综合在线观看| 亚洲中文日韩欧美视频| 日韩欧美免费精品| 日韩国内少妇激情av| av网站免费在线观看视频| 黄色成人免费大全| 久久九九热精品免费| 丝袜在线中文字幕| 亚洲人成伊人成综合网2020| 亚洲国产精品sss在线观看| 免费久久久久久久精品成人欧美视频| 欧美激情 高清一区二区三区| 国产精品一区二区免费欧美| videosex国产| 国产精品亚洲美女久久久| 欧美成人性av电影在线观看| 精品福利观看| 真人一进一出gif抽搐免费| 纯流量卡能插随身wifi吗| 亚洲人成伊人成综合网2020| 国产在线观看jvid| 国产片内射在线| 久久天堂一区二区三区四区| 可以在线观看毛片的网站| 久久精品人人爽人人爽视色| 国产精品乱码一区二三区的特点 | 999久久久国产精品视频| 久久久精品国产亚洲av高清涩受| 天天躁狠狠躁夜夜躁狠狠躁| 久久久久精品国产欧美久久久| 欧美黄色片欧美黄色片| 久久久久久久久中文| 免费看美女性在线毛片视频| 免费无遮挡裸体视频| 中亚洲国语对白在线视频| 国产一级毛片七仙女欲春2 | 在线观看舔阴道视频| 国内毛片毛片毛片毛片毛片| 成年版毛片免费区| 大香蕉久久成人网| 91字幕亚洲| 日本撒尿小便嘘嘘汇集6| 国产在线观看jvid| 国产av一区在线观看免费| 国产成年人精品一区二区| 成人欧美大片| 精品免费久久久久久久清纯| 侵犯人妻中文字幕一二三四区| 国产精品,欧美在线| 亚洲欧洲精品一区二区精品久久久| 一二三四社区在线视频社区8| 一级毛片高清免费大全| 亚洲欧美一区二区三区黑人| 精品少妇一区二区三区视频日本电影| 免费在线观看黄色视频的| 久久久国产欧美日韩av| 日本在线视频免费播放| 亚洲久久久国产精品| 精品久久久久久久人妻蜜臀av | 亚洲色图综合在线观看| 国内毛片毛片毛片毛片毛片| 国语自产精品视频在线第100页| 午夜免费激情av| 午夜视频精品福利| 欧美一级毛片孕妇| 亚洲成人国产一区在线观看| 亚洲av片天天在线观看| 电影成人av| 亚洲精品在线美女| 最新在线观看一区二区三区| 精品人妻在线不人妻| 免费在线观看日本一区| 精品国产乱码久久久久久男人| 一二三四在线观看免费中文在| 波多野结衣一区麻豆| 国产av在哪里看| 色尼玛亚洲综合影院| 99精品欧美一区二区三区四区| 91在线观看av| 亚洲五月天丁香| ponron亚洲| 十分钟在线观看高清视频www| 少妇被粗大的猛进出69影院| 国产精品电影一区二区三区| 国产高清有码在线观看视频 | 脱女人内裤的视频| 少妇裸体淫交视频免费看高清 | 亚洲久久久国产精品| 大码成人一级视频| 男女午夜视频在线观看| 国产欧美日韩综合在线一区二区| 老司机靠b影院| 亚洲五月婷婷丁香| 手机成人av网站| av网站免费在线观看视频| 757午夜福利合集在线观看| 51午夜福利影视在线观看| 午夜福利影视在线免费观看| 精品国产乱码久久久久久男人| 欧美日本视频| 精品久久久久久久毛片微露脸| 9191精品国产免费久久| 亚洲无线在线观看| 亚洲午夜理论影院| 国产精品爽爽va在线观看网站 | 法律面前人人平等表现在哪些方面| 日韩精品免费视频一区二区三区| 人妻久久中文字幕网| av在线播放免费不卡| 免费不卡黄色视频| 久久久久国产一级毛片高清牌| 精品电影一区二区在线| 久99久视频精品免费| 99久久久亚洲精品蜜臀av| 欧美色视频一区免费| 悠悠久久av| 国产亚洲欧美98| 国产精品,欧美在线| 99久久99久久久精品蜜桃| 久久精品成人免费网站| 国产精品久久久久久亚洲av鲁大| 午夜久久久在线观看| 啦啦啦 在线观看视频| 色婷婷久久久亚洲欧美| 麻豆国产av国片精品| 亚洲国产看品久久| 久久国产亚洲av麻豆专区| 亚洲aⅴ乱码一区二区在线播放 | 中文字幕精品免费在线观看视频| 一本久久中文字幕| 黑人巨大精品欧美一区二区蜜桃| 正在播放国产对白刺激| 黑丝袜美女国产一区| 精品不卡国产一区二区三区| 亚洲人成伊人成综合网2020| 亚洲第一青青草原| 两性午夜刺激爽爽歪歪视频在线观看 | 男人舔女人下体高潮全视频| 亚洲 欧美一区二区三区| 在线永久观看黄色视频| 成人欧美大片| 久久精品91无色码中文字幕| 亚洲少妇的诱惑av| 伦理电影免费视频| 精品国产乱码久久久久久男人| 国产99白浆流出| 狂野欧美激情性xxxx| 欧美日本中文国产一区发布| 久久精品亚洲熟妇少妇任你| 在线观看免费午夜福利视频| 中文字幕人成人乱码亚洲影| 一级毛片女人18水好多| 母亲3免费完整高清在线观看| 久久久久久人人人人人| 日本在线视频免费播放| 亚洲av电影在线进入| 国产亚洲精品久久久久久毛片| 成人国语在线视频| www.999成人在线观看| 在线十欧美十亚洲十日本专区| 两性夫妻黄色片| 国产真人三级小视频在线观看| 啦啦啦韩国在线观看视频| 电影成人av| 国产精品久久久久久亚洲av鲁大| 九色国产91popny在线| а√天堂www在线а√下载| 麻豆久久精品国产亚洲av| 国产激情久久老熟女| 久久久国产精品麻豆| 亚洲三区欧美一区| 可以免费在线观看a视频的电影网站| 久久久水蜜桃国产精品网| 欧美日韩瑟瑟在线播放| 久久香蕉激情| 免费av毛片视频| 成人永久免费在线观看视频| 一级作爱视频免费观看| 欧美黑人精品巨大| 欧美日本视频| 欧美色视频一区免费| 日韩精品免费视频一区二区三区| 9191精品国产免费久久| 91国产中文字幕| 男女下面进入的视频免费午夜 | 97人妻天天添夜夜摸| 国内精品久久久久久久电影| 亚洲男人天堂网一区| 欧美精品啪啪一区二区三区| 精品国产一区二区久久| 国产成年人精品一区二区| 色老头精品视频在线观看| 国内精品久久久久久久电影| 免费在线观看完整版高清| 曰老女人黄片| 桃色一区二区三区在线观看| 免费在线观看完整版高清| 手机成人av网站| 国产97色在线日韩免费| 日本精品一区二区三区蜜桃| 777久久人妻少妇嫩草av网站| 99久久精品国产亚洲精品| 在线天堂中文资源库| 国产精品免费视频内射|