self checking