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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python cpython关系_第3篇:CPython内部探究:PyASCIIObject的初始化

發布時間:2024/1/23 python 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python cpython关系_第3篇:CPython内部探究:PyASCIIObject的初始化 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在CPython3.3之后,字符串對象發生了根本性的變法,本篇我們來討論一下字符串對象,在Include/unicodeobject.h,在整個源代碼的官方文檔可以歸納出幾點。在CPython3.3+之后,Unicode字符串分為有4種

緊湊型ASCII(Compact ASCII)

緊湊型ASCII也稱為ASCII限定字符串(ASCII only String).其對應PyASCIIObject結構體,該對象使用一個空間連續的內存塊(一個內部的state結構體和一個wchar_t類型的指針),緊湊型ASCII只能涵蓋拉丁編碼以內的字符。ASCII字符限定意味著PyASCIIObject只能U+0000 ~ U+007F這段區間的字符碼。

typedef struct {

PyObject_HEAD

Py_ssize_t length; /* 字符串中的碼位個數 */

Py_hash_t hash; /* Hash value; -1 if not set */

struct {

unsigned int interned:2;

unsigned int kind:3;

unsigned int compact:1;

unsigned int ascii:1;

unsigned int ready:1;

unsigned int :24;

} state;

wchar_t *wstr; /*C底層的寬字符序列以NUL結束*/

} PyASCIIObject;

ASCII限定字符串可以由PyUnicode_New函數使用其結構體創建并設定state.ascii為1,state.compact為1。

從上面的類定義可知

length用于保存字符串中字符編碼的數量

hash用于緩存C級別字符串的哈系值。由于字符串對象是不可變對象,這樣避免每次重新計算該字符串的hash字段的值

state保存了保存了其子類實例的狀態信息,

wstr是緩存C字符串的一個wchar指針,當然它是以“\0”結束

緊湊型Unicode(Compact Unicode)

其對應PyCompactUnicodeObject結構體,緊湊型Unicode以PyASCIIObject為基類,非ASCII字符串可以通過PyUnicode_New函數為PyCompactUnicodeObject分配內存并設置state.compact=1

typedef struct {

PyASCIIObject _base;

Py_ssize_t utf8_length; /* utf8中的字節數,不包括結尾的\0. */

char *utf8; /* UTF-8表示形式(\0終止) */

Py_ssize_t wstr_length; /* wstr中的碼位個數 */

} PyCompactUnicodeObject;

傳統的字符串(Legacy String)

其對應PyUnicodeObject結構體,傳統的字符串對象會其中會包含兩種特殊狀態not ready和ready。

傳統的字符串可以通過PyUnicode_FromUnicode為分配PyUnicodeObject結構體分配內存并封裝C級別的unicode字符串。 實際的字符串數據最初位于wstr塊中,并使用_PyUnicode_Ready函數復制到data的塊中。

typedef struct {

PyCompactUnicodeObject _base;

union {

void *any;

Py_UCS1 *latin1;

Py_UCS2 *ucs2;

Py_UCS4 *ucs4;

} data; /* 最小形式的Unicode緩沖區 */

} PyUnicodeObject;

Unicode對象的原始基類除了PyObject外,是以PyASCIIObject繼承而來的,PyCompactUnicodeObject類繼承PyASCIIObject,PyUnicodeObject繼承自PyCompactUnicodeObject,那么整個CPython3.3+的字符串體系可以用如下圖表示

Unicode字符串的字節寬度

在了解字符串如何創建有一個非常關鍵概念,我們查看Include/cpython/unicodeobject.h源文件時,CPython內部定義了一個叫PyUnicode_Kind的枚舉類型,PyUnicode_New函數在實例化一個字符串對象時,會使用PyUnicode_Kind的枚舉值設定字符串對象內部類state.kind的值,該字段將告知CPython的其他內部代碼如何解讀C底層的char指針指向的字符串數據。

enum PyUnicode_Kind {

/* String contains only wstr byte characters. This is only possible

when the string was created with a legacy API and _PyUnicode_Ready()

has not been called yet. */

PyUnicode_WCHAR_KIND = 0,

/* Return values of the PyUnicode_KIND() macro: */

PyUnicode_1BYTE_KIND = 1,

PyUnicode_2BYTE_KIND = 2,

PyUnicode_4BYTE_KIND = 4

};

字符串對象的內存分配

前文說到PyASCIIObject對象和PyCompactUnicodeObject對象都可以通過PyUnicode_New函數來創建,那么該函數如何區分它創建的目標是PyASCIIObject,還是PyCompactUnicodeObject呢?盡管兩者是"父子"的繼承關系,畢竟它們是不同的數據類型,仔細看一下實現代碼,大體上PyUnicode_New函數是根據maxchar來區分創建什么字符串對象的。

maxchar小于128,并且字符位寬為1個字節,即標準的ASCII可識別的有效字符僅有128個,于是創建PyASCIIObject對象

maxchar小于256,并且字符位寬為1個字節,PyUnicode_New就創建PyCompactUnicodeObject對象。對于256個字符碼位組成的字符集,稱為擴展的ASCII字符集(Extended ASCII Charset)

字節通常用于保存文本文檔中的各個字符。 在ASCII字符集中,每個0到127之間的二進制值都被賦予一個特定字符。 大多數計算機擴展了ASCII字符集,以使用一個字節中可用的256個字符的整個范圍。 前128個字符處理特殊內容,例如常見外語中的重音字符。

maxchar小于65536,并且字符位寬為2個字節,PyUnicode_New就創建PyCompactUnicodeObject對象,這種情況PyCompactUnicodeObject對象實際保存的是utf-16編碼的字符串。

最后一種情況就是處理碼位個數大于65536且小于MAX_UNICODE,通常此類的字符串的編碼是utf-32

PyObject *

PyUnicode_New(Py_ssize_t size, Py_UCS4 maxchar)

{

PyObject *obj;

PyCompactUnicodeObject *unicode;

void *data;

enum PyUnicode_Kind kind;

int is_sharing, is_ascii;

Py_ssize_t char_size;

Py_ssize_t struct_size;

/*返回空字符串的PyObject包裝類 */

if (size == 0 && unicode_empty != NULL) {

Py_INCREF(unicode_empty);

return unicode_empty;

}

//處理ASCII字符集

is_ascii = 0;

is_sharing = 0;

struct_size = sizeof(PyCompactUnicodeObject);

if (maxchar < 128) {

kind = PyUnicode_1BYTE_KIND;

char_size = 1;

is_ascii = 1;

struct_size = sizeof(PyASCIIObject);

}

//處理ASCII擴展的字符集

else if (maxchar < 256) {

kind = PyUnicode_1BYTE_KIND;

char_size = 1;

}

//處理utf-16編碼的字符集

else if (maxchar < 65536) {

kind = PyUnicode_2BYTE_KIND;

char_size = 2;

if (sizeof(wchar_t) == 2)

is_sharing = 1;

}

//處理utf-32編碼的字符串

else {

if (maxchar > MAX_UNICODE) {

PyErr_SetString(PyExc_SystemError,

"invalid maximum character passed to PyUnicode_New");

return NULL;

}

kind = PyUnicode_4BYTE_KIND;

char_size = 4;

if (sizeof(wchar_t) == 4)

is_sharing = 1;

}

/* Ensure we won't overflow the size. */

if (size < 0) {

PyErr_SetString(PyExc_SystemError,

"Negative size passed to PyUnicode_New");

return NULL;

}

if (size > ((PY_SSIZE_T_MAX - struct_size) / char_size - 1))

return PyErr_NoMemory();

/*

來自_PyObject_New()的重復分配代碼,而不是對PyObject_New()的調用,

因此我們能夠為對象及其數據緩沖區分配空間。

*/

obj = (PyObject *) PyObject_MALLOC(struct_size + (size + 1) * char_size);

if (obj == NULL)

return PyErr_NoMemory();

//綁定PyUnicode_Type的類型信息

obj = PyObject_INIT(obj, &PyUnicode_Type);

if (obj == NULL)

return NULL;

unicode = (PyCompactUnicodeObject *)obj;

if (is_ascii)

//obj指針移動

data = ((PyASCIIObject*)obj) + 1;

else

data = unicode + 1;

//設定state內部類的狀態信息

_PyUnicode_LENGTH(unicode) = size;

_PyUnicode_HASH(unicode) = -1;

_PyUnicode_STATE(unicode).interned = 0;

_PyUnicode_STATE(unicode).kind = kind;

_PyUnicode_STATE(unicode).compact = 1;

_PyUnicode_STATE(unicode).ready = 1;

_PyUnicode_STATE(unicode).ascii = is_ascii;

if (is_ascii) {

//NULL結束符

((char*)data)[size] = 0;

_PyUnicode_WSTR(unicode) = NULL;

}

else if (kind == PyUnicode_1BYTE_KIND) {

((char*)data)[size] = 0;

_PyUnicode_WSTR(unicode) = NULL;

_PyUnicode_WSTR_LENGTH(unicode) = 0;

unicode->utf8 = NULL;

unicode->utf8_length = 0;

}

else {

unicode->utf8 = NULL;

unicode->utf8_length = 0;

if (kind == PyUnicode_2BYTE_KIND)

((Py_UCS2*)data)[size] = 0;

else /* kind == PyUnicode_4BYTE_KIND */

((Py_UCS4*)data)[size] = 0;

if (is_sharing) {

_PyUnicode_WSTR_LENGTH(unicode) = size;

_PyUnicode_WSTR(unicode) = (wchar_t *)data;

}

else {

_PyUnicode_WSTR_LENGTH(unicode) = 0;

_PyUnicode_WSTR(unicode) = NULL;

}

}

#ifdef Py_DEBUG

unicode_fill_invalid((PyObject*)unicode, 0);

#endif

assert(_PyUnicode_CheckConsistency((PyObject*)unicode, 0));

return obj;

}

PyUnicode_New函數在計算要為字符串對象分配的內存后,即執行下面這條語句后

obj = (PyObject *) PyObject_MALLOC(struct_size + (size + 1) * char_size);

那么PyASCIIObject的內存分配如下圖

跟著會調用PyObject_INIT(obj, &PyUnicode_Type)函數來將PyUnicode_Type實例綁定到字符串對象的頭部。

OK!我們之前談論PyType_Type實例和各內置數據類型的關系后,你應該清楚字符串對象的初始化匹配對應的PyUnicode_Type實例,我們關注的是tp_new字段的函數指針unicode_new

PyTypeObject PyUnicode_Type = {

PyVarObject_HEAD_INIT(&PyType_Type, 0)

"str", /* tp_name */

sizeof(PyUnicodeObject), /* tp_basicsize */

0, /* tp_itemsize */

/* Slots */

(destructor)unicode_dealloc, /* tp_dealloc */

.....

unicode_repr, /* tp_repr */

&unicode_as_number, /* tp_as_number */

&unicode_as_sequence, /* tp_as_sequence */

&unicode_as_mapping, /* tp_as_mapping */

(hashfunc) unicode_hash, /* tp_hash*/

....

(reprfunc) unicode_str, /* tp_str */

PyObject_GenericGetAttr, /* tp_getattro */

....

Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE |

Py_TPFLAGS_UNICODE_SUBCLASS, /* tp_flags */

unicode_doc, /* tp_doc */

.....

PyUnicode_RichCompare, /* tp_richcompare */

0, /* tp_weaklistoffset */

unicode_iter, /* tp_iter */

0, /* tp_iternext */

unicode_methods, /* tp_methods */

....

&PyBaseObject_Type, /* tp_base */

....

unicode_new, /* tp_new */

PyObject_Del, /* tp_free */

};

若我們為以下字符串,分配內存,對于CPython來說,它們默認執行utf-8執行解碼也即29個字節

"我是一個自由開發者!!"

當整個PyUnicode_New函數返回時,它構建的PyASCIIObject如下內存圖所示

字符串對象的初始化

一個簡單的例子,有想過在一個Python腳本中,一個字符串字面量如何在CPython內部完成字符串對象的實例化嗎?對于CPython3.9來說,在實例化一個腳本內固有的字符串(即單引號或雙引號內),其實質上從C級別的字符指針(const char*)指向的字符串字面量拷貝到PyUnicode_New函數分配的堆內存的過程。而字符串初始化的函數調用起點為PyUnicode_DecodeUTF8Stateful函數。

該流程省略了很多unicode字節碼解碼等特殊情況而得到一個簡化的流程圖。經過測試,幾乎所有Python腳本內部所有字符串初始化的常規函數調用流程。

有人可能會問,你這個圖依據是怎么來的?我們已經知道PyUnicode_New函數是一個為字符串對象間接分配內存的函數接口,我們只要通過IDE工具查找并篩選引用該函數的上一個函數的結果,從中找到可能的函數調用路徑,并在各個可能的函數中插入一些printf函數,打印函數名稱和相關傳入的關鍵參數,就能推斷出該字符串對象初始化的軌跡了。還有慎用Python的Debug模型,因為你從IDE工具看到內存狀態可能和運行時有所差異的。這個我在其他篇章也提到過。例如,我們在一個測試的test.py文件中,測試下面的Python字符串的實例化過程

"我是一個自由開發者!!"

那么執行python腳本將所有打印的運行時信息重定向到一個文本中

./python test.py >debug.txt

如下圖所示,我們發現只要python的運行時系統不論調用模塊間的內置函數,還是用戶的自定義函數,只要涉及Python字符串對象都依次遵循上面PyASCIIObject/PyUnicodeObject初始化的函數調用過程

unicode_decode_utf8函數

回歸正題,我們先看一下一個關鍵的函數unicode_decode_utf8,該函數的完整代碼見Objects/unicodeobject.c的第4979行-5122行,由于篇幅所限我這里將該函數拆解三個部分來討論,先查看第4979行第5088行.該函數第一個參數是const char*類型字符指針s,這里重點討論該函數和它調用的ascii_decode函數的一些細節問題。

static PyObject *

unicode_decode_utf8(const char *s, Py_ssize_t size,

_Py_error_handler error_handler, const char *errors,

Py_ssize_t *consumed)

{

//處理空字符對象返回

if (size == 0) {

if (consumed)

*consumed = 0;

_Py_RETURN_UNICODE_EMPTY();

}

/* 處理僅為一個字符的情況,且假定是ASCII字符 */

if (size == 1 && (unsigned char)s[0] < 128) {

if (consumed)

*consumed = 1;

return get_latin1_char((unsigned char)s[0]);

}

const char *starts = s;

const char *end = s + size;

//假定參數s是一堆由ASCII碼位組成的字符串

PyObject *u = PyUnicode_New(size, 127);

if (u == NULL) {

return NULL;

}

s += ascii_decode(s, end, PyUnicode_1BYTE_DATA(u));

if (s == end) {

return u;

}

....

}

unicode_decode_utf8函數假定傳入的C級別的字符串分三種情況實例化字符串對象

第1種情況:僅包含一個字符且位于標準的ASCII字符集區間內

此時調用get_latin1_char函數并返回,那么get_latin1_char函數主要做的事情就是在整個Python解釋器運行期間的緩存所有使用過的單個ASCII字符對象到一個長度為256的unicode_latin1靜態數組中。否則會為該字符調用PyUnicode_New函數分配內存并緩存到unicode_latin1數組后再返回。

static PyObject*

get_latin1_char(unsigned char ch)

{

PyObject *unicode;

#ifdef LATIN1_SINGLETONS

unicode = unicode_latin1[ch];

//如果該字符已緩存在unicode_latin1中,立即返回

if (unicode) {

Py_INCREF(unicode);

return unicode;

}

#endif

//否則會為該字符分配內存

unicode = PyUnicode_New(1, ch);

if (!unicode) {

return NULL;

}

PyUnicode_1BYTE_DATA(unicode)[0] = ch;

assert(_PyUnicode_CheckConsistency(unicode, 1));

#ifdef LATIN1_SINGLETONS

Py_INCREF(unicode);

unicode_latin1[ch] = unicode;

#endif

return unicode;

}

第2種情況:假定字符串長度不超過127,即由ASCII區間內的任意編碼組成的字符串

這一邏輯推定的事實是前127個字符編碼(即ASCII字符集)是unicode字符集的一個子集。不論傳入的C級別字符串屬于哪一種情況,都需經過一個特殊的ascii_decode函數,這個ascii_decode函數對于在如下情況通常給unicode_decode_utf8函數返回0的偏移量

純ASCII字符串或純中文字符的unicode字符串

任意ASCII字符和多國unicode字符編碼混合的字符串

PS:具體的源代碼請查看下面代碼,關于該函數CPython源代碼文檔,以及官方網站的API說明都沒有提及,因此,我對其算法甚少理解,有大伙提供詳細信息,煩請跟帖評論留言。

static Py_ssize_t

ascii_decode(const char *start, const char *end, Py_UCS1 *dest)

{

const char *p = start;

const char *aligned_end = (const char *) _Py_ALIGN_DOWN(end, SIZEOF_LONG);

#if !defined(__m68k__)

#if SIZEOF_LONG <= SIZEOF_VOID_P

//斷言dest是按8字節對齊

assert(_Py_IS_ALIGNED(dest, SIZEOF_LONG));

if (_Py_IS_ALIGNED(p, SIZEOF_LONG)) {

/* Fast path, see in STRINGLIB(utf8_decode) for

an explanation. */

/* Help allocation */

const char *_p = p;

Py_UCS1 * q = dest;

while (_p < aligned_end) {

unsigned long value = *(const unsigned long *) _p;

if (value & ASCII_CHAR_MASK)

break;

*((unsigned long *)q) = value;

_p += SIZEOF_LONG;

q += SIZEOF_LONG;

}

p = _p;

while (p < end) {

if ((unsigned char)*p & 0x80)

break;

*q++ = *p++;

}

return p - start;

}

#endif

#endif

while (p < end) {

/* Fast path, see in STRINGLIB(utf8_decode) in stringlib/codecs.h

for an explanation. */

if (_Py_IS_ALIGNED(p, SIZEOF_LONG)) {

/* Help allocation */

const char *_p = p;

while (_p < aligned_end) {

unsigned long value = *(const unsigned long *) _p;

if (value & ASCII_CHAR_MASK)

break;

_p += SIZEOF_LONG;

}

p = _p;

if (_p == end)

break;

}

if ((unsigned char)*p & 0x80)

break;

++p;

}

memcpy(dest, start, p - start);

return p - start;

}

我們上面示例字符串在初始化時過程前,我們在其C函數內用pinrtf函數的關鍵信息的輸出,編譯后運行如下圖

我們將上面的信息繪制成一個內存圖,自然就一目了然啦。由于ascii_decode在函數返回后,對于任意的ASCII字符串對象或純Unicode編碼的字符串對象,p-start的偏移量始終為0.

ss8..png

還有更多的細節,我們說本實例的字符串的長度是29字節,前27個字節是unicode編碼,而最后兩個字節是純粹ASCII字符。其實UTF-8的思想是使用不同長度的字節序列對各種Unicode字符進行編碼, 標準的ASCII字符,即包括拉丁字母數字和標點符號使用一個字節、ASCII擴展字符都以2字節的順序排列、 韓文,中文和日文表意文字使用3字節序列。

小結

我們本篇討論了字符串對象的內存分配PyUnicode_New函數,以及提出了CPython3.3+的字符串初始化的函數調用路徑,先討論了unicode_decode_utf8函數和ascii_decode函數的一些細節問題。下一篇會討論剩下的unicode_decode_utf8代碼細節。

更新中.....

總結

以上是生活随笔為你收集整理的python cpython关系_第3篇:CPython内部探究:PyASCIIObject的初始化的全部內容,希望文章能夠幫你解決所遇到的問題。

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

97视频资源| 特级xxxxx欧美 | 国产福利精品在线观看 | www国产亚洲精品 | 四虎成人精品永久免费av | 亚洲精品久久久久久久不卡四虎 | 中文在线a∨在线 | 在线午夜 | av在线之家电影网站 | 中文字幕在线观看免费观看 | 国产视频精品免费 | 国产亚洲精品久久久久5区 成人h电影在线观看 | 国产麻豆剧传媒免费观看 | 国产一级片免费观看 | 91在线最新 | 久草在线视频首页 | 在线看片日韩 | 天天干天天干天天干 | 3d黄动漫免费看 | 啪啪免费试看 | 成人黄色在线播放 | 99这里有精品 | 亚洲精品久久久久久国 | 91av网址| 国产精品久久久久久久久久久杏吧 | 国产精品欧美精品 | 欧美成年黄网站色视频 | 国产盗摄精品一区二区 | 久久久久综合精品福利啪啪 | 久草精品在线播放 | 在线免费av播放 | 久久久久久久久久久免费 | 亚洲精品视频观看 | 久久这里只精品 | 国产拍揄自揄精品视频麻豆 | 午夜精品一区二区三区在线 | 97人人添人澡人人爽超碰动图 | 精品主播网红福利资源观看 | 成年人黄色免费看 | 激情图片区 | 欧洲一区二区三区精品 | 亚洲高清色综合 | 日本在线成人 | 亚洲免费色 | 91资源在线播放 | 亚洲最新av在线 | 国产精品美女久久久久久久 | 黄色片免费看 | 精品欧美一区二区精品久久 | 丁香五月网久久综合 | 亚洲免费在线看 | 黄色影院在线免费观看 | 国产日韩视频在线播放 | 一区二区 不卡 | 亚洲视频456 | 水蜜桃亚洲一二三四在线 | 久久精品久久精品久久 | 亚洲精品视频在线播放 | 国产在线观看,日本 | 天天操天天色天天射 | 成人97视频 | 深爱激情av | 国产一区二区高清不卡 | 在线91视频 | 激情综合网五月激情 | 九九交易行官网 | 成人av资源网 | www.成人sex| 国产又粗又长的视频 | 国产黄大片在线观看 | 久久影院精品 | 亚洲欧美国产视频 | 国产精品一区二区吃奶在线观看 | 日韩亚洲在线视频 | 日韩激情一二三区 | 国产区在线看 | 天天干夜夜想 | 黄色av观看| 国产精品一区二区av | 成人小视频免费在线观看 | 午夜国产一区二区 | 五月激情婷婷丁香 | 亚洲视频观看 | 在线观看免费一区 | 国产精品99久久久久久久久久久久 | 欧美日韩一区二区三区在线免费观看 | 国产黄色片免费看 | 日韩在线播放视频 | 奇米网777 | 免费av网站在线看 | 久久久久久久久艹 | 欧美久久99 | 国产精品自在欧美一区 | 国产精品久久久一区二区三区网站 | 91精品视频免费在线观看 | 亚洲精品免费观看视频 | 久久久久久国产精品亚洲78 | 久久九九影视 | av网站手机在线观看 | 色婷婷国产在线 | 婷婷色综合色 | 色综合网| 99精品视频在线 | 亚洲综合小说 | 天天爱天天草 | av在线播放中文字幕 | 在线观看日韩精品视频 | 天天干天天操天天 | 黄色软件视频大全免费下载 | 国产成人精品免高潮在线观看 | www狠狠操| 国产精品久久久亚洲 | 亚洲特级片 | 亚洲一区尤物 | www一起操 | 国产日韩欧美自拍 | 三级av免费看 | av亚洲产国偷v产偷v自拍小说 | 久久视频这里有久久精品视频11 | 91免费黄视频| 91精品视频在线免费观看 | 懂色av一区二区在线播放 | 亚洲精品国产成人 | 国产精品免费成人 | 激情av在线播放 | 免费在线观看av网址 | 国产成人精品免高潮在线观看 | 日韩激情免费视频 | 西西4444www大胆无视频 | 欧美午夜久久 | 久久婷亚洲五月一区天天躁 | 日p视频 | 天堂v中文 | 亚洲五月六月 | 久久国产欧美日韩精品 | 毛片网站在线看 | 精品国产91亚洲一区二区三区www | 99久久精品免费看国产麻豆 | 国产色在线观看 | 欧美性猛片 | 99久久毛片 | 国产成人精品免费在线观看 | 激情 婷婷| www.天天色.com | av色一区 | 草久久影院 | 久久夜av | 综合久久久久久久久 | 99久久久国产精品免费99 | 亚洲精品视频在 | 国产成人精品一区二 | 色.www| 狠狠伊人 | 在线va视频| 99精品免费在线观看 | 中文字幕成人一区 | 综合久色 | 激情五月六月婷婷 | 亚洲人毛片 | 九九免费在线看完整版 | av免费在线观看网站 | 日本精品视频网站 | 久久婷婷精品 | 在线观看视频国产一区 | 久草精品在线播放 | 99精品国产福利在线观看免费 | 国偷自产中文字幕亚洲手机在线 | 国产最新在线观看 | 97操碰 | 91在线日本| 亚洲精品中文在线资源 | 黄色视屏在线免费观看 | 国产精品免费观看在线 | 三级视频国产 | 久久国产剧场电影 | 精品免费一区 | 日韩r级在线 | 国产黄色片免费 | 超碰97中文 | 亚洲黄色在线观看 | 日韩av成人在线观看 | 色综合天 | av色一区 | 日本中文在线观看 | 国产三级精品三级在线观看 | 激情小说 五月 | 免费看片亚洲 | 日韩av成人在线观看 | 久久精品国产美女 | 久久人人做 | 少妇做爰k8经典 | 美国三级黄色大片 | 欧美激情视频一二三区 | a级片久久 | 91九色porny蝌蚪主页 | 激情综合婷婷 | 成人免费观看电影 | 成人黄色在线看 | 福利视频网站 | 色人久久 | 黄色视屏免费在线观看 | 久久免费av电影 | 日韩视频一区二区 | 91麻豆精品国产午夜天堂 | 欧美激情精品久久久久久免费印度 | av三级在线看 | 最近中文字幕免费视频 | 男女激情麻豆 | av在线影片 | 欧洲精品视频一区二区 | avwww在线观看 | 十八岁以下禁止观看的1000个网站 | 中文字幕91在线 | 国产在线91在线电影 | 亚洲情影院 | 免费欧美 | 日韩高清一二区 | 亚洲精品色 | 国产最新视频在线观看 | 精品福利视频在线观看 | 97超碰人人澡人人 | 在线观看成人av | 亚洲国产精品人久久电影 | 色视频在线观看 | 丁香色婷婷 | 波多野结衣一区 | 亚洲免费高清视频 | 亚洲视频精品在线 | www.夜夜干.com | 在线观看亚洲精品视频 | 色婷婷精品 | 韩国在线视频一区 | 国产在线免费观看 | 亚洲黄色免费网站 | 黄色一级大片在线观看 | 欧美激情精品久久久久久免费 | 日韩中文字幕在线不卡 | 国产综合小视频 | 欧美亚洲xxx | 国产精品女人久久久久久 | 国产久草在线观看 | 在线 高清 中文字幕 | 91成人精品一区在线播放 | 亚洲在线精品视频 | 97免费视频在线 | 日韩欧美高清在线观看 | 91精品视频免费看 | 国产va精品免费观看 | 午夜国产影院 | 日本韩国精品一区二区在线观看 | 欧美大片mv免费 | 国产原创在线 | 婷婷激情综合网 | 天天插夜夜操 | 日韩精品中文字幕在线观看 | 一级一片免费视频 | 亚洲激情在线播放 | 国产黄色大片免费看 | 日本精品视频一区二区 | 婷婷久久综合网 | 免费欧美高清视频 | 亚洲人人网 | 色婷婷久久久综合中文字幕 | 国产精品丝袜在线 | 在线视频中文字幕一区 | 狠狠干五月天 | 亚洲欧美日韩一二三区 | 91视频电影| 色国产在线 | 色99久久 | 亚洲作爱视频 | 麻豆一区二区三区视频 | 亚洲一区天堂 | 欧美网址在线观看 | 亚洲午夜精品在线观看 | 91精品在线播放 | 日韩r级在线 | 黄色看片 | 四虎成人精品在永久免费 | 久久久久久97三级 | 99久久精品免费看 | 五月在线视频 | 亚欧日韩成人h片 | 日日射av | 日韩电影在线一区 | 91av视频免费在线观看 | a√国产免费a | 成人a级网站 | 欧美在线久久 | 亚洲国产播放 | 久产久精国产品 | 久久观看| 日韩欧美电影 | 天天色婷婷 | 日韩精选在线观看 | 正在播放国产一区 | 中文字幕成人在线 | 日韩免费不卡av | 午夜国产福利在线 | www.大网伊人 | 久久国内精品99久久6app | 天天拍天天干 | 精品久久久久国产免费第一页 | 日韩黄色免费看 | 精品在线视频观看 | 国产精品黑丝在线观看 | 91视频91自拍 | 九月婷婷人人澡人人添人人爽 | 97色在线视频 | 高潮久久久 | 国产在线观看a | 91黄色在线看 | 午夜精品久久久久久久久久 | 午夜视频在线观看一区二区 | 国产精品入口麻豆 | 久久精品国产第一区二区三区 | 国产日本高清 | 在线精品视频免费观看 | 在线观看国产区 | 黄色精品在线看 | 九九热在线观看视频 | 美女黄久久 | 亚洲精品乱码久久久久久蜜桃91 | 在线网址你懂得 | 成人动漫视频在线 | 欧美精品国产综合久久 | 国产精品久久久久久久久久久久午夜片 | 在线a亚洲视频播放在线观看 | 香蕉久久久久 | 中文字幕av最新更新 | av网站有哪些 | 中文字幕在线观看播放 | av中文在线影视 | 午夜色站 | japanese黑人亚洲人4k | 亚洲日本韩国一区二区 | 免费日韩在线 | 成人性生交大片免费看中文网站 | 91九色蝌蚪视频 | 亚洲欧美国产精品va在线观看 | 超碰免费在线公开 | 成人av免费在线 | 成人精品在线 | 91成人精品在线 | 日韩精品一区二区三区高清免费 | 综合精品久久 | 国产午夜精品一区二区三区嫩草 | 国产精品99久久久精品免费观看 | 日韩欧美精品在线观看视频 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 尤物九九久久国产精品的分类 | 二区视频在线 | www色网站| 亚洲精品乱码久久久久久按摩 | 色片网站在线观看 | 成人资源在线观看 | 天天做天天爱天天综合网 | 亚洲精品日韩av | 91精品国产91久久久久久三级 | 国产日韩视频在线 | a级黄色片视频 | 国产精品手机看片 | 最近中文字幕 | 午夜影院日本 | 伊人婷婷色 | 最新av观看 | 超碰在线94| 天天舔天天搞 | 久草www | 久久a v电影 | 久久超碰免费 | 国产在线精品二区 | 亚洲精品视频网站在线观看 | 51精品国自产在线 | 免费在线观看一区二区三区 | av 在线观看 | 久久69av | 中文字幕在线免费97 | 国产手机在线精品 | 黄色a在线 | 国产青春久久久国产毛片 | 操操操综合 | 精品视频123区在线观看 | 欧洲亚洲精品 | 在线 高清 中文字幕 | 亚洲区色 | 国产精品久久久久久久久久免费看 | 中文字幕国产 | 精品国产人成亚洲区 | 日韩视频一区二区在线观看 | 色天天 | 亚洲四虎在线 | 992tv在线观看网站 | 欧美日韩视频网站 | 国产成人精品一区二区三区福利 | 99久精品| 天天干人人| 永久免费观看视频 | 欧美久草在线 | 国外调教视频网站 | 日韩av在线高清 | 欧美另类巨大 | 狠狠狠综合 | 天天色影院 | 日韩免费一区二区三区 | 中文字幕91 | 免费在线观看成人 | 一级精品视频在线观看宜春院 | 99精品国产在热久久 | 一区在线观看 | 国产精品国产三级国产不产一地 | 久久婷婷激情 | aaa免费毛片 | 免费看一级特黄a大片 | 国产剧情一区在线 | 97超碰成人在线 | 久久视精品 | 国产成人l区| 国偷自产视频一区二区久 | 在线看片日韩 | 天天干天天操天天爱 | 久久精品综合一区 | 日日干av| 日本mv大片欧洲mv大片 | 天天爽天天爽天天爽 | 成 人 黄 色视频免费播放 | 日日夜夜免费精品 | 二区三区在线 | 在线免费看黄网站 | 97天天综合网| 国产亚洲精品久久久久5区 成人h电影在线观看 | 13日本xxxxxⅹxxx20 | 色悠悠久久综合 | 国产精品高潮呻吟久久久久 | 奇米7777狠狠狠琪琪视频 | 六月色婷婷 | 国产视频在线观看一区二区 | 91精品亚洲影视在线观看 | 久久精品xxx | 中文字幕国产在线 | 成人免费一区二区三区在线观看 | 久久不卡视频 | 久久er99热精品一区二区三区 | 久久精品国产一区二区电影 | 在线观看中文字幕dvd播放 | 九九色综合 | 日日夜夜添 | 久草视频在线免费播放 | av动态图片 | 天天射天天干天天 | 久久99热这里只有精品国产 | 又黄又刺激的视频 | 六月激情丁香 | 日韩欧美一区二区三区在线观看 | 国产精品九九九九九 | 开心激情久久 | 久久久www成人免费毛片 | 亚洲精品国产成人av在线 | 国产日韩中文字幕在线 | 亚洲在线视频播放 | 日韩免费视频 | 一级片观看 | 亚洲免费视频在线观看 | 九九久久婷婷 | 亚洲美女在线一区 | 日本黄色一级电影 | 激情视频免费在线观看 | 五月天婷婷在线观看视频 | 天天射综合网站 | 九九九在线观看 | 欧美中文字幕久久 | 黄色毛片在线观看 | 日韩v欧美v日本v亚洲v国产v | 日韩精品视频第一页 | 中文字幕在线观看第一页 | 国产片免费在线观看视频 | 色视频网站在线观看一=区 a视频免费在线观看 | 国产成人一级电影 | 日韩色中色| 色综合天天 | 国产3p视频 | 中文字幕免费一区 | 在线网站黄 | 国产精品18videosex性欧美 | 欧美日韩3p | 一区二区三区日韩在线 | 1000部国产精品成人观看 | 国产午夜一级毛片 | 最新精品视频在线 | 日韩欧美视频一区二区 | 亚洲成aⅴ人在线观看 | 欧美日韩国产精品一区二区三区 | 国产亚洲免费观看 | 丁香色婷| 91大神在线看 | 成年人黄色免费视频 | 不卡国产在线 | 精品一区二区久久久久久久网站 | 国产精品久久一区二区无卡 | 日韩在线播放欧美字幕 | 欧美一级性生活片 | 久久婷婷国产色一区二区三区 | 日韩精品免费一区二区三区 | 国产精品一区二区三区观看 | 99热国产精品 | 99久久99久久精品国产片 | 天天射天天艹 | 久久久久久久影院 | 国产视频一区精品 | 日本高清中文字幕有码在线 | 久久99精品久久久久婷婷 | 在线免费高清一区二区三区 | av激情五月 | 91污污 | 国产精品美女久久久 | 在线免费视频你懂的 | 国产精品免费观看在线 | 九色91在线视频 | 国产传媒一区在线 | 五月天综合色激情 | 99精品国产高清在线观看 | 一区二区三区高清在线观看 | 欧美精品免费在线观看 | 天天操夜夜爱 | 亚洲精品美女在线观看 | 精品一区二区免费在线观看 | 在线 视频 亚洲 | 国产手机在线播放 | 色中文字幕在线观看 | 久久亚洲精品电影 | 亚洲一级片在线观看 | 激情丁香5月 | 欧美91精品久久久久国产性生爱 | 在线观看亚洲视频 | 欧美精品一区二区三区四区在线 | 丁香婷婷色综合亚洲电影 | 天天干,狠狠干 | 国产色在线,com | 精品999在线| 欧美成人影音 | 久久成人欧美 | 亚洲激情久久 | 最近高清中文在线字幕在线观看 | 91尤物在线播放 | 麻豆av一区二区三区在线观看 | 黄色a在线观看 | 亚洲精品99久久久久中文字幕 | 伊人国产在线观看 | 97综合网 | 在线免费高清一区二区三区 | 欧美一区免费观看 | 国产成人精品免高潮在线观看 | 在线免费观看视频一区二区三区 | 九九热精品视频在线播放 | 婷婷电影网| 91亚洲在线观看 | 国产精品视频专区 | 国产视频97 | 人人澡人摸人人添学生av | 国产精品一区二区在线观看 | 在线免费观看的av | 亚洲国产网站 | 国产精品久久久网站 | 日韩激情免费视频 | 国产一区二区播放 | 免费在线激情电影 | 欧美日产一区 | 天天射天天添 | 成人免费观看网站 | 91亚洲影院 | 91精品办公室少妇高潮对白 | 99热在线看 | 国产成人精品一区二区三区福利 | 久久九九免费 | 夜夜躁日日躁狠狠躁 | 91成人久久 | 黄色小网站在线 | 成人免费看黄 | 国产综合久久 | 涩av在线| 国产中出在线观看 | 最近中文字幕免费av | 国产123区在线观看 国产精品麻豆91 | 亚洲成人一二三 | 国产精品一二三 | 日韩av片免费在线观看 | 91精品办公室少妇高潮对白 | 国产精品v a免费视频 | 69精品久久 | 久久综合影视 | 久精品视频在线观看 | 亚洲精品五月 | 中文在线字幕免 | 在线三级播放 | 国产专区一 | 高清在线观看av | 黄色成人影院 | 91麻豆精品国产91久久久使用方法 | 在线视频日韩欧美 | 97国产情侣爱久久免费观看 | 欧美一二三区播放 | 狠狠干夜夜 | 成人久久久久 | 天堂av中文字幕 | 国产精品九九久久久久久久 | 日韩欧美高清 | 五月黄色| 久草视频中文 | 国产一区二区三区免费视频 | 99日韩精品 | 在线视频日韩欧美 | 欧美另类重口 | 久久婷婷激情 | 国产日韩视频在线播放 | 波多野结衣在线播放视频 | 伊香蕉大综综综合久久啪 | 最近中文字幕免费 | 天天干天天操天天干 | 欧美日韩免费一区二区三区 | 精品在线一区二区三区 | 国产黄大片在线观看 | av在线免费观看不卡 | 欧美一级日韩免费不卡 | 日韩亚洲精品电影 | 91精品1区2区| 国产精品毛片一区二区 | 天天草天天摸 | 91完整版在线观看 | 中文在线天堂资源 | 免费视频你懂得 | 国产免费视频一区二区裸体 | 久久久精品午夜 | 国产精品视频免费观看 | 91成人久久 | 五月综合激情 | 国产不卡片 | 最新日韩视频在线观看 | 青青草视频精品 | 日韩在线精品视频 | 国产视频一二区 | 日韩亚洲在线观看 | 日韩av在线一区二区 | 久久免费精品视频 | 97超碰总站 | 天天摸日日摸人人看 | 亚洲四虎在线 | 免费在线观看不卡av | 91视频网址入口 | 国产免费大片 | 亚洲成人av免费 | 99在线精品视频在线观看 | 久久这里有 | 在线观看91精品国产网站 | a级国产乱理伦片在线播放 久久久久国产精品一区 | 亚洲精品777 | 操老逼免费视频 | 国产黄在线播放 | 日产av在线播放 | 国产欧美日韩一区 | 久久免视频| 99精品视频免费看 | 在线亚洲播放 | 中文字幕日韩免费视频 | 午夜精品久久久久久99热明星 | 91av在线不卡 | 色噜噜狠狠狠狠色综合久不 | 97在线观| 免费 在线 中文 日本 | 久久天天拍 | 97超碰人人澡人人 | 国产精品久久久久久久久久久久午夜 | 五月天综合色激情 | 亚洲国产成人精品在线观看 | 在线看黄色的网站 | 日韩欧美视频在线播放 | 天天射天天做 | 国产精品中文久久久久久久 | 国产免费成人 | 色噜噜日韩精品一区二区三区视频 | 久久久久影视 | 欧美狠狠操| 日韩精品视频免费在线观看 | 探花国产在线 | 国产高清绿奴videos | 精品专区| 久久人人做 | 好看的国产精品视频 | 欧美 亚洲 另类 激情 另类 | 久久精品久久精品久久精品 | 精品久久久网 | 欧美日韩精品在线播放 | 一区二区三区动漫 | 91桃色国产在线播放 | 你操综合| 狠狠狠狠干 | 欧美日韩二区在线 | 91超国产| 亚洲一区二区三区在线看 | 亚洲激情国产精品 | 国内精品久久久久久久久久清纯 | 婷婷色吧| 国产亚洲一区二区在线观看 | 99视频精品免费观看, | 中文字幕色综合网 | av免费在线观看1 | 久久国产精品视频观看 | 在线亚洲精品 | 美女视频黄频大全免费 | 国产视频手机在线 | 亚洲精品麻豆视频 | 久久久免费播放 | 午夜精品一区二区三区四区 | 涩涩网站在线 | 一区二区不卡高清 | 亚洲丁香日韩 | 91在线视频精品 | 国内精品久久久久久 | 韩国三级av在线 | 国产亚洲永久域名 | 在线免费观看黄网站 | 欧美精品亚洲精品日韩精品 | 欧美性生活大片 | 久久成人18免费网站 | 91麻豆免费看 | 久久黄色网页 | 久久精品高清视频 | 久草在线视频网 | 永久免费的啪啪网站免费观看浪潮 | 香蕉视频导航 | 国产精品自产拍在线观看 | 久久天天躁夜夜躁狠狠躁2022 | 色偷偷网站视频 | 中文字幕人成不卡一区 | 亚洲做受高潮欧美裸体 | 日日夜夜骑 | 最新动作电影 | 成年人三级网站 | 国产精品久久久久免费观看 | 国产91免费看 | 免费大片黄在线 | 九九九毛片 | 中文字幕人成人 | 精品在线亚洲视频 | 国产日韩欧美在线免费观看 | 黄色免费网站下载 | 中文字幕影视 | 有码中文字幕 | 丁香五月缴情综合网 | 精品久久1| 国产午夜三级一二三区 | 亚洲在线黄色 | 亚洲乱码精品久久久久 | 久久亚洲在线 | 丁香九月激情综合 | 夜夜爽www| 在线成人看片 | 天天操天天干天天操天天干 | 欧美精品v国产精品v日韩精品 | 中文字幕你懂的 | 国产一区欧美日韩 | 日韩视频免费 | 西西444www大胆高清视频 | 精品亚洲欧美一区 | 91爱爱免费观看 | aaa免费毛片| 亚洲第一av在线 | 五月天综合激情网 | 天堂av高清 | 97超视频在线观看 | 成人a视频片观看免费 | 亚洲自拍偷拍色图 | 国产资源在线播放 | 九色在线| 91在线影视 | 亚洲伦理中文字幕 | 日韩在线视频网站 | 69精品在线观看 | 国产精品久久电影网 | 国产成人精品av在线观 | 日韩99热 | 激情五月在线视频 | 911精品美国片911久久久 | 日韩美一区二区三区 | 美女禁18| 一区 二区 精品 | 91av在线视频免费观看 | 中文字幕国产 | 草久视频在线 | 黄色av网站在线观看免费 | 久久久av电影 | 欧美va天堂va视频va在线 | 97激情影院 | 九九九九精品九九九九 | 日韩在线二区 | 在线观看免费av网站 | 波多野结衣小视频 | 亚洲成av人片 | 久久精品综合网 | 久热电影| 日韩免费网址 | a v在线视频 | 亚洲第二色| 一本之道乱码区 | 国产精品xxxx18a99 | 视频成人永久免费视频 | 在线看片日韩 | 麻豆传媒电影在线观看 | 二区精品视频 | 色在线最新 | 久久国产精品免费一区 | 国产精品女主播一区二区三区 | 91av资源网 | 香蕉在线视频观看 | 狠狠网站 | 久久情网 | 欧美日韩高清一区二区 国产亚洲免费看 | 最近中文字幕第一页 | 亚洲 av网站 | 国产精品女人久久久 | 人人爽夜夜爽 | 夜夜骑日日操 | 激情av网| 久草在线资源观看 | 精品国产乱码久久久久久1区2匹 | 久久久久久看片 | 免费合欢视频成人app | 免费亚洲黄色 | 午夜精品视频一区 | 天天透天天插 | 四虎永久国产精品 | 色资源二区在线视频 | 久久爱www. | 五月天com | 亚洲理论影院 | 色黄www小说 | aav在线| 亚洲一级久久 | 日韩免费成人av | 欧美日韩在线观看一区二区 | 精品中文字幕在线播放 | 亚洲成aⅴ人片久久青草影院 | 国产在线观看地址 | 一区二区精品在线观看 | 视频在线99re | 欧美a在线免费观看 | 91在线视频精品 | 国产人成在线视频 | 亚洲精品午夜国产va久久成人 | 中文字幕在线专区 | 97在线视 | 国产中文字幕免费 | 久久久久久久久久久综合 | 国产裸体永久免费视频网站 | 亚洲国产97在线精品一区 | 激情欧美一区二区三区免费看 | 久热电影 | 99视频在线免费看 | 麻豆影视在线播放 | 成人免费在线观看入口 | 日本中文字幕网址 | 岛国精品一区二区 | 81国产精品久久久久久久久久 | 天天操天天干天天 | 91精品国产入口 | 在线午夜电影神马影院 | 中文字幕在线观看1 | 日韩欧美亚州 | 成人av片免费观看app下载 | 97视频在线观看视频免费视频 | 国产精品第二十页 | 国产日韩欧美在线影视 | 99免费看片| 99久久久国产精品免费99 | 91天堂素人约啪 | 欧洲精品亚洲精品 | 97香蕉久久国产在线观看 | 日韩三级免费观看 | 国产精品免费一区二区三区在线观看 | 久久国产香蕉视频 | 成人久久18免费网站麻豆 | 又黄又爽的视频在线观看网站 | 国产免费人成xvideos视频 | 国产区精品 | 久久99精品久久久久久久久久久久 | 91在线观看黄 | 中文字幕亚洲字幕 | 久久不色| 久久久久久免费 | 99精品视频免费全部在线 | 国产夫妻自拍av | 久久久国产精品麻豆 | 欧美一级免费在线 | 亚洲精品欧美专区 | 免费欧美精品 | 国产一区在线视频播放 | 国产美女精品视频免费观看 | 欧美日韩国产一二 | 久久久夜色 | 国产精品永久久久久久久久久 | 激情五月网站 | 国产露脸91国语对白 | 麻豆久久精品 | 午夜国产在线 | 91人网站 | 麻豆传媒视频在线免费观看 | 国产麻豆精品传媒av国产下载 | 久草精品视频在线观看 | 成人黄色影片在线 | 日日夜夜操av | 国产女v资源在线观看 | 九九九九色 | 国产成人99久久亚洲综合精品 | 99视频在线看 | 欧美日韩免费观看一区=区三区 | 黄色免费视频在线观看 | 草久久久久 | 伊人色播 | 精品久久久久久久久久久久 | 91成人免费观看视频 | 日本精品久久久久久 | 亚洲国产精品va在线看 | 天天射天天色天天干 | 亚洲色图 校园春色 | 一区二区三区视频在线 | 国产91影视 | 天天射天天干天天插 | 91在线国产观看 | 在线免费三级 | 欧美一级片在线 | 国产成人99av超碰超爽 | 久久免费中文视频 | 欧美精品久久天天躁 | 美女视频久久久 | 一本色道久久综合亚洲二区三区 | 亚洲精品视频国产 | 国产在线自 | 99久久婷婷国产精品综合 | 在线看国产精品 | 亚洲精品看片 | 国产高清第一页 | 免费观看v片在线观看 | 成人黄在线观看 | 亚洲国产欧美在线看片xxoo | 国产成人av电影在线观看 | 亚洲久草网 | 中文网丁香综合网 | 亚洲 欧洲 国产 日本 综合 | 999免费视频 | 中文永久字幕 | 99久久精品免费看国产一区二区三区 | 午夜精品久久久99热福利 | 免费看一级特黄a大片 | 国产精品免费久久久久久 | 91精品一区二区在线观看 | 麻豆国产视频 | 亚洲精品玖玖玖av在线看 | 亚洲精品黄色在线观看 | 黄污在线观看 | 天天躁日日 | 亚洲区色 | 亚洲精品在线看 | 日本精品中文字幕在线观看 | 亚洲女在线 | 国产无遮挡又黄又爽在线观看 | 亚洲五月综合 | 国产高清黄| 91最新网址在线观看 | 在线成人免费 | 天堂av一区二区 | 特级免费毛片 | 麻豆久久久 | 国产精品视频99 | 色视频在线免费观看 | 天天操天天干天天 | 91精彩在线视频 | 成人福利在线 | 婷婷六月天天 | 亚洲精选视频在线 | 99热在线网站 | 国产成人免费网站 | 91视频高清免费 | 丁香色综合 | 国产精品毛片网 | 91九色成人蝌蚪首页 | 欧美做受高潮1 | 六月婷婷网| 免费在线观看国产精品 | 香蕉视频在线网站 | 成人免费共享视频 | 久久精品系列 | av国产在线观看 | 又色又爽的网站 | 看片网站黄 | 欧美日韩一区二区在线观看 | 在线播放视频一区 | 精品一区二区三区香蕉蜜桃 | 久久精品国产一区二区电影 | 国产一二三精品 |