Build Information
Successful build of RedisClient, reference 1.3.0 (898b04
), with Swift 6.0 for macOS (SPM) on 28 Jul 2024 09:52:53 UTC.
Swift 6 data race errors: 1
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.0.0-Beta.4.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.48.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/reswifq/redis-client.git
Reference: 1.3.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/reswifq/redis-client
* tag 1.3.0 -> FETCH_HEAD
HEAD is now at 898b043 updated pool dependency to 1.3.0
Cloned https://github.com/reswifq/redis-client.git
Revision (git rev-parse @):
898b043d0a54d2b523e6e603d0bbabde4f21b4a5
SUCCESS checkout https://github.com/reswifq/redis-client.git at 1.3.0
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/reswifq/redis-client.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.0.0-Beta.4.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version--14728B76ED507284.txt
[4/5] Compiling Pool Pool.swift
[5/5] Emitting module Pool
[6/9] Compiling RedisClient RedisClientResponse.swift
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClientResponse.swift:48:5: warning: 'public' modifier is redundant for enum declared in a public extension
46 | public extension RedisClientResponse {
47 |
48 | public enum Status: String {
| `- warning: 'public' modifier is redundant for enum declared in a public extension
49 | case ok = "OK"
50 | case queued = "QUEUED"
[7/9] Compiling RedisClient RedisClientPool.swift
[8/9] Emitting module RedisClient
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:28:10: warning: associated value 'invalidResponse' of 'Sendable'-conforming enum 'RedisClientError' has non-sendable type 'RedisClientResponse'; this is an error in the Swift 6 language mode
26 | public enum RedisClientError: Error {
27 |
28 | case invalidResponse(RedisClientResponse)
| `- warning: associated value 'invalidResponse' of 'Sendable'-conforming enum 'RedisClientError' has non-sendable type 'RedisClientResponse'; this is an error in the Swift 6 language mode
29 | case transactionAborted
30 | case enqueueCommandError
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClientResponse.swift:24:13: note: consider making enum 'RedisClientResponse' conform to the 'Sendable' protocol
22 | import Foundation
23 |
24 | public enum RedisClientResponse {
| `- note: consider making enum 'RedisClientResponse' conform to the 'Sendable' protocol
25 |
26 | /// An array response from a Redis server. The value is an array of the individual
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:47:5: warning: 'public' modifier is redundant for instance method declared in a public extension
45 | public extension RedisClient {
46 |
47 | public func execute(_ command: String, arguments: String...) throws -> RedisClientResponse {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
48 | return try self.execute(command, arguments: arguments)
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:55:5: warning: 'public' modifier is redundant for instance method declared in a public extension
53 |
54 | @discardableResult
55 | public func get(_ key: String) throws -> String? {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
56 |
57 | let response = try self.execute("GET", arguments: key)
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:70:5: warning: 'public' modifier is redundant for instance method declared in a public extension
68 |
69 | @discardableResult
70 | public func incr(_ key: String) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
71 |
72 | let response = try self.execute("INCR", arguments: key)
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:82:5: warning: 'public' modifier is redundant for instance method declared in a public extension
80 |
81 | @discardableResult
82 | public func del(_ keys: String...) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
83 | return try self.del(keys)
84 | }
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:87:5: warning: 'public' modifier is redundant for instance method declared in a public extension
85 |
86 | @discardableResult
87 | public func del(_ keys: [String]) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
88 |
89 | let response = try self.execute("DEL", arguments: keys)
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:99:5: warning: 'public' modifier is redundant for instance method declared in a public extension
97 |
98 | @discardableResult
99 | public func lpush(_ key: String, values: String...) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
100 | return try self.lpush(key, values: values)
101 | }
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:104:5: warning: 'public' modifier is redundant for instance method declared in a public extension
102 |
103 | @discardableResult
104 | public func lpush(_ key: String, values: [String]) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
105 |
106 | var arguments = [key]
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:119:5: warning: 'public' modifier is redundant for instance method declared in a public extension
117 |
118 | @discardableResult
119 | public func rpush(_ key: String, values: String...) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
120 | return try self.rpush(key, values: values)
121 | }
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:124:5: warning: 'public' modifier is redundant for instance method declared in a public extension
122 |
123 | @discardableResult
124 | public func rpush(_ key: String, values: [String]) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
125 |
126 | var arguments = [key]
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:139:5: warning: 'public' modifier is redundant for instance method declared in a public extension
137 |
138 | @discardableResult
139 | public func rpoplpush(source: String, destination: String) throws -> String? {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
140 |
141 | let response = try self.execute("RPOPLPUSH", arguments: [source, destination])
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:154:5: warning: 'public' modifier is redundant for instance method declared in a public extension
152 |
153 | @discardableResult
154 | public func brpoplpush(source: String, destination: String, count: Int = 0) throws -> String {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
155 |
156 | let response = try self.execute("BRPOPLPUSH", arguments: [source, destination, String(count)])
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:165:5: warning: 'public' modifier is redundant for instance method declared in a public extension
163 | }
164 |
165 | public func setex(_ key: String, timeout: TimeInterval, value: String) throws {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
166 |
167 | let response = try self.execute("SETEX", arguments: [key, String(Int(timeout)), value])
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:175:5: warning: 'public' modifier is redundant for instance method declared in a public extension
173 |
174 | @discardableResult
175 | public func lrem(_ key: String, value: String, count: Int? = nil) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
176 |
177 | var arguments = [key]
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:193:5: warning: 'public' modifier is redundant for instance method declared in a public extension
191 |
192 | @discardableResult
193 | public func lrange(_ key: String, start: Int, stop: Int) throws -> [String] {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
194 |
195 | let response = try self.execute("LRANGE", arguments: [key, String(start), String(stop)])
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:205:5: warning: 'public' modifier is redundant for instance method declared in a public extension
203 |
204 | @discardableResult
205 | public func zadd(_ key: String, values: (score: Double, member: String)...) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
206 | return try self.zadd(key, values: values)
207 | }
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:210:5: warning: 'public' modifier is redundant for instance method declared in a public extension
208 |
209 | @discardableResult
210 | public func zadd(_ key: String, values: [(score: Double, member: String)]) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
211 |
212 | var arguments = [key]
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:229:5: warning: 'public' modifier is redundant for instance method declared in a public extension
227 |
228 | @discardableResult
229 | public func zrange(_ key: String, start: Int, stop: Int) throws -> [String] {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
230 |
231 | let response = try self.execute("ZRANGE", arguments: [key, String(start), String(stop)])
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:241:5: warning: 'public' modifier is redundant for instance method declared in a public extension
239 |
240 | @discardableResult
241 | public func zrangebyscore(_ key: String, min: Double, max: Double, includeMin: Bool = false, includeMax: Bool = true) throws -> [String] {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
242 |
243 | var arguments = [key]
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:261:5: warning: 'public' modifier is redundant for instance method declared in a public extension
259 |
260 | @discardableResult
261 | public func zrem(_ key: String, member: String) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
262 |
263 | let response = try self.execute("ZREM", arguments: [key, member])
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:292:5: warning: 'public' modifier is redundant for instance method declared in a public extension
290 |
291 | @discardableResult
292 | public func multi(_ commands: (RedisClient, RedisClientTransaction) throws -> Void) throws -> [RedisClientResponse] {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
293 |
294 | let response = try self.execute("MULTI", arguments: nil)
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClientResponse.swift:48:5: warning: 'public' modifier is redundant for enum declared in a public extension
46 | public extension RedisClientResponse {
47 |
48 | public enum Status: String {
| `- warning: 'public' modifier is redundant for enum declared in a public extension
49 | case ok = "OK"
50 | case queued = "QUEUED"
[9/9] Compiling RedisClient RedisClient.swift
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:28:10: warning: associated value 'invalidResponse' of 'Sendable'-conforming enum 'RedisClientError' has non-sendable type 'RedisClientResponse'; this is an error in the Swift 6 language mode
26 | public enum RedisClientError: Error {
27 |
28 | case invalidResponse(RedisClientResponse)
| `- warning: associated value 'invalidResponse' of 'Sendable'-conforming enum 'RedisClientError' has non-sendable type 'RedisClientResponse'; this is an error in the Swift 6 language mode
29 | case transactionAborted
30 | case enqueueCommandError
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClientResponse.swift:24:13: note: consider making enum 'RedisClientResponse' conform to the 'Sendable' protocol
22 | import Foundation
23 |
24 | public enum RedisClientResponse {
| `- note: consider making enum 'RedisClientResponse' conform to the 'Sendable' protocol
25 |
26 | /// An array response from a Redis server. The value is an array of the individual
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:47:5: warning: 'public' modifier is redundant for instance method declared in a public extension
45 | public extension RedisClient {
46 |
47 | public func execute(_ command: String, arguments: String...) throws -> RedisClientResponse {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
48 | return try self.execute(command, arguments: arguments)
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:55:5: warning: 'public' modifier is redundant for instance method declared in a public extension
53 |
54 | @discardableResult
55 | public func get(_ key: String) throws -> String? {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
56 |
57 | let response = try self.execute("GET", arguments: key)
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:70:5: warning: 'public' modifier is redundant for instance method declared in a public extension
68 |
69 | @discardableResult
70 | public func incr(_ key: String) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
71 |
72 | let response = try self.execute("INCR", arguments: key)
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:82:5: warning: 'public' modifier is redundant for instance method declared in a public extension
80 |
81 | @discardableResult
82 | public func del(_ keys: String...) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
83 | return try self.del(keys)
84 | }
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:87:5: warning: 'public' modifier is redundant for instance method declared in a public extension
85 |
86 | @discardableResult
87 | public func del(_ keys: [String]) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
88 |
89 | let response = try self.execute("DEL", arguments: keys)
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:99:5: warning: 'public' modifier is redundant for instance method declared in a public extension
97 |
98 | @discardableResult
99 | public func lpush(_ key: String, values: String...) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
100 | return try self.lpush(key, values: values)
101 | }
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:104:5: warning: 'public' modifier is redundant for instance method declared in a public extension
102 |
103 | @discardableResult
104 | public func lpush(_ key: String, values: [String]) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
105 |
106 | var arguments = [key]
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:119:5: warning: 'public' modifier is redundant for instance method declared in a public extension
117 |
118 | @discardableResult
119 | public func rpush(_ key: String, values: String...) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
120 | return try self.rpush(key, values: values)
121 | }
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:124:5: warning: 'public' modifier is redundant for instance method declared in a public extension
122 |
123 | @discardableResult
124 | public func rpush(_ key: String, values: [String]) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
125 |
126 | var arguments = [key]
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:139:5: warning: 'public' modifier is redundant for instance method declared in a public extension
137 |
138 | @discardableResult
139 | public func rpoplpush(source: String, destination: String) throws -> String? {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
140 |
141 | let response = try self.execute("RPOPLPUSH", arguments: [source, destination])
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:154:5: warning: 'public' modifier is redundant for instance method declared in a public extension
152 |
153 | @discardableResult
154 | public func brpoplpush(source: String, destination: String, count: Int = 0) throws -> String {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
155 |
156 | let response = try self.execute("BRPOPLPUSH", arguments: [source, destination, String(count)])
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:165:5: warning: 'public' modifier is redundant for instance method declared in a public extension
163 | }
164 |
165 | public func setex(_ key: String, timeout: TimeInterval, value: String) throws {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
166 |
167 | let response = try self.execute("SETEX", arguments: [key, String(Int(timeout)), value])
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:175:5: warning: 'public' modifier is redundant for instance method declared in a public extension
173 |
174 | @discardableResult
175 | public func lrem(_ key: String, value: String, count: Int? = nil) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
176 |
177 | var arguments = [key]
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:193:5: warning: 'public' modifier is redundant for instance method declared in a public extension
191 |
192 | @discardableResult
193 | public func lrange(_ key: String, start: Int, stop: Int) throws -> [String] {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
194 |
195 | let response = try self.execute("LRANGE", arguments: [key, String(start), String(stop)])
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:205:5: warning: 'public' modifier is redundant for instance method declared in a public extension
203 |
204 | @discardableResult
205 | public func zadd(_ key: String, values: (score: Double, member: String)...) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
206 | return try self.zadd(key, values: values)
207 | }
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:210:5: warning: 'public' modifier is redundant for instance method declared in a public extension
208 |
209 | @discardableResult
210 | public func zadd(_ key: String, values: [(score: Double, member: String)]) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
211 |
212 | var arguments = [key]
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:229:5: warning: 'public' modifier is redundant for instance method declared in a public extension
227 |
228 | @discardableResult
229 | public func zrange(_ key: String, start: Int, stop: Int) throws -> [String] {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
230 |
231 | let response = try self.execute("ZRANGE", arguments: [key, String(start), String(stop)])
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:241:5: warning: 'public' modifier is redundant for instance method declared in a public extension
239 |
240 | @discardableResult
241 | public func zrangebyscore(_ key: String, min: Double, max: Double, includeMin: Bool = false, includeMax: Bool = true) throws -> [String] {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
242 |
243 | var arguments = [key]
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:261:5: warning: 'public' modifier is redundant for instance method declared in a public extension
259 |
260 | @discardableResult
261 | public func zrem(_ key: String, member: String) throws -> Int64 {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
262 |
263 | let response = try self.execute("ZREM", arguments: [key, member])
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:292:5: warning: 'public' modifier is redundant for instance method declared in a public extension
290 |
291 | @discardableResult
292 | public func multi(_ commands: (RedisClient, RedisClientTransaction) throws -> Void) throws -> [RedisClientResponse] {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
293 |
294 | let response = try self.execute("MULTI", arguments: nil)
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:201:23: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
199 | }
200 |
201 | return result.flatMap { $0.string }
| |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
| `- note: use 'compactMap(_:)' instead
202 | }
203 |
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:237:23: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
235 | }
236 |
237 | return result.flatMap { $0.string }
| |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
| `- note: use 'compactMap(_:)' instead
238 | }
239 |
/Users/admin/builder/spi-builder-workspace/Sources/RedisClient/RedisClient.swift:257:23: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
255 | }
256 |
257 | return result.flatMap { $0.string }
| |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
| `- note: use 'compactMap(_:)' instead
258 | }
259 |
Build complete! (7.47s)
Fetching https://github.com/reswifq/pool.git
[1/69] Fetching pool
Fetched https://github.com/reswifq/pool.git from cache (0.72s)
Computing version for https://github.com/reswifq/pool.git
Computed https://github.com/reswifq/pool.git at 1.3.0 (0.62s)
Creating working copy for https://github.com/reswifq/pool.git
Working copy of https://github.com/reswifq/pool.git resolved at 1.3.0
Build complete.
{
"dependencies" : [
{
"identity" : "pool",
"requirement" : {
"range" : [
{
"lower_bound" : "1.3.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/reswifq/pool.git"
}
],
"manifest_display_name" : "RedisClient",
"name" : "RedisClient",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "RedisClient",
"targets" : [
"RedisClient"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "RedisClientTests",
"module_type" : "SwiftTarget",
"name" : "RedisClientTests",
"path" : "Tests/RedisClientTests",
"sources" : [
"RedisClientPoolTests.swift",
"RedisClientResponseTests.swift",
"RedisClientTests.swift"
],
"target_dependencies" : [
"RedisClient"
],
"type" : "test"
},
{
"c99name" : "RedisClient",
"module_type" : "SwiftTarget",
"name" : "RedisClient",
"path" : "Sources/RedisClient",
"product_dependencies" : [
"Pool"
],
"product_memberships" : [
"RedisClient"
],
"sources" : [
"RedisClient.swift",
"RedisClientPool.swift",
"RedisClientResponse.swift"
],
"type" : "library"
}
],
"tools_version" : "4.0"
}
Done.