incomplete tick function