extents should always be an array
TODO