custom input and session classes