- Java中将 File对象转MultipartFile对象 File >>> MultipartFile
奔腾的隔壁老王
javaspring开发语言
Java中将File类型的对象转换为MultipartFile类型的对象所需要的包:importjava.io.FileInputStream;importorg.springframework.web.multipart.MultipartFile;实现代码://传入一个File对象,获得一个转换后的MultipartFile对象publicMultipartFilegetMultipartFi
- Java url转MultipartFile inputStream转File file转multipartFile
Abel_JiaWei
java
Javaurl转MultipartFileinputStream转Filefile转multipartFile/***url转MultipartFile*@paramurl*@return*@throwsException*/publicstaticMultipartFileurlToMultipartFile(Stringurl)throwsException{Filefile=null;Mul
- PIPE Interface解析之SerDes/Original架构(专有)信号解析
芯芯之火,可以燎原
PIPEInterface硬件工程信息与通信
SerDes架构专有信号PHY的Input信号RxWidth[1:0]该信号用于控制接收数据的位宽,具体如下:PHY的output信号RxCLK该信号用于RxData的时钟同步。Original架构专有信号PHY的Input信号TxDataK[7:0]/[3:0]/[1:0]/[0:0]TxDataK[7:0]用于64bitinterface;TxDataK[3:0]用于32bitinterfac
- Error - cannot open input file /postproc/nlscfg.inf 错误解决
技术无疆
WindowsCEinputfilecommandwindows
执行makeimg命令的时候出现一下错误:makeimg:Creatingnlscfg.outbecausenlscfg.infdoesn'texist.makeimg:runcommand:fmerge-nlsnlscfg.outnlscfg.infError-cannotopeninputfile/postproc/nlscfg.inffmergeforWindowsCE(Release)(B
- Python二级系列(四):键盘输入两个整数,最小值和最大值,按要求输出两个整数之间的所有素数
shadowtalon
Python二级Pythonpython
素数又称质数,是指除了1和它本身以外不能被其他整数整除的数。lower=int(input("输入区间最小值:"))upper=int(input("输入区间最大值:"))fornuminrange(lower+1,upper):ifnum>1:foriinrange(2,num):if(num%i)==0:breakelse:print(num)
- Python二级系列(一):将整数转化为二进制、八进制和十六进制(大写)
shadowtalon
Python二级Pythonpython
num=eval(input('请输入数字:'))print('对应的二进制数:{0:b}\n八进制数:{0:o}\n十六进制数:{0:X}'.format(num))
- 网页隐藏版之一行小说阅读器
流落的小鬼
css前端javascript摸鱼神器最佳隐藏
网页隐藏版之一行小说阅读器显示效果:懒人操作:页面鼠标右键,新建文本文档,复制黏贴以下代码,点击左上角【文件】,点击【另存为】,如下设置,后缀为.html,这样一个本地网页就完成啦~https://baidu.combody{margin:0;padding:0;}p{font-size:15px;margin:0;padding:0;}/*设置文件输入框的样式*/#fileInput{font-
- vue3 响应式API customRef()
fishmemory7sec
vue3javascriptvue.js前端
使用ref()定义响应式数据:{{inputValue}}import{ref}from'vue';constinputValue=ref('hello')使用Vue提供的默认ref()定义响应式数据,当数据发生变化时,Vue的响应式系统会自动检测到变化,并立即更新相关的页面部分。现在,实现如下图所示的需求:当在输入框输入123时,输入结束1秒后,页面才更新。将输入框与inputValue进行双向
- elementuiPlus取消el-input的边框
qq_39016177
elementui
elementuiPlus取消el-input的边框1.通常取消边框的方法设置border为none2.还有其他类似边框的例如outlinebox-shadow这两个属性都是会产生边框效果3.el-input需要更改的话–如下需要修改box-shadow为空即可上代码:deep(.el-input__wrapper){align-items:center;background-color:#F7F
- 使用poi替换XWPFTableCell内容,并设置行间距
RR369_yyh
javaUtiljavapoi
使用poi读取word文档(docx类型),进行数据替换。另外,为了记录poi设置行间距的api,真是找了好几十分钟才找到啊啊啊啊!!!importorg.apache.poi.xwpf.usermodel.*;importorg.springframework.util.StringUtils;importjava.io.File;importjava.io.FileInputStream;im
- “ssh_dispatch_run_fatal: Connection to x.x.x.x port 22: message authentication code incorrect“报错解决方法
守月满空山雪照窗
Linuxssh运维
ssh远程连接:
[email protected]报错如下:CorruptedMAConinput.ssh_dispatch_run_fatal:Connectiontox.x.x.xport22:messageauthenticationcodeincorrect执行如下命令:ssh-Qmac可以看到:hmac-sha1hmac-sha1-96hmac-sha2-256hmac-sha2
- Leetcode.191.Number of 1 Bits
Jimmy木
题目给定一个无符号整数,求出其中二进制数中有多个1.Input:11(00000000000000000000000000001011)Output:3思路采用&运算,当(x&(10){intx=1<<i++;if((n&x)==x){n-=x;res++;}}returnres;}总结巧妙使用位运算,掌握位运算的使用场景.
- ctf逆向解题——Bomb二进制炸弹
Funkypantss
BombPhase1在输入阶段将由文件输入的字符存储在input中,在phase1,该阶段将原字符串存储到rdi中,调用pases_1函数进行字符串比较。image进入phase1函数,该函数将原字符串rdi与预先设定的字符串“BorderrelationswithCanadahaveneverbeenbetter.”(存储在rsi中)进行比较,用于比较的函数是strings_not_equal,
- java读取csv文件
c++代码诗人
java与netwindowspython开发语言
importjava.io.BufferedReader;importjava.io.FileInputStream;importjava.io.IOException;importjava.io.InputStreamReader;importjava.util.ArrayList;importjava.util.List;importjava.util.regex.Matcher;import
- Unity3d俯视视角下,通过点击屏幕获取世界坐标是如何实现的
睡不醒的小泽
Unityunity
方式一:射线转化在Unity3D中,我们先获取对应游戏画面的摄像机,之后获取屏幕点击位置的世界坐标可以通过使用ScreenPointToRay()函数实现。这个函数将屏幕坐标(在屏幕上的位置,范围从0到屏幕宽度和高度)转换为世界坐标(在世界空间中的位置)。这种方法在rts类游戏和一些3d项目的RPG游戏中比较常见。实现的方法可以概括为:根据Input.mousePosition,从camera射出
- python 程序设计
JungleChow
PythonPython
importsyss=sys.stdin.readline().split()forlineinsys.stdin:s=sys.stdin.read().strip().split()line1=input()line2=input().split()line3=input().strip().split()list=[]list=n*['1']data=list(range(n))列表中字符串转
- 【代码随想录python笔记整理】第一课 · A+B 问题1
南星六月雪
Python刷题笔记笔记python
前言:本笔记仅仅只是对内容的整理和自行消化,并不是完整内容,如有侵权,联系立删。一、数据类型Python中有一些常见数据类型,包括数字类型,布尔类型,字符串类型。其中,数字类型又分为整数类型和浮点数类型。整数类型-1、0、1浮点数类型3.14布尔类型True=1;False=0字符串类型'Hello'、"Helllo"二、输入输出1、输入:输入采用input()函数,再将变量与其建立联系。在inp
- 《Android内核剖析》笔记 第5章 进程间通信核心框架Binder
2401_84408814
程序员android笔记binder
服务端:即服务提供者,比如android就提供了很多的系统服务,比如Alarm、WIFI、INPUT、LAYOUT_INFLATER、ACTIVITY等;当然开发者也可以实现自己的服务,然后把服务开放给其他应用使用,在代码上服务接口必须继承IInterface,服务具体实现类必须继承Binder;Binder驱动:实际上他是一个遵从Linux设备驱动模型的虚拟驱动,设备节点为/dev/binder
- 前端大文件上传
没资格抱怨
vue2前端
大文件上传是需要前端和后端同时参与才可以实现的。思路大文件上传整体思路:文件切片和断点续传前端思路利用上传控件inputtype="file"绑定一个change事件,在回调中通过事件对象的e.target.files拿到这个文件对象,进行文件对象的slice方法,进行切片,一个大文件就转换成多个小文件了。借助http的可并发性,同时上传多个切片。这样从原本传一个大文件,同时传多个小的文件切片,可
- 前端文件上传总结
小小小小小小拉松
javascripthtml5
第一种:经典的form和input上传。设置form的aciton为后端页面,enctype="multipart/form-data",type=‘post’提交使用input选择文件,设置好其他input的值,点击提交,将文件数据及签名等认证信息发送到form设置的action对应的页面,浏览器也会跳转到该页面。触发form表单提交数据的方式有2种,一种是在页面上点击button按钮或按钮触发
- 【JAVA入门】Day42 - 转换流
Clown Piece
JAVA入门javapython开发语言
【JAVA入门】Day42-转换流文章目录【JAVA入门】Day42-转换流转换流是字符流和字节流之间的桥梁。转换流中的输入流叫做InputStreamReader,它可以把字节流转换为字符流。转换流的输出流叫做OutputStreamWriter,它可以把字符流转换成字节流。【使用例1】把一个GBK的文件中的中文读取到内存中,不能出现乱码。(作用1:按照指定的字符集读取数据)packageCon
- 前端有关文件上传下载操作
发呆小天才yy
前端javascript
文件上传文件上传有两种形式(传给后端的文件形式)变成blob通过formData搭载传输(二进制blob传输)转为base64直接传输(简便,但是后端需要解码,时间长),通过fileReader搭载相关对象:files(blob的一个子类):通过input标签读取过来的文件对象(属于前端的方法,没办法直接传给后端)blob:不可变的二进制内容,包含很多操作方法(newBlob([file])直接将
- Delta3d 简单的控制物体例子
Sunday
Delta3D
//Inthistutorial,youwillchangethepreviousHelloWorldapplicationto//furtheryourunderstandingofmotionmodels.Previouslyyoulearnedhowtoplacea//camerainasceneandmovethecamerapositionviamouseandkeyboardinput
- 作业2/20
江阿生_
java前端服务器
利用子进程拷贝文件的前半部分,副进程拷贝后半部分C代码#include2intmain(intargc,constchar*argv[])3{4//判断传入的文件个数5if(argc!=3)6{7printf("inputerror\n");8printf("usage:./a.outsrcfiledestfile\n");9return-1;10}11//定义进程号变量12pid_tpid=-1
- 2/18作业
江阿生_
java前端服务器
1、使用fgets统计给定文件的行数#include#include#include#defineMAXSIZE5intmain(intargc,constchar*argv[]){//判断是否进行外部传参if(argc!=2){printf("inputfileerror");printf("usage:./a.outfilename\n");return-1;}//定义文件指针,以只读的形式打
- Python 对文件的加密和解密
Jinx Boy
python哈希算法开发语言
cryptography库中的Fernet模块提供了一种简单的方法来加密和解密数据。它使用对称加密算法,其中相同的密钥用于加密和解密数据。以下是用Fernet模块对文件进行的加密和解密。加密:importhashlibimportbase64fromcryptography.fernetimportFernetimportosdefstring_to_fernet_key(input_string
- 使用Python实现多个PDF文件的合并
飘逸高铁侠
工作随笔pythonpdf开发语言
使用Python可以很方便地实现多个PDF文件的合并。我们可以使用PyPDF2库来完成这个任务。以下是一个实现PDF合并的Python脚本:importosfromPyPDF2importPdfMergerdefmerge_pdfs(input_dir,output_filename):#创建一个PdfMerger对象merger=PdfMerger()#获取输入目录中的所有PDF文件pdf_fi
- Python——计算两点距离
星和月
python
你可以使用geopy库来计算两个地点之间的距离。首先,你需要安装geopy库,可以使用以下命令进行安装:pipinstallgeopy接下来,你可以使用以下代码来计算两个地点之间的距离:romgeopy.distanceimportgeodesic#输入地点1的经纬度lat1=float(input("请输入地点1的纬度:"))lon1=float(input("请输入地点1的经度:"))#输入地
- easyexcel模板导出并且公式自动计算的方法
张毫洁
java前端服务器
ByteArrayOutputStreamoutputStream=newByteArrayOutputStream();EasyExcel.write(outputStream).withTemplate(filestream).sheet().doFill(templateMap);byte[]data=outputStream.toByteArray();ByteArrayInputStre
- ColumnParallelLinear 和 RowParallelLinear
道真人
算法人工智能
ColumnParallelLinear和RowParallelLinear是两种并行线性层,它们的主要区别在于权重矩阵的分割方式和计算过程。具体来说:ColumnParallelLinear权重矩阵分割方式:权重矩阵W被按列(column)分割成多个子矩阵,每个子矩阵在并行设备上进行计算。如果权重矩阵W的形状是(output_dim,input_dim),它会被分割成P个子矩阵,每个子矩阵的形状
- web报表工具FineReport常见的数据集报错错误代码和解释
老A不折腾
web报表finereport代码可视化工具
在使用finereport制作报表,若预览发生错误,很多朋友便手忙脚乱不知所措了,其实没什么,只要看懂报错代码和含义,可以很快的排除错误,这里我就分享一下finereport的数据集报错错误代码和解释,如果有说的不准确的地方,也请各位小伙伴纠正一下。
NS-war-remote=错误代码\:1117 压缩部署不支持远程设计
NS_LayerReport_MultiDs=错误代码
- Java的WeakReference与WeakHashMap
bylijinnan
java弱引用
首先看看 WeakReference
wiki 上 Weak reference 的一个例子:
public class ReferenceTest {
public static void main(String[] args) throws InterruptedException {
WeakReference r = new Wea
- Linux——(hostname)主机名与ip的映射
eksliang
linuxhostname
一、 什么是主机名
无论在局域网还是INTERNET上,每台主机都有一个IP地址,是为了区分此台主机和彼台主机,也就是说IP地址就是主机的门牌号。但IP地址不方便记忆,所以又有了域名。域名只是在公网(INtERNET)中存在,每个域名都对应一个IP地址,但一个IP地址可有对应多个域名。域名类型 linuxsir.org 这样的;
主机名是用于什么的呢?
答:在一个局域网中,每台机器都有一个主
- oracle 常用技巧
18289753290
oracle常用技巧 ①复制表结构和数据 create table temp_clientloginUser as select distinct userid from tbusrtloginlog ②仅复制数据 如果表结构一样 insert into mytable select * &nb
- 使用c3p0数据库连接池时出现com.mchange.v2.resourcepool.TimeoutException
酷的飞上天空
exception
有一个线上环境使用的是c3p0数据库,为外部提供接口服务。最近访问压力增大后台tomcat的日志里面频繁出现
com.mchange.v2.resourcepool.TimeoutException: A client timed out while waiting to acquire a resource from com.mchange.v2.resourcepool.BasicResou
- IT系统分析师如何学习大数据
蓝儿唯美
大数据
我是一名从事大数据项目的IT系统分析师。在深入这个项目前需要了解些什么呢?学习大数据的最佳方法就是先从了解信息系统是如何工作着手,尤其是数据库和基础设施。同样在开始前还需要了解大数据工具,如Cloudera、Hadoop、Spark、Hive、Pig、Flume、Sqoop与Mesos。系 统分析师需要明白如何组织、管理和保护数据。在市面上有几十款数据管理产品可以用于管理数据。你的大数据数据库可能
- spring学习——简介
a-john
spring
Spring是一个开源框架,是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只能由EJB完成的事情。然而Spring的用途不仅限于服务器端的开发,从简单性,可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。其主要特征是依赖注入、AOP、持久化、事务、SpringMVC以及Acegi Security
为了降低Java开发的复杂性,
- 自定义颜色的xml文件
aijuans
xml
<?xml version="1.0" encoding="utf-8"?> <resources> <color name="white">#FFFFFF</color> <color name="black">#000000</color> &
- 运营到底是做什么的?
aoyouzi
运营到底是做什么的?
文章来源:夏叔叔(微信号:woshixiashushu),欢迎大家关注!很久没有动笔写点东西,近些日子,由于爱狗团产品上线,不断面试,经常会被问道一个问题。问:爱狗团的运营主要做什么?答:带着用户一起嗨。为什么是带着用户玩起来呢?究竟什么是运营?运营到底是做什么的?那么,我们先来回答一个更简单的问题——互联网公司对运营考核什么?以爱狗团为例,绝大部分的移动互联网公司,对运营部门的考核分为三块——用
- js面向对象类和对象
百合不是茶
js面向对象函数创建类和对象
接触js已经有几个月了,但是对js的面向对象的一些概念根本就是模糊的,js是一种面向对象的语言 但又不像java一样有class,js不是严格的面向对象语言 ,js在java web开发的地位和java不相上下 ,其中web的数据的反馈现在主流的使用json,json的语法和js的类和属性的创建相似
下面介绍一些js的类和对象的创建的技术
一:类和对
- web.xml之资源管理对象配置 resource-env-ref
bijian1013
javaweb.xmlservlet
resource-env-ref元素来指定对管理对象的servlet引用的声明,该对象与servlet环境中的资源相关联
<resource-env-ref>
<resource-env-ref-name>资源名</resource-env-ref-name>
<resource-env-ref-type>查找资源时返回的资源类
- Create a composite component with a custom namespace
sunjing
https://weblogs.java.net/blog/mriem/archive/2013/11/22/jsf-tip-45-create-composite-component-custom-namespace
When you developed a composite component the namespace you would be seeing would
- 【MongoDB学习笔记十二】Mongo副本集服务器角色之Arbiter
bit1129
mongodb
一、复本集为什么要加入Arbiter这个角色 回答这个问题,要从复本集的存活条件和Aribter服务器的特性两方面来说。 什么是Artiber? An arbiter does
not have a copy of data set and
cannot become a primary. Replica sets may have arbiters to add a
- Javascript开发笔记
白糖_
JavaScript
获取iframe内的元素
通常我们使用window.frames["frameId"].document.getElementById("divId").innerHTML这样的形式来获取iframe内的元素,这种写法在IE、safari、chrome下都是通过的,唯独在fireforx下不通过。其实jquery的contents方法提供了对if
- Web浏览器Chrome打开一段时间后,运行alert无效
bozch
Webchormealert无效
今天在开发的时候,突然间发现alert在chrome浏览器就没法弹出了,很是怪异。
试了试其他浏览器,发现都是没有问题的。
开始想以为是chorme浏览器有啥机制导致的,就开始尝试各种代码让alert出来。尝试结果是仍然没有显示出来。
这样开发的结果,如果客户在使用的时候没有提示,那会带来致命的体验。哎,没啥办法了 就关闭浏览器重启。
结果就好了,这也太怪异了。难道是cho
- 编程之美-高效地安排会议 图着色问题 贪心算法
bylijinnan
编程之美
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
public class GraphColoringProblem {
/**编程之美 高效地安排会议 图着色问题 贪心算法
* 假设要用很多个教室对一组
- 机器学习相关概念和开发工具
chenbowen00
算法matlab机器学习
基本概念:
机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。
开发工具
M
- [宇宙经济学]关于在太空建立永久定居点的可能性
comsci
经济
大家都知道,地球上的房地产都比较昂贵,而且土地证经常会因为新的政府的意志而变幻文本格式........
所以,在地球议会尚不具有在太空行使法律和权力的力量之前,我们外太阳系统的友好联盟可以考虑在地月系的某些引力平衡点上面,修建规模较大的定居点
- oracle 11g database control 证书错误
daizj
oracle证书错误oracle 11G 安装
oracle 11g database control 证书错误
win7 安装完oracle11后打开 Database control 后,会打开em管理页面,提示证书错误,点“继续浏览此网站”,还是会继续停留在证书错误页面
解决办法:
是 KB2661254 这个更新补丁引起的,它限制了 RSA 密钥位长度少于 1024 位的证书的使用。具体可以看微软官方公告:
- Java I/O之用FilenameFilter实现根据文件扩展名删除文件
游其是你
FilenameFilter
在Java中,你可以通过实现FilenameFilter类并重写accept(File dir, String name) 方法实现文件过滤功能。
在这个例子中,我们向你展示在“c:\\folder”路径下列出所有“.txt”格式的文件并删除。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
- C语言数组的简单以及一维数组的简单排序算法示例,二维数组简单示例
dcj3sjt126com
carray
# include <stdio.h>
int main(void)
{
int a[5] = {1, 2, 3, 4, 5};
//a 是数组的名字 5是表示数组元素的个数,并且这五个元素分别用a[0], a[1]...a[4]
int i;
for (i=0; i<5; ++i)
printf("%d\n",
- PRIMARY, INDEX, UNIQUE 这3种是一类 PRIMARY 主键。 就是 唯一 且 不能为空。 INDEX 索引,普通的 UNIQUE 唯一索引
dcj3sjt126com
primary
PRIMARY, INDEX, UNIQUE 这3种是一类PRIMARY 主键。 就是 唯一 且 不能为空。INDEX 索引,普通的UNIQUE 唯一索引。 不允许有重复。FULLTEXT 是全文索引,用于在一篇文章中,检索文本信息的。举个例子来说,比如你在为某商场做一个会员卡的系统。这个系统有一个会员表有下列字段:会员编号 INT会员姓名
- java集合辅助类 Collections、Arrays
shuizhaosi888
CollectionsArraysHashCode
Arrays、Collections
1 )数组集合之间转换
public static <T> List<T> asList(T... a) {
return new ArrayList<>(a);
}
a)Arrays.asL
- Spring Security(10)——退出登录logout
234390216
logoutSpring Security退出登录logout-urlLogoutFilter
要实现退出登录的功能我们需要在http元素下定义logout元素,这样Spring Security将自动为我们添加用于处理退出登录的过滤器LogoutFilter到FilterChain。当我们指定了http元素的auto-config属性为true时logout定义是会自动配置的,此时我们默认退出登录的URL为“/j_spring_secu
- 透过源码学前端 之 Backbone 三 Model
逐行分析JS源代码
backbone源码分析js学习
Backbone 分析第三部分 Model
概述: Model 提供了数据存储,将数据以JSON的形式保存在 Model的 attributes里,
但重点功能在于其提供了一套功能强大,使用简单的存、取、删、改数据方法,并在不同的操作里加了相应的监听事件,
如每次修改添加里都会触发 change,这在据模型变动来修改视图时很常用,并且与collection建立了关联。
- SpringMVC源码总结(七)mvc:annotation-driven中的HttpMessageConverter
乒乓狂魔
springMVC
这一篇文章主要介绍下HttpMessageConverter整个注册过程包含自定义的HttpMessageConverter,然后对一些HttpMessageConverter进行具体介绍。
HttpMessageConverter接口介绍:
public interface HttpMessageConverter<T> {
/**
* Indicate
- 分布式基础知识和算法理论
bluky999
算法zookeeper分布式一致性哈希paxos
分布式基础知识和算法理论
BY
[email protected]
本文永久链接:http://nodex.iteye.com/blog/2103218
在大数据的背景下,不管是做存储,做搜索,做数据分析,或者做产品或服务本身,面向互联网和移动互联网用户,已经不可避免地要面对分布式环境。笔者在此收录一些分布式相关的基础知识和算法理论介绍,在完善自我知识体系的同
- Android Studio的.gitignore以及gitignore无效的解决
bell0901
androidgitignore
github上.gitignore模板合集,里面有各种.gitignore : https://github.com/github/gitignore
自己用的Android Studio下项目的.gitignore文件,对github上的android.gitignore添加了
# OSX files //mac os下 .DS_Store
- 成为高级程序员的10个步骤
tomcat_oracle
编程
What
软件工程师的职业生涯要历经以下几个阶段:初级、中级,最后才是高级。这篇文章主要是讲如何通过 10 个步骤助你成为一名高级软件工程师。
Why
得到更多的报酬!因为你的薪水会随着你水平的提高而增加
提升你的职业生涯。成为了高级软件工程师之后,就可以朝着架构师、团队负责人、CTO 等职位前进
历经更大的挑战。随着你的成长,各种影响力也会提高。
- mongdb在linux下的安装
xtuhcy
mongodblinux
一、查询linux版本号:
lsb_release -a
LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noa