go-gorm / datatypes Goto Github PK
View Code? Open in Web Editor NEWGORM Customized Data Types Collection
Home Page: https://gorm.io/docs/data_types.html
License: MIT License
GORM Customized Data Types Collection
Home Page: https://gorm.io/docs/data_types.html
License: MIT License
can you make newest tag for latest PR, because JSONArrayQuery cannot be used
Please support also Sqlite. There is standard extension to support JSON.
We use Sqlite for unit tests, so it would be great if this could work there as well.
A license is required to participate in the open source software ecosystem. For example, most companies require an approved license for all dependencies and some tools (e.g. pkg.go.dev) won't work without one.
If one of my data models contains a JsonType, I cannot gob encode it because the JsonType's data is not exported.
I'm not sure.
A code solution that can solve the above problem.
An enum type that with automigration support in MySQL and Postgres.
At one point in time, GORM supported enum types that worked with automigrate
in Postgres, but since V2 that support appears to have been deprecated. Given that there is still a ton of documentation around that indicates that GORM supports enum types for Postgres, but all of it documents an approach that no longer works in V2, it seems like that is something that would appropriately handled here.
I am using GORM v2. I have a datatypes.JSON field in struct. I want to do a partial update on a key in jsonb field using GORM updates. Right now i pass map to GORM updates method to update the fields. But if i pass jsonb field, it gets replaced with new data. How can I partially update jsonb field?
type test struct {
name string
age int
address datatypes.JSON
}
I am doing update using the following, where 'profile' is a map[string]interface{}.
db.Where("name = ?", "abc").Updates(profile).Error()
Assuming address has pincode, city, country field populated. Suppose I want to just update the city field in the address JSONB, I build profile(map[string]interface{}) like shown below
address: {
"city": "NewCity"
}
It replaces the entire address field with the above data rather than just updating the city.
I need to be able to update only city field in json; pincode and country should remain the same. How can I do that?
哪一个 tag 可以找到其定义?
Is there a way to build an SQL query that searches multiple-values (not multiple keys) in a JSON array?
SELECT * FROM table WHERE JSON_CONTAINS(obj->'$.array_of_ints', [1,2,3]);
for: { "obj": {"array_of_ints":[1,2,3,4]} } the result will be TRUE.
Or:
SELECT * FROM table WHERE JSON_CONTAINS(obj->'$.array_of_ints', 2);
for: { "obj":{"array_of_ints":[1,2,3,4]} } the result will be TRUE.
https://gorm.io/docs/data_types.html
Would like to know the methods to generate a JSON_CONTAINS SQL query using SQLBuilder
Sqlite3 has the following vulnerability up to version 3.43.0: CVE-2023-7104.
Should the go-sqlite3 dependency be updated to version 1.14.18, that seems to fix the issue?
Thanks
Mauro
In the documentation it talks about how to go from time.Time to datatypes.Date() - insert a time into database.
Reference:
https://github.com/go-gorm/datatypes/
https://github.com/go-gorm/datatypes/blob/master/date.go
But to retrieve a date from the database and convert to time.Time, I searched quite a lot and tried different methods to go from datatypes.Date() to time.Time.
I got this to work but I'm sure its probably not the best method.
x, _ := dbrecord.Date.MarshalJSON()
bDate, _ := time.Parse(time.RFC3339, strings.Trim(string(x), "\""))
https://github.com/go-gorm/datatypes/
It would be good to have best practice in the readme on how to do this.
DB.Create(&User{
Name: "json-1",
Attributes: datatypes.JSON([]byte({"name": "jinzhu", "age": 18, "tags": ["tag1", "tag2"], "orgs": {"orga": "orga"}}
)),
}
查询tags里,是否有tag1,怎么做呢?谢谢!
支持JSON_REMOVE删除某个key
业务还是需要用到的
It would be nice to have a custom data type for database clock time type like hh:mm:ss
format.
Many databases such as MySQL, PostgreSQL and SQLServer have Time
column type, so it is useful to have support for time
type in many use cases.
It takes some time and effort to handle database time.
If we use time.Time
for handling database time, we will get the following error:
unsupported Scan, storing driver.Value type []uint8 into type *time.Time
Therefore, developers have to define their own type for database time type.
Print before deposit:
{"type":"object","labelWidth":120,"displayType":"row","properties":{"b":{"title":"b","type":"array","widget":"multiSelect","description":"","required":true,"disabled":false,"readOnly":false,"items":{"type":"string"},"enum":[""'dev-01'"",""'dev-02'"",""'dev-03'""],"enumNames":["dev-01","dev-02","dev-03"],"props":{"showSearch":true,"filterOption":true,"optionFilterProp":"label"}},"a":{"title":"a","type":"string","widget":"select","description":"","required":false,"disabled":false,"readOnly":false,"api":"staff","enum":["a","b","c"],"enumNames":["早","中","晚"],"props":{"showSearch":true,"filterOption":true,"optionFilterProp":"label"}},"c":{"title":"ceshi","type":"string","widget":"select","required":false,"disabled":false,"readOnly":false,"api":"hostname","props":{"showSearch":true,"filterOption":true,"optionFilterProp":"label"}}}}
After inserting into the database:
{"type": "object", "labelWidth": 120, "properties": {"a": {"api": "staff", "enum": ["a", "b", "c"], "type": "string", "props": {"showSearch": true, "filterOption": true, "optionFilterProp": "label"}, "title": "a", "widget": "select", "disabled": false, "readOnly": false, "required": false, "enumNames": ["早", "中", "晚"], "description": ""}, "b": {"enum": [""'dev-01'"", ""'dev-02'"", ""'dev-03'""], "type": "array", "items": {"type": "string"}, "props": {"showSearch": true, "filterOption": true, "optionFilterProp": "label"}, "title": "b", "widget": "multiSelect", "disabled": false, "readOnly": false, "required": true, "enumNames": ["dev-01", "dev-02", "dev-03"], "description": ""}, "c": {"api": "hostname", "type": "string", "props": {"showSearch": true, "filterOption": true, "optionFilterProp": "label"}, "title": "ceshi", "widget": "select", "disabled": false, "readOnly": false, "required": false}}, "displayType": "row"}
It looks like gorm made changes to the data structure before storing it in the database
I'm developing a project with Gorm using PostgreDB. I saw recentily that MySQL is imported and I would like to exclude from my project. Is it possible?
What I want is to exclude MySQL and Other Database drivers from importing. Like:
exclude (
gorm.io/driver/mysql v1.2.2 // indirect
gorm.io/driver/mysql v1.3.2 // indirect
gorm.io/driver/sqlite v1.3.6 // indirect
gorm.io/driver/sqlserver v1.3.2 // indirect
gorm.io/driver/mysql v1.3.6 // indirect
)
But everything I exclude, another driver appears in another version!
How can I do to exclude those packages I'm not using.
type (
User struct {
Name string `json:"name"`
Age int `json:"age"`
}
TestTable struct {
ID uint64
Data datatypes.JSONType[*User]
}
)
func (*TestTable) TableName() string {
return "test_table"
}
db.Create(&TestTable{Data: datatypes.JSONType[*User]{Data: &User{Name: "name", Age: 18}}})
row := &datatypes.JSONType[*User]{}
db.Limit(1).Order("id DESC").Pluck("data", row)
// output
// invalid field found for struct gorm.io/datatypes.JSONType[*main.User]'s field Data: define a valid foreign key for relations or implement the Valuer/Scanner interface
fmt.Println(row.Data)
row := &TestTable{}
db.Limit(1).Order("id DESC").Find(row)
fmt.Println(row.Data.Data)
// ok
How we can application IN statement that in SQL with JSON query?
If I have a people table, and it has a column of JSON data type, and this column contains a key with the title age representing the age of the person, like
{
"age": 24
}
How can I get people within a range of ages? i.e. how to apply IN
that in SQL to a JSON stored in the database?
Fetching JSON slice corrupts previously fetched JSON. Happens in MySQL but not in sqlite.
This error doesn't happen on gorm.io/datatypes v1.0.6 but does happen after this commit:
go get gorm.io/datatypes@c244d2875ae06d92f7f0765444f297b8aced0a08
sqlite (pass test)
main_test.go:74: received slice: [{1 Test1 {"val1": 987654, "val2": "abcdefghijklmnopqrstuvwxyz"}} {2 TEST_JSON {"param1": 1234, "param2": "test"}}]
main_test.go:75: got previously #1: {2 TEST_JSON {"param1": 1234, "param2": "test"}}
main_test.go:76: got previously #2: {2 TEST_JSON {"param1": 1234, "param2": "test"}}
--- PASS: TestGORM (0.02s)
PASS
ok gorm.io/playground 1.323s
testing mysql...
2022/06/06 17:53:07 testing mysql...
=== RUN TestGORM
MySQL (fail test)
main_test.go:74: received slice: [{1 Test1 {"val1": 987654, "val2": "abcdefghijklmnopqrstuvwxyz"}} {2 TEST_JSON {"param1": 1234, "param2": "test"}}]
main_test.go:75: got previously #1: {2 TEST_JSON 1": 987654, "val2": "abcdefghijklm}
main_test.go:76: got previously #2: {2 TEST_JSON {"param1": 1234, "param2": "test"}}
main_test.go:83: the received value is not equal to the expected value #1. Received: {2 TEST_JSON 1": 987654, "val2": "abcdefghijklm}, expected: {2 TEST_JSON {"param1": 12
34, "param2": "test"}}
--- FAIL: TestGORM (0.07s)
FAIL
FAIL gorm.io/playground 1.065s
FAIL
Add support for PostgreSQL HStore data type
Gorm v1 has support for HStore, not possible for us to migrate to v2 without this.
When Date::Value is called it incorrectly sets the time. Note that it sets 0 for values such as hour, minute, etc... This leads to incorrect values being stored in the database.
For example here is the result of running time.Now().Add(<time duration>)
:
2021-03-04 11:02:03.392804646 +0000 UTC
But the same value returned from the database using datatypes.Date
is:
2021-03-04 08:00:00 +0000
This basically makes the Date
type completely useless
Describe the feature
The feature request is to add support for interval types in GORM, a popular ORM library for Go. This includes the ability to define, query, and manipulate interval data types directly within GORM models. Interval types are commonly used in databases to represent periods of time, and supporting them natively in GORM would enhance its functionality for time-based data handling.
Motivation
The motivation behind this feature is to provide a more comprehensive and efficient way to handle time intervals within GORM. Many applications, especially those involving scheduling, event management, or time-series data, require the use of interval types. By integrating support for interval types directly into GORM, developers can streamline their code, reduce the need for custom solutions, and improve the overall performance and reliability of their applications.
Below I share an example that can be integrated
package types
import (
"database/sql/driver"
"errors"
"fmt"
"strconv"
"strings"
"time"
)
// TimeInterval Holds duration/interval information received from PostgreSQL,
// supports each format except verbose. JSON marshals to a clock format "HH:MM:SS".
// Uses a Valid property so it can be nullable
type TimeInterval struct {
Valid bool
Years uint16
Months uint8
Days uint8
Hours uint8
Minutes uint8
Seconds uint8
}
// Value Implements driver.Value
func (t TimeInterval) Value() (driver.Value, error) {
return fmt.Sprintf("P%dY%dM%dDT%02dH%02dM%02dS", t.Years, t.Months, t.Days, t.Hours, t.Minutes, t.Seconds), nil
}
// Scan Implements sql.Scanner
func (t *TimeInterval) Scan(src interface{}) error {
bytes, ok := src.([]byte)
if !ok {
if srcStr, ok := src.(string); ok {
bytes = []byte(srcStr)
} else {
//Probably nil
t.Valid = false
t.Years = 0
t.Months = 0
t.Days = 0
t.Hours = 0
t.Minutes = 0
t.Seconds = 0
return nil
}
}
str := strings.ToUpper(string(bytes))
if len(str) == 0 {
return errors.New("received bytes for TimeInterval but string ended up empty")
}
if str[0] != 'P' {
return errors.New("invalid ISO 8601 format")
}
datePortion := str[1:strings.Index(str, "T")]
timePortion := str[strings.Index(str, "T")+1:]
// Parse date portion
for _, part := range strings.Split(datePortion, "") {
if len(part) > 0 {
value, err := strconv.ParseUint(part[:len(part)-1], 10, 32)
if err != nil {
return err
}
switch part[len(part)-1] {
case 'Y':
t.Years = uint16(value)
case 'M':
t.Months = uint8(value)
case 'D':
t.Days = uint8(value)
}
}
}
// Parse time portion
for _, part := range strings.Split(timePortion, "") {
if len(part) > 0 {
value, err := strconv.ParseUint(part[:len(part)-1], 10, 32)
if err != nil {
return err
}
switch part[len(part)-1] {
case 'H':
t.Hours = uint8(value)
case 'M':
t.Minutes = uint8(value)
case 'S':
t.Seconds = uint8(value)
}
}
}
t.Valid = true
return nil
}
// MarshalJSON Marshals JSON
func (t TimeInterval) MarshalJSON() ([]byte, error) {
if t.Valid {
return []byte(fmt.Sprintf("\"P%dY%dM%dDT%02dH%02dM%02dS\"", t.Years, t.Months, t.Days, t.Hours, t.Minutes, t.Seconds)), nil
}
return []byte("null"), nil
}
// ToSeconds Returns the culminative seconds of this interval
func (t TimeInterval) ToSeconds() uint {
return uint(t.Years*365*24*60*60) + uint(t.Months*30*24*60*60) + uint(t.Days*24*60*60) + uint(t.Hours*60*60) + uint(t.Minutes*60) + uint(t.Seconds)
}
// UnmarshalJSON Implements JSON marshalling
func (t *TimeInterval) UnmarshalJSON(data []byte) error {
str := string(data)
if str[0] != '"' {
if str == "null" {
t.Valid = false
return nil
}
return fmt.Errorf("expected TimeInterval to be a string, received %s instead", str)
}
str = str[1 : len(str)-1]
if len(str) == 0 {
t.Years = 0
t.Months = 0
t.Days = 0
t.Hours = 0
t.Minutes = 0
t.Seconds = 0
t.Valid = false
return nil
}
if str[0] != 'P' {
return errors.New("invalid ISO 8601 format")
}
datePortion := str[1:strings.Index(str, "T")]
timePortion := str[strings.Index(str, "T")+1:]
// Parse date portion
for _, part := range strings.Split(datePortion, "") {
if len(part) > 0 {
value, err := strconv.ParseUint(part[:len(part)-1], 10, 32)
if err != nil {
return err
}
switch part[len(part)-1] {
case 'Y':
t.Years = uint16(value)
case 'M':
t.Months = uint8(value)
case 'D':
t.Days = uint8(value)
}
}
}
// Parse time portion
for _, part := range strings.Split(timePortion, "") {
if len(part) > 0 {
value, err := strconv.ParseUint(part[:len(part)-1], 10, 32)
if err != nil {
return err
}
switch part[len(part)-1] {
case 'H':
t.Hours = uint8(value)
case 'M':
t.Minutes = uint8(value)
case 'S':
t.Seconds = uint8(value)
}
}
}
t.Valid = true
return nil
}
// NewTimeIntervalFromDuration Converts a duration, into a TimeInterval object
func NewTimeIntervalFromDuration(d time.Duration) TimeInterval {
hrs := uint8(d.Hours() / 24)
mins := uint8((d.Hours() - float64(hrs*24)) * 60)
secs := uint8((d.Minutes() - float64(mins*60)) * 60)
return TimeInterval{
Valid: true,
Years: 0,
Months: 0,
Days: hrs,
Hours: mins,
Minutes: secs,
Seconds: uint8(d.Seconds() - float64(secs*60)),
}
}
It would be nice to have an abillity to filter by the values of the json, and not just check their key presence
Something like
datatypes.JSONContains("json_column").Path("$.labels.my_label").Value("my_value")
Which would be SQL in MySQL
SELECT * FROM my_table WHERE JSON_CONTAINS("json_column", '"my_value', "$.labels.my_label")
Not sure how it would be in Postgres
As we might want to give users ability to filter based on specific json values from a set of attributes
type Rule struct {
ID uint64 gorm:"column:id" db:"id"
Content datatypes.JSONSlice[Tag] gorm:"column:content" type:"json"
Version int64 gorm:"column:version" db:"version"
// 版本号,时间戳毫秒
CreatedAt time.Time gorm:"column:created_at" db:"created_at"
UpdatedAt time.Time gorm:"column:updated_at" db:"updated_at"
DeletedAt gorm.DeletedAt gorm:"column:deleted_at" db:"deleted_at"
}
JSONSlice is error
This PR: Support JSON_SET. #156
is already merged. So are there any plans to release a new version?
With https://github.com/go-gorm/[email protected] JSON values have unexpected behaviours when nil or empty.
If the datatypes.JSON var is nil
, GORM will now insert a string "null"
into the database instead of an actual null
value.
If the datatypes.JSON var is empty (empty byte array) GORM tries to insert an empty string ""
, which fails.
Rather than using time.Time
for sql date fields, shouldn't we rather use civil.Date
from https://pkg.go.dev/cloud.google.com/go/civil. This latter type seems to be the standard way to handle dates in go.
If one uses time.Time to represent dates, the time part is set to all 0's. If the end user isn't aware that the time part should be ignored, this can cause confusion, and even create errors if it's interpreted in a GMT+ve timezone.
I tried defining a custom struct that uses civil.Date fields, and scanning the database result into this struct. This resulted in a date with value 0000-00-00
.
The array query function datatypes.JSONArrayQuery appears in the README, but I can't find it's definition in source codes and can't be used? Why?
数组查找函数 JSONArrayQuery 出现在 README 中,但是我在源代码中没有找到对应的定义,且无法使用,这是为什么?
How can I use JSONSlice for JSON[] fields with gorm, I have used the library but getting an error while inserting the data. The Table model struct is attached below.
https://go.dev/play/p/aEEKW7fUa72
I am getting issue when the arrays are empty in the database layer.
UTC [268] ERROR: malformed array literal: "null"
postgres-1 | 2024-08-06 15:18:34.167 UTC [268] DETAIL: Array value must start with "{" or dimension information.
func (j RawJson) Value() (driver.Value, error) {
if len(j) == 0 || string(j) == "null" {
return nil, nil
}
bytes, err := j.MarshalJSON()
return string(bytes), err
}
数据是这样的
["330100", "330200", "330300", "330400", "330500", "330600", "330700", "330800", "330900", "331000", "331100"]
db.Table("table_name").Where(datatypes.JSONQuery("area_code").HasKey("330100")).Find(&rows)
错误:
Invalid JSON path expression. The error is around character position 8.
It would be nice to have an ability to change some port of the json, just like the original features "json_set/jsonreplace/jsoninsert/jsonremove" do in mysql.
Something like
datatypes.JSONSet("json_column").Path("$.labels.my_label", "$.labels.my_label1").Value("my_value", "my_value1")
Which would be SQL in MySQL
UPDATE mytable SET json_column = json_set(json_column, '$.labels.my_label', 'my_value', '$.labels.my_label1','my_value1');
It would be good to have something like this.
DB.First(&user, datatypes.JSONQuery("attributes").Lesser("age", 35))
// MySQL
// SELECT * FROM `user` WHERE JSON_EXTRACT(`attributes`, '$.age') < 35
DB.First(&user, datatypes.JSONQuery("attributes").Greater("age", 35))
// MySQL
// SELECT * FROM `user` WHERE JSON_EXTRACT(`attributes`, '$.age') > 35
Of course, we will need these as well.
DB.First(&user, datatypes.JSONQuery("attributes").NotLesser("age", 35))
// MySQL
// SELECT * FROM `user` WHERE JSON_EXTRACT(`attributes`, '$.age') >= 35
DB.First(&user, datatypes.JSONQuery("attributes").NotGreater("age", 35))
// MySQL
// SELECT * FROM `user` WHERE JSON_EXTRACT(`attributes`, '$.age') <= 35
Finally,
DB.First(&user, datatypes.JSONQuery("attributes").NotEquals("age", 35))
// MySQL
// SELECT * FROM `user` WHERE JSON_EXTRACT(`attributes`, '$.age') >< 35
为啥v.1.0.7没有JsonSet功能,v1.1.0直接是go1.18了,请问有非范型版本的JsonSet吗?
我尝试着复制JSONQuery代码自己修改NotEquals,发现gorm框架里面有各种各样的类型限制,导致我没法直接设计自己的NotEquals
所以希望架构能支持JSONQuery.NotEquals, 或者说至少支持我自定义实现JSONQuery等部类型的相关Condition接口
func exprToCondition(exprs ...clause.Expression) []Condition {
conds := make([]Condition, 0, len(exprs))
for _, e := range exprs {
switch e := e.(type) {
case *datatypes.JSONQueryExpression, *datatypes.JSONOverlapsExpression:
conds = append(conds, &condContainer{value: e})
default:
conds = append(conds, &condContainer{err: fmt.Errorf("unsupported Expression %T to converted to Condition", e)})
}
}
return conds
}
func condToExpression(conds []Condition) ([]clause.Expression, error) {
if len(conds) == 0 {
return nil, nil
}
exprs := make([]clause.Expression, 0, len(conds))
for _, cond := range conds {
if cond == nil {
continue
}
if err := cond.CondError(); err != nil {
return nil, err
}
switch cond.(type) {
case *condContainer, field.Expr, SubQuery:
default:
return nil, fmt.Errorf("unsupported condition: %+v", cond)
}
switch e := cond.BeCond().(type) {
case []clause.Expression:
exprs = append(exprs, e...)
case clause.Expression:
exprs = append(exprs, e)
}
}
return exprs, nil
}
In the following code, if you delete StatusEnum.String
, the generate sql will be status="1"
instead of status=1
.
What happened?
package db_test
import (
"testing"
"gorm.io/driver/sqlite"
"gorm.io/gorm"
)
type StatusEnum int64
const (
StatusEnumEnable StatusEnum = iota
StatusEnumDisable
)
var StatusEnumMap = map[StatusEnum]string{
StatusEnumEnable: "Enable",
StatusEnumDisable: "Disable",
}
func (e StatusEnum) String() string {
if v, ok := StatusEnumMap[e]; ok {
return v
}
return "unknown"
}
type module struct {
Status StatusEnum
}
func TestEnum(t *testing.T) {
db, _ := gorm.Open(sqlite.Open(":memory:"))
db.AutoMigrate(&module{})
db.Model(&module{}).Create(&module{Status: StatusEnumDisable})
var out *module
// SELECT * FROM `modules` WHERE status=1 ORDER BY `modules`.`status` LIMIT 1
db.Debug().Model(&module{}).Where("status=?", StatusEnumDisable).First(&out)
t.Log(out)
t.Logf("status value: %d, status string: %s", out.Status, out.Status)
}
Need support json_each query like
select * from json_test_table, json_each(json_test_table.content) where json_each.value = 3;
it will match result with :
[
{
"id": 2,
"content": "[4, 3, 9, 168, 17173]",
"key": 1,
"value": 3,
"type": "integer",
"atom": 3,
"parent": null,
"fullkey": "$[1]",
"path": "$"
}
]
json column insert table cause truncation
test: mysql 8.0.29
CREATE TABLE insp_details
(
id
bigint unsigned NOT NULL AUTO_INCREMENT COMMENT 'ID',
result
json NOT NULL COMMENT 'result'
PRIMARY KEY (id
)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
INSERT INTO insp_details
(result
)
VALUES (CAST('[{"metric":{"job":"node","mode":"idle","group":"production","instance":"mysql.sqlpub.com:9100"},"values":[[1658332800,"18.733333333705858"],[1658332860,"8.36666666747381"],[1658332920,"8.36666666747381"],[1658332980,"8.099999999006592"],[1658333040,"7.9333333314085985"],[1658333100,"7.966666667101285"],[1658333160,"10.866666667473822"],[1658333220,"10.133333333457518"],[1658333280,"9.700000000496711"],[1658333340,"9.666666664804024"],[1658333400,"10.233333332774542"],[1658333460,"10.366666667784251"],[1658333520,"10.766666665052371"],[1658333580,"10.066666665176548"],[1658333640,"10.366666667784251"],[1658333700,"10.133333333457518"],[1658333760,"10.566666666418312"],[1658333820,"11.266666666294146"],[1658333880,"10.766666665052371"],[1658333940,"10.36666666623205"],[1658334000,"10.63333333469927"],[1658334060,"12.133333333767949"],[1658334120,"17.73333333432674"],[1658334180,"10.633333331594862"],[1658334240,"10.566666666418312"],[1658334300,"10.333333333643768"],[1658334360,"10.766666666604575"],[1658334420,"10.099999999317033"],[1658334480,"10.266666666915025"],[1658334540,"10.69999999987582"],[1658334600,"10.133333333457518"],[1658334660,"10.933333334202565"],[1658334720,"11.788238433467502"],[1658334780,"10.966666666790847"],[1658334840,"10.66666666728755"],[1658334900,"10.015336401420761"],[1658334960,"10.433333332960803"],[1658335020,"10.266666666915025"],[1658335080,"10.766666666604575"],[1658335140,"9.93333333171904"],[1658335200,"9.766666667225465"],[1658335260,"9.100000001490116"],[1658335320,"11.233333333705865"],[1658335380,"10.533333333830042"],[1658335440,"9.56666666548699"],[1658335500,"10.433333332960803"],[1658335560,"10.766666666604575"],[1658335620,"10.566666666418323"],[1658335680,"10.799999999192856"],[1658335740,"10.533333333830042"],[1658335800,"10.699999999875832"],[1658335860,"11.83333333271246"],[1658335920,"11.833333334264662"],[1658335980,"10.733333334016304"],[1658336040,"9.20000000080714"],[1658336100,"10.699999999875832"],[1658336160,"10.133333333457518"],[1658336220,"10.36666666623205"],[1658336280,"8.899999999751651"],[1658336340,"10.266666666915025"],[1658336400,"9.89999999913076"],[1658336460,"10.83333333333334"],[1658336520,"10.66666666728755"],[1658336580,"10.200000000186261"],[1658336640,"10.36666666623205"],[1658336700,"6.666666666666665"],[1658336760,"6.500000000620876"],[1658336820,"6.566666667349641"],[1658336880,"7.100000001179674"],[1658336940,"6.866666666852939"],[1658337000,"7.29999999826153"],[1658337060,"7.033333334450919"],[1658337120,"7.166666666356225"],[1658337180,"6.933333332029479"],[1658337240,"7.466666665859522"],[1658337300,"7.00000000186265"],[1658337360,"6.833333334264657"],[1658337420,"6.466666668032605"],[1658337480,"6.920922789953677"],[1658337540,"8.966666666480405"],[1658337600,"7.033333334450919"],[1658337660,"7.900000000372531"],[1658337720,"8.59999999869615"],[1658337780,"5.799999999192851"],[1658337840,"6.233333332153657"],[1658337900,"6.599999999937922"],[1658337960,"6.800000001676376"],[1658338020,"6.466666666480403"],[1658338080,"6.333333334575098"],[1658338140,"6.733333331843216"],[1658338200,"6.399999999751649"],[1658338260,"6.700000000807149"],[1658338320,"7.3666666649902846"],[1658338380,"6.933333333581682"],[1658338440,"6.966666666169963"],[1658338500,"6.566666665797438"],[1658338560,"7.36666666809469"],[1658338620,"6.499999999068673"],[1658338680,"6.700000000807149"],[1658338740,"6.899999999441208"],[1658338800,"6.766666667535903"],[1658338860,"6.566666665797438"],[1658338920,"7.099999999627471"],[1658338980,"6.900000000993412"],[1658339040,"6.43333333233993"],[1658339100,"6.966666666169963"],[1658339160,"6.73333333339542"],[1658339220,"7.166666666356225"],[1658339280,"6.899999999441198"],[1658339340,"6.833333332712455"],[1658339400,"6.633333332526181"],[1658339460,"8.233333332464099"],[1658339520,"9.39999999944121"],[1658339580,"8.400000000062091"],[1658339640,"6.899999999441198"],[1658339700,"7.499999998447793"],[1658339760,"7.06666666703919"],[1658339820,"6.933333335133884"],[1658339880,"7.033333332898717"],[1658339940,"7.166666666356225"],[1658340000,"6.599999999937911"],[1658340060,"10.066666666728752"],[1658340120,"7.966666667101285"],[1658340180,"7.466666667411726"],[1658340240,"7.333333333954206"],[1658340300,"7.200000000496698"],[1658340360,"7.466666667411714"],[1658340420,"7.578989468133002"],[1658340480,"7.466666667411726"],[1658340540,"8.133333334699277"],[1658340600,"6.833333332712455"],[1658340660,"7.53333333414048"],[1658340720,"7.833333332091574"],[1658340780,"7.666666666045785"],[1658340840,"7.400000000682971"],[1658340900,"7.633333333457504"],[1658340960,"7.233333333084979"],[1658341020,"7.200000000496698"],[1658341080,"6.766666665983689"],[1658341140,"6.933333333581682"],[1658341200,"6.633333334078384"],[1658341260,"8.600000000248354"],[1658341320,"8.93333333233992"],[1658341380,"6.6333333340783955"],[1658341440,"6.566666667349641"],[1658341500,"6.833333334264657"],[1658341560,"6.500000000620876"],[1658341620,"6.733333334947633"],[1658341680,"6.233333333705859"],[1658341740,"6.666666666666665"],[1658341800,"6.533333333209157"],[1658341860,"7.366666666542487"],[1658341920,"7.433333333271253"],[1658341980,"6.545478759380874"],[1658342040,"6.50000000217309"],[1658342100,"6.700000000807149"],[1658342160,"6.499999999068673"],[1658342220,"6.666666666666665"],[1658342280,"6.566666665797438"],[1658342340,"6.466666666480403"],[1658342400,"6.433333333892133"],[1658342460,"6.533333331656954"],[1658342520,"7.033333332898717"],[1658342580,"6.600000001490114"],[1658342640,"7.233333333084979"],[1658342700,"6.566666667349641"],[1658342760,"6.833333334264657"],[1658342820,"6.433333333892133"],[1658342880,"6.833333332712455"],[1658342940,"6.866666666852939"],[1658343000,"6.566666667349641"],[1658343060,"8.500000000931319"],[1658343120,"8.2333333340163"],[1658343180,"6.833333332712455"],[1658343240,"6.566666665797438"],[1658343300,"6.400000001303852"],[1658343360,"6.233333332153657"],[1658343420,"6.900000000993412"],[1658343480,"7.666666666045785"],[1658343540,"6.766666665983689"],[1658343600,"6.266666666294141"],[1658343660,"7.299999999813734"],[1658343720,"8.400000000062091"],[1658343780,"7.600000000869233"],[1658343840,"7.233333334637182"],[1658343900,"6.999999998758244"],[1658343960,"7.199999998944495"],[1658344020,"7.166666666356225"],[1658344080,"7.000000000310447"],[1658344140,"7.199999998944495"],[1658344200,"7.166666667908428"],[1658344260,"6.933333333581682"],[1658344320,"7.800000001055496"],[1658344380,"7.266666667225463"],[1658344440,"7.099999998075268"],[1658344500,"6.766666667535903"],[1658344560,"7.2000000004967095"],[1658344620,"6.700000000807149"],[1658344680,"6.751982936808054"],[1658344740,"6.766666665983701"],[1658344800,"6.300000000434625"],[1658344860,"8.800000000434615"],[1658344920,"9.800000001365937"],[1658344980,"6.766666665983689"],[1658345040,"6.700000000807149"],[1658345100,"6.699999999254946"],[1658345160,"6.5666666657974275"],[1658345220,"6.600000001490125"],[1658345280,"6.800000000124173"],[1658345340,"6.566666665797438"],[1658345400,"6.666666666666665"],[1658345460,"6.699999999254946"],[1658345520,"7.79999999795109"],[1658345580,"6.666666666666665"],[1658345640,"6.633333334078384"],[1658345700,"6.933333333581682"],[1658345760,"7.033333332898706"],[1658345820,"6.833333332712455"],[1658345880,"6.766666664431487"],[1658345940,"6.899999999441208"],[1658346000,"6.933333332029479"],[1658346060,"7.433333331719039"],[1658346120,"7.566666666728761"],[1658346180,"6.73333333339542"],[1658346240,"7.100000001179674"],[1658346300,"6.433333333892133"],[1658346360,"6.999999998758232"],[1658346420,"6.466666666480392"],[1658346480,"6.833333334264657"],[1658346540,"6.699999999254946"],[1658346600,"6.366666665611165"],[1658346660,"8.733333333705861"],[1658346720,"8.300000000745056"],[1658346780,"6.566666667349641"],[1658346840,"6.666666666666665"],[1658346900,"6.533333333209157"],[1658346960,"6.433333333892133"],[1658347020,"6.333333334575098"],[1658347080,"6.533333333209157"],[1658347140,"6.700000000807149"],[1658347200,"6.566666668901844"],[1658347260,"7.200000002048911"],[1658347320,"7.100000001179674"],[1658347380,"7.033333332898717"],[1658347440,"7.112385014958811"],[1658347500,"7.799999999503293"],[1658347560,"7.266666667225463"],[1658347620,"7.033333334450919"],[1658347680,"6.966666666169963"],[1658347740,"7.633333331905301"],[1658347800,"6.866666666852939"],[1658347860,"7.233333333084979"],[1658347920,"8.199999999875818"],[1658347980,"7.266666667225463"],[1658348040,"7.000000000310447"],[1658348100,"7.233333334637182"],[1658348160,"6.666666666666665"],[1658348220,"6.666666666666665"],[1658348280,"7.099999999627471"],[1658348340,"6.73333333339543"],[1658348400,"6.73333333339543"],[1658348460,"8.866666665611167"],[1658348520,"9.033333334761352"],[1658348580,"6.633333334078384"],[1658348640,"6.599999999937911"],[1658348700,"6.333333333022884"],[1658348760,"6.399999999751649"],[1658348820,"6.300000000434613"],[1658348880,"6.633333334078384"],[1658348940,"6.833333334264657"],[1658349000,"6.833333334264657"],[1658349060,"7.333333332402003"],[1658349120,"11.53333333320916"],[1658349180,"6.466666666480392"],[1658349240,"6.500000000620876"],[1658349300,"6.533333331656954"],[1658349360,"6.466666666480392"],[1658349420,"6.699999999254946"],[1658349480,"6.699999999254946"],[1658349540,"6.500000000620876"],[1658349600,"6.299999998882411"],[1658349660,"6.73333333339543"],[1658349720,"7.166666666356225"],[1658349780,"6.799999998571971"],[1658349840,"7.233333334637182"],[1658349900,"6.433333333892133"],[1658349960,"6.599999999937922"],[1658350020,"6.666666666666665"],[1658350080,"6.700000000807149"],[1658350140,"6.433333335444336"],[1658350200,"6.566666667349641"],[1658350260,"8.400000000062091"],[1658350320,"8.933333333892124"],[1658350380,"6.666666666666665"],[1658350440,"6.566666665797438"],[1658350500,"6.499999999068673"],[1658350560,"6.566666667349641"],[1658350620,"6.000000000931327"],[1658350680,"5.333333333643775"],[1658350740,"4.833333333954215"],[1658350800,"4.966666668963926"],[1658350860,"5.733333332464108"],[1658350920,"12.733333334326735"],[1658350980,"7.033333334450919"],[1658351040,"5.366666666232045"],[1658351100,"5.466666667101294"],[1658351160,"5.333333332091572"],[1658351220,"5.566666666418318"],[1658351280,"5.299999999503302"],[1658351340,"5.300000001055505"],[1658351400,"5.733333334016311"],[1658351460,"5.766666668156784"],[1658351520,"5.933333332650359"],[1658351580,"5.300000001055505"],[1658351640,"5.666666667287545"],[1658351700,"4.900000000682969"],[1658351760,"4.799999999813731"],[1658351820,"5.266666665362818"],[1658351880,"4.866666668094699"],[1658351940,"5.066666666728747"],[1658352000,"4.900000000682969"],[1658352060,"6.633333332526181"],[1658352120,"6.73333333339543"],[1658352180,"5.033333332588274"],[1658352240,"4.633333332215739"],[1658352300,"4.966666667411723"],[1658352360,"5.0333333341404884"],[1658352420,"4.766666667225461"],[1658352480,"4.933333334823442"],[1658352540,"4.933333333271239"],[1658352600,"4.733333331532775"],[1658352660,"5.399999998820326"],[1658352720,"6.233333333705859"],[1658352780,"5.200000000186256"],[1658352840,"4.933333333271239"],[1658352900,"4.933333331719036"],[1658352960,"4.700000000496707"],[1658353020,"4.866666666542496"],[1658353080,"5.033333332588274"],[1658353140,"4.733333333084988"],[1658353200,"5.066666666728747"],[1658353260,"4.866666666542496"],[1658353320,"5.833333333333335"],[1658353380,"4.966666667411723"],[1658353440,"4.799999999813731"],[1658353500,"4.900000000682969"],[1658353560,"4.733333334637191"],[1658353620,"5.166666667597985"],[1658353680,"4.666666666356223"],[1658353740,"5.099999997764826"],[1658353800,"4.900000000682969"],[1658353860,"6.800000000124173"],[1658353920,"6.400000001303852"],[1658353980,"5.0333333341404884"],[1658354040,"4.899999999130767"],[1658354100,"5.066666666728747"],[1658354160,"4.933333333271239"],[1658354220,"5.366666666232045"],[1658354280,"5.233333332774537"],[1658354340,"4.966666667411723"],[1658354400,"4.96666666585952"],[1658354460,"5.499999999689553"],[1658354520,"6.500000000620876"],[1658354580,"5.600000002111005"],[1658354640,"5.400000000372529"],[1658354700,"5.266666666915021"],[1658354760,"5.366666666232045"],[1658354820,"5.466666667101283"],[1658354880,"5.166666666045783"],[1658354940,"5.400000000372529"],[1658355000,"5.466666667101283"],[1658355060,"5.366666667784248"],[1658355120,"6.166666666977116"],[1658355180,"5.766666668156784"],[1658355240,"5.433333334513013"],[1658355300,"5.000000000000004"],[1658355360,"5.000000000000004"],[1658355420,"4.866666666542496"],[1658355480,"5.200000000186256"],[1658355540,"5.233333332774537"],[1658355600,"4.96666666585952"],[1658355660,"6.633333332526181"],[1658355720,"7.033333332898717"],[1658355780,"5.133333333457513"],[1658355840,"5.033333332588274"],[1658355900,"5.233333332774537"],[1658355960,"4.933333333271239"],[1658356020,"5.200000000186266"],[1658356080,"5.233333332774537"],[1658356140,"5.210901580193905"],[1658356200,"5.266666666915021"],[1658356260,"5.066666666728747"],[1658356320,"5.499999999689553"],[1658356380,"5.033333332588274"],[1658356440,"4.96666666585952"],[1658356500,"5.266666666915021"],[1658356560,"4.800000001365934"],[1658356620,"5.166666666045794"],[1658356680,"5.599999999006588"],[1658356740,"5.23333333432674"],[1658356800,"5.266666666915021"],[1658356860,"5.399999998820326"],[1658356920,"5.966666666790843"],[1658356980,"4.933333333271239"],[1658357040,"5.133333333457513"],[1658357100,"5.066666666728747"],[1658357160,"5.100000000869231"],[1658357220,"5.000000000000004"],[1658357280,"4.96666666585952"],[1658357340,"4.933333333271239"],[1658357400,"5.1333333350097154"],[1658357460,"6.900000000993412"],[1658357520,"6.566666667349641"],[1658357580,"4.766666667225461"],[1658357640,"5.033333334140478"],[1658357700,"5.100000000869231"],[1658357760,"5.200000000186266"],[1658357820,"5.266666668467224"],[1658357880,"4.833333332402012"],[1658357940,"5.1333333350097154"],[1658358000,"5.033333332588274"],[1658358060,"6.000000000931327"],[1658358120,"6.199999999565387"],[1658358180,"5.333333332091572"],[1658358240,"5.633333334699275"],[1658358300,"5.366666666232045"],[1658358360,"5.399999998820326"],[1658358420,"5.433333334513013"],[1658358480,"5.433333334513013"],[1658358540,"5.366666664679842"],[1658358600,"5.200000000186266"],[1658358660,"5.366666666232045"],[1658358720,"5.733333334016311"],[1658358780,"5.366666667784248"],[1658358840,"5.166666666045783"],[1658358900,"5.066666666728747"],[1658358960,"5.166666667597997"],[1658359020,"5.0333333341404884"],[1658359080,"4.966666667411723"],[1658359140,"4.799999999813731"],[1658359200,"5.066666666728759"],[1658359260,"6.666666666666665"],[1658359320,"7.100000001179674"],[1658359380,"4.733333333084988"],[1658359440,"5.233333332774537"],[1658359500,"5.266666666915021"],[1658359560,"4.866666666542496"],[1658359620,"5.199999998634053"],[1658359680,"5.23333333432674"],[1658359740,"5.13333333190531"],[1658359800,"5.233333332774537"],[1658359860,"4.933333331719036"],[1658359920,"5.633333331594859"],[1658359980,"5.099999999317029"],[1658360040,"5.500000001241768"],[1658360100,"5.299999999503302"],[1658360160,"5.233333332774537"],[1658360220,"5.033333332588274"],[1658360280,"5.199999998634053"],[1658360340,"5.166666666045783"],[1658360400,"5.000000001552207"],[1658360460,"4.899999999130767"],[1658360520,"5.76666666660457"],[1658360580,"5.333333332091561"],[1658360640,"5.211530761547412"],[1658360700,"5.333333333643775"],[1658360760,"5.76666666660458"],[1658360820,"6.366666667163368"],[1658360880,"6.266666667846343"],[1658360940,"6.766666665983689"],[1658361000,"6.599999999937911"],[1658361060,"8.133333333147075"],[1658361120,"8.766666666294132"],[1658361180,"7.099999999627471"],[1658361240,"6.533333333209157"],[1658361300,"6.766666665983701"],[1658361360,"6.466666666480403"],[1658361420,"6.599999999937911"],[1658361480,"6.700000000807149"],[1658361540,"6.566666665797438"],[1658361600,"6.599999999937911"],[1658361660,"8.70000000111759"],[1658361720,"7.566666668280964"],[1658361780,"7.166666666356225"],[1658361840,"7.066666668591393"],[1658361900,"7.233333333084979"],[1658361960,"6.700000000807149"],[1658362020,"6.900000000993412"],[1658362080,"6.766666667535903"],[1658362140,"6.299999998882411"],[1658362200,"5.699999999875827"],[1658362260,"5.700000001428029"],[1658362320,"6.466666666480403"],[1658362380,"5.900000000062089"],[1658362440,"5.733333332464108"],[1658362500,"5.099999999317029"],[1658362560,"4.966666667411723"],[1658362620,"5.533333333830037"],[1658362680,"5.333333333643775"],[1658362740,"5.23333333432674"],[1658362800,"5.23333333432674"],[1658362860,"6.733333331843216"],[1658362920,"7.2000000004967095"],[1658362980,"5.199999998634053"],[1658363040,"5.066666666728747"],[1658363100,"5.099999997764826"],[1658363160,"4.96666666585952"],[1658363220,"6.100000000248351"],[1658363280,"5.000000000000004"],[1658363340,"4.966666667411723"],[1658363400,"5.233333332774537"],[1658363460,"5.633333333147061"],[1658363520,"5.8666666659216045"],[1658363580,"5.000000000000004"],[1658363640,"5.433333334513013"],[1658363700,"5.23333333432674"],[1658363760,"5.266666665362818"],[1658363820,"5.033333334140478"],[1658363880,"5.23333333432674"],[1658363940,"5.100000000869231"],[1658364000,"5.400000000372529"],[1658364060,"4.866666664990293"],[1658364120,"6.066666666107867"],[1658364180,"5.100000000869231"],[1658364240,"5.500000001241768"],[1658364300,"5.100000002421434"],[1658364360,"5.366666666232045"],[1658364420,"4.900000000682969"],[1658364480,"5.333333333643775"],[1658364540,"5.633333334699275"],[1658364600,"5.166666666045783"],[1658364660,"7.299999999813734"],[1658364720,"6.599999999937911"],[1658364780,"8.300000000745067"],[1658364840,"7.733333334326742"],[1658364900,"8.233333332464099"],[1658364960,"8.100000002110995"],[1658365020,"7.7666666669150235"],[1658365080,"7.800000001055496"],[1658365140,"10.900000001614284"],[1658365200,"9.166666665114464"],[1658365260,"8.70000000111759"],[1658365320,"8.799999998882413"],[1658365380,"8.36666666747381"],[1658365440,"8.566666667660083"],[1658365500,"8.666666666977108"],[1658365560,"9.39999999944121"],[1658365620,"8.06666666641831"],[1658365680,"8.400000000062091"],[1658365740,"12.900000000372525"],[1658365800,"6.599999998385709"],[1658365860,"5.800000000745054"],[1658365920,"7.566666665176558"],[1658365980,"5.299999999503302"],[1658366040,"5.366666666232045"],[1658366100,"5.96666666523864"],[1658366160,"11.899999999441203"],[1658366220,"7.166666667908428"],[1658366280,"6.566666667349641"],[1658366340,"6.966666667722166"],[1658366400,"7.333333333954217"],[1658366460,"8.400000001614295"],[1658366520,"8.300000000745056"],[1658366580,"8.033333332277836"],[1658366640,"9.300000000124175"],[1658366700,"10.46666666865349"],[1658366760,"8.933333333892124"],[1658366820,"9.133333332526195"],[1658366880,"9.266666665983703"],[1658366940,"15.800000000745062"],[1658367000,"8.499999999379115"],[1658367060,"8.733333333705861"],[1658367120,"52.33333333240201"],[1658367180,"52.60000000086923"],[1658367240,"51.56666666424523"],[1658367300,"50.93333333265036"],[1658367360,"51.76666666753591"],[1658367420,"51.633333334078394"],[1658367480,"8.733333333705861"],[1658367540,"9.766666667225454"],[1658367600,"8.70000000111759"],[1658367660,"8.800000000434615"],[1658367720,"9.533333334450923"],[1658367780,"8.133333333147075"],[1658367840,"8.166666665735345"],[1658367900,"8.733333333705861"],[1658367960,"8.600000000248354"],[1658368020,"8.533333335071802"],[1658368080,"8.36666666747381"],[1658368140,"8.300000000745067"],[1658368200,"8.133333334699277"],[1658368260,"8.833333333022896"],[1658368320,"8.5333333335196"],[1658368380,"8.2333333340163"],[1658368440,"9.333333332712446"],[1658368500,"8.499999999379115"],[1658368560,"8.766666667846346"],[1658368620,"8.766666666294132"],[1658368680,"9.466666667722167"],[1658368740,"9.300000001676379"],[1658368800,"10.100000000869237"],[1658368860,"13.433333332650355"],[1658368980,"10.36666666623205"],[1658369040,"75.31341897402143"],[1658369100,"11.233333333705865"],[1658369160,"12.599999999317024"],[1658369220,"10.39999999882033"],[1658369280,"10.733333334016304"],[1658369340,"11.266666666294146"],[1658369400,"11.299999998882404"],[1658369460,"11.333333333022889"],[1658369520,"11.833333334264662"],[1658369580,"11.266666666294146"],[1658369640,"8.899999999751651"],[1658369700,"8.533333335071802"],[1658369760,"8.966666666480405"],[1658369820,"8.2333333340163"],[1658369880,"8.866666667163381"],[1658369940,"9.233333333395422"],[1658370000,"9.533333334450923"],[1658370060,"9.999999999999998"],[1658370120,"11.333333333022889"],[1658370180,"9.199999999254938"],[1658370240,"10.266666666915025"],[1658370300,"10.73333333246409"],[1658370360,"10.433333334513007"],[1658370420,"8.8333333345751"],[1658370480,"8.933333333892124"],[1658370540,"10.566666666418312"],[1658370600,"9.833333333954219"],[1658370660,"8.5333333335196"],[1658370720,"9.999999999999998"],[1658370780,"8.918216356480357"],[1658370840,"9.433333333581695"],[1658370900,"8.70000000111759"],[1658370960,"8.600000000248354"],[1658371020,"8.033333332277836"],[1658371080,"8.633333334388826"],[1658371140,"9.299999998571973"],[1658371200,"8.93333333233992"],[1658371260,"7.933333332960801"],[1658371320,"8.266666666604582"],[1658371380,"8.766666666294132"],[1658371440,"10.299999999503296"],[1658371500,"9.799999999813735"],[1658371560,"7.866666666232048"],[1658371620,"10.166666664493572"],[1658371680,"7.766666666915012"],[1658371740,"7.333333332402003"],[1658371800,"10.117976404036222"],[1658371860,"9.86666666654249"],[1658371920,"9.66666666790843"],[1658371980,"10.533333333830042"],[1658372040,"7.799999999503293"],[1658372100,"7.566666668280964"],[1658372160,"9.966666667411728"],[1658372220,"9.766666665673252"],[1658372280,"8.766666666294132"],[1658372340,"9.266666667535905"],[1658372400,"7.999999998137353"],[1658372460,"10.400000000372533"],[1658372520,"9.466666666169965"],[1658372580,"8.300000000745067"],[1658372640,"9.233333333395422"],[1658372700,"8.799999998882413"],[1658372760,"8.633333334388826"],[1658372820,"8.633333332836624"],[1658372880,"10.233333332774542"],[1658372940,"8.266666666604582"],[1658373000,"9.900000000682974"],[1658373060,"10.933333334202565"],[1658373120,"10.36666666623205"],[1658373180,"9.066666667349633"],[1658373240,"9.700000000496711"],[1658373300,"9.733333333084982"],[1658373360,"10.700000001428034"],[1658373420,"10.300000001055498"],[1658373480,"9.400000000993414"],[1658373540,"9.300000000124175"],[1658373600,"9.066666667349633"],[1658373660,"9.666666666356228"],[1658373720,"10.433333334513017"],[1658373780,"9.599999998075258"],[1658373840,"8.966666666480405"],[1658373900,"9.400000000993414"],[1658373960,"9.06666666579743"],[1658374020,"8.466666665238643"],[1658374080,"8.866666665611167"],[1658374140,"9.299999998571973"],[1658374200,"8.800000000434615"],[1658374260,"9.233333333395422"],[1658374320,"8.86666666716337"],[1658374380,"7.53333333414048"],[1658374440,"7.566666668280964"],[1658374500,"7.166666664804023"],[1658374560,"7.366666666542487"],[1658374620,"7.200000000496698"],[1658374680,"8.333333333333337"],[1658374740,"7.199999998944495"],[1658374800,"7.200000000496698"],[1658374860,"8.633333332836624"],[1658374920,"8.633333332836624"],[1658374980,"7.633333333457504"],[1658375040,"7.533333332588277"],[1658375100,"7.233333333084979"],[1658375160,"6.999999998758244"],[1658375220,"7.26666666567326"],[1658375280,"7.53333333414048"],[1658375340,"7.3666666649902846"],[1658375400,"7.000000000310447"],[1658375460,"6.933333333581682"],[1658375520,"7.599999997764828"],[1658375580,"8.899999999751639"],[1658375640,"10.033333332588267"],[1658375700,"9.366666666852929"],[1658375760,"9.099999999937914"],[1658375820,"8.566666666107881"],[1658375880,"8.666666666977108"],[1658375940,"8.100000000558794"],[1658376000,"8.266666666604582"],[1658376060,"9.466666666169953"],[1658376120,"9.633333333767947"],[1658376180,"9.266666665983703"],[1658376240,"8.833333333022896"],[1658376300,"9.16666666821887"],[1658376360,"8.166666667287547"],[1658376420,"8.5333333335196"],[1658376480,"8.600000000248354"],[1658376540,"8.699999999565389"],[1658376600,"9.099999999937914"],[1658376660,"8.5333333335196"],[1658376720,"9.066666667349633"],[1658376780,"9.500000000310438"],[1658376840,"9.266666665983703"],[1658376900,"9.06666666579743"],[1658376960,"8.433333332650372"],[1658377020,"8.400000000062091"],[1658377080,"7.866666666232058"],[1658377140,"8.166666665735345"],[1658377200,"8.266666666604582"],[1658377260,"7.899999998820317"],[1658377320,"8.433333334202576"],[1658377380,"8.066666667970512"],[1658377440,"8.833333331470694"],[1658377500,"7.566666666728761"],[1658377560,"8.8333333345751"],[1658377620,"7.499999999999996"],[1658377680,"8.00000000124177"],[1658377740,"7.966666667101285"],[1658377800,"7.866666667784261"],[1658377860,"8.199999999875818"],[1658377920,"8.633333334388826"],[1658377980,"7.533333332588277"],[1658378040,"7.433333334823455"],[1658378100,"7.600000000869233"],[1658378160,"8.166666667287547"],[1658378220,"8.06666666641831"],[1658378280,"8.266666666604582"],[1658378340,"7.666666666045785"],[1658378400,"7.833333333643777"],[1658378460,"8.366666665921606"],[1658378520,"8.066666664866107"],[1658378580,"7.79999999795109"],[1658378640,"8.03333333383004"],[1658378700,"8.199999999875818"],[1658378760,"7.9666666655490825"],[1658378820,"8.300000000745067"],[1658378880,"8.70000000111759"],[1658378940,"8.466666666790834"],[1658379000,"8.099999999006592"],[1658379060,"8.06666666641831"],[1658379120,"7.799999999503293"],[1658379180,"6.700000002359352"],[1658379240,"8.299999999192863"],[1658379300,"7.366666666542487"],[1658379360,"7.06666666703919"],[1658379420,"6.966666666169963"],[1658379480,"6.933333333581682"],[1658379540,"7.033333336003123"],[1658379600,"6.633333332526181"],[1658379660,"8.266666666604582"],[1658379720,"9.69999999894451"],[1658379780,"9.366666665300727"],[1658379840,"9.133333334078397"],[1658379900,"7.400000002235174"],[1658379960,"9.633333333767947"],[1658380020,"9.900000000682974"],[1658380080,"8.500000000931319"],[1658380140,"9.633333332215743"],[1658380200,"8.866666665611167"],[1658380260,"8.466666665238643"],[1658380320,"9.366666665300727"],[1658380380,"8.433333334202576"],[1658380440,"8.133333333147075"],[1658380500,"9.099999999937914"],[1658380560,"9.366666668405133"],[1658380620,"8.93333333233992"],[1658380680,"8.100000000558794"],[1658380740,"8.466666668343048"],[1658380800,"8.366666665921606"],[1658380860,"7.733333334326753"],[1658380920,"8.466666666790834"],[1658380980,"8.70000000111759"],[1658381040,"7.900000000372531"],[1658381100,"7.166666667908439"],[1658381160,"7.799999999503293"],[1658381220,"8.566666667660083"],[1658381280,"9.033333333209159"],[1658381340,"9.033333334761362"],[1658381400,"8.166666667287547"],[1658381460,"7.899999998820329"],[1658381520,"7.53333333414048"],[1658381580,"7.599999999317031"],[1658381640,"8.26666666505237"],[1658381700,"7.933333332960801"],[1658381760,"7.299999999813744"],[1658381820,"7.466666665859522"],[1658381880,"8.36666666747381"],[1658381940,"8.233333332464099"],[1658382000,"7.966666667101285"],[1658382060,"6.833333332712455"],[1658382120,"8.933333335444328"],[1658382180,"7.733333334326753"],[1658382240,"7.000000000310447"],[1658382300,"7.53333333414048"],[1658382360,"7.400000000682971"],[1658382420,"6.933333333581682"],[1658382480,"7.333333333954206"],[1658382540,"8.46666666523863"],[1658382600,"6.899999999441208"],[1658382660,"7.666666667597988"],[1658382720,"7.633333331905301"],[1658382780,"7.733333332774539"],[1658382840,"7.06666666703919"],[1658382900,"7.666666667597988"],[1658382960,"7.600000000869233"],[1658383020,"7.166666666356225"],[1658383080,"8.100000000558794"],[1658383140,"7.466666668963928"],[1658383200,"7.133333332215752"],[1658383260,"8.800000000434615"],[1658383320,"7.500000001552198"],[1658383380,"8.300000000745056"],[1658383440,"9.533333334450923"],[1658383500,"9.066666667349633"],[1658383560,"7.83333333519598"],[1658383620,"9.666666666356228"],[1658383680,"9.86666666654249"],[1658383740,"9.599999998075258"],[1658383800,"8.033333332277836"],[1658383860,"8.2333333340163"],[1658383920,"8.86666666716337"],[1658383980,"9.433333333581695"],[1658384040,"8.8333333345751"],[1658384100,"7.699999998634066"],[1658384160,"8.733333333705861"],[1658384220,"8.300000000745056"],[1658384280,"8.633333332836624"],[1658384340,"8.833333333022896"],[1658384400,"9.66666666790843"],[1658384460,"7.199999998944495"],[1658384520,"8.06666666641831"],[1658384580,"7.29999999826153"],[1658384640,"7.833333333643777"],[1658384700,"7.233333334637182"],[1658384760,"7.599999999317031"],[1658384820,"8.933333333892124"],[1658384880,"8.100000000558794"],[1658384940,"7.3382254843392"],[1658385000,"7.099999999627471"],[1658385060,"7.300000001365947"],[1658385120,"8.199999999875828"],[1658385180,"8.633333334388826"],[1658385240,"10.700000001428023"],[1658385300,"10.266666666915015"],[1658385360,"9.599999999627462"],[1658385420,"8.933333333892124"],[1658385480,"8.699999999565389"],[1658385540,"7.9666666655490825"],[1658385600,"7.799999999503293"],[1658385660,"8.06666666641831"],[1658385720,"9.166666666666668"],[1658385780,"8.833333333022896"],[1658385840,"7.53333333414048"],[1658385900,"8.066666667970512"],[1658385960,"8.36666666747381"],[1658386020,"7.033333332898717"],[1658386080,"7.733333334326753"],[1658386140,"7.666666667597988"],[1658386200,"7.6999999986340555"],[1658386260,"9.766666667225454"],[1658386320,"9.099999999937914"],[1658386380,"8.200000001428032"],[1658386440,"8.400000000062091"],[1658386500,"8.800000001986819"],[1658386560,"9.433333335133899"],[1658386620,"8.666666666977108"],[1658386680,"9.033333331656944"],[1658386740,"7.966666667101285"],[1658386800,"9.766666667225454"],[1658386860,"7.833333333643777"],[1658386920,"8.299999999192853"],[1658386980,"7.166666666356225"],[1658387040,"9.133333332526195"],[1658387100,"7.933333332960801"],[1658387160,"8.033333332277826"],[1658387220,"8.03333333383004"],[1658387280,"7.866666666232048"],[1658387340,"7.600000000869233"],[1658387400,"7.266666667225463"],[1658387460,"6.999999998758244"],[1658387520,"7.9999999996895665"],[1658387580,"7.633333335009718"],[1658387640,"7.299999999813734"],[1658387700,"7.066666665486987"],[1658387760,"7.033333334450919"],[1658387820,"6.766666665983689"],[1658387880,"7.033333334450919"],[1658387940,"6.733333334947633"],[1658388000,"6.933333333581682"],[1658388060,"6.900000000993412"],[1658388120,"7.633333333457504"],[1658388180,"6.666666666666665"],[1658388240,"6.633333334078384"],[1658388300,"6.533333333209157"],[1658388360,"6.899999999441208"],[1658388420,"6.100000000248351"],[1658388480,"6.133333334388835"],[1658388540,"5.999999997826921"],[1658388600,"6.333333333022894"],[1658388660,"6.199999999565387"],[1658388720,"6.73333333339542"],[1658388780,"6.133333334388835"],[1658388840,"6.333333334575098"],[1658388900,"6.199999999565375"],[1658388960,"6.266666664741938"],[1658389020,"6.066666666107867"],[1658389080,"6.966666667722166"],[1658389140,"8.00000000124177"],[1658389200,"6.333333333022894"],[1658389260,"6.133333332836632"],[1658389320,"6.999999998758232"],[1658389380,"6.000000000931327"],[1658389440,"6.366666665611165"],[1658389500,"6.666666666666665"],[1658389560,"6.266666666294141"],[1658389620,"6.166666666977106"],[1658389680,"6.133333332836632"],[1658389740,"6.266666666294141"],[1658389800,"6.266666667846343"],[1658389860,"6.666666666666665"],[1658389920,"6.700000000807149"],[1658389980,"6.333333334575098"],[1658390040,"6.466666666480403"],[1658390100,"6.700000000807149"],[1658390160,"7.499999999999996"],[1658390220,"6.06666666766007"],[1658390280,"6.666666666666665"],[1658390340,"6.666666666666665"],[1658390400,"6.466666668032605"],[1658390460,"6.100000001800554"],[1658390520,"7.066666665486987"],[1658390580,"6.866666665300725"],[1658390640,"8.666666666977108"],[1658390700,"7.933333334513004"],[1658390760,"6.966666666169963"],[1658390820,"6.466666668032617"],[1658390880,"6.399999999751649"],[1658390940,"6.633333332526181"],[1658391000,"7.06666666703919"],[1658391060,"6.499999999068673"],[1658391120,"7.499999999999996"],[1658391180,"6.733333334947633"],[1658391240,"6.733333331843216"],[1658391300,"6.533333333209157"],[1658391360,"7.433333333271253"],[1658391420,"8.799999998882413"],[1658391480,"6.700000000807149"],[1658391540,"6.599999999937911"],[1658391600,"6.199999999565375"],[1658391660,"6.166666666977116"],[1658391720,"6.599999998385709"],[1658391780,"6.300000001986827"],[1658391840,"5.899999998509875"],[1658391900,"5.466666667101283"],[1658391960,"5.466666665549069"],[1658392020,"6.499999999068673"],[1658392080,"6.700000000807149"],[1658392140,"5.166666667597997"],[1658392200,"5.733333334016311"],[1658392260,"6.233333333705859"],[1658392320,"6.099999998696148"],[1658392380,"5.499999999689553"],[1658392440,"7.200000000496698"],[1658392500,"7.06666666703919"],[1658392560,"5.799999999192851"],[1658392620,"5.499999999689553"],[1658392680,"5.900000000062089"],[1658392740,"5.96666666523864"],[1658392800,"5.933333332650359"],[1658392860,"5.766666665052367"],[1658392920,"6.399999999751649"],[1658392980,"5.833333333333335"],[1658393040,"5.633333334699275"],[1658393100,"5.733333334016311"],[1658393160,"6.5000000006208865"],[1658393220,"6.000000000931327"],[1658393280,"6.199999998013173"],[1658393340,"6.399999999751649"],[1658393400,"5.399999998820326"],[1658393460,"5.799999999192851"],[1658393520,"6.566666665797438"],[1658393580,"6.033333333519597"],[1658393640,"5.733333334016311"],[1658393700,"6.666666666666665"],[1658393760,"5.966666666790843"],[1658393820,"5.933333334202562"],[1658393880,"5.466666665549081"],[1658393940,"5.2999999995032905"],[1658394000,"5.233333332774537"],[1658394060,"5.833333333333335"],[1658394120,"6.100000000248351"],[1658394180,"6.200000001117589"],[1658394240,"8.333333333333325"],[1658394300,"7.233333333084979"],[1658394360,"6.333333334575086"],[1658394420,"5.933333332650359"],[1658394480,"6.133333332836632"],[1658394540,"5.566666666418318"],[1658394600,"5.900000000062089"],[1658394660,"5.933333334202562"],[1658394720,"6.266666666294141"],[1658394780,"6.066666666107867"],[1658394840,"6.266666664741938"],[1658394900,"5.76666666660458"],[1658394960,"5.199999998634053"],[1658395020,"5.700000001428029"],[1658395080,"5.600000002110994"],[1658395140,"7.099999999627471"],[1658395200,"5.733333334016311"],[1658395260,"5.566666664866116"],[1658395320,"5.999999999379124"],[1658395380,"5.2999999995032905"],[1658395440,"5.900000001614291"],[1658395500,"8.500000000931319"],[1658395560,"5.966666668343046"],[1658395620,"5.166666666045783"],[1658395680,"8.066666667970512"],[1658395740,"8.300000000745067"],[1658395800,"8.066666667970512"],[1658395860,"8.100000000558794"],[1658395920,"9.800000001365937"],[1658395980,"9.033333334761362"],[1658396040,"9.966666665859524"],[1658396100,"9.633333333767947"],[1658396160,"9.533333334450923"],[1658396220,"10.866666667473812"],[1658396280,"20.06666666672876"],[1658396340,"9.16666666821887"],[1658396400,"9.43333333202948"],[1658396460,"14.200000000807144"],[1658396520,"10.233333332774542"],[1658396580,"9.833333333954219"],[1658396640,"9.09999999838571"],[1658396700,"19.333333332712456"],[1658396760,"12.299999998261535"],[1658396820,"8.966666666480405"],[1658396880,"9.333333334264648"],[1658396940,"12.99999999968956"],[1658397000,"9.533333332898719"],[1658397060,"8.033333332277826"],[1658397120,"9.333333332712446"],[1658397180,"7.299999999813734"],[1658397240,"7.200000000496698"],[1658397300,"6.700000000807149"],[1658397360,"7.06666666703919"],[1658397420,"51.59999999993792"],[1658397480,"51.53333333320915"],[1658397540,"51.83333333426465"],[1658397600,"7.700000000186269"],[1658397660,"7.566666666728761"],[1658397720,"8.100000000558794"],[1658397780,"7.666666666045785"],[1658397840,"7.499999999999996"],[1658397900,"30.86666666747382"],[1658397960,"51.83333333426465"],[1658398020,"7.466666667411726"],[1658398080,"7.400000000682971"],[1658398140,"7.433333333271253"],[1658398200,"50.69999999987582"],[1658398260,"7.600000000869233"],[1658398320,"7.599999999317031"],[1658398380,"7.666666666045785"],[1658398440,"7.466666667411726"],[1658398500,"7.566666665176546"],[1658398560,"7.400000000682971"],[1658398620,"7.599999999317031"],[1658398680,"7.600000000869233"],[1658398740,"7.033333334450919"],[1658398800,"7.200000000496698"],[1658398860,"6.766666667535903"],[1658398920,"7.9999999996895665"],[1658398980,"7.166666666356225"],[1658399040,"7.633333333457504"],[1658399100,"7.133333333767955"],[1658399160,"7.300000001365936"],[1658399220,"7.099999999627471"],[1658399280,"7.36666666809469"],[1658399340,"8.233333332464099"],[1658399400,"7.9666666655490825"],[1658399460,"7.466666667411726"],[1658399520,"8.199999999875818"],[1658399580,"7.533333332588277"],[1658399640,"7.53333333414048"],[1658399700,"7.53333333414048"],[1658399760,"7.400000002235174"],[1658399820,"7.666666667597988"],[1658399880,"7.400000000682971"],[1658399940,"7.466666665859522"],[1658400000,"7.200000002048901"],[1658400060,"7.499999999999996"],[1658400120,"7.533333332588277"],[1658400180,"12.333333333954211"],[1658400240,"7.900000000372531"],[1658400300,"8.833333333022896"],[1658400360,"7.566666666728761"],[1658400420,"7.899999998820329"],[1658400480,"7.799999999503293"],[1658400540,"7.73333333277455"],[1658400600,"7.733333332774539"],[1658400660,"7.733333332774539"],[1658400720,"8.300000000745056"],[1658400780,"7.866666664679844"],[1658400840,"7.833333332091574"],[1658400900,"8.2333333340163"],[1658400960,"7.799999999503293"],[1658401020,"8.099999999006592"],[1658401080,"7.866666666232048"],[1658401140,"8.899999999751651"],[1658401200,"7.733333332774539"],[1658401260,"9.433333333581695"],[1658401320,"10.233333332774542"],[1658401380,"9.233333333395422"],[1658401440,"7.900000000372531"],[1658401500,"8.400000001614295"],[1658401560,"52.099999999627464"],[1658401620,"36.10000000024836"],[1658401680,"8.166666665735345"],[1658401740,"8.233333332464099"],[1658401800,"8.366666665921606"],[1658401860,"8.166666665735345"],[1658401920,"8.13333333159486"],[1658401980,"8.400000000062091"],[1658402040,"7.633333331905301"],[1658402100,"8.06666666641831"],[1658402160,"8.06666666641831"],[1658402220,"7.833333333643777"],[1658402280,"7.466666665859522"],[1658402340,"7.400000000682971"],[1658402400,"7.333333332402003"],[1658402460,"7.566666665176558"],[1658402520,"7.499999999999996"],[1658402580,"7.233333333084979"],[1658402640,"7.033333332898717"],[1658402700,"7.233333334637182"],[1658402760,"6.033333333519597"],[1658402820,"50.333333335195974"],[1658402880,"50.66666666728755"],[1658402940,"6.733333331843216"],[1658403000,"7.778962805207668"],[1658403060,"6.426906426596302"],[1658403120,"7.533333331036074"],[1658403180,"51.13333333283663"],[1658403240,"6.899999999441198"],[1658403300,"51.633333334078394"],[1658403360,"49.400000000993415"],[1658403420,"49.733333333084985"],[1658403480,"7.633333335009718"],[1658403540,"7.299999999813734"],[1658403600,"7.666666667597988"],[1658403660,"6.999999998758244"],[1658403720,"7.433333333271241"],[1658403780,"6.899999999441208"],[1658403840,"6.933333333581682"],[1658403900,"6.53333333476136"],[1658403960,"6.466666666480392"],[1658404020,"5.96666666523864"],[1658404080,"5.633333333147073"],[1658404140,"5.600000000558792"],[1658404200,"5.23333333432674"],[1658404260,"5.300000001055505"],[1658404320,"5.733333332464097"],[1658404380,"6.00000000248353"],[1658404440,"5.766666668156784"],[1658404500,"5.466666665549081"],[1658404560,"5.43333333296081"],[1658404620,"5.633333333147073"],[1658404680,"5.499999999689553"],[1658404740,"7.166666666356225"],[1658404800,"5.333333332091561"],[1658404860,"7.700000000186269"],[1658404920,"6.133333332836632"],[1658404980,"5.833333333333335"],[1658405040,"6.233333333705859"],[1658405100,"5.699999999875827"],[1658405160,"5.699999999875827"],[1658405220,"5.366666667784248"],[1658405280,"5.599999999006588"],[1658405340,"6.133333332836632"],[1658405400,"8.500000000931319"],[1658405460,"5.733333332464097"],[1658405520,"6.466666668032605"],[1658405580,"5.999999999379124"],[1658405640,"5.666666665735343"],[1658405700,"5.799999999192851"],[1658405760,"5.599999999006588"],[1658405820,"5.633333333147073"],[1658405880,"5.695611578647752"],[1658405940,"5.733333334016311"],[1658406000,"5.43333333296081"],[1658406060,"5.866666665921616"],[1658406120,"6.399999999751649"],[1658406180,"5.266666666915021"],[1658406240,"5.499999999689553"],[1658406300,"5.133333333457513"],[1658406360,"5.033333332588274"],[1658406420,"5.333333333643764"],[1658406480,"5.000000000000004"],[1658406540,"7.200000000496698"],[1658406600,"5.533333333830037"],[1658406660,"5.166666666045783"],[1658406720,"6.166666666977106"],[1658406780,"5.400000000372529"],[1658406840,"5.966666666790843"],[1658406900,"5.266666665362818"],[1658406960,"5.466666667101283"],[1658407020,"5.833333333333335"],[1658407080,"5.300000001055505"],[1658407140,"8.033333332277836"],[1658407200,"9.133333334078397"],[1658407260,"7.700000001738472"],[1658407320,"8.766666666294132"],[1658407380,"7.700000000186269"],[1658407440,"7.566666666728761"],[1658407500,"7.899999998820317"],[1658407560,"6.900000000993412"],[1658407620,"7.000000000310447"],[1658407680,"7.099999999627471"],[1658407740,"7.133333333767955"],[1658407800,"7.133333333767955"],[1658407860,"6.816969050346455"],[1658407920,"7.166666667908439"],[1658407980,"6.899999999441198"],[1658408040,"6.666666666666665"],[1658408100,"7.400000000682971"],[1658408160,"7.299999999813734"],[1658408220,"7.300000001365947"],[1658408280,"7.066666665486987"],[1658408340,"6.899999999441198"],[1658408400,"7.633333333457504"],[1658408460,"8.03333333383003"],[1658408520,"8.033333332277836"],[1658408580,"7.333333333954206"],[1658408640,"7.500000001552198"],[1658408700,"7.299999999813734"],[1658408760,"7.666666666045785"],[1658408820,"7.266666667225463"],[1658408880,"7.633333333457504"],[1658408940,"6.633333334078384"],[1658409000,"8.100000000558794"],[1658409060,"7.4666666658595116"],[1658409120,"7.133333333767955"],[1658409180,"6.5000000006208865"],[1658409240,"7.166666666356225"],[1658409300,"6.766666665983689"],[1658409360,"6.766666665983689"],[1658409420,"7.033333332898717"],[1658409480,"7.133333333767955"],[1658409540,"7.033333332898717"],[1658409600,"6.73333333339543"],[1658409660,"6.500000000620876"],[1658409720,"6.9000000009934"],[1658409780,"6.599999999937922"],[1658409840,"7.06666666703919"],[1658409900,"6.366666667163368"],[1658409960,"6.666666666666665"],[1658410020,"6.133333334388835"],[1658410080,"6.266666666294141"],[1658410140,"6.066666666107867"],[1658410200,"7.266666667225463"],[1658410260,"6.399999999751649"],[1658410320,"6.999999998758232"],[1658410380,"13.133333333147068"],[1658410440,"6.300000000434613"],[1658410500,"14.200000000807144"],[1658410560,"6.599999999937911"],[1658410620,"6.399999999751649"],[1658410680,"6.633333334078384"],[1658410740,"6.566666665797438"],[1658410800,"7.833333333643777"],[1658410860,"6.233333332153657"],[1658410920,"6.933333333581682"],[1658410980,"6.466666666480403"],[1658411040,"6.233333333705859"],[1658411100,"5.999999999379124"],[1658411160,"6.366666667163368"],[1658411220,"5.933333334202562"],[1658411280,"6.300000000434625"],[1658411340,"6.566666667349641"],[1658411400,"6.566666667349641"],[1658411460,"6.699999999254946"],[1658411520,"7.133333332215752"],[1658411580,"7.300000001365936"],[1658411640,"5.733333334016311"],[1658411700,"6.399999999751649"],[1658411760,"5.833333331781132"],[1658411820,"6.100000000248351"],[1658411880,"5.43333333296081"],[1658411940,"5.866666667473819"],[1658412000,"5.333333332091572"],[1658412060,"6.033333331967383"],[1658412120,"6.266666666294141"],[1658412180,"5.600000000558802"],[1658412240,"7.3666666649902846"],[1658412300,"6.966666666169963"],[1658412360,"6.800000000124173"],[1658412420,"6.666666668218868"],[1658412480,"5.900000000062089"],[1658412540,"5.333333333643775"],[1658412600,"6.666666668218868"],[1658412660,"5.466666667101283"],[1658412720,"6.166666665424902"],[1658412780,"5.699999998323624"],[1658412840,"5.466666665549081"],[1658412900,"5.999999999379124"],[1658412960,"5.266666666915021"],[1658413020,"5.466666668653486"],[1658413080,"5.500000001241756"],[1658413140,"5.466666667101294"],[1658413200,"5.499999999689553"],[1658413260,"5.633333333147061"],[1658413320,"5.733333332464108"],[1658413380,"5.400000000372529"],[1658413440,"5.2999999995032905"],[1658413500,"5.2999999995032905"],[1658413560,"5.099999999317029"],[1658413620,"6.133333332836632"],[1658413680,"5.1333333350097154"],[1658413740,"4.96666666585952"],[1658413800,"5.433333334513013"],[1658413860,"5.400000000372529"],[1658413920,"5.400000000372529"],[1658413980,"5.099999999317029"],[1658414040,"5.933333334202562"],[1658414100,"5.266666665362818"],[1658414160,"5.633333334699275"],[1658414220,"5.499999999689553"],[1658414280,"5.200000000186266"],[1658414340,"5.7333333309118935"],[1658414400,"6.766666667535892"],[1658414460,"6.933333333581682"],[1658414520,"6.100000000248351"],[1658414580,"5.13333333190531"],[1658414640,"5.266666665362818"],[1658414700,"5.499999999689553"],[1658414760,"5.466666667101283"],[1658414820,"6.033333331967395"],[1658414880,"5.733333335568513"],[1658414940,"5.699999998323624"],[1658415000,"5.466666668653486"],[1658415060,"5.800000000745054"],[1658415120,"5.8666666659216045"],[1658415180,"6.366666665611165"],[1658415240,"5.666666667287545"],[1658415300,"6.966666666169963"],[1658415360,"5.166666666045794"],[1658415420,"5.699999999875827"],[1658415480,"5.666666667287545"],[1658415540,"5.399999998820326"],[1658415600,"5.699999999875827"],[1658415660,"6.199999999565375"],[1658415720,"6.966666667722166"],[1658415780,"5.633333333147061"],[1658415840,"5.866666667473819"],[1658415900,"6.666666666666665"],[1658415960,"5.566666666418318"],[1658416020,"6.199999998013173"],[1658416080,"5.533333333830037"],[1658416140,"5.533333333830037"],[1658416200,"5.600000002110994"],[1658416260,"5.366666667784248"],[1658416320,"6.666666666666665"],[1658416380,"5.699999999875827"],[1658416440,"7.033333331346514"],[1658416500,"6.899999999441208"],[1658416560,"5.599999999006588"],[1658416620,"5.966666668343046"],[1658416680,"6.000000000931327"],[1658416740,"5.966666666790843"],[1658416800,"5.833333333333335"],[1658416860,"5.999999999379124"],[1658416920,"5.800000000745054"],[1658416980,"5.900000000062089"],[1658417040,"5.366666667784248"],[1658417100,"5.066666666728747"],[1658417160,"5.499999999689553"],[1658417220,"5.2999999995032905"],[1658417280,"4.966666667411723"],[1658417340,"5.499999999689553"],[1658417400,"5.633333334699275"],[1658417460,"5.43333333296081"],[1658417520,"5.799999999192851"],[1658417580,"5.733333332464097"],[1658417640,"4.933333334823442"],[1658417700,"5.333333332091561"],[1658417760,"4.96666666585952"],[1658417820,"5.166666667597997"],[1658417880,"4.833333332402012"],[1658417940,"5.266666666915021"],[1658418000,"6.333333333022894"],[1658418060,"6.333333334575098"],[1658418120,"5.633333333147061"],[1658418180,"5.133333333457513"],[1658418240,"5.866666667473819"],[1658418300,"5.599999999006588"],[1658418360,"5.49999999813735"],[1658418420,"5.400000000372529"],[1658418480,"5.699999998323624"],[1658418540,"6.300000001986817"],[1658418600,"5.333333333643775"],[1658418660,"5.366666666232045"],[1658418720,"5.833333333333335"],[1658418780,"5.633333333147061"],[1658418840,"5.799999999192851"],[1658418900,"5.466666667101283"],[1658418960,"5.766666668156784"],[1658419020,"5.233333332774537"],[1658419080,"5.133333333457513"],[1658419140,"5.699999999875827"]]}]' AS JSON))
;
After testing, this is not a problem of gorm, it is caused by cast as json, and the writing is normal after removing cast as json.
RT.
int4range、int8range、numrange、tsrange、tstzrange、daterange
JSONSet support for PostgreSQL
Maybe we can use jsonb_set to implement the feature.
How do I set the json type in postgresql? Only jsonb type is set.
type Model struct {
Values datatypes.JSON
}
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.