Golang solution
\ntype OrderedStream struct {\n    ptr int\n    list []string\n}\n\nfunc Constructor(n int) OrderedStream {\n    return OrderedStream{0,make([]string,n)}\n}\n\n
```\ntype OrderedStream struct {\n    ptr int\n    list []string\n}\n\nfunc Constructor(n int) OrderedStream {\n    return OrderedStream{0,make([]string,n)}\n}\n\n\nfunc (this *OrderedStream) Insert(id int, value string) []string {\n    this.list[id-1] = value\n    if this.list[this.ptr] == "" {\n        return []string{}\n    } else {\n        for i,v := range this.list[this.ptr:]{\n            if v == "" {\n                temp := this.ptr\n                this.ptr += i\n                return this.list[temp:this.ptr]\n            }\n        }\n    }\n    return this.list[this.ptr:]\n}\n```
['Go']