add throw to enable readObject overwrite