Written a base for several future functions.