add application checks - needs extensive testing.