The library alredy does this