It makes more sense to open the database file, and fail if we can't, here in the Init() method rather than in Decode.