strict prototype