- python aiohttp简易使用教程
Amos_x
pythonpythonaiohttp异步
0.前言本文翻译自aiohttp的官方文档,如有纰漏,欢迎指出。aiohttp分为服务器端和客户端,本文只介绍客户端。另外我已经对aiohttp和asyncio进行了封装,可以参考我的github地址:https://github.com/web-trump/ahttp由于上下文的缘故,请求代码必须在一个异步的函数中进行:asyncdeffn():pass1.aiohttp安装pip3instal
- RK3588 ubuntu20.04 换源 aarch64源
苏三福
ubuntu
备份sudocp/etc/apt/sources.list/etc/apt/sources.list.backup编辑sudovim/etc/apt/sources.list拷贝一下:debhttps://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/focalmainrestricteduniversemultiversedeb-srchttps://mir
- STM32MP2 系列 RIF 资源隔离框架使用教程
最后一个bug
主流单片机开发(MCU)linux应用程序开发linux内核设计与实现stm32嵌入式硬件单片机
STM32MP2系列RIF资源隔离框架使用教程一、RIF是什么RIF就像是STM32MP2系列芯片的“安全卫士”,能把芯片里不同的运行区域隔离开,保护内部内存、外部内存和内部外设不被随意访问。在芯片这个“小世界”里,不同的程序和设备就像不同的“居民”,RIF确保每个“居民”只能在自己的“地盘”活动,不能随便闯入别人的区域捣乱。(一)关键术语CID(隔间标识符):可以把CID想象成每个“居民”(总线
- DocHub 开源项目安装与使用教程
羿漪沁Halbert
DocHub开源项目安装与使用教程DocHubУправлениеархитектуройкаккодом项目地址:https://gitcode.com/gh_mirrors/doch/DocHub1.项目目录结构及介绍DocHub项目的目录结构如下:dochub/├──browserslistrc#浏览器兼容性配置文件├──dockerignore#Docker忽略文件├──editorcon
- YIUI Unity UI框架安装与使用教程
翟培任Lame
YIUIUnityUI框架安装与使用教程YIUIUnity3DUGUIFramework项目地址:https://gitcode.com/gh_mirrors/yi/YIUI1.项目目录结构及介绍YIUI项目的目录结构如下:YIUI/├──YIUIFramework/│├──Assets/││├──Scripts/││├──Resources/││├──Scenes/││├──Shaders/││
- DockerFile实战测试
johnmand
centoslinux运维
创建一个自己的centos1.编写dockerfile的文件[root@localhostdockerfile]#catmydockerfileFROMcentosMAINTAINERgaoleENVMYPATH/usr/localWORKDIR$MYPATH#一开始的时候这里写错了,没有写$,所有进去以后到了/MYPATH的路径RUNyum-yinstallvimRUNyum-yinstalln
- Pandas使用教程 - 多级索引 (MultiIndex)
闲人编程
Pandas使用教程pandasMultiIndex多级索引元组分组聚合python
目录1.什么是MultiIndex?2.MultiIndex的创建2.1从多个数组或列表创建MultiIndex2.2从元组列表创建MultiIndex2.3使用DataFrame的set_index()创建MultiIndex3.MultiIndex的基本操作3.1索引与切片3.1.1访问特定级别的数据3.1.2使用xs()方法进行跨层次切片3.2重新排列和重设索引3.2.1swaplevel(
- 【Vim Masterclass 笔记10】S06L23:Vim 核心操作训练之 —— 文本的搜索、查找与替换操作(第二部分)
安冬的码畜日常
VimMasterclassvim笔记vim查找与替换
文章目录S06L23Search,Find,andReplace-PartTwo1文本替换命令`:s/old/new/`2指定范围的文本替换3特例:路径的替换4文件行号的配置5要点总结(1)搜索当前行(SameLineSearching)(2)跨行搜索(Searching)(3)替换命令(SubstituteCommand)写在前面根据李笑来《自学是门手艺》的建议,梳理完知识要点后又对这章内容制作
- 【Vim Masterclass 笔记13】第 7 章:Vim 核心操作之——文本对象与宏操作 + S07L28:Vim 文本对象
安冬的码畜日常
VimMasterclassvim笔记vim文本对象文本对象
文章目录Section7:TextObjectsandMacrosS07L28TextObjects1文本对象的含义2操作文本对象的基本语法3操作光标所在的整个单词4删除光标所在的整个句子5操作光标所在的整个段落6删除光标所在的中括号内的文本7删除光标所在的小括号内的文本8操作尖括号内的文本9操作光标所在的标签文本10操作大括号内的文本11操作光标所在的各种括号内的文本12本节思维导图写在前面本篇
- elasticsearch8 linux版以服务的方式启动
zhangzeyuaaa
elasticsearchLinuxlinux运维服务器
1.创建系统服务文件对于使用systemd作为系统初始化系统的Linux发行版(如CentOS7及以上、Ubuntu16.04及以上),需要创建一个systemd服务文件。以root用户或具有sudo权限的用户身份执行以下操作:sudovim/etc/systemd/system/elasticsearch.service在打开的文件中输入以下内容:[Unit]Description=Elasti
- CentOS7.6 服务器负载均衡——LVS-DR实战案例
*旧梦*
自动化运维服务器负载均衡lvs网络运维李心怡
1、前期环境准备1.准备两台主机IP地址主机名角色内存大小192.168.145.11LVS-DR负载均衡器2G192.138.145.23web1服务器12G192.168.145.34web1服务器22G设置主机名hostnamectlset-hostname+主机名su设置IP地址然后重启网卡vim/etc/sysconfig/network-scripts/ifcfg-ens33syste
- Node.js使用教程
m0_74824112
面试学习路线阿里巴巴node.jsvim编辑器
Node.js使用教程Node.js是一个基于ChromeV8引擎的JavaScript运行环境,它让JavaScript运行在服务器端。以下是一个简单的Node.js使用教程:一、Node.js开发环境和编译1.1安装Node.js访问Node.js官网下载并安装适合您操作系统的Node.js版本。1.2创建一个Node.js项目在您的工作目录中,创建一个新的文件夹作为项目目录,例如命名为my_
- Linux环境基础开发工具yum和vim使用
Yu_Lijing
Linuxlinuxcentos运维
目录1.Linux软件包管理器yum1.1什么是软件包1.2关于rzsz1.3注意事项1.4查看软件包注意事项:1.5如何安装软件注意事项:1.6如何卸载软件2.1Linux编辑器-vim使用2.1.1vim的基本概念2.1.2vim的基本操作2.1.3vim正常模式命令集2.1.4vim末行模式命令集2.1.5vim操作总结2.1.6简单vim配置3.总结1.Linux软件包管理器yum1.1什
- CentOS7防火墙的配置及使用
love6a6
linux
首先介绍一下centos系统的网卡配置:sudovim/etc/sysconfig/network-scripts/ifcfg-eth0网卡获得ip地址的方式:Static(静态ip地址)dhcp(通过dhcp协议获取ip)bootip通过bootp协议获得的ip地址BROADCAST=192.168.0.255子网广播地址HWADDR=00:50:56:8E:47:EE网卡物理地址IPADDR=
- 第三章 回归训练实战(以预测新冠感染人数为例)
不吃香菜(扣1复活版)
深度学习入门笔记深度学习人工智能
完整项目代码(预测第三天的新冠感染人数)fromsklearn.feature_selectionimportSelectKBestfromsklearn.feature_selectionimportchi2importcsv#读CSVimportnumpyasnpimporttimeimportmatplotlib.pyplotaspltimportpandasaspdfromtorchimp
- Java 现代化日期时间api使用教程
java
简介在Java中,处理日期和时间对于许多应用程序都是必不可少的。Java随着时间的推移而发展,随着Java8的引入,引入了java.time包,为日期和时间操作提供了更现代、更全面的API。旧版java.util.Date类(Java8之前)在Java8之前,Java使用java.util.Date类来表示日期和时间。然而,它存在许多设计问题,并且不易于使用(例如,易变性、日期和时间之间的混淆)。
- Linux 设置静态IP
高建伟-joe
Linux系统linuxtcp/ip运维centosubuntu
Linux设置静态IPUbuntuvim/etc/netplan/00-installer-config.yaml#00-installer-config.yaml#Thisisthenetworkconfigwrittenby'subiquity'network:ethernets:ens33:dhcp4:false#addresses:[192.168.3.59/24]addresses:[1
- RTSP 公开地址
_老码
项目实战物联网音视频html
http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4亲测可用,需等待一段时间,有点卡。苹果提供的测试链接,等待时间更长,也能用。苹果提供的测试源(点播):http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8http://devimages.apple.com/iphone/sam
- mysql8.0 设置远程连接
乐观主义现代人
mysqllinux服务器
1.修改配置(这一步很多教程上没有写,这是最重要的一步)cd/etc/mysql/mysql.conf.dvimmysqld.cnf#找到#bind-address=127.0.0.1,注释掉,替换成下面的配置bind-address=0.0.0.02.重启mysql服务servicemysqlrestart创建用户,授权,刷新配置生效createuser'demo'@'%'identifiedb
- linux命令 查看文件行号的几种方式
乐观主义现代人
Linux基础#命令行linuxbash运维
1.vimfileName这是一种最基本的方法,打开文件看行号一次跳到最后,同样的gg是跳到开始**注意:**如果没有设置显示行号需要打开文件以后输入:setnumber;或者通过设置.vimrc,这种方式需要退出窗口重新登录生效。2.cat-nfileName[xiaodong@localhost~]$cat-ncat-demo1dsklnnsdklgh2dfbmnsldkgnd3fdsg3.w
- Golang 基础库之Strconv
家了叭叭
Golanggolangc语言开发语言
Strconv参考资料:http://c.biancheng.net/view/vip_7305.htmlhttps://vimsky.com/examples/list/code-usage-page-1.html标准库中文文档:https://studygolang.com/pkgdocstrconv包实现了基本数据类型和其字符串表示的相互转换。实现了基本数据类型与其字符串表示的转换,主要有以
- SHELL-条件判断内建变量($UID)
A?J'aime?
SHELL脚本
[root@room9pc01opt]#vimtest1.sh#!/bin/bash#!/bin/bash[$UID!=0]&&echo"yourarenotroot"&&exityum-yinstallvsftpd&>/dev/nullsystemctlrestartvsftpdsystemctlenablevsftpd
- Centos7安装Clickhouse单节点部署
lcz-2000
clickhouselinux服务器
部署流程1、关闭防火墙&沙盒关闭防火墙并关闭开机自启动systemctlstopfirewalld&&systemctldisablefirewalld查看selinux状态是否为disabled,否则修改[root@localhost~]#getenforceEnforcing修改为disabledvim/etc/selinux/config#修改SELINUX=disabled#重启生效reb
- JSON-Schema-Editor 使用教程
邱进斌Olivia
JSON-Schema-Editor使用教程json-schema-editorJSONSchemaEditorisanintuitiveeditorforJSONschema.Itprovidesatreeviewtopresentthestructureofschema,andapropertyinspectortoeditthepropertiesofschemaelement.Develo
- 视频实时换F!完全免费,直播特效、OBS美颜、AI卡通人物等,用 Snap Camera 就够了,附最新安装使用教程!简直无敌,结合使用RTranslator可离线使用的实时翻译、同声传译软件免费开源
代码讲故事
深耕技术之源美颜直播特效卡通翻译传译视频
视频实时换lian!完全免费,直播特效、OBS美颜、AI卡通人物等,用SnapCamera就够了,附最新安装使用教程!简直无敌结合RTranslator可离线使用的实时翻译、同声传译软件免费开源。RTranslator可离线使用的实时翻译、同声传译软件!免费开源RTranslator是一款适用于Android的(几乎)开源、免费、离线实时翻译应用程序。连接到拥有该应用程序的人,连接蓝牙耳机,将手机
- mysql8.0一主多从,互为主从配置出现的错误
既然选择了远方,我便风雨兼程
mysqlmysql
一.一主多从1.设置主服务器vim/etc/my.cnf[mysqld]server-id=1log-bin=/var/log/mysql/mysql-binmkdir/var/log/mysqlchown-Rmysql.mysql/var/log/mysql重启服务2.主服务器创建用户CREATEUSER'用户名'@'%'identifiedBY'password';GRANTREPLICATI
- 编写Linux系统rhel9的网络配置脚本
Bug.ink
linux运维服务器
要求:名称:vmset.sh操作:vmset.sh后加网卡名,ip即可配置好网卡的IP操作:在/bin路径下编写脚本vmset.sh,可以直接执行,不用加其他路径vim/bin/vmset.sh#!/bin/bashinterface_name=$1ip_address=$2cat>/etc/NetworkManager/system-connections/${interface_name}.n
- 实验三: CSRF&XSS
teivos
实验报告csrf信息安全
备注#可以把所有的vim替换成gedit可能使用更方便#base64编码地址:https://www.base64encode.org/XSS前言虽然对javascript:进行了一定的过滤可以使用base64编码进行绕过比如alert("1");可以base64编码成PHNjcmlwdD5hbGVydCgiMSIpOzwvc2NyaXB0Pg==然后可以组装成test放入profile,可以实现
- 一个简单的Backtrader使用示例教程
数字花园笔记
pandaspython数据分析
Backtrader是一个用于构建、回测和部署交易策略的Python框架。以下是一个简单的Backtrader使用教程,可以帮助您开始使用Backtrader进行交易策略的开发和测试。安装Backtrader首先,您需要安装Backtrader库。您可以使用以下命令在命令行中安装:Copypipinstallbacktrader准备数据在使用Backtrader进行回测之前,您需要准备好历史市场数
- 【Linux-常用命令】Linux 常用命令大全
bmyyyyyy
开发语言linux运维服务器
【Linux-常用命令】Linux常用命令大全1)文件管理1.1.目录操作1.2.vim操作1.3.打包压缩相关命令1.4.Linux管道1.5.Linux远程拷贝命令1.6.查看文件目录大小2)文件权限管理2.1.三种基本权限2.2.更改权限3)运行程序3.1.命令行运行3.2.后台运行3.3.服务方式运行4)系统相关4.1.系统管理命令4.2.防火墙4.3.关机和重启4.4.网络配置5)用户管
- ztree设置禁用节点
3213213333332132
JavaScriptztreejsonsetDisabledNodeAjax
ztree设置禁用节点的时候注意,当使用ajax后台请求数据,必须要设置为同步获取数据,否者会获取不到节点对象,导致设置禁用没有效果。
$(function(){
showTree();
setDisabledNode();
});
- JVM patch by Taobao
bookjovi
javaHotSpot
在网上无意中看到淘宝提交的hotspot patch,共四个,有意思,记录一下。
7050685:jsdbproc64.sh has a typo in the package name
7058036:FieldsAllocationStyle=2 does not work in 32-bit VM
7060619:C1 should respect inline and
- 将session存储到数据库中
dcj3sjt126com
sqlPHPsession
CREATE TABLE sessions (
id CHAR(32) NOT NULL,
data TEXT,
last_accessed TIMESTAMP NOT NULL,
PRIMARY KEY (id)
);
<?php
/**
* Created by PhpStorm.
* User: michaeldu
* Date
- Vector
171815164
vector
public Vector<CartProduct> delCart(Vector<CartProduct> cart, String id) {
for (int i = 0; i < cart.size(); i++) {
if (cart.get(i).getId().equals(id)) {
cart.remove(i);
- 各连接池配置参数比较
g21121
连接池
排版真心费劲,大家凑合看下吧,见谅~
Druid
DBCP
C3P0
Proxool
数据库用户名称 Username Username User
数据库密码 Password Password Password
驱动名
- [简单]mybatis insert语句添加动态字段
53873039oycg
mybatis
mysql数据库,id自增,配置如下:
<insert id="saveTestTb" useGeneratedKeys="true" keyProperty="id"
parameterType=&
- struts2拦截器配置
云端月影
struts2拦截器
struts2拦截器interceptor的三种配置方法
方法1. 普通配置法
<struts>
<package name="struts2" extends="struts-default">
&
- IE中页面不居中,火狐谷歌等正常
aijuans
IE中页面不居中
问题是首页在火狐、谷歌、所有IE中正常显示,列表页的页面在火狐谷歌中正常,在IE6、7、8中都不中,觉得可能那个地方设置的让IE系列都不认识,仔细查看后发现,列表页中没写HTML模板部分没有添加DTD定义,就是<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3
- String,int,Integer,char 几个类型常见转换
antonyup_2006
htmlsql.net
如何将字串 String 转换成整数 int?
int i = Integer.valueOf(my_str).intValue();
int i=Integer.parseInt(str);
如何将字串 String 转换成Integer ?
Integer integer=Integer.valueOf(str);
如何将整数 int 转换成字串 String ?
1.
- PL/SQL的游标类型
百合不是茶
显示游标(静态游标)隐式游标游标的更新和删除%rowtyperef游标(动态游标)
游标是oracle中的一个结果集,用于存放查询的结果;
PL/SQL中游标的声明;
1,声明游标
2,打开游标(默认是关闭的);
3,提取数据
4,关闭游标
注意的要点:游标必须声明在declare中,使用open打开游标,fetch取游标中的数据,close关闭游标
隐式游标:主要是对DML数据的操作隐
- JUnit4中@AfterClass @BeforeClass @after @before的区别对比
bijian1013
JUnit4单元测试
一.基础知识
JUnit4使用Java5中的注解(annotation),以下是JUnit4常用的几个annotation: @Before:初始化方法 对于每一个测试方法都要执行一次(注意与BeforeClass区别,后者是对于所有方法执行一次)@After:释放资源 对于每一个测试方法都要执行一次(注意与AfterClass区别,后者是对于所有方法执行一次
- 精通Oracle10编程SQL(12)开发包
bijian1013
oracle数据库plsql
/*
*开发包
*包用于逻辑组合相关的PL/SQL类型(例如TABLE类型和RECORD类型)、PL/SQL项(例如游标和游标变量)和PL/SQL子程序(例如过程和函数)
*/
--包用于逻辑组合相关的PL/SQL类型、项和子程序,它由包规范和包体两部分组成
--建立包规范:包规范实际是包与应用程序之间的接口,它用于定义包的公用组件,包括常量、变量、游标、过程和函数等
--在包规
- 【EhCache二】ehcache.xml配置详解
bit1129
ehcache.xml
在ehcache官网上找了多次,终于找到ehcache.xml配置元素和属性的含义说明文档了,这个文档包含在ehcache.xml的注释中!
ehcache.xml : http://ehcache.org/ehcache.xml
ehcache.xsd : http://ehcache.org/ehcache.xsd
ehcache配置文件的根元素是ehcahe
ehcac
- java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderL
白糖_
javaeclipsespringtomcatWeb
今天学习spring+cxf的时候遇到一个问题:在web.xml中配置了spring的上下文监听器:
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
随后启动
- angular.element
boyitech
AngularJSAngularJS APIangular.element
angular.element
描述: 包裹着一部分DOM element或者是HTML字符串,把它作为一个jQuery元素来处理。(类似于jQuery的选择器啦) 如果jQuery被引入了,则angular.element就可以看作是jQuery选择器,选择的对象可以使用jQuery的函数;如果jQuery不可用,angular.e
- java-给定两个已排序序列,找出共同的元素。
bylijinnan
java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class CommonItemInTwoSortedArray {
/**
* 题目:给定两个已排序序列,找出共同的元素。
* 1.定义两个指针分别指向序列的开始。
* 如果指向的两个元素
- sftp 异常,有遇到的吗?求解
Chen.H
javajcraftauthjschjschexception
com.jcraft.jsch.JSchException: Auth cancel
at com.jcraft.jsch.Session.connect(Session.java:460)
at com.jcraft.jsch.Session.connect(Session.java:154)
at cn.vivame.util.ftp.SftpServerAccess.connec
- [生物智能与人工智能]神经元中的电化学结构代表什么?
comsci
人工智能
我这里做一个大胆的猜想,生物神经网络中的神经元中包含着一些化学和类似电路的结构,这些结构通常用来扮演类似我们在拓扑分析系统中的节点嵌入方程一样,使得我们的神经网络产生智能判断的能力,而这些嵌入到节点中的方程同时也扮演着"经验"的角色....
我们可以尝试一下...在某些神经
- 通过LAC和CID获取经纬度信息
dai_lm
laccid
方法1:
用浏览器打开http://www.minigps.net/cellsearch.html,然后输入lac和cid信息(mcc和mnc可以填0),如果数据正确就可以获得相应的经纬度
方法2:
发送HTTP请求到http://www.open-electronics.org/celltrack/cell.php?hex=0&lac=<lac>&cid=&
- JAVA的困难分析
datamachine
java
前段时间转了一篇SQL的文章(http://datamachine.iteye.com/blog/1971896),文章不复杂,但思想深刻,就顺便思考了一下java的不足,当砖头丢出来,希望引点和田玉。
-----------------------------------------------------------------------------------------
- 小学5年级英语单词背诵第二课
dcj3sjt126com
englishword
money 钱
paper 纸
speak 讲,说
tell 告诉
remember 记得,想起
knock 敲,击,打
question 问题
number 数字,号码
learn 学会,学习
street 街道
carry 搬运,携带
send 发送,邮寄,发射
must 必须
light 灯,光线,轻的
front
- linux下面没有tree命令
dcj3sjt126com
linux
centos p安装
yum -y install tree
mac os安装
brew install tree
首先来看tree的用法
tree 中文解释:tree
功能说明:以树状图列出目录的内容。
语 法:tree [-aACdDfFgilnNpqstux][-I <范本样式>][-P <范本样式
- Map迭代方式,Map迭代,Map循环
蕃薯耀
Map循环Map迭代Map迭代方式
Map迭代方式,Map迭代,Map循环
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 2015年
- Spring Cache注解+Redis
hanqunfeng
spring
Spring3.1 Cache注解
依赖jar包:
<!-- redis -->
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redis</artifactId>
- Guava中针对集合的 filter和过滤功能
jackyrong
filter
在guava库中,自带了过滤器(filter)的功能,可以用来对collection 进行过滤,先看例子:
@Test
public void whenFilterWithIterables_thenFiltered() {
List<String> names = Lists.newArrayList("John"
- 学习编程那点事
lampcy
编程androidPHPhtml5
一年前的夏天,我还在纠结要不要改行,要不要去学php?能学到真本事吗?改行能成功吗?太多的问题,我终于不顾一切,下定决心,辞去了工作,来到传说中的帝都。老师给的乘车方式还算有效,很顺利的就到了学校,赶巧了,正好学校搬到了新校区。先安顿了下来,过了个轻松的周末,第一次到帝都,逛逛吧!
接下来的周一,是我噩梦的开始,学习内容对我这个零基础的人来说,除了勉强完成老师布置的作业外,我已经没有时间和精力去
- 架构师之流处理---------bytebuffer的mark,limit和flip
nannan408
ByteBuffer
1.前言。
如题,limit其实就是可以读取的字节长度的意思,flip是清空的意思,mark是标记的意思 。
2.例子.
例子代码:
String str = "helloWorld";
ByteBuffer buff = ByteBuffer.wrap(str.getBytes());
Sy
- org.apache.el.parser.ParseException: Encountered " ":" ": "" at line 1, column 1
Everyday都不同
$转义el表达式
最近在做Highcharts的过程中,在写js时,出现了以下异常:
严重: Servlet.service() for servlet jsp threw exception
org.apache.el.parser.ParseException: Encountered " ":" ": "" at line 1,
- 用Java实现发送邮件到163
tntxia
java实现
/*
在java版经常看到有人问如何用javamail发送邮件?如何接收邮件?如何访问多个文件夹等。问题零散,而历史的回复早已经淹没在问题的海洋之中。
本人之前所做过一个java项目,其中包含有WebMail功能,当初为用java实现而对javamail摸索了一段时间,总算有点收获。看到论坛中的经常有此方面的问题,因此把我的一些经验帖出来,希望对大家有些帮助。
此篇仅介绍用
- 探索实体类存在的真正意义
java小叶檀
POJO
一. 实体类简述
实体类其实就是俗称的POJO,这种类一般不实现特殊框架下的接口,在程序中仅作为数据容器用来持久化存储数据用的
POJO(Plain Old Java Objects)简单的Java对象
它的一般格式就是
public class A{
private String id;
public Str