当前位置: 首页 > news >正文

2021年电工杯数学建模B题光伏建筑一体化板块指数发展趋势分析及预测求解全过程论文及程序

2021年电工杯数学建模

B题 光伏建筑一体化板块指数发展趋势分析及预测

原题再现:

  国家《第十四个五年规划和 2035 年远景目标纲要》中提出,将 2030 年实现“碳达峰”与 2060 年实现“碳中和”作为我国应对全球气候变暖的一个重要远景目标。光伏建筑一体化(BIPV)是充分利用工业建筑、公共建筑屋顶等资源实施分布式光伏发电工程,它对我国实现“碳达峰”和“碳中和”起到重要作用。目前已有北京、天津、上海、重庆、内蒙古、浙江等 31 地发布光伏建筑一体化未来三至五年相关政策,这将对光伏建筑一体化相关上市企业的发展带来一定影响。在股票交易软件中,每支股票都有日 K 线(由开盘价、收盘线、最高价、最低价构成),还有移动平均线(5 日、10 日、20 日等),通过对日 K 线和移动平均线的分析,可知每支股票的走势。股票市场中有板块指数(将同一板块的个股按不同的权重方式生成相关指数),它是对该板块走势的整体反映。现统计沪深股市中 37 家光伏建筑一体化相关企业的股票数据(见附件 1),将这 37 家企业股票看作一个整体称为光伏建筑一体化板块。光伏建筑一体化板块作为新兴板块,通过对板块指数发展趋势做出预测,可以了解板块相应行业未来的发展趋势。
  请根据所给数据资料,解决以下问题:
  1.利用附件 1 中数据,给出光伏建筑一体化板块指数的移动平均线(5 日、10 日、20 日等)模型,并绘制 2019 年 4 月 1 日至 2021 年 4 月 30 日该板块指数的移动平均线。
  2.利用 2021 年 5 月 6 日至 5 月 28 日数据,对所建立模型进行误差分析并修正模型,根据修正后的模型对该板块未来发展趋势做出预测,给出 5 月 28 日后20 个交易日的日移动平均线、3 周的周移动平均线、2 个月的月移动平均线。
  3.利用 2019 年 4 月 1 日至 2021 年 5 月 28 日数据,以 2 个月为一个时间段,对上证指数和光伏建筑一体化板块指数进行相关性分析。
  4.对光伏建筑一体化板块个股投资风险进行评估,给出该板块 37 支股票2021 年 6 月份投资风险由低到高的排序结果。假定投资者持有资金 100 万元人民币,欲全部用于该板块的投资,请给出 2021 年 6 月份的最优投资方案(当日可用于投资的资金为上一个交易日结束后投资者所持有的资金,且每日持股数不超过 5 支)。
  5.请给相关部门写一份不少于 1500 字关于我国光伏建筑一体化行业未来发展趋势的报告。
  附件 1:沪深股市中 37 家光伏建筑一体化相关企业的股票数据
  附件 2:http://www.csindex.com.cn/zh-CN/indices/index-rules中证指数有限公司

整体求解过程概述(摘要)

  光伏建筑一体化指的是利用公共建筑、工业建筑的顶层布置光伏发电板,利用这些闲置资源来进行分布式光伏发电,以此实现“碳中和”目标。因此,对光伏建筑一体化的研究显得极为重要,本文针对光伏建筑一体化板块指数的发展趋势,建立了相关模型进行分析与预测。
  针对问题一,首先建立了光伏建筑一体化板块指数的数学模型,通过平均加权求和的方式,将该板块 37 只股票的加权平均和作为板块指数。为了计算出板块指数的移动平均线,首先将板块指数的收盘价数据进行整理,如图 2 所示。据此绘制了板块指数的 5 日、10 日、20 日的移动平均线,如图 3 所示。然后以 5日移动平均线为例进行分析,建立了多幂次多项式数学模型,见式(3)。最后采用递推最小二乘法进行迭代求解,结果如图 4 所示,得到最终的模型见式(7)。
  针对问题二,首先通过问题一模型对 2021 年 5.6~5.28 的移动平均线进行预测,然后与实际数据进行对比分析,结果如图 5 所示,此时平均误差为 1.2。然后通过 2021 年 5.6~5.28 时间段的数据对模型进行修正,同时修改模型的最大幂次,结果如图 6 所示,此时的平均误差为 0.2329,相比模型修正前的误差,修正后的平均误差同比下降了 80.6%。然后通过修正后的模型对未来数据进行预测,结果如图 7 所示。
  针对问题三,由于上证指数和光伏建筑一体化指数的数值差异较大,因此首先对其进行归一化处理,然后利用加权平均的方式,建立了上证指数和光伏建筑一体化指数各自的综合指数模型,并对其进行求解,结果如图 8 所示。最后采用pearson 系数对二者指数进行相关性分析,结果如图 9 所示,其中 13 个时间段中,有 2 个时间段高度正相关;3 个时间段中度正相关;3 个时间段低度正相关;4个时间段不相关;1 个时间段中度负相关。
  针对问题四,首先将将开盘价、最高价、最低价、收盘价数值与上一交易日的数值的差作为评价指标,然后以指标平均和的负数作为标准建立了综合评价模型,见式(12)。通过该模型对光伏一体化板块的 37 只股票进行了风险平均,结果如图 10 所示。其中,风险最低的 5 只股票依次是隆基股份、森特股份 、南玻A、中来股份 、 苏美达。最后通过风险程度,给出了投资者的最优投资方案,如表 2 所示。
  针对问题五,根据本文研究结果和资料查询,给出了关于我国光伏建筑一体化行业未来发展趋势的报告。

模型假设:

  1、假设搜集到的上证指数数据和附件所给数据真实有效。
  2、假设数据预测时,不考虑其他突变因素的影响
  3、假设 BIPV 板块的个股企业在预测时间内不会退市。

问题分析:

  问题一分析
  针对问题一,需建立出光伏建筑一体化板块指数移动平均线模型,首先,根据已知数据采用平均加权求和的方式得到板块指数中各变量的模型,进而可以得到板块指数中的收盘价,由题需绘制 5、10、20 日移动平均线,故分别以 5、10、20 为采样周期,得到对应的移动平均线,在此基础上,进一步建立多幂次多项式数学模型来表示板块指数移动平均线模型,通过求解得到该模型系数结果。
  问题二分析
  针对问题二,需利用 2021 年 5 月 6 日至 5 月 28 日的数据,来分析问题一中所建模型的误差并进行修正,由于该时间段内的数据较少,利用 10 日、20 日移动平均线模型进行预测时可验证的数据不足,因此,本问主要考虑利用问题一中所建立的 5 日移动平均线模型进行预测,通过与实际值进行对比,从而可以得到模型的预测误差,完成误差分析,根据题意得,需利用 5 月 6 日至 5 月 28 日的数据对模型进行修正,因此,考虑将此段时间内实际数据代入问题一所建立的多幂次多项式数学模型中,可以利用递推最小二乘法重新求得最优系数,完成对模型的修正,进而利用修正后的模型重新进行预测。
  问题三分析
  针对问题三,需分析上证指数和光伏建筑一体化板块指数的相关性,根据相关性定理,需先分别求得两者指数的一个代表性指标,再利用相关系数计算公式在求得相关性,考虑到两者指数中包括多个指标且每个指标差异较大,因此,先分别将两者的各个指标进行归一化处理并加权求和,来得到两者的综合指数,根据题目要求,需以两个月为一个时间段,故将总时间分成 13 段,分别进行相关性分析。
  问题四分析
  针对问题四,需对板块中 37 支股票进行风险评估,本问考虑当股票波动较大时,其风险也会较大,因此选取个股指数中的开盘价、最高价、最低价以及收盘价作为评价指标,但考虑到每个指标差异较大,故重新选取该指标当前时刻数值与上一时刻数值的差值作为新的评价指标,在此基础上进行加权平均,得到个股的风险评价模型,由于该模型主要包括个股指数两个时刻的差值,即变化量,因此,判断模型计算值越大,则风险越高,反之越低,最后选取风险评价值最低的 5 支按比例分配投资资金即可。
  问题五分析
  针对问题五,通过查阅相关资料,了解光伏建筑一体化的概念以及发展现状,根据本文对于该板块股市的分析,进一步分析该板块未来发展趋势,并提出相关建议。

模型的建立与求解整体论文缩略图

在这里插入图片描述

全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

程序代码:

部分程序如下:
%先求时延和嵌入维,带入本程序,Lyapunov_rosenstein_2.dll调用需要安装完整Simulink功能
% 计算时间序列 Lyapunov 指数
clc
clear
close all
data = textread('深证.txt');             % 时间序列,列向量
data = data(end-2000:end);
%-----------------------------------------------------------------
% Logistic 入口参数
tau = 2;                        % 时延
m = 25;                          % 嵌入维
[xn] = PhaSpaRecon(data,tau,m);    % 每列为一个点
xn = xn';                       % 每行为一个点
P =fix(period_mean_fft(data));     % 序列平均周期
if P>500P=500;
end
taumax = 500;                    % 最大离散步进时间
fs = 1;                         % 采样频率
Y = Lyapunov_rosenstein_2(xn,fs,tau,m,taumax,P);
Y(1)=[];
figure
plot(log(Y),'b-'); grid; xlabel('i'); ylabel('y(i)');
linear_zone=[1:length(Y)]';
F = polyfit(linear_zone,log(Y),1);
y=linear_zone.*F(1)+F(2);
hold on
plot(linear_zone,y,'r-')
legend('data','线性')
str = ['y=',num2str(F(1)),'x+(',num2str(F(2)),')'];
text(50,max(y),str)
clear
clc
%cao法求嵌入维
data = textread('深证.txt');             % 时间序列,列向量
data = data(end-100:end);
min_m=1;
max_m=30;
tau=2;
k=1;
N=length(data);
En=[];
for m=min_m:max_mNm=N-tau*(m-1);Y=[];D=[];ad=[];Y=reconstitution(data,N,m,tau);for i=1:N-m*taud=[];for j=1:N-m*taud(j)=norm(Y(:,i)-Y(:,j),inf);endtemp=[];temp=sort(d);D(i,1)=i;  temp1=[];temp2=[];temp1=find(temp>0);temp2=find(d==temp(temp1(1)));D(i,2)=temp2(1);  D(i,3)=temp(temp1(1));%计算a(i,m)Y1=[];Y2=[];Y1=[Y(:,i);data(m*tau+i)];Y2=[Y(:,D(i,2));data(D(i,2)+m*tau)];ad(i)=norm(Y1-Y2,inf)/D(i,3);end%求E(d)E(k,1)=m;E(k,2)=sum(ad)/(N-m*tau);%求E*(d)En(k,1)=m;dd=[];for kk=1:N-m*taudd(kk)=abs(data(D(kk,1)+m*tau)-data(D(kk,2)+m*tau));endEn(k,2)=sum(dd)/(N-m*tau);k=k+1;
end
%求E1(d)
E1=[];
for i=1:(max_m-min_m)E1(i,1)=E(i,1);E1(i,2)=E(i+1,2)/E(i,2);
end
%求E2(d)
E2=[];
for i=1:(max_m-min_m)E2(i,1)=En(i,1);E2(i,2)=En(i+1,2)/En(i,2);
end
figure(1)
plot(E1(:,1),E1(:,2),'-bs',E2(:,1),E2(:,2),'-r*');xlabel('嵌入维数');ylabel('E1(m)&E2(m)');
grid on
function [xn,dn] = PhaSpaRecon(s,tau,m,T)
% 混沌序列的相空间重构 (phase space reconstruction)
% [xn, dn, xn_cols] = PhaSpaRecon(s, tau, m)
% 输入参数:    s          混沌序列(列向量)
%               tau        重构时延
%               m          重构维数
%               T          直接预测步数
% 输出参数:    xn         相空间中的点序列(每一列为一个点)
%               dn         一步预测的目标(行向量)[rows,cols] = size(s);
if (rows>cols)len = rows;s = s';
elselen = cols;
endif (nargin < 4)T = 1;
endif (nargout==1)if (len-(m-1)*tau < 1)disp('err: delay time or the embedding dimension is too large!')xn = [];elsexn = zeros(m,len-(m-1)*tau);for i = 1:mxn(i,:) = s(1+(i-1)*tau : len-(m-i)*tau);   % 相空间重构,每一行为一个点 endendelseif (nargout==2)if (len-T-(m-1)*tau < 1)disp('err: delay time or the embedding dimension is too large!')xn = [];dn = [];elsexn = zeros(m,len-T-(m-1)*tau);for i = 1:mxn(i,:) = s(1+(i-1)*tau : len-T-(m-i)*tau);   % 相空间重构,每一行为一个点 enddn = s(1+T+(m-1)*tau : end);    % 预测的目标endend
全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

相关文章:

2021年电工杯数学建模B题光伏建筑一体化板块指数发展趋势分析及预测求解全过程论文及程序

2021年电工杯数学建模 B题 光伏建筑一体化板块指数发展趋势分析及预测 原题再现&#xff1a; 国家《第十四个五年规划和 2035 年远景目标纲要》中提出&#xff0c;将 2030 年实现“碳达峰”与 2060 年实现“碳中和”作为我国应对全球气候变暖的一个重要远景目标。光伏建筑一体…...

pandas教程:Essential Functionality 索引 过滤 映射 排序

文章目录 5.2 Essential Functionality&#xff08;主要功能&#xff09;1 Reindexing&#xff08;重新索引&#xff09;2 Dropping Entries from an Axis (按轴删除记录)3 Indexing, Selection, and Filtering(索引&#xff0c;选择&#xff0c;过滤)Selection with loc and i…...

pyspark连接mysql数据库报错

使用pyspark连接mysql数据库代码如下 spark_conf SparkConf().setAppName("MyApp").setMaster("local")spark SparkSession.builder.config(confspark_conf).getOrCreate()url "jdbc:mysql://localhost:3306/test?useUnicodetrue&characterE…...

HK WEB3 MONTH Polkadot Hong Kong 火热报名中!

HK Web3 Month 11月除了香港金融科技周外&#xff0c;HK Web3 Month又是一大盛事&#xff0c;从10月29日开始开幕直到11月18日结束。此次将齐聚世界各地的Web3产业从业者、开发者、社群成员和学生来参与本次盛会。除外&#xff0c;超过75位产业知名的讲者与超过50场工作坊将为…...

“第六十三天”

这两天怎么做的这么别扭&#xff0c;为什么我的vs 的strlen函数包括终止字符了&#xff1b; 哦哦&#xff0c;明白了&#xff0c;fgets函数读取在未达到指定字长&#xff0c;或者遇见空白符之前&#xff0c;会读取前面的所有字符&#xff0c;所以会读取换行符&#xff0c;而get…...

常用排序算法实现

时间复杂度 O ( 1 ) O(1) O(1) void func1(int n){int count 100;count; } void func2(int n){int count 100;for(int i 0; i < count;i){} } int func3(int n){return n; }O ( n ) O(n) O(n) void func1(int n){int count 100;for(int i 0; i < n;i){count;} …...

使用表单登录方法模拟登录通信人家园,要求发送登录请求后打印出来的用户名下的用户组类别

目标网站&#xff1a;https://www.txrjy.com/forum.php 一、进入网页&#xff0c;右键“检查” 二、输入用户名和密码&#xff0c;点击“登录”&#xff0c;点击“Network”,上划加载项找到蓝色框中的内容 三、点击第一个加载项&#xff0c;找到URL 四、相关代码&#xff1a; …...

Redis 的缓存击穿,穿透,雪崩及其解决方案

1 缓存穿透 什么是缓存穿透&#xff1f; 大量请求的 key 是不合理的&#xff0c;根本不存在于缓存中&#xff0c;也不存在于数据库中 。导致这些请求直接到了数据库上&#xff0c;根本没有经过缓存这一层&#xff0c;对数据库造成了巨大的压力&#xff0c;可能直接就被这么多…...

JWT原理分析——JWT

了解为什么会有JWT的出现&#xff1f; 首先不得不提到一个知识叫做跨域身份验证&#xff0c;JWT的出现就是为了更好的解决这个问题&#xff0c;但是在没有JWT的时候&#xff0c;我们一般怎么做呢&#xff1f;一般使用Cookie和Session&#xff0c;流程大体如下所示&#xff1a;…...

Jprofiler/ VisualVM 定位内存溢出OOM

下载,接受协议下一步下一步,最后选择与IDEA集成OK ej-technologies - Java APM, Java Profiler, Java Installer Builder IDEA配置参数: # F:\study\spring-test\dump 为dump文件保存路径-XX:HeapDumpOnOutOfMemoryError -XX:HeapDumpPathF:\study\spring-test\dumppackage …...

NOIP2023模拟13联测34 competition

题目大意 有一场题目数量为 m m m的比赛&#xff0c;有一个团队想要来参加。 这个团队有 n n n个选手&#xff0c;编号为 i i i的选手能做第 l i ∼ r i l_i \sim r_i li​∼ri​道题&#xff0c;每题他都有 100 % 100\% 100%的概率做出来。 这个团队会随机派出一只队伍来参…...

Intel oneAPI笔记(2)--jupyter官方文档(oneAPI_Intro)学习笔记

前言 本文是对jupyterlab中oneAPI_Essentials/01_oneAPI_Intro文档的学习记录&#xff0c;包含对SYCL、DPC extends SYCL、oneAPI Programming models等介绍和SYCL代码的初步演示等内容 oneAPI编程模型综述 oneAPI编程模型提供了一个全面而统一的开发人员工具组合&#xff0…...

用 QT 开发软件会吃官司吗?

之前我写过我们现在使用 QT 开发跨平台软件&#xff0c;有朋友留言&#xff0c;QT 虽好&#xff0c;当心收到律师函。今天就来聊聊这个话题。 在开始这个话题之前&#xff0c;我们先把使用盗版 QT 排除在外&#xff0c;只讨论在合法且遵从版权协议的前提下&#xff0c;能否使用…...

远程运维用什么软件?可以保障更安全?

远程运维顾名思义就是通过远程的方式IT设备等运行、维护。远程运维适用场景包含因疫情居家办公&#xff0c;包含放假期间出现运维故障远程解决&#xff0c;包含项目太远需要远程操作等等。但远程运维过程存在一定风险&#xff0c;安全性无法保障&#xff0c;所以一定要选择靠谱…...

数据结构与算法C语言版学习笔记(2)-线性表、顺序存储结构的线性表

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 数据结构部分的知识框架一、线性表的定义和特点1.定义2.特点 二、线性表的实际案例引入1.案例一&#xff1a;多项式的加减乘除2.案例二&#xff1a;当多项式是稀疏多…...

【vite】vite.defineConfig is not a function/npm无法安装第三方包问题

当使用vite命令 npm init vite-app 项目名称时配置 import vue from vitejs/plugin-vueexport default defineConfig({plugins: [vue()] })会报错vite.defineConfig is not a function 还有就是npm下载的时候也会报错 原因vite插件vitejs/plugin-vue和vite版本问题 解决 调…...

234. 回文链表 --力扣 --JAVA

题目 给你一个单链表的头节点 head &#xff0c;请你判断该链表是否为回文链表。如果是&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 解题思路 判断链表是否为回文链表取决于链表中各个节点的值&#xff0c;所以可以通过存储各节点的值进行对比判断&…...

【JAVA学习笔记】65 - 文件类,IO流--节点流、处理流、对象流、转换流、打印流

项目代码 https://github.com/yinhai1114/Java_Learning_Code/tree/main/IDEA_Chapter19/src/com/yinhai 文件 一、文件&#xff0c;流 文件,对我们并不陌生&#xff0c;文件是保存数据的地方,比如大家经常使用的word文档,txt文件,excel文件..都是文件。它既可以保存一张图片…...

R语言 复习 习题图片

这是日天土申哥不知道从哪淘来的R语言复习知识点图片&#xff0c;大部分内容都是课后习题的答案 加油吧&#xff0c;骚年&#xff0c;考个好分数...

c语言 结构体 简单实例

结构体 简单例子 要求&#xff1a; 结构体保存学生信息操作 代码 #include <stdio.h>//定义结构体 struct student{int ID;char name[20];char sex;char birthday[8];int grade; };int main(){int number;printf("请输入学生个数&#xff1a;");scanf(&quo…...

MOSFET栅极电阻选型实战:从波形分析到最佳阻值确定(附IRF540实测数据)

MOSFET栅极电阻选型实战&#xff1a;从波形分析到最佳阻值确定&#xff08;附IRF540实测数据&#xff09; 在电力电子设计中&#xff0c;MOSFET的栅极电阻选型往往被工程师视为"小问题"&#xff0c;但实际调试中却可能成为影响系统稳定性的关键因素。记得去年参与一款…...

学术论文利器:使用LaTeX撰写cv_unet_image-colorization技术报告与实验图表

学术论文利器&#xff1a;使用LaTeX撰写cv_unet_image-colorization技术报告与实验图表 写技术报告或者论文&#xff0c;尤其是涉及图像处理、深度学习这类需要大量公式和图表的领域&#xff0c;你是不是也遇到过这些烦恼&#xff1f;用Word排版&#xff0c;公式稍微复杂一点就…...

Jenkins使用手册

前提是Jenkins已经部署好在服务器上了&#xff0c;这个手册适用于Jenkins建一个新项目档案点击New Item创建一个新的项目档案点击ok后进入以下配置页面建议勾选第一个选项 Discard builds其他选项的含义这就是让 Jenkins 知道“去哪里拿代码”的核心关卡。去git还是svn厂库去拉…...

飞书集成全攻略:OpenClaw+Qwen3-4B-Thinking打造智能工作台

飞书集成全攻略&#xff1a;OpenClawQwen3-4B-Thinking打造智能工作台 1. 为什么选择OpenClawQwen3-4B-Thinking组合&#xff1f; 去年夏天&#xff0c;当我第一次尝试用AI自动化处理会议纪要时&#xff0c;经历了从兴奋到沮丧的全过程。当时使用的是某商业SaaS方案&#xff…...

【ProtoBuf 实战训练】网络版通讯录

文章目录1. 通讯录 4.0 实现&#xff08;网络版&#xff09;2. 环境搭建2.1 搭建服务端2.2 搭建客户端2.3 运行结果3. 新增联系人功能3.1 协议约定3.2 协议接口定义 (.proto)3.2.1 AddContactRequest&#xff08;请求消息&#xff09;3.2.2 AddContactResponse&#xff08;响应…...

JDK-02 | 我为什么越来越喜欢用 Java 的 Text Blocks

这是专栏第 2 篇。 如果第一篇 record 是在“模型表达”上让我轻松,Text Blocks 则是在“日常编码和代码审查”上让我明显省力。 我先给结论:Text Blocks 不只是少写几个 +,它真正解决的是多行文本在代码中的可读性、可评审性和可回归性。 一、我为什么会认真用这个特性 …...

单相光伏电池并网:扰动观测法实现最大功率输出与直流母线电压恒定策略

单相光伏电池并网 1.光伏采用扰动观测法实现最大功率输出 2.逆变器采用直流母线电压恒定策略 3.实现光伏的最大功率输出&#xff0c;直流母线电压维持在恒定值&#xff0c;总谐波畸变率满足并网条件光伏板在阳台上晒得发烫的时候&#xff0c;我最喜欢蹲在配电箱旁边观察电流表指…...

嵌入式工程师的中年危机与转型策略

1. 嵌入式工程师的中年危机&#xff1a;一个行业的缩影44岁的梧桐&#xff0c;一位拥有21年嵌入式开发经验的资深架构师&#xff0c;在2023年的寒冬里收到了人生第一封解约通知书。这个场景让我想起公司上周的招聘会——38岁的候选人简历被默默放进了"待定"文件夹&am…...

OpenClaw飞书机器人配置:千问3.5-35B-A3B-FP8实现对话触发任务

OpenClaw飞书机器人配置&#xff1a;千问3.5-35B-A3B-FP8实现对话触发任务 1. 为什么选择OpenClaw飞书机器人组合&#xff1f; 去年我接手了一个小团队的内部自动化需求——需要让成员通过自然语言指令完成文件整理、数据查询等重复性工作。尝试过直接调用大模型API&#xff…...

(23)ArcGIS Pro 空间连接与缓冲区分析:属性传递、多环缓冲区实战全攻略

点赞&#xff0b;关注送&#xff1a; 1、天地图GS&#xff08;2024&#xff09;0650号_2025.9版&#xff1b; 2、全国土地覆盖数据CLCD2025年&#xff1b; 注&#xff1a;其他数据也可私信或留言&#xff0c;看是否有 前言 在 ArcGIS Pro 空间分析中&#xff0c;缓冲区分析与空…...