岁月无声

文章 评论 浏览 30

岁月无声 2025-02-21 00:18:11

您可以量身定制升级.com/docs/billing/subpriptions/prorations“ rel =” nofollow Noreferrer“> Prorations 。我建议阅读这两个链接,然后还可以窥视此文档

You can tailor upgrade behavior with prorations. I recommend reading those two links and then also taking a peek at this documentation.

升级订阅或增加单位之前,请用户查看

岁月无声 2025-02-20 23:07:21

您将需要查看我们的设计和开发插件指南,特别是”激活扩展的从卡面上查看部分。

插件桥 JavaScript模块是完成您要做的事情的最佳方法。

You'll want to take a look at our Designing and Developing Plugins guide, specifically the "Activating the Expanded View from the Card Face" section.

The Plugin Bridge JavaScript module is the best way to accomplish what you're trying to do.

在iframe内获取OLB卡链接或按钮,以便能够在桌面和移动设备上打开URL

岁月无声 2025-02-20 07:02:07

您可以使用 带有 REGEX
解释:

  1. ():捕获分组
  2. :a char
  3. \ w+:单词
df = pd.DataFrame({'text': ['Ignore #foryou #yolo','Ignore #foryou #yolo #yolo','Ignore #foryou #yolo #yoloIgnore #foryou #yolo #yolo']})
df['text'].str.findall(r'(#\w+)')

输出:

0                                     [#foryou, #yolo]
1                              [#foryou, #yolo, #yolo]
2    [#foryou, #yolo, #yoloIgnore, #foryou, #yolo, ...

You can use pandas.str.findall with regex.
Explain:

  1. ( ) : capture grouping
  2. # : a # char
  3. \w+ : words
df = pd.DataFrame({'text': ['Ignore #foryou #yolo','Ignore #foryou #yolo #yolo','Ignore #foryou #yolo #yoloIgnore #foryou #yolo #yolo']})
df['text'].str.findall(r'(#\w+)')

Output:

0                                     [#foryou, #yolo]
1                              [#foryou, #yolo, #yolo]
2    [#foryou, #yolo, #yoloIgnore, #foryou, #yolo, ...

如何保持所有字符以'#'开始并删除熊猫中的其他字符| python3

岁月无声 2025-02-19 19:13:44

我认为,它会起作用。

这取决于您的JDK,因为Switch语句已被“调谐”几次。如果您可以在开关语句中“比较”字符串,那么这将起作用,并且阶段是您的。

我查一下,您至少需要JDK7。 https://docs.oracle.com/javase/8/docs/technotes/guides/guides/langueage/lange/strings-switch.html

将INTS转换为类似的字符串:

int x = 5; 
String intString = x + "" ;  //string concatenation or StringBuilder, your choice


  switch(intString){
    case "1": ...code...
         break;
    case "2": ...code...
         break;
    case "XY": ...code...
         break;
    default: ....code...
          break;
  }

对不起,对许多编辑,我只是​​为许多编辑讨厌我的智能手机。

I think, it will work.

It depends on your jdk, because the switch statement has been "tuned" a few times. If you can "compare" a String in a switch statement, then this will work and the stage is yours.

I looked it up, you need at least jdk7. https://docs.oracle.com/javase/8/docs/technotes/guides/language/strings-switch.html

Convert the ints to String like this:

int x = 5; 
String intString = x + "" ;  //string concatenation or StringBuilder, your choice


  switch(intString){
    case "1": ...code...
         break;
    case "2": ...code...
         break;
    case "XY": ...code...
         break;
    default: ....code...
          break;
  }

Sorry for the many edits, I just hate my smartphone.

在开关情况下,是否可以将整数和字符串用作案例?

岁月无声 2025-02-19 02:29:40

您的问题与使用非官方绑定和包装有关。

这是指向官方Nuget软件包的链接和有关如何使用它的文档。

该示例显示了如何使用MAP KIT软件包和绑定,但是在GitHub站点的示例项目上可以使用其他软件包和绑定。

Here the sample binding project that you can try out.

https://github.com/hms-core/hms-core/hms-xamarin-bindings

Your problem is related to using un-official binding and package.

Here is the link to the official NuGet package and document for how to use it.

The example show how to use map kit package and binding, but others packages and binding are available on the sample project at Github site.

https://developer.huawei.com/consumer/en/doc/development/HMS-Plugin-Guides-V1/integrating-map-kit-0000001135925291-V1

Here the sample binding project that you can try out.

https://github.com/HMS-Core/hms-xamarin-bindings

AgConnectServicesConfig仅读取AgConnect-Services.json首次

岁月无声 2025-02-18 23:02:23

请查看 this github上的示例。

这是Winui 3窗口的完整示例,该窗口具有指定的最小值和最大宽度和高度:

public sealed partial class MainWindow: Window
{
    private static WinProc newWndProc = null;
    private static IntPtr oldWndProc = IntPtr.Zero;
    private delegate IntPtr WinProc(IntPtr hWnd, WindowMessage Msg, IntPtr wParam, IntPtr lParam);

    [DllImport("User32.dll")]
    internal static extern int GetDpiForWindow(IntPtr hwnd);

    [DllImport("user32.dll", EntryPoint = "SetWindowLong")]
    private static extern int SetWindowLong32(IntPtr hWnd, WindowLongIndexFlags nIndex, WinProc newProc);

    [DllImport("user32.dll", EntryPoint = "SetWindowLongPtr")]
    private static extern IntPtr SetWindowLongPtr64(IntPtr hWnd, WindowLongIndexFlags nIndex, WinProc newProc);

    [DllImport("user32.dll")]
    private static extern IntPtr CallWindowProc(IntPtr lpPrevWndFunc, IntPtr hWnd, WindowMessage Msg, IntPtr wParam, IntPtr lParam);

    public static int MinWindowWidth { get; set; } = 900;
    public static int MaxWindowWidth { get; set; } = 1800;
    public static int MinWindowHeight { get; set; } = 600;
    public static int MaxWindowHeight { get; set; } = 1600;

    public MainWindow()
    {
        this.InitializeComponent();
        RegisterWindowMinMax(this);
    }

    private static void RegisterWindowMinMax(Window window)
    {
        var hwnd = GetWindowHandleForCurrentWindow(window);

        newWndProc = new WinProc(WndProc);
        oldWndProc = SetWindowLongPtr(hwnd, WindowLongIndexFlags.GWL_WNDPROC, newWndProc);
    }

    private static IntPtr GetWindowHandleForCurrentWindow(object target) =>
        WinRT.Interop.WindowNative.GetWindowHandle(target);

    private static IntPtr WndProc(IntPtr hWnd, WindowMessage Msg, IntPtr wParam, IntPtr lParam)
    {
        switch (Msg)
        {
            case WindowMessage.WM_GETMINMAXINFO:
                var dpi = GetDpiForWindow(hWnd);
                var scalingFactor = (float)dpi / 96;

                var minMaxInfo = Marshal.PtrToStructure<MINMAXINFO>(lParam);
                minMaxInfo.ptMinTrackSize.x = (int)(MinWindowWidth * scalingFactor);
                minMaxInfo.ptMaxTrackSize.x = (int)(MaxWindowWidth * scalingFactor);
                minMaxInfo.ptMinTrackSize.y = (int)(MinWindowHeight * scalingFactor);
                minMaxInfo.ptMaxTrackSize.y = (int)(MaxWindowHeight * scalingFactor);

                Marshal.StructureToPtr(minMaxInfo, lParam, true);
                break;

        }
        return CallWindowProc(oldWndProc, hWnd, Msg, wParam, lParam);
    }

    private static IntPtr SetWindowLongPtr(IntPtr hWnd, WindowLongIndexFlags nIndex, WinProc newProc)
    {
        if (IntPtr.Size == 8)
            return SetWindowLongPtr64(hWnd, nIndex, newProc);
        else
            return new IntPtr(SetWindowLong32(hWnd, nIndex, newProc));
    }

    private struct POINT
    {
        public int x;
        public int y;
    }

    [StructLayout(LayoutKind.Sequential)]
    private struct MINMAXINFO
    {
        public POINT ptReserved;
        public POINT ptMaxSize;
        public POINT ptMaxPosition;
        public POINT ptMinTrackSize;
        public POINT ptMaxTrackSize;
    }

    [Flags]
    private enum WindowLongIndexFlags : int
    {
        GWL_WNDPROC = -4,
    }

    private enum WindowMessage : int
    {
        WM_GETMINMAXINFO = 0x0024,
    }
}

Check out this example on GitHub.

Here is a full example of a WinUI 3 window with a specified min and max width and height:

public sealed partial class MainWindow: Window
{
    private static WinProc newWndProc = null;
    private static IntPtr oldWndProc = IntPtr.Zero;
    private delegate IntPtr WinProc(IntPtr hWnd, WindowMessage Msg, IntPtr wParam, IntPtr lParam);

    [DllImport("User32.dll")]
    internal static extern int GetDpiForWindow(IntPtr hwnd);

    [DllImport("user32.dll", EntryPoint = "SetWindowLong")]
    private static extern int SetWindowLong32(IntPtr hWnd, WindowLongIndexFlags nIndex, WinProc newProc);

    [DllImport("user32.dll", EntryPoint = "SetWindowLongPtr")]
    private static extern IntPtr SetWindowLongPtr64(IntPtr hWnd, WindowLongIndexFlags nIndex, WinProc newProc);

    [DllImport("user32.dll")]
    private static extern IntPtr CallWindowProc(IntPtr lpPrevWndFunc, IntPtr hWnd, WindowMessage Msg, IntPtr wParam, IntPtr lParam);

    public static int MinWindowWidth { get; set; } = 900;
    public static int MaxWindowWidth { get; set; } = 1800;
    public static int MinWindowHeight { get; set; } = 600;
    public static int MaxWindowHeight { get; set; } = 1600;

    public MainWindow()
    {
        this.InitializeComponent();
        RegisterWindowMinMax(this);
    }

    private static void RegisterWindowMinMax(Window window)
    {
        var hwnd = GetWindowHandleForCurrentWindow(window);

        newWndProc = new WinProc(WndProc);
        oldWndProc = SetWindowLongPtr(hwnd, WindowLongIndexFlags.GWL_WNDPROC, newWndProc);
    }

    private static IntPtr GetWindowHandleForCurrentWindow(object target) =>
        WinRT.Interop.WindowNative.GetWindowHandle(target);

    private static IntPtr WndProc(IntPtr hWnd, WindowMessage Msg, IntPtr wParam, IntPtr lParam)
    {
        switch (Msg)
        {
            case WindowMessage.WM_GETMINMAXINFO:
                var dpi = GetDpiForWindow(hWnd);
                var scalingFactor = (float)dpi / 96;

                var minMaxInfo = Marshal.PtrToStructure<MINMAXINFO>(lParam);
                minMaxInfo.ptMinTrackSize.x = (int)(MinWindowWidth * scalingFactor);
                minMaxInfo.ptMaxTrackSize.x = (int)(MaxWindowWidth * scalingFactor);
                minMaxInfo.ptMinTrackSize.y = (int)(MinWindowHeight * scalingFactor);
                minMaxInfo.ptMaxTrackSize.y = (int)(MaxWindowHeight * scalingFactor);

                Marshal.StructureToPtr(minMaxInfo, lParam, true);
                break;

        }
        return CallWindowProc(oldWndProc, hWnd, Msg, wParam, lParam);
    }

    private static IntPtr SetWindowLongPtr(IntPtr hWnd, WindowLongIndexFlags nIndex, WinProc newProc)
    {
        if (IntPtr.Size == 8)
            return SetWindowLongPtr64(hWnd, nIndex, newProc);
        else
            return new IntPtr(SetWindowLong32(hWnd, nIndex, newProc));
    }

    private struct POINT
    {
        public int x;
        public int y;
    }

    [StructLayout(LayoutKind.Sequential)]
    private struct MINMAXINFO
    {
        public POINT ptReserved;
        public POINT ptMaxSize;
        public POINT ptMaxPosition;
        public POINT ptMinTrackSize;
        public POINT ptMaxTrackSize;
    }

    [Flags]
    private enum WindowLongIndexFlags : int
    {
        GWL_WNDPROC = -4,
    }

    private enum WindowMessage : int
    {
        WM_GETMINMAXINFO = 0x0024,
    }
}

wm_getminmaxinfo在winui 3中使用C#?

岁月无声 2025-02-18 19:29:40

(使用您的方法...)尝试:

awk -F ";" '{print $2 }' list.csv | sed 's/"//g' | while read -r line || [[ -n $line ]]; do 
    printf "Hello %s\n" "$line"
done 

如果您知道输入将为 \ n 终止:

awk -F ";" '{print $2 }' list.csv | sed 's/"//g' | while read -r line; do 
    printf "Hello %s\n" "$line"
done 

来自在这里


或者,如果您无论如何都用bash循环循环,请在bash中进行全部操作:

while IFS=';' read -r f1 f2; do 
    printf "Hello %s\n" "${f2:1:-1}" 
done <list.csv

(最建议...) 完全在<代码> awk :

awk -F';' '{gsub(/"/,"",$2); print "Hello " $2}' list.csv

(Using your method...) Try:

awk -F ";" '{print $2 }' list.csv | sed 's/"//g' | while read -r line || [[ -n $line ]]; do 
    printf "Hello %s\n" "$line"
done 

If you know the input will be \n terminated:

awk -F ";" '{print $2 }' list.csv | sed 's/"//g' | while read -r line; do 
    printf "Hello %s\n" "$line"
done 

Bash loop from here


Or, if you looping over the file with Bash anyway, just do it all in Bash:

while IFS=';' read -r f1 f2; do 
    printf "Hello %s\n" "${f2:1:-1}" 
done <list.csv

Or (most recommended...) entirely in awk:

awk -F';' '{gsub(/"/,"",$2); print "Hello " $2}' list.csv

尴尬,sed,用于bash:打印“你好” &#x2B;姓名

岁月无声 2025-02-18 15:02:36

为什么不只是加入?

SELECT f_d_l_t.long_text as 'Text'
FROM fnd_documents fd
INNER JOIN 
  fnd_documents_long_text f_d_l_t 
         ON f_d_l_t.media_id= fd.media_id AND fd.datatype_id=2
WHERE 
  document_id = 715193;

如果您想使用案例/加入查询,可以执行此操作:

SELECT 
     OTher_columns,
     MAX(CASE
         WHEN datatype_id = 1 THEN 
               f_d_s_t.short_text
         WHEN datatype_id = 2 THEN 
               f_d_l_t.long_text
     END )as 'Text'
    FROM fnd_documents fd
    LEFT JOIN 
      fnd_documents_long_text f_d_l_t 
             ON f_d_l_t.media_id= fd.media_id
    LEFT JOIN
     fnd_documents_short_text f_d_s_t 
             ON f_d_s_t.media_id= fd.media_id
    WHERE 
      document_id = 715193
    GROUP BY OTher_columns ;

Why not doing just a Join ?

SELECT f_d_l_t.long_text as 'Text'
FROM fnd_documents fd
INNER JOIN 
  fnd_documents_long_text f_d_l_t 
         ON f_d_l_t.media_id= fd.media_id AND fd.datatype_id=2
WHERE 
  document_id = 715193;

If you want to use a case/join query, you can do this :

SELECT 
     OTher_columns,
     MAX(CASE
         WHEN datatype_id = 1 THEN 
               f_d_s_t.short_text
         WHEN datatype_id = 2 THEN 
               f_d_l_t.long_text
     END )as 'Text'
    FROM fnd_documents fd
    LEFT JOIN 
      fnd_documents_long_text f_d_l_t 
             ON f_d_l_t.media_id= fd.media_id
    LEFT JOIN
     fnd_documents_short_text f_d_s_t 
             ON f_d_s_t.media_id= fd.media_id
    WHERE 
      document_id = 715193
    GROUP BY OTher_columns ;

如果选择查询,如何选择长列

岁月无声 2025-02-18 12:25:49

基本上,您必须首先将接近数量(例如1.25)乘以大数(例如1000000),以便在使用 toyoctob128(u128.from(nose))将数字转换为Yocto之前保留分数。代码>。
成功转换后,您可以使用 u128.div()(例如 u128.div(MANESINU128,u128.from(100000000)))以获取正确的值。

PS
您首先乘以乘以的数字越大,转换越准确,请注意不要超过 number u128 limit。

这是一个完整的示例:

合同类:

  nearToYocto(x: string): u128 {
    let amountBase = (parseFloat(x) * BASE_TO_CONVERT);
    return u128.div(toYoctob128(u128.from(amountBase)), u128.from(BASE_TO_CONVERT));
  }

utils:

export const BASE_TO_CONVERT = 1000000.0;

export function toYoctob128(amount: u128): u128 {
  return u128.mul(ONE_NEAR, amount)
}

basically, you have to multiply the near amount (e.g. 1.25) by a large number first (e.g. 1000000) in order to preserve the fraction before you convert the number to Yocto using toYoctob128(u128.from(amount)).
and after the successful conversion, you can use u128.div() (e.g. u128.div(amountInU128, u128.from(1000000))) to get the correct value.

P.S.
The larger the number you multiply by first the more accurate the conversion will be but be careful not to exceed the number and u128 limit.

Here is a complete example:

Contract Class:

  nearToYocto(x: string): u128 {
    let amountBase = (parseFloat(x) * BASE_TO_CONVERT);
    return u128.div(toYoctob128(u128.from(amountBase)), u128.from(BASE_TO_CONVERT));
  }

utils:

export const BASE_TO_CONVERT = 1000000.0;

export function toYoctob128(amount: u128): u128 {
  return u128.mul(ONE_NEAR, amount)
}

如何使用“汇编”转换到Yocto?

岁月无声 2025-02-18 11:28:07

使用关键字参数与普通参数是相同的一件事,除了顺序无关紧要。例如,下面的两个函数调用是相同的:

def foo(bar, baz):
    pass

foo(1, 2)
foo(baz=2, bar=1)

Using keyword arguments is the same thing as normal arguments except order doesn't matter. For example the two functions calls below are the same:

def foo(bar, baz):
    pass

foo(1, 2)
foo(baz=2, bar=1)

普通参数与关键字参数

岁月无声 2025-02-18 10:53:58

您可以在用分开的块中拆分字符串:并获取最后一个元素:

s = "220628-17:34:38,962 nipype.interface INFO: stdout 2022-06-28T17:34:38.962155:113.157831"

s = s.split(":")[-1]
print(s)

输出: 您可以使用 float()

113.157831

You can split the string in chunks separated with : and get the last element:

s = "220628-17:34:38,962 nipype.interface INFO: stdout 2022-06-28T17:34:38.962155:113.157831"

s = s.split(":")[-1]
print(s)

Output: You can convert it to float with float()

113.157831

python中接口的访问值

岁月无声 2025-02-17 18:31:06

可以通过在同一类中包括iDraghandler来轻松修复。 Ienddraghandler必须正常运行IDRAGHANDLER。

Can be easily fixed by including IDragHandler in the same class. IDragHandler is necessary for IEndDragHandler to function properly.

OnEnddrag仅每次运行一次

岁月无声 2025-02-17 15:28:08

我认为旧接口{}足以做到这一点。

这样:

type AB interface {
    some() bool
}

但是,如果您想使用通用,则必须先更改类型。

像这样:

func some[T AB](x T) bool {
    if a, ok := interface{}(x).(*A); ok {
        return a.some()
    }

    return (*B)(x).some()
}

I think the old interface{} is enough to do this.

Like this:

type AB interface {
    some() bool
}

But if you want to use generic, you must change the type first.

Like this:

func some[T AB](x T) bool {
    if a, ok := interface{}(x).(*A); ok {
        return a.some()
    }

    return (*B)(x).some()
}

在GO Generics中,如何在联合约束中使用通用方法来进行类型?

岁月无声 2025-02-17 04:39:07

作为@silviomayolo答案的替代方法,您可以使用 MAP 数据结构。我们在 list1 中的每个值的索引中 zip ,然后将其转换为映射,然后在 list2 中对每个值进行查找。

import Data.Map
import Data.List

list1 = [14,24,1,2,11,7,23,8,12,22,20,0,15,19,4,9,10,21,18,17,3,13,16,5,6,25]
list2 = [14,14,24,24,1,1,2,2]

map1 = Data.Map.fromList $ list1 `zip` [0..]
-- fromList [(0,11),(1,2),(2,3),(3,20),(4,14),(5,23),(6,24),
--           (7,5),(8,7),(9,15),(10,16),(11,4),(12,8),(13,21),
--           (14,0),(15,12),(16,22),(17,19),(18,18),(19,13),
--           (20,10),(21,17),(22,9),(23,6),(24,1),(25,25)]

list3 = Data.List.map (map1 !) list2
-- [0,0,1,1,2,2,3,3]

As an alternative to the answer by @SilvioMayolo, you could use a Map data structure. We zip in the indexes for each value in list1 and then turn that into a map, then just do a lookup for each value in list2.

import Data.Map
import Data.List

list1 = [14,24,1,2,11,7,23,8,12,22,20,0,15,19,4,9,10,21,18,17,3,13,16,5,6,25]
list2 = [14,14,24,24,1,1,2,2]

map1 = Data.Map.fromList $ list1 `zip` [0..]
-- fromList [(0,11),(1,2),(2,3),(3,20),(4,14),(5,23),(6,24),
--           (7,5),(8,7),(9,15),(10,16),(11,4),(12,8),(13,21),
--           (14,0),(15,12),(16,22),(17,19),(18,18),(19,13),
--           (20,10),(21,17),(22,9),(23,6),(24,1),(25,25)]

list3 = Data.List.map (map1 !) list2
-- [0,0,1,1,2,2,3,3]

Haskell如何从两个INT列表中返回INT列表

岁月无声 2025-02-17 03:18:25

您需要将 recyclerview 高度设置为 wrap_content ,然后将活动的所有XML放在 scrollview 中以获取所需的结果。

您的XML应该看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:fillViewport="true"
    >

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            android:adjustViewBounds="true"
            tools:srcCompat="@tools:sample/backgrounds/scenic" />

        <!-- Your Ui Here: The ImageView is just for test -->

        <androidx.recyclerview.widget.RecyclerView
            android:id="@+id/x"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:layout_constraintTop_toBottomOf="@id/imageView"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            tools:itemCount="100"
            />
        
    </androidx.constraintlayout.widget.ConstraintLayout>
    
</ScrollView>

You need to set your RecyclerView height as wrap_content, and put all your xml of your activity inside a ScrollView to get the result that you want.

Your Xml should look like this :

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:fillViewport="true"
    >

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            android:adjustViewBounds="true"
            tools:srcCompat="@tools:sample/backgrounds/scenic" />

        <!-- Your Ui Here: The ImageView is just for test -->

        <androidx.recyclerview.widget.RecyclerView
            android:id="@+id/x"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:layout_constraintTop_toBottomOf="@id/imageView"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            tools:itemCount="100"
            />
        
    </androidx.constraintlayout.widget.ConstraintLayout>
    
</ScrollView>

如何滚动整个页面,rocyclerview在scrollview的内部

更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

更多

友情链接

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文