application methods