implementing command features