Feature/library functions