removed static extensions to be thread safe