Ljungstrom  implemented
merged with previous version