Andrew Niccol (n.