added base stack functionality