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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Animated Eye Candy for Programmers

發布時間:2025/3/20 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Animated Eye Candy for Programmers 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

作者采用vs2008編譯,c#代碼

Animated Eye Candy for Programmers
By Phillip Piper | 17 Apr 2010
A class library that allows (almost) any Control to show animations
Is your email address OK? You are signed up for our newsletters but your email address is either unconfirmed, or has not been reconfirmed in a long time. Please click here to have a confirmation email sent so we can confirm your email address and start sending you newsletters again. Alternatively, you can update your subscriptions.
Download demo - 673.91 KB
Download full code - 405.76 KB
Animations on a Controls (e.g. a DataListView)

?
Google Enviers' Anonymous

"I'd like to welcome you all to this weeks meeting of Google Enviers' Anonymous. Hi. My name is Phillip and I'm a Google envier. I've managed to control my condition for almost six days. But this morning, I fell off the wagon in a big way. I was working normally and then I saw it! You all know what happens next. My breathing was suddenly rapid and shallow. I reached for my paper bag to keep calm. But it was too late. Waves of jealousy swept over me. In desperation, I speed-dialed my Google Envier buddies, Steve and Bill, and they talked me through it. After a minute or so, the spasm passed and I returned to (more or less) normal, though the bitter taste of envy lingered for the rest of the day.

In my self defence, the source of my envy is nothing as crass as their billion dollar development budget, their wonderful working conditions, or their thousand plus dollar share price. All these things fall into insignificance in comparison with the true object of my obsession: their animations! The way they effortlessly add little spinning stars, glowing text or fading sparkles to their applications. My applications sit there fully functional and obedient -- but static and passive, lacking the moving eye candy that make Google apps cute and cool.

But no more! To you, fellow enviers, I present the Sparkle animation framework. With this framework, you too can put animations into your applications and free yourself from the shackles of Google envy."
Understanding Sparkle in 30 Seconds or Less

OK. A little more seriously this time. The Sparkle library's purpose is to allow (almost) any Control to show animations.

The design goals of the Sparkle library are:
Short-lived animations on any control. The Sparkle library is designed to draw short animations over the top of existing Controls.
Declarative. The Sparkle library is declarative. You say what you want the animation to do, and then you run the animation. The animation is completely defined before it begins.
Non-interactive. The Sparkle library does not do user interaction -- it does not listen to mouse moves, clicks or drags. It doesn't do collision detection or physics models. It just draws eye candy.

To use the library itself, you'll need to grasp its four major concepts:
Animations. An animation is the canvas upon which sprite are placed. It is the white board upon which things are drawn.
Sprites. Sprites are things that can be drawn. There are several flavours of sprites -- one for images, another for text, still another for shapes. It is normal to make your own types of sprites by subclassing Sprite (or implementing ISprite).
Effects. Effects are things that make changes to sprites over time. They are the "movers and shakers" in the library, who actually do things. Sprites sit there, completely passive, looking pretty, but the effects push them around, change their visibility, spin or size. Again, you can use existing Effects, or implement your own through the IEffect interface.
Locators. Locators are things that known how to calculate a point or a rectangle. Rather than saying "Put this sprite at (10, 20)," they allow you to say "Put this sprite at the bottom right corner of this other sprite." This idea can be tricky to get your mind around, but once you have grasped it, it is powerful.
How to Use It

Adding any sort of animation to an application is a multi-step process. With Sparkle, the workflow for creating an animation is:
Decide where the animation will appear. That is your Animation.
Think about what you want to show. They are your Sprites.
Think about what you want each Sprite to do. They are your Effects.
Whenever an Effect needs a "where", that's when you need Locators.
Simple Example

To get a feeling for how to use the library, there's no substitute for seeing code. So let's do a simple example of moving a word across a control.

According to our workflow (above), we first need to decide where we want our animation to appear. So let's make a new project, with a new form, and put on it a UserControl that's docked to fill the whole form. Put a button on the form called "Run". In the click handler for that button, we'll do the work of running an animation.

The first thing we need is an Animation on that UserControl.
?Collapse
AnimationAdapter adapter = new AnimationAdapter(this.userControl1);?
Animation animation = adapter.Animation;?

AnimationAdapter is the class that links an Animation to an existing control. We've used a UserControl, but it could be any Control that supports the Paint event.

Once we have an Animation, the workflow says we need to decide what be seen: they are our Sprites. We want to show the word "Sparkle" so we make a TextSprite. If we had want to show an image, there is an ImageSprite, and to show shapes, there is a ShapeSprite. You can (of course) make your own sprites by implementing the ISprite interface or by subclassing Sprite:
?Collapse
TextSprite sparkle = new TextSprite("Sparkle!", new Font("Gill Sans", 48), Color.Blue);?

OK. We have our sprite. What do we want it to do? We want to move it from the top left of animation to the bottom right. Moving (or any other sort of change over time) requires an Effect. In this case, we need a MoveEffect. You can create these directly – using new MoveEffect(...) – or you can use the Effects factory, which has lots methods to make Effect objects:
?Collapse
sparkle.Add(100, 1000, Effects.Move(Corner.TopLeft, Corner.BottomRight));?

This says, “Beginning 100 milliseconds after the sprite starts, and lasting for 1000 milliseconds, move this sprite from the top right to the bottom left of the animation.”

That’s all we want the sprite to do at the moment, so now we add the sprite to the animation. Not all sprites are active at the beginning of the animation, so when we add the sprite the animation we also tell it when the sprite should begin. In this case, we do want the sprite to start when the animation starts, so we give 0 as the start time for the sprite:
?Collapse
animation.Add(0, sparkle);?

And finally, we tell the animation to run:
?Collapse
animation.Start();

All being well, you should see something like this:
?

For those who noted that the above graphic lacks one of the fundamental requirements for an animation (namely animated-ness), CodeProject doesn't support animations within a page, so click here to see the actual animation.
A Little More Interesting

Under whelmed? Admittedly, it's not that impressive, but you did only write six lines of code! But if we add a few different effects, you can easily do something more impressive. For example, if we want the text to walk around the edge of the control, spinning and fading at the same time:
?Collapse
sparkle.Add(0, 5000, Effects.Rotate(0, 360 * 4));
sparkle.Add(0, 5000, Effects.Blink(5));
sparkle.Add(0, 5000, Effects.Walk(Locators.AnimationBounds(-100, -50),
?WalkDirection.Anticlockwise));

This gives the Sprite three effects that run simultaneously. The first two are fairly obvious, but the third is a little trickier. It uses the Effects factory to create an effect that will walk a sprite around a rectangle. The rectangle to be walked is a "where" so it uses a Locator. This particular locator returns the bounds of the Animation, inset by (100, 50).

Putting these together produces this:
?

Again, you have to look here to see the actual animation.

Admittedly, this is garish, but it does give an idea of what you can do with just a few more lines of code.
Animations

An animation has two distinct functions:
It implements a timer tick based animation system. At each tick of a clock, it advances the state of the animation: it decides which sprites should become active/inactive, gives effects the opportunity to do their magic. This portion does not perform any rendering -- it simply changes the state of parts of the animation. If anything needs to be rendered, the animation triggers a Redraw event.
It draws the sprites according to their current state. Normally, something would listen for the Redraw event on an Animation, and in response to that event, it would redraw the animation. To do that, it calls the Animation.Draw(Graphics g) method. This will render the animation, in its current state, onto the given Graphics object. This operation does not change the state of the Animation.

In addition to animating sprites and rendering them, an animation supports the basic set of commands to control its execution:
Start()
Pause()/Unpause()
Stop()
Repeat Behaviour

Animations have a Repeat property, which controls the animation's behaviour when it reaches the end of the animation.
Repeat.None - The animation simply quits. All sprites disappear. This is the default.
Repeat.Pause - The animation pauses. All sprites that were visible at the end of the animation remain visible and motionless.
Repeat.Loop - The animation begins again.
Sprites

Sprite are the actual eye candy -- the pretty do-nothing things that the user can see. They keep whatever state information they require -- location, size, color, transparency -- and then use that state information to draw themselves when asked. They don't change their own state -- that's the responsibility of Effects.

There are several flavours of sprites that come with the Sparkle library:
ImageSprite. This takes an Image and draws it according to the sprites state. If the given Image is a frame animation itself, the Sparkle framework will animate that image automatically. I think it is only animated GIFs that Microsoft supports as frame animations.
TextSprite. TextSprites draw text (no prizes). But they can do a bit more formatting than just that. The text can be colored (ForeColor property), they can be drawn with a background (BackColor property). They can draw a border around the text (BorderWidth and BorderColor properties). The border can be either a rectangle (set CornerRounding to 0) or a round cornered rectangle (set CornerRounding to greater than 0 -- 16 is normally nice).
ShapeSprites. These draw regular shapes (square, rectangles, round cornered rectangle, triangles, ellipses/circles). Like TextSprites, ShapeSprites can have a ForeColor (color of frame of the shape), BackColor (used for the filled part of the shape), and PenWidth (width of the frame).

Remember, all colors can have alpha values set for them, which will allow varying levels of transparency when drawing the sprites.
Custom Sprites

It is expected that application would implement new sprites to do whatever specialized drawing it requires. To do this, you would implement the ISprite interface or subclass Sprite directly.
?Collapse
public interface ISprite : IAnimateable
{
?? /// <summary>
?? /// Gets or sets where the sprite is located
?? /// </summary>
?? Point Location { get; set; }
??
?? /// <summary>
?? /// Gets or sets how transparent the sprite is.
?? /// 0.0 is completely transparent, 1.0 is completely opaque.
?? /// </summary>
?? float Opacity { get; set; }
??
?? /// <summary>
?? /// Gets or sets the scaling that is applied to the extent of the sprite.
?? /// The location of the sprite is not scaled.
?? /// </summary>
?? float Scale { get; set; }
??
?? /// <summary>
?? /// Gets or sets the size of the sprite
?? /// </summary>
?? Size Size { get; set; }
??
?? /// <summary>
?? /// Gets or sets the angle in degrees of the sprite.
?? /// 0 means no angle, 90 means right edge lifted vertical.
?? /// </summary>
?? float Spin { get; set; }
??
?? /// <summary>
?? /// Gets or sets the bounds of the sprite. This is boundary within which
?? /// the sprite will be drawn.
?? /// </summary>
?? Rectangle Bounds { get; set; }
??
?? /// <summary>
?? /// Gets the outer bounds of this sprite, which is normally the
?? /// bounds of the control that is hosting the story board.
?? /// Nothing outside of this rectangle will be drawn.
?? /// </summary>
?? Rectangle OuterBounds { get; }
??
?? /// <summary>
?? /// Gets or sets the reference rectangle in relation to which
?? /// the sprite will be drawn. This is normal the ClientArea of
?? /// the control that is hosting the story board, though it
?? /// could be a subarea of that control (e.g. a particular
?? /// cell within a ListView).
?? /// </summary>
?? /// <remarks>This value is controlled by ReferenceBoundsLocator property.</remarks>
?? Rectangle ReferenceBounds { get; set; }
??
?? /// <summary>
?? /// Gets or sets the locator that will calculate the reference rectangle
?? /// for the sprite.
?? /// </summary>
?? IRectangleLocator ReferenceBoundsLocator { get; set; }
??
?? /// <summary>
?? /// Gets or sets the point at which this sprite will always be placed.
?? /// </summary>
?? /// <remarks>
?? /// Most sprites play with their location as part of their animation.
?? /// But other just want to stay in the same place.
?? /// Do not set this if you use Move or Goto effects on the sprite.
?? /// </remarks>
?? IPointLocator FixedLocation { get; set; }
??
?? /// <summary>
?? /// Gets or sets the bounds at which this sprite will always be placed.
?? /// </summary>
?? /// <remarks>See remarks on FixedLocation</remarks>
?? IRectangleLocator FixedBounds { get; set; }
??
?? /// <summary>
?? /// Draw the sprite in its current state
?? /// </summary>
?? /// <param name="g"></param>
?? void Draw(Graphics g);
??
?? /// <summary>
?? /// Add an Effect to this sprite. This effect will run at the beginning of
?? /// the sprite and will have 0 duration.
?? /// </summary>
?? /// <param name="effect">The effect to be applied to the sprite</param>
?? void Add(IEffect effect);
??
?? /// <summary>
?? /// Add an Effect to this sprite. This effect will commences startTicks
?? /// after the sprite begins and will have 0 duration
?? /// </summary>
?? /// <param name="startTick">When will the effect begins?</param>
?? /// <param name="effect">What effect will be applied?</param>
?? void Add(long startTick, IEffect effect);
??
?? /// <summary>
?? /// The main entry point for adding effects to Sprites.
?? /// </summary>
?? /// <param name="startTick">When will the effect begin?</param>
?? /// <param name="duration">For how long will it last?</param>
?? /// <param name="effect">What effect will be applied?</param>
?? void Add(long startTick, long duration, IEffect effect);
}

Look carefully at the existing sprites to see how they should be implemented. Pay special attention to the role of co-ordinate transformations to handle Location and Rotation properties.
Effects

Effects are the movers and shakers of the Sparkle library. They push Sprites around, moving them here or there, making them visible or invisible, spinning them around. Any time you want a Sprite to change, you need an Effect.

Effects are given to a Sprite, and told when they should start and how long they will run for:
?Collapse
this.imageSprite.Add(100, 250, new FadeEffect(0.0f, 0.8f));

This says, "100 milliseconds after imageSprite starts in the animation, this FadeEffect should, during 250 milliseconds, fade the sprite from hidden (0.0 opacity) to 80% visible (0.8 opacity)."

Many Effects work by "tweening" - they are given an initial value and a target value, and as the effect progresses, the effect gradually change a property on their Sprite from the initial value to the end value. In the above example, the FadeEffect's initial value is 0.0 and its end value is 0.8. As the animation progresses, the FadeEffect would gradually change the Opacity property of its Sprite from 0.0 to 0.8. So, 100 milliseconds after the sprite starts, the imageSprite will be hidden; after 225 milliseconds, it will be 40% visible; after 350 milliseconds, it will be 80% visible, and then the effect will stop.
Effects Factory

Effects factory contains static methods to create many commonly used effects.
?Collapse
Move(Corner to)

Move the sprite from it's current location to a corner of the animation.
?Collapse
Move(Corner from, Corner to)

Move the sprite from one corner of the animation to another. This has a zillion variations which allow different ways of saying where to start and where to end.
?Collapse
Goto(Corner to)

Go to (as in Monopoly) the given corner without any transition.
?Collapse
Fade(float from, float to)

Change the Opacity of the sprite from the start to the end value, effectively fading it in or out.
?Collapse
Rotate(float from, float to)

Change the Spin of the sprite from the start to the end value (both in degrees).
?Collapse
Scale(float from, float to)

Change the Scale of the sprite, effectively making it bigger or smaller.
?Collapse
Bounds(IRectangleLocator locator)

Change the Bounds of the sprite.
?Collapse
Walk(IRectangleLocator locator)

This is the first interesting effect. This changes the location of the sprite so that it "walks" around the perimeter of the given rectangle. This has several flavours saying which exact point of the sprite will be walked, which direction the walk should take, and where the walking should start.
?Collapse
Blink(int repetitions)

Another interesting effect. This changes the Opacity of the sprite so that it blinks a number of times. There are a couple of variations that allow the characteristics of the "blink" to be changed: how long it takes to fade in, stay visible, fade out, stay invisible.
?Collapse
Repeater(int repetitions, IEffect effect)

This applies the given Effect several times to the Sprite.
Custom Effects

Of course, it's again expected that applications would want to make their ways to change Sprites. You might want a move effect that bounces a sprite along an arc, or that does a checker board transition between two images. To do your own stuff, you need to implement the IEffect interface.
?Collapse
public interface IEffect
{
??? /// <summary>
??? /// Gets or set the sprite to which the effect will be applied
??? /// </summary>
??? ISprite Sprite { get; set; }

??? /// <summary>
??? /// Signal that this effect is about to applied to its sprite for the first time
??? /// </summary>
??? void Start();

??? /// <summary>
??? /// Apply this effect to the underlying sprite
??? /// </summary>
??? /// <param name="fractionDone">How far through the total effect are we?
??? /// This will always in the range 0.0 .. 1.0.</param>
??? void Apply(float fractionDone);

??? /// <summary>
??? /// The effect has completed
??? /// </summary>
??? void Stop();

??? /// <summary>
??? /// Reset the effect AND the sprite to its condition before the effect was applied.
??? /// </summary>
??? void Reset();
}

Effects need to know what Sprite they are changing, and to know when they start and stop. A sequence diagram would look something like this:
Start()
Apply() [called 0 or more times, with any value 0.0..1.0]
Stop()
Reset() [called 0 or once]

The only interesting bit is the Apply() method. This is where Effect do their actual work. Notice that the Effect is given a "fraction done" value, not a click count (or something similar). Effects cannot rely on Apply() being called in any particular order: first Apply() could have fractionDone=0.1, the next time it could be 0.9 and then 0.5.

Also note that Reset() must revert the state of the Effect and the Sprite to their original conditions before the Effect was Start()'ed. This means that in the Start() method, effects normally store any state they are going to change, and then in Reset() that state is put back.
Locators

In some ways, locators are the most difficult concept to grasp. If you can get this concept, everything else normally falls into place.

A Locator is a point or a rectangle that can calculate itself whenever needed. A plain Point is fixed, but a PointLocator can be different every time it is called. By using a Locator, "how" a point is calculated can be replaced at runtime to use any strategy it likes.

For example, the MoveEffect changes the Location of a Sprite. It could be coded to move a Sprite to the TopLeft of an Animation:
?Collapse
this.Sprite.Location = this.Animation.Bounds.Location;

This is nice and obvious solution, but not very flexible. If we then wanted to move the sprite to the centre of the Animation, we'd have to write a separate line of code, and then give some way to choose which line to execute. And another line of code for ever other possible location we could want.

But with Locators, the MoveEffect simply says:
?Collapse
this.Sprite.Location = this.Locator.GetPoint();

By using this extra layer of abstraction, the intelligence of calculating the "where" is placed into a separate object, and becomes reusable from there.
Standard Locators

Locators is a factory that has static methods to produce many common locators. You can of course create the locators directly -- these are just a convenience.
?Collapse
IPointLocator At(int, int)

Create a PointLocator for a fixed point.
?Collapse
IPointLocator SpriteAligned(Corner corner)

Create a PointLocator which is where a Sprite must be moved to so that the given Corner is located at the corresponding corner of the Animation. So, Locators.SpriteAligned(Corner.BottomRight) calculates where a sprite must be moved to so that its BottomRight corner is at the BottomRight corner of the Animation.
?Collapse
IPointLocator SpriteAligned(Corner corner, Point offset)

Same as above, but the point is offset by the given fixed amount.
?Collapse
IPointLocator SpriteAligned(Corner corner, float proportionX, float proportionY)

Create a PointLocator which is where a Sprite must be moved to so that the given Corner is located at a point proportional across and down the bounds the Animation. So, Locators.SpriteAligned(Corner.BottomRight, 0.6f, 07.7) calculates where a sprite must be moved to so that its BottomRight corner is 60% across the Animation and 70% down.
?Collapse
IPointLocator SpriteBoundsPoint(Corner corner)

Create a PointLocator which calculates the given corner of the sprite's bounds.
?Collapse
IPointLocator SpriteBoundsPoint(float proportionX, float proportionY)

Create a PointLocator which calculates a given proportion across and down the sprite's bounds.
?Collapse
IRectangleLocator At(int, int, int, int)

Create a RectangleLocator for a fixed rectangle.
?Collapse
IRectangleLocator AnimationBounds()

Create a RectangleLocator for the bounds of the animation.
?Collapse
IRectangleLocator AnimationBounds(int x, int y)

Create a RectangleLocator for the bounds of the animation inset by the given amount.
?Collapse
IRectangleLocator SpriteBounds()

Create a RectangleLocator for the bounds of the sprite.
?Collapse
IRectangleLocator SpriteBounds(int x, int y)

Create a RectangleLocator for the bounds of the sprite inset by the given amount.
AnimationAdaptor

The AnimationAdaptor mentioned above gives an example of linking the Animation.Redraw event to the Animation.Draw() method. When the Animation triggers a Redraw event, the AnimationAdaptor invalidates its Control. This causes the Control to repaint itself, and when the control triggers the Paint event, the AnimationAdaptor renders the animation through the Draw() method. Voilá! Any Control (with a Paint event) can show an animation.

An AnimationAdaptor can be used on Panels, Buttons, Labels, PictureBoxes, UserControls, numeric spin controls, and (oddly enough) DataGridView. It cannot be used on another control because they don't usefully support the Paint event. There is nothing that can be done about RichTextBox and the others, but if you want to put animations on a ListView or a TreeView, have a look at the ObjectListView project, which does support these animations.

One of the beautiful things about the design of Sparkle is that it can be trivially used within another framework. To use it within WPF, all that is needed is an equivalent of the AnimationAdaptor, which listens for redraw events on the Animation, and then do something to make the animation redraw itself.
Performance

The Sparkle library performs fairly well when used in accordance with its design goals. Animating dozens of sprites with dozens of effects has a minimal impact on performance. On my laptop, 20 or so sprites with a variety of effects uses only about 2-3% of the CPU. The limiting factor is not the animation but the redrawing of the underlying control. Currently, the whole control is redrawn every frame. For simple controls, like Buttons or UserControls, this is not a problem, but for complicated control, like DataGridView, this redrawing quickly becomes taxing.

In a later version, I'll optimize to invalidate only the smallest possible area of the control.

I haven't tried using Sparkle with thousands of sprites. That really wasn't its purpose.
Status and Stability

Sparkle is a new library. It has worked well for me, but I'm sure there are bugs in it. Please report them and I will fix them.

The interfaces and major classes are stable, but not yet fixed (unchangeable). It's possible that I will add a few more properties to the ISprite interface (I think it needs Skew).
Conclusion

Go ahead. Dazzle your users with the glittery, snazzy animations.

Now when I look at Google's apps, I no longer suffer from envy. I still don't have their work conditions or share price, but when a little star spins and fades, I think, "Hey, I can do that too!"
To Do
Handle updates more efficiently (calculate damaged region and only redraw that portion).
Add fancier effects, like glow and mirror.
Add composites (ways of putting effects onto multiple sprites at same time).
Allow different interpolation calculations. All interpolations are currently linear. We should allow for example, acceleration, so that falling shapes in the demo accelerate as they fall.
Allow animations to reverse.
Library License

This library is released under the LGPL v2.0.
History
v0.8 - 30 March 2010
Initial public release
License

This article, along with any associated source code and files, is licensed under The GNU Lesser General Public License (LGPLv3)
About the Author
?Phillip Piper

?

Software Developer (Senior)

?Australia

Member ?Phillip has been playing with computers since the Apple II was the hottest home computer available. He learned the fine art of C programming and Guru meditation on the Amiga.

Python and Smalltalk are his languages of choice. C# is interesting. C++ is to programming what drills are to visits to the dentist.

He has worked for longer than he cares to remember as Lead Programmer and System Architect of the Objective document management system. (www.objective.com)

He has lived for 10 years in northern Mozambique, teaching in villages.

He is currently developing trading and financial software for a high volume trading house.

?

Article Top??Rate this article for us! ?? Poor ??????
?Excellent ?

原文:

http://www.codeproject.com/KB/GDI-plus/Sparkle.aspx

總結

以上是生活随笔為你收集整理的Animated Eye Candy for Programmers的全部內容,希望文章能夠幫你解決所遇到的問題。

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

五月婷香蕉久色在线看 | 国产精品久久久久久久久久久久午 | www.操.com| 91亚洲精品久久久蜜桃 | 国产黄色免费电影 | 中文字幕第一页在线视频 | 久久精品久久精品 | 69av国产 | 欧美色就是色 | 国产中年夫妇高潮精品视频 | 国产99久久久国产精品免费看 | www久草| 亚州性色 | 色综合天天视频在线观看 | 91久久丝袜国产露脸动漫 | 日本在线中文在线 | 99精品视频免费观看 | 精品国产乱码久久久久久天美 | 97人人人| 欧美在线视频一区二区三区 | av中文字幕在线观看网站 | 91在线国内视频 | 亚洲激情小视频 | 亚洲高清在线 | 91在线播| 激情伊人五月天 | 综合激情 | 91精品国产自产老师啪 | 久久久精品影视 | 免费观看全黄做爰大片国产 | 黄色影院在线免费观看 | 国产精品你懂的在线观看 | 欧美福利视频 | www.五月天激情 | 免费看的黄色小视频 | 久久综合五月天婷婷伊人 | 国产黄影院色大全免费 | 在线观看中文字幕2021 | 深爱激情站 | 四虎国产精品免费观看视频优播 | 亚洲精品欧美专区 | 久久久久高清毛片一级 | 99精品视频免费观看 | 三上悠亚在线免费 | 婷婷精品国产一区二区三区日韩 | 免费观看一区二区 | 97超碰免费在线观看 | 91高清免费 | 亚洲aⅴ在线观看 | 色综合久久久久综合 | 成人免费视频网址 | 日日干综合 | 亚洲精品99 | 美女黄色网在线播放 | v片在线播放 | 97超碰中文字幕 | 草久久精品 | 99精品在线 | 狠狠干天天干 | 日韩午夜电影院 | 欧美一级片免费观看 | 亚洲精品免费在线 | 91在线精品播放 | 日韩一区二区三区观看 | 超碰在线日韩 | 国产精品美女久久久久久免费 | 国产在线视频不卡 | 久久久高清 | 99国产精品一区二区 | 91免费网址 | 日韩有码在线观看视频 | 日韩区在线观看 | 日韩在线视频播放 | 69国产在线观看 | 日韩在线视频一区二区三区 | 国产视频一二区 | 97狠狠干 | 日av免费| 免费观看性生活大片3 | 日韩精品偷拍 | 久久久久久久网站 | 一区中文字幕在线观看 | 国产成人一区二区三区免费看 | 日韩av线观看 | 欧美最猛性xxx | 国产高清视频免费在线观看 | 色99导航 | 精品电影一区 | 狠狠狠色丁香婷婷综合激情 | 天天草天天色 | 一二三区av | 精品高清美女精品国产区 | 国产理论一区二区三区 | av久久久 | 久久精品美女 | 亚洲国产视频在线 | 狠狠夜夜 | 首页av在线 | 久久只精品99品免费久23小说 | 亚洲国产精品va在线看黑人动漫 | 91久久奴性调教 | 久久精品五月 | 午夜精品一区二区三区可下载 | 91一区啪爱嗯打偷拍欧美 | 国内精品久久久精品电影院 | 国产一区欧美在线 | 美女网站视频免费黄 | 狠狠色丁香久久婷婷综 | 久久免费美女视频 | 欧美国产日韩在线观看 | 日日夜夜噜噜噜 | 在线观看岛国 | 国产精品一区在线观看 | 伊人婷婷综合 | 欧美精品久久久久久久久久 | 亚洲人视频在线 | 色av色av色av | 国产午夜精品一区二区三区 | 激情伊人 | 亚洲精品视频在 | 亚洲精品午夜久久久久久久 | 成人久久久久久久久 | 久久99精品国产 | 四虎影院在线观看av | 日韩精品五月天 | 亚洲另类在线视频 | www.成人精品 | 国产精品99久久免费观看 | 色网站免费在线观看 | 久久草av | 91mv.cool在线观看 | 99在线国产| 97免费在线观看视频 | 婷婷六月激情 | 国产99一区视频免费 | 99精品久久久 | 蜜臀av.com | 国产五月婷婷 | 精品在线视频一区二区三区 | 国产成人l区 | 色av资源网 | 人人爽人人射 | 久久精品视频18 | 久草热视频| av电影不卡在线 | 久久综合色8888 | 国产亚洲成人精品 | 国产成本人视频在线观看 | 日韩精品电影在线播放 | 激情综合五月 | 国产一级在线观看视频 | 又黄又爽又刺激的视频 | 国产精品毛片一区二区三区 | 女人18片毛片90分钟 | 91免费在线看片 | 欧美精品久久久久久久久久久 | 国产精品视频地址 | 亚洲伊人第一页 | 亚洲va在线va天堂 | 在线 日韩 av| 欧美经典久久 | 日日爽夜夜操 | 亚洲经典在线 | www.亚洲精品在线 | 99视频久久| 91人人插 | 天天玩天天干 | 亚洲精品在线观看的 | 国产黄在线看 | 日韩中文在线视频 | 天天色天天射天天综合网 | 午夜免费电影院 | 亚洲精品在线视频观看 | 久久精品视频国产 | 日韩精品一区二 | 久久影视一区二区 | 亚洲午夜精品久久久久久久久久久久 | 国产人成精品一区二区三 | 久久久久97国产 | 久久精品一区二 | 久久九精品 | 午夜12点 | 国产成人精品久久亚洲高清不卡 | www亚洲精品 | 97精品超碰一区二区三区 | 五月天天av | 国产亚洲精品日韩在线tv黄 | 在线亚洲免费视频 | 久久免费视频5 | 欧美一二三区播放 | 91污视频在线 | 日本精品久久久久影院 | 亚洲成人国产精品 | 国产精品原创av片国产免费 | 精品一区二区三区四区在线 | 天天插天天干天天操 | 亚洲精品自拍视频在线观看 | 国产资源精品 | 久久伊人国产精品 | 久久久精品视频成人 | 欧美日韩免费观看一区=区三区 | 碰超在线观看 | 日韩av午夜在线观看 | 久久久网页 | 久久精品国产久精国产 | 国产精品18久久久久久不卡孕妇 | 亚洲综合在线五月天 | 日韩在线看片 | 亚洲高清视频在线观看免费 | 91麻豆精品国产91久久久更新时间 | 热久久这里只有精品 | 免费在线播放 | 久久午夜色播影院免费高清 | 色综合久久久久综合99 | 亚洲黄色免费观看 | 欧美成人xxx| 欧美精品久久久久久久亚洲调教 | 亚洲性视频 | 在线电影91 | 日韩av免费大片 | 国产精品乱码久久久久久1区2区 | 亚洲精品视频免费 | 999成人 | 少妇精69xxtheporn | 久色网| 久久免费视频7 | 国产精品 欧美 日韩 | 色婷婷啪啪免费在线电影观看 | 国产视频精品久久 | 在线精品在线 | 亚洲国产高清视频 | 国模视频一区二区 | 亚洲精品九九 | 免费黄色av片 | 依人成人综合网 | www.一区二区三区 | 五月婷婷影视 | a天堂最新版中文在线地址 久久99久久精品国产 | 色播激情五月 | 国产日韩三级 | 在线精品亚洲一区二区 | 精品视频一区在线观看 | 欧美日韩视频一区二区三区 | 亚洲aⅴ在线 | 日韩在线观看视频中文字幕 | 国产精品麻豆99久久久久久 | 国产亚洲视频在线免费观看 | 国产精品久久久久久久久毛片 | 中文字幕丝袜一区二区 | 黄色网大全 | 国产不卡在线 | 香蕉成人在线视频 | 在线 日韩 av | av经典在线| 中文在线天堂资源 | 91手机电视| 欧美午夜精品久久久久久浪潮 | 国产精品 日韩精品 | 久久精品福利 | 亚洲精品国产精品乱码在线观看 | 最近日本中文字幕a | 91精品国产一区 | 免费一级片视频 | 欧美一级免费在线 | 婷婷在线免费 | 激情综合啪| 国产香蕉视频在线观看 | 日本在线观看中文字幕 | 片网址| 丁香婷婷综合网 | 日韩av在线高清 | 国产日本高清 | 久久国产精品第一页 | 日日噜噜噜噜夜夜爽亚洲精品 | 久久天| 日韩在线| 久久综合色综合88 | 亚洲激情在线 | 1区2区视频| 在线观看成人一级片 | 青草视频在线免费 | 黄色天堂在线观看 | 日韩视频专区 | 国产在线视频资源 | 黄色软件视频网站 | 精品国产乱码久久久久 | 国产自产在线视频 | 日韩中文在线视频 | 成年人免费在线播放 | 国产精品久久久久久久午夜片 | 视频三区 | 国产精品久久久久久欧美 | 欧美美女激情18p | 亚洲少妇久久 | 蜜臀av在线一区二区三区 | 亚洲免费在线播放视频 | 久草在线视频首页 | 天天射天天射天天 | 亚洲精品资源 | 亚洲va综合va国产va中文 | 久久精品亚洲精品国产欧美 | 99久久er热在这里只有精品15 | 欧美日韩在线电影 | 91av电影在线 | 欧美日韩二三区 | 免费a视频在线 | 亚洲资源在线网 | 免费网站看v片在线a | 日韩激情久久 | 九七在线视频 | 久久视频精品 | 久久综合影音 | 久草在在线 | 中文字幕丰满人伦在线 | 久久精品美女视频 | 日韩精品一区二区三区三炮视频 | 久久久国产日韩 | 国产日产精品一区二区三区四区 | 中文字幕国产一区 | 高清av影院 | 黄色美女免费网站 | 色婷婷福利视频 | 国内精品久久久 | 91av资源网 | 天天爽夜夜爽精品视频婷婷 | 黄色国产大片 | 久久国产精品色婷婷 | 国产成人精品在线观看 | www.久久色 | 久久久噜噜噜久久久 | www..com毛片 | 成人在线免费看 | 久久永久视频 | 色婷婷99 | 91久久国产自产拍夜夜嗨 | 狠狠夜夜 | 91精品国产99久久久久久红楼 | 中文字幕色播 | 最近的中文字幕大全免费版 | 五月天激情综合 | 婷婷色在线观看 | 精品久久九九 | 色综合久久综合 | 欧美一级免费高清 | 色是在线视频 | 又湿又紧又大又爽a视频国产 | 99综合电影在线视频 | 人人干网 | 国产精品女教师 | 伊人春色电影网 | 99视频在线免费播放 | 天天夜操 | 最近中文字幕在线播放 | 精品久久久久久久久久久院品网 | 在线观看国产一区二区 | 日韩a免费 | 日韩一区二区三区不卡 | 午夜婷婷在线播放 | 91精品国产自产在线观看 | 91视频免费看片 | 国内精品在线观看视频 | 91九色视频在线播放 | 成人h在线播放 | 最近免费观看的电影完整版 | 精品久久久久久久久久久久久久久久久久 | 欧美坐爱视频 | 成人在线视频免费 | 亚洲a色 | 国产手机免费视频 | 美女黄频免费 | 欧美成天堂网地址 | 成人午夜剧场在线观看 | 制服丝袜天堂 | 中文字幕一区二区三区在线视频 | 国产一区精品在线 | 天天干夜夜夜 | 国产亚洲精品久久久久久无几年桃 | 成人免费在线播放视频 | 精品美女国产在线 | 日日天天 | 国产91精品一区二区 | 午夜.dj高清免费观看视频 | 亚洲精品在线观看视频 | 日韩久久久久久久久久久久 | 午夜黄色大片 | 日韩欧美高清在线观看 | 亚洲干 | 午夜久久电影网 | 99亚洲国产精品 | 五月婷婷在线视频观看 | 国产视频二区三区 | 久久精品一区二区三区国产主播 | 综合精品久久 | 色资源二区在线视频 | 超碰人人舔 | 在线观看韩日电影免费 | 永久免费的啪啪网站免费观看浪潮 | 国产在线免费观看 | 又紧又大又爽精品一区二区 | 亚洲国产免费网站 | 高清av免费观看 | 成人黄色电影免费观看 | 色婷婷狠狠五月综合天色拍 | 久久精品资源 | 999久久久久久久久6666 | 免费看黄色大全 | 久久久久久网址 | 久久亚洲视频 | 中文一二区 | 日韩国产精品毛片 | 黄色av成人在线观看 | 国产精品成久久久久 | av网址最新| 国产中文字幕在线看 | 伊人久久电影网 | 久久手机免费视频 | 欧美成亚洲 | 午夜精品久久久久久久99无限制 | 日韩免费av片 | 一级做a爱片性色毛片www | 久草手机视频 | 中文字幕在线观看第三页 | 国产精品久久久久久久99 | 亚洲国产精品免费 | 99久久精品日本一区二区免费 | 毛片在线网 | 色偷偷88888欧美精品久久久 | 五月天综合色激情 | 99热九九这里只有精品10 | 亚洲精品小视频在线观看 | 一区二区三区四区影院 | 日韩电影中文字幕 | 亚洲欧洲一区二区在线观看 | 天天射天天操天天 | 91片在线观看 | 在线之家免费在线观看电影 | 国产免费三级在线观看 | 狠狠干夜夜 | 国产999精品视频 | 五月天激情综合网 | 国产99久久九九精品免费 | 在线观看中文av | 久久96国产精品久久99软件 | 国产黄a三级 | 久草观看视频 | 人人人爽 | 97狠狠干 | 在线观看亚洲国产 | 日韩欧美国产免费播放 | 国产麻豆电影在线观看 | 啪啪免费观看网站 | 午夜精品视频免费在线观看 | 91热在线 | 国产精品一区二区三区99 | 亚洲欧洲精品视频 | 一二三区av| 亚洲精品中文在线 | 香蕉视频日本 | 欧美性生活免费 | 西西444www大胆高清图片 | 91视频免费视频 | 国产黄色网 | www.夜夜操| 精品国模一区二区三区 | 男女精品久久 | 在线91精品| 欧日韩在线 | 香蕉视频在线视频 | 毛片888| 日三级在线 | 亚洲综合视频在线 | 精品五月天 | 国产精品婷婷午夜在线观看 | 久久成人免费视频 | 成人h视频在线 | 日韩电影中文字幕在线观看 | 欧美一区二区三区在线视频观看 | 在线a视频| 日本丶国产丶欧美色综合 | 深爱五月网 | 五月婷婷av| 综合精品久久久 | 欧美一级免费高清 | 国产精品18毛片一区二区 | 天天曰夜夜操 | 九七人人干 | 日本在线观看一区二区三区 | 在线一级片 | 国产一二三四在线观看视频 | 精品视频www | 日韩激情在线视频 | 黄色三级免费 | 亚洲精品在线观看免费 | ww亚洲ww亚在线观看 | 国内小视频在线观看 | 国产在线观看你懂的 | 美女在线免费观看视频 | 最新中文字幕视频 | 狠狠狠色狠狠色综合 | 日韩高清在线看 | www.狠狠| 天天干天天射天天操 | 国产精品免费观看在线 | 亚洲视频资源在线 | www.com操| 在线中文字幕播放 | 91一区二区三区在线观看 | 在线影视 一区 二区 三区 | 手机av在线网站 | 日韩免费小视频 | 国产小视频你懂的在线 | 色网影音先锋 | 狠狠艹夜夜干 | av高清在线 | 国产精品日韩在线 | 最近中文字幕mv免费高清在线 | 欧美一级片免费观看 | 精品一区二区免费在线观看 | 国产剧情在线一区 | 人人澡澡人人 | 精品一区91| 国产香蕉视频 | 亚洲精品中文在线观看 | 四虎国产精品永久在线国在线 | 国产一级做a爱片久久毛片a | 在线观看视频精品 | 成人a在线 | 国产精品男女视频 | 黄色网址中文字幕 | 人人澡人人澡人人 | 人人爽人人爽人人片 | 国产成人精品一区二区三区免费 | 99这里有精品 | 国产精品爽爽久久久久久蜜臀 | 丝袜美腿在线播放 | 在线观看一区视频 | 日韩精品一区二区三区在线视频 | 免费看的黄色的网站 | 精品一区二区视频 | 国产欧美综合视频 | 91污视频在线| 99热这里精品 | 91视频高清免费 | 毛片永久新网址首页 | 久久久www成人免费精品张筱雨 | 免费一级片在线 | 在线观看国产麻豆 | 久久精品成人 | 精品视频www | 亚洲成人午夜av | 黄色大全免费网站 | 精品国产欧美一区二区三区不卡 | 国产精品免费看久久久8精臀av | 伊人宗合网 | 国产人在线成免费视频 | 又黄又刺激的网站 | 久久久国产高清 | 欧美综合久久 | 国产夫妻自拍av | 国产精品永久免费在线 | 国产精品美女毛片真酒店 | 久久久久久国产精品久久 | 99热精品国产一区二区在线观看 | 99精品成人 | 国产精品成人免费精品自在线观看 | 狠狠色丁香婷婷综合久久片 | 四虎影视成人永久免费观看视频 | 精品久久电影 | 久草久草视频 | 九九免费观看视频 | 黄色电影网站在线观看 | av片在线看| 粉嫩av一区二区三区四区 | 有没有在线观看av | 91成人在线免费观看 | 中文字幕 婷婷 | 久久成人麻豆午夜电影 | 99久久精品免费看国产四区 | 不卡av在线 | 欧美日韩一区二区免费在线观看 | 国内精品亚洲 | 精品欧美一区二区三区久久久 | 热久精品| 欧美小视频在线 | 国产美女免费视频 | 91在线精品观看 | 人人干人人超 | 天天av在线播放 | 欧美日韩国产一区 | 免费视频你懂得 | 日日操夜| 日韩二区三区在线 | 国产又粗又猛又爽又黄的视频免费 | 美女视频黄在线 | 亚洲成人精品在线 | 亚洲精品视频久久 | 日韩欧美一区二区三区视频 | 婷婷激情av | 亚洲视频456 | 久久五月天综合 | 日韩精品一区二区久久 | 久久国产精品99久久久久久丝袜 | 深爱开心激情 | 亚洲国产伊人 | 91九色porn在线资源 | 久久久福利| 瑞典xxxx性hd极品 | 国产精品av免费在线观看 | 韩日色视频 | 中文字幕有码在线 | 天天操天天操天天干 | 激情视频免费在线 | 肉色欧美久久久久久久免费看 | 99久久精品国产一区二区三区 | 国内精品久久久久影院日本资源 | av色综合网| 97在线观看免费观看 | 久久免费福利视频 | 国产123av| 男女啪啪免费网站 | 91看片淫黄大片91 | 日韩有码第一页 | 国产成人精品电影久久久 | 国产不卡网站 | 精品a视频 | 日韩视频一区二区三区 | 日本护士三级少妇三级999 | 久久av网址 | 日韩免费视频线观看 | 色综合久久66 | 婷婷色av | 国产资源网 | 精品国产伦一区二区三区观看说明 | 插综合网 | 国产午夜精品一区 | 91精品国产一区二区在线观看 | 久久九九久久九九 | av一本久道久久波多野结衣 | 在线观看日韩av | 日日噜噜噜噜夜夜爽亚洲精品 | 国产一级免费av | 天天色宗合 | 特级a老妇做爰全过程 | 日韩高清免费观看 | 一区二区在线影院 | 蜜桃视频在线观看一区 | 色a网| 男女拍拍免费视频 | 精品毛片在线 | 日日狠狠 | 黄色视屏在线免费观看 | 日本中文字幕免费观看 | 99精品久久久久 | 天天操夜夜拍 | 久久久久国产一区二区三区 | 日韩免费av在线 | 日操操 | 婷婷国产一区二区三区 | 91av蜜桃| 又黄又网站 | 亚洲一区视频免费观看 | 欧美一级电影免费观看 | 国产综合91 | 亚洲五月六月 | 欧美在线视频一区二区 | 久草视频免费 | 91一区二区三区久久久久国产乱 | 成av人电影| 91中文在线| 狠狠色丁香婷婷综合橹88 | 日韩欧美网址 | 中文字幕电影一区 | 最近日本中文字幕a | 中午字幕在线 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 日韩特级毛片 | 久久艹人人 | 国产精品a久久 | 久久久久久不卡 | 国产三级精品三级在线观看 | 久久乐九色婷婷综合色狠狠182 | 久久99国产精品自在自在app | 成人一区二区在线 | 丝袜美女在线观看 | 免费看成人av| 国产精品理论在线观看 | 亚洲精品午夜久久久久久久 | 日韩欧美视频一区 | 91电影福利 | 六月丁香激情综合 | 美女av电影 | 国产淫片| 久久久久久高潮国产精品视 | 性日韩欧美在线视频 | 国产成人久久精品亚洲 | 狠狠操狠狠操 | 国产盗摄精品一区二区 | 2019中文在线观看 | 久久国产视频网 | 亚洲黄电影| 一级黄色片在线免费观看 | 色五月成人 | 国产伦理剧 | 97日日碰人人模人人澡分享吧 | 欧美韩国日本在线观看 | 亚洲欧美日韩一区二区三区在线观看 | 九九爱免费视频在线观看 | 亚洲精品97 | 免费av大片 | 国产视频 亚洲精品 | 亚洲精品国产精品国自 | 欧美黑人性猛交 | 丰满少妇在线观看 | 久久网站免费 | 日日操天天爽 | 免费在线观看黄网站 | 天无日天天操天天干 | 欧美福利久久 | www在线观看视频 | 丁香婷婷在线 | 在线看片成人 | 久草在线看片 | 国产精品久久久久高潮 | 玖玖色在线观看 | 人人插人人搞 | 天天·日日日干 | 91热在线 | 黄污视频网站大全 | 一级欧美日韩 | 色婷婷免费视频 | 啪啪凸凸| 欧美在线视频二区 | 久久字幕 | 又爽又黄在线观看 | 欧美精品免费在线 | 久久久免费电影 | 国产资源网 | 亚洲免费av片 | 99免费看片| 亚洲经典视频 | 婷婷久久综合九色综合 | 日韩黄色大片在线观看 | 国产一区精品在线 | 久久久99精品免费观看 | 亚洲永久精品视频 | 国产老太婆免费交性大片 | 91久久久国产精品 | 高清视频一区 | 久热av在线 | 国产精品久久久久一区二区国产 | 国产黄色成人av | 国产日韩精品一区二区三区在线 | 四虎国产精品成人免费4hu | 日本少妇视频 | 色噜噜狠狠狠狠色综合久不 | 日韩视频免费 | 日韩免费成人av | 成片免费观看视频999 | 免费av在线网 | 91黄色小网站 | 日韩xxx视频| 亚洲午夜久久久久久久久久久 | 成人动漫一区二区三区 | 日韩av午夜在线观看 | 亚洲综合色丁香婷婷六月图片 | 99精品欧美一区二区蜜桃免费 | 免费在线观看的av网站 | 99视频在线精品国自产拍免费观看 | 亚洲综合丁香 | 国产精品99久久久久久大便 | 日日干精品 | 亚洲国产精品va在线 | 99精品免费久久久久久久久 | 99久久毛片| 天堂素人在线 | 成人国产精品久久久 | 4438全国亚洲精品在线观看视频 | 日产乱码一二三区别在线 | 91精品一区二区三区蜜桃 | 国产精品色婷婷 | 国外调教视频网站 | 视频在线在亚洲 | 色停停五月天 | 在线免费视频一区 | av片中文| 欧美成人999 | 国产精品精品 | 在线一二三区 | av在线影片 | 精品国产乱码久久久久久三级人 | 福利视频精品 | 久久艹中文字幕 | 中文字幕在线观看完整版 | 欧美成人h版电影 | 欧美成人h版在线观看 | 视频国产精品 | 九色精品在线 | 在线播放日韩 | 黄色大全免费观看 | 国产精品自产拍在线观看蜜 | 亚av在线| 99久久精品国产欧美主题曲 | 久久er99热精品一区二区三区 | 91资源在线观看 | 成人中文字幕+乱码+中文字幕 | 国产成人在线播放 | 国产精品美女久久久久久久 | 97久久久免费福利网址 | 国产大片黄色 | 超碰在线97国产 | 日韩高清免费无专码区 | 免费精品人在线二线三线 | 国产精品久久久久久一二三四五 | 久久艹艹| 一级特黄aaa大片在线观看 | 欧美a级片网站 | 成人免费观看视频网站 | 久草视频中文 | 91高清不卡 | 三级a毛片 | 久久99网站 | 婷婷色综 | 99久久99久国产黄毛片 | 欧美一二三四在线 | 中文字幕在线视频一区二区 | 国产成人在线看 | 精品人人人人 | 一 级 黄 色 片免费看的 | 国产精品扒开做爽爽的视频 | 亚洲国产精品电影 | 中文在线a在线 | 欧美黄色高清 | 国产97在线播放 | 日本中文字幕视频 | 国产精品手机看片 | 欧美久久久久久久久中文字幕 | 91成人精品国产刺激国语对白 | 综合网伊人 | 日韩天天综合 | 欧美吞精| 91精品国产一区二区在线观看 | 狠狠的操狠狠的干 | 亚洲人久久 | 干 操 插| 久久午夜精品影院一区 | 深爱婷婷久久综合 | 久久国产成人午夜av影院潦草 | 日日草视频 | 色99视频| 欧美日一级片 | 三级av在线 | 男女视频国产 | 日本精品xxxx | 国产色视频网站2 | 91成人短视频在线观看 | 成人av播放 | 色多多污污在线观看 | 欧美色伊人 | 国产黄在线 | 69国产盗摄一区二区三区五区 | 久久亚洲精品电影 | 国产精品久久久久久久久久99 | 国产明星视频三级a三级点| 美女视频黄,久久 | 日韩在线视频播放 | 色综合天天狠天天透天天伊人 | 久久国产精品久久精品国产演员表 | av品善网| 久精品在线观看 | 久久91久久久久麻豆精品 | 国产精品免费视频一区二区 | 狠狠色丁香婷婷综合最新地址 | 久久国产一区二区三区 | 久久噜噜少妇网站 | 国产一级大片在线观看 | 色网影音先锋 | 亚洲一区二区高潮无套美女 | 日韩av女优视频 | 91传媒91久久久 | 韩日精品在线观看 | 久久精品国产一区二区电影 | 精品影院一区二区久久久 | 亚洲综合导航 | 色橹橹欧美在线观看视频高清 | 美女网站黄在线观看 | 日本九九视频 | 日韩视频免费 | 亚洲区另类春色综合小说 | 伊人夜夜 | 久草在线观| 成人夜晚看av | 在线视频 区 | 久久久久看片 | 中文字幕在线人 | 日本黄色一级电影 | 伊人黄色网 | 亚洲1区在线 | 97免费在线视频 | 日韩免费看片 | 91在线麻豆 | 国产一区二区在线精品 | www在线免费观看 | 一级一片免费视频 | av电影在线观看完整版一区二区 | 欧美性色综合网 | 免费日韩av电影 | 国产精品毛片久久久久久久 | 伊人狠狠色 | 狠狠色噜噜狠狠狠狠 | 狠狠色丁香久久综合网 | 免费 在线 中文 日本 | 久久综合久久久 | 日韩欧美视频在线观看免费 | 日韩xxxx视频 | 超薄丝袜一二三区 | 亚洲精品66| 久草在线视频在线观看 | 在线性视频日韩欧美 | 在线 国产 亚洲 欧美 | 久久综合亚洲鲁鲁五月久久 | 欧美a级成人淫片免费看 | 国产又粗又长的视频 | 91资源在线视频 | 婷婷深爱 | 天堂中文在线播放 | 91av福利视频 | 一级淫片在线观看 | 黄色一级免费电影 | 国产精品亚洲成人 | 久久九九国产视频 | 六月丁香社区 | 国内一区二区视频 | 很黄很污的视频网站 | 久久69精品| 久草免费福利在线观看 | 狠狠操影视 | 国产精品中文久久久久久久 | 亚洲精品国偷拍自产在线观看 | 色在线中文字幕 | 夜夜躁日日躁狠狠躁 | www.xxx.性狂虐| 日韩免费在线视频 | 制服丝袜欧美 | 亚洲精品色婷婷 | 成人在线视频网 | 精品久久久久久久久久久久久久久久久久 | 欧美午夜久久 | 99精品国产99久久久久久97 | 欧美性生活免费看 | 99精品视频一区 | 韩日视频在线 | 国产视频一区二区三区在线 | 日日夜夜操av | 国产色综合 | 中文字幕在线观看网站 | 99久久免费看 | 国产在线综合视频 | 日韩在线三区 | 欧美analxxxx| 97人人射 | 久久国产热 | 五月天亚洲婷婷 | 日日爽天天操 | 亚洲 中文字幕av | 一区二区中文字幕在线 | 免费大片av | 成人在线免费视频观看 | 久久国产精品久久w女人spa | 午夜视频不卡 | 黄色av观看 | 午夜精品一区二区三区免费 | 欧美精品一二 | 国产精品免费久久久久影院仙踪林 | av片中文 | 在线亚洲午夜片av大片 | 国产精品一区二区三区久久久 | 中文字幕激情 | 日韩在线国产 | 久久兔费看a级 | 在线观看成人网 | 免费看的黄色 | 黄色大片中国 | 色综合久久久久久久 | 久久综合狠狠狠色97 | 日韩在线视频播放 | 97在线视频观看 | 国产精品黄色影片导航在线观看 | 四虎成人网| 99精品99 | 久久视频在线免费观看 | 国内久久看 | 免费在线成人av电影 | 超碰人人av | 五月天激情综合 | 精品在线一区二区 | 亚洲电影黄色 | 欧美一级在线观看视频 | www91在线观看 |