asg implementation