Recommend not inheriting from Error, it is extremely expensive to instantiate Error class or anything derived from it.