refactored shrinking to inside block
refactored falling, too!