strategy skeleton