export async function go(promise: Promise): Promise<[T, null] | [null, E]> { try { return [await promise, null]; } catch (error: unknown) { return [null, error as E]; } }