implement moonbaby's basic functionality