added barebone of components library functions