start of actual methods