Design a time-based key-value store that can store multiple values for the same key at different timestamps and retrieve the value as of a given time.
set(key, value, timestamp)storesvalueforkeyat the giventimestamp.get(key, timestamp)returns the value that was set with the largest stored timestamp that is<= timestamp. If there is no such value, return the empty string"".
For each key, the set calls are made with strictly increasing timestamps.
Implement the function timeMap(operations) where operations is a list of [op, ...args]: ["set", key, value, timestamp] and ["get", key, timestamp]. For "set" return null; for "get" return the resolved value (or ""). Return the list of results, one per operation (use null for operations that return nothing).