pure lib added