Implement an in-memory file/directory system for Harvey's Vault, where users upload files into a vault; duplicate files are represented as numbered copies (e.g. a '_2' suffix). Asked in the onsite stage. Much of the spec is points-walled; visible text mentions Vault uploads and '_2' copies.
Implement vault_uploads(paths). Each input is a normalized file path using /. Process uploads in order and return the stored path for each upload. Preserve directory components and insert the copy suffix before the extension. The first reports/contract.pdf is unchanged; later copies become reports/contract_2.pdf, reports/contract_3.pdf, and so on. If a generated path is already occupied by another upload, skip it and use the next available number.
def vault_uploads(paths):