亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 數字水印技術doc.cpp

?? 基于變換域的信息隱藏技術
?? CPP
?? 第 1 頁 / 共 5 頁
字號:
// 整數DCT圖像壓縮Doc.cpp : implementation of the CDCTDoc class
//

#include "stdafx.h"
#include <windowsx.h>
#include "Math.h"

#include "數字水印技術.h"
#include "數字水印技術Doc.h"
#include "MyDlg1.h"
#include "InputDlg.h"
#include "XIANSHIDLG.h"
#include "FANHR.h"
#include "fileOpen.h"
#include "SUIJIDLG.h"
#include "PIC_256_DLG.h"
#include "Dlg.h"
#include "XYDlg.h"
#include "CANSHUDLG.h"
#include "MAGIC_DLG.h"
#include "GRAY_CANDLG.h"
#include "FENDLG.h"
#include "HELPDLG.h"
#include "DLG_CONTROL.h"
#include "FANHUANFANG.h"

#define  MM 255
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CDCTDoc

IMPLEMENT_DYNCREATE(CDCTDoc, CDocument)

BEGIN_MESSAGE_MAP(CDCTDoc, CDocument)
	//{{AFX_MSG_MAP(CDCTDoc)
	ON_COMMAND(IDC_FFT, OnFft)
	ON_COMMAND(IDC_IFFT, OnIfft)
	ON_COMMAND(IDC_DCT, OnDct)
	ON_COMMAND(IDC_IDCT, OnIdct)
	ON_COMMAND(IDC_ZDCT, OnZdct)
	ON_COMMAND(IDC_ZIDCT, OnZidct)
	ON_COMMAND(ID_SHANG, OnShang)
	ON_COMMAND(IDC_YUCE, OnYuce)
	ON_COMMAND(IDC_HUIFU, OnHuifu)
	ON_COMMAND(IDC_VData, OnVData)
	ON_COMMAND(IDC_HData, OnHData)
	ON_COMMAND(IDC_DataDCT, OnDataDCT)
	ON_COMMAND(IDC_IDCtHData, OnIDCtHData)
	ON_COMMAND(IDC_ZSTORE, OnZstore)
	ON_COMMAND(IDC_HDATADCT, OnHdatadct)
	ON_COMMAND(IDC_HZDCT, OnHZDCt)
	ON_COMMAND(IDC_WUCHA, OnWucha)
	ON_COMMAND(IDC_JIANJIN, OnJianjin)
    ON_COMMAND(IDD_DIALOG8,OnSuijishu)
	ON_COMMAND(IDC_VSHOW, OnVshow)
	ON_COMMAND(IDC_HY, OnHy)
	ON_COMMAND(IDC_ImageDCT, OnImageDCT)
	ON_COMMAND(IDC_ImageIDCT, OnImageIDCT)
	ON_COMMAND(ID_OPENFILE_TXT, OnOpenfileTxt)
	ON_COMMAND(ID_MAGIC, OnMagic)
	ON_COMMAND(ID_GRAY, OnGray)
	ON_COMMAND(ID_FENPIN, OnFenpin)
	ON_COMMAND(ID_SUAN_2, OnSuan2)
	ON_COMMAND(ID_HUIDU_PIC, OnHuiduPic)
	ON_COMMAND(ID_NEW_256_PIC, OnNew256Pic)
	ON_COMMAND(ID_DATA_W, OnDataW)
	ON_COMMAND(ID_S_1, OnS1)
	ON_COMMAND(ID_DATA_PIC, OnDataPic)
	ON_COMMAND(ID_BEGIN_H, OnBeginH)
	ON_COMMAND(ID_YUAN_PIC, OnYuanPic)
	ON_COMMAND(ID_CHUSHI_PIC, OnChushiPic)
	ON_COMMAND(ID_SUB_P_W, OnSubPW)
	ON_COMMAND(ID_TXT_TO_BITS, OnTxtToBits)
	ON_COMMAND(ID_BIT_TXT, OnBitTxt)
	ON_COMMAND(ID_S_4, OnS4)
	ON_COMMAND(ID_2_PIC, On2Pic)
	ON_COMMAND(ID_S_5, OnS5)
	ON_COMMAND(ID_W_T, OnWT)
	ON_COMMAND(ID_TIQU_2, OnWT2)
	ON_COMMAND(ID_SIM_YANZHENG, OnSimYanzheng)
	ON_COMMAND(ID_YANZHENG, OnYanzheng)
	ON_COMMAND(ID_HELPDLG, OnHelpdlg)
	ON_COMMAND(ID_S_2, OnS2)
	ON_COMMAND(ID_PIC_SAVE, OnPicSave)
	ON_COMMAND(ID_S_6, OnS6)
	ON_COMMAND(ID_S_7, OnS7)
	ON_COMMAND(ID_FANH, OnFanHuanFang)
	ON_COMMAND(ID_SUIJISHU, OnSuijishu)
	ON_COMMAND(ID_magicx, Onmagicx)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDCTDoc construction/destruction

CDCTDoc::CDCTDoc()
{
	// TODO: add one-time construction code here
	lpbmi=NULL;
	Min=0;
	Max=255;


}

CDCTDoc::~CDCTDoc()
{
	if(lpbmi!=NULL)
		GlobalFreePtr(lpbmi);
	
}

BOOL CDCTDoc::OnNewDocument()
{
	if (!CDocument::OnNewDocument())
		return FALSE;

	// TODO: add reinitialization code here
	// (SDI documents will reuse this document)
	return FALSE;

	
}



/////////////////////////////////////////////////////////////////////////////
// CDCTDoc serialization

void CDCTDoc::Serialize(CArchive& ar)
{
	if (ar.IsStoring())
	{
		// TODO: add storing code here
	}
	else
	{
		// TODO: add loading code here
	}
}

/////////////////////////////////////////////////////////////////////////////
// CDCTDoc diagnostics

#ifdef _DEBUG
void CDCTDoc::AssertValid() const
{
	CDocument::AssertValid();
}

void CDCTDoc::Dump(CDumpContext& dc) const
{
	CDocument::Dump(dc);
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CDCTDoc commands

//void CDCTDoc::FCT(fl0at *, unsigned int *, float *, int, int)
//{

//}

BOOL CDCTDoc::OnOpenDocument(LPCTSTR lpszPathName) 
{
	if (!CDocument::OnOpenDocument(lpszPathName))
		return FALSE;
	aa=1;
	// TODO: Add your specialized creation code here
	CFile fp;
	fp.Open(lpszPathName,CFile::modeRead);
 	fp.Read((LPSTR)&bmh,sizeof(BITMAPFILEHEADER));//第一次讀
 	if(bmh.bfType!=0x4d42)
 	{
 		MessageBox(NULL,"不是合法的位圖文件","錯誤!",MB_OK);

 		fp.Close();
 		return false;
	}
	
 		DWORD dwBitsSize=bmh.bfSize;
 		lpbmi=(BITMAPINFO*)GlobalAllocPtr(GHND,dwBitsSize-
			sizeof(BITMAPFILEHEADER));//分配內存單元
 		fp.Read(lpbmi,dwBitsSize-sizeof(BITMAPFILEHEADER));//第二次讀
		if((lpbmi->bmiHeader.biBitCount!=8)
			||(lpbmi->bmiHeader.biCompression!=BI_RGB))
 		{
 			MessageBox(NULL,"not 256 or compresed","error",MB_OK);
 			GlobalFreePtr(lpbmi);//釋放內存單元
            lpbmi=NULL;
 			fp.Close();//關閉文件
 			return false;
 		}
 	
	lpbits=(LPBYTE)lpbmi+sizeof(BITMAPINFOHEADER)+256*sizeof(RGBQUAD);
 	m_size.cx=lpbmi->bmiHeader.biWidth;
	m_size.cy=lpbmi->bmiHeader.biHeight;
 	m_TrueWidth=(m_size.cx+3)/4*4;
 
	fp.Close();
    CXYDlg XY;
	XY.DoModal();
	m_x=XY.m_x;
	
	m_y=XY.m_y;
	for(int i=0;i<8;i++)
		for(int j=0;j<8;j++)
		{
			ShowData[i][j]=GetXY(i+m_x,j+m_y);
			StartData[i][j]=GetXY(i+m_x,j+m_y);
		}

	UpdateAllViews(NULL);
	SetModifiedFlag();
	
	return TRUE;
}

BOOL CDCTDoc::OnSaveDocument(LPCTSTR lpszPathName) 
{
	// TODO: Add your specialized code here and/or call the base class
	
//	return CDocument::OnSaveDocument(lpszPathName);
	
	CFile fp;

	fp.Open(lpszPathName,CFile::modeWrite|CFile::modeCreate);
	fp.Write((LPSTR)&bmh,sizeof(BITMAPFILEHEADER));
	fp.Write(lpbmi,bmh.bfSize-sizeof(BITMAPFILEHEADER));
	fp.Close();
	SetModifiedFlag(false);
	return true;
}

void CDCTDoc::OnDraw(CDC *pDC)
{  
	 ::StretchDIBits(pDC->m_hDC,0,0,m_size.cx,m_size.cy,
		0,0,m_size.cx,
		m_size.cy,lpbits,lpbmi,DIB_RGB_COLORS,SRCCOPY);	
		CString str;
		str.Format("圖像象素值  StarPoint(%d,    %d)",m_x,m_y);
		pDC->TextOut(m_size.cx+20,0,str);
		if(aa==1)
		{
			for(int i=0;i<8;i++)
		        for(int j=0;j<8;j++)
				{
			       str.Format("%d",ShowData[i][j]);
			       pDC->TextOut(m_size.cx+20+i*40,(j+1)*30,str);
				} 
		}
		else
             for(int i=0;i<8;i++)
		        for(int j=0;j<8;j++)
				{
			        str.Format("%-8.3f",ShowFData[i][j]);
			       pDC->TextOut(m_size.cx+20+i*80,(j+1)*30,str);
				} 
}

////獲得在(X,Y)點的像素值 \\\GetXY(x,y)
BYTE CDCTDoc::GetXY(int x, int y)
{
	y=m_size.cy-y-1;
	return lpbits[y*m_TrueWidth+x];
}
////修改在(X,Y)點的像素值 \\\SetXY(x,y,value)
void CDCTDoc::SetXY(int x, int y, BYTE val)
{
	y=m_size.cy-y-1;
	lpbits[y*m_TrueWidth+x]=val;

}



////////快速FFT變換
void CDCTDoc::FFT(float*xr,float*xi,float*wr,float*wi,int m,int N)
{
	int ip,k,kk,incr,iter,j,i,l;
	float Tr,Ti;
	    ip=1;
		kk=(N>>1);
		incr=2;
		for(iter=0;iter<m;iter++)
		{
			
			for(j=0;j<N;j+=incr)
			{
				i=j+ip;
				Tr=xr[i];
				Ti=xi[i];
				xr[i]=xr[j]-Tr;
				xi[i]=xi[j]-Ti;
				xr[j]=xr[j]+Tr;
				xi[j]=xi[j]+Ti;
			}
		if(iter!=0)
			{
				for(k=1;k<ip;k++)
				{
					l=k*kk-1;
					for(j=k;j<N;j+=incr)
					{
						i=j+ip;
						Tr=xr[i]*wr[l]-xi[i]*wi[l];
						Ti=xr[i]*wi[l]+xi[i]*wr[l];
						xr[i]=xr[j]-Tr;	
						xi[i]=xi[j]-Ti;
						xr[j]=xr[j]+Tr;
						xi[j]=xi[j]+Ti;

					}
				}
			}
			kk>>=1;
			ip<<=1;
			incr<<=1;
		}
}




///////////////
void CDCTDoc::GLT(float *wr, float *wi, int N, int sign)
{
	int n2,i;
	float theta;
	    n2=(N>>1)-1;
		theta=(float)(2.0*3.14159/((float)N));
		for(i=0;i<n2;i++)
		{
			wr[i]=(float)cos((double)((i+1)*theta));
			wi[i]=(float)sin((double)((i+1)*theta));
			if(sign==(int)(-1))
				wi[i]=-wi[i];
		}


}

void CDCTDoc::bit_reversal(unsigned int*L, int m, int N)
{
	int MASK,C,A,i,j,k;
	for(k=0;k<N;k++)
	{
		MASK=1;
		C=0;
		for(i=0,j=m-1;i<m;i++,j--)
		{
			A=(k&MASK)>>i;
			A<<=j;
			C|=A;
			MASK<<=1;

		}
		L[k]=C;
	}

}


				
void CDCTDoc::FCT(float*x,unsigned int*L,float*C, int m, int N)
{
	int NK1,NK2,i,j,k,kk,ip,incr,L1,k1,k2,iter;
	float T;
	NK1=N>>1;
	T=x[2];
	x[2]=x[1];
	x[1]=T;
	k1=2;
	k2=4;
	for(i=1;i<(NK1-1);i++)
	{
		T=x[k2];
		for(j=0;j<=(k2-k1);j++)
		{
			x[k2-j]=x[k2-j-1];
		}
		x[k1]=T;
		k1++;
		k2+=2;

	}
	NK2=N-1;
	for(i=0;i<(NK1>>1);i++)
	{
		T=x[NK2-i];
		x[NK2-i]=x[NK1+i];
		x[NK1+i]=T;
	}
	
	ip=NK1;
	kk=0;
	incr=N;
	for(iter=0;iter<m;iter++)
	{
		for(k=0;k<ip;k++)
		{
		    for(j=k;j<N;j+=incr)
			{
				i=j+ip;
				T=x[j];
				x[j]=T+x[i];
				x[i]=T-x[i];
				x[i]*=C[kk];
			}
			kk++;
		}
		ip>>=1;
		incr>>=1;

	}
	for(i=0;i<(N-1);i++)
	{
		if(i<=(int)L[i])
			continue;
		else
		{
			T=x[i];
			x[i]=x[L[i]];
			x[L[i]]=T;
		}
	}
	for(i=1;i<NK1;i++)	
		x[i]*=0.5;
	NK1=(N>>2);	
	NK2=(N>>1);
	kk=1;
	for(iter=1;iter<m;iter++)
	{
		kk<<=1;
		L1=kk-1;
		for(k=1;k<=L1;k++)
			for(i=0;i<NK1;i++)
				x[NK1+NK2*k+i]=x[NK1+NK2*k+i]-x[NK1+NK2*(k-1)+i];
			NK1>>=1;
			NK2>>=1;
	}
	x[0]=x[0]/(float)sqrt(N);
	for(i=1;i<N;i++)
		x[i]=(float)(x[i]*1.414/(float)sqrt(N));


}
			
void CDCTDoc::WTS(float*C, int m, int N)
{
int NK1,NK2,i,iter,k;
double  PI;
PI=3.14159;
	NK1=N>>1;
	NK2=N<<1;
	k=0;
	for(iter=0;iter<m;iter++)
	{
		for(i=0;i<NK1;i++)
		{
			C[k]=(float)(cos(  PI*(4*i+1) /(float)NK2 )  );
			k++;
		}
		NK1>>=1;
		NK2>>=1;

	}
	for(i=0;i<k-1;i++)
	{
		C[i]*=2.0;
	}
}


void CDCTDoc::WTSINV(float *C, int m, int N)

{
	int NK,i,k,iter,LK;
	double PI;
	PI=3.14159265;
	 NK=4;
	 k=0;
	 LK=1;
	 for(iter=0;iter<m;iter++)
	 {
		 for(i=0;i<LK;i++)
		 {
			 C[k]=(float)(1.0/(float)cos((PI*(4*i+1))/NK));
			 k++;
		 }
		 NK<<=1;
		 LK<<=1;

	 }

	 for(i=1;i<(N-1);i++)
		 C[i]/=2.0;

}


void CDCTDoc::IFCT(float *x, unsigned int *L, float *C, int m, int N)
{
  int NK1,NK2,i,j,k,kk,ip,incr,L1,iter;
	float T;
	x[0]=x[0]*(float)sqrt(N);
	for(i=1;i<N;i++)
		x[i]=(float)(x[i]*(float)sqrt(N)/1.4140);

	NK1=1;
	NK2=2;
	kk=1;
	for(i=0;i<m;i++)
		kk*=2;
	for(iter=1;iter<m;iter++)
	{
		kk>>=1;
		L1=kk-1;
		for(k=L1;k>=1;k--)
			for(i=0;i<NK1;i++)
               x[NK1+k*NK2+i]=x[NK1+k*NK2+i]+x[NK1+(k-1)*NK2+i];
			NK1<<=1;
			NK2<<=1;

	}
	NK1=N>>1;
	for(i=1;i<NK1;i++)
		x[i]*=2.0;

	
	for(i=0;i<(N-1);i++)
	{
		if(i<(int)L[i])
			continue;
		else
		{
			T=x[i];
			x[i]=x[L[i]];
			x[L[i]]=T;
		}
	}
  
	ip=1;
	kk=0;
	incr=2;
	for(iter=0;iter<m;iter++)
	{
		for(k=0;k<ip;k++)
		{
		    for(j=k;j<N;j+=incr)
			{
				i=j+ip;
				T=x[j];
				x[i]=x[i]*C[kk];
				x[j]=T+x[i];
				x[i]=T-x[i];
			
			}
			kk++;
		}
		ip<<=1;
		incr<<=1;
	

	}
	
	kk=1;
	for(i=1;i<(N>>1);i++)
	{
		T=x[N-1];
		k=1;
		for(j=kk;j<N;j++)
		{
			x[N-k]=x[N-k-1];
			k++;
		}
		x[kk]=T;
		kk+=2;
	}

	for(i=0;i<N;i++)
		x[i]=x[i]/(float)(N);

}
void CDCTDoc::ZDCT(int *Z, unsigned int *L, int m, int N)
{
	double pi;
	int ip,k,kk,incr,iter,j,i,l,Zr1i,Zr1j,T,NK1,k1,k2,NK2;
	int Zr[8],Zi[8];
	pi=3.141592;
//調整輸入順序
	NK1=N>>1;
	T=Z[2];
	Z[2]=Z[1];
	Z[1]=T;
	k1=2;
	k2=4;
	for(i=1;i<(NK1-1);i++)
	{
		T=Z[k2];
		for(j=0;j<=(k2-k1);j++)
		{
			Z[k2-j]=Z[k2-j-1];
		}
		Z[k1]=T;
		k1++;
		k2+=2;

	}
	NK2=N-1;
	for(i=0;i<(NK1>>1);i++)
	{
		T=Z[NK2-i];
		Z[NK2-i]=Z[NK1+i];
		Z[NK1+i]=T;
	}
	//倒位序
	for(i=0;i<(N-1);i++)
	{
		if(i<=(int)L[i])
			continue;
		else
		{
			T=Z[i];
			Z[i]=Z[L[i]];
			Z[L[i]]=T;
		}
	}
	for(i=0;i<N;i++)
	{
		Zr[i]=Z[i];
		Zi[i]=0;
	}
//ZFFT運算
	    ip=1;
		kk=(N>>1);
		incr=2;
		for(iter=0;iter<m;iter++)
		{
			
			for(i=0;i<N;i+=incr)
			{   
				
				
				j=i+ip;
				
				Zr[i]=Zr[i];
				Zr[j]=-Zr[j];

                Zr[i]=Zr[i];
				Zr[j]=Zr[j]+Zr[i];

				Zr[i]=Zr[i]+(int)(Zr[j]*(sqrt(2)/2-1));
				Zr[j]=Zr[j];
				

				Zr[i]=Zr[i];
				Zr[j]=(int)(-Zr[i]*sqrt(2))+Zr[j];
			

				Zr[i]=Zr[i]+(int)(Zr[j]*(sqrt(2)/2-0.5));
				Zr[j]=Zr[j];
				
				Zr[i]=Zr[i]-(int)(0.5*Zr[j]);
				Zr[j]=Zr[j];
				
				Zr[i]=Zr[i];

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
6080yy午夜一二三区久久| 久久精品国产亚洲高清剧情介绍| 一区二区三区免费看视频| 婷婷综合五月天| 精品一区二区三区久久久| 国产精品一卡二| 欧美这里有精品| 日韩欧美一级特黄在线播放| 国产精品视频看| 无码av免费一区二区三区试看| 精品一区二区三区免费| 一本大道综合伊人精品热热| 91精品国产综合久久久久久| 欧美韩国日本综合| 五月综合激情网| 成人av午夜电影| 91精品福利在线一区二区三区 | 日韩美女视频一区| 丝袜美腿高跟呻吟高潮一区| 国产成人免费视| 精品视频1区2区3区| 国产免费成人在线视频| 午夜精品福利一区二区三区av| 国产九色精品成人porny | 亚洲午夜电影在线| 韩国中文字幕2020精品| 在线欧美一区二区| 欧美国产一区视频在线观看| 日本欧美加勒比视频| av在线免费不卡| 日韩三级精品电影久久久 | 欧美三级视频在线| 亚洲国产精品ⅴa在线观看| 丝袜美腿亚洲一区| 色婷婷av一区二区三区之一色屋| 久久亚洲精品小早川怜子| 午夜私人影院久久久久| 91蜜桃婷婷狠狠久久综合9色| 欧美岛国在线观看| 五月激情综合网| 91久久精品日日躁夜夜躁欧美| 久久久国产精品麻豆| 日本成人在线网站| 欧美在线观看一区| 国产精品伦一区| 狠狠色丁香久久婷婷综合_中| 欧美美女一区二区| 一区二区免费看| 91丨porny丨国产| 久久精品亚洲麻豆av一区二区| 日韩av中文在线观看| 欧美影片第一页| 亚洲日本丝袜连裤袜办公室| 高清不卡一二三区| 337p粉嫩大胆噜噜噜噜噜91av | 久久伊人蜜桃av一区二区| 日本va欧美va精品| 欧美三级资源在线| 亚洲一区免费在线观看| 99国产精品久久久久久久久久久| 久久精品一区二区| 国产一区二区三区久久悠悠色av | 久久99精品网久久| 欧美一区二区黄| 天天色天天操综合| 欧美猛男超大videosgay| 亚洲国产日韩综合久久精品| 欧美亚洲一区三区| 亚洲图片欧美一区| 欧美亚洲国产一卡| 亚洲动漫第一页| 欧美高清视频www夜色资源网| 亚洲一线二线三线久久久| 91激情在线视频| 亚洲影院理伦片| 欧美日韩一区中文字幕| 婷婷六月综合亚洲| 欧美一区午夜精品| 精品一区二区三区影院在线午夜 | 处破女av一区二区| 中文字幕精品三区| 色综合网站在线| 亚洲午夜免费视频| 欧美日韩午夜在线| 日本亚洲欧美天堂免费| 日韩精品一区二区三区视频播放| 久久99深爱久久99精品| 久久久久久免费| 风间由美性色一区二区三区| 国产精品国产三级国产有无不卡| 菠萝蜜视频在线观看一区| 亚洲视频网在线直播| 欧美中文字幕久久| 美女视频免费一区| 国产女同性恋一区二区| 91在线精品一区二区三区| 樱花影视一区二区| 欧美视频三区在线播放| 蜜臀va亚洲va欧美va天堂| 久久免费美女视频| 国产成人av自拍| 亚洲九九爱视频| 欧美精品久久一区| 国产一区视频在线看| 亚洲图片激情小说| 欧美日韩国产天堂| 精品亚洲欧美一区| 中文字幕一区视频| 欧美男男青年gay1069videost| 久久精品国产77777蜜臀| 欧美激情一区二区三区不卡| 日本高清成人免费播放| 蜜桃视频在线观看一区| 中文字幕av免费专区久久| 欧美影视一区在线| 国产精品996| 洋洋av久久久久久久一区| 日韩欧美一区二区不卡| 9色porny自拍视频一区二区| 日韩精品福利网| 久久免费午夜影院| 欧美性极品少妇| 国产主播一区二区三区| 亚洲激情av在线| 精品国产成人系列| 在线欧美小视频| 国产精品一区二区免费不卡| 亚洲国产一区二区三区| 久久免费午夜影院| 欧美日韩国产美| 成人黄动漫网站免费app| 性久久久久久久久| 国产精品国产三级国产有无不卡| 在线观看91精品国产麻豆| 成人免费毛片高清视频| 日本不卡1234视频| 1024成人网| 久久久久综合网| 欧美一级夜夜爽| 色噜噜夜夜夜综合网| 国产精品资源网站| 日精品一区二区| 日韩理论片在线| 国产欧美一区二区精品秋霞影院| 欧美美女一区二区| 91免费视频网| 丰满岳乱妇一区二区三区 | 日韩精品一区二区三区视频播放 | 亚洲福利一区二区三区| 国产精品狼人久久影院观看方式| 日韩精品一区二区三区视频| 欧美三区免费完整视频在线观看| 不卡一区中文字幕| 国产在线麻豆精品观看| 日韩主播视频在线| 一区二区三区在线免费视频| 国产日韩欧美一区二区三区乱码| 91精品国产色综合久久不卡蜜臀| 色拍拍在线精品视频8848| 国产精品18久久久久久vr| 麻豆精品国产91久久久久久| 亚洲午夜精品在线| 亚洲一区二区三区在线播放| 国产精品久久久久久久久果冻传媒| 久久久久久久综合日本| 精品少妇一区二区三区免费观看 | 美女高潮久久久| 日韩精品一级二级| 亚洲国产三级在线| 亚洲二区在线视频| 亚洲国产一区二区三区 | 欧美精品欧美精品系列| 在线视频欧美精品| 91福利视频网站| 欧美性色aⅴ视频一区日韩精品| 91麻豆福利精品推荐| 成人激情文学综合网| 成人h动漫精品| www.欧美.com| 99久免费精品视频在线观看 | 亚洲猫色日本管| 亚洲视频中文字幕| 亚洲男人的天堂av| 亚洲精品视频一区| 亚洲精品菠萝久久久久久久| 亚洲乱码国产乱码精品精小说| 亚洲私人黄色宅男| 一区二区国产视频| 亚洲国产另类av| 首页亚洲欧美制服丝腿| 日韩在线播放一区二区| 日韩高清在线一区| 九一九一国产精品| 国产aⅴ精品一区二区三区色成熟| 国产精品亚洲专一区二区三区| 国产成人日日夜夜| 99久久婷婷国产综合精品| 色悠悠亚洲一区二区| 欧美揉bbbbb揉bbbbb| 欧美一级xxx|